summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--usr.bin/ssh/auth2-gss.c6
-rw-r--r--usr.bin/ssh/monitor.c6
-rw-r--r--usr.bin/ssh/monitor_wrap.c6
-rw-r--r--usr.bin/ssh/sshconnect2.c6
4 files changed, 16 insertions, 8 deletions
diff --git a/usr.bin/ssh/auth2-gss.c b/usr.bin/ssh/auth2-gss.c
index c7651112d10..feb97d7c318 100644
--- a/usr.bin/ssh/auth2-gss.c
+++ b/usr.bin/ssh/auth2-gss.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: auth2-gss.c,v 1.1 2003/08/22 10:56:08 markus Exp $ */
+/* $OpenBSD: auth2-gss.c,v 1.2 2003/08/24 17:36:51 deraadt Exp $ */
/*
* Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved.
@@ -175,12 +175,14 @@ input_gssapi_errtok(int type, u_int32_t plen, void *ctxt)
gss_buffer_desc send_tok = GSS_C_EMPTY_BUFFER;
gss_buffer_desc recv_tok;
OM_uint32 maj_status;
+ u_int len;
if (authctxt == NULL || (authctxt->methoddata == NULL && !use_privsep))
fatal("No authentication or GSSAPI context");
gssctxt = authctxt->methoddata;
- recv_tok.value = packet_get_string(&recv_tok.length);
+ recv_tok.value = packet_get_string(&len);
+ recv_tok.length = len;
packet_check_eom();
diff --git a/usr.bin/ssh/monitor.c b/usr.bin/ssh/monitor.c
index bb63e519fe6..017ca931eb9 100644
--- a/usr.bin/ssh/monitor.c
+++ b/usr.bin/ssh/monitor.c
@@ -25,7 +25,7 @@
*/
#include "includes.h"
-RCSID("$OpenBSD: monitor.c,v 1.46 2003/08/22 10:56:09 markus Exp $");
+RCSID("$OpenBSD: monitor.c,v 1.47 2003/08/24 17:36:52 deraadt Exp $");
#include <openssl/dh.h>
@@ -1634,8 +1634,10 @@ mm_answer_gss_accept_ctx(int socket, Buffer *m)
gss_buffer_desc out = GSS_C_EMPTY_BUFFER;
OM_uint32 major,minor;
OM_uint32 flags = 0; /* GSI needs this */
+ u_int len;
- in.value = buffer_get_string(m, &in.length);
+ in.value = buffer_get_string(m, &len);
+ in.length = len;
major = ssh_gssapi_accept_ctx(gsscontext, &in, &out, &flags);
xfree(in.value);
diff --git a/usr.bin/ssh/monitor_wrap.c b/usr.bin/ssh/monitor_wrap.c
index a947e05de40..6686c9de383 100644
--- a/usr.bin/ssh/monitor_wrap.c
+++ b/usr.bin/ssh/monitor_wrap.c
@@ -25,7 +25,7 @@
*/
#include "includes.h"
-RCSID("$OpenBSD: monitor_wrap.c,v 1.29 2003/08/22 10:56:09 markus Exp $");
+RCSID("$OpenBSD: monitor_wrap.c,v 1.30 2003/08/24 17:36:52 deraadt Exp $");
#include <openssl/bn.h>
#include <openssl/dh.h>
@@ -1005,6 +1005,7 @@ mm_ssh_gssapi_accept_ctx(Gssctxt *ctx, gss_buffer_desc *in,
{
Buffer m;
OM_uint32 major;
+ u_int len;
buffer_init(&m);
buffer_put_string(&m, in->value, in->length);
@@ -1013,7 +1014,8 @@ mm_ssh_gssapi_accept_ctx(Gssctxt *ctx, gss_buffer_desc *in,
mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_GSSSTEP, &m);
major = buffer_get_int(&m);
- out->value = buffer_get_string(&m, &out->length);
+ out->value = buffer_get_string(&m, &len);
+ out->length = len;
if (flags)
*flags = buffer_get_int(&m);
diff --git a/usr.bin/ssh/sshconnect2.c b/usr.bin/ssh/sshconnect2.c
index 1680d4d37dc..9c907dbc781 100644
--- a/usr.bin/ssh/sshconnect2.c
+++ b/usr.bin/ssh/sshconnect2.c
@@ -23,7 +23,7 @@
*/
#include "includes.h"
-RCSID("$OpenBSD: sshconnect2.c,v 1.122 2003/08/22 13:20:03 markus Exp $");
+RCSID("$OpenBSD: sshconnect2.c,v 1.123 2003/08/24 17:36:52 deraadt Exp $");
#include "ssh.h"
#include "ssh2.h"
@@ -645,12 +645,14 @@ input_gssapi_errtok(int type, u_int32_t plen, void *ctxt)
gss_buffer_desc send_tok = GSS_C_EMPTY_BUFFER;
gss_buffer_desc recv_tok;
OM_uint32 status, ms;
+ u_int len;
if (authctxt == NULL)
fatal("input_gssapi_response: no authentication context");
gssctxt = authctxt->methoddata;
- recv_tok.value = packet_get_string(&recv_tok.length);
+ recv_tok.value = packet_get_string(&len);
+ recv_tok.length = len;
packet_check_eom();