X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Finspircd.h;h=3e30293107c4587ed799fc42f36d8b6004cb9a8d;hb=76ebc88ccd6fef0bf2d97b607829fb3466e273af;hp=63e8c8ce524ef234b850eefa45cf05636644bae9;hpb=23a4885701cba4a87a5ae027257fb4207c917572;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/inspircd.h b/include/inspircd.h index 63e8c8ce5..3e3029310 100644 --- a/include/inspircd.h +++ b/include/inspircd.h @@ -104,6 +104,14 @@ class InspIRCd : public classbase bool AllModulesReportReady(userrec* user); + int ModCount; + char LogFileName[MAXBUF]; + + featurelist Features; + + time_t TIME; + time_t OLDTIME; + public: time_t startup_time; ModeParser* ModeGrok; @@ -117,8 +125,23 @@ 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); @@ -225,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);