date and time created 88/12/12 20:40:12 by bostic
authorKeith Bostic <bostic@ucbvax.Berkeley.EDU>
Tue, 13 Dec 1988 12:40:12 +0000 (04:40 -0800)
committerKeith Bostic <bostic@ucbvax.Berkeley.EDU>
Tue, 13 Dec 1988 12:40:12 +0000 (04:40 -0800)
SCCS-vsn: lib/libc/string/strdup.c 5.1

usr/src/lib/libc/string/strdup.c [new file with mode: 0644]

diff --git a/usr/src/lib/libc/string/strdup.c b/usr/src/lib/libc/string/strdup.c
new file mode 100644 (file)
index 0000000..b479186
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * Copyright (c) 1988 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms are permitted
+ * provided that the above copyright notice and this paragraph are
+ * duplicated in all such forms and that any documentation,
+ * advertising materials, and other materials related to such
+ * distribution and use acknowledge that the software was developed
+ * by the University of California, Berkeley.  The name of the
+ * University may not be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+ */
+
+#if defined(LIBC_SCCS) && !defined(lint)
+static char sccsid[] = "@(#)strdup.c   5.1 (Berkeley) %G%";
+#endif /* LIBC_SCCS and not lint */
+
+#include <sys/types.h>
+#include <stdio.h>
+
+char *
+strdup(str)
+       char *str;
+{
+       int len;
+       char *copy, *malloc();
+
+       len = strlen(str) + 1;
+       if (!(copy = malloc((u_int)len)))
+               return((char *)NULL);
+       bcopy(str, copy, len);
+       return(copy);
+}