]> andersk Git - openssh.git/blame_incremental - xmalloc.c
- (djm) Fix server not exiting with jobs in background.
[openssh.git] / xmalloc.c
... / ...
CommitLineData
1/*
2 * Author: Tatu Ylonen <ylo@cs.hut.fi>
3 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
4 * All rights reserved
5 * Created: Mon Mar 20 21:23:10 1995 ylo
6 * Versions of malloc and friends that check their results, and never return
7 * failure (they call fatal if they encounter an error).
8 */
9
10#include "includes.h"
11RCSID("$OpenBSD: xmalloc.c,v 1.7 2000/06/20 01:39:45 markus Exp $");
12
13#include "ssh.h"
14
15void *
16xmalloc(size_t size)
17{
18 void *ptr = malloc(size);
19 if (ptr == NULL)
20 fatal("xmalloc: out of memory (allocating %d bytes)", (int) size);
21 return ptr;
22}
23
24void *
25xrealloc(void *ptr, size_t new_size)
26{
27 void *new_ptr;
28
29 if (ptr == NULL)
30 fatal("xrealloc: NULL pointer given as argument");
31 new_ptr = realloc(ptr, new_size);
32 if (new_ptr == NULL)
33 fatal("xrealloc: out of memory (new_size %d bytes)", (int) new_size);
34 return new_ptr;
35}
36
37void
38xfree(void *ptr)
39{
40 if (ptr == NULL)
41 fatal("xfree: NULL pointer given as argument");
42 free(ptr);
43}
44
45char *
46xstrdup(const char *str)
47{
48 int len = strlen(str) + 1;
49
50 char *cp = xmalloc(len);
51 strlcpy(cp, str, len);
52 return cp;
53}
This page took 0.035481 seconds and 5 git commands to generate.