aboutsummaryrefslogtreecommitdiff
path: root/src/buffer.c
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2016-01-19 11:09:06 +0100
committerAndreas Schneider <asn@cryptomilk.org>2016-01-19 11:09:06 +0100
commit41a10699e694b5565878ef5a862e1fff20faa5db (patch)
tree9c307140b6e1623cc7b33e9d3b360ae7a1262947 /src/buffer.c
parentb1c0121507ff666c0a3c636e4c0c4a637c5acdf5 (diff)
downloadlibssh-41a10699e694b5565878ef5a862e1fff20faa5db.tar.gz
libssh-41a10699e694b5565878ef5a862e1fff20faa5db.tar.xz
libssh-41a10699e694b5565878ef5a862e1fff20faa5db.zip
buffer: Make sure we do not use u32len uninitialized
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'src/buffer.c')
-rw-r--r--src/buffer.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/buffer.c b/src/buffer.c
index 0bffdfda..c3ba2fa1 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -868,7 +868,6 @@ int ssh_buffer_unpack_va(struct ssh_buffer_struct *buffer,
void **data;
} o;
size_t len, rlen;
- uint32_t u32len;
va_list ap_copy;
int count;
@@ -912,7 +911,9 @@ int ssh_buffer_unpack_va(struct ssh_buffer_struct *buffer,
rc = *o.string != NULL ? SSH_OK : SSH_ERROR;
o.string = NULL;
break;
- case 's':
+ case 's': {
+ uint32_t u32len = 0;
+
o.cstring = va_arg(ap, char **);
*o.cstring = NULL;
rc = buffer_get_u32(buffer, &u32len);
@@ -940,6 +941,7 @@ int ssh_buffer_unpack_va(struct ssh_buffer_struct *buffer,
o.cstring = NULL;
rc = SSH_OK;
break;
+ }
case 'P':
len = va_arg(ap, size_t);