Пример #1
0
static PHP_GINIT_FUNCTION(apm)
{
	apm_driver_entry **next;
	apm_globals->buffer = NULL;
	apm_globals->drivers = (apm_driver_entry *) malloc(sizeof(apm_driver_entry));
	apm_globals->drivers->driver.insert_event = (void (*)(int, char *, uint, char *, char *, char *, char *, char *, char *, char *, char * TSRMLS_DC)) NULL;
	apm_globals->drivers->driver.minit = (int (*)(int)) NULL;
	apm_globals->drivers->driver.rinit = (int (*)()) NULL;
	apm_globals->drivers->driver.mshutdown = (int (*)()) NULL;
	apm_globals->drivers->driver.rshutdown = (int (*)()) NULL;
	apm_globals->drivers->driver.insert_slow_request = (void (*)(float, char *)) NULL;

	next = &apm_globals->drivers->next;
	*next = (apm_driver_entry *) NULL;
#ifdef APM_DRIVER_SQLITE3
	*next = apm_driver_sqlite3_create();
	next = &(*next)->next;
#endif
#ifdef APM_DRIVER_MYSQL
	*next = apm_driver_mysql_create();
	next = &(*next)->next;
#endif

	apm_globals->events = (apm_event_entry *) malloc(sizeof(apm_event_entry));
	apm_globals->events->event.type = 0;
	apm_globals->events->event.error_filename = NULL;
	apm_globals->events->event.error_lineno = 0;
	apm_globals->events->event.msg = NULL;
	apm_globals->events->event.trace = NULL;
	apm_globals->events->next = NULL;
	apm_globals->last_event = &apm_globals->events;
}
Пример #2
0
static PHP_GINIT_FUNCTION(apm)
{
	apm_driver_entry **next;
	apm_globals->buffer = NULL;
	apm_globals->drivers = (apm_driver_entry *) malloc(sizeof(apm_driver_entry));
	apm_globals->drivers->driver.process_event = (void (*)(PROCESS_EVENT_ARGS)) NULL;
	apm_globals->drivers->driver.process_stats = (void (*)() TSRMLS_DC) NULL;
	apm_globals->drivers->driver.minit = (int (*)(int)) NULL;
	apm_globals->drivers->driver.rinit = (int (*)()) NULL;
	apm_globals->drivers->driver.mshutdown = (int (*)()) NULL;
	apm_globals->drivers->driver.rshutdown = (int (*)()) NULL;

	next = &apm_globals->drivers->next;
	*next = (apm_driver_entry *) NULL;
#ifdef APM_DRIVER_SQLITE3
	*next = apm_driver_sqlite3_create();
	next = &(*next)->next;
#endif
#ifdef APM_DRIVER_MYSQL
	*next = apm_driver_mysql_create();
	next = &(*next)->next;
#endif
#ifdef APM_DRIVER_STATSD
	*next = apm_driver_statsd_create();
	next = &(*next)->next;
#endif
#ifdef APM_DRIVER_SOCKET
	*next = apm_driver_socket_create();
	next = &(*next)->next;
#endif
}