diff options
Diffstat (limited to 'session.c')
-rw-r--r-- | session.c | 14 |
1 files changed, 10 insertions, 4 deletions
@@ -33,7 +33,7 @@ | |||
33 | */ | 33 | */ |
34 | 34 | ||
35 | #include "includes.h" | 35 | #include "includes.h" |
36 | RCSID("$OpenBSD: session.c,v 1.55 2001/02/08 19:30:52 itojun Exp $"); | 36 | RCSID("$OpenBSD: session.c,v 1.56 2001/02/16 14:03:43 markus Exp $"); |
37 | 37 | ||
38 | #include "ssh.h" | 38 | #include "ssh.h" |
39 | #include "ssh1.h" | 39 | #include "ssh1.h" |
@@ -343,12 +343,18 @@ do_authenticated(struct passwd * pw) | |||
343 | 343 | ||
344 | s->auth_proto = packet_get_string(&proto_len); | 344 | s->auth_proto = packet_get_string(&proto_len); |
345 | s->auth_data = packet_get_string(&data_len); | 345 | s->auth_data = packet_get_string(&data_len); |
346 | packet_integrity_check(plen, 4 + proto_len + 4 + data_len + 4, type); | ||
347 | 346 | ||
348 | if (packet_get_protocol_flags() & SSH_PROTOFLAG_SCREEN_NUMBER) | 347 | if (packet_get_protocol_flags() & SSH_PROTOFLAG_SCREEN_NUMBER) { |
348 | debug2("SSH_PROTOFLAG_SCREEN_NUMBER == true"); | ||
349 | packet_integrity_check(plen, | ||
350 | 4 + proto_len + 4 + data_len + 4, type); | ||
349 | s->screen = packet_get_int(); | 351 | s->screen = packet_get_int(); |
350 | else | 352 | } else { |
353 | debug2("SSH_PROTOFLAG_SCREEN_NUMBER == false"); | ||
354 | packet_integrity_check(plen, | ||
355 | 4 + proto_len + 4 + data_len, type); | ||
351 | s->screen = 0; | 356 | s->screen = 0; |
357 | } | ||
352 | s->display = x11_create_display_inet(s->screen, options.x11_display_offset); | 358 | s->display = x11_create_display_inet(s->screen, options.x11_display_offset); |
353 | 359 | ||
354 | if (s->display == NULL) | 360 | if (s->display == NULL) |