diff options
author | Dirk Meyer <dinoex@FreeBSD.org> | 2002-06-26 17:32:02 +0000 |
---|---|---|
committer | Dirk Meyer <dinoex@FreeBSD.org> | 2002-06-26 17:32:02 +0000 |
commit | f489092f8075a11964f863c1598e0db616648c47 (patch) | |
tree | d74bc7ad826f262df33e091ff3f1b5323fa087c3 /security/openssh/files/patch-auth2-chall.c | |
parent | Add new port mk: Andrew Hume's mk by way of Research Unix, Plan 9, & Inferno (diff) |
Update to openssh-3.4
Update to openssh-3.4p1
Notes
Notes:
svn path=/head/; revision=62031
Diffstat (limited to 'security/openssh/files/patch-auth2-chall.c')
-rw-r--r-- | security/openssh/files/patch-auth2-chall.c | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/security/openssh/files/patch-auth2-chall.c b/security/openssh/files/patch-auth2-chall.c index 80470f799fd8..6345cf58a798 100644 --- a/security/openssh/files/patch-auth2-chall.c +++ b/security/openssh/files/patch-auth2-chall.c @@ -27,62 +27,3 @@ NULL }; -@@ -63,6 +63,7 @@ - char *devices; - void *ctxt; - KbdintDevice *device; -+ u_int nreq; - }; - - static KbdintAuthctxt * -@@ -90,6 +91,7 @@ - debug("kbdint_alloc: devices '%s'", kbdintctxt->devices); - kbdintctxt->ctxt = NULL; - kbdintctxt->device = NULL; -+ kbdintctxt->nreq = 0; - - return kbdintctxt; - } -@@ -209,26 +211,26 @@ - KbdintAuthctxt *kbdintctxt; - char *name, *instr, **prompts; - int i; -- u_int numprompts, *echo_on; -+ u_int *echo_on; - - kbdintctxt = authctxt->kbdintctxt; - if (kbdintctxt->device->query(kbdintctxt->ctxt, -- &name, &instr, &numprompts, &prompts, &echo_on)) -+ &name, &instr, &kbdintctxt->nreq, &prompts, &echo_on)) - return 0; - - packet_start(SSH2_MSG_USERAUTH_INFO_REQUEST); - packet_put_cstring(name); - packet_put_cstring(instr); - packet_put_cstring(""); /* language not used */ -- packet_put_int(numprompts); -- for (i = 0; i < numprompts; i++) { -+ packet_put_int(kbdintctxt->nreq); -+ for (i = 0; i < kbdintctxt->nreq; i++) { - packet_put_cstring(prompts[i]); - packet_put_char(echo_on[i]); - } - packet_send(); - packet_write_wait(); - -- for (i = 0; i < numprompts; i++) -+ for (i = 0; i < kbdintctxt->nreq; i++) - xfree(prompts[i]); - xfree(prompts); - xfree(echo_on); -@@ -256,6 +258,10 @@ - - authctxt->postponed = 0; /* reset */ - nresp = packet_get_int(); -+ if (nresp != kbdintctxt->nreq) -+ fatal("input_userauth_info_response: wrong number of replies"); -+ if (nresp > 100) -+ fatal("input_userauth_info_response: too many replies"); - if (nresp > 0) { - response = xmalloc(nresp * sizeof(char*)); - for (i = 0; i < nresp; i++) |