Annotation of src/usr.bin/ftp/xmalloc.h, Revision 1.1
1.1 ! kmos 1: /* $OpenBSD: xmalloc.h,v 1.2 2016/11/17 10:06:08 nicm Exp $ */
! 2:
! 3: /*
! 4: * Author: Tatu Ylonen <ylo@cs.hut.fi>
! 5: * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
! 6: * All rights reserved
! 7: * Created: Mon Mar 20 22:09:17 1995 ylo
! 8: *
! 9: * Versions of malloc and friends that check their results, and never return
! 10: * failure (they call fatal if they encounter an error).
! 11: *
! 12: * As far as I am concerned, the code I have written for this software
! 13: * can be used freely for any purpose. Any derived versions of this
! 14: * software must be clearly marked as such, and if the derived work is
! 15: * incompatible with the protocol description in the RFC file, it must be
! 16: * called by a name other than "ssh" or "Secure Shell".
! 17: */
! 18:
! 19: #ifndef XMALLOC_H
! 20: #define XMALLOC_H
! 21:
! 22: void *xmalloc(size_t);
! 23: void *xcalloc(size_t, size_t);
! 24: void *xrealloc(void *, size_t);
! 25: void *xreallocarray(void *, size_t, size_t);
! 26: char *xstrdup(const char *);
! 27: char *xstrndup(const char *, size_t);
! 28: int xasprintf(char **, const char *, ...)
! 29: __attribute__((__format__ (printf, 2, 3)))
! 30: __attribute__((__nonnull__ (2)));
! 31: int xvasprintf(char **, const char *, va_list)
! 32: __attribute__((__nonnull__ (2)));
! 33: int xsnprintf(char *, size_t, const char *, ...)
! 34: __attribute__((__format__ (printf, 3, 4)))
! 35: __attribute__((__nonnull__ (3)))
! 36: __attribute__((__bounded__ (__string__, 1, 2)));
! 37: int xvsnprintf(char *, size_t, const char *, va_list)
! 38: __attribute__((__nonnull__ (3)))
! 39: __attribute__((__bounded__ (__string__, 1, 2)));
! 40:
! 41: #endif /* XMALLOC_H */