Add getprogname and setprogname

This commit is contained in:
Robert Millan 2006-03-17 19:55:21 +00:00 committed by Guillem Jover
parent 1e8b819b45
commit 5bd834027d
5 changed files with 51 additions and 2 deletions

View File

@ -1,3 +1,10 @@
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

View File

@ -5,7 +5,7 @@
#
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 \

View File

@ -7,6 +7,7 @@ LIBBSD_0.0 {
fgetwln;
fmtcheck;
inet_net_pton;
getprogname; setprogname;
strlcpy;
strlcat;
MD5Init;

View File

@ -1,6 +1,11 @@
#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

36
src/progname.c Normal file
View File

@ -0,0 +1,36 @@
/* 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;
}