#include <limits.h>
#include <errno.h>
#include <assert.h>
+#include <string.h>
#include <unistd.h>
#include <stdarg.h>
#include <stdlib.h>
const unsigned char *p;
int i;
- printf("uservd version " VERSION "; copyright (C)1996-1997 Ian Jackson.\n"
+ printf("uservd version " VERSION VEREXT "; copyright (C)1996-1997 Ian Jackson.\n"
#ifdef DEBUG
"DEBUGGING VERSION"
#else
"production version"
#endif
" - protocol magic number %08lx\n"
- "protocol checksum:",
- BASE_MAGIC);
+ "maximums: fd %-10d general string %d\n"
+ " gids %-10d override length %d\n"
+ " args or variables %-10d error message %d\n"
+ " nested inclusion %-10d errno string reserve %d\n"
+ "protocol checksum: ",
+ BASE_MAGIC,
+ MAX_ALLOW_FD, MAX_GENERAL_STRING,
+ MAX_GIDS, MAX_OVERRIDE_LEN,
+ MAX_ARGSDEFVAR, MAX_ERRMSG_LEN,
+ MAX_INCLUDE_NEST, ERRMSG_RESERVE_ERRNO);
for (i=0, p=protocolchecksumversion; i<sizeof(protocolchecksumversion); i++, p++)
printf("%02x",*p);
printf("\n"
"rendezvous socket: `" RENDEZVOUSPATH "'\n"
"system config dir: `" SYSTEMCONFIGDIR "'\n"
- "pipe filename format: `%s' (max length %d)\n"
- "maximums: fd %-10d general string %d"
- " gids %-10d override length %d\n\n"
- " args or variables %-10d error message %d\n"
- " nested inclusion %-10d errno string reserve %d\n",
- PIPEFORMAT, PIPEMAXLEN,
- MAX_ALLOW_FD, MAX_GENERAL_STRING,
- MAX_GIDS, MAX_OVERRIDE_LEN,
- MAX_ARGSDEFVAR, ERRMSG_RESERVE_ERRNO,
- MAX_INCLUDE_NEST, MAX_ERRMSG_LEN);
+ "pipe filename format: `%s' (max length %d)\n",
+ PIPEFORMAT, PIPEMAXLEN);
serv_checkstdoutexit();
}
static void NONRETURNING dumpconfig(const char *string) {
- int nspaces, c;
+ int nspaces, c, lnl;
- assert(*string);
nspaces= 0;
+ lnl= 1;
while ((c= *string++)) {
switch (c) {
case ' ': nspaces++; break;
- case '\n': nspaces= 0; putchar('\n'); break;
+ case '\n':
+ if (!lnl) putchar('\n');
+ nspaces= 0; lnl= 1;
+ break;
default:
while (nspaces>0) { putchar(' '); nspaces--; }
putchar(c);
+ lnl= 0;
+ break;
}
}
- assert(*--string == '\n');
+ assert(lnl);
serv_checkstdoutexit();
}