Pass | Half | Fail | Excluded | Total | ||||
---|---|---|---|---|---|---|---|---|
|
33.33% |
66.67% |
0.00% |
100% |
||||
|
3.31% |
96.69% |
0.00% |
100% |
||||
|
0.00% |
0.00% |
100.00% |
0.00% |
100% |
|||
|
0.00% |
100.00% |
0.00% |
100% |
||||
|
0.00% |
0.00% |
100.00% |
0.00% |
100% |
|||
|
0.00% |
0.00% |
0.00% |
0.00% |
100% |
|||
|
0.00% |
0.00% |
100.00% |
0.00% |
100% |
|||
|
0.00% |
0.00% |
100.00% |
0.00% |
100% |
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 | create_auth_basic_dir_config(apr_pool_t *p, char *d) |
42 | |
43 | p, sizeof(*conf)); |
44 | |
45 | conf-> : enter=1, leave=1 ->dir : modules/aaa/mod_auth_basic.c line=37 column=11 dir = : enter=1, leave=1 = d : modules/aaa/mod_auth_basic.c line=41 column=64 d; |
46 | |
47 | conf-> : enter=1, leave=1 ->authoritative : modules/aaa/mod_auth_basic.c line=38 column=9 authoritative = : enter=1, leave=1 = 1; |
48 | |
49 | return conf : modules/aaa/mod_auth_basic.c line=43 column=28 conf; |
50 | |
51 | |
52 | add_authn_provider(cmd_parms *cmd, void *config, |
53 | |
54 | |
55 | config; |
56 | |
57 | |
58 | newp = : pass=0 = apr_pcalloc(cmd : modules/aaa/mod_auth_basic.c line=52 column=50 cmd-> : enter=0, leave=0 ->pool : include/http_config.h line=291 column=17 pool, sizeof(authn_provider_list)); |
59 | newp-> : enter=0, leave=0 ->provider_name : modules/aaa/mod_auth.h line=71 column=17 provider_name = : enter=0, leave=0 = apr_pstrdup : enter=0, leave=0 apr_pstrdup : /usr/include/apr-1/apr_strings.h line=95 column=21 apr_pstrdup(cmd : modules/aaa/mod_auth_basic.c line=52 column=50 cmd-> : enter=0, leave=0 ->pool : include/http_config.h line=291 column=17 pool, arg : modules/aaa/mod_auth_basic.c line=53 column=51 arg); |
60 | |
61 | |
62 | newp-> : enter=0, leave=0 ->provider : modules/aaa/mod_auth.h line=72 column=27 provider = : enter=0, leave=0 = ap_lookup_provider : enter=0, leave=0 ap_lookup_provider : include/ap_provider.h line=64 column=20 ap_lookup_provider(AUTHN_PROVIDER_GROUP, |
63 | newp-> : enter=0, leave=0 ->provider_name : modules/aaa/mod_auth.h line=71 column=17 provider_name, "0"); |
64 | |
65 | if (newp : modules/aaa/mod_auth_basic.c line=56 column=26 newp-> : enter=0, leave=0 ->provider : modules/aaa/mod_auth.h line=72 column=27 provider == : true=0, false=0 == NULL) { |
66 | |
67 | |
68 | return apr_psprintf : enter=0, leave=0 apr_psprintf : /usr/include/apr-1/apr_strings.h line=170 column=28 apr_psprintf(cmd : modules/aaa/mod_auth_basic.c line=52 column=50 cmd-> : enter=0, leave=0 ->pool : include/http_config.h line=291 column=17 pool, |
69 | |
70 | newp-> : enter=0, leave=0 ->provider_name : modules/aaa/mod_auth.h line=71 column=17 provider_name); |
71 | |
72 | |
73 | if (! : true=0, false=0 !newp : modules/aaa/mod_auth_basic.c line=56 column=26 newp-> : enter=0, leave=0 ->provider : modules/aaa/mod_auth.h line=72 column=27 provider-> : enter=0, leave=0 ->check_password : modules/aaa/mod_auth.h line=57 column=20 check_password) { |
74 | |
75 | return apr_psprintf : enter=0, leave=0 apr_psprintf : /usr/include/apr-1/apr_strings.h line=170 column=28 apr_psprintf(cmd : modules/aaa/mod_auth_basic.c line=52 column=50 cmd-> : enter=0, leave=0 ->pool : include/http_config.h line=291 column=17 pool, |
76 | |
77 | newp-> : enter=0, leave=0 ->provider_name : modules/aaa/mod_auth.h line=71 column=17 provider_name); |
78 | |
79 | |
80 | |
81 | if (! : true=0, false=0 !conf : modules/aaa/mod_auth_basic.c line=55 column=28 conf-> : enter=0, leave=0 ->providers : modules/aaa/mod_auth_basic.c line=36 column=26 providers) { |
82 | conf-> : enter=0, leave=0 ->providers : modules/aaa/mod_auth_basic.c line=36 column=26 providers = : enter=0, leave=0 = newp : modules/aaa/mod_auth_basic.c line=56 column=26 newp; |
83 | |
84 | |
85 | conf-> : enter=0, leave=0 ->providers : modules/aaa/mod_auth_basic.c line=36 column=26 providers; |
86 | |
87 | while (last : modules/aaa/mod_auth_basic.c line=85 column=30 last-> : enter=0, leave=0 ->next : modules/aaa/mod_auth.h line=73 column=26 next) { |
88 | last = : pass=0 = last : modules/aaa/mod_auth_basic.c line=85 column=30 last-> : enter=0, leave=0 ->next : modules/aaa/mod_auth.h line=73 column=26 next; |
89 | |
90 | last-> : enter=0, leave=0 ->next : modules/aaa/mod_auth.h line=73 column=26 next = : enter=0, leave=0 = newp : modules/aaa/mod_auth_basic.c line=56 column=26 newp; |
91 | |
92 | |
93 | return NULL; |
94 | |
95 | |
96 | |
97 | |
98 | add_authn_provider, NULL, OR_AUTHCFG, |
99 | |
100 | ap_set_flag_slot, |
101 | authoritative), |
102 | |
103 | |
104 | |
105 | |
106 | |
107 | |
108 | |
109 | |
110 | |
111 | |
112 | |
113 | |
114 | |
115 | |
116 | |
117 | |
118 | |
119 | |
120 | note_basic_auth_failure(request_rec *r) |
121 | |
122 | apr_table_setn : /usr/include/apr-1/apr_tables.h line=282 column=19 apr_table_setn(r : modules/aaa/mod_auth_basic.c line=120 column=50 r-> : enter=0, leave=0 ->err_headers_out : include/httpd.h line=906 column=18 err_headers_out, |
123 | == r : modules/aaa/mod_auth_basic.c line=120 column=50 r-> : enter=0, leave=0 ->proxyreq : include/httpd.h line=806 column=9 proxyreq) conditional operator : true=0, false=0 ? "Proxy-Authenticate" |
124 | |
125 | apr_pstrcat : /usr/include/apr-1/apr_strings.h line=139 column=28 apr_pstrcat(r : modules/aaa/mod_auth_basic.c line=120 column=50 r-> : enter=0, leave=0 ->pool : include/httpd.h line=780 column=17 pool, "Basic realm=\"", ap_auth_name : enter=0, leave=0 ap_auth_name : include/http_core.h line=317 column=26 ap_auth_name(r : modules/aaa/mod_auth_basic.c line=120 column=50 r), |
126 | |
127 | |
128 | |
129 | get_basic_auth(request_rec *r, const char **user, |
130 | |
131 | |
132 | |
133 | |
134 | |
135 | |
136 | |
137 | auth_line = : pass=0 = apr_table_get : enter=0, leave=0 apr_table_get : /usr/include/apr-1/apr_tables.h line=258 column=27 apr_table_get(r : modules/aaa/mod_auth_basic.c line=129 column=40 r-> : enter=0, leave=0 ->headers_in : include/httpd.h line=901 column=18 headers_in, (PROXYREQ_PROXY == : true=0, false=0 == r : modules/aaa/mod_auth_basic.c line=129 column=40 r-> : enter=0, leave=0 ->proxyreq : include/httpd.h line=806 column=9 proxyreq) |
138 | ? "Proxy-Authorization" |
139 | |
140 | |
141 | if (! : true=0, false=0 !auth_line : modules/aaa/mod_auth_basic.c line=132 column=17 auth_line) { |
142 | note_basic_auth_failure : modules/aaa/mod_auth_basic.c line=120 column=13 note_basic_auth_failure(r : modules/aaa/mod_auth_basic.c line=129 column=40 r); |
143 | return HTTP_UNAUTHORIZED; |
144 | |
145 | |
146 | if (strcasecmp : enter=0, leave=0 strcasecmp : /usr/include/string.h line=536 column=12 strcasecmp(ap_getword : enter=0, leave=0 ap_getword : include/httpd.h line=1299 column=20 ap_getword(r : modules/aaa/mod_auth_basic.c line=129 column=40 r-> : enter=0, leave=0 ->pool : include/httpd.h line=780 column=17 pool, &auth_line : modules/aaa/mod_auth_basic.c line=132 column=17 auth_line, ' '), "Basic")) { |
147 | |
148 | ap_log_rerror : include/http_log.h line=219 column=18 ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r : modules/aaa/mod_auth_basic.c line=129 column=40 r, |
149 | r-> : enter=0, leave=0 ->uri : include/httpd.h line=946 column=11 uri); |
150 | note_basic_auth_failure : modules/aaa/mod_auth_basic.c line=120 column=13 note_basic_auth_failure(r : modules/aaa/mod_auth_basic.c line=129 column=40 r); |
151 | return HTTP_UNAUTHORIZED; |
152 | |
153 | |
154 | |
155 | while (apr_isspace(* dereference : enter=0, leave=0 *auth_line : modules/aaa/mod_auth_basic.c line=132 column=17 auth_line)) { |
156 | auth_line++ : pass=0 ++; |
157 | |
158 | |
159 | decoded_line = : pass=0 = apr_palloc : enter=0, leave=0 apr_palloc : /usr/include/apr-1/apr_pools.h line=419 column=21 apr_palloc(r : modules/aaa/mod_auth_basic.c line=129 column=40 r-> : enter=0, leave=0 ->pool : include/httpd.h line=780 column=17 pool, apr_base64_decode_len : enter=0, leave=0 apr_base64_decode_len : /usr/include/apr-1/apr_base64.h line=88 column=18 apr_base64_decode_len(auth_line : modules/aaa/mod_auth_basic.c line=132 column=17 auth_line) + : pass=0 + 1); |
160 | length = : pass=0 = apr_base64_decode : enter=0, leave=0 apr_base64_decode : /usr/include/apr-1/apr_base64.h line=96 column=18 apr_base64_decode(decoded_line : modules/aaa/mod_auth_basic.c line=133 column=11 decoded_line, auth_line : modules/aaa/mod_auth_basic.c line=132 column=17 auth_line); |
161 | |
162 | decoded_line[length : modules/aaa/mod_auth_basic.c line=134 column=9 length] = : enter=0, leave=0 = '\0'; |
163 | |
164 | user = : enter=0, leave=0 = ap_getword_nulls : enter=0, leave=0 ap_getword_nulls : include/httpd.h line=1338 column=20 ap_getword_nulls(r : modules/aaa/mod_auth_basic.c line=129 column=40 r-> : enter=0, leave=0 ->pool : include/httpd.h line=780 column=17 pool, (const char**)&decoded_line : modules/aaa/mod_auth_basic.c line=133 column=11 decoded_line, ':'); |
165 | pw = : enter=0, leave=0 = decoded_line : modules/aaa/mod_auth_basic.c line=133 column=11 decoded_line; |
166 | |
167 | |
168 | r-> : enter=0, leave=0 ->user : include/httpd.h line=930 column=11 user = : enter=0, leave=0 = (char *) * dereference : enter=0, leave=0 *user : modules/aaa/mod_auth_basic.c line=129 column=56 user; |
169 | |
170 | return OK; |
171 | |
172 | |
173 | |
174 | |
175 | |
176 | authenticate_basic_user(request_rec *r) |
177 | |
178 | r-> : enter=0, leave=0 ->per_dir_config : include/httpd.h line=977 column=30 per_dir_config, |
179 | auth_basic_module); |
180 | |
181 | |
182 | |
183 | |
184 | |
185 | |
186 | current_auth = : pass=0 = ap_auth_type : enter=0, leave=0 ap_auth_type : include/http_core.h line=310 column=26 ap_auth_type(r : modules/aaa/mod_auth_basic.c line=176 column=49 r); |
187 | if (! : true=0, false=0 MC/DC independently affect : true=0, false=0 !current_auth : modules/aaa/mod_auth_basic.c line=180 column=39 current_auth || : true=0, false=0 || MC/DC independently affect : true=0, false=0 strcasecmp : enter=0, leave=0 strcasecmp : /usr/include/string.h line=536 column=12 strcasecmp(current_auth : modules/aaa/mod_auth_basic.c line=180 column=39 current_auth, "Basic")) { |
188 | return DECLINED; |
189 | |
190 | |
191 | |
192 | if (! : true=0, false=0 !ap_auth_name : enter=0, leave=0 ap_auth_name : include/http_core.h line=317 column=26 ap_auth_name(r : modules/aaa/mod_auth_basic.c line=176 column=49 r)) { |
193 | ap_log_rerror : include/http_log.h line=219 column=18 ap_log_rerror(APLOG_MARK, APLOG_ERR, |
194 | r, "need AuthName: %s", r : modules/aaa/mod_auth_basic.c line=176 column=49 r-> : enter=0, leave=0 ->uri : include/httpd.h line=946 column=11 uri); |
195 | return HTTP_INTERNAL_SERVER_ERROR; |
196 | |
197 | |
198 | r-> : enter=0, leave=0 ->ap_auth_type : include/httpd.h line=932 column=11 ap_auth_type = : enter=0, leave=0 = "Basic"; |
199 | |
200 | res = : pass=0 = get_basic_auth : enter=0, leave=0 get_basic_auth : modules/aaa/mod_auth_basic.c line=129 column=12 get_basic_auth(r : modules/aaa/mod_auth_basic.c line=176 column=49 r, &sent_user : modules/aaa/mod_auth_basic.c line=180 column=17 sent_user, &sent_pw : modules/aaa/mod_auth_basic.c line=180 column=29 sent_pw); |
201 | if (res : modules/aaa/mod_auth_basic.c line=181 column=9 res) { |
202 | return res : modules/aaa/mod_auth_basic.c line=181 column=9 res; |
203 | |
204 | |
205 | current_provider = : pass=0 = conf : modules/aaa/mod_auth_basic.c line=178 column=28 conf-> : enter=0, leave=0 ->providers : modules/aaa/mod_auth_basic.c line=36 column=26 providers; |
206 | |
207 | |
208 | |
209 | |
210 | |
211 | |
212 | if (! : true=0, false=0 !current_provider : modules/aaa/mod_auth_basic.c line=183 column=26 current_provider) { |
213 | provider = : pass=0 = ap_lookup_provider : enter=0, leave=0 ap_lookup_provider : include/ap_provider.h line=64 column=20 ap_lookup_provider(AUTHN_PROVIDER_GROUP, |
214 | |
215 | |
216 | if (! : true=0, false=0 MC/DC independently affect : true=0, false=0 !provider : modules/aaa/mod_auth_basic.c line=207 column=31 provider || : true=0, false=0 || ! : true=0, false=0 MC/DC independently affect : true=0, false=0 !provider : modules/aaa/mod_auth_basic.c line=207 column=31 provider-> : enter=0, leave=0 ->check_password : modules/aaa/mod_auth.h line=57 column=20 check_password) { |
217 | ap_log_rerror : include/http_log.h line=219 column=18 ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r : modules/aaa/mod_auth_basic.c line=176 column=49 r, |
218 | |
219 | auth_result = : pass=0 = AUTH_GENERAL_ERROR : modules/aaa/mod_auth.h line=50 column=5 AUTH_GENERAL_ERROR; |
220 | break; |
221 | |
222 | apr_table_setn : /usr/include/apr-1/apr_tables.h line=282 column=19 apr_table_setn(r : modules/aaa/mod_auth_basic.c line=176 column=49 r-> : enter=0, leave=0 ->notes : include/httpd.h line=910 column=18 notes, AUTHN_PROVIDER_NAME_NOTE, AUTHN_DEFAULT_PROVIDER); |
223 | |
224 | |
225 | provider = : pass=0 = current_provider : modules/aaa/mod_auth_basic.c line=183 column=26 current_provider-> : enter=0, leave=0 ->provider : modules/aaa/mod_auth.h line=72 column=27 provider; |
226 | apr_table_setn : /usr/include/apr-1/apr_tables.h line=282 column=19 apr_table_setn(r : modules/aaa/mod_auth_basic.c line=176 column=49 r-> : enter=0, leave=0 ->notes : include/httpd.h line=910 column=18 notes, AUTHN_PROVIDER_NAME_NOTE, current_provider : modules/aaa/mod_auth_basic.c line=183 column=26 current_provider-> : enter=0, leave=0 ->provider_name : modules/aaa/mod_auth.h line=71 column=17 provider_name); |
227 | |
228 | |
229 | |
230 | auth_result = : pass=0 = check_password : enter=0, leave=0 provider : modules/aaa/mod_auth_basic.c line=207 column=31 check_password : modules/aaa/mod_auth.h line=57 column=20 provider-> : enter=0, leave=0 ->check_password : modules/aaa/mod_auth.h line=57 column=20 check_password(r : modules/aaa/mod_auth_basic.c line=176 column=49 r, sent_user : modules/aaa/mod_auth_basic.c line=180 column=17 sent_user, sent_pw : modules/aaa/mod_auth_basic.c line=180 column=29 sent_pw); |
231 | |
232 | apr_table_unset : /usr/include/apr-1/apr_tables.h line=290 column=19 apr_table_unset(r : modules/aaa/mod_auth_basic.c line=176 column=49 r-> : enter=0, leave=0 ->notes : include/httpd.h line=910 column=18 notes, AUTHN_PROVIDER_NAME_NOTE); |
233 | |
234 | |
235 | if (auth_result : modules/aaa/mod_auth_basic.c line=182 column=18 auth_result != : true=0, false=0 != AUTH_USER_NOT_FOUND : modules/aaa/mod_auth.h line=49 column=5 AUTH_USER_NOT_FOUND) { |
236 | break; |
237 | |
238 | |
239 | |
240 | if (! : true=0, false=0 !conf : modules/aaa/mod_auth_basic.c line=178 column=28 conf-> : enter=0, leave=0 ->providers : modules/aaa/mod_auth_basic.c line=36 column=26 providers) { |
241 | break; |
242 | |
243 | |
244 | current_provider = : pass=0 = current_provider : modules/aaa/mod_auth_basic.c line=183 column=26 current_provider-> : enter=0, leave=0 ->next : modules/aaa/mod_auth.h line=73 column=26 next; |
245 | while (current_provider : modules/aaa/mod_auth_basic.c line=183 column=26 current_provider); |
246 | |
247 | if (auth_result : modules/aaa/mod_auth_basic.c line=182 column=18 auth_result != : true=0, false=0 != AUTH_GRANTED : modules/aaa/mod_auth.h line=47 column=5 AUTH_GRANTED) { |
248 | |
249 | |
250 | |
251 | if (! : true=0, false=0 MC/DC independently affect : true=0, false=0 !(conf : modules/aaa/mod_auth_basic.c line=178 column=28 conf-> : enter=0, leave=0 ->authoritative : modules/aaa/mod_auth_basic.c line=38 column=9 authoritative) && : true=0, false=0 && auth_result : modules/aaa/mod_auth_basic.c line=182 column=18 auth_result != : true=0, false=0 MC/DC independently affect : true=0, false=0 != AUTH_DENIED : modules/aaa/mod_auth.h line=46 column=5 AUTH_DENIED) { |
252 | return DECLINED; |
253 | |
254 | |
255 | switch (auth_result : modules/aaa/mod_auth_basic.c line=182 column=18 auth_result) { |
256 | case AUTH_DENIED: |
257 | ap_log_rerror : include/http_log.h line=219 column=18 ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r : modules/aaa/mod_auth_basic.c line=176 column=49 r, |
258 | |
259 | |
260 | sent_user, r : modules/aaa/mod_auth_basic.c line=176 column=49 r-> : enter=0, leave=0 ->uri : include/httpd.h line=946 column=11 uri); |
261 | return_code = : pass=0 = HTTP_UNAUTHORIZED; |
262 | break; |
263 | case AUTH_USER_NOT_FOUND: |
264 | ap_log_rerror : include/http_log.h line=219 column=18 ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r : modules/aaa/mod_auth_basic.c line=176 column=49 r, |
265 | sent_user, r : modules/aaa/mod_auth_basic.c line=176 column=49 r-> : enter=0, leave=0 ->uri : include/httpd.h line=946 column=11 uri); |
266 | return_code = : pass=0 = HTTP_UNAUTHORIZED; |
267 | break; |
268 | case AUTH_GENERAL_ERROR: |
269 | default: |
270 | |
271 | |
272 | |
273 | return_code = : pass=0 = HTTP_INTERNAL_SERVER_ERROR; |
274 | break; |
275 | |
276 | |
277 | |
278 | if (return_code : modules/aaa/mod_auth_basic.c line=248 column=13 return_code == : true=0, false=0 == HTTP_UNAUTHORIZED) { |
279 | note_basic_auth_failure : modules/aaa/mod_auth_basic.c line=120 column=13 note_basic_auth_failure(r : modules/aaa/mod_auth_basic.c line=176 column=49 r); |
280 | |
281 | return return_code : modules/aaa/mod_auth_basic.c line=248 column=13 return_code; |
282 | |
283 | |
284 | return OK; |
285 | |
286 | |
287 | register_hooks(apr_pool_t *p) |
288 | |
289 | ap_hook_check_user_id : modules/aaa/ authenticate_basic_user,NULL,NULL,APR_HOOK_MIDDLE); |
290 | |
291 | |
292 | |
293 | |
294 | |
295 | create_auth_basic_dir_config, /* dir config creater */ |
296 | |
297 | |
298 | |
299 | auth_basic_cmds, /* command apr_table_t */ |
300 | register_hooks /* register hooks */ |
301 | |
302 |