| line |
true |
false |
branch |
|
50
|
2 |
216 |
if (lsnr->server_name) |
|
55
|
2 |
216 |
if (lsnr->server_port) |
|
70
|
165 |
52 |
if (server->n_listeners == 0) { |
|
77
|
142 |
52 |
for (j = 0; j < server->n_listeners; j++) { |
|
78
|
0 |
142 |
if (server->listeners[j].fd == -1) { |
|
86
|
52 |
0 |
if (!lsnr) { |
|
87
|
52 |
0 |
if (server->n_listeners < FEER_MAX_LISTENERS) { |
|
106
|
0 |
217 |
if (getsockname(fd, (struct sockaddr*)&addr, &addr_len) == -1) { |
|
118
|
0 |
217 |
if (setsockopt(fd, IPPROTO_TCP, TCP_DEFER_ACCEPT, &(int){1}, sizeof(int)) < 0) |
|
134
|
165 |
52 |
if (!server->watchers_initialized) { |
|
149
|
30 |
22 |
} else if (!ev_is_active(&server->ep)) { |
|
156
|
126 |
91 |
if (!ev_is_active(&date_timer)) { |
|
174
|
17 |
17 |
for (i = 0; i < server->n_listeners; i++) { |
|
179
|
2 |
15 |
if (lsnr->epoll_fd >= 0) { |
|
180
|
0 |
2 |
if (unlikely(close(lsnr->epoll_fd) < 0)) |
|
190
|
16 |
1 |
if (lsnr->server_name) { |
|
194
|
16 |
1 |
if (lsnr->server_port) { |
|
200
|
13 |
4 |
if (server->watchers_initialized) { |
|
202
|
13 |
0 |
if (--date_timer_refs <= 0) { |
|
214
|
0 |
2 |
if (server->shutting_down) { |
|
219
|
2 |
2 |
for (i = 0; i < server->n_listeners; i++) { |
|
221
|
1 |
1 |
if (!lsnr->paused && ev_is_active(&lsnr->accept_w)) { |
|
|
1 |
0 |
if (!lsnr->paused && ev_is_active(&lsnr->accept_w)) { |
|
228
|
1 |
1 |
if (paused_any) |
|
239
|
0 |
2 |
if (server->shutting_down) { |
|
244
|
2 |
2 |
for (i = 0; i < server->n_listeners; i++) { |
|
246
|
1 |
1 |
if (lsnr->paused) { |
|
253
|
1 |
1 |
if (resumed_any) |
|
265
|
3 |
1 |
for (i = 0; i < server->n_listeners; i++) { |
|
266
|
2 |
1 |
if (!server->listeners[i].paused) { RETVAL = 0; break; } |
|
279
|
239 |
0 |
if (unlikely(!SvOK(cb) || !SvROK(cb))) |
|
|
0 |
239 |
if (unlikely(!SvOK(cb) || !SvROK(cb))) |
|
281
|
81 |
158 |
if (server->request_cb_cv) |
|
295
|
9 |
0 |
if (!IsCodeRef(cb)) |
|
|
0 |
9 |
if (!IsCodeRef(cb)) |
|
297
|
1 |
8 |
if (unlikely(server->shutting_down)) |
|
303
|
8 |
8 |
for (i = 0; i < server->n_listeners; i++) { |
|
308
|
0 |
8 |
if (lsnr->epoll_fd >= 0) { |
|
309
|
0 |
0 |
if (unlikely(close(lsnr->epoll_fd) < 0)) |
|
314
|
0 |
0 |
if (lsnr->fd >= 0) { |
|
315
|
0 |
0 |
if (unlikely(close(lsnr->fd) < 0)) |
|
322
|
8 |
0 |
if (lsnr->accept_w.fd >= 0) { |
|
323
|
0 |
8 |
if (unlikely(close(lsnr->accept_w.fd) < 0)) |
|
335
|
0 |
8 |
while (feer_server_recycle_idle_conn(server)) |
|
338
|
7 |
1 |
if (server->active_conns <= 0 && server->shutdown_cb_cv) { |
|
|
7 |
0 |
if (server->active_conns <= 0 && server->shutdown_cb_cv) { |
|
349
|
6020 |
2012 |
if (items > 1) { |
|
351
|
3 |
6017 |
if (!(val > 0.0)) |
|
356
|
7996 |
33 |
RETVAL = server->read_timeout; |
|
366
|
16 |
3 |
if (items > 1) { |
|
368
|
1 |
15 |
if (val < 0.0) |
|
373
|
0 |
18 |
RETVAL = server->header_timeout; |
|
383
|
4 |
3 |
if (items > 1) { |
|
385
|
1 |
3 |
if (val < 0.0) |
|
390
|
0 |
6 |
RETVAL = server->write_timeout; |
|
415
|
0 |
4 |
RETVAL = server->use_reverse_proxy; |
|
432
|
0 |
0 |
RETVAL = server->psgix_io; |
|
449
|
0 |
4 |
RETVAL = server->use_proxy_protocol; |
|
473
|
0 |
10 |
RETVAL = server->use_epoll_exclusive ? 1 : 0; |
|
492
|
6004 |
12016 |
: ix == 1 ? &server->write_priority |
|
493
|
6008 |
6008 |
: &server->read_priority; |
|
494
|
18012 |
8 |
if (items > 1) { |
|
496
|
2 |
18010 |
if (new_priority < EV_MINPRI) new_priority = EV_MINPRI; |
|
497
|
2 |
18010 |
if (new_priority > EV_MAXPRI) new_priority = EV_MAXPRI; |
|
501
|
17991 |
29 |
RETVAL = *field; |
|
511
|
6 |
8 |
if (items > 1) { |
|
513
|
2 |
4 |
if (new_max < 1) new_max = 1; |
|
517
|
0 |
14 |
RETVAL = server->max_accept_per_loop; |
|
525
|
3 |
8 |
RETVAL = server->active_conns; |
|
534
|
12 |
7 |
if (items > 1) { |
|
536
|
0 |
12 |
if (new_max < 0) new_max = 0; // 0 means unlimited |
|
540
|
0 |
19 |
RETVAL = server->max_connections; |
|
550
|
0 |
0 |
if (items > 1) { |
|
552
|
0 |
0 |
if (new_max == 0) new_max = MAX_READ_BUF; |
|
555
|
0 |
0 |
RETVAL = server->max_read_buf; |
|
565
|
2 |
0 |
if (items > 1) { |
|
567
|
1 |
1 |
if (new_max == 0) new_max = MAX_BODY_LEN; |
|
570
|
0 |
2 |
RETVAL = server->max_body_len; |
|
580
|
4 |
3 |
if (items > 1) { |
|
582
|
1 |
3 |
if (new_max == 0) new_max = MAX_URI_LEN; |
|
585
|
0 |
7 |
RETVAL = server->max_uri_len; |
|
595
|
7 |
3 |
if (items > 1) { |
|
597
|
1 |
6 |
if (SvNV(val) < 0.0) |
|
601
|
0 |
9 |
RETVAL = server->wbuf_low_water; |
|
630
|
0 |
0 |
if (items > 1) |
|
632
|
0 |
0 |
RETVAL = 0; |
|
641
|
0 |
3 |
RETVAL = server->total_requests; |
|
649
|
1 |
0 |
IV new_max_connection_reqs = 0; |
|
652
|
1 |
0 |
if (items > 1) { |
|
654
|
0 |
1 |
if (new_max_connection_reqs < 0) { |
|
660
|
0 |
1 |
RETVAL = server->max_connection_reqs; |
|
676
|
158 |
53 |
if (server->request_cb_cv) |
|
678
|
0 |
211 |
if (server->shutdown_cb_cv) |
|
680
|
200 |
211 |
for (i = 0; i < server->n_listeners; i++) { |
|
685
|
0 |
200 |
if (lsnr->epoll_fd >= 0) { |
|
690
|
200 |
0 |
if (lsnr->server_name) |
|
692
|
200 |
0 |
if (lsnr->server_port) |
|
698
|
152 |
59 |
if (server->watchers_initialized && --date_timer_refs <= 0) { |
|
|
113 |
39 |
if (server->watchers_initialized && --date_timer_refs <= 0) { |
|
716
|
105 |
1 |
if (items < 3 || (items - 1) % 2 != 0) |
|
|
0 |
105 |
if (items < 3 || (items - 1) % 2 != 0) |
|
719
|
216 |
103 |
for (i = 1; i < items; i += 2) { |
|
722
|
102 |
114 |
if (strcmp(key, "cert_file") == 0) |
|
724
|
102 |
12 |
else if (strcmp(key, "key_file") == 0) |
|
726
|
6 |
6 |
else if (strcmp(key, "listener") == 0) |
|
728
|
1 |
5 |
else if (strcmp(key, "h2") == 0) |
|
730
|
3 |
2 |
else if (strcmp(key, "sni") == 0) |
|
736
|
3 |
100 |
if (!cert_file) croak("set_tls: cert_file is required"); |
|
737
|
3 |
97 |
if (!key_file) croak("set_tls: key_file is required"); |
|
739
|
3 |
94 |
if (server->n_listeners == 0) |
|
743
|
0 |
94 |
if (listener_idx < -1) |
|
746
|
88 |
6 |
if (listener_idx < 0) |
|
748
|
2 |
92 |
if (listener_idx >= server->n_listeners) |
|
755
|
3 |
89 |
if (sni_name) { |
|
756
|
0 |
3 |
if (!lsnr->tls_ctx_ref) |
|
758
|
0 |
3 |
if (lsnr->n_sni_entries >= FEER_MAX_SNI_ENTRIES) |
|
764
|
1 |
2 |
if (h2) |
|
770
|
5 |
86 |
if (!new_ctx) |
|
773
|
2 |
84 |
if (sni_name) { |
|
777
|
20 |
2 |
for (i = 0; (size_t)i < name_len; i++) |
|
778
|
0 |
20 |
e->hostname[i] = toLOWER(sni_name[i]); |
|
786
|
1 |
83 |
if (lsnr->tls_ctx_ref) |
|
804
|
0 |
58 |
RETVAL = 1; |
|
820
|
0 |
16 |
RETVAL = 0; |
|
835
|
0 |
139 |
I_EV_API("Feersum"); |
|
|
139 |
0 |
I_EV_API("Feersum"); |
|
|
0 |
139 |
I_EV_API("Feersum"); |
|
838
|
0 |
139 |
if (env_fl_max) { |