diff options
Diffstat (limited to 'source3/winbindd/winbindd_dual_srv.c')
-rw-r--r-- | source3/winbindd/winbindd_dual_srv.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/source3/winbindd/winbindd_dual_srv.c b/source3/winbindd/winbindd_dual_srv.c index 222fd835af..179a771066 100644 --- a/source3/winbindd/winbindd_dual_srv.c +++ b/source3/winbindd/winbindd_dual_srv.c @@ -491,3 +491,26 @@ NTSTATUS _wbint_RemoveMapping(pipes_struct *p, struct wbint_RemoveMapping *r) return idmap_remove_mapping(&map); } + +NTSTATUS _wbint_SetHWM(pipes_struct *p, struct wbint_SetHWM *r) +{ + struct unixid id; + NTSTATUS status; + + id.id = r->in.id; + + switch (id.type) { + case WBINT_ID_TYPE_UID: + id.type = ID_TYPE_UID; + status = idmap_set_uid_hwm(&id); + break; + case ID_TYPE_GID: + id.type = ID_TYPE_GID; + status = idmap_set_gid_hwm(&id); + break; + default: + status = NT_STATUS_INVALID_PARAMETER; + break; + } + return status; +} |