Anope IRC Services  Version 2.0
Public Member Functions | Private Member Functions
HybridProto Class Reference
Inheritance diagram for HybridProto:
Inheritance graph
[legend]
Collaboration diagram for HybridProto:
Collaboration graph
[legend]

Public Member Functions

 HybridProto (Module *creator)
 
void SendGlobalNotice (BotInfo *bi, const Server *dest, const Anope::string &msg) anope_override
 
void SendGlobalPrivmsg (BotInfo *bi, const Server *dest, const Anope::string &msg) anope_override
 
void SendGlobopsInternal (const MessageSource &source, const Anope::string &buf) anope_override
 
void SendSQLine (User *, const XLine *x) anope_override
 
void SendSGLineDel (const XLine *x) anope_override
 
void SendSGLine (User *, const XLine *x) anope_override
 
void SendSZLineDel (const XLine *x) anope_override
 
void SendSZLine (User *, const XLine *x) anope_override
 
void SendAkillDel (const XLine *x) anope_override
 
void SendSQLineDel (const XLine *x) anope_override
 
void SendJoin (User *user, Channel *c, const ChannelStatus *status) anope_override
 
void SendAkill (User *u, XLine *x) anope_override
 
void SendServer (const Server *server) anope_override
 
void SendConnect () anope_override
 
void SendClientIntroduction (User *u) anope_override
 
void SendEOB () anope_override
 
void SendModeInternal (const MessageSource &source, User *u, const Anope::string &buf) anope_override
 
void SendLogin (User *u, NickAlias *na) anope_override
 
void SendLogout (User *u) anope_override
 
void SendChannel (Channel *c) anope_override
 
void SendTopic (const MessageSource &source, Channel *c) anope_override
 
void SendForceNickChange (User *u, const Anope::string &newnick, time_t when) anope_override
 
void SendSVSJoin (const MessageSource &source, User *u, const Anope::string &chan, const Anope::string &) anope_override
 
void SendSVSPart (const MessageSource &source, User *u, const Anope::string &chan, const Anope::string &param) anope_override
 
void SendSVSHold (const Anope::string &nick, time_t t) anope_override
 
void SendSVSHoldDel (const Anope::string &nick) anope_override
 
void SendVhost (User *u, const Anope::string &ident, const Anope::string &host) anope_override
 
void SendVhostDel (User *u) anope_override
 
bool IsIdentValid (const Anope::string &ident) anope_override
 
- Public Member Functions inherited from IRCDProto
virtual ~IRCDProto ()
 
virtual void SendModeInternal (const MessageSource &, const Channel *, const Anope::string &)
 
virtual void SendKickInternal (const MessageSource &, const Channel *, User *, const Anope::string &)
 
virtual void SendNoticeInternal (const MessageSource &, const Anope::string &dest, const Anope::string &msg)
 
virtual void SendPrivmsgInternal (const MessageSource &, const Anope::string &dest, const Anope::string &buf)
 
virtual void SendQuitInternal (User *, const Anope::string &buf)
 
virtual void SendPartInternal (User *, const Channel *chan, const Anope::string &buf)
 
virtual void SendCTCPInternal (const MessageSource &, const Anope::string &dest, const Anope::string &buf)
 
virtual void SendNumericInternal (int numeric, const Anope::string &dest, const Anope::string &buf)
 
const Anope::stringGetProtocolName ()
 
virtual void Parse (const Anope::string &, Anope::string &, Anope::string &, std::vector< Anope::string > &)
 
virtual Anope::string Format (const Anope::string &source, const Anope::string &message)
 
virtual Anope::string UID_Retrieve ()
 
virtual Anope::string SID_Retrieve ()
 
virtual void SendSVSNOOP (const Server *s, bool mode)
 
virtual void SendKill (const MessageSource &source, const Anope::string &target, const Anope::string &reason)
 
virtual void SendSVSKill (const MessageSource &source, User *user, const char *fmt,...)
 
virtual void SendMode (const MessageSource &source, const Channel *dest, const char *fmt,...)
 
virtual void SendMode (const MessageSource &source, User *u, const char *fmt,...)
 
virtual void SendKick (const MessageSource &source, const Channel *chan, User *user, const char *fmt,...)
 
virtual void SendNotice (const MessageSource &source, const Anope::string &dest, const char *fmt,...)
 
virtual void SendPrivmsg (const MessageSource &source, const Anope::string &dest, const char *fmt,...)
 
virtual void SendAction (const MessageSource &source, const Anope::string &dest, const char *fmt,...)
 
virtual void SendCTCP (const MessageSource &source, const Anope::string &dest, const char *fmt,...)
 
virtual void SendQuit (User *u, const char *fmt,...)
 
virtual void SendPing (const Anope::string &servname, const Anope::string &who)
 
virtual void SendPong (const Anope::string &servname, const Anope::string &who)
 
virtual void SendPart (User *u, const Channel *chan, const char *fmt,...)
 
virtual void SendInvite (const MessageSource &source, const Channel *c, User *u)
 
virtual void SendGlobops (const MessageSource &source, const char *fmt,...)
 
