Author: jra Date: 2006-06-28 21:30:21 +0000 (Wed, 28 Jun 2006) New Revision: 16644
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=16644 Log: Fix bug #3887 reported by [EMAIL PROTECTED] by converting the lookup_XX functions to correctly return SID_NAME_TYPE enums. Jeremy. 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/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 Changeset: Modified: branches/SAMBA_3_0/source/libmsrpc/cac_lsarpc.c =================================================================== --- branches/SAMBA_3_0/source/libmsrpc/cac_lsarpc.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/libmsrpc/cac_lsarpc.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -144,7 +144,7 @@ /*buffers for outputs*/ char **domains = NULL; char **names = NULL; - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; CacSidInfo *sids_out = NULL; DOM_SID *unknown_out = NULL; @@ -267,7 +267,7 @@ /*buffers for outputs*/ DOM_SID *sids = NULL; - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; CacSidInfo *sids_out = NULL; char **unknown_out = NULL; @@ -579,7 +579,7 @@ if(op->in.name && !op->in.sid) { DOM_SID *user_sid = NULL; - uint32 *type; + enum SID_NAME_USE *type; /*lookup the SID*/ hnd->status = rpccli_lsa_lookup_names( pipe_hnd, mem_ctx, op->in.pol, 1, (const char **)&(op->in.name), NULL, &user_sid, &type); @@ -806,7 +806,7 @@ /*look up the user's SID if we have to*/ if(op->in.name && !op->in.sid) { DOM_SID *user_sid = NULL; - uint32 *type; + enum SID_NAME_USE *type; /*lookup the SID*/ hnd->status = rpccli_lsa_lookup_names( pipe_hnd, mem_ctx, op->in.pol, 1, (const char **)&(op->in.name), NULL, &user_sid, &type); @@ -840,7 +840,7 @@ struct rpc_pipe_client *pipe_hnd = NULL; DOM_SID *user_sid = NULL; - uint32 *type = NULL; + enum SID_NAME_USE *type = NULL; if(!hnd) { return CAC_FAILURE; @@ -890,7 +890,7 @@ struct rpc_pipe_client *pipe_hnd = NULL; DOM_SID *user_sid = NULL; - uint32 *type = NULL; + enum SID_NAME_USE *type = NULL; if(!hnd) { return CAC_FAILURE; @@ -940,7 +940,7 @@ struct rpc_pipe_client *pipe_hnd = NULL; DOM_SID *user_sid = NULL; - uint32 *type = NULL; + enum SID_NAME_USE *type = NULL; if(!hnd) { return CAC_FAILURE; @@ -990,7 +990,7 @@ struct rpc_pipe_client *pipe_hnd = NULL; DOM_SID *user_sid = NULL; - uint32 *type = NULL; + enum SID_NAME_USE *type = NULL; if(!hnd) { return CAC_FAILURE; Modified: branches/SAMBA_3_0/source/libsmb/libsmbclient.c =================================================================== --- branches/SAMBA_3_0/source/libsmb/libsmbclient.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/libsmb/libsmbclient.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -3727,7 +3727,7 @@ { char **domains = NULL; char **names = NULL; - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; struct rpc_pipe_client *pipe_hnd = find_lsa_pipe_hnd(ipc_cli); sid_to_string(str, sid); @@ -3763,7 +3763,7 @@ DOM_SID *sid, const char *str) { - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; DOM_SID *sids = NULL; BOOL result = True; struct rpc_pipe_client *pipe_hnd = find_lsa_pipe_hnd(ipc_cli); Modified: branches/SAMBA_3_0/source/nsswitch/winbindd_rpc.c =================================================================== --- branches/SAMBA_3_0/source/nsswitch/winbindd_rpc.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/nsswitch/winbindd_rpc.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -245,7 +245,7 @@ { NTSTATUS result; DOM_SID *sids = NULL; - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; const char *full_name; struct rpc_pipe_client *cli; POLICY_HND lsa_policy; @@ -277,7 +277,7 @@ /* Return rid and type if lookup successful */ sid_copy(sid, &sids[0]); - *type = (enum SID_NAME_USE)types[0]; + *type = types[0]; return NT_STATUS_OK; } Modified: branches/SAMBA_3_0/source/python/py_lsa.c =================================================================== --- branches/SAMBA_3_0/source/python/py_lsa.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/python/py_lsa.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -147,7 +147,7 @@ const char **names; DOM_SID *sids; TALLOC_CTX *mem_ctx = NULL; - uint32 *name_types; + enum SID_NAME_USE *name_types; if (!PyArg_ParseTuple(args, "O", &py_names)) return NULL; Modified: branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c =================================================================== --- branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/rpc_client/cli_lsarpc.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -175,7 +175,9 @@ TALLOC_CTX *mem_ctx, POLICY_HND *pol, int num_sids, const DOM_SID *sids, - char ***domains, char ***names, uint32 **types) + char ***domains, + char ***names, + enum SID_NAME_USE **types) { prs_struct qbuf, rbuf; LSA_Q_LOOKUP_SIDS q; @@ -231,7 +233,7 @@ goto done; } - if (!((*types) = TALLOC_ARRAY(mem_ctx, uint32, num_sids))) { + if (!((*types) = TALLOC_ARRAY(mem_ctx, enum SID_NAME_USE, num_sids))) { DEBUG(0, ("cli_lsa_lookup_sids(): out of memory\n")); result = NT_STATUS_NO_MEMORY; goto done; @@ -252,7 +254,7 @@ (*names)[i] = talloc_strdup(mem_ctx, name); (*domains)[i] = talloc_strdup(mem_ctx, dom_name); - (*types)[i] = t_names.name[i].sid_name_use; + (*types)[i] = (enum SID_NAME_USE)t_names.name[i].sid_name_use; if (((*names)[i] == NULL) || ((*domains)[i] == NULL)) { DEBUG(0, ("cli_lsa_lookup_sids(): out of memory\n")); @@ -280,7 +282,7 @@ const char **names, const char ***dom_names, DOM_SID **sids, - uint32 **types) + enum SID_NAME_USE **types) { prs_struct qbuf, rbuf; LSA_Q_LOOKUP_NAMES q; @@ -327,7 +329,7 @@ goto done; } - if (!((*types = TALLOC_ARRAY(mem_ctx, uint32, num_names)))) { + if (!((*types = TALLOC_ARRAY(mem_ctx, enum SID_NAME_USE, num_names)))) { DEBUG(0, ("cli_lsa_lookup_sids(): out of memory\n")); result = NT_STATUS_NO_MEMORY; goto done; @@ -363,7 +365,7 @@ sid_append_rid(sid, dom_rid); } - (*types)[i] = t_rids[i].type; + (*types)[i] = (enum SID_NAME_USE)t_rids[i].type; if (dom_names == NULL) { continue; Modified: branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c =================================================================== --- branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/rpcclient/cmd_lsarpc.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -31,7 +31,7 @@ DOM_SID *sid, const char *name) { POLICY_HND pol; - uint32 *sid_types; + enum SID_NAME_USE *sid_types; NTSTATUS result; DOM_SID *sids; @@ -223,7 +223,7 @@ POLICY_HND pol; NTSTATUS result = NT_STATUS_UNSUCCESSFUL; DOM_SID *sids; - uint32 *types; + enum SID_NAME_USE *types; int i; if (argc == 1) { @@ -272,7 +272,7 @@ DOM_SID *sids; char **domains; char **names; - uint32 *types; + enum SID_NAME_USE *types; int i; if (argc == 1) { Modified: branches/SAMBA_3_0/source/utils/net_rpc.c =================================================================== --- branches/SAMBA_3_0/source/utils/net_rpc.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/utils/net_rpc.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -2011,7 +2011,7 @@ enum SID_NAME_USE *type) { DOM_SID *sids = NULL; - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; struct rpc_pipe_client *pipe_hnd; POLICY_HND lsa_pol; NTSTATUS result = NT_STATUS_UNSUCCESSFUL; @@ -2717,7 +2717,7 @@ DOM_SID *alias_sids; char **domains; char **names; - uint32 *types; + enum SID_NAME_USE *types; int i; result = rpccli_samr_open_alias(pipe_hnd, mem_ctx, domain_pol, @@ -4075,7 +4075,7 @@ for (i=0; i<num_server_aliases; i++) { char **names; char **domains; - uint32 *types; + enum SID_NAME_USE *types; int j; struct full_alias *alias = &server_aliases[i]; Modified: branches/SAMBA_3_0/source/utils/net_rpc_rights.c =================================================================== --- branches/SAMBA_3_0/source/utils/net_rpc_rights.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/utils/net_rpc_rights.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -29,7 +29,7 @@ fstring name) { POLICY_HND pol; - uint32 *sid_types; + enum SID_NAME_USE *sid_types; NTSTATUS result; char **domains, **names; @@ -60,7 +60,7 @@ DOM_SID *sid, const char *name) { POLICY_HND pol; - uint32 *sid_types; + enum SID_NAME_USE *sid_types; NTSTATUS result; DOM_SID *sids; Modified: branches/SAMBA_3_0/source/utils/net_util.c =================================================================== --- branches/SAMBA_3_0/source/utils/net_util.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/utils/net_util.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -39,7 +39,7 @@ NTSTATUS result = NT_STATUS_OK; const char **dom_names; DOM_SID *sids; - uint32_t *types; + enum SID_NAME_USE *types; ZERO_STRUCT(pol); Modified: branches/SAMBA_3_0/source/utils/netlookup.c =================================================================== --- branches/SAMBA_3_0/source/utils/netlookup.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/utils/netlookup.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -157,7 +157,7 @@ struct con_struct *csp = NULL; char **domains; char **names; - uint32 *types; + enum SID_NAME_USE *types; *ppdomain = NULL; *ppname = NULL; @@ -195,7 +195,7 @@ NTSTATUS nt_status; struct con_struct *csp = NULL; DOM_SID *sids = NULL; - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; csp = create_cs(ctx, &nt_status); if (csp == NULL) { Modified: branches/SAMBA_3_0/source/utils/smbcacls.c =================================================================== --- branches/SAMBA_3_0/source/utils/smbcacls.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/utils/smbcacls.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -108,7 +108,7 @@ { char **domains = NULL; char **names = NULL; - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; sid_to_string(str, sid); @@ -135,7 +135,7 @@ /* convert a string to a SID, either numeric or username/group */ static BOOL StringToSid(DOM_SID *sid, const char *str) { - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; DOM_SID *sids = NULL; BOOL result = True; Modified: branches/SAMBA_3_0/source/utils/smbcquotas.c =================================================================== --- branches/SAMBA_3_0/source/utils/smbcquotas.c 2006-06-28 21:30:12 UTC (rev 16643) +++ branches/SAMBA_3_0/source/utils/smbcquotas.c 2006-06-28 21:30:21 UTC (rev 16644) @@ -79,7 +79,7 @@ { char **domains = NULL; char **names = NULL; - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; sid_to_string(str, sid); @@ -106,7 +106,7 @@ /* convert a string to a SID, either numeric or username/group */ static BOOL StringToSid(DOM_SID *sid, const char *str) { - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; DOM_SID *sids = NULL; BOOL result = True;