]> andersk Git - openssh.git/commitdiff
Integrated PAM environment patch from Nalin Dahyabhai <nalin@thermo.stat.ncsu.edu>
authordamien <damien>
Thu, 28 Oct 1999 23:57:31 +0000 (23:57 +0000)
committerdamien <damien>
Thu, 28 Oct 1999 23:57:31 +0000 (23:57 +0000)
Integrated make install patch from Niels Kristian Bech Jensen <nkbj@image.dk>

Makefile.in
sshd.c

index 16bb16da945a1ea8214f01c13eaf12881af5d843..436bc2ea112b73b85c32bb37c4f906a81f31c676 100644 (file)
@@ -3,6 +3,7 @@ exec_prefix=@exec_prefix@
 bindir=@bindir@
 sbindir=@sbindir@
 libdir=@libdir@
+mandir=@mandir@
 
 CC=@CC@
 OPT_FLAGS=-g
@@ -58,14 +59,21 @@ clean:
 install:
        install -d $(bindir)
        install -d $(sbindir)
-       install -d $(libdir)
-       install -c bin/ssh $(bindir)/ssh
-       install -c bin/scp $(bindir)/scp
-       install -c bin/ssh-add $(bindir)/ssh-add
-       install -c bin/ssh-agent $(bindir)/ssh-agent
-       install -c bin/ssh-keygen $(bindir)/ssh-keygen
-       install -c bin/sshd $(sbindir)/sshd
-       install -c bin/libssh.a $(libdir)/libssh.a
+       install -d $(mandir)
+       install -d $(mandir)/man1
+       install -d $(mandir)/man8
+       install -s -c bin/ssh $(bindir)/ssh
+       install -s -c bin/scp $(bindir)/scp
+       install -s -c bin/ssh-add $(bindir)/ssh-add
+       install -s -c bin/ssh-agent $(bindir)/ssh-agent
+       install -s -c bin/ssh-keygen $(bindir)/ssh-keygen
+       install -s -c bin/sshd $(sbindir)/sshd
+       install -m644 -c ssh.1 $(mandir)/man1/ssh.1
+       install -m644 -c scp.1 $(mandir)/man1/scp.1
+       install -m644 -c ssh-add.1 $(mandir)/man1/ssh-add.1
+       install -m644 -c ssh-agent.1 $(mandir)/man1/ssh-agent.1
+       install -m644 -c ssh-keygen.1 $(mandir)/man1/ssh-keygen.1
+       install -m644 -c sshd.8 $(mandir)/man8/sshd.8
 
 distclean: clean
        rm -f Makefile config.h *~
diff --git a/sshd.c b/sshd.c
index 97827d827e808edfe4f472542c4ea9b53a03f2f2..54a4c043a4898bda557e49ae22932b77b3300f95 100644 (file)
--- a/sshd.c
+++ b/sshd.c
@@ -2328,6 +2328,28 @@ void do_child(const char *command, struct passwd *pw, const char *term,
     child_set_env(&env, &envsize, "KRBTKFILE", ticket);
 #endif /* KRB4 */
 
+#ifdef HAVE_LIBPAM
+  /* Pull in any environment variables that may have been set by PAM. */
+  {
+    char *equal_sign, var_name[256], var_val[256];
+    long this_var;
+    char **pam_env = pam_getenvlist(pamh);
+    for(this_var = 0; pam_env && pam_env[this_var]; this_var++)
+      {
+        if(strlen(pam_env[this_var]) < sizeof(var_name))
+          if((equal_sign = strstr(pam_env[this_var], "=")) != NULL)
+            {
+              memset(var_name, 0, sizeof(var_name));
+              memset(var_val, 0, sizeof(var_val));
+              strncpy(var_name, pam_env[this_var],
+                      equal_sign - pam_env[this_var]);
+              strcpy(var_val, equal_sign + 1);
+              child_set_env(&env, &envsize, var_name, var_val);
+            }
+      }
+  }
+#endif /* HAVE_LIBPAM */
+
   /* Set XAUTHORITY to always be a local file. */
   if (xauthfile)
       child_set_env(&env, &envsize, "XAUTHORITY", xauthfile);
This page took 0.044758 seconds and 5 git commands to generate.