+2006-03-17 Robert Millan <rmh@aybabtu.com>
+
+ * src/progname.c: New file.
+ * include/bsd/stdlib.h: Add {get,set}progname declarations.
+ * Makefile (LIB_SRCS): Add 'progname.c'.
+ * Versions: Add getprogname and setprogname.
+
2006-02-15 Guillem Jover <guillem@debian.org>
* include/bsd/cdefs.h: Disable __unused, it conflicts with a struct
#
LIB_SRCS := arc4random.c bsd_getopt.c err.c fgetln.c inet_net_pton.c \
- strlcat.c strlcpy.c md5c.c fmtcheck.c
+ strlcat.c strlcpy.c md5c.c fmtcheck.c progname.c
LIB_SRCS := $(patsubst %,src/%,$(LIB_SRCS))
LIB_INCLUDES := err.h getopt.h ip_icmp.h random.h queue.h md5.h string.h \
#ifndef LIBBSD_STDLIB_H
#define LIBBSD_STDLIB_H
-const char *fmtcheck(const char *, const char *);
+#include <stdlib.h>
+
+const char *fmtcheck (const char *, const char *);
+
+char *getprogname ();
+void setprogname (char *);
#endif
--- /dev/null
+/* Copyright (C) 2006 Robert Millan
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, write to the Free
+ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
+ 02110-1301, USA. */
+
+/*
+ Rejected in glibc (http://sourceware.org/ml/libc-alpha/2006-03/msg00125.html)
+*/
+
+#include <bsd/stdlib.h>
+
+static char *__progname;
+
+char *
+getprogname ();
+{
+ return __progname;
+}
+
+void
+setprogname (char *new);
+{
+ __progname = new;
+}