diff options
Diffstat (limited to 'source3/rpcclient/cmd_lsarpc.c')
-rw-r--r-- | source3/rpcclient/cmd_lsarpc.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/source3/rpcclient/cmd_lsarpc.c b/source3/rpcclient/cmd_lsarpc.c index 3fca535ff0..bcb131a76c 100644 --- a/source3/rpcclient/cmd_lsarpc.c +++ b/source3/rpcclient/cmd_lsarpc.c @@ -192,7 +192,6 @@ static NTSTATUS cmd_lsa_lookup_sids(struct cli_state *cli, TALLOC_CTX *mem_ctx, char **names; uint32 *types; int i; - int nsids = atoi(argv[2]); if (argc == 1) { printf("Usage: %s [sid1 [sid2 [...]]]\n", argv[0]); @@ -208,22 +207,22 @@ static NTSTATUS cmd_lsa_lookup_sids(struct cli_state *cli, TALLOC_CTX *mem_ctx, /* Convert arguments to sids */ - sids = TALLOC_ARRAY(mem_ctx, DOM_SID, nsids); + sids = TALLOC_ARRAY(mem_ctx, DOM_SID, argc - 1); if (!sids) { printf("could not allocate memory for %d sids\n", argc - 1); goto done; } - for (i = 0; i < nsids; i++) - if (!string_to_sid(&sids[i], argv[1])) { + for (i = 0; i < argc - 1; i++) + if (!string_to_sid(&sids[i], argv[i + 1])) { result = NT_STATUS_INVALID_SID; goto done; } /* Lookup the SIDs */ - result = cli_lsa_lookup_sids(cli, mem_ctx, &pol, nsids, sids, + result = cli_lsa_lookup_sids(cli, mem_ctx, &pol, argc - 1, sids, &domains, &names, &types); if (!NT_STATUS_IS_OK(result) && NT_STATUS_V(result) != @@ -234,7 +233,7 @@ static NTSTATUS cmd_lsa_lookup_sids(struct cli_state *cli, TALLOC_CTX *mem_ctx, /* Print results */ - for (i = 0; i < nsids; i++) { + for (i = 0; i < argc - 1; i++) { fstring sid_str; sid_to_string(sid_str, &sids[i]); |