Cross Reference: master-service-private.h
xref
: /
dovecot
/
src
/
lib-master
/
master-service-private.h
Home
History
Annotate
Line#
Navigate
Download
Search
only in
./
master-service-private.h revision 86791365b10f45982c88e70f2eb94fd6c3fea151
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
#
ifndef
MASTER_SERVICE_PRIVATE_H
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
#
define
MASTER_SERVICE_PRIVATE_H
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
#
include
"
master-interface.h
"
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
#
include
"
master-service.h
"
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
struct
master_service_listener
{
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
struct
master_service
*
service
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
int
fd
;
7487ff578435377bbeefffdbfb78ca09ed1292df
Timo Sirainen
bool
ssl
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
struct
io
*
io
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
};
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
struct
master_service
{
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
struct
ioloop
*
ioloop
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
char
*
name
;
578ef2538ccf42e2a48234c24a8b709397101d88
Timo Sirainen
char
*
getopt_str
;
578ef2538ccf42e2a48234c24a8b709397101d88
Timo Sirainen
enum
master_service_flags
flags
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
int
argc
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
char
**
argv
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
const
char
*
version_string
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
const
char
*
config_path
;
d39a04db2f4d0599cb9b5f03a9aa10a3c234453c
Timo Sirainen
ARRAY_TYPE
(
const_string
)
config_overrides
;
01230de017cd273de41143d88e9c18df1243ae8a
Timo Sirainen
int
config_fd
;
01230de017cd273de41143d88e9c18df1243ae8a
Timo Sirainen
int
syslog_facility
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
7487ff578435377bbeefffdbfb78ca09ed1292df
Timo Sirainen
unsigned
int
socket_count
,
ssl_socket_count
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
struct
master_service_listener
*
listeners
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
struct
io
*
io_status_write
, *
io_status_error
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
unsigned
int
service_count_left
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
unsigned
int
total_available_count
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
struct
master_status
master_status
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
86791365b10f45982c88e70f2eb94fd6c3fea151
Timo Sirainen
void
(*
die_callback
)(
void
);
86791365b10f45982c88e70f2eb94fd6c3fea151
Timo Sirainen
struct
timeout
*
to_die
;
86791365b10f45982c88e70f2eb94fd6c3fea151
Timo Sirainen
6fdfa4d4cf14d1d7764d7faa8258f112e39c8dbe
Timo Sirainen
void
(*
avail_overflow_callback
)(
void
);
cf0ad1a0bddb0787f3d7b408a96d721a8b2a98a3
Timo Sirainen
struct
timeout
*
to_overflow_state
;
6fdfa4d4cf14d1d7764d7faa8258f112e39c8dbe
Timo Sirainen
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
master_service_connection_callback_t
*
callback
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
pool_t
set_pool
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
const
struct
master_service_settings
*
set
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
struct
setting_parser_context
*
set_parser
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
unsigned
int
keep_environment
:
1
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
unsigned
int
log_directly
:
1
;
d176f84ce5ca2073f4dfbafb457b9c74f6bf0d76
Timo Sirainen
unsigned
int
initial_status_sent
:
1
;
3f603ef00e35fca21605afa0ad8d76e94fee2b96
Timo Sirainen
unsigned
int
die_with_master
:
1
;
6fdfa4d4cf14d1d7764d7faa8258f112e39c8dbe
Timo Sirainen
unsigned
int
call_avail_overflow
:
1
;
cf0ad1a0bddb0787f3d7b408a96d721a8b2a98a3
Timo Sirainen
unsigned
int
delay_status_updates
:
1
;
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
};
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
6fdfa4d4cf14d1d7764d7faa8258f112e39c8dbe
Timo Sirainen
void
master_service_io_listeners_add
(
struct
master_service
*
service
);
6fdfa4d4cf14d1d7764d7faa8258f112e39c8dbe
Timo Sirainen
8d3278a82b964217d95c340ec6f82037cdc59d19
Timo Sirainen
#
endif