mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-01-10 01:48:00 +00:00
Never pass a `char' to a ctype function. I had relied on gcc -Wall
letting me know about instances of this, but it turns out that my ctype.h explicitly casts input values to `int' to evade the `subscript has type char' warning, so it had been carefully not letting me know! Found them all by compiling with a doctored ctype.h, and hopefully fixed them all too. [originally from svn r2927]
This commit is contained in:
parent
43fe7d3c87
commit
73203bce79
4
ldisc.c
4
ldisc.c
@ -164,8 +164,8 @@ void ldisc_send(void *handle, char *buf, int len, int interactive)
|
|||||||
bsb(ldisc, plen(ldisc, ldisc->buf[ldisc->buflen - 1]));
|
bsb(ldisc, plen(ldisc, ldisc->buf[ldisc->buflen - 1]));
|
||||||
ldisc->buflen--;
|
ldisc->buflen--;
|
||||||
if (ldisc->buflen > 0 &&
|
if (ldisc->buflen > 0 &&
|
||||||
isspace(ldisc->buf[ldisc->buflen - 1]) &&
|
isspace((unsigned char)ldisc->buf[ldisc->buflen-1]) &&
|
||||||
!isspace(ldisc->buf[ldisc->buflen]))
|
!isspace((unsigned char)ldisc->buf[ldisc->buflen]))
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
6
proxy.c
6
proxy.c
@ -281,7 +281,7 @@ static int proxy_for_destination (SockAddr addr, char *hostname, int port,
|
|||||||
|
|
||||||
while (exclude_list[s]) {
|
while (exclude_list[s]) {
|
||||||
while (exclude_list[s] &&
|
while (exclude_list[s] &&
|
||||||
(isspace(exclude_list[s]) ||
|
(isspace((unsigned char)exclude_list[s]) ||
|
||||||
exclude_list[s] == ',')) s++;
|
exclude_list[s] == ',')) s++;
|
||||||
|
|
||||||
if (!exclude_list[s]) break;
|
if (!exclude_list[s]) break;
|
||||||
@ -289,7 +289,7 @@ static int proxy_for_destination (SockAddr addr, char *hostname, int port,
|
|||||||
e = s;
|
e = s;
|
||||||
|
|
||||||
while (exclude_list[e] &&
|
while (exclude_list[e] &&
|
||||||
(isalnum(exclude_list[e]) ||
|
(isalnum((unsigned char)exclude_list[e]) ||
|
||||||
exclude_list[e] == '-' ||
|
exclude_list[e] == '-' ||
|
||||||
exclude_list[e] == '.' ||
|
exclude_list[e] == '.' ||
|
||||||
exclude_list[e] == '*')) e++;
|
exclude_list[e] == '*')) e++;
|
||||||
@ -325,7 +325,7 @@ static int proxy_for_destination (SockAddr addr, char *hostname, int port,
|
|||||||
|
|
||||||
/* Make sure we really have reached the next comma or end-of-string */
|
/* Make sure we really have reached the next comma or end-of-string */
|
||||||
while (exclude_list[s] &&
|
while (exclude_list[s] &&
|
||||||
!isspace(exclude_list[s]) &&
|
!isspace((unsigned char)exclude_list[s]) &&
|
||||||
exclude_list[s] != ',') s++;
|
exclude_list[s] != ',') s++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
2
rlogin.c
2
rlogin.c
@ -169,7 +169,7 @@ static char *rlogin_init(void *frontend_handle, void **backend_handle,
|
|||||||
sk_write(rlogin->s, cfg->termtype,
|
sk_write(rlogin->s, cfg->termtype,
|
||||||
strlen(cfg->termtype));
|
strlen(cfg->termtype));
|
||||||
sk_write(rlogin->s, "/", 1);
|
sk_write(rlogin->s, "/", 1);
|
||||||
for (p = cfg->termspeed; isdigit(*p); p++) continue;
|
for (p = cfg->termspeed; isdigit((unsigned char)*p); p++) continue;
|
||||||
sk_write(rlogin->s, cfg->termspeed, p - cfg->termspeed);
|
sk_write(rlogin->s, cfg->termspeed, p - cfg->termspeed);
|
||||||
rlogin->bufsize = sk_write(rlogin->s, &z, 1);
|
rlogin->bufsize = sk_write(rlogin->s, &z, 1);
|
||||||
}
|
}
|
||||||
|
@ -80,7 +80,7 @@ void provide_xrm_string(char *string)
|
|||||||
memcpy(key, p, q-p);
|
memcpy(key, p, q-p);
|
||||||
key[q-p-1] = '\0';
|
key[q-p-1] = '\0';
|
||||||
xrms->key = key;
|
xrms->key = key;
|
||||||
while (*q && isspace(*q))
|
while (*q && isspace((unsigned char)*q))
|
||||||
q++;
|
q++;
|
||||||
xrms->value = dupstr(q);
|
xrms->value = dupstr(q);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user