1 #ifndef LOGIN_SETTINGS_H
2 #define LOGIN_SETTINGS_H
3 
4 struct master_service_ssl_settings;
5 struct master_service_ssl_server_settings;
6 
7 struct login_settings {
8 	const char *login_trusted_networks;
9 	const char *login_source_ips;
10 	const char *login_greeting;
11 	const char *login_log_format_elements, *login_log_format;
12 	const char *login_access_sockets;
13 	const char *login_proxy_notify_path;
14 	const char *login_plugin_dir;
15 	const char *login_plugins;
16 	unsigned int login_proxy_timeout;
17 	unsigned int login_proxy_max_reconnects;
18 	unsigned int login_proxy_max_disconnect_delay;
19 	const char *login_proxy_rawlog_dir;
20 	const char *director_username_hash;
21 
22 	bool auth_ssl_require_client_cert;
23 	bool auth_ssl_username_from_cert;
24 
25 	bool disable_plaintext_auth;
26 	bool auth_verbose;
27 	bool auth_debug;
28 	bool auth_debug_passwords;
29 	bool verbose_proctitle;
30 
31 	unsigned int mail_max_userip_connections;
32 
33 	/* generated: */
34 	char *const *log_format_elements_split;
35 };
36 
37 extern const struct setting_parser_info **login_set_roots;
38 extern const struct setting_parser_info login_setting_parser_info;
39 
40 struct login_settings *
41 login_settings_read(pool_t pool,
42 		    const struct ip_addr *local_ip,
43 		    const struct ip_addr *remote_ip,
44 		    const char *local_name,
45 		    const struct master_service_ssl_settings **ssl_set_r,
46 		    const struct master_service_ssl_server_settings **ssl_server_set_r,
47 		    void ***other_settings_r) ATTR_NULL(2, 3, 4);
48 void login_settings_deinit(void);
49 
50 #endif
51