svn commit: samba r4207 - in branches/SAMBA_4_0/source/client: .
tridge at samba.org
tridge at samba.org
Tue Dec 14 22:24:56 GMT 2004
Author: tridge
Date: 2004-12-14 22:24:56 +0000 (Tue, 14 Dec 2004)
New Revision: 4207
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=4207
Log:
remove "lookupname" and "lookupsid", and instead have a single "lookup" command that
takes a name or sid.
I think in general its better to make smbclient automatically work out the type from
the format (I did the same with the privileges commands)
Modified:
branches/SAMBA_4_0/source/client/client.c
Changeset:
Modified: branches/SAMBA_4_0/source/client/client.c
===================================================================
--- branches/SAMBA_4_0/source/client/client.c 2004-12-14 22:18:33 UTC (rev 4206)
+++ branches/SAMBA_4_0/source/client/client.c 2004-12-14 22:24:56 UTC (rev 4207)
@@ -1837,60 +1837,44 @@
}
/****************************************************************************
-lookup a sid
+lookup a name or sid
****************************************************************************/
-static int cmd_lookupsid(const char **cmd_ptr)
+static int cmd_lookup(const char **cmd_ptr)
{
fstring buf;
TALLOC_CTX *mem_ctx = talloc(NULL, 0);
NTSTATUS status;
- const char *name;
+ struct dom_sid *sid;
if (!next_token(cmd_ptr,buf,NULL,sizeof(buf))) {
- d_printf("lookupsid <sid>\n");
+ d_printf("lookup <name|sid>\n");
talloc_free(mem_ctx);
return 1;
}
- status = smblsa_lookup_sid(cli, buf, mem_ctx, &name);
- if (!NT_STATUS_IS_OK(status)) {
- d_printf("lsa_LookupSids - %s\n", nt_errstr(status));
- talloc_free(mem_ctx);
- return 1;
- }
+ sid = dom_sid_parse_talloc(mem_ctx, buf);
+ if (sid == NULL) {
+ const char *sidstr;
+ status = smblsa_lookup_name(cli, buf, mem_ctx, &sidstr);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_printf("lsa_LookupNames - %s\n", nt_errstr(status));
+ talloc_free(mem_ctx);
+ return 1;
+ }
- d_printf("%s\n", name);
+ d_printf("%s\n", sidstr);
+ } else {
+ const char *name;
+ status = smblsa_lookup_sid(cli, buf, mem_ctx, &name);
+ if (!NT_STATUS_IS_OK(status)) {
+ d_printf("lsa_LookupSids - %s\n", nt_errstr(status));
+ talloc_free(mem_ctx);
+ return 1;
+ }
- talloc_free(mem_ctx);
-
- return 0;
-}
-
-/****************************************************************************
-lookup a name, showing sid
-****************************************************************************/
-static int cmd_lookupname(const char **cmd_ptr)
-{
- fstring buf;
- TALLOC_CTX *mem_ctx = talloc(NULL, 0);
- NTSTATUS status;
- const char *sid;
-
- if (!next_token(cmd_ptr,buf,NULL,sizeof(buf))) {
- d_printf("lookupname <name>\n");
- talloc_free(mem_ctx);
- return 1;
+ d_printf("%s\n", name);
}
- status = smblsa_lookup_name(cli, buf, mem_ctx, &sid);
- if (!NT_STATUS_IS_OK(status)) {
- d_printf("lsa_LookupNames - %s\n", nt_errstr(status));
- talloc_free(mem_ctx);
- return 1;
- }
-
- d_printf("%s\n", sid);
-
talloc_free(mem_ctx);
return 0;
@@ -2613,8 +2597,7 @@
{"history",cmd_history,"displays the command history",{COMPL_NONE,COMPL_NONE}},
{"lcd",cmd_lcd,"[directory] change/report the local current working directory",{COMPL_LOCAL,COMPL_NONE}},
{"link",cmd_link,"<src> <dest> create a UNIX hard link",{COMPL_REMOTE,COMPL_REMOTE}},
- {"lookupname",cmd_lookupname,"<name> show SID for name",{COMPL_NONE,COMPL_NONE}},
- {"lookupsid",cmd_lookupsid,"<sid> show name for SID",{COMPL_NONE,COMPL_NONE}},
+ {"lookup",cmd_lookup,"<name|sid> show SID for name or name for SID",{COMPL_NONE,COMPL_NONE}},
{"lowercase",cmd_lowercase,"toggle lowercasing of filenames for get",{COMPL_NONE,COMPL_NONE}},
{"ls",cmd_dir,"<mask> list the contents of the current directory",{COMPL_REMOTE,COMPL_NONE}},
{"mask",cmd_select,"<mask> mask all filenames against this",{COMPL_REMOTE,COMPL_NONE}},
More information about the samba-cvs
mailing list