#ifdef HAVE_DB1_NDBM_H
#include <db1/ndbm.h>
#else
+#ifdef HAVE_GDBM_NDBM_H
+#include <gdbm/ndbm.h>
+#else
+#if defined(HAVE_DB_H) && defined(HAVE_LIBDB)
+#define DB_DBM_HSEARCH 1
+#include <db.h>
+#else
#include <ndbm.h>
#endif
+#endif
+#endif
#include <utmp.h>
static int
usr_delivery (int fd, char *delivery, int su)
{
- int i, accept, status, won, vecp, next;
+ int i, accept, status=1, won, vecp, next;
char *field, *pattern, *action, *result, *string;
char buffer[BUFSIZ], tmpbuf[BUFSIZ];
char *cp, *vec[NVEC];
break;
}
+ if (status) next = 0; /* action failed, mark for 'N' result */
+
if (accept && status == 0)
won++;
}
setutent();
while ((utp = getutent()) != NULL) {
- if (utp->ut_type == USER_PROCESS
- && utp->ut_user[0] != 0
- && strncmp (user, utp->ut_user, sizeof(utp->ut_user)) == 0) {
+ if (
+#ifdef HAVE_UTMP_UT_TYPE
+ utp->ut_type == USER_PROCESS
+ &&
+#endif
+ utp->ut_name[0] != 0
+ && strncmp (user, utp->ut_name, sizeof(utp->ut_name)) == 0) {
if (debug)
continue;
endutent();