int main( int argc, char *argv[] ) { const short PORT = argc > 1 ? atoi(argv[1]) : 1234; int s = udp_init_socket( PORT, argc > 2 ? argv[2] : "localhost" ); if( s >= 0 ) { close( s ); } else warn( "udp_init_socket( %d )", PORT ); return EXIT_SUCCESS; }
char TOS_COMMAND(UART_PACKET_INIT)(){ VAR(state) = 0; VAR(rec_ptr) = (char*)&VAR(buffer); #ifdef FULLPC udp_init_socket(); printf("UART Packet handler initialized.\n"); #endif TOS_CALL_COMMAND(UART_PACKET_SUB_INIT)(); return 1; }
char TOS_COMMAND(UART_INIT) () { #ifndef FULLPC outp(12, UBRR); inp(UDR); outp(0xd8, UCR); sei(); #else udp_init_socket(); printf("UART initialized\n"); #endif VAR(state) = 0; return 1; }
/* main function */ int main(int argc, char ** argv){ if(argc == 2) config_file[0] = argv[1]; else config_file[0] = "opencp.conf"; if(!udp_init_socket()) exit(0); signal(SIGHUP, reconfigure); reconfigure(SIGHUP); list_db(ms_db->lisp_db4); list_db(ms_db->lisp_db6); list_site(site_db); plumb(); exit(EXIT_SUCCESS); }
int main(int argc, char ** argv){ config_file[0] = "opencp.conf"; int c; opterr = 0; _daemon = 0; while ((c = getopt (argc, argv, "df:")) != -1){ switch (c){ case 'd': _daemon = 1; break; case 'f': config_file[0] = optarg; break; case '?': if (optopt == 'f') fprintf (stderr, "Option -%c requires an argument.\n", optopt); else if (isprint (optopt)) fprintf (stderr, "Unknown option `-%c'.\n", optopt); else fprintf (stderr, "Unknown option character `\\x%x'.\n", optopt); return 1; default: abort (); } } if(_daemon){ pid_t pid; /* Clone child from ourselves */ pid = fork(); if (pid < 0) { exit(EXIT_FAILURE); } /* pid > 0, we are the parent, exit */ if (pid > 0) { exit(EXIT_SUCCESS); } /* now I'm child */ FILE *fpid; pid = getpid(); printf("my pid is %d\n",pid); fpid = fopen("/var/run/opencp.pid", "w"); fprintf(fpid,"%d",pid); fclose(fpid); } if(_daemon){ flog = fopen("/var/log/opencp.log","a"); signal(SIGUSR1, reopenlog); }else{ flog = NULL; } //signal(SIGHUP, reconfigure); reconfigure(SIGHUP); if(!udp_init_socket()) exit(0); if(_daemon){ fflush(stdout); //close(STDOUT_FILENO); //close(STDIN_FILENO); //close(STDERR_FILENO); } list_db(ms_db->lisp_db4); list_db(ms_db->lisp_db6); list_site(site_db); plumb(); fclose(flog); exit(EXIT_SUCCESS); }