| Pass | Half | Fail | Excluded | Total | ||||
|---|---|---|---|---|---|---|---|---|
|
|
40.00% |
60.00% |
0.00% |
100% |
||||
|
|
4.03% |
95.97% |
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% |
100.00% |
0.00% |
100% |
|||
|
|
0.00% |
0.00% |
100.00% |
0.00% |
100% |
|||
|
|
0.00% |
0.00% |
0.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 | |
| 42 | |
| 43 | |
| 44 | |
| 45 | |
| 46 | |
| 47 | |
| 48 | |
| 49 | |
| 50 | |
| 51 | |
| 52 | |
| 53 | |
| 54 | |
| 55 | |
| 56 | |
| 57 | |
| 58 | |
| 59 | |
| 60 | |
| 61 | |
| 62 | |
| 63 | |
| 64 | create_authz_groupfile_dir_config(apr_pool_t *p, char *d) |
| 65 | |
| 66 | apr_palloc : /usr/include/apr-1/apr_pools.h line=419 column=21 apr_palloc(p : modules/aaa/mod_authz_groupfile.c line=64 column=60 p, sizeof(*conf)); |
| 67 | |
| 68 | conf-> : enter=1, leave=1 ->groupfile : modules/aaa/mod_authz_groupfile.c line=60 column=11 groupfile = : enter=1, leave=1 = NULL; |
| 69 | conf-> : enter=1, leave=1 ->authoritative : modules/aaa/mod_authz_groupfile.c line=61 column=9 authoritative = : enter=1, leave=1 = 1; /* keep the fortress secure by default */ |
| 70 | return conf : modules/aaa/mod_authz_groupfile.c line=66 column=33 conf; |
| 71 | |
| 72 | |
| 73 | set_authz_groupfile_slot(cmd_parms *cmd, void *offset, const char *f, |
| 74 | |
| 75 | |
| 76 | if (MC/DC independently affect : true=0, false=0 t : modules/aaa/mod_authz_groupfile.c line=74 column=46 t && : true=0, false=0 && MC/DC independently affect : true=0, false=0 strcmp : enter=0, leave=0 strcmp : /usr/include/string.h line=143 column=12 strcmp(t : modules/aaa/mod_authz_groupfile.c line=74 column=46 t, "standard")) { |
| 77 | return apr_pstrcat : enter=0, leave=0 apr_pstrcat : /usr/include/apr-1/apr_strings.h line=139 column=28 apr_pstrcat(cmd : modules/aaa/mod_authz_groupfile.c line=73 column=56 cmd-> : enter=0, leave=0 ->pool : include/http_config.h line=291 column=17 pool, "Invalid auth file type: ", t : modules/aaa/mod_authz_groupfile.c line=74 column=46 t, NULL); |
| 78 | |
| 79 | |
| 80 | return ap_set_file_slot : enter=0, leave=0 ap_set_file_slot : include/http_config.h line=533 column=33 ap_set_file_slot(cmd : modules/aaa/mod_authz_groupfile.c line=73 column=56 cmd, offset : modules/aaa/mod_authz_groupfile.c line=73 column=67 offset, f : modules/aaa/mod_authz_groupfile.c line=73 column=87 f); |
| 81 | |
| 82 | |
| 83 | |
| 84 | |
| 85 | set_authz_groupfile_slot, |
| 86 | groupfile), |
| 87 | |
| 88 | |
| 89 | ap_set_flag_slot, |
| 90 | |
| 91 | authoritative), |
| 92 | |
| 93 | |
| 94 | |
| 95 | |
| 96 | |
| 97 | |
| 98 | |
| 99 | |
| 100 | |
| 101 | groups_for_user(apr_pool_t *p, char *user, char *grpfile, |
| 102 | |
| 103 | |
| 104 | |
| 105 | apr_table_make : /usr/include/apr-1/apr_tables.h line=222 column=28 apr_table_make(p : modules/aaa/mod_authz_groupfile.c line=101 column=49 p, 15); |
| 106 | |
| 107 | |
| 108 | |
| 109 | |
| 110 | |
| 111 | |
| 112 | if ((status : modules/aaa/mod_authz_groupfile.c line=109 column=18 status = : pass=0 = ap_pcfg_openfile : enter=0, leave=0 ap_pcfg_openfile : include/http_config.h line=607 column=26 ap_pcfg_openfile(&f : modules/aaa/mod_authz_groupfile.c line=104 column=22 f, p : modules/aaa/mod_authz_groupfile.c line=101 column=49 p, grpfile : modules/aaa/mod_authz_groupfile.c line=101 column=70 grpfile)) != : true=0, false=0 != APR_SUCCESS) { |
| 113 | return status : modules/aaa/mod_authz_groupfile.c line=109 column=18 status ; |
| 114 | |
| 115 | |
| 116 | sp, p : modules/aaa/mod_authz_groupfile.c line=101 column=49 p); |
| 117 | |
| 118 | while (! : true=0, false=0 !(ap_cfg_getline : enter=0, leave=0 ap_cfg_getline : include/http_config.h line=633 column=17 ap_cfg_getline(l : modules/aaa/mod_authz_groupfile.c line=107 column=10 l, MAX_STRING_LEN, f : modules/aaa/mod_authz_groupfile.c line=104 column=22 f))) { |
| 119 | if ((l : modules/aaa/mod_authz_groupfile.c line=107 column=10 l[] : enter=0, leave=0 [0] == : true=0, false=0 MC/DC independently affect : true=0, false=0 == '#') || : true=0, false=0 || (! : true=0, false=0 MC/DC independently affect : true=0, false=0 !l : modules/aaa/mod_authz_groupfile.c line=107 column=10 l[] : enter=0, leave=0 [0])) { |
| 120 | continue; |
| 121 | |
| 122 | ll = : pass=0 = l : modules/aaa/mod_authz_groupfile.c line=107 column=10 l; |
| 123 | apr_pool_clear : /usr/include/apr-1/apr_pools.h line=356 column=19 apr_pool_clear(sp : modules/aaa/mod_authz_groupfile.c line=106 column=17 sp); |
| 124 | |
| 125 | group_name = : pass=0 = ap_getword : enter=0, leave=0 ap_getword : include/httpd.h line=1299 column=20 ap_getword(sp : modules/aaa/mod_authz_groupfile.c line=106 column=17 sp, &ll : modules/aaa/mod_authz_groupfile.c line=108 column=30 ll, ':'); |
| 126 | group_len = : pass=0 = strlen : enter=0, leave=0 strlen : /usr/include/string.h line=399 column=15 strlen(group_name : modules/aaa/mod_authz_groupfile.c line=108 column=17 group_name); |
| 127 | |
| 128 | while (MC/DC independently affect : true=0, false=0 group_len : modules/aaa/mod_authz_groupfile.c line=110 column=16 group_len && : true=0, false=0 && apr_isspace(* dereference : enter=0, leave=0 *(group_name : modules/aaa/mod_authz_groupfile.c line=108 column=17 group_name + : pass=0 + group_len : modules/aaa/mod_authz_groupfile.c line=110 column=16 group_len - : pass=0 - 1))) { |
| 129 | --group_len : modules/aaa/mod_authz_groupfile.c line=110 column=16 group_len; |
| 130 | |
| 131 | |
| 132 | while (ll : modules/aaa/mod_authz_groupfile.c line=108 column=30 ll[] : enter=0, leave=0 [0]) { |
| 133 | w = : pass=0 = ap_getword_conf : enter=0, leave=0 ap_getword_conf : include/httpd.h line=1358 column=20 ap_getword_conf(sp : modules/aaa/mod_authz_groupfile.c line=106 column=17 sp, &ll : modules/aaa/mod_authz_groupfile.c line=108 column=30 ll); |
| 134 | if (! : true=0, false=0 !strcmp : enter=0, leave=0 strcmp : /usr/include/string.h line=143 column=12 strcmp(w : modules/aaa/mod_authz_groupfile.c line=108 column=35 w, user : modules/aaa/mod_authz_groupfile.c line=101 column=58 user)) { |
| 135 | apr_table_setn : /usr/include/apr-1/apr_tables.h line=282 column=19 apr_table_setn(grps : modules/aaa/mod_authz_groupfile.c line=105 column=18 grps, apr_pstrmemdup : enter=0, leave=0 apr_pstrmemdup : /usr/include/apr-1/apr_strings.h line=109 column=21 apr_pstrmemdup(p : modules/aaa/mod_authz_groupfile.c line=101 column=49 p, group_name : modules/aaa/mod_authz_groupfile.c line=108 column=17 group_name, group_len : modules/aaa/mod_authz_groupfile.c line=110 column=16 group_len), |
| 136 | |
| 137 | break; |
| 138 | |
| 139 | |
| 140 | |
| 141 | ap_cfg_closefile : include/http_config.h line=647 column=17 ap_cfg_closefile(f : modules/aaa/mod_authz_groupfile.c line=104 column=22 f); |
| 142 | apr_pool_destroy : /usr/include/apr-1/apr_pools.h line=385 column=19 apr_pool_destroy(sp : modules/aaa/mod_authz_groupfile.c line=106 column=17 sp); |
| 143 | |
| 144 | out = : enter=0, leave=0 = grps : modules/aaa/mod_authz_groupfile.c line=105 column=18 grps; |
| 145 | return APR_SUCCESS; |
| 146 | |
| 147 | |
| 148 | |
| 149 | |
| 150 | check_user_access(request_rec *r) |
| 151 | |
| 152 | r-> : enter=0, leave=0 ->per_dir_config : include/httpd.h line=977 column=30 per_dir_config, |
| 153 | authz_groupfile_module); |
| 154 | r-> : enter=0, leave=0 ->user : include/httpd.h line=930 column=11 user; |
| 155 | r-> : enter=0, leave=0 ->method_number : include/httpd.h line=831 column=9 method_number; |
| 156 | |
| 157 | |
| 158 | |
| 159 | |
| 160 | ap_requires : include/http_core.h line=336 column=40 ap_requires(r : modules/aaa/mod_authz_groupfile.c line=150 column=43 r); |
| 161 | |
| 162 | |
| 163 | |
| 164 | |
| 165 | |
| 166 | |
| 167 | |
| 168 | if (! : true=0, false=0 !(conf : modules/aaa/mod_authz_groupfile.c line=152 column=33 conf-> : enter=0, leave=0 ->groupfile : modules/aaa/mod_authz_groupfile.c line=60 column=11 groupfile)) { |
| 169 | return DECLINED; |
| 170 | |
| 171 | |
| 172 | if (! : true=0, false=0 !reqs_arr : modules/aaa/mod_authz_groupfile.c line=160 column=31 reqs_arr) { |
| 173 | return DECLINED; /* XXX change from legacy */ |
| 174 | |
| 175 | |
| 176 | |
| 177 | if (! : true=0, false=0 !user : modules/aaa/mod_authz_groupfile.c line=154 column=11 user) { |
| 178 | return HTTP_INTERNAL_SERVER_ERROR; |
| 179 | |
| 180 | |
| 181 | reqs = : pass=0 = (require_line *)reqs_arr : modules/aaa/mod_authz_groupfile.c line=160 column=31 reqs_arr-> : enter=0, leave=0 ->elts : /usr/include/apr-1/apr_tables.h line=62 column=11 elts; |
| 182 | |
| 183 | for (x : modules/aaa/mod_authz_groupfile.c line=157 column=18 x = : pass=0 = 0; x : modules/aaa/mod_authz_groupfile.c line=157 column=18 x < : true=0, false=0 < reqs_arr : modules/aaa/mod_authz_groupfile.c line=160 column=31 reqs_arr-> : enter=0, leave=0 ->nelts : /usr/include/apr-1/apr_tables.h line=58 column=9 nelts; x : modules/aaa/mod_authz_groupfile.c line=157 column=18 x++ : pass=0 ++) { |
| 184 | |
| 185 | if (! : true=0, false=0 !(reqs : modules/aaa/mod_authz_groupfile.c line=161 column=19 reqs[] : enter=0, leave=0 [x : modules/aaa/mod_authz_groupfile.c line=157 column=18 x].method_mask : include/http_core.h line=300 column=17 method_mask & : pass=0 & (AP_METHOD_BIT << : pass=0 << m : modules/aaa/mod_authz_groupfile.c line=155 column=9 m))) { |
| 186 | continue; |
| 187 | |
| 188 | |
| 189 | t = : pass=0 = reqs : modules/aaa/mod_authz_groupfile.c line=161 column=19 reqs[] : enter=0, leave=0 [x : modules/aaa/mod_authz_groupfile.c line=157 column=18 x].requirement : include/http_core.h line=302 column=11 requirement; |
| 190 | w = : pass=0 = ap_getword_white : enter=0, leave=0 ap_getword_white : include/httpd.h line=1318 column=20 ap_getword_white(r : modules/aaa/mod_authz_groupfile.c line=150 column=43 r-> : enter=0, leave=0 ->pool : include/httpd.h line=780 column=17 pool, &t : modules/aaa/mod_authz_groupfile.c line=158 column=17 t); |
| 191 | |
| 192 | |
| 193 | if (! : true=0, false=0 !strcasecmp : enter=0, leave=0 strcasecmp : /usr/include/string.h line=536 column=12 strcasecmp(w : modules/aaa/mod_authz_groupfile.c line=158 column=21 w, "file-group")) { |
| 194 | filegroup = : 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_authz_groupfile.c line=150 column=43 r-> : enter=0, leave=0 ->notes : include/httpd.h line=910 column=18 notes, AUTHZ_GROUP_NOTE); |
| 195 | |
| 196 | if (! : true=0, false=0 !filegroup : modules/aaa/mod_authz_groupfile.c line=162 column=17 filegroup) { |
| 197 | |
| 198 | |
| 199 | |
| 200 | |
| 201 | continue; |
| 202 | |
| 203 | |
| 204 | |
| 205 | if (! : 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(w : modules/aaa/mod_authz_groupfile.c line=158 column=21 w, "group") || : true=0, false=0 || MC/DC independently affect : true=0, false=0 filegroup : modules/aaa/mod_authz_groupfile.c line=162 column=17 filegroup) { |
| 206 | required_group = : pass=0 = 1; /* remember the requirement */ |
| 207 | |
| 208 | |
| 209 | if (! : true=0, false=0 !grpstatus : modules/aaa/mod_authz_groupfile.c line=159 column=18 grpstatus) { |
| 210 | |
| 211 | |
| 212 | status = : pass=0 = groups_for_user : enter=0, leave=0 groups_for_user : modules/aaa/mod_authz_groupfile.c line=101 column=21 groups_for_user(r : modules/aaa/mod_authz_groupfile.c line=150 column=43 r-> : enter=0, leave=0 ->pool : include/httpd.h line=780 column=17 pool, user : modules/aaa/mod_authz_groupfile.c line=154 column=11 user, conf : modules/aaa/mod_authz_groupfile.c line=152 column=33 conf-> : enter=0, leave=0 ->groupfile : modules/aaa/mod_authz_groupfile.c line=60 column=11 groupfile, |
| 213 | grpstatus); |
| 214 | |
| 215 | if (status : modules/aaa/mod_authz_groupfile.c line=210 column=30 status != : true=0, false=0 != APR_SUCCESS) { |
| 216 | ap_log_rerror : include/http_log.h line=219 column=18 ap_log_rerror(APLOG_MARK, APLOG_ERR, status : modules/aaa/mod_authz_groupfile.c line=210 column=30 status, r : modules/aaa/mod_authz_groupfile.c line=150 column=43 r, |
| 217 | |
| 218 | conf-> : enter=0, leave=0 ->groupfile : modules/aaa/mod_authz_groupfile.c line=60 column=11 groupfile); |
| 219 | return HTTP_INTERNAL_SERVER_ERROR; |
| 220 | |
| 221 | |
| 222 | if (apr_table_elts : enter=0, leave=0 apr_table_elts : /usr/include/apr-1/apr_tables.h line=88 column=41 apr_table_elts(grpstatus : modules/aaa/mod_authz_groupfile.c line=159 column=18 grpstatus)-> : enter=0, leave=0 ->nelts : /usr/include/apr-1/apr_tables.h line=58 column=9 nelts == : true=0, false=0 == 0) { |
| 223 | |
| 224 | reason = : pass=0 = apr_psprintf : enter=0, leave=0 apr_psprintf : /usr/include/apr-1/apr_strings.h line=170 column=28 apr_psprintf(r : modules/aaa/mod_authz_groupfile.c line=150 column=43 r-> : enter=0, leave=0 ->pool : include/httpd.h line=780 column=17 pool, |
| 225 | |
| 226 | conf-> : enter=0, leave=0 ->groupfile : modules/aaa/mod_authz_groupfile.c line=60 column=11 groupfile); |
| 227 | break; |
| 228 | |
| 229 | |
| 230 | |
| 231 | if (filegroup : modules/aaa/mod_authz_groupfile.c line=162 column=17 filegroup) { |
| 232 | if (apr_table_get : enter=0, leave=0 apr_table_get : /usr/include/apr-1/apr_tables.h line=258 column=27 apr_table_get(grpstatus : modules/aaa/mod_authz_groupfile.c line=159 column=18 grpstatus, filegroup : modules/aaa/mod_authz_groupfile.c line=162 column=17 filegroup)) { |
| 233 | return OK; |
| 234 | |
| 235 | |
| 236 | if (conf : modules/aaa/mod_authz_groupfile.c line=152 column=33 conf-> : enter=0, leave=0 ->authoritative : modules/aaa/mod_authz_groupfile.c line=61 column=9 authoritative) { |
| 237 | reason = : pass=0 = apr_psprintf : enter=0, leave=0 apr_psprintf : /usr/include/apr-1/apr_strings.h line=170 column=28 apr_psprintf(r : modules/aaa/mod_authz_groupfile.c line=150 column=43 r-> : enter=0, leave=0 ->pool : include/httpd.h line=780 column=17 pool, |
| 238 | |
| 239 | filegroup); |
| 240 | break; |
| 241 | |
| 242 | |
| 243 | |
| 244 | |
| 245 | filegroup = : pass=0 = NULL; |
| 246 | |
| 247 | |
| 248 | while (t : modules/aaa/mod_authz_groupfile.c line=158 column=17 t[] : enter=0, leave=0 [0]) { |
| 249 | w = : pass=0 = ap_getword_conf : enter=0, leave=0 ap_getword_conf : include/httpd.h line=1358 column=20 ap_getword_conf(r : modules/aaa/mod_authz_groupfile.c line=150 column=43 r-> : enter=0, leave=0 ->pool : include/httpd.h line=780 column=17 pool, &t : modules/aaa/mod_authz_groupfile.c line=158 column=17 t); |
| 250 | if (apr_table_get : enter=0, leave=0 apr_table_get : /usr/include/apr-1/apr_tables.h line=258 column=27 apr_table_get(grpstatus : modules/aaa/mod_authz_groupfile.c line=159 column=18 grpstatus, w : modules/aaa/mod_authz_groupfile.c line=158 column=21 w)) { |
| 251 | return OK; |
| 252 | |
| 253 | |
| 254 | |
| 255 | |
| 256 | |
| 257 | |
| 258 | |
| 259 | if (! : true=0, false=0 MC/DC independently affect : true=0, false=0 !required_group : modules/aaa/mod_authz_groupfile.c line=156 column=9 required_group || : true=0, false=0 || ! : true=0, false=0 MC/DC independently affect : true=0, false=0 !conf : modules/aaa/mod_authz_groupfile.c line=152 column=33 conf-> : enter=0, leave=0 ->authoritative : modules/aaa/mod_authz_groupfile.c line=61 column=9 authoritative) { |
| 260 | return DECLINED; |
| 261 | |
| 262 | |
| 263 | ap_log_rerror : include/http_log.h line=219 column=18 ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r : modules/aaa/mod_authz_groupfile.c line=150 column=43 r, |
| 264 | |
| 265 | r-> : enter=0, leave=0 ->user : include/httpd.h line=930 column=11 user, r : modules/aaa/mod_authz_groupfile.c line=150 column=43 r-> : enter=0, leave=0 ->uri : include/httpd.h line=946 column=11 uri, |
| 266 | reason conditional operator : true=0, false=0 ? reason : modules/aaa/mod_authz_groupfile.c line=163 column=11 reason : "user is not part of the " |
| 267 | |
| 268 | |
| 269 | ap_note_auth_failure : include/http_protocol.h line=470 column=18 ap_note_auth_failure(r : modules/aaa/mod_authz_groupfile.c line=150 column=43 r); |
| 270 | return HTTP_UNAUTHORIZED; |
| 271 | |
| 272 | |
| 273 | register_hooks(apr_pool_t *p) |
| 274 | |
| 275 | |
| 276 | |
| 277 | ap_hook_auth_checker : modules/aaa/ check_user_access, aszPre : modules/aaa/mod_authz_groupfile.c line=275 column=31 aszPre, NULL, APR_HOOK_MIDDLE); |
| 278 | |
| 279 | |
| 280 | |
| 281 | |
| 282 | |
| 283 | create_authz_groupfile_dir_config,/* dir config creater */ |
| 284 | |
| 285 | |
| 286 | |
| 287 | authz_groupfile_cmds, /* command apr_table_t */ |
| 288 | register_hooks /* register hooks */ |
| 289 | |
| 290 |