diff options
author | Jeremy Allison <jra@samba.org> | 2006-06-28 21:30:21 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 11:19:05 -0500 |
commit | 2b8abc030b1eca43f7c0c05dc96eebeb6c492030 (patch) | |
tree | baaede502f92ed3528fc26793eff4c1adda96ed5 /source3 | |
parent | 79eaa709a05d765673ea0766b1d23a0c60d76b4c (diff) | |
download | samba-2b8abc030b1eca43f7c0c05dc96eebeb6c492030.tar.gz |
r16644: Fix bug #3887 reported by jason@ncac.gwu.edu
by converting the lookup_XX functions to correctly
return SID_NAME_TYPE enums.
Jeremy.
(This used to be commit ee2b2d96b60c668e37592c79e86c2fd851e15f69)
Diffstat (limited to 'source3')
-rw-r--r-- | source3/libmsrpc/cac_lsarpc.c | 16 | ||||
-rw-r--r-- | source3/libsmb/libsmbclient.c | 4 | ||||
-rw-r--r-- | source3/nsswitch/winbindd_rpc.c | 4 | ||||
-rw-r--r-- | source3/python/py_lsa.c | 2 | ||||
-rw-r--r-- | source3/rpc_client/cli_lsarpc.c | 14 | ||||
-rw-r--r-- | source3/rpcclient/cmd_lsarpc.c | 6 | ||||
-rw-r--r-- | source3/utils/net_rpc.c | 6 | ||||
-rw-r--r-- | source3/utils/net_rpc_rights.c | 4 | ||||
-rw-r--r-- | source3/utils/net_util.c | 2 | ||||
-rw-r--r-- | source3/utils/netlookup.c | 4 | ||||
-rw-r--r-- | source3/utils/smbcacls.c | 4 | ||||
-rw-r--r-- | source3/utils/smbcquotas.c | 4 |
12 files changed, 36 insertions, 34 deletions
diff --git a/source3/libmsrpc/cac_lsarpc.c b/source3/libmsrpc/cac_lsarpc.c index 72f22de5f22..7b62b4d4627 100644 --- a/source3/libmsrpc/cac_lsarpc.c +++ b/source3/libmsrpc/cac_lsarpc.c @@ -144,7 +144,7 @@ int cac_LsaGetNamesFromSids(CacServerHandle *hnd, TALLOC_CTX *mem_ctx, struct Ls /*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 @@ int cac_LsaGetSidsFromNames(CacServerHandle *hnd, TALLOC_CTX *mem_ctx, struct Ls /*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 @@ int cac_LsaEnumAccountRights(CacServerHandle *hnd, TALLOC_CTX *mem_ctx, struct L 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 @@ int cac_LsaOpenAccount(CacServerHandle *hnd, TALLOC_CTX *mem_ctx, struct LsaOpen /*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 @@ int cac_LsaAddPrivileges(CacServerHandle *hnd, TALLOC_CTX *mem_ctx, struct LsaAd 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 @@ int cac_LsaRemovePrivileges(CacServerHandle *hnd, TALLOC_CTX *mem_ctx, struct Ls 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 @@ int cac_LsaClearPrivileges(CacServerHandle *hnd, TALLOC_CTX *mem_ctx, struct Lsa 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 @@ int cac_LsaSetPrivileges(CacServerHandle *hnd, TALLOC_CTX *mem_ctx, struct LsaAd 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; diff --git a/source3/libsmb/libsmbclient.c b/source3/libsmb/libsmbclient.c index 240be508791..ca2624305e6 100644 --- a/source3/libsmb/libsmbclient.c +++ b/source3/libsmb/libsmbclient.c @@ -3727,7 +3727,7 @@ convert_sid_to_string(struct cli_state *ipc_cli, { 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 @@ convert_string_to_sid(struct cli_state *ipc_cli, 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); diff --git a/source3/nsswitch/winbindd_rpc.c b/source3/nsswitch/winbindd_rpc.c index 984c5cd8415..5473af073d6 100644 --- a/source3/nsswitch/winbindd_rpc.c +++ b/source3/nsswitch/winbindd_rpc.c @@ -245,7 +245,7 @@ NTSTATUS msrpc_name_to_sid(struct winbindd_domain *domain, { 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 @@ NTSTATUS msrpc_name_to_sid(struct winbindd_domain *domain, /* 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; } diff --git a/source3/python/py_lsa.c b/source3/python/py_lsa.c index 915223a5bb7..711641828d6 100644 --- a/source3/python/py_lsa.c +++ b/source3/python/py_lsa.c @@ -147,7 +147,7 @@ static PyObject *lsa_lookup_names(PyObject *self, PyObject *args) 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; diff --git a/source3/rpc_client/cli_lsarpc.c b/source3/rpc_client/cli_lsarpc.c index deb97724a0e..97d8eb621be 100644 --- a/source3/rpc_client/cli_lsarpc.c +++ b/source3/rpc_client/cli_lsarpc.c @@ -175,7 +175,9 @@ NTSTATUS rpccli_lsa_lookup_sids(struct rpc_pipe_client *cli, 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 @@ NTSTATUS rpccli_lsa_lookup_sids(struct rpc_pipe_client *cli, 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 @@ NTSTATUS rpccli_lsa_lookup_sids(struct rpc_pipe_client *cli, (*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 @@ NTSTATUS rpccli_lsa_lookup_names(struct rpc_pipe_client *cli, 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 @@ NTSTATUS rpccli_lsa_lookup_names(struct rpc_pipe_client *cli, 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 @@ NTSTATUS rpccli_lsa_lookup_names(struct rpc_pipe_client *cli, 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; diff --git a/source3/rpcclient/cmd_lsarpc.c b/source3/rpcclient/cmd_lsarpc.c index 97a707c020a..3967ed69570 100644 --- a/source3/rpcclient/cmd_lsarpc.c +++ b/source3/rpcclient/cmd_lsarpc.c @@ -31,7 +31,7 @@ static NTSTATUS name_to_sid(struct rpc_pipe_client *cli, 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 @@ static NTSTATUS cmd_lsa_lookup_names(struct rpc_pipe_client *cli, 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 @@ static NTSTATUS cmd_lsa_lookup_sids(struct rpc_pipe_client *cli, TALLOC_CTX *mem DOM_SID *sids; char **domains; char **names; - uint32 *types; + enum SID_NAME_USE *types; int i; if (argc == 1) { diff --git a/source3/utils/net_rpc.c b/source3/utils/net_rpc.c index 190992e3741..f32348935fc 100644 --- a/source3/utils/net_rpc.c +++ b/source3/utils/net_rpc.c @@ -2011,7 +2011,7 @@ static NTSTATUS get_sid_from_name(struct cli_state *cli, 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 @@ static NTSTATUS rpc_list_alias_members(struct rpc_pipe_client *pipe_hnd, 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 @@ static NTSTATUS rpc_aliaslist_dump(const DOM_SID *domain_sid, 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]; diff --git a/source3/utils/net_rpc_rights.c b/source3/utils/net_rpc_rights.c index 0dd28c3ac67..11f5ea5fabf 100644 --- a/source3/utils/net_rpc_rights.c +++ b/source3/utils/net_rpc_rights.c @@ -29,7 +29,7 @@ static NTSTATUS sid_to_name(struct rpc_pipe_client *pipe_hnd, fstring name) { POLICY_HND pol; - uint32 *sid_types; + enum SID_NAME_USE *sid_types; NTSTATUS result; char **domains, **names; @@ -60,7 +60,7 @@ static NTSTATUS name_to_sid(struct rpc_pipe_client *pipe_hnd, DOM_SID *sid, const char *name) { POLICY_HND pol; - uint32 *sid_types; + enum SID_NAME_USE *sid_types; NTSTATUS result; DOM_SID *sids; diff --git a/source3/utils/net_util.c b/source3/utils/net_util.c index 805104cefa1..953c67d62e3 100644 --- a/source3/utils/net_util.c +++ b/source3/utils/net_util.c @@ -39,7 +39,7 @@ NTSTATUS net_rpc_lookup_name(TALLOC_CTX *mem_ctx, struct cli_state *cli, NTSTATUS result = NT_STATUS_OK; const char **dom_names; DOM_SID *sids; - uint32_t *types; + enum SID_NAME_USE *types; ZERO_STRUCT(pol); diff --git a/source3/utils/netlookup.c b/source3/utils/netlookup.c index df0fe0c8437..2d105335e8a 100644 --- a/source3/utils/netlookup.c +++ b/source3/utils/netlookup.c @@ -157,7 +157,7 @@ NTSTATUS net_lookup_name_from_sid(TALLOC_CTX *ctx, 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 net_lookup_sid_from_name(TALLOC_CTX *ctx, const char *full_name, DOM_SI 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) { diff --git a/source3/utils/smbcacls.c b/source3/utils/smbcacls.c index b31fd95f7ab..6dc9f78ad1e 100644 --- a/source3/utils/smbcacls.c +++ b/source3/utils/smbcacls.c @@ -108,7 +108,7 @@ static void SidToString(fstring str, DOM_SID *sid) { char **domains = NULL; char **names = NULL; - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; sid_to_string(str, sid); @@ -135,7 +135,7 @@ static void SidToString(fstring str, DOM_SID *sid) /* 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; diff --git a/source3/utils/smbcquotas.c b/source3/utils/smbcquotas.c index 7b3268e7834..6193395e7e8 100644 --- a/source3/utils/smbcquotas.c +++ b/source3/utils/smbcquotas.c @@ -79,7 +79,7 @@ static void SidToString(fstring str, DOM_SID *sid, BOOL _numeric) { char **domains = NULL; char **names = NULL; - uint32 *types = NULL; + enum SID_NAME_USE *types = NULL; sid_to_string(str, sid); @@ -106,7 +106,7 @@ static void SidToString(fstring str, DOM_SID *sid, BOOL _numeric) /* 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; |