Arthur de Jong

Open Source / Free Software developer

summaryrefslogtreecommitdiffstats
path: root/nslcd/cfg.c
diff options
context:
space:
mode:
authorSeth Wright <seth@crosse.org>2017-03-20 22:09:07 +0100
committerArthur de Jong <arthur@arthurdejong.org>2017-06-20 23:03:38 +0200
commit510317313cda849d41f4f7d498416dc978d2b842 (patch)
treed1236b67a813cc46493ddd3e5b274637406f0469 /nslcd/cfg.c
parentfee74d93917a857ceeeaeb78d41d31603fc9aefc (diff)
Add the ability to offset UID and GID numbers
Diffstat (limited to 'nslcd/cfg.c')
-rw-r--r--nslcd/cfg.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/nslcd/cfg.c b/nslcd/cfg.c
index 2b832e2..530ab28 100644
--- a/nslcd/cfg.c
+++ b/nslcd/cfg.c
@@ -1239,6 +1239,8 @@ static void cfg_defaults(struct ldap_config *cfg)
cfg->pagesize = 0;
cfg->nss_initgroups_ignoreusers = NULL;
cfg->nss_min_uid = 0;
+ cfg->nss_uid_offset = 0;
+ cfg->nss_gid_offset = 0;
cfg->nss_nested_groups = 0;
cfg->nss_getgrent_skipmembers = 0;
cfg->nss_disable_enumeration = 0;
@@ -1575,6 +1577,16 @@ static void cfg_read(const char *filename, struct ldap_config *cfg)
cfg->nss_min_uid = get_int(filename, lnr, keyword, &line);
get_eol(filename, lnr, keyword, &line);
}
+ else if (strcasecmp(keyword, "nss_uid_offset") == 0)
+ {
+ cfg->nss_uid_offset = get_int(filename, lnr, keyword, &line);
+ get_eol(filename, lnr, keyword, &line);
+ }
+ else if (strcasecmp(keyword, "nss_gid_offset") == 0)
+ {
+ cfg->nss_gid_offset = get_int(filename, lnr, keyword, &line);
+ get_eol(filename, lnr, keyword, &line);
+ }
else if (strcasecmp(keyword, "nss_nested_groups") == 0)
{
cfg->nss_nested_groups = get_boolean(filename, lnr, keyword, &line);
@@ -1864,6 +1876,8 @@ static void cfg_dump(void)
log_log(LOG_DEBUG, "CFG: nss_initgroups_ignoreusers %s", buffer);
}
log_log(LOG_DEBUG, "CFG: nss_min_uid %lu", (unsigned long int)nslcd_cfg->nss_min_uid);
+ log_log(LOG_DEBUG, "CFG: nss_uid_offset %lu", (unsigned long int)nslcd_cfg->nss_uid_offset);
+ log_log(LOG_DEBUG, "CFG: nss_gid_offset %lu", (unsigned long int)nslcd_cfg->nss_gid_offset);
log_log(LOG_DEBUG, "CFG: nss_nested_groups %s", print_boolean(nslcd_cfg->nss_nested_groups));
log_log(LOG_DEBUG, "CFG: nss_getgrent_skipmembers %s", print_boolean(nslcd_cfg->nss_getgrent_skipmembers));
log_log(LOG_DEBUG, "CFG: nss_disable_enumeration %s", print_boolean(nslcd_cfg->nss_disable_enumeration));