if(!isdigit(*ptr))
if(!isdigit((unsigned char)*ptr))
pts_name_to_id(struct rx_connection *conn, char *name, int *id){    int32_t res = 0;    namelist nlist;    idlist ilist;    int isdig = 1;    char *ptr = name;    while(*ptr && isdig) {	if(!isdigit(*ptr))	    isdig = 0;	ptr++;    }    if(isdig) {	*id = atoi(name);	return 0;    }    nlist.len = 1;    nlist.val = malloc(sizeof(prname) * nlist.len);    ilist.len = 1;    ilist.val = malloc(sizeof(int32_t) * ilist.len);    if((nlist.val == NULL) || (ilist.val == NULL))	errx(1, "Out of memory");    strncpy(nlist.val[0], name, sizeof(prname));    res = PR_NameToID(conn, &nlist, &ilist);    *id = ilist.val[0];    free(ilist.val);    free(nlist.val);    return res;}