#include "inspircd.h"
#include "globals.h"
#include "modules.h"
+#include "socketengine.h"
+#include "socket.h"
class ServerConfig;
class InspIRCd;
bool CheckOnce(char* tag, bool bail, userrec* user);
public:
+
+ InspIRCd* GetInstance();
/** This holds all the information in the config file,
* it's indexed by tag name to a vector of key/values.
/** A list of the file descriptors for the listening client ports
*/
- int openSockfd[MAX_DESCRIPTORS];
+ ListenSocket* openSockfd[255];
/** Boolean sets of which modules implement which functions
*/
*/
bool SyntaxHints;
+ /** If set to true, users appear to quit then rejoin when their hosts change.
+ * This keeps clients synchronized properly.
+ */
+ bool CycleHosts;
+
ServerConfig(InspIRCd* Instance);
- /** Clears the include stack in preperation for
- * a Read() call.
+ /** Clears the include stack in preperation for a Read() call.
*/
void ClearStack();
Module* GetIOHook(int port);
bool AddIOHook(int port, Module* iomod);
bool DelIOHook(int port);
+
+ static std::string GetFullProgDir(char** argv, int argc);
+ static bool DirValid(const char* dirandfile);
+ static char* CleanFilename(char* name);
+ static bool FileExists(const char* file);
+
};
bool InitializeDisabledCommands(const char* data, InspIRCd* ServerInstance);