| 1684 | } |
| 1685 | |
| 1686 | void h2_proxy_session_cancel_all(h2_proxy_session *session) |
| 1687 | { |
| 1688 | if (!h2_proxy_ihash_empty(session->streams)) { |
| 1689 | cleanup_iter_ctx ctx; |
| 1690 | ctx.session = session; |
| 1691 | ctx.done = session->done; |
| 1692 | ap_log_cerror(APLOG_MARK, APLOG_DEBUG, 0, session->c, APLOGNO(03366) |
| 1693 | "h2_proxy_session(%s): cancel %d streams", |
| 1694 | session->id, (int)h2_proxy_ihash_count(session->streams)); |
| 1695 | h2_proxy_ihash_iter(session->streams, cancel_iter, &ctx); |
| 1696 | session_shutdown(session, 0, NULL); |
| 1697 | } |
| 1698 | } |
| 1699 | |
| 1700 | static int done_iter(void *udata, void *val) |
| 1701 | { |
no test coverage detected