git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6936 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Kevin P. Fleming
2005-11-01 21:53:30 +00:00
parent b05e64ed12
commit 7ffb604a2f
26 changed files with 207 additions and 55 deletions

33
cygwin/cygloader.c Executable file
View File

@@ -0,0 +1,33 @@
#include <unistd.h>
#include <dlfcn.h>
#include <stdio.h>
#define OK 0
#define MODULE_NOT_FOUND 1
#define INVALID_NUMBER_ARGUMENTS 2
int main(int argc, char **argv) {
/* Asterisk entry point */
char* error = NULL;
int (*ast_main)(int argc, char **argv);
void *handle = dlopen ("asterisk.dll", RTLD_GLOBAL);
if (handle == NULL) {
fputs (dlerror(), stderr);
fputs ("\r\n", stderr);
return MODULE_NOT_FOUND;
}
printf("\r\nAsterisk module loaded successfully");
ast_main = dlsym(handle, "main");
if ((error = dlerror()) != NULL) {
fputs("Asterisk main not found", stderr);
fputs(error, stderr);
exit(1);
}
printf("\r\nAsterisk entry point found");
/* run asterisk main */
(*ast_main)(argc, argv);
dlclose(handle);
printf("\r\nAsterisk stopped");
return OK;
}