PostgreSQL Source Code  git master
backend_startup.h
Go to the documentation of this file.
1 /*-------------------------------------------------------------------------
2  *
3  * backend_startup.h
4  * prototypes for backend_startup.c.
5  *
6  *
7  * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
8  * Portions Copyright (c) 1994, Regents of the University of California
9  *
10  * src/include/tcop/backend_startup.h
11  *
12  *-------------------------------------------------------------------------
13  */
14 #ifndef BACKEND_STARTUP_H
15 #define BACKEND_STARTUP_H
16 
17 /* GUCs */
19 
20 /*
21  * CAC_state is passed from postmaster to the backend process, to indicate
22  * whether the connection should be accepted, or if the process should just
23  * send an error to the client and close the connection. Note that the
24  * connection can fail for various reasons even if postmaster passed CAC_OK.
25  */
26 typedef enum CAC_state
27 {
35 
36 /* Information passed from postmaster to backend process in 'startup_data' */
37 typedef struct BackendStartupData
38 {
41 
42 extern void BackendMain(char *startup_data, size_t startup_data_len) pg_attribute_noreturn();
43 
44 #endif /* BACKEND_STARTUP_H */
struct BackendStartupData BackendStartupData
void BackendMain(char *startup_data, size_t startup_data_len) pg_attribute_noreturn()
CAC_state
@ CAC_TOOMANY
@ CAC_OK
@ CAC_RECOVERY
@ CAC_NOTCONSISTENT
@ CAC_STARTUP
@ CAC_SHUTDOWN
PGDLLIMPORT bool Trace_connection_negotiation
#define PGDLLIMPORT
Definition: c.h:1316
#define pg_attribute_noreturn()
Definition: c.h:217
CAC_state canAcceptConnections