]> jfr.im git - irc/rqf/shadowircd.git/blobdiff - include/privilege.h
Update NEWS.
[irc/rqf/shadowircd.git] / include / privilege.h
index b033839ad7d3901a2bbce6d3a992561ef3c789b4..46d5cd93675094f09c52a3a02a31b05cf9c77709 100644 (file)
@@ -31,6 +31,7 @@ typedef enum {
 } PrivilegeFlags;
 
 struct PrivilegeSet {
+       unsigned int status;    /* If CONF_ILLEGAL, delete when no refs */
        int refs;
        char *name;
        char *privs;
@@ -40,8 +41,12 @@ struct PrivilegeSet {
 
 int privilegeset_in_set(struct PrivilegeSet *set, const char *priv);
 struct PrivilegeSet *privilegeset_set_new(const char *name, const char *privs, PrivilegeFlags flags);
+struct PrivilegeSet *privilegeset_extend(struct PrivilegeSet *parent, const char *name, const char *privs, PrivilegeFlags flags);
 struct PrivilegeSet *privilegeset_get(const char *name);
-void privilegeset_ref(struct PrivilegeSet *set);
+struct PrivilegeSet *privilegeset_ref(struct PrivilegeSet *set);
 void privilegeset_unref(struct PrivilegeSet *set);
+void privilegeset_mark_all_illegal(void);
+void privilegeset_delete_all_illegal(void);
+void privilegeset_report(struct Client *source_p);
 
 #endif