blob: a5603522d749427059839ab4af4cd160d50845f6 [file] [log] [blame]
Damien Millerd4a8b7e1999-10-27 13:42:43 +10001/*
Damien Miller4af51302000-04-16 11:18:38 +10002 *
Damien Miller95def091999-11-25 00:26:21 +11003 * xmalloc.h
Damien Miller4af51302000-04-16 11:18:38 +10004 *
Damien Miller95def091999-11-25 00:26:21 +11005 * Author: Tatu Ylonen <ylo@cs.hut.fi>
Damien Miller4af51302000-04-16 11:18:38 +10006 *
Damien Miller95def091999-11-25 00:26:21 +11007 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
8 * All rights reserved
Damien Miller4af51302000-04-16 11:18:38 +10009 *
Damien Miller95def091999-11-25 00:26:21 +110010 * Created: Mon Mar 20 22:09:17 1995 ylo
Damien Miller4af51302000-04-16 11:18:38 +100011 *
Damien Miller95def091999-11-25 00:26:21 +110012 * Versions of malloc and friends that check their results, and never return
13 * failure (they call fatal if they encounter an error).
Damien Miller4af51302000-04-16 11:18:38 +100014 *
Damien Miller95def091999-11-25 00:26:21 +110015 */
Damien Millerd4a8b7e1999-10-27 13:42:43 +100016
Damien Miller4af51302000-04-16 11:18:38 +100017/* RCSID("$Id: xmalloc.h,v 1.3 2000/04/16 01:18:49 damien Exp $"); */
Damien Millerd4a8b7e1999-10-27 13:42:43 +100018
19#ifndef XMALLOC_H
20#define XMALLOC_H
21
22/* Like malloc, but calls fatal() if out of memory. */
Damien Miller95def091999-11-25 00:26:21 +110023void *xmalloc(size_t size);
Damien Millerd4a8b7e1999-10-27 13:42:43 +100024
25/* Like realloc, but calls fatal() if out of memory. */
Damien Miller95def091999-11-25 00:26:21 +110026void *xrealloc(void *ptr, size_t new_size);
Damien Millerd4a8b7e1999-10-27 13:42:43 +100027
28/* Frees memory allocated using xmalloc or xrealloc. */
Damien Miller95def091999-11-25 00:26:21 +110029void xfree(void *ptr);
Damien Millerd4a8b7e1999-10-27 13:42:43 +100030
31/* Allocates memory using xmalloc, and copies the string into that memory. */
Damien Miller95def091999-11-25 00:26:21 +110032char *xstrdup(const char *str);
Damien Millerd4a8b7e1999-10-27 13:42:43 +100033
Damien Miller95def091999-11-25 00:26:21 +110034#endif /* XMALLOC_H */