int main(int argc, char *argv[]) { printf("\nAmmar Server %s starting up..\n",AmmServer_Version()); //Check binary and header spec AmmServer_CheckIfHeaderBinaryAreTheSame(AMMAR_SERVER_HTTP_HEADER_SPEC); //Register termination signal for when we receive SIGKILL etc AmmServer_RegisterTerminationSignal(&close_dynamic_content); char bindIP[MAX_IP_STRING_SIZE]; strcpy(bindIP,"0.0.0.0"); unsigned int port=DEFAULT_BINDING_PORT; //Kick start AmmarServer , bind the ports , create the threads and get things going..! default_server = AmmServer_StartWithArgs( "MySearch", argc,argv , //The internal server will use the arguments to change settings //If you don't want this look at the AmmServer_Start call bindIP, port, 0, /*This means we don't want a specific configuration file*/ webserver_root, templates_root ); if (!default_server) { AmmServer_Error("Could not start server , shutting down everything.."); exit(1); } //Create dynamic content allocations and associate context to the correct files init_dynamic_content(); //stats.html and formtest.html should be availiable from now on..! while ( (AmmServer_Running(default_server)) ) { //Main thread should just sleep and let the background threads do the hard work..! //In other applications the programmer could use the main thread to do anything he likes.. //The only caveat is that he would takeup more CPU time from the server and that he would have to poll //the AmmServer_Running() call once in a while to make sure everything is in order //usleep(60000); sleep(1); } //Delete dynamic content allocations and remove stats.html and formtest.html from the server close_dynamic_content(); //Stop the server and clean state AmmServer_Stop(default_server); AmmServer_Warning("Ammar Server stopped\n"); return 0; }
int StartWebInterface(char * IP , unsigned int port , char * fileroot,char * app_clipart) { flashy_server = AmmServer_Start ( "flashyslideshows", IP, port, 0, /*This means we don't want a specific configuration file*/ fileroot, fileroot ); if (!flashy_server) { return 0; } init_dynamic_content(fileroot,app_clipart); return 1; }
int initAmmarServer() { //Kick start AmmarServer , bind the ports , create the threads and get things going..! default_server = AmmServer_StartWithArgs( "SimpleTemplate", 0,0 , //The internal server will use the arguments to change settings //If you don't want this look at the AmmServer_Start call bindIP, port, 0, /*This means we don't want a specific configuration file*/ webserver_root, templates_root ); if (!default_server) { AmmServer_Error("Could not start server , shutting down everything.."); exit(1); } init_dynamic_content(); }