blob: 10ac3793274c486057070a4f21f60cdda2d8478b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
#ifndef AUTH_SETTINGS_H
#define AUTH_SETTINGS_H
struct master_service;
struct master_service_settings_output;
struct auth_passdb_settings {
const char *name;
const char *driver;
const char *args;
const char *default_fields;
const char *override_fields;
const char *mechanisms;
const char *username_filter;
const char *skip;
const char *result_success;
const char *result_failure;
const char *result_internalfail;
bool deny;
bool pass; /* deprecated, use result_success=continue instead */
bool master;
const char *auth_verbose;
};
struct auth_userdb_settings {
const char *name;
const char *driver;
const char *args;
const char *default_fields;
const char *override_fields;
const char *skip;
const char *result_success;
const char *result_failure;
const char *result_internalfail;
const char *auth_verbose;
};
struct auth_settings {
const char *mechanisms;
const char *realms;
const char *default_realm;
uoff_t cache_size;
unsigned int cache_ttl;
unsigned int cache_negative_ttl;
bool cache_verify_password_with_worker;
const char *username_chars;
const char *username_translation;
const char *username_format;
const char *master_user_separator;
const char *anonymous_username;
const char *krb5_keytab;
const char *gssapi_hostname;
const char *winbind_helper_path;
const char *proxy_self;
unsigned int failure_delay;
const char *policy_server_url;
const char *policy_server_api_header;
unsigned int policy_server_timeout_msecs;
const char *policy_hash_mech;
const char *policy_hash_nonce;
const char *policy_request_attributes;
bool policy_reject_on_fail;
bool policy_check_before_auth;
bool policy_check_after_auth;
bool policy_report_after_auth;
bool policy_log_only;
unsigned int policy_hash_truncate;
bool stats;
bool verbose, debug, debug_passwords;
const char *verbose_passwords;
bool ssl_require_client_cert;
bool ssl_username_from_cert;
bool use_winbind;
unsigned int worker_max_count;
/* settings that don't have auth_ prefix: */
ARRAY(struct auth_passdb_settings *) passdbs;
ARRAY(struct auth_userdb_settings *) userdbs;
const char *base_dir;
const char *ssl_client_ca_dir;
const char *ssl_client_ca_file;
bool verbose_proctitle;
unsigned int first_valid_uid;
unsigned int last_valid_uid;
unsigned int first_valid_gid;
unsigned int last_valid_gid;
/* generated: */
char username_chars_map[256];
char username_translation_map[256];
const char *const *realms_arr;
const struct ip_addr *proxy_self_ips;
};
extern const struct setting_parser_info auth_setting_parser_info;
extern struct auth_settings *global_auth_settings;
struct auth_settings *
auth_settings_read(const char *service, pool_t pool,
struct master_service_settings_output *output_r)
ATTR_NULL(1);
#endif
|