odyssey/sources/system.h

47 lines
756 B
C
Raw Normal View History

#ifndef ODYSSEY_SYSTEM_H
#define ODYSSEY_SYSTEM_H
/*
* Odyssey.
*
2018-04-04 13:19:58 +00:00
* Scalable PostgreSQL connection pooler.
*/
2020-07-26 07:58:15 +00:00
#include "macro.h"
#include "atomic.h"
#include "config.h"
#include "global.h"
#include "id.h"
typedef struct od_system_server od_system_server_t;
typedef struct od_system od_system_t;
struct od_system_server
{
machine_io_t *io;
machine_tls_t *tls;
od_config_listen_t *config;
struct addrinfo *addr;
od_global_t *global;
2020-07-08 15:10:13 +00:00
od_list_t link;
2020-07-26 07:58:15 +00:00
od_id_t sid;
volatile bool closed;
2020-08-08 16:00:31 +00:00
volatile bool pre_exited;
};
struct od_system
{
int64_t machine;
od_global_t *global;
};
void
od_system_init(od_system_t *);
int
od_system_start(od_system_t *, od_global_t *);
2020-05-25 09:47:13 +00:00
void
od_system_config_reload(od_system_t *);
#endif /* ODYSSEY_SYSTEM_H */