From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Carpenter Date: Sat, 15 Jan 2011 20:35:39 +0000 Subject: [patch] 9p: fix min_t() casting Message-Id: <20110115203539.GF2721@bicker> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Eric Van Hensbergen Cc: "David S. Miller" , Sripathi Kodi , Venkateswararao Jujjuri , "Aneesh Kumar K.V" , netdev@vger.kernel.org, kernel-janitors@vger.kernel.org The intent here was to cap the length to USHRT_MAX, but what the code actually does is it just casts the return from strlen() to unsigned short and truncates the significant bits away. Signed-off-by: Dan Carpenter diff --git a/net/9p/protocol.c b/net/9p/protocol.c index 1e308f2..0422581 100644 --- a/net/9p/protocol.c +++ b/net/9p/protocol.c @@ -403,7 +403,7 @@ p9pdu_vwritef(struct p9_fcall *pdu, int proto_version, const char *fmt, const char *sptr = va_arg(ap, const char *); uint16_t len = 0; if (sptr) - len = min_t(uint16_t, strlen(sptr), + len = min_t(size_t, strlen(sptr), USHRT_MAX); errcode = p9pdu_writef(pdu, proto_version,