Fixed recv_add_uid() to properly differentiate users and groups.
authorMatt McCutchen <matt@mattmccutchen.net>
Tue, 13 Jan 2009 19:15:08 +0000 (11:15 -0800)
committerWayne Davison <wayned@samba.org>
Tue, 13 Jan 2009 19:21:06 +0000 (11:21 -0800)
uidlist.c

index 7162dfa..7e8cbd7 100644 (file)
--- a/uidlist.c
+++ b/uidlist.c
@@ -179,7 +179,7 @@ static struct idlist *recv_add_id(struct idlist **idlist_ptr, struct idlist *idm
        if (node)
                id2 = node->id2;
        else if (*name && id) {
        if (node)
                id2 = node->id2;
        else if (*name && id) {
-               if (idmap == uidmap) {
+               if (idlist_ptr == &uidlist) {
                        uid_t uid;
                        id2 = name_to_uid(name, &uid) ? uid : id;
                } else {
                        uid_t uid;
                        id2 = name_to_uid(name, &uid) ? uid : id;
                } else {
@@ -189,12 +189,12 @@ static struct idlist *recv_add_id(struct idlist **idlist_ptr, struct idlist *idm
        } else
                id2 = id;
 
        } else
                id2 = id;
 
-       flag = idmap == gidmap && !am_root && !is_in_group(id2) ? FLAG_SKIP_GROUP : 0;
+       flag = idlist_ptr == &gidlist && !am_root && !is_in_group(id2) ? FLAG_SKIP_GROUP : 0;
        node = add_to_list(idlist_ptr, id, *name ? name : NULL, id2, flag);
 
        if (DEBUG_GTE(OWN, 2)) {
                rprintf(FINFO, "%sid %u(%s) maps to %u\n",
        node = add_to_list(idlist_ptr, id, *name ? name : NULL, id2, flag);
 
        if (DEBUG_GTE(OWN, 2)) {
                rprintf(FINFO, "%sid %u(%s) maps to %u\n",
-                       idmap == uidmap ? "u" : "g",
+                       idlist_ptr == &uidlist ? "u" : "g",
                        (unsigned)id, name, (unsigned)id2);
        }
 
                        (unsigned)id, name, (unsigned)id2);
        }