summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Pool <mbp@samba.org>2002-04-11 02:25:53 +0000
committerMartin Pool <mbp@samba.org>2002-04-11 02:25:53 +0000
commit32f761755e2cfee243a1513c9ea9871586463fa6 (patch)
treeb9b71aa4a423961223f0715756c4c4d81e24afc2
parentc4fea82ff912c596e0e1e49218a67917be8df6df (diff)
downloadrsync-32f761755e2cfee243a1513c9ea9871586463fa6.tar.gz
Try to fix ctype issues by always calling these functions as
if (!isdigit(* (unsigned char *) p)) { so that the argument is always in the range of unsigned char when coerced to an int. (See digit 1.)
-rw-r--r--access.c2
-rw-r--r--clientserver.c4
-rw-r--r--exclude.c4
-rw-r--r--loadparm.c6
-rw-r--r--params.c4
-rw-r--r--socket.c2
-rw-r--r--util.c4
7 files changed, 13 insertions, 13 deletions
diff --git a/access.c b/access.c
index 050e8cc4..ff357480 100644
--- a/access.c
+++ b/access.c
@@ -38,7 +38,7 @@ static int match_address(char *addr, char *tok)
if (!addr || !*addr) return 0;
- if (!isdigit(tok[0])) return 0;
+ if (!isdigit(* (unsigned char *) tok)) return 0;
p = strchr(tok,'/');
if (p) *p = 0;
diff --git a/clientserver.c b/clientserver.c
index 2babcffc..4a857e33 100644
--- a/clientserver.c
+++ b/clientserver.c
@@ -246,7 +246,7 @@ static int rsync_module(int fd, int i)
if (am_root) {
p = lp_uid(i);
if (!name_to_uid(p, &uid)) {
- if (!isdigit(*p)) {
+ if (!isdigit(* (unsigned char *) p)) {
rprintf(FERROR,"Invalid uid %s\n", p);
io_printf(fd,"@ERROR: invalid uid %s\n", p);
return -1;
@@ -256,7 +256,7 @@ static int rsync_module(int fd, int i)
p = lp_gid(i);
if (!name_to_gid(p, &gid)) {
- if (!isdigit(*p)) {
+ if (!isdigit(* (unsigned char *) p)) {
rprintf(FERROR,"Invalid gid %s\n", p);
io_printf(fd,"@ERROR: invalid gid %s\n", p);
return -1;
diff --git a/exclude.c b/exclude.c
index 27dd303b..dc469e18 100644
--- a/exclude.c
+++ b/exclude.c
@@ -335,7 +335,7 @@ char *get_exclude_tok(char *p)
return(NULL);
/* Skip over any initial spaces */
- while(isspace((int) *s))
+ while (isspace(* (unsigned char *) s))
s++;
/* Are we at the end of the string? */
@@ -348,7 +348,7 @@ char *get_exclude_tok(char *p)
s+=2;
/* Skip to the next space or the end of the string */
- while(!isspace((int) *s) && *s != '\0')
+ while (!isspace(* (unsigned char *) s) && *s != '\0')
s++;
} else {
t=NULL;
diff --git a/loadparm.c b/loadparm.c
index 7bd4483c..d559b117 100644
--- a/loadparm.c
+++ b/loadparm.c
@@ -479,11 +479,11 @@ static int strwicmp(char *psz1, char *psz2)
/* sync the strings on first non-whitespace */
while (1)
{
- while (isspace((int) *psz1))
+ while (isspace(* (unsigned char *) psz1))
psz1++;
- while (isspace((int) *psz2))
+ while (isspace(* (unsigned char *) psz2))
psz2++;
- if (toupper((int) *psz1) != toupper((int) *psz2)
+ if (toupper(* (unsigned char *) psz1) != toupper(* (unsigned char *) psz2)
|| *psz1 == '\0' || *psz2 == '\0')
break;
psz1++;
diff --git a/params.c b/params.c
index 6d02053e..323d20ba 100644
--- a/params.c
+++ b/params.c
@@ -164,7 +164,7 @@ static int Continuation( char *line, int pos )
*/
{
pos--;
- while( (pos >= 0) && isspace((int) line[pos]) )
+ while( (pos >= 0) && isspace(((unsigned char *)line)[pos]) )
pos--;
return( ((pos >= 0) && ('\\' == line[pos])) ? pos : -1 );
@@ -386,7 +386,7 @@ static BOOL Parameter( FILE *InFile, BOOL (*pfunc)(char *, char *), int c )
c = 0;
else
{
- for( end = i; (end >= 0) && isspace((int) bufr[end]); end-- )
+ for( end = i; (end >= 0) && isspace(((unsigned char *) bufr)[end]); end-- )
;
c = getc( InFile );
}
diff --git a/socket.c b/socket.c
index 6a13b04a..bb7acc06 100644
--- a/socket.c
+++ b/socket.c
@@ -70,7 +70,7 @@ static int establish_proxy_connection(int fd, char *host, int port)
buffer);
return -1;
}
- for (cp = &buffer[5]; isdigit((int) *cp) || (*cp == '.'); cp++)
+ for (cp = &buffer[5]; isdigit(* (unsigned char *) cp) || (*cp == '.'); cp++)
;
while (*cp == ' ')
cp++;
diff --git a/util.c b/util.c
index bdde8b45..63af7dab 100644
--- a/util.c
+++ b/util.c
@@ -532,8 +532,8 @@ void glob_expand(char *base1, char **argv, int *argc, int maxargs)
void strlower(char *s)
{
while (*s) {
- if (isupper((int) *s))
- *s = tolower((int) *s);
+ if (isupper(* (unsigned char *) s))
+ *s = tolower(* (unsigned char *) s);
s++;
}
}