[Asterisk-cvs] asterisk/cygwin Makefile, NONE, 1.1 cygloader.c, NONE, 1.1

kpfleming kpfleming
Tue Nov 1 17:01:32 CST 2005


Update of /usr/cvsroot/asterisk/cygwin
In directory mongoose.digium.com:/tmp/cvs-serv16806/cygwin

Added Files:
	Makefile cygloader.c 
Log Message:
issue #4678


--- NEW FILE: Makefile ---
OBJS=cygloader.o
all: $(OBJS)
$(OBJS) : %.o: %.c
	$(CC) $< -o asterisk.exe
clean:
	rm -f asterisk.exe

--- NEW FILE: cygloader.c ---
#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;
}




More information about the svn-commits mailing list