Revert the 3.3.5 merge which I did in an unclean copy of the trunk..:-(
[abartlet/samba-debian.git] / source / winbindd / idmap_ldap.c
index 7a0e32b769ade86aee5425c49acbb7e4b2621e9d..7224589076e1157b5901c5dcea834f3d16e7c198 100644 (file)
@@ -765,6 +765,7 @@ static NTSTATUS idmap_ldap_db_init(struct idmap_domain *dom,
        NTSTATUS ret;
        struct idmap_ldap_context *ctx = NULL;
        char *config_option = NULL;
+       const char *range = NULL;
        const char *tmp = NULL;
 
        /* Only do init if we are online */
@@ -778,63 +779,23 @@ static NTSTATUS idmap_ldap_db_init(struct idmap_domain *dom,
                return NT_STATUS_NO_MEMORY;
        }
 
-       if (strequal(dom->name, "*")) {
-               uid_t low_uid = 0;
-               uid_t high_uid = 0;
-               gid_t low_gid = 0;
-               gid_t high_gid = 0;
-
-               ctx->filter_low_id = 0;
-               ctx->filter_high_id = 0;
-
-               if (lp_idmap_uid(&low_uid, &high_uid)) {
-                       ctx->filter_low_id = low_uid;
-                       ctx->filter_high_id = high_uid;
-               } else {
-                       DEBUG(3, ("Warning: 'idmap uid' not set!\n"));
-               }
-
-               if (lp_idmap_gid(&low_gid, &high_gid)) {
-                       if ((low_gid != low_uid) || (high_gid != high_uid)) {
-                               DEBUG(1, ("Warning: 'idmap uid' and 'idmap gid'"
-                                     " ranges do not agree -- building "
-                                     "intersection\n"));
-                               ctx->filter_low_id = MAX(ctx->filter_low_id,
-                                                        low_gid);
-                               ctx->filter_high_id = MIN(ctx->filter_high_id,
-                                                         high_gid);
-                       }
-               } else {
-                       DEBUG(3, ("Warning: 'idmap gid' not set!\n"));
-               }
-       } else {
-               const char *range = NULL;
-
-               config_option = talloc_asprintf(ctx, "idmap config %s", dom->name);
-               if ( ! config_option) {
-                       DEBUG(0, ("Out of memory!\n"));
-                       ret = NT_STATUS_NO_MEMORY;
-                       goto done;
-               }
-
-               /* load ranges */
-               range = lp_parm_const_string(-1, config_option, "range", NULL);
-               if (range && range[0]) {
-                       if ((sscanf(range, "%u - %u", &ctx->filter_low_id,
-                                                       &ctx->filter_high_id) != 2))
-                       {
-                               DEBUG(1, ("ERROR: invalid filter range [%s]", range));
-                               ctx->filter_low_id = 0;
-                               ctx->filter_high_id = 0;
-                       }
-               }
+       config_option = talloc_asprintf(ctx, "idmap config %s", dom->name);
+       if ( ! config_option) {
+               DEBUG(0, ("Out of memory!\n"));
+               ret = NT_STATUS_NO_MEMORY;
+               goto done;
        }
 
-       if (ctx->filter_low_id > ctx->filter_high_id) {
-               DEBUG(1, ("ERROR: invalid filter range [%u-%u]",
-                     ctx->filter_low_id, ctx->filter_high_id));
-               ctx->filter_low_id = 0;
-               ctx->filter_high_id = 0;
+       /* load ranges */
+       range = lp_parm_const_string(-1, config_option, "range", NULL);
+       if (range && range[0]) {
+               if ((sscanf(range, "%u - %u", &ctx->filter_low_id,
+                                               &ctx->filter_high_id) != 2) ||
+                   (ctx->filter_low_id > ctx->filter_high_id)) {
+                       DEBUG(1, ("ERROR: invalid filter range [%s]", range));
+                       ctx->filter_low_id = 0;
+                       ctx->filter_high_id = 0;
+               }
        }
 
        if (params != NULL) {