]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
libcli: Simplify security_session_user_level()
authorVolker Lendecke <vl@samba.org>
Sat, 25 Sep 2021 06:23:03 +0000 (08:23 +0200)
committerJeremy Allison <jra@samba.org>
Fri, 8 Oct 2021 19:28:31 +0000 (19:28 +0000)
Use sid_compose(), use struct dom_sid on the stack.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
libcli/security/session.c

index 730f1e5861d93757bbeeaf7bde51913d4a50efd2..76574515e2312b7464164b934e36a48c7bb32c36 100644 (file)
@@ -57,13 +57,12 @@ enum security_user_level security_session_user_level(struct auth_session_info *s
        }
 
        if (domain_sid) {
-               struct dom_sid *rodc_dcs;
-               rodc_dcs = dom_sid_add_rid(session_info, domain_sid, DOMAIN_RID_READONLY_DCS);
-               if (security_token_has_sid(token, rodc_dcs)) {
-                       talloc_free(rodc_dcs);
+               struct dom_sid rodc_dcs = { .num_auths = 0 };
+               sid_compose(&rodc_dcs, domain_sid, DOMAIN_RID_READONLY_DCS);
+
+               if (security_token_has_sid(token, &rodc_dcs)) {
                        return SECURITY_RO_DOMAIN_CONTROLLER;
                }
-               talloc_free(rodc_dcs);
        }
 
        if (security_token_has_enterprise_dcs(token)) {