summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2008-02-06 16:14:09 +1100
committerAndrew Bartlett <abartlet@samba.org>2008-02-06 16:14:09 +1100
commit07c8cdec4767731a278d5c73a4ebaceeaced5288 (patch)
tree9b0e3aefe7ac54f1821a6348f041d6462dce909a
parent24d0587752ca81ac9e35c6c4dbcadb87455f5ded (diff)
parentc9ea65e4ced86d26dfa8c1c540a57dc633b217ba (diff)
downloadsamba-07c8cdec4767731a278d5c73a4ebaceeaced5288.tar.gz
samba-07c8cdec4767731a278d5c73a4ebaceeaced5288.tar.bz2
samba-07c8cdec4767731a278d5c73a4ebaceeaced5288.zip
Merge branch 'v4-0-test' of git://git.samba.org/samba into 4-0-abartlet
(This used to be commit 594ff923295c7420167aa899ec6030de07038625)
-rw-r--r--source4/dsdb/common/sidmap.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/source4/dsdb/common/sidmap.c b/source4/dsdb/common/sidmap.c
index 5c170463bb..088dc6bd96 100644
--- a/source4/dsdb/common/sidmap.c
+++ b/source4/dsdb/common/sidmap.c
@@ -123,10 +123,10 @@ static NTSTATUS sidmap_primary_domain_sid(struct sidmap_context *sidmap,
/*
map a sid to a unix uid
*/
-_PUBLIC_ NTSTATUS sidmap_sid_to_unixuid(struct sidmap_context *sidmap,
- struct dom_sid *sid, uid_t *uid)
+_PUBLIC_ NTSTATUS sidmap_sid_to_unixuid(struct sidmap_context *sidmap,
+ const struct dom_sid *sid, uid_t *uid)
{
- const char *attrs[] = { "sAMAccountName", "uidNumber",
+ const char *attrs[] = { "sAMAccountName", "uidNumber",
"sAMAccountType", "unixName", NULL };
int ret;
const char *s;
@@ -137,15 +137,17 @@ _PUBLIC_ NTSTATUS sidmap_sid_to_unixuid(struct sidmap_context *sidmap,
tmp_ctx = talloc_new(sidmap);
- ret = gendb_search(sidmap->samctx, tmp_ctx, NULL, &res, attrs,
- "objectSid=%s", ldap_encode_ndr_dom_sid(tmp_ctx, sid));
+ ret = gendb_search(sidmap->samctx, tmp_ctx, NULL, &res, attrs,
+ "objectSid=%s",
+ ldap_encode_ndr_dom_sid(tmp_ctx, sid));
+
if (ret != 1) {
goto allocated_sid;
}
/* make sure its a user, not a group */
if (!is_user_account(res[0])) {
- DEBUG(0,("sid_to_unixuid: sid %s is not an account!\n",
+ DEBUG(0,("sid_to_unixuid: sid %s is not an account!\n",
dom_sid_string(tmp_ctx, sid)));
talloc_free(tmp_ctx);
return NT_STATUS_INVALID_SID;
@@ -261,9 +263,9 @@ _PUBLIC_ bool sidmap_sid_is_group(struct sidmap_context *sidmap, struct dom_sid
map a sid to a unix gid
*/
_PUBLIC_ NTSTATUS sidmap_sid_to_unixgid(struct sidmap_context *sidmap,
- struct dom_sid *sid, gid_t *gid)
+ const struct dom_sid *sid, gid_t *gid)
{
- const char *attrs[] = { "sAMAccountName", "gidNumber",
+ const char *attrs[] = { "sAMAccountName", "gidNumber",
"unixName", "sAMAccountType", NULL };
int ret;
const char *s;
@@ -355,7 +357,7 @@ allocated_sid:
*/
_PUBLIC_ NTSTATUS sidmap_uid_to_sid(struct sidmap_context *sidmap,
TALLOC_CTX *mem_ctx,
- uid_t uid, struct dom_sid **sid)
+ const uid_t uid, struct dom_sid **sid)
{
const char *attrs[] = { "sAMAccountName", "objectSid", "sAMAccountType", NULL };
int ret, i;
@@ -453,7 +455,7 @@ allocate_sid:
*/
_PUBLIC_ NTSTATUS sidmap_gid_to_sid(struct sidmap_context *sidmap,
TALLOC_CTX *mem_ctx,
- gid_t gid, struct dom_sid **sid)
+ const gid_t gid, struct dom_sid **sid)
{
const char *attrs[] = { "sAMAccountName", "objectSid", "sAMAccountType", NULL };
int ret, i;