]> asedeno.scripts.mit.edu Git - PuTTY.git/blobdiff - sshrsa.c
Tighten up a lot of casts from unsigned to int which are read by one
[PuTTY.git] / sshrsa.c
index 77a6bb250cec41c11b2e4df6ccac28aef1c7ab5a..6403343b247aac01aa7fd97675f67a687813064e 100644 (file)
--- a/sshrsa.c
+++ b/sshrsa.c
@@ -525,7 +525,9 @@ static void getstring(char **data, int *datalen, char **p, int *length)
     *p = NULL;
     if (*datalen < 4)
        return;
-    *length = GET_32BIT(*data);
+    *length = toint(GET_32BIT(*data));
+    if (*length < 0)
+        return;
     *datalen -= 4;
     *data += 4;
     if (*datalen < *length)