summaryrefslogtreecommitdiffstats
path: root/usr.bin/ssh/xmalloc.c
diff options
context:
space:
mode:
authorderaadt <deraadt@openbsd.org>1999-09-26 20:53:32 +0000
committerderaadt <deraadt@openbsd.org>1999-09-26 20:53:32 +0000
commit84959968510b547c35dddcbd0b9dcce9f25fdf8f (patch)
treee37579877300876b034163932595ec47d00e0d8b /usr.bin/ssh/xmalloc.c
parentIncrease MAXMAGIS again, and change the reallocation - don't need to (diff)
downloadwireguard-openbsd-84959968510b547c35dddcbd0b9dcce9f25fdf8f.tar.xz
wireguard-openbsd-84959968510b547c35dddcbd0b9dcce9f25fdf8f.zip
i bet a lot of people didn't know what ssh 1.2.16 had a nice license.
well, except for the patent issues. someone in sweden (forget their name at the moment) cleaned out most of the patented code, and now this code removes rsa code. when this is done, it will link against libssl, but the work isn't completely done yet. then we need to bring this up to modern days, featurewise.
Diffstat (limited to 'usr.bin/ssh/xmalloc.c')
-rw-r--r--usr.bin/ssh/xmalloc.c60
1 files changed, 60 insertions, 0 deletions
diff --git a/usr.bin/ssh/xmalloc.c b/usr.bin/ssh/xmalloc.c
new file mode 100644
index 00000000000..b50959a9d27
--- /dev/null
+++ b/usr.bin/ssh/xmalloc.c
@@ -0,0 +1,60 @@
+/*
+
+xmalloc.c
+
+Author: Tatu Ylonen <ylo@cs.hut.fi>
+
+Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
+ All rights reserved
+
+Created: Mon Mar 20 21:23:10 1995 ylo
+
+Versions of malloc and friends that check their results, and never return
+failure (they call fatal if they encounter an error).
+
+*/
+
+#include "includes.h"
+RCSID("$Id: xmalloc.c,v 1.1 1999/09/26 20:53:38 deraadt Exp $");
+
+#include "ssh.h"
+
+#if 0
+void *malloc(size_t size);
+void *realloc(void *ptr, size_t size);
+void free(void *ptr);
+#endif
+
+void *xmalloc(size_t size)
+{
+ void *ptr = malloc(size);
+ if (ptr == NULL)
+ fatal("xmalloc: out of memory (allocating %d bytes)", (int)size);
+ return ptr;
+}
+
+void *xrealloc(void *ptr, size_t new_size)
+{
+ void *new_ptr;
+
+ if (ptr == NULL)
+ fatal("xrealloc: NULL pointer given as argument");
+ new_ptr = realloc(ptr, new_size);
+ if (new_ptr == NULL)
+ fatal("xrealloc: out of memory (new_size %d bytes)", (int)new_size);
+ return new_ptr;
+}
+
+void xfree(void *ptr)
+{
+ if (ptr == NULL)
+ fatal("xfree: NULL pointer given as argument");
+ free(ptr);
+}
+
+char *xstrdup(const char *str)
+{
+ char *cp = xmalloc(strlen(str) + 1);
+ strcpy(cp, str);
+ return cp;
+}