Date: Mon, 13 Oct 2003 13:51:17 -0400 (EDT) From: Michael Edenfield <kutulu@kutulu.org> To: FreeBSD-gnats-submit@FreeBSD.org Subject: ports/57968: tcplist-2.2_1: fix for varargs -> stdarg (fixed build on -current) Message-ID: <20031013175117.F3EE9B855@wombat.localnet> Resent-Message-ID: <200310131800.h9DI0aMS043131@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 57968 >Category: ports >Synopsis: tcplist-2.2_1: fix for varargs -> stdarg (fixed build on -current) >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Oct 13 11:00:36 PDT 2003 >Closed-Date: >Last-Modified: >Originator: Michael Edenfield >Release: FreeBSD 5.1-CURRENT i386 >Organization: >Environment: System: FreeBSD wombat.localnet 5.1-CURRENT FreeBSD 5.1-CURRENT #7: Sun Aug 24 21:35:57 EDT 2003 root@wombat.localnet:/usr/obj/usr/src/sys/ATHLON i386 >Description: >How-To-Repeat: >Fix: --- tcplist.patch begins here --- diff -urN tcplist.orig/files/patch-utils.c tcplist/files/patch-utils.c --- tcplist.orig/files/patch-utils.c Tue Feb 12 10:31:41 2002 +++ tcplist/files/patch-utils.c Mon Oct 13 13:33:34 2003 @@ -1,6 +1,125 @@ ---- utils.c.old Tue Feb 12 15:21:57 2002 -+++ utils.c Tue Feb 12 15:21:24 2002 -@@ -259,6 +259,7 @@ +--- utils.c.orig Mon Oct 13 13:14:12 2003 ++++ utils.c Mon Oct 13 13:14:58 2003 +@@ -17,14 +17,9 @@ + #else + #include <strings.h> + #endif +-#include <varargs.h> ++#include <stdarg.h> + #include "utils.h" + +-#ifdef lint +-#undef va_arg +-#define va_arg(x,y) (y)NULL +-#endif +- + #ifndef u_long + #define u_long unsigned long + #endif /* u_long */ +@@ -42,14 +37,11 @@ + * follows it. + */ + /*VARARGS*/ +-void Error(va_alist) +-va_dcl ++void Error(char *format, ...) + { + va_list args; +- char *format; + +- va_start(args); +- format = va_arg(args, char *); ++ va_start(args, format); + (void)fprintf(stderr, "%s: ", progname); + (void)vfprintf(stderr, format, args); + (void)fprintf(stderr, "\n"); +@@ -63,18 +55,11 @@ + * is equal to or greater than the debugging level. + */ + /*VARARGS*/ +-void dfprintf(va_alist) +-va_dcl ++void dfprintf(int debugLevel, FILE *stream, char *format, ...) + { + va_list args; +- int debugLevel; +- FILE *stream; +- char *format; + +- va_start(args); +- debugLevel = va_arg(args, int); +- stream = va_arg(args, FILE *); +- format = va_arg(args, char *); ++ va_start(args, format); + if(d >= debugLevel){ + (void)vfprintf(stream, format, args); + } +@@ -85,18 +70,15 @@ + * Warning(): behaves like Error, except returns rather than exits. + */ + /*VARARGS*/ +-void Warning(va_alist) +-va_dcl ++void Warning(char *format, ...) + { + va_list args; +- char *format; + +- va_start(args); +- format = va_arg(args, char *); +- (void)fprintf(stderr, "%s: ", progname); +- (void)vfprintf(stderr, format, args); +- (void)fprintf(stderr, "\n"); +- va_end(args); ++ va_start(args, format); ++ (void)fprintf(stderr, "%s: ", progname); ++ (void)vfprintf(stderr, format, args); ++ (void)fprintf(stderr, "\n"); ++ va_end(args); + } + + FILE *efopen(file, mode) +@@ -186,15 +168,14 @@ + * in malloc'ed space. + */ + /*VARARGS*/ +-char *cat(va_alist) +-va_dcl ++char *cat(char *str0, ...) + { + va_list args; +- unsigned length=1; ++ unsigned length=1+strlen(str0); + char *str, *newstr; + + /* get length */ +- va_start(args); ++ va_start(args, str0); + loop{ + str = va_arg(args, char *); + if(NULL!=str){ +@@ -209,9 +190,10 @@ + if(NULL==newstr) Error("Out of memory in cat()"); + + newstr[0]=(char)0; ++ strcat(newstr, str0); + + /* create string */ +- va_start(args); ++ va_start(args, str0); + loop{ + str = va_arg(args, char *); + if(NULL!=str) { +@@ -220,7 +202,7 @@ + break; + } + } +- va_end(args); ++ va_end(args); + #ifdef lint + args=args; /* make lint shut up about "args set but not used" */ + #endif +@@ -259,6 +241,7 @@ lastfail++; } } @@ -8,4 +127,3 @@ sprintf(iaddrbuff, "%u.%u.%u.%u", (iaddr>>24)&0xff, (iaddr>>16)&0xff, (iaddr>>8)&0xff, iaddr&0xff); - diff -urN tcplist.orig/files/patch-utils.h tcplist/files/patch-utils.h --- tcplist.orig/files/patch-utils.h Wed Dec 31 19:00:00 1969 +++ tcplist/files/patch-utils.h Mon Oct 13 13:33:41 2003 @@ -0,0 +1,26 @@ +--- utils.h.orig Mon Oct 13 13:14:12 2003 ++++ utils.h Mon Oct 13 13:15:00 2003 +@@ -50,19 +50,19 @@ + + /* Error - print like fprintf(stderr, ...) and die. Progname included at + beginning of message, newline at end. */ +-extern void Error(); ++extern void Error(char *, ...); + /* Warning - like error, without dying */ +-extern void Warning(); ++extern void Warning(char *, ...); + + extern char *mylib_malloc(); + extern char *mylib_realloc(); + extern char *mylib_scopy(); + extern char *mylib_srcopy(); +-extern char *cat(); ++extern char *cat(char *, ...); + extern char *getstr(); + extern FILE *efopen(); + extern void efclose(); +-extern void dfprintf(); ++extern void dfprintf(int, FILE *, char *, ...); + + extern char *progname; /* application's name. Used by Error, Warning. */ + extern int d; /* debug level */ --- tcplist.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031013175117.F3EE9B855>