} while (0)
struct idmap_ad_context {
- uint32_t filter_low_id;
- uint32_t filter_high_id;
ADS_STRUCT *ads;
struct posix_schema *ad_schema;
enum wb_posix_mapping ad_map_type; /* WB_POSIX_MAP_UNKNOWN */
{
struct idmap_ad_context *ctx;
char *config_option;
- const char *range = NULL;
const char *schema_mode = NULL;
if ( (ctx = TALLOC_ZERO_P(dom, struct idmap_ad_context)) == NULL ) {
return NT_STATUS_NO_MEMORY;
}
- /* 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;
- }
- }
-
/* default map type */
ctx->ad_map_type = WB_POSIX_MAP_RFC2307;