Author: gd Date: 2007-06-27 11:42:17 +0000 (Wed, 27 Jun 2007) New Revision: 23627
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=23627 Log: Allow to pass down the lookup-level to rpccli_lsa_lookup_names(). Guenther Modified: branches/SAMBA_3_0/source/libmsrpc/cac_lsarpc.c branches/SAMBA_3_0/source/libsmb/libsmbclient.c branches/SAMBA_3_0/source/nsswitch/winbindd_rpc.c branches/SAMBA_3_0/source/python/py_lsa.c branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c branches/SAMBA_3_0/source/rpc_parse/parse_lsa.c branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c branches/SAMBA_3_0/source/utils/net_rpc.c branches/SAMBA_3_0/source/utils/net_rpc_rights.c branches/SAMBA_3_0/source/utils/net_util.c branches/SAMBA_3_0/source/utils/netlookup.c branches/SAMBA_3_0/source/utils/smbcacls.c branches/SAMBA_3_0/source/utils/smbcquotas.c branches/SAMBA_3_0_26/source/libsmb/libsmbclient.c branches/SAMBA_3_0_26/source/nsswitch/winbindd_rpc.c branches/SAMBA_3_0_26/source/python/py_lsa.c branches/SAMBA_3_0_26/source/rpc_client/cli_lsarpc.c branches/SAMBA_3_0_26/source/rpc_parse/parse_lsa.c branches/SAMBA_3_0_26/source/rpcclient/cmd_lsarpc.c branches/SAMBA_3_0_26/source/utils/net_rpc.c branches/SAMBA_3_0_26/source/utils/net_rpc_rights.c branches/SAMBA_3_0_26/source/utils/net_util.c branches/SAMBA_3_0_26/source/utils/netlookup.c branches/SAMBA_3_0_26/source/utils/smbcacls.c branches/SAMBA_3_0_26/source/utils/smbcquotas.c Changeset: Modified: branches/SAMBA_3_0/source/libmsrpc/cac_lsarpc.c =================================================================== --- branches/SAMBA_3_0/source/libmsrpc/cac_lsarpc.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/libmsrpc/cac_lsarpc.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -337,7 +337,7 @@ rpccli_lsa_lookup_names( pipe_hnd, mem_ctx, op->in.pol, num_names, ( const char ** ) op->in.names, NULL, - &sids, &types ); + 1, &sids, &types ); if ( NT_STATUS_IS_OK( hnd->status ) ) { /*this is the easy part, just make the out.sids array */ @@ -662,7 +662,7 @@ op->in.pol, 1, ( const char ** ) &( op->in. name ), - NULL, &user_sid, &type ); + NULL, 1, &user_sid, &type ); if ( !NT_STATUS_IS_OK( hnd->status ) ) return CAC_FAILURE; @@ -928,7 +928,7 @@ op->in.pol, 1, ( const char ** ) &( op->in. name ), - NULL, &user_sid, &type ); + NULL, 1, &user_sid, &type ); if ( !NT_STATUS_IS_OK( hnd->status ) ) return CAC_FAILURE; @@ -998,7 +998,7 @@ op->in.pol, 1, ( const char ** ) &( op->in. name ), - NULL, &user_sid, &type ); + NULL, 1, &user_sid, &type ); if ( !NT_STATUS_IS_OK( hnd->status ) ) return CAC_FAILURE; @@ -1060,7 +1060,7 @@ op->in.pol, 1, ( const char ** ) &( op->in. name ), - NULL, &user_sid, &type ); + NULL, 1, &user_sid, &type ); if ( !NT_STATUS_IS_OK( hnd->status ) ) return CAC_FAILURE; @@ -1122,7 +1122,7 @@ op->in.pol, 1, ( const char ** ) &( op->in. name ), - NULL, &user_sid, &type ); + NULL, 1, &user_sid, &type ); if ( !NT_STATUS_IS_OK( hnd->status ) ) return CAC_FAILURE; @@ -1181,7 +1181,7 @@ op->in.pol, 1, ( const char ** ) &( op->in. name ), - NULL, &user_sid, &type ); + NULL, 1, &user_sid, &type ); if ( !NT_STATUS_IS_OK( hnd->status ) ) return CAC_FAILURE; Modified: branches/SAMBA_3_0/source/libsmb/libsmbclient.c =================================================================== --- branches/SAMBA_3_0/source/libsmb/libsmbclient.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/libsmb/libsmbclient.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -3849,7 +3849,7 @@ } if (!NT_STATUS_IS_OK(rpccli_lsa_lookup_names(pipe_hnd, ipc_cli->mem_ctx, - pol, 1, &str, NULL, &sids, + pol, 1, &str, NULL, 1, &sids, &types))) { result = False; goto done; Modified: branches/SAMBA_3_0/source/nsswitch/winbindd_rpc.c =================================================================== --- branches/SAMBA_3_0/source/nsswitch/winbindd_rpc.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/nsswitch/winbindd_rpc.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -290,7 +290,7 @@ return result; result = rpccli_lsa_lookup_names(cli, mem_ctx, &lsa_policy, 1, - (const char**) &full_name, NULL, &sids, &types); + (const char**) &full_name, NULL, 1, &sids, &types); if (!NT_STATUS_IS_OK(result)) return result; Modified: branches/SAMBA_3_0/source/python/py_lsa.c =================================================================== --- branches/SAMBA_3_0/source/python/py_lsa.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/python/py_lsa.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -187,7 +187,7 @@ ntstatus = rpccli_lsa_lookup_names( hnd->cli, mem_ctx, &hnd->pol, num_names, names, - NULL, &sids, &name_types); + NULL, 1, &sids, &name_types); if (!NT_STATUS_IS_OK(ntstatus) && NT_STATUS_V(ntstatus) != 0x107) { PyErr_SetObject(lsa_ntstatus, py_ntstatus_tuple(ntstatus)); Modified: branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c =================================================================== --- branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -448,6 +448,7 @@ POLICY_HND *pol, int num_names, const char **names, const char ***dom_names, + int level, DOM_SID **sids, enum lsa_SidType **types) { @@ -464,7 +465,7 @@ ZERO_STRUCT(ref); r.dom_ref = &ref; - init_q_lookup_names(mem_ctx, &q, pol, num_names, names); + init_q_lookup_names(mem_ctx, &q, pol, num_names, names, level); CLI_DO_RPC( cli, mem_ctx, PI_LSARPC, LSA_LOOKUPNAMES, q, r, Modified: branches/SAMBA_3_0/source/rpc_parse/parse_lsa.c =================================================================== --- branches/SAMBA_3_0/source/rpc_parse/parse_lsa.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/rpc_parse/parse_lsa.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -1567,7 +1567,8 @@ ********************************************************************/ void init_q_lookup_names(TALLOC_CTX *mem_ctx, LSA_Q_LOOKUP_NAMES *q_l, - POLICY_HND *hnd, int num_names, const char **names) + POLICY_HND *hnd, int num_names, const char **names, + int level) { unsigned int i; @@ -1578,7 +1579,7 @@ q_l->pol = *hnd; q_l->num_entries = num_names; q_l->num_entries2 = num_names; - q_l->lookup_level = 1; + q_l->lookup_level = level; if (num_names) { if ((q_l->uni_name = TALLOC_ZERO_ARRAY(mem_ctx, UNISTR2, num_names)) == NULL) { Modified: branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c =================================================================== --- branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -47,7 +47,7 @@ if (!NT_STATUS_IS_OK(result)) goto done; - result = rpccli_lsa_lookup_names(cli, mem_ctx, &pol, 1, &name, NULL, &sids, &sid_types); + result = rpccli_lsa_lookup_names(cli, mem_ctx, &pol, 1, &name, NULL, 1, &sids, &sid_types); if (!NT_STATUS_IS_OK(result)) goto done; @@ -239,7 +239,7 @@ goto done; result = rpccli_lsa_lookup_names(cli, mem_ctx, &pol, argc - 1, - (const char**)(argv + 1), NULL, &sids, &types); + (const char**)(argv + 1), NULL, 1, &sids, &types); if (!NT_STATUS_IS_OK(result) && NT_STATUS_V(result) != NT_STATUS_V(STATUS_SOME_UNMAPPED)) Modified: branches/SAMBA_3_0/source/utils/net_rpc.c =================================================================== --- branches/SAMBA_3_0/source/utils/net_rpc.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/utils/net_rpc.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -2030,7 +2030,7 @@ } result = rpccli_lsa_lookup_names(pipe_hnd, mem_ctx, &lsa_pol, 1, - &name, NULL, &sids, &types); + &name, NULL, 1, &sids, &types); if (NT_STATUS_IS_OK(result)) { sid_copy(sid, &sids[0]); Modified: branches/SAMBA_3_0/source/utils/net_rpc_rights.c =================================================================== --- branches/SAMBA_3_0/source/utils/net_rpc_rights.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/utils/net_rpc_rights.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -76,7 +76,7 @@ return result; result = rpccli_lsa_lookup_names(pipe_hnd, mem_ctx, &pol, 1, &name, - NULL, &sids, &sid_types); + NULL, 1, &sids, &sid_types); if ( NT_STATUS_IS_OK(result) ) sid_copy( sid, &sids[0] ); Modified: branches/SAMBA_3_0/source/utils/net_util.c =================================================================== --- branches/SAMBA_3_0/source/utils/net_util.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/utils/net_util.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -59,7 +59,7 @@ } result = rpccli_lsa_lookup_names(lsa_pipe, mem_ctx, &pol, 1, - &name, &dom_names, &sids, &types); + &name, &dom_names, 1, &sids, &types); if (!NT_STATUS_IS_OK(result)) { /* This can happen easily, don't log an error */ Modified: branches/SAMBA_3_0/source/utils/netlookup.c =================================================================== --- branches/SAMBA_3_0/source/utils/netlookup.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/utils/netlookup.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -206,8 +206,8 @@ &csp->pol, 1, &full_name, - NULL, &sids, - &types); + NULL, 1, + &sids, &types); if (!NT_STATUS_IS_OK(nt_status)) { return nt_status; Modified: branches/SAMBA_3_0/source/utils/smbcacls.c =================================================================== --- branches/SAMBA_3_0/source/utils/smbcacls.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/utils/smbcacls.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -145,7 +145,7 @@ if (!cacls_open_policy_hnd() || !NT_STATUS_IS_OK(rpccli_lsa_lookup_names(global_pipe_hnd, global_hack_cli->mem_ctx, - &pol, 1, &str, NULL, &sids, + &pol, 1, &str, NULL, 1, &sids, &types))) { result = False; goto done; Modified: branches/SAMBA_3_0/source/utils/smbcquotas.c =================================================================== --- branches/SAMBA_3_0/source/utils/smbcquotas.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0/source/utils/smbcquotas.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -116,7 +116,7 @@ if (!cli_open_policy_hnd() || !NT_STATUS_IS_OK(rpccli_lsa_lookup_names(global_pipe_hnd, cli_ipc->mem_ctx, - &pol, 1, &str, NULL, &sids, + &pol, 1, &str, NULL, 1, &sids, &types))) { result = False; goto done; Modified: branches/SAMBA_3_0_26/source/libsmb/libsmbclient.c =================================================================== --- branches/SAMBA_3_0_26/source/libsmb/libsmbclient.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/libsmb/libsmbclient.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -3859,7 +3859,7 @@ } if (!NT_STATUS_IS_OK(rpccli_lsa_lookup_names(pipe_hnd, ipc_cli->mem_ctx, - pol, 1, &str, NULL, &sids, + pol, 1, &str, NULL, 1, &sids, &types))) { result = False; goto done; Modified: branches/SAMBA_3_0_26/source/nsswitch/winbindd_rpc.c =================================================================== --- branches/SAMBA_3_0_26/source/nsswitch/winbindd_rpc.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/nsswitch/winbindd_rpc.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -290,7 +290,7 @@ return result; result = rpccli_lsa_lookup_names(cli, mem_ctx, &lsa_policy, 1, - (const char**) &full_name, NULL, &sids, &types); + (const char**) &full_name, NULL, 1, &sids, &types); if (!NT_STATUS_IS_OK(result)) return result; Modified: branches/SAMBA_3_0_26/source/python/py_lsa.c =================================================================== --- branches/SAMBA_3_0_26/source/python/py_lsa.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/python/py_lsa.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -187,7 +187,7 @@ ntstatus = rpccli_lsa_lookup_names( hnd->cli, mem_ctx, &hnd->pol, num_names, names, - NULL, &sids, &name_types); + NULL, 1, &sids, &name_types); if (!NT_STATUS_IS_OK(ntstatus) && NT_STATUS_V(ntstatus) != 0x107) { PyErr_SetObject(lsa_ntstatus, py_ntstatus_tuple(ntstatus)); Modified: branches/SAMBA_3_0_26/source/rpc_client/cli_lsarpc.c =================================================================== --- branches/SAMBA_3_0_26/source/rpc_client/cli_lsarpc.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/rpc_client/cli_lsarpc.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -446,6 +446,7 @@ POLICY_HND *pol, int num_names, const char **names, const char ***dom_names, + int level, DOM_SID **sids, uint32 **types) { @@ -462,7 +463,7 @@ ZERO_STRUCT(ref); r.dom_ref = &ref; - init_q_lookup_names(mem_ctx, &q, pol, num_names, names); + init_q_lookup_names(mem_ctx, &q, pol, num_names, names, level); CLI_DO_RPC( cli, mem_ctx, PI_LSARPC, LSA_LOOKUPNAMES, q, r, Modified: branches/SAMBA_3_0_26/source/rpc_parse/parse_lsa.c =================================================================== --- branches/SAMBA_3_0_26/source/rpc_parse/parse_lsa.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/rpc_parse/parse_lsa.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -1567,7 +1567,8 @@ ********************************************************************/ void init_q_lookup_names(TALLOC_CTX *mem_ctx, LSA_Q_LOOKUP_NAMES *q_l, - POLICY_HND *hnd, int num_names, const char **names) + POLICY_HND *hnd, int num_names, const char **names, + int level) { unsigned int i; @@ -1578,7 +1579,7 @@ q_l->pol = *hnd; q_l->num_entries = num_names; q_l->num_entries2 = num_names; - q_l->lookup_level = 1; + q_l->lookup_level = level; if (num_names) { if ((q_l->uni_name = TALLOC_ZERO_ARRAY(mem_ctx, UNISTR2, num_names)) == NULL) { Modified: branches/SAMBA_3_0_26/source/rpcclient/cmd_lsarpc.c =================================================================== --- branches/SAMBA_3_0_26/source/rpcclient/cmd_lsarpc.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/rpcclient/cmd_lsarpc.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -47,7 +47,7 @@ if (!NT_STATUS_IS_OK(result)) goto done; - result = rpccli_lsa_lookup_names(cli, mem_ctx, &pol, 1, &name, NULL, &sids, &sid_types); + result = rpccli_lsa_lookup_names(cli, mem_ctx, &pol, 1, &name, NULL, 1, &sids, &sid_types); if (!NT_STATUS_IS_OK(result)) goto done; @@ -239,7 +239,7 @@ goto done; result = rpccli_lsa_lookup_names(cli, mem_ctx, &pol, argc - 1, - (const char**)(argv + 1), NULL, &sids, &types); + (const char**)(argv + 1), NULL, 1, &sids, &types); if (!NT_STATUS_IS_OK(result) && NT_STATUS_V(result) != NT_STATUS_V(STATUS_SOME_UNMAPPED)) Modified: branches/SAMBA_3_0_26/source/utils/net_rpc.c =================================================================== --- branches/SAMBA_3_0_26/source/utils/net_rpc.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/utils/net_rpc.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -2030,7 +2030,7 @@ } result = rpccli_lsa_lookup_names(pipe_hnd, mem_ctx, &lsa_pol, 1, - &name, NULL, &sids, &types); + &name, NULL, 1, &sids, &types); if (NT_STATUS_IS_OK(result)) { sid_copy(sid, &sids[0]); Modified: branches/SAMBA_3_0_26/source/utils/net_rpc_rights.c =================================================================== --- branches/SAMBA_3_0_26/source/utils/net_rpc_rights.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/utils/net_rpc_rights.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -76,7 +76,7 @@ return result; result = rpccli_lsa_lookup_names(pipe_hnd, mem_ctx, &pol, 1, &name, - NULL, &sids, &sid_types); + NULL, 1, &sids, &sid_types); if ( NT_STATUS_IS_OK(result) ) sid_copy( sid, &sids[0] ); Modified: branches/SAMBA_3_0_26/source/utils/net_util.c =================================================================== --- branches/SAMBA_3_0_26/source/utils/net_util.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/utils/net_util.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -59,7 +59,7 @@ } result = rpccli_lsa_lookup_names(lsa_pipe, mem_ctx, &pol, 1, - &name, &dom_names, &sids, &types); + &name, &dom_names, 1, &sids, &types); if (!NT_STATUS_IS_OK(result)) { /* This can happen easily, don't log an error */ Modified: branches/SAMBA_3_0_26/source/utils/netlookup.c =================================================================== --- branches/SAMBA_3_0_26/source/utils/netlookup.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/utils/netlookup.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -206,8 +206,8 @@ &csp->pol, 1, &full_name, - NULL, &sids, - &types); + NULL, 1, + &sids, &types); if (!NT_STATUS_IS_OK(nt_status)) { return nt_status; Modified: branches/SAMBA_3_0_26/source/utils/smbcacls.c =================================================================== --- branches/SAMBA_3_0_26/source/utils/smbcacls.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/utils/smbcacls.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -145,7 +145,7 @@ if (!cacls_open_policy_hnd() || !NT_STATUS_IS_OK(rpccli_lsa_lookup_names(global_pipe_hnd, global_hack_cli->mem_ctx, - &pol, 1, &str, NULL, &sids, + &pol, 1, &str, NULL, 1, &sids, &types))) { result = False; goto done; Modified: branches/SAMBA_3_0_26/source/utils/smbcquotas.c =================================================================== --- branches/SAMBA_3_0_26/source/utils/smbcquotas.c 2007-06-27 11:29:53 UTC (rev 23626) +++ branches/SAMBA_3_0_26/source/utils/smbcquotas.c 2007-06-27 11:42:17 UTC (rev 23627) @@ -116,7 +116,7 @@ if (!cli_open_policy_hnd() || !NT_STATUS_IS_OK(rpccli_lsa_lookup_names(global_pipe_hnd, cli_ipc->mem_ctx, - &pol, 1, &str, NULL, &sids, + &pol, 1, &str, NULL, 1, &sids, &types))) { result = False; goto done;