rem: size_t len;
context: char *user_from_uid(uid_t uid) {    struct pwbuf **p;    struct passwd *pw;    size_t len;    p = &pwhash[HASH(uid)];    while (*p) {	if ((*p)->uid == uid)	    return((*p)->name);	p = &(*p)->next;    }    *p = (struct pwbuf *) xmalloc(sizeof(struct pwbuf));    (*p)->uid = uid;    pw = getpwuid(uid);    len = pw ? strlen(pw) : 0;    if (len >= P_G_SZ)	sprintf((*p)->name, "%u", uid);    else        strcpy((*p)->name, pw->pw_name);    (*p)->next = NULL;    return((*p)->name);}