Philipp Maier | 3f4a4cb | 2021-07-26 13:20:05 +0200 | [diff] [blame] | 1 | #pragma once |
| 2 | |
Oliver Smith | cb922b6 | 2022-10-14 16:42:03 +0200 | [diff] [blame] | 3 | #include <stdbool.h> |
| 4 | |
Pau Espin Pedrol | c415ed5 | 2023-09-22 18:02:59 +0200 | [diff] [blame] | 5 | #include <osmocom/vty/vty.h> |
| 6 | |
Philipp Maier | 3f4a4cb | 2021-07-26 13:20:05 +0200 | [diff] [blame] | 7 | struct mgcp_client; |
| 8 | struct mgcp_client_pool; |
Pau Espin Pedrol | 5d8b5b0 | 2022-10-13 17:52:40 +0200 | [diff] [blame] | 9 | struct mgcp_client_pool_member; |
Philipp Maier | 3f4a4cb | 2021-07-26 13:20:05 +0200 | [diff] [blame] | 10 | |
| 11 | struct mgcp_client_pool *mgcp_client_pool_alloc(void *talloc_ctx); |
Pau Espin Pedrol | 5d8b5b0 | 2022-10-13 17:52:40 +0200 | [diff] [blame] | 12 | |
Philipp Maier | 3f4a4cb | 2021-07-26 13:20:05 +0200 | [diff] [blame] | 13 | void mgcp_client_pool_vty_init(int parent_node, int mgw_node, const char *indent, struct mgcp_client_pool *pool); |
Pau Espin Pedrol | 7881f7d | 2022-10-18 14:13:04 +0200 | [diff] [blame] | 14 | int mgcp_client_pool_config_write(struct vty *vty, const char *indent); |
Philipp Maier | 3f4a4cb | 2021-07-26 13:20:05 +0200 | [diff] [blame] | 15 | unsigned int mgcp_client_pool_connect(struct mgcp_client_pool *pool); |
| 16 | void mgcp_client_pool_register_single(struct mgcp_client_pool *pool, struct mgcp_client *mgcp_client); |
Oliver Smith | 833ab4b | 2023-04-04 14:13:30 +0200 | [diff] [blame] | 17 | bool mgcp_client_pool_empty(const struct mgcp_client_pool *pool); |
Pau Espin Pedrol | 5d8b5b0 | 2022-10-13 17:52:40 +0200 | [diff] [blame] | 18 | |
Philipp Maier | 3f4a4cb | 2021-07-26 13:20:05 +0200 | [diff] [blame] | 19 | struct mgcp_client *mgcp_client_pool_get(struct mgcp_client_pool *pool); |
| 20 | void mgcp_client_pool_put(struct mgcp_client *mgcp_client); |
Pau Espin Pedrol | 5d8b5b0 | 2022-10-13 17:52:40 +0200 | [diff] [blame] | 21 | |
| 22 | struct mgcp_client_pool_member *mgcp_client_pool_find_member_by_nr(struct mgcp_client_pool *pool, unsigned int nr); |
| 23 | struct mgcp_client *mgcp_client_pool_member_get(struct mgcp_client_pool_member *pool_member); |
| 24 | bool mgcp_client_pool_member_is_blocked(const struct mgcp_client_pool_member *pool_member); |