diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2007-07-30 17:02:06 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2007-07-30 17:02:06 +0000 |
commit | 88483db112b15569aad4898d30a8ab7ea4deb96b (patch) | |
tree | 1da1ec9a5cab6d6b3793fec0edc5728b71743a0e /libc/inet/rpc/ruserpass.c | |
parent | f5c05b8c3da2fc70133778daf099b00c5d090ff9 (diff) |
make regex_old.c, ruserpass.c use __uc_malloc,
replace "buf = malloc(BUFSIZ); if (!buf) abort();" by __uc_malloc
elsewhere.
With last 7 patches together uclibc has 3k of static data total
with fairly big .config and with 2k being used for 2 x BUFSIZ stdio buffer:
text data bss dec hex filename
114 132 2048 2294 8f6 _stdio.o (ex lib/libc.a)
total data 593
total bss 3062
Diffstat (limited to 'libc/inet/rpc/ruserpass.c')
-rw-r--r-- | libc/inet/rpc/ruserpass.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/libc/inet/rpc/ruserpass.c b/libc/inet/rpc/ruserpass.c index 0adcbf1d3..b18bbf5b7 100644 --- a/libc/inet/rpc/ruserpass.c +++ b/libc/inet/rpc/ruserpass.c @@ -40,6 +40,7 @@ #include <stdio_ext.h> #include <stdlib.h> #include <string.h> +#include <malloc.h> #include <strings.h> #include <unistd.h> @@ -79,7 +80,7 @@ static FILE *cfile; #define ID 10 #define MACHINE 11 -static char tokval[100]; +static char *tokval; /* [100] */ static const char tokstr[] = { @@ -152,6 +153,9 @@ int ruserpass(const char *host, const char **aname, const char **apass) if (mydomain==NULL) { mydomain=myname + strlen(myname); } + + if (!tokval) + tokval = __uc_malloc(100); next: while ((t = token())) switch(t) { |