}
}
err = "Module is not statically compiled into the ircd";
+#else
+#ifdef IS_CYGWIN
+ // Cygwin behaviour is handled slightly differently
+ // With the advent of dynamic modules. Because Windows
+ // wont let you overwrite a file which is currently in
+ // Use, we can safely attempt to load the module from its
+ // Current location :)
+
+ h = dlopen(fname, RTLD_NOW );
+ err = (char*)dlerror();
+
#else
// Copy the library to a temp location, this makes recompiles
// a little safer if the ircd is running at the time as the
FILE* x = fopen(fname,"rb");
char tmpfile_template[255];
char buffer[65536];
- snprintf(tmpfile_template, 255, "/tmp/inspircd_file.so.%d.XXXXXXXXXX",getpid());
+ snprintf(tmpfile_template, 255, "%s/inspircd_file.so.%d.XXXXXXXXXX",Config->TempDir,getpid());
int fd = mkstemp(tmpfile_template);
while (!feof(x))
{
if (!Config->debugging)
unlink(tmpfile_template);
#endif
+#endif
}
DLLManager::~DLLManager()