int main(int argc, char *argv[]) { struct tagger tagger; int result = 0; argv0 = argv[0]; /* internationalization support */ # if defined(ENABLE_NLS) setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); # endif /* initialize and get options */ tagger_init(&tagger); get_options(argc, argv, &tagger); /* main processing */ if (tagger_run(&tagger, argc - optind, (char const **) &argv[optind]) == -1) result = 4; /* finish up */ tagger_finish(&tagger); return result; }
int main(int argc, char* argv[]){ struct qz_config* conf = init_config(); tagger_pid = tagger_init(conf, argv); printf( "tagger_pid = %d\n", tagger_pid); signal( SIGTERM, cleanup ); int j; xmlHashTablePtr ht = xmlHashCreate(NBRTESTS); struct handler_args hargs[NBRTESTS]; struct session* s; const char* kw[] = { "host", "dbname", "user", "password", "application_name", NULL }; const char* vals[] = { "localhost", "info", "qz", "42", "qztest", NULL }; const char* parts[] = { "qz", "one", "two", "three", NULL }; for(j=0; j<NBRTESTS; j++){ fprintf(stderr, "setup_session %d\n", j); hargs[j].log = fopen("testsession.log", "w"); hargs[j].conf = conf; hargs[j].uri_parts = parts; setup_session(&(hargs[j]), ht, conf); hargs[j].uri_parts = NULL; } s = session_from_hargs(&hargs[NBRTESTS-1], ht, conf); s->is_logged_in = true; s->logged_in_time = time(NULL); s = session_from_hargs(&hargs[NBRTESTS-2], ht, conf); s->is_logged_in = true; s->logged_in_time = time(NULL); s->conn = PQconnectdbParams(kw, vals, 0); s = session_from_hargs(&hargs[NBRTESTS-3], ht, conf); s->is_logged_in = false; s->logged_in_time = time(NULL); s->conn = PQconnectdbParams(kw, vals, 0); for(j=0; j<NBRTESTS; j++){ s = session_from_hargs(&hargs[j], ht, conf); printf("session_state[%d]: %s\n", j, state_text( get_session_state(&(hargs[j])) )); //fclose( hargs[j].log ); } printf("sleeping\n"); sleep(5); printf("fin\n"); for(j=0; j<100; j++){ if (s->conn != NULL){ PQfinish(s->conn); s->conn = NULL; } } kill( tagger_pid, 15); int status; waitpid(tagger_pid, &status, 0); fprintf(stderr, "killed tagger pid %d waitpid status = %d\n", tagger_pid, status); return 0; }