1.1 --- a/core/AdminCache.h Mon Feb 05 08:58:03 2007 +0000
1.2 +++ b/core/AdminCache.h Mon Feb 05 09:14:40 2007 +0000
1.3 @@ -45,7 +45,7 @@
1.4 int next_grp; /* Next group in the chain */
1.5 int prev_grp; /* Previous group in the chain */
1.6 int nameidx; /* Name */
1.7 - bool addflags[AdminFlags_TOTAL]; /* Additive flags */
1.8 + FlagBits addflags; /* Additive flags */
1.9 };
1.10
1.11 struct AuthMethod
1.12 @@ -62,9 +62,9 @@
1.13
1.14 struct AdminUser
1.15 {
1.16 - uint32_t magic; /* Magic flag, for memory validation */
1.17 - bool flags[AdminFlags_TOTAL]; /* Base flags */
1.18 - bool eflags[AdminFlags_TOTAL]; /* Effective flags */
1.19 + uint32_t magic; /* Magic flag, for memory validation */
1.20 + FlagBits flags; /* Flags */
1.21 + FlagBits eflags; /* Effective flags */
1.22 int nameidx; /* Name index */
1.23 int password; /* Password index */
1.24 unsigned int grp_count; /* Number of groups */
1.25 @@ -88,15 +88,15 @@
1.26 void OnSourceModShutdown();
1.27 public: //IAdminSystem
1.28 /** Command cache stuff */
1.29 - void AddCommandOverride(const char *cmd, OverrideType type, AdminFlag flag);
1.30 - bool GetCommandOverride(const char *cmd, OverrideType type, AdminFlag *pFlag);
1.31 + void AddCommandOverride(const char *cmd, OverrideType type, FlagBits flags);
1.32 + bool GetCommandOverride(const char *cmd, OverrideType type, FlagBits *flags);
1.33 void UnsetCommandOverride(const char *cmd, OverrideType type);
1.34 /** Group cache stuff */
1.35 GroupId AddGroup(const char *group_name);
1.36 GroupId FindGroupByName(const char *group_name);
1.37 void SetGroupAddFlag(GroupId id, AdminFlag flag, bool enabled);
1.38 bool GetGroupAddFlag(GroupId id, AdminFlag flag);
1.39 - unsigned int GetGroupAddFlagBits(GroupId id, bool flags[], unsigned int total);
1.40 + FlagBits GetGroupAddFlags(GroupId id);
1.41 void SetGroupGenericImmunity(GroupId id, ImmunityType type, bool enabled);
1.42 bool GetGroupGenericImmunity(GroupId id, ImmunityType type);
1.43 void InvalidateGroup(GroupId id);
1.44 @@ -115,7 +115,7 @@
1.45 bool BindAdminIdentity(AdminId id, const char *auth, const char *ident);
1.46 virtual void SetAdminFlag(AdminId id, AdminFlag flag, bool enabled);
1.47 bool GetAdminFlag(AdminId id, AdminFlag flag, AccessMode mode);
1.48 - unsigned int GetAdminFlags(AdminId id, bool flags[], unsigned int total, AccessMode mode);
1.49 + FlagBits GetAdminFlags(AdminId id, AccessMode mode);
1.50 bool AdminInheritGroup(AdminId id, GroupId gid);
1.51 unsigned int GetAdminGroupCount(AdminId id);
1.52 GroupId GetAdminGroup(AdminId id, unsigned int index, const char **name);
1.53 @@ -123,11 +123,11 @@
1.54 const char *GetAdminPassword(AdminId id);
1.55 AdminId FindAdminByIdentity(const char *auth, const char *identity);
1.56 bool InvalidateAdmin(AdminId id);
1.57 + unsigned int FlagBitsToBitArray(FlagBits bits, bool array[], unsigned int maxSize);
1.58 + FlagBits FlagBitArrayToBits(const bool array[], unsigned int maxSize);
1.59 + FlagBits FlagArrayToBits(const AdminFlag array[], unsigned int numFlags);
1.60 + unsigned int FlagBitsToArray(FlagBits bits, AdminFlag array[], unsigned int maxSize);
1.61 private:
1.62 - void _AddCommandOverride(const char *cmd, AdminFlag flag);
1.63 - void _AddCommandGroupOverride(const char *group, AdminFlag flag);
1.64 - bool _GetCommandOverride(const char *cmd, AdminFlag *pFlag);
1.65 - bool _GetCommandGroupOverride(const char *group, AdminFlag *pFlag);
1.66 void _UnsetCommandOverride(const char *cmd);
1.67 void _UnsetCommandGroupOverride(const char *group);
1.68 void InvalidateGroupCache();