Example #1
0
void
logger_stop_all (int write_info_line)
{
    while (logger_buffers)
    {
        logger_stop (logger_buffers, write_info_line);
    }
}
Example #2
0
void
zdb_finalize()
{
    if(!zdb_init_done)
    {
        return;
    }

    zdb_init_done = FALSE;

#if ZDB_DNSSEC_SUPPORT != 0
    dnssec_keystore_destroy();
    dnssec_keystore_resetpath();
#endif

#if ZDB_OPENSSL_SUPPORT!=0

    ERR_remove_state(0);

    /* Init openssl */

    CRYPTO_set_locking_callback(NULL);
    CRYPTO_set_id_callback(NULL);

    int i;

    for(i = 0; i < ssl_mutex_count; i++)
    {
        pthread_mutex_destroy(&ssl_mutex[i]);
    }

    free(ssl_mutex);

    ENGINE_cleanup();

#endif

    logger_stop();

#if ZDB_USE_THREADPOOL != 0
    /*
     *  The default value for the database.
     *  This initialization will do nothing if it has already been done.
     *
     *  The server will have to do it before calling zdb_init();
     *
     */

    if(thread_pool_initialized_by_zdb)
    {
        thread_pool_destroy();
    }
#endif

}
Example #3
0
int
logger_buffer_closing_signal_cb (void *data, const char *signal,
                                 const char *type_data, void *signal_data)
{
    /* make C compiler happy */
    (void) data;
    (void) signal;
    (void) type_data;

    logger_stop (logger_buffer_search_buffer (signal_data), 1);

    return WEECHAT_RC_OK;
}
Example #4
0
void fc_landing()
{
	gui_dialog_set_P(PSTR("Landing"), PSTR(""), GUI_STYLE_STATS, fc_landing_cb);
	fc_landing_old_gui_task = gui_task;
	gui_switch_task(GUI_DIALOG);

	fc.flight_state = FLIGHT_LAND;

	fc.flight_timer = task_get_ms_tick() - fc.flight_timer;

	audio_off();

	logger_stop();
}
Example #5
0
File: main.c Project: bmoscon/Rogue
int main(int argc, char* argv[])
{
    state_st state = {0};
  
    // set locale, otherwise we cant use unicode characters for the walls
    setlocale(LC_ALL, "");

    // seed random #
    srand(time(NULL));

    // check for logging
    if (argc > 1) {
	if (!strcmp(argv[1], "--debug")) {
	    logger_set_level(LOGGER_LEVEL_DEBUG);
	} else if (!strcmp(argv[1], "--verbose")) {
	    logger_set_level(LOGGER_LEVEL_VERBOSE);
	} else if (!strcmp(argv[1], "--warn")) {
	    logger_set_level(LOGGER_LEVEL_WARN);
	} else if (!strcmp(argv[1], "--error")) {
	    logger_set_level(LOGGER_LEVEL_ERROR);
	}
    }

    // set up logger. If no level has been set this call will do nothing. 
    logger_init();
    
    // set up game state
    game_init(&state);

    // welcome screen. get rogue's name, roll rogue
    welcome(&state);

    // game loop
    do {
	
        // draw
	draw(&state);
    
	// input
	input_handler(&state);
    
    } while(state.running);
 
    endwin();
  
    free_state(&state);
    logger_stop();
    return (EXIT_SUCCESS);
}
Example #6
0
void
logger_start_buffer (struct t_gui_buffer *buffer, int write_info_line)
{
    struct t_logger_buffer *ptr_logger_buffer;
    int log_level, log_enabled;

    if (!buffer)
        return;

    log_level = logger_get_level_for_buffer (buffer);
    log_enabled =  weechat_config_boolean (logger_config_file_auto_log)
        && (log_level > 0);

    ptr_logger_buffer = logger_buffer_search_buffer (buffer);

    /* logging is disabled for buffer */
    if (!log_enabled)
    {
        /* stop logger if it is active */
        if (ptr_logger_buffer)
            logger_stop (ptr_logger_buffer, 1);
    }
    else
    {
        /* logging is enabled for buffer */
        if (ptr_logger_buffer)
            ptr_logger_buffer->log_level = log_level;
        else
        {
            ptr_logger_buffer = logger_buffer_add (buffer, log_level);

            if (ptr_logger_buffer)
            {
                if (ptr_logger_buffer->log_filename)
                {
                    if (ptr_logger_buffer->log_file)
                    {
                        fclose (ptr_logger_buffer->log_file);
                        ptr_logger_buffer->log_file = NULL;
                    }
                }
            }
        }
        if (ptr_logger_buffer)
            ptr_logger_buffer->write_start_info_line = write_info_line;
    }
}
Example #7
0
int
logger_stop_signal_cb (void *data, const char *signal, const char *type_data,
                       void *signal_data)
{
    struct t_logger_buffer *ptr_logger_buffer;

    /* make C compiler happy */
    (void) data;
    (void) signal;
    (void) type_data;

    ptr_logger_buffer = logger_buffer_search_buffer (signal_data);
    if (ptr_logger_buffer)
        logger_stop (ptr_logger_buffer, 0);

    return WEECHAT_RC_OK;
}
Example #8
0
void
logger_adjust_log_filenames ()
{
    struct t_infolist *ptr_infolist;
    struct t_logger_buffer *ptr_logger_buffer;
    struct t_gui_buffer *ptr_buffer;
    char *log_filename;

    ptr_infolist = weechat_infolist_get ("buffer", NULL, NULL);
    if (ptr_infolist)
    {
        while (weechat_infolist_next (ptr_infolist))
        {
            ptr_buffer = weechat_infolist_pointer (ptr_infolist, "pointer");
            ptr_logger_buffer = logger_buffer_search_buffer (ptr_buffer);
            if (ptr_logger_buffer && ptr_logger_buffer->log_filename)
            {
                log_filename = logger_get_filename (ptr_logger_buffer->buffer);
                if (log_filename)
                {
                    if (strcmp (log_filename, ptr_logger_buffer->log_filename) != 0)
                    {
                        /*
                         * log filename has changed (probably due to day
                         * change),then we'll use new filename
                         */
                        logger_stop (ptr_logger_buffer, 1);
                        logger_start_buffer (ptr_buffer, 1);
                    }
                    free (log_filename);
                }
            }
        }
        weechat_infolist_free (ptr_infolist);
    }
}
Example #9
0
File: main.c Project: bmoscon/Rogue
static void game_init(state_st *state)
{
    log_func_enter;

    int i;

    // set up windows
    state->game = init_gamew();
    state->help = init_helpw();
    state->inventory = init_inventoryw();

    if (!state->game || !state->help || !state->inventory) {
	endwin();
	fprintf(stderr, "%s:%d - %s() - Failed to create window!\n", __FILE__, __LINE__, __func__);
	log_error("Window creation failed, aborting");
	logger_stop();
	free_state(state); 
	exit(EXIT_FAILURE);
    }

    if (LINES < MIN_ROW || COLS < MIN_COL) {
	endwin();
	fprintf(stderr, "Your terminal is too small. Minimum supported dimensions are %dx%d\n", 
		MIN_COL, MIN_ROW);
	log_error("Terminal size too small, aborting");
	logger_stop();
	free_state(state); 
	exit(EXIT_FAILURE);
    }

    curs_set(0);

    if(has_colors() == false) {
	endwin();
	fprintf(stderr, "Your terminal does not support color\n");
	log_error("Terminal colors not supported, aborting");
	logger_stop();
	free_state(state); 
	exit(EXIT_FAILURE);
    }
    start_color();
    init_colors();
  
    // allow us to catch the arrow keys
    keypad(state->game, TRUE);

    // generate random names for items
    for (i = 0; i < NUM_SCROLLS; ++i) {
	state->scroll_names[i] = calloc(ITEM_NAME_MAX, sizeof(char));
	if (!state->scroll_names[i]) {
	    endwin();
	    fprintf(stderr, "%s:%d - %s() - out of memory\n", __FILE__, __LINE__, __func__);
	    log_error("malloc failed");
	    logger_stop();
	    free_state(state); 
	    exit(EXIT_FAILURE);
	}
    
	random_string(state->scroll_names[i], ITEM_NAME_MAX-1);
    }

    // randomize ring types
    rings_init(state);

    // randomize potion names
    potions_init(state);

    // randomize wand names
    wands_init(state);

    state->running = true;
    init_level(state);

    log_func_exit;
}
int webcam_run() {

#ifdef HAVE_CAMERA
    // Our mandatory renderers, ensures they are run first being registered last
    struct Node *n = cameras.l_head;
    while (list_isNode(n)) {
        CAMERA camera = (CAMERA) n;
        n = n->n_succ;
        // Put annotated last
        list_addTail(&camera->renderers.renderers, &create_annotatedrenderer()->node);
        // These go first
        list_addHead(&camera->renderers.renderers, &create_thumbnailrenderer()->node);
        list_addHead(&camera->renderers.renderers, &create_rawrenderer()->node);
    }
#endif

    // Now start the system up
    webserver_initialise(config);

#ifdef HAVE_CAMERA
    // Initialise the renderers
    n = cameras.l_head;
    while (list_isNode(n)) {
        CAMERA camera = (CAMERA) n;
        n = n->n_succ;
        imagerenderer_init(camera);
    }
#endif

    // Initialise the loggers
    logger_start();

    // Finish off configuring the webserver, default port etc
    webserver_set_defaults();

#ifdef HAVE_CAMERA
    n = cameras.l_head;
    while (list_isNode(n)) {
        CAMERA camera = (CAMERA) n;
        n = n->n_succ;
        imagerenderer_postinit(camera);
    }
#endif

    sensor_postinit();

    // The camera home page
    //create_homepage();

    // Start everything up
    webserver_start();

#ifdef HAVE_CAMERA
    camera_start();
#endif

    // Now the main loop, monitor for sensor updates
    //sensor_loop();
    while (1)
        sleep(60);

    // Shutdown - we never actually get here
    webserver_stop();
    logger_stop();

#ifdef HAVE_CAMERA
    camera_stop();
#endif

    return 0;
}