virtual void SendSVSO (BotInfo *, const Anope::string &, const Anope::string &)
 
virtual void SendNickChange (User *u, const Anope::string &newnick)
 
virtual void SendBOB ()
 
virtual void SendSWhois (const MessageSource &, const Anope::string &, const Anope::string &)
 
virtual void SendSquit (Server *, const Anope::string &message)
 
virtual void SendNumeric (int numeric, const Anope::string &dest, const char *fmt,...)
 
virtual void SendOper (User *u)
 
virtual void SendSASLMessage (const SASL::Message &)
 
virtual void SendSVSLogin (const Anope::string &uid, const Anope::string &acc)
 
virtual bool IsNickValid (const Anope::string &)
 
virtual bool IsChannelValid (const Anope::string &)
 
virtual bool IsHostValid (const Anope::string &)
 
virtual bool IsExtbanValid (const Anope::string &)
 
virtual unsigned GetMaxListFor (Channel *c)
 
virtual Anope::string NormalizeMask (const Anope::string &mask)
 
- Public Member Functions inherited from Service
 Service (Module *o, const Anope::string &t, const Anope::string &n)
 
virtual ~Service ()
 
void Register ()
 
void Unregister ()
 
- Public Member Functions inherited from Base
 Base ()
 
virtual ~Base ()
 
void AddReference (ReferenceBase *r)
 
void DelReference (ReferenceBase *r)
 

Private Member Functions

BotInfoFindIntroduced ()
 
void SendSVSKillInternal (const MessageSource &source, User *user, const Anope::string &buf) anope_override
 

Additional Inherited Members

- Static Public Member Functions inherited from Service
static ServiceFindService (const Anope::string &t, const Anope::string &n)
 
static std::vector< Anope::stringGetServiceKeys (const Anope::string &t)
 
static void AddAlias (const Anope::string &t, const Anope::string &n, const Anope::string &v)
 
static void DelAlias (const Anope::string &t, const Anope::string &n)
 
- Data Fields inherited from IRCDProto
Anope::string DefaultPseudoclientModes
 
bool CanSVSNick
 
bool CanSVSJoin
 
bool CanSetVHost
 
bool CanSetVIdent
 
bool CanSNLine
 
bool CanSQLine
 
bool CanSQLineChannel
 
bool CanSZLine
 
bool CanSVSHold
 
bool CanSVSO
 
bool CanCertFP
 
bool RequiresID
 
bool AmbiguousID
 
unsigned MaxModes
 
unsigned MaxLine
 
- Data Fields inherited from Service
Moduleowner
 
Anope::string type
 
Anope::string name
 
- Protected Member Functions inherited from IRCDProto
 IRCDProto (Module *creator, const Anope::string &proto_name)
 

Detailed Description

Definition at line 17 of file hybrid.cpp.

Constructor & Destructor Documentation

HybridProto::HybridProto ( Module creator)
inline

Member Function Documentation

BotInfo* HybridProto::FindIntroduced ( )
inlineprivate

Definition at line 19 of file hybrid.cpp.

References BotListByNick, and BotInfo::introduced.

Referenced by SendSQLine().

bool HybridProto::IsIdentValid ( const Anope::string ident)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 293 of file hybrid.cpp.

References Anope::string::find(), and Anope::string::npos.

void HybridProto::SendAkill ( User ,
XLine  
)
inlinevirtual

Sets an akill. This is a recursive function that can be called multiple times for the same xline, but for different users, if the xline is not one that can be enforced by the IRCd, such as a nick/user/host/realname combination ban.

Parameters
uThe user affected by the akill, if known
xThe akill

Implements IRCDProto.

Definition at line 134 of file hybrid.cpp.

References XLineManager::AddXLine(), XLine::by, Anope::CurTime, XLine::expires, XLineManager::HasEntry(), XLine::id, XLine::manager, XLine::mask, XLine::reason, and UserListByNick.

void HybridProto::SendAkillDel ( const XLine x)
inlinevirtual

Implements IRCDProto.

Definition at line 100 of file hybrid.cpp.

void HybridProto::SendChannel ( Channel c)
inlinevirtual

Send a channel creation message to the uplink. On most TS6 IRCds this is a SJOIN with no nick

Reimplemented from IRCDProto.

Definition at line 238 of file hybrid.cpp.

References Anope::string::empty(), and modes.

void HybridProto::SendClientIntroduction ( User u)
inlinevirtual

Introduces a client to the rest of the network

Parameters
uThe client to introduce

Implements IRCDProto.

Definition at line 210 of file hybrid.cpp.

References Me, and modes.

void HybridProto::SendConnect ( )
inlinevirtual

Used to introduce ourselves to our uplink. Usually will SendServer(Me) and any other initial handshake requirements.

Implements IRCDProto.

Definition at line 183 of file hybrid.cpp.

References Anope::CurrentUplink, Anope::CurTime, Server::GetSID(), Me, and SendServer().

void HybridProto::SendEOB ( )
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 218 of file hybrid.cpp.

References Me.

