+userv (0.59); urgency=high
+
+ * Fix failure to terminate string properly in parser.c, which could
+ cause some problems with "-quoted strings. (This is not thought to be
+ security-critical, and the bug can be avoided by not using "-quoted
+ strings in configuration files.)
+
+ * Provided `system.default' file checks /etc/userv/services.d and
+ /etc/userv/default.d; system.override runs /etc/userv/override.d.
+
+ * Add <string.h> to servexec.c.
+ * Add -D_GNU_SOURCE to CFLAGS in configure.in.
+ * Braces added in client.c to prevent GCC `ambiguous else' warning.
+
+ -- Ian Jackson <ian@davenant.greenend.org.uk> Sat, 30 Jan 1999 19:37:17 +0000
+
userv (0.58); urgency=high
* Fixed failure to set gid when invoking service !!
install: all
$(INSTALL_PROGRAM) -s -o root -g root -m 755 daemon $(sbindir)/uservd
$(INSTALL_PROGRAM) -s -o root -g root -m 4755 client $(bindir)/userv
- $(INSTALL) -d -o root -g root -m 2755 $(etcsubdir)
+ $(INSTALL) -d -o root -g root -m 2755 $(etcsubdir) \
+ $(etcsubdir)/default.d $(etcsubdir)/services.d $(etcsubdir)/override.d
if ! test -f $(etcsubdir)/system.default; then \
$(INSTALL_DATA) -o root -g root system.default $(etcsubdir); fi
if ! test -f $(etcsubdir)/system.override; then \
char *equals;
if (oip->values == 2) {
equals= strchr(arg,'=');
- if (!equals)
+ if (!equals) {
if (oip->abbrev)
usageerror("option --%s (-%c) passed argument `%s' with no `='",
oip->full,oip->abbrev,arg);
else
usageerror("option --%s passed argument `%s' with no `='",
oip->full,arg);
+ }
*equals++= 0;
(oip->fn)(oip,equals,arg);
} else {
AC_PROG_CPP
AC_PROG_INSTALL
+CFLAGS="$CFLAGS -D_GNU_SOURCE"
+
AC_CACHE_CHECK(for EPROTO,userv_cv_hdr_eproto,
AC_EGREP_CPP(yes,
[
}
}
assert(*p); assert(!*++p);
+ *q++= 0;
return tokv_quotedstring;
}
#include <limits.h>
#include <errno.h>
#include <assert.h>
+#include <string.h>
#include <unistd.h>
#include <stdarg.h>
#include <stdlib.h>
# fi
# (procmail-wrapper could extract envelope information from the
# arguments and/or -D options and pass them to procmail.)
-#
+
+include-directory /etc/userv/default.d
+include-lookup service /etc/userv/services.d
+
# If you want to force users to provide a particular service,
# then you can put it here and use `quit'. Eg:
# if ( grep service-user-shell /etc/shells
-# This is for subtle overriding things. Most things should go
-# in system.default, so that the user can override them if they
-# want and so that if you want to force the user to provide a
-# service you don't needlessly parse their configuration file
-# and get the error messages from it.
+# This is for subtle overriding things. Most things should go in
+# system.default (or default.d or services.d), so that the user can
+# override them if they want and so that if you want to force the user
+# to provide a service you don't needlessly parse their configuration
+# file and get the error messages from it.
+
+include-directory /etc/userv/override.d