1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-31 17:18:04 +03:00

added dom_sid_string() function

(This used to be commit 399f95536b)
This commit is contained in:
Andrew Tridgell 2004-01-11 05:16:07 +00:00
parent ae2164093e
commit b827102934

View File

@ -51,22 +51,21 @@ NTSTATUS ndr_push_dom_sid2(struct ndr_push *ndr, int ndr_flags, struct dom_sid *
/*
print a dom_sid
convert a dom_sid to a string
*/
void ndr_print_dom_sid(struct ndr_print *ndr, const char *name, struct dom_sid *sid)
const char *dom_sid_string(TALLOC_CTX *mem_ctx, const struct dom_sid *sid)
{
int i, ofs, maxlen;
uint32 ia;
char *ret;
if (!sid) {
ndr->print(ndr, "%-25s: (NULL SID)", name);
return;
return "(NULL SID)";
}
maxlen = sid->num_auths * 11 + 25;
ret = talloc(ndr->mem_ctx, maxlen);
if (!ret) return;
ret = talloc(mem_ctx, maxlen);
if (!ret) return "(SID ERR)";
ia = (sid->id_auth[5]) +
(sid->id_auth[4] << 8 ) +
@ -79,8 +78,17 @@ void ndr_print_dom_sid(struct ndr_print *ndr, const char *name, struct dom_sid *
for (i = 0; i < sid->num_auths; i++) {
ofs += snprintf(ret + ofs, maxlen - ofs, "-%lu", (unsigned long)sid->sub_auths[i]);
}
return ret;
}
ndr->print(ndr, "%-25s: %s", name, ret);
/*
print a dom_sid
*/
void ndr_print_dom_sid(struct ndr_print *ndr, const char *name, struct dom_sid *sid)
{
ndr->print(ndr, "%-25s: %s", name, dom_sid_string(ndr->mem_ctx, sid));
}
void ndr_print_dom_sid2(struct ndr_print *ndr, const char *name, struct dom_sid2 *sid)