diff options
author | Gerald Carter <jerry@samba.org> | 2003-04-24 16:48:08 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2003-04-24 16:48:08 +0000 |
commit | 4c7ee6e6b82c69ead96bc90c75cbdfab19486bb5 (patch) | |
tree | 40dadb3d17b7a5119dc3f8a0895125b516d6f2e6 /source/utils | |
parent | 7105265238de850f5b7effef3be8fb3f5d383669 (diff) | |
download | samba-4c7ee6e6b82c69ead96bc90c75cbdfab19486bb5.tar.gz samba-4c7ee6e6b82c69ead96bc90c75cbdfab19486bb5.tar.xz samba-4c7ee6e6b82c69ead96bc90c75cbdfab19486bb5.zip |
groupmap delete should take a name or a SID
Diffstat (limited to 'source/utils')
-rw-r--r-- | source/utils/net_groupmap.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/source/utils/net_groupmap.c b/source/utils/net_groupmap.c index 2b88183f22d..aaefda2e5c3 100644 --- a/source/utils/net_groupmap.c +++ b/source/utils/net_groupmap.c @@ -115,19 +115,27 @@ int net_groupmap_list(int argc, const char **argv) BOOL long_list = False; int i; fstring ntgroup = ""; + fstring sid_string = ""; /* get the options */ for ( i=0; i<argc; i++ ) { if ( !StrCaseCmp(argv[i], "verbose")) { long_list = True; } - else if ( !StrnCaseCmp(argv[i], "name", strlen("name")) ) { + else if ( !StrnCaseCmp(argv[i], "ntgroup", strlen("ntgroup")) ) { fstrcpy( ntgroup, get_string_param( argv[i] ) ); if ( !ntgroup[0] ) { d_printf("must supply a name\n"); return -1; } } + else if ( !StrnCaseCmp(argv[i], "sid", strlen("sid")) ) { + fstrcpy( sid_string, get_string_param( argv[i] ) ); + if ( !sid_string[0] ) { + d_printf("must supply a SID\n"); + return -1; + } + } else { d_printf("Bad option: %s\n", argv[i]); return -1; @@ -135,9 +143,12 @@ int net_groupmap_list(int argc, const char **argv) } /* list a single group is given a name */ - if ( ntgroup[0] ) { + if ( ntgroup[0] || sid_string[0] ) { DOM_SID sid; GROUP_MAP map; + + if ( sid_string[0] ) + fstrcpy( ntgroup, sid_string); if (!get_sid_from_input(&sid, ntgroup)) { return -1; |