void SysParamInit( void ) //system param init { char* pdst = NULL; int iRet; /* BEGIN: Added by wupm, 2013/3/12 */ #ifdef HONESTECH ReadHTClassParams(); #endif InitSystemParam(); Textout("Read Config File , UUID = [%s], MAC = [%s]", bparam.stIEBaseParam.dwDeviceID, bparam.stIEBaseParam.szMac ); Textout("ApiLisense = [%s]",bparam.stIEBaseParam.dwApiLisense); nvram_init( RT2860_NVRAM ); IPCStart(); //ipc init #ifndef NOT_READ_MAC ReadFactoryMac(); //read mac Textout("ReadFactoryMac, UUID = [%s], MAC = [%s]", bparam.stIEBaseParam.dwDeviceID, bparam.stIEBaseParam.szMac ); Textout("ApiLisense = [%s]",bparam.stIEBaseParam.dwApiLisense); #endif ReadRactoryID(); //read deviceid Textout("ReadRactoryID, UUID = [%s], MAC = [%s]", bparam.stIEBaseParam.dwDeviceID, bparam.stIEBaseParam.szMac ); Textout("ApiLisense = [%s]",bparam.stIEBaseParam.dwApiLisense); //ReadDnsFactory(); //read dns factory ConfigVersion(); //config system version DateInit(); FactoryUpdateInit(); }
/************************************** * XmlRpcServer * Constructor **************************************/ XmlRpcServer::XmlRpcServer(int port) { char name[65]; //Iniciamos la fecha DateInit(); //Los mime tipes MIMETypeInit(); //Le pasamos como nombre un puntero a nosotros mismos sprintf(name,"%p",this); //Creamos el servidor ServerCreate(&srv,name, port, DEFAULT_DOCS, "http.log"); //Iniciamos el servidor ServerInit(&srv); //Set the handler abyss_bool ret; //Create abyss handler ServerReqHandler3 abbysHndlr; //Set abbysHndlr.userdata = (void*)this; abbysHndlr.handleReq = RequestHandler; abbysHndlr.term = NULL; abbysHndlr.handleReqStackSize = 0; //Add handler ServerAddHandler3(&srv,&abbysHndlr,&ret); }
static void xmlrpc_process(int rank) { /* install handler to catch termination of child processes */ if (signal(SIGCHLD, xmlrpc_sigchld)==SIG_ERR) { LM_ERR("failed to install signal handler for SIGCHLD\n"); goto error; } /* Server Abyss init */ xmlrpc_env_init(&env); #ifdef XMLRPC_OLD_VERSION xmlrpc_server_abyss_init_registry(); registryP= xmlrpc_server_abyss_registry(); #else registryP = xmlrpc_registry_new(&env); #endif DateInit(); MIMETypeInit(); if (!ServerCreate(&srv, "XmlRpcServer", port, "", log_file)) { LM_ERR("failed to create XMLRPC server\n"); goto error; } #ifdef XMLRPC_OLD_VERSION if (!ServerAddHandler(&srv, xmlrpc_server_abyss_rpc2_handler)) { LM_ERR("failed to add handler to server\n"); goto error; } ServerDefaultHandler(&srv, xmlrpc_server_abyss_default_handler); #else xmlrpc_server_abyss_set_handlers2(&srv, "/RPC2", registryP); #endif ServerInit(&srv); if( init_mi_child() != 0 ) { LM_CRIT("failed to init the mi process\n"); goto error; } if ( xr_writer_init(read_buf_size) != 0 ) { LM_ERR("failed to init the reply writer\n"); goto error; } #ifdef XMLRPC_OLD_VERSION xmlrpc_env_init(&env); #endif if ( rpl_opt == 1 ) { xr_response = xmlrpc_build_value(&env, "()"); if ( env.fault_occurred ){ LM_ERR("failed to create an empty array: %s\n", env.fault_string); goto cleanup; } } if ( set_default_method(&env,registryP) != 0 ) { LM_ERR("failed to set up the default method!\n"); goto cleanup; } /* Run server abyss */ LM_INFO("starting xmlrpc server\n"); ServerRun(&srv); LM_CRIT("Server terminated!!!\n"); cleanup: xmlrpc_env_clean(&env); if ( xr_response ) xmlrpc_DECREF(xr_response); error: exit(-1); }
int main(int argc,char **argv) { const char * const name = argv[0]; TServer srv; char * p; const char * conffile; bool err; conffile = DEFAULT_CONF_FILE; /* initial value */ err = FALSE; /* initial value */ while (p=*(++argv)) { if ((*p=='-') && (*(p+1))) if (*(p+2)=='\0') switch (*(p+1)) { case 'c': argv++; if (*argv) conffile=*argv; else err=TRUE; break; default: err=TRUE; } else err=TRUE; else err=TRUE; }; if (err) { help(name); exit(1); }; DateInit(); MIMETypeInit(); ServerCreate(&srv,"HTTPServer",80,DEFAULT_DOCS,NULL); ConfReadServerFile(conffile,&srv); ServerAddHandler(&srv,HandleTime); ServerAddHandler(&srv,HandleDump); ServerAddHandler(&srv,HandleStatus); ServerAddHandler(&srv,HandleMIMEType); ServerInit(&srv); #ifdef _UNIX /* Catch various termination signals. */ signal(SIGTERM,sigterm); signal(SIGINT,sigterm); signal(SIGHUP,sigterm); signal(SIGUSR1,sigterm); /* Catch defunct children. */ signal(SIGCHLD,sigchld); #endif ServerDaemonize(srv); ServerRun(&srv); return 0; }