Changeset 124 for branches/samba-3.0/source/passdb/lookup_sid.c
- Timestamp:
- Mar 12, 2008, 9:08:18 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/samba-3.0/source/passdb/lookup_sid.c
r39 r124 61 61 } 62 62 63 DEBUG(10,("lookup_name: %s => %s (domain), %s (name)\n",64 full_name, domain, name));65 66 63 if ((domain == NULL) || (name == NULL)) { 67 64 DEBUG(0, ("talloc failed\n")); … … 70 67 } 71 68 72 if (strequal(domain, get_global_sam_name())) { 69 DEBUG(10,("lookup_name: %s => %s (domain), %s (name)\n", 70 full_name, domain, name)); 71 DEBUG(10, ("lookup_name: flags = 0x0%x\n", flags)); 72 73 if ((flags & LOOKUP_NAME_DOMAIN) && 74 strequal(domain, get_global_sam_name())) 75 { 73 76 74 77 /* It's our own domain, lookup the name in passdb */ … … 82 85 } 83 86 84 if (strequal(domain, builtin_domain_name())) { 85 87 if ((flags & LOOKUP_NAME_BUILTIN) && 88 strequal(domain, builtin_domain_name())) 89 { 86 90 /* Explicit request for a name in BUILTIN */ 87 91 if (lookup_builtin_name(name, &rid)) { … … 99 103 100 104 if ((domain[0] != '\0') && 105 (flags & ~(LOOKUP_NAME_DOMAIN|LOOKUP_NAME_ISOLATED)) && 101 106 (winbind_lookup_name(domain, name, &sid, &type))) { 102 107 goto ok; … … 133 138 /* 1. well-known names */ 134 139 135 if (lookup_wellknown_name(tmp_ctx, name, &sid, &domain)) { 140 if ((flags & LOOKUP_NAME_WKN) && 141 lookup_wellknown_name(tmp_ctx, name, &sid, &domain)) 142 { 136 143 type = SID_NAME_WKN_GRP; 137 144 goto ok; … … 140 147 /* 2. Builtin domain as such */ 141 148 142 if (strequal(name, builtin_domain_name())) { 149 if ((flags & (LOOKUP_NAME_BUILTIN|LOOKUP_NAME_REMOTE)) && 150 strequal(name, builtin_domain_name())) 151 { 143 152 /* Swap domain and name */ 144 153 tmp = name; name = domain; domain = tmp; … … 150 159 /* 3. Account domain */ 151 160 152 if (strequal(name, get_global_sam_name())) { 161 if ((flags & LOOKUP_NAME_DOMAIN) && 162 strequal(name, get_global_sam_name())) 163 { 153 164 if (!secrets_fetch_domain_sid(name, &sid)) { 154 165 DEBUG(3, ("Could not fetch my SID\n")); … … 164 175 /* 4. Primary domain */ 165 176 166 if (!IS_DC && strequal(name, lp_workgroup())) { 177 if ((flags & LOOKUP_NAME_DOMAIN) && !IS_DC && 178 strequal(name, lp_workgroup())) 179 { 167 180 if (!secrets_fetch_domain_sid(name, &sid)) { 168 181 DEBUG(3, ("Could not fetch the domain SID\n")); … … 179 192 this, tested an XP workstation in a NT domain -- vl */ 180 193 181 if (IS_DC && (secrets_fetch_trusted_domain_password(name, NULL, 182 &sid, NULL))) { 194 if ((flags & LOOKUP_NAME_REMOTE) && IS_DC && 195 (secrets_fetch_trusted_domain_password(name, NULL, &sid, NULL))) 196 { 183 197 /* Swap domain and name */ 184 198 tmp = name; name = domain; domain = tmp; … … 189 203 /* 6. Builtin aliases */ 190 204 191 if (lookup_builtin_name(name, &rid)) { 205 if ((flags & LOOKUP_NAME_BUILTIN) && 206 lookup_builtin_name(name, &rid)) 207 { 192 208 domain = talloc_strdup(tmp_ctx, builtin_domain_name()); 193 209 sid_copy(&sid, &global_sid_Builtin); … … 202 218 /* Both cases are done by looking at our passdb */ 203 219 204 if (lookup_global_sam_name(name, flags, &rid, &type)) { 220 if ((flags & LOOKUP_NAME_DOMAIN) && 221 lookup_global_sam_name(name, flags, &rid, &type)) 222 { 205 223 domain = talloc_strdup(tmp_ctx, get_global_sam_name()); 206 224 sid_copy(&sid, get_global_sam_sid());
Note:
See TracChangeset
for help on using the changeset viewer.