[GLUE] Rsync SAMBA_3_2_0 SVN r25598 in order to create the v3-2-test branch.
[rusty/samba.git] / source3 / rpcclient / cmd_samr.c
index b4cfb1eb295f68cafbd18c7004e37618852f4de3..3cef720ac577755d990bcdde3531662095f5c797 100644 (file)
@@ -1207,14 +1207,13 @@ static NTSTATUS cmd_samr_delete_alias(struct rpc_pipe_client *cli,
 
 /* Query display info */
 
-static NTSTATUS cmd_samr_query_dispinfo_int(struct rpc_pipe_client *cli, 
-                                           TALLOC_CTX *mem_ctx,
-                                           int argc, const char **argv, 
-                                           int opcode)
+static NTSTATUS cmd_samr_query_dispinfo(struct rpc_pipe_client *cli, 
+                                        TALLOC_CTX *mem_ctx,
+                                        int argc, const char **argv) 
 {
        POLICY_HND connect_pol, domain_pol;
        NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
-       uint32 start_idx=0, max_entries=250, max_size = (uint32) -1, num_entries, i;
+       uint32 start_idx=0, max_entries=250, max_size = 0xffff, num_entries, i;
        uint32 access_mask = MAXIMUM_ALLOWED_ACCESS;
        uint32 info_level = 1;
        SAM_DISPINFO_CTR ctr;
@@ -1250,7 +1249,6 @@ static NTSTATUS cmd_samr_query_dispinfo_int(struct rpc_pipe_client *cli,
        if (argc >= 6)
                 sscanf(argv[5], "%x", &access_mask);
 
-
        /* Get sam policy handle */
 
        result = try_samr_connects(cli, mem_ctx, MAXIMUM_ALLOWED_ACCESS, 
@@ -1302,31 +1300,11 @@ static NTSTATUS cmd_samr_query_dispinfo_int(struct rpc_pipe_client *cli,
                if (!got_params)
                        get_query_dispinfo_params(
                                loop_count, &max_entries, &max_size);
-
-               switch (opcode) {
-               case SAMR_QUERY_DISPINFO:
-                       result = rpccli_samr_query_dispinfo(cli, mem_ctx, &domain_pol,
-                                                           &start_idx, info_level,
-                                                           &num_entries, max_entries, 
-                                                           max_size, &ctr);
-                       break;
-               case SAMR_QUERY_DISPINFO2:
-                       result = rpccli_samr_query_dispinfo2(cli, mem_ctx, &domain_pol,
-                                                            &start_idx, info_level,
-                                                            &num_entries, max_entries, 
-                                                            max_size, &ctr);
-                       break;
-               case SAMR_QUERY_DISPINFO3:
-                       result = rpccli_samr_query_dispinfo3(cli, mem_ctx, &domain_pol,
-                                                            &start_idx, info_level,
-                                                            &num_entries, max_entries, 
-                                                            max_size, &ctr);
-                       break;
-               default:
-                       printf("unknown opcode: %d\n", opcode);
-                       return NT_STATUS_INVALID_PARAMETER;
-                       break;
-               }
+               
+               result = rpccli_samr_query_dispinfo(cli, mem_ctx, &domain_pol,
+                                                &start_idx, info_level,
+                                                &num_entries, max_entries, 
+                                                max_size, &ctr);
 
                loop_count++;
 
@@ -1363,114 +1341,6 @@ static NTSTATUS cmd_samr_query_dispinfo_int(struct rpc_pipe_client *cli,
        return result;
 }
 
-static NTSTATUS cmd_samr_query_dispinfo(struct rpc_pipe_client *cli, 
-                                       TALLOC_CTX *mem_ctx,
-                                       int argc, const char **argv)
-{
-       return cmd_samr_query_dispinfo_int(cli, mem_ctx, argc, argv, SAMR_QUERY_DISPINFO);
-}
-
-static NTSTATUS cmd_samr_query_dispinfo2(struct rpc_pipe_client *cli, 
-                                        TALLOC_CTX *mem_ctx,
-                                        int argc, const char **argv) 
-{
-       return cmd_samr_query_dispinfo_int(cli, mem_ctx, argc, argv, SAMR_QUERY_DISPINFO2);
-}
-
-static NTSTATUS cmd_samr_query_dispinfo3(struct rpc_pipe_client *cli, 
-                                        TALLOC_CTX *mem_ctx,
-                                        int argc, const char **argv) 
-{
-       return cmd_samr_query_dispinfo_int(cli, mem_ctx, argc, argv, SAMR_QUERY_DISPINFO3);
-}
-
-/* Query display info index */
-
-static NTSTATUS cmd_samr_get_dispenum_index_int(struct rpc_pipe_client *cli, 
-                                               TALLOC_CTX *mem_ctx,
-                                               int argc, const char **argv,
-                                               int opcode)
-{
-       POLICY_HND connect_pol, domain_pol;
-       NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
-       uint32 access_mask = MAXIMUM_ALLOWED_ACCESS;
-       uint16 info_level = 1;
-       uint32 idx;
-
-       if (argc < 2 || argc > 3) {
-               printf("Usage: %s name [info level]\n", argv[0]);
-               return NT_STATUS_OK;
-       }
-
-       if (argc >= 3) {
-               sscanf(argv[2], "%hd", &info_level);
-       }
-
-       /* Get sam policy handle */
-
-       result = try_samr_connects(cli, mem_ctx, MAXIMUM_ALLOWED_ACCESS, 
-                                  &connect_pol);
-
-       if (!NT_STATUS_IS_OK(result)) {
-               goto done;
-       }
-
-       /* Get domain policy handle */
-
-       result = rpccli_samr_open_domain(cli, mem_ctx, &connect_pol,
-                                        access_mask, 
-                                        &domain_sid, &domain_pol);
-
-       if (!NT_STATUS_IS_OK(result)) {
-               goto done;
-       }
-
-       /* Query display info index */
-
-       switch (opcode) {
-       case SAMR_GET_DISPENUM_INDEX:
-               result = rpccli_samr_get_dispenum_index(cli, mem_ctx, &domain_pol,
-                                                       info_level, argv[1], &idx);
-               break;
-       case SAMR_GET_DISPENUM_INDEX2:
-               result = rpccli_samr_get_dispenum_index2(cli, mem_ctx, &domain_pol,
-                                                       info_level, argv[1], &idx);
-               break;
-       default:
-               printf("unknown opcode\n");
-               return NT_STATUS_INVALID_PARAMETER;
-       }
-       
-       if (NT_STATUS_IS_ERR(result)) {
-               goto done;
-       };
-
-       printf("idx is: %d (0x%08x)\n", idx, idx);
-
-       rpccli_samr_close(cli, mem_ctx, &domain_pol);
-       rpccli_samr_close(cli, mem_ctx, &connect_pol);
- done:
-       return result;
-}
-
-/* Query display info index */
-
-static NTSTATUS cmd_samr_get_dispenum_index(struct rpc_pipe_client *cli, 
-                                           TALLOC_CTX *mem_ctx,
-                                           int argc, const char **argv)
-{
-       return cmd_samr_get_dispenum_index_int(cli, mem_ctx, argc, argv, SAMR_GET_DISPENUM_INDEX);
-}
-
-/* Query display info index2 */
-
-static NTSTATUS cmd_samr_get_dispenum_index2(struct rpc_pipe_client *cli, 
-                                            TALLOC_CTX *mem_ctx,
-                                            int argc, const char **argv)
-{
-       return cmd_samr_get_dispenum_index_int(cli, mem_ctx, argc, argv, SAMR_GET_DISPENUM_INDEX2);
-}
-
 /* Query domain info */
 
 static NTSTATUS cmd_samr_query_dominfo(struct rpc_pipe_client *cli, 
@@ -2402,10 +2272,6 @@ struct cmd_set samr_commands[] = {
        { "queryaliasmem",      RPC_RTYPE_NTSTATUS, cmd_samr_query_aliasmem,    NULL, PI_SAMR, NULL,    "Query alias membership",  "" },
        { "deletealias",        RPC_RTYPE_NTSTATUS, cmd_samr_delete_alias,      NULL, PI_SAMR, NULL,    "Delete an alias",  "" },
        { "querydispinfo",      RPC_RTYPE_NTSTATUS, cmd_samr_query_dispinfo,    NULL, PI_SAMR, NULL,    "Query display info",      "" },
-       { "querydispinfo2",     RPC_RTYPE_NTSTATUS, cmd_samr_query_dispinfo2,   NULL, PI_SAMR, NULL,    "Query display info 2",      "" },
-       { "querydispinfo3",     RPC_RTYPE_NTSTATUS, cmd_samr_query_dispinfo3,   NULL, PI_SAMR, NULL,    "Query display info 3",      "" },
-       { "getdispenumindex",   RPC_RTYPE_NTSTATUS, cmd_samr_get_dispenum_index,        NULL, PI_SAMR, NULL,    "Query display info index",      "" },
-       { "getdispenumindex2",  RPC_RTYPE_NTSTATUS, cmd_samr_get_dispenum_index2,       NULL, PI_SAMR, NULL,    "Query display info index",      "" },
        { "querydominfo",       RPC_RTYPE_NTSTATUS, cmd_samr_query_dominfo,     NULL, PI_SAMR, NULL,    "Query domain info",       "" },
        { "enumdomusers",      RPC_RTYPE_NTSTATUS, cmd_samr_enum_dom_users,       NULL, PI_SAMR, NULL,  "Enumerate domain users", "" },
        { "enumdomgroups",      RPC_RTYPE_NTSTATUS, cmd_samr_enum_dom_groups,       NULL, PI_SAMR, NULL,        "Enumerate domain groups", "" },