]> andersk Git - openssh.git/blobdiff - monitor_wrap.c
- (tim) [configure.ac] updwtmpx() on OpenServer seems to add duplicate entry.
[openssh.git] / monitor_wrap.c
index d9cbd9e320d244b268955d841b41e121890a18bd..0d7a0e3bd9286baef5528972824652ebdd5964f8 100644 (file)
@@ -25,7 +25,7 @@
  */
 
 #include "includes.h"
-RCSID("$OpenBSD: monitor_wrap.c,v 1.36 2004/06/21 17:36:31 avsm Exp $");
+RCSID("$OpenBSD: monitor_wrap.c,v 1.39 2004/07/17 05:31:41 dtucker Exp $");
 
 #include <openssl/bn.h>
 #include <openssl/dh.h>
@@ -70,6 +70,7 @@ extern z_stream incoming_stream;
 extern z_stream outgoing_stream;
 extern struct monitor *pmonitor;
 extern Buffer input, output;
+extern Buffer loginmsg;
 extern ServerOptions options;
 
 int
@@ -194,7 +195,7 @@ mm_key_sign(Key *key, u_char **sigp, u_int *lenp, u_char *data, u_int datalen)
 }
 
 struct passwd *
-mm_getpwnamallow(const char *login)
+mm_getpwnamallow(const char *username)
 {
        Buffer m;
        struct passwd *pw;
@@ -203,7 +204,7 @@ mm_getpwnamallow(const char *login)
        debug3("%s entering", __func__);
 
        buffer_init(&m);
-       buffer_put_cstring(&m, login);
+       buffer_put_cstring(&m, username);
 
        mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_PWNAM, &m);
 
@@ -642,7 +643,7 @@ int
 mm_pty_allocate(int *ptyfd, int *ttyfd, char *namebuf, int namebuflen)
 {
        Buffer m;
-       char *p;
+       char *p, *msg;
        int success = 0;
 
        buffer_init(&m);
@@ -658,11 +659,15 @@ mm_pty_allocate(int *ptyfd, int *ttyfd, char *namebuf, int namebuflen)
                return (0);
        }
        p = buffer_get_string(&m, NULL);
+       msg = buffer_get_string(&m, NULL);
        buffer_free(&m);
 
        strlcpy(namebuf, p, namebuflen); /* Possible truncation */
        xfree(p);
 
+       buffer_append(&loginmsg, msg, strlen(msg));
+       xfree(msg);
+
        *ptyfd = mm_receive_fd(pmonitor->m_recvfd);
        *ttyfd = mm_receive_fd(pmonitor->m_recvfd);
 
@@ -914,6 +919,7 @@ mm_bsdauth_respond(void *ctx, u_int numresponses, char **responses)
        return ((authok == 0) ? -1 : 0);
 }
 
+#ifdef SKEY
 int
 mm_skey_query(void *ctx, char **name, char **infotxt,
    u_int *numprompts, char ***prompts, u_int **echo_on)
@@ -977,6 +983,7 @@ mm_skey_respond(void *ctx, u_int numresponses, char **responses)
 
        return ((authok == 0) ? -1 : 0);
 }
+#endif /* SKEY */
 
 void
 mm_ssh1_session_id(u_char session_id[16])
This page took 0.053899 seconds and 4 git commands to generate.