You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
78 lines
2.8 KiB
78 lines
2.8 KiB
diff -up openssh-5.9p1/Makefile.in.wIm openssh-5.9p1/Makefile.in |
|
--- openssh-5.9p1/Makefile.in.wIm 2011-08-05 22:15:18.000000000 +0200 |
|
+++ openssh-5.9p1/Makefile.in 2011-09-12 16:24:18.643674014 +0200 |
|
@@ -66,7 +66,7 @@ LIBSSH_OBJS=acss.o authfd.o authfile.o b |
|
cipher-bf1.o cipher-ctr.o cipher-3des1.o cleanup.o \ |
|
compat.o compress.o crc32.o deattack.o fatal.o hostfile.o \ |
|
log.o match.o md-sha256.o moduli.o nchan.o packet.o \ |
|
- readpass.o rsa.o ttymodes.o xmalloc.o addrmatch.o \ |
|
+ readpass.o rsa.o ttymodes.o whereIam.o xmalloc.o addrmatch.o \ |
|
atomicio.o key.o dispatch.o kex.o mac.o uidswap.o uuencode.o misc.o \ |
|
monitor_fdpass.o rijndael.o ssh-dss.o ssh-ecdsa.o ssh-rsa.o dh.o \ |
|
kexdh.o kexgex.o kexdhc.o kexgexc.o bufec.o kexecdh.o kexecdhc.o \ |
|
diff -up openssh-5.9p1/log.h.wIm openssh-5.9p1/log.h |
|
--- openssh-5.9p1/log.h.wIm 2011-06-20 06:42:23.000000000 +0200 |
|
+++ openssh-5.9p1/log.h 2011-09-12 16:34:52.984674326 +0200 |
|
@@ -65,6 +65,8 @@ void verbose(const char *, ...) __at |
|
void debug(const char *, ...) __attribute__((format(printf, 1, 2))); |
|
void debug2(const char *, ...) __attribute__((format(printf, 1, 2))); |
|
void debug3(const char *, ...) __attribute__((format(printf, 1, 2))); |
|
+void _debug_wIm_body(const char *, int, const char *, const char *, int); |
|
+#define debug_wIm(a,b) _debug_wIm_body(a,b,__func__,__FILE__,__LINE__) |
|
|
|
|
|
void set_log_handler(log_handler_fn *, void *); |
|
diff -up openssh-5.9p1/sshd.c.wIm openssh-5.9p1/sshd.c |
|
--- openssh-5.9p1/sshd.c.wIm 2011-06-23 11:45:51.000000000 +0200 |
|
+++ openssh-5.9p1/sshd.c 2011-09-12 16:38:35.787816490 +0200 |
|
@@ -140,6 +140,9 @@ int deny_severity; |
|
|
|
extern char *__progname; |
|
|
|
+/* trace of fork processes */ |
|
+extern int whereIam; |
|
+ |
|
/* Server configuration options. */ |
|
ServerOptions options; |
|
|
|
@@ -666,6 +669,7 @@ privsep_preauth(Authctxt *authctxt) |
|
return 1; |
|
} else { |
|
/* child */ |
|
+ whereIam = 1; |
|
close(pmonitor->m_sendfd); |
|
close(pmonitor->m_log_recvfd); |
|
|
|
@@ -715,6 +719,7 @@ privsep_postauth(Authctxt *authctxt) |
|
|
|
/* child */ |
|
|
|
+ whereIam = 2; |
|
close(pmonitor->m_sendfd); |
|
pmonitor->m_sendfd = -1; |
|
|
|
@@ -1325,6 +1330,8 @@ main(int ac, char **av) |
|
Key *key; |
|
Authctxt *authctxt; |
|
|
|
+ whereIam = 0; |
|
+ |
|
#ifdef HAVE_SECUREWARE |
|
(void)set_auth_parameters(ac, av); |
|
#endif |
|
diff -up openssh-5.9p1/whereIam.c.wIm openssh-5.9p1/whereIam.c |
|
--- openssh-5.9p1/whereIam.c.wIm 2011-09-12 16:24:18.722674167 +0200 |
|
+++ openssh-5.9p1/whereIam.c 2011-09-12 16:24:18.724674418 +0200 |
|
@@ -0,0 +1,12 @@ |
|
+ |
|
+int whereIam = -1; |
|
+ |
|
+void _debug_wIm_body(const char *txt, int val, const char *func, const char *file, int line) |
|
+{ |
|
+ if (txt) |
|
+ debug("%s=%d, %s(%s:%d) wIm = %d, uid=%d, euid=%d", txt, val, func, file, line, whereIam, getuid(), geteuid()); |
|
+ else |
|
+ debug("%s(%s:%d) wIm = %d, uid=%d, euid=%d", func, file, line, whereIam, getuid(), geteuid()); |
|
+} |
|
+ |
|
+
|
|
|