summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ne_socket.c2
-rw-r--r--test/auth.c7
-rw-r--r--test/socket.c4
3 files changed, 10 insertions, 3 deletions
diff --git a/src/ne_socket.c b/src/ne_socket.c
index c1a4230..898eba8 100644
--- a/src/ne_socket.c
+++ b/src/ne_socket.c
@@ -1468,8 +1468,8 @@ int ne_sock_sessid(ne_socket *sock, unsigned char *buf, size_t *buflen)
return -1;
}
- memcpy(buf, sess->session_id, *buflen);
*buflen = sess->session_id_length;
+ memcpy(buf, sess->session_id, *buflen);
return 0;
#endif
#else
diff --git a/test/auth.c b/test/auth.c
index a0c87ee..7473346 100644
--- a/test/auth.c
+++ b/test/auth.c
@@ -700,6 +700,13 @@ static int serve_digest(ne_socket *sock, void *userdata)
SEND_STRING(sock, resp);
+ /* Give up now if we've sent a challenge which should force the
+ * client to fail immediately: */
+ if (parms->failure == fail_bogus_alg
+ || parms->failure == fail_req0_stale) {
+ return OK;
+ }
+
do {
CALL(discard_request(sock));
diff --git a/test/socket.c b/test/socket.c
index 5d69792..941064f 100644
--- a/test/socket.c
+++ b/test/socket.c
@@ -1027,14 +1027,14 @@ static int ssl_session_id(void)
{
size_t len2;
- len2 = len1;
+ len2 = sizeof buf;
ONN("could not retrieve session id",
ne_sock_sessid(sock, buf, &len2));
ONN("buffer size changed!?", len1 != len2);
}
- ONN("buffer written past end",
+ ONN("buffer written past expected end",
len1 < sizeof buf && buf[len1] != 'Z');
/* Attempt retrieval into too-short buffer: */