diff options
Diffstat (limited to 'monitor.c')
-rw-r--r-- | monitor.c | 21 |
1 files changed, 8 insertions, 13 deletions
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: monitor.c,v 1.177 2017/12/21 00:00:28 djm Exp $ */ | 1 | /* $OpenBSD: monitor.c,v 1.178 2018/01/23 05:27:21 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> | 3 | * Copyright 2002 Niels Provos <provos@citi.umich.edu> |
4 | * Copyright 2002 Markus Friedl <markus@openbsd.org> | 4 | * Copyright 2002 Markus Friedl <markus@openbsd.org> |
@@ -1255,18 +1255,13 @@ monitor_valid_userblob(u_char *data, u_int datalen) | |||
1255 | free(userstyle); | 1255 | free(userstyle); |
1256 | free(cp); | 1256 | free(cp); |
1257 | buffer_skip_string(&b); | 1257 | buffer_skip_string(&b); |
1258 | if (datafellows & SSH_BUG_PKAUTH) { | 1258 | cp = buffer_get_cstring(&b, NULL); |
1259 | if (!buffer_get_char(&b)) | 1259 | if (strcmp("publickey", cp) != 0) |
1260 | fail++; | 1260 | fail++; |
1261 | } else { | 1261 | free(cp); |
1262 | cp = buffer_get_cstring(&b, NULL); | 1262 | if (!buffer_get_char(&b)) |
1263 | if (strcmp("publickey", cp) != 0) | 1263 | fail++; |
1264 | fail++; | 1264 | buffer_skip_string(&b); |
1265 | free(cp); | ||
1266 | if (!buffer_get_char(&b)) | ||
1267 | fail++; | ||
1268 | buffer_skip_string(&b); | ||
1269 | } | ||
1270 | buffer_skip_string(&b); | 1265 | buffer_skip_string(&b); |
1271 | if (buffer_len(&b) != 0) | 1266 | if (buffer_len(&b) != 0) |
1272 | fail++; | 1267 | fail++; |