X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Finspircd.h;h=3e30293107c4587ed799fc42f36d8b6004cb9a8d;hb=76ebc88ccd6fef0bf2d97b607829fb3466e273af;hp=fd7cd3da98433128d5f3904ed120924975539896;hpb=d02a5866d4fdedec9219aeca0a6048828b394fd2;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/inspircd.h b/include/inspircd.h index fd7cd3da9..3e3029310 100644 --- a/include/inspircd.h +++ b/include/inspircd.h @@ -109,6 +109,9 @@ class InspIRCd : public classbase featurelist Features; + time_t TIME; + time_t OLDTIME; + public: time_t startup_time; ModeParser* ModeGrok; @@ -122,16 +125,24 @@ class InspIRCd : public classbase user_hash clientlist; chan_hash chanlist; std::vector local_users; + std::vector all_opers; DNS* Res; TimerManager* Timers; + command_table cmdlist; ModuleList modules; FactoryList factory; + time_t Time(); + int GetModuleCount(); Module* FindModule(const std::string &name); + int BindPorts(bool bail); + bool HasPort(int port, char* addr); + bool BindSocket(int sockfd, insp_sockaddr client, insp_sockaddr server, int port, char* addr); + void AddServerName(const std::string &servername); const char* FindServerNamePtr(const std::string &servername); bool FindServerName(const std::string &servername); @@ -237,6 +248,64 @@ class InspIRCd : public classbase bool IsNick(const char* n); bool IsIdent(const char* n); + userrec* FindDescriptor(int socket); + + bool AddMode(ModeHandler* mh, const unsigned char modechar); + + bool AddModeWatcher(ModeWatcher* mw); + + bool DelModeWatcher(ModeWatcher* mw); + + bool AddResolver(Resolver* r); + + void AddCommand(command_t *f); + + void SendMode(const char **parameters, int pcnt, userrec *user); + + bool MatchText(const std::string &sliteral, const std::string &spattern); + + bool CallCommandHandler(const std::string &commandname, const char** parameters, int pcnt, userrec* user); + + bool IsValidModuleCommand(const std::string &commandname, int pcnt, userrec* user); + + bool IsUlined(const std::string &server); + + void AddGLine(long duration, const std::string &source, const std::string &reason, const std::string &hostmask); + + void AddQLine(long duration, const std::string &source, const std::string &reason, const std::string &nickname); + + void AddZLine(long duration, const std::string &source, const std::string &reason, const std::string &ipaddr); + + void AddKLine(long duration, const std::string &source, const std::string &reason, const std::string &hostmask); + + void AddELine(long duration, const std::string &source, const std::string &reason, const std::string &hostmask); + + bool DelGLine(const std::string &hostmask); + + bool DelQLine(const std::string &nickname); + + bool DelZLine(const std::string &ipaddr); + + bool DelKLine(const std::string &hostmask); + + bool DelELine(const std::string &hostmask); + + long CalcDuration(const std::string &duration); + + bool IsValidMask(const std::string &mask); + + void AddSocket(InspSocket* sock); + + void RemoveSocket(InspSocket* sock); + + void DelSocket(InspSocket* sock); + + void RehashServer(); + + chanrec* GetChannelIndex(long index); + + void DumpText(userrec* User, const std::string &LinePrefix, stringstream &TextStream); + std::string GetRevision(); std::string GetVersionString(); void WritePID(const std::string &filename);