From 70ec5e5e2681bcd409a9df94a2fec6f57a750945 Mon Sep 17 00:00:00 2001 From: "dtucker@openbsd.org" Date: Wed, 27 Nov 2019 03:34:04 +0000 Subject: upstream: Make channel_id u_int32_t and remove unnecessary check and cast that were left over from the type conversion. Noted by t-hashida@amiya.co.jp in bz#3098, ok markus@ djm@ OpenBSD-Commit-ID: 3ad105b6a905284e780b1fd7ff118e1c346e90b5 --- serverloop.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'serverloop.c') diff --git a/serverloop.c b/serverloop.c index ea468c954..16a4fd3e5 100644 --- a/serverloop.c +++ b/serverloop.c @@ -1,4 +1,4 @@ -/* $OpenBSD: serverloop.c,v 1.216 2019/06/28 13:35:04 deraadt Exp $ */ +/* $OpenBSD: serverloop.c,v 1.217 2019/11/27 03:34:04 dtucker Exp $ */ /* * Author: Tatu Ylonen * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland @@ -675,7 +675,7 @@ server_input_channel_open(int type, u_int32_t seq, struct ssh *ssh) char *ctype = NULL; const char *errmsg = NULL; int r, reason = SSH2_OPEN_CONNECT_FAILED; - u_int rchan = 0, rmaxpack = 0, rwindow = 0; + u_int32_t rchan = 0, rmaxpack = 0, rwindow = 0; if ((r = sshpkt_get_cstring(ssh, &ctype, NULL)) != 0 || (r = sshpkt_get_u32(ssh, &rchan)) != 0 || @@ -683,11 +683,9 @@ server_input_channel_open(int type, u_int32_t seq, struct ssh *ssh) (r = sshpkt_get_u32(ssh, &rmaxpack)) != 0) sshpkt_fatal(ssh, r, "%s: parse packet", __func__); debug("%s: ctype %s rchan %u win %u max %u", __func__, - ctype, rchan, rwindow, rmaxpack); + ctype, (u_int)rchan, (u_int)rwindow, (u_int)rmaxpack); - if (rchan > INT_MAX) { - error("%s: invalid remote channel ID", __func__); - } else if (strcmp(ctype, "session") == 0) { + if (strcmp(ctype, "session") == 0) { c = server_request_session(ssh); } else if (strcmp(ctype, "direct-tcpip") == 0) { c = server_request_direct_tcpip(ssh, &reason, &errmsg); @@ -698,7 +696,7 @@ server_input_channel_open(int type, u_int32_t seq, struct ssh *ssh) } if (c != NULL) { debug("%s: confirm %s", __func__, ctype); - c->remote_id = (int)rchan; + c->remote_id = rchan; c->have_remote_id = 1; c->remote_window = rwindow; c->remote_maxpacket = rmaxpack; -- cgit v1.2.3