void HybridProto::SendForceNickChange ( User u,
const Anope::string newnick,
time_t  when 
)
inlinevirtual

Forces a nick change of a user that isn't ours (SVSNICK)

Reimplemented from IRCDProto.

Definition at line 253 of file hybrid.cpp.

References Me.

void HybridProto::SendGlobalNotice ( BotInfo bi,
const Server dest,
const Anope::string msg 
)
inlinevirtual

Implements IRCDProto.

Definition at line 54 of file hybrid.cpp.

void HybridProto::SendGlobalPrivmsg ( BotInfo bi,
const Server dest,
const Anope::string msg 
)
inlinevirtual

Implements IRCDProto.

Definition at line 59 of file hybrid.cpp.

void HybridProto::SendGlobopsInternal ( const MessageSource source,
const Anope::string buf 
)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 64 of file hybrid.cpp.

void HybridProto::SendJoin ( User u,
Channel c,
const ChannelStatus status 
)
inlinevirtual

Joins one of our users to a channel.

Parameters
uThe user to join
cThe channel to join the user to
statusThe status to set on the user after joining. This may or may not already internally be set on the user. This may include the modes in the join, but will usually place them on the mode stacker to be set "soon".

Implements IRCDProto.

Definition at line 113 of file hybrid.cpp.

References ChanUserContainer::status.

void HybridProto::SendLogin ( User u,
NickAlias na 
)
inlinevirtual

Implements IRCDProto.

Definition at line 228 of file hybrid.cpp.

References IRCD, and IRCDProto::SendMode().

void HybridProto::SendLogout ( User u)
inlinevirtual

Implements IRCDProto.

Definition at line 233 of file hybrid.cpp.

References IRCD, and IRCDProto::SendMode().

void HybridProto::SendModeInternal ( const MessageSource source,
User u,
const Anope::string buf 
)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 223 of file hybrid.cpp.

void HybridProto::SendServer ( const Server )
inlinevirtual

Introduces a server to the uplink

Implements IRCDProto.

Definition at line 175 of file hybrid.cpp.

References Me.

Referenced by SendConnect().

void HybridProto::SendSGLine ( User ,
const XLine x 
)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 79 of file hybrid.cpp.

void HybridProto::SendSGLineDel ( const XLine x)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 74 of file hybrid.cpp.

void HybridProto::SendSQLine ( User ,
const XLine x 
)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 69 of file hybrid.cpp.

References Anope::CurTime, and FindIntroduced().

Referenced by SendSVSHold().

void HybridProto::SendSQLineDel ( const XLine x)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 108 of file hybrid.cpp.

Referenced by SendSVSHoldDel().

void HybridProto::SendSVSHold ( const Anope::string nick,
time_t  t 
)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 271 of file hybrid.cpp.

References Anope::CurTime, Server::GetName(), Me, and SendSQLine().

void HybridProto::SendSVSHoldDel ( const Anope::string nick)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 277 of file hybrid.cpp.

References SendSQLineDel().

void HybridProto::SendSVSJoin ( const MessageSource source,
User u,
const Anope::string chan,
const Anope::string param 
)
inlinevirtual

Force joins a user that isn't ours to a channel.

Parameters
biThe source of the message
uThe user to join
chanThe channel to join the user to
paramChannel key?

Reimplemented from IRCDProto.

Definition at line 258 of file hybrid.cpp.

References User::GetUID().

void HybridProto::SendSVSKillInternal ( const MessageSource source,
User user,
const Anope::string buf 
)
inlineprivatevirtual

Reimplemented from IRCDProto.

Definition at line 32 of file hybrid.cpp.

References IRCDProto::SendSVSKillInternal().

void HybridProto::SendSVSPart ( const MessageSource source,
User u,
const Anope::string chan,
const Anope::string param 
)
inlinevirtual

Force parts a user that isn't ours from a channel.

Parameters
sourceThe source of the message
uThe user to part
chanThe channel to part the user from
parampart reason, some IRCds don't support this

Reimplemented from IRCDProto.

Definition at line 263 of file hybrid.cpp.

void HybridProto::SendSZLine ( User ,
const XLine x 
)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 89 of file hybrid.cpp.

References Anope::CurTime.

void HybridProto::SendSZLineDel ( const XLine x)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 84 of file hybrid.cpp.

void HybridProto::SendTopic ( const MessageSource source,
Channel c 
)
inlinevirtual

Sets the topic on a channel

Parameters
biThe bot to set the topic from
cThe channel to set the topic on. The topic being set is Channel::topic

Reimplemented from IRCDProto.

Definition at line 248 of file hybrid.cpp.

void HybridProto::SendVhost ( User u,
const Anope::string vident,
const Anope::string vhost 
)
inlinevirtual

Sets a vhost on a user.

Parameters
uThe user
videntThe ident to set
vhostThe vhost to set

Reimplemented from IRCDProto.

Definition at line 283 of file hybrid.cpp.

void HybridProto::SendVhostDel ( User u)
inlinevirtual

Reimplemented from IRCDProto.

Definition at line 288 of file hybrid.cpp.


The documentation for this class was generated from the following file: