Author: abartlet
Date: 2006-01-06 21:20:09 +0000 (Fri, 06 Jan 2006)
New Revision: 12747

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=12747

Log:
Add a couple more token tests, used by the kludge ACL module.

Andrew Bartlett

Modified:
   branches/SAMBA_4_0/source/libcli/security/security_token.c


Changeset:
Modified: branches/SAMBA_4_0/source/libcli/security/security_token.c
===================================================================
--- branches/SAMBA_4_0/source/libcli/security/security_token.c  2006-01-06 
21:04:32 UTC (rev 12746)
+++ branches/SAMBA_4_0/source/libcli/security/security_token.c  2006-01-06 
21:20:09 UTC (rev 12747)
@@ -190,3 +190,33 @@
        return False;
 }
 
+BOOL is_authenticated_token(struct security_token *token) 
+{
+       TALLOC_CTX *mem_ctx = talloc_new(token);
+       int i;
+       struct dom_sid *authenticated = dom_sid_parse_talloc(mem_ctx, 
SID_NT_ANONYMOUS);
+       for (i = 0; i < token->num_sids; i++) {
+               if (dom_sid_equal(token->sids[i], authenticated)) {
+                       talloc_free(mem_ctx);
+                       return True;
+               }
+       }
+       talloc_free(mem_ctx);
+       return False;
+}
+
+BOOL is_administrator_token(struct security_token *token) 
+{
+       TALLOC_CTX *mem_ctx = talloc_new(token);
+       int i;
+       struct dom_sid *administrators = dom_sid_parse_talloc(mem_ctx, 
SID_BUILTIN_ADMINISTRATORS);
+       for (i = 0; i < token->num_sids; i++) {
+               if (dom_sid_equal(token->sids[i], administrators)) {
+                       talloc_free(mem_ctx);
+                       return True;
+               }
+       }
+       talloc_free(mem_ctx);
+       return False;
+}
+

Reply via email to