]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
- Various small cleanups to bring diff (against OpenBSD) size down.
authorDamien Miller <djm@mindrot.org>
Mon, 15 Nov 1999 04:40:55 +0000 (15:40 +1100)
committerDamien Miller <djm@mindrot.org>
Mon, 15 Nov 1999 04:40:55 +0000 (15:40 +1100)
ChangeLog
configure.in
includes.h
packet.h
pty.c
sshd.c

index d1c75cce8cf67f49c02de1d727ea40940f7e4576..a35b9b4b1424bde2b5da71116a1809967a016b31 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -22,6 +22,7 @@
        [ssh.c] print _all_ bad config-options in ssh(1), too
        [sshconnect.c] disconnect if getpeername() fails
  - OpenBSD's changes to sshd.c broke the PAM stuff, re-merged it.
+ - Various small cleanups to bring diff (against OpenBSD) size down.
 
 19991114
  - Solaris compilation fixes (still imcomplete)
index d1dad1e48044a6c6c105c7a89f303ad0509baf38..fd6aea36be8c782eb9187d2ca0cf7b1fe91cdde1 100644 (file)
@@ -55,7 +55,7 @@ AC_CHECK_LIB(dl, dlopen, , )
 AC_CHECK_LIB(pam, pam_authenticate, , )
 
 dnl Checks for header files.
-AC_CHECK_HEADERS(pty.h endian.h paths.h lastlog.h shadow.h)
+AC_CHECK_HEADERS(pty.h endian.h paths.h lastlog.h shadow.h netgroup.h)
 
 dnl Check for ut_host field in utmp
 AC_MSG_CHECKING([whether utmp.h has ut_host field])
index 198e72979fb414de74dd4ba6b6db8490501c97ce..e2a0ea3b674bd7b87ca8cf0642c331551d544600 100644 (file)
@@ -41,7 +41,6 @@ static /**/const char *const rcsid[] = { (char *)rcsid, "\100(#)" msg }
 #include <ctype.h>
 #include <errno.h>
 #include <fcntl.h>
-#include <assert.h>
 #include <signal.h>
 #include <termios.h>
 #include <stdlib.h>
@@ -55,6 +54,9 @@ static /**/const char *const rcsid[] = { (char *)rcsid, "\100(#)" msg }
 
 #include "config.h"
 
+#ifdef HAVE_NETGROUP_H
+# include <netgroup.h>
+#endif 
 #ifdef HAVE_PATHS_H
 # include <paths.h>
 #endif 
index 6822203c8abb7581814bb4e8ea2d9daf6d25dcf8..0a4df79937268cca4ed9217eb46116bf579f444b 100644 (file)
--- a/packet.h
+++ b/packet.h
@@ -13,12 +13,13 @@ Interface for the packet protocol functions.
 
 */
 
-/* RCSID("$Id: packet.h,v 1.2 1999/10/28 03:25:17 damien Exp $"); */
+/* RCSID("$Id: packet.h,v 1.3 1999/11/15 04:40:55 damien Exp $"); */
 
-#include "config.h"
 #ifndef PACKET_H
 #define PACKET_H
 
+#include "config.h"
+
 #ifdef HAVE_OPENSSL
 #include <openssl/bn.h>
 #endif
diff --git a/pty.c b/pty.c
index 141ef7d35ad694a9770574c022dea920a4835e81..bbe18fd03a73f30712aaae590ad37a015ca5e157 100644 (file)
--- a/pty.c
+++ b/pty.c
@@ -14,10 +14,9 @@ Allocating a pseudo-terminal, and making it the controlling tty.
 */
 
 #include "includes.h"
-RCSID("$Id: pty.c,v 1.2 1999/11/08 04:30:59 damien Exp $");
+RCSID("$Id: pty.c,v 1.3 1999/11/15 04:40:55 damien Exp $");
 
 #ifdef HAVE_PTY_H
-/* Unfortunate namespace collision */
 #include <pty.h>
 #endif /* HAVE_PTY_H */
 
diff --git a/sshd.c b/sshd.c
index a0cc466381466a0bbb9e5ced0d02d8658f8fe44c..2eeb6d6b7e575a7810233142aa5e88ed442b0caa 100644 (file)
--- a/sshd.c
+++ b/sshd.c
@@ -18,7 +18,7 @@ agent connections.
 */
 
 #include "includes.h"
-RCSID("$Id: sshd.c,v 1.18 1999/11/15 04:25:10 damien Exp $");
+RCSID("$Id: sshd.c,v 1.19 1999/11/15 04:40:55 damien Exp $");
 
 #include "xmalloc.h"
 #include "rsa.h"
@@ -133,8 +133,8 @@ void do_child(const char *command, struct passwd *pw, const char *term,
 #ifdef HAVE_LIBPAM
 static int pamconv(int num_msg, const struct pam_message **msg,
                struct pam_response **resp, void *appdata_ptr);
-void do_pam_account_and_session(const char *username
-               const char *remote_user, const char *remote_host);
+void do_pam_account_and_session(char *username, char *remote_user
+               const char *remote_host);
 void pam_cleanup_proc(void *context);
 
 static struct pam_conv conv = {
@@ -230,7 +230,8 @@ void pam_cleanup_proc(void *context)
   }
 }
 
-void do_pam_account_and_session(const char *username, const char *remote_user, const char *remote_host)
+void do_pam_account_and_session(char *username, char *remote_user, 
+    const char *remote_host)
 {
   int pam_retval;
   
@@ -1201,12 +1202,17 @@ do_authentication(char *user)
   pw = &pwcopy;
 
 #ifdef HAVE_LIBPAM
-  debug("Starting up PAM with username \"%.200s\"", pw->pw_name);
+  {
+    int pam_retval;
+        
+    debug("Starting up PAM with username \"%.200s\"", pw->pw_name);
 
-  if (pam_start("sshd", pw->pw_name, &conv, (pam_handle_t**)&pamh) != PAM_SUCCESS)
-    fatal("PAM initialisation failed: %.200s", pam_strerror((pam_handle_t *)pamh, pam_retval));
+    pam_retval = pam_start("sshd", pw->pw_name, &conv, (pam_handle_t**)&pamh);
+    if (pam_retval != PAM_SUCCESS)
+      fatal("PAM initialisation failed: %.200s", pam_strerror((pam_handle_t *)pamh, pam_retval));
 
-  fatal_add_cleanup(&pam_cleanup_proc, NULL);
+    fatal_add_cleanup(&pam_cleanup_proc, NULL);
+  }
 #endif
 
   /* If we are not running as root, the user must have the same uid as the
@@ -1263,8 +1269,11 @@ do_authloop(struct passwd *pw)
   unsigned int client_host_key_bits;
   BIGNUM *client_host_key_e, *client_host_key_n;
   BIGNUM *n;
-  char *client_user, *password;
+  char *client_user = NULL, *password = NULL;
   int plen, dlen, nlen, ulen, elen;
+#ifdef HAVE_LIBPAM
+  int pam_retval;
+#endif /* HAVE_LIBPAM */
 
   /* Indicate that authentication is needed. */
   packet_start(SSH_SMSG_FAILURE);
@@ -1435,18 +1444,18 @@ do_authloop(struct passwd *pw)
        packet_integrity_check(plen, 4 + dlen, type);
   
 #ifdef HAVE_LIBPAM
-       /* Do PAM auth with password */
+        /* Do PAM auth with password */
         pampasswd = password;
-       pam_retval = pam_authenticate((pam_handle_t *)pamh, 0);
+        pam_retval = pam_authenticate((pam_handle_t *)pamh, 0);
         if (pam_retval == PAM_SUCCESS)
         {
-          log("PAM Password authentication accepted for user \"%.100s\"", user);
+          log("PAM Password authentication accepted for user \"%.100s\"", pw->pw_name);
           authenticated = 1;
           break;
         }
-       
-       log("PAM Password authentication for \"%.100s\" failed: %s", 
-           user, pam_strerror((pam_handle_t *)pamh, pam_retval));
+
+        log("PAM Password authentication for \"%.100s\" failed: %s", 
+            pw->pw_name, pam_strerror((pam_handle_t *)pamh, pam_retval));
         break;
 #else /* HAVE_LIBPAM */
        /* Try authentication with the password. */