Date: Sat, 18 Sep 2010 15:01:15 -0400 From: Derek Tattersall <dlt@mebtel.net> To: freebsd-ports@freebsd.org Subject: nmh-1.2 on CURRENT Message-ID: <20100918190115.GA56265@oriental.arm.org>
next in thread | raw e-mail | index | archive | help
nmh-1.2 has not been updated for the new utmpx implementation. The patch is not terribly large. I haven't figured how to conditionally patch for Current, vs. leaving it alone on other releases. Here's the patch anyway. ------------------------ Patch follows --------------------------------- --- uip/rcvtty.c.orig 2010-09-18 14:23:38.000000000 -0400 +++ uip/rcvtty.c 2010-09-18 14:27:18.000000000 -0400 @@ -23,7 +23,7 @@ #include <signal.h> #include <fcntl.h> -#include <utmp.h> +#include <utmpx.h> #ifndef HAVE_GETUTENT # ifndef UTMP_FILE @@ -93,9 +93,9 @@ char *cp, *user, buf[BUFSIZ], tty[BUFSIZ]; char **argp, **arguments, *vec[MAXARGS]; #ifdef HAVE_GETUTENT - struct utmp * utp; + struct utmpx * utp; #else - struct utmp ut; + struct utmpx ut; register FILE *uf; #endif @@ -181,9 +181,9 @@ utp->ut_type == USER_PROCESS && #endif - utp->ut_name[0] != 0 + utp->ut_user[0] != 0 && utp->ut_line[0] != 0 - && strncmp (user, utp->ut_name, sizeof(utp->ut_name)) == 0) { + && strncmp (user, utp->ut_user, sizeof(utp->ut_user)) == 0) { strncpy (tty, utp->ut_line, sizeof(utp->ut_line)); alert (tty, md); } @@ -193,8 +193,8 @@ if ((uf = fopen (UTMP_FILE, "r")) == NULL) exit (RCV_MBX); while (fread ((char *) &ut, sizeof(ut), 1, uf) == 1) - if (ut.ut_name[0] != 0 - && strncmp (user, ut.ut_name, sizeof(ut.ut_name)) == 0) { + if (ut.ut_user[0] != 0 + && strncmp (user, ut.ut_user, sizeof(ut.ut_user)) == 0) { strncpy (tty, ut.ut_line, sizeof(ut.ut_line)); alert (tty, md); } --- uip/slocal.c.orig 2010-09-18 14:24:09.000000000 -0400 +++ uip/slocal.c 2010-09-18 14:29:11.000000000 -0400 @@ -64,7 +64,7 @@ #endif #endif -#include <utmp.h> +#include <utmpx.h> #ifndef HAVE_GETUTENT # ifndef UTMP_FILE @@ -957,7 +957,7 @@ static int logged_in (void) { - struct utmp * utp; + struct utmpx * utp; if (utmped) return utmped; @@ -970,8 +970,8 @@ utp->ut_type == USER_PROCESS && #endif - utp->ut_name[0] != 0 - && strncmp (user, utp->ut_name, sizeof(utp->ut_name)) == 0) { + utp->ut_user[0] != 0 + && strncmp (user, utp->ut_user, sizeof(utp->ut_user)) == 0) { if (debug) continue; endutent(); @@ -986,7 +986,7 @@ static int logged_in (void) { - struct utmp ut; + struct utmpx ut; FILE *uf; if (utmped) @@ -996,8 +996,8 @@ return NOTOK; while (fread ((char *) &ut, sizeof(ut), 1, uf) == 1) { - if (ut.ut_name[0] != 0 - && strncmp (user, ut.ut_name, sizeof(ut.ut_name)) == 0) { + if (ut.ut_user[0] != 0 + && strncmp (user, ut.ut_user, sizeof(ut.ut_user)) == 0) { if (debug) continue; fclose (uf); ---------------------- Patch precedes -------------------------------- -- Best regards, Derek Tattersall dlt@mebtel.net dlt666@yahoo.com dtatters@gmail.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100918190115.GA56265>