1
--- sup-20060803.orig/Makefile 2006-08-04 13:12:59.000000000 +0200
2
+++ sup-20060803/Makefile 2006-08-04 13:14:36.000000000 +0200
6
sup_OFILES = ${SUPCL} ${SUPS}
7
-supfilesrv_OFILES = supfilesrv.o scan.o ${SUPS}
8
+supfilesrv_OFILES = supfilesrv.o scan.o ${SUPS} wrap_pwd.o
9
supfilesrv_LIBS = libextra.a
10
supscan_OFILES = supscan.o stree.o scan.o
11
SOLARIS_LIBS = -lsocket -lnsl
12
--- sup-20060803.orig/wrap_pwd.h
13
+++ sup-20060803/wrap_pwd.h
15
+/* wrap_pwd.h: Copyright (C) TOYODA Eizi, 1997
16
+ * In the public domain.
22
+struct passwd *wrap_getpwnam(const char *name);
23
+struct passwd *wrap_getpwuid(uid_t uid);
25
+# ifndef _WRAP_PWD_NO_MACROS
26
+# define getpwnam(name) wrap_getpwnam(name)
27
+# define getpwuid(uid) wrap_getpwuid(uid)
28
+# endif /* _WRAP_PWD_NO_MACROS */
30
+#endif /* _WRAP_PWD_H */
31
--- sup-20060803.orig/wrap_pwd.c
32
+++ sup-20060803/wrap_pwd.c
34
+/* wrap_pwd.c: Copyright (C) TOYODA Eizi, 1997 */
35
+/* In the public domain. */
38
+#include <sys/types.h>
42
+#define _WRAP_PWD_NO_MACROS
43
+#include "wrap_pwd.h"
45
+static struct passwd pw;
48
+wrap_getpwnam(const char *name)
51
+ struct spwd *shadow;
52
+ pw = *(xpw = getpwnam(name));
53
+ if ((shadow = getspnam(name)) != NULL) {
54
+ pw.pw_passwd = shadow->sp_pwdp;
60
+wrap_getpwuid(uid_t uid)
63
+ struct spwd *shadow;
64
+ pw = *(xpw = getpwuid(uid));
65
+ if ((shadow = getspnam(pw.pw_name)) != NULL) {
66
+ pw.pw_passwd = shadow->sp_pwdp;
70
--- sup-20060803.orig/supfilesrv.c 2006-08-03 18:09:33.000000000 +0200
71
+++ sup-20060803/supfilesrv.c 2006-08-04 13:17:42.000000000 +0200
76
+#include "wrap_pwd.h"