#include <access.h>
Inherits Serializable.
Inherited by AccessChanAccess, FlagsChanAccess, and XOPChanAccess.

Public Member Functions | |
| ChanAccess (AccessProvider *p) | |
| virtual | ~ChanAccess () |
| void | Serialize (Serialize::Data &data) const anope_override |
| virtual bool | Matches (const User *u, const NickCore *nc) const |
| virtual bool | HasPriv (const Anope::string &name) const =0 |
| virtual Anope::string | AccessSerialize () const =0 |
| virtual void | AccessUnserialize (const Anope::string &data)=0 |
| bool | operator> (const ChanAccess &other) const |
| bool | operator< (const ChanAccess &other) const |
| bool | operator>= (const ChanAccess &other) const |
| bool | operator<= (const ChanAccess &other) const |
Static Public Member Functions | |
| static Serializable * | Unserialize (Serializable *obj, Serialize::Data &) |
Data Fields | |
| AccessProvider * | provider |
| Serialize::Reference< ChannelInfo > | ci |
| Anope::string | mask |
| Anope::string | creator |
| time_t | last_seen |
| time_t | created |
Definition at line 75 of file access.h.
| ChanAccess::ChanAccess | ( | AccessProvider * | p | ) |
Definition at line 94 of file access.cpp.
| ChanAccess::~ChanAccess | ( | ) | [virtual] |
Definition at line 98 of file access.cpp.
References ci, NickAlias::Find(), mask, and NickAlias::nc.
| virtual Anope::string ChanAccess::AccessSerialize | ( | ) | const [pure virtual] |
Serialize the access given by this access entry into a human readable form. chanserv/access will return a number, chanserv/xop will be AOP, SOP, etc.
Implemented in AccessChanAccess, FlagsChanAccess, and XOPChanAccess.
Referenced by ChannelInfo::ChannelInfo(), FlagsChanAccess::DetermineFlags(), CommandCSStatus::Execute(), CommandCSClone::Execute(), WebCPanel::ChanServ::Access::OnRequest(), DBPlain::OnSaveDatabase(), and Serialize().
| virtual void ChanAccess::AccessUnserialize | ( | const Anope::string & | data | ) | [pure virtual] |
Unserialize this access entry from the given data. This data will be fetched from AccessSerialize.
Implemented in AccessChanAccess, FlagsChanAccess, and XOPChanAccess.
Referenced by ChannelInfo::ChannelInfo(), CommandCSClone::Execute(), LoadChannels(), OnDatabaseReadMetadata(), and WebCPanel::ChanServ::Access::OnRequest().
| virtual bool ChanAccess::HasPriv | ( | const Anope::string & | name | ) | const [pure virtual] |
Check if this access entry has the given privilege.
| name | The privilege name |
Implemented in AccessChanAccess, FlagsChanAccess, and XOPChanAccess.
Referenced by FlagsChanAccess::DetermineFlags(), XOPChanAccess::DetermineLevel(), AccessChanAccess::DetermineLevel(), AccessGroup::HasPriv(), operator<(), operator<=(), operator>(), and operator>=().
Check if this access entry matches the given user or account
| u | The user | |
| nc | The account |
Definition at line 155 of file access.cpp.
References NickCore::aliases, Anope::string::find_first_of(), User::GetDisplayedMask(), mask, Anope::Match(), NickAlias::nick, User::nick, and Anope::string::npos.
Referenced by ChannelInfo::AccessFor(), and CommandCSAccess::ProcessList().
| bool ChanAccess::operator< | ( | const ChanAccess & | other | ) | const |
Definition at line 191 of file access.cpp.
References PrivilegeManager::GetPrivileges(), and HasPriv().
| bool ChanAccess::operator<= | ( | const ChanAccess & | other | ) | const |
Definition at line 229 of file access.cpp.
References PrivilegeManager::GetPrivileges(), and HasPriv().
| bool ChanAccess::operator> | ( | const ChanAccess & | other | ) | const |
Definition at line 172 of file access.cpp.
References PrivilegeManager::GetPrivileges(), and HasPriv().
| bool ChanAccess::operator>= | ( | const ChanAccess & | other | ) | const |
Definition at line 210 of file access.cpp.
References PrivilegeManager::GetPrivileges(), and HasPriv().
| void ChanAccess::Serialize | ( | Serialize::Data & | data | ) | const [virtual] |
Implements Serializable.
Definition at line 112 of file access.cpp.
References AccessSerialize(), ci, created, creator, last_seen, mask, Service::name, and provider.
| Serializable * ChanAccess::Unserialize | ( | Serializable * | obj, | |
| Serialize::Data & | data | |||
| ) | [static] |
Definition at line 123 of file access.cpp.
References ChannelInfo::AddAccess(), anope_dynamic_static_cast(), ci, ChannelInfo::Find(), and provider.
Referenced by Serialize::RegisterTypes().
Definition at line 81 of file access.h.
Referenced by ChannelInfo::ChannelInfo(), AccessChanAccess::DetermineLevel(), XOPBase::DoAdd(), CommandCSAccess::DoAdd(), XOPBase::DoDel(), CommandCSFlags::DoModify(), CommandCSClone::Execute(), AccessChanAccess::HasPriv(), LoadChannels(), OnDatabaseReadMetadata(), WebCPanel::ChanServ::Access::OnRequest(), Serialize(), Unserialize(), and ~ChanAccess().
| time_t ChanAccess::created |
Definition at line 85 of file access.h.
Referenced by ChannelInfo::ChannelInfo(), XOPBase::DoAdd(), CommandCSAccess::DoAdd(), CommandCSFlags::DoList(), CommandCSFlags::DoModify(), CommandCSClone::Execute(), LoadChannels(), OnDatabaseReadMetadata(), WebCPanel::ChanServ::Access::OnRequest(), DBPlain::OnSaveDatabase(), and Serialize().
Definition at line 83 of file access.h.
Referenced by ChannelInfo::ChannelInfo(), XOPBase::DoAdd(), CommandCSAccess::DoAdd(), CommandCSFlags::DoList(), CommandCSFlags::DoModify(), CommandCSClone::Execute(), LoadChannels(), OnDatabaseReadMetadata(), WebCPanel::ChanServ::Access::OnRequest(), DBPlain::OnSaveDatabase(), CommandCSAccess::ProcessList(), and Serialize().
| time_t ChanAccess::last_seen |
Definition at line 84 of file access.h.
Referenced by ChannelInfo::ChannelInfo(), XOPBase::DoAdd(), CommandCSAccess::DoAdd(), CommandCSFlags::DoModify(), CommandCSClone::Execute(), LoadChannels(), OnDatabaseReadMetadata(), WebCPanel::ChanServ::Access::OnRequest(), DBPlain::OnSaveDatabase(), CommandCSAccess::ProcessList(), and Serialize().
Definition at line 82 of file access.h.
Referenced by ChannelInfo::AddAccess(), ChannelInfo::ChannelInfo(), XOPBase::DoAdd(), CommandCSAccess::DoAdd(), XOPBase::DoDel(), CommandCSAccess::DoDel(), XOPBase::DoList(), CommandCSFlags::DoList(), CommandCSFlags::DoModify(), CommandCSStatus::Execute(), CommandCSClone::Execute(), LoadChannels(), Matches(), OnDatabaseReadMetadata(), ChanServCore::OnDelCore(), WebCPanel::ChanServ::Access::OnRequest(), DBPlain::OnSaveDatabase(), CommandCSAccess::ProcessList(), Serialize(), and ~ChanAccess().
Definition at line 79 of file access.h.
Referenced by ChannelInfo::ChannelInfo(), FlagsChanAccess::DetermineFlags(), XOPChanAccess::DetermineLevel(), AccessChanAccess::DetermineLevel(), CommandCSClone::Execute(), DBPlain::OnSaveDatabase(), Serialize(), and Unserialize().
1.7.1