diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-04-07 17:59:33 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-04-07 17:59:33 +0000 |
commit | ec7fc489a14af54738da17a94b162a9606df4756 (patch) | |
tree | 6ea2da2cacdf919581ad20ca4ce40e94cc02235b /src/inspircd.cpp | |
parent | 9fc9227cf51585dd2e44c2fcd0014c8da8f8739f (diff) |
Tons of module versionflags stuff, and checks for it in /UNLOADMODULE
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1001 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/inspircd.cpp')
-rw-r--r-- | src/inspircd.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/inspircd.cpp b/src/inspircd.cpp index f0d007cb9..dd1be77d9 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -3269,6 +3269,12 @@ bool UnloadModule(const char* filename) { if (module_names[j] == std::string(filename)) { + if (factory[j]->factory->GetVersion().Flags & VF_STATIC) + { + log(DEFAULT,"Failed to unload STATIC module %s",filename); + snprintf(MODERR,MAXBUF,"Module not unloadable (marked static)"); + return false; + } // found the module log(DEBUG,"Deleting module..."); delete factory[j]->factory; |