summaryrefslogtreecommitdiff
path: root/net/gnu-finger/files/patch-ab
diff options
context:
space:
mode:
Diffstat (limited to 'net/gnu-finger/files/patch-ab')
-rw-r--r--net/gnu-finger/files/patch-ab87
1 files changed, 0 insertions, 87 deletions
diff --git a/net/gnu-finger/files/patch-ab b/net/gnu-finger/files/patch-ab
deleted file mode 100644
index 9ed000dee5ae..000000000000
--- a/net/gnu-finger/files/patch-ab
+++ /dev/null
@@ -1,87 +0,0 @@
---- lib/os.c.orig Thu Oct 22 22:01:10 1992
-+++ lib/os.c Thu Dec 14 13:02:56 2006
-@@ -26,6 +26,8 @@
- #include <sys/acct.h>
- #include <time.h>
- #include <packet.h>
-+#include <sys/socket.h>
-+#include <netdb.h>
-
- #ifdef HAVE_UTMPX_H
- #include <utmpx.h>
-@@ -70,13 +72,18 @@
-
- /* Where the utmp file is located. */
- #ifndef HAVE_GETUTENT
-+#ifdef __FreeBSD__
-+#define UTMP_FILE _PATH_UTMP
-+#else
- #define UTMP_FILE "/etc/utmp"
- #endif
-+#endif
-
- /* A non-null value is the address of the utmp entry which contains the
- information for the user using the console. */
- UTMP *console_user;
-
-+long get_last_access(char *);
-
- /* **************************************************************** */
- /* */
-@@ -288,6 +295,21 @@
- {
- idle = current_time - get_last_access (utmplist[i]->ut_line);
-
-+#ifdef __FreeBSD__
-+ /*
-+ * GNU finger lists two information of one user for one machine,
-+ * (1. about login console, 2. tty which has smallest idling time.)
-+ * In listing algorithm, GNU finger server program [fingerd] uses
-+ * `console' string in tty.
-+ *
-+ * But FreeBSD uses `ttyv[0-3]' as console name.
-+ *
-+ * So this patch is to translate `ttyv?' string to `console'
-+ */
-+ if (strstr (utmplist[i]->ut_line, "ttyv") != NULL) {
-+ strcpy (utmplist[i]->ut_line, "console");
-+ }
-+#endif
- if (idle < 0)
- idle = 0;
-
-@@ -485,6 +507,7 @@
-
- UTMP **result;
- int result_size = 0;
-+ struct hostent *hp; u_long l;
-
- #ifndef HAVE_GETUTENT
- file = open (UTMP_FILE, O_RDONLY);
-@@ -528,6 +551,26 @@
- if (!UT (entry, ut_name)[0])
- continue;
- #endif /* sun */
-+
-+#ifdef __FreeBSD__
-+ /*
-+ * From src/usr.bin/login/login.c CVS log, after 2.2 source tree,
-+ * login.c write numerical address to ut_host.
-+ * (1.12 comment of login.c)
-+ *
-+ * So this patch is to translate numerical address to hostname.
-+ */
-+ if (UT(entry, ut_host)[0]) {
-+ if (isdigit(UT(entry, ut_host)[0]) &&
-+ (long)(l = inet_addr(UT(entry, ut_host))) != -1 &&
-+ (hp = gethostbyaddr((char *)&l, sizeof(l), AF_INET))) {
-+ if (hp->h_name) {
-+ strncpy(UT(entry, ut_host), hp->h_name, UT_HOSTSIZE);
-+ UT(entry, ut_host)[UT_HOSTSIZE - 1] = '\0';
-+ } /* valid hostname */
-+ } /* IP addr */
-+ } /* UTMP */
-+#endif
-
- for (i = 0; result[i]; i++)
- {