blob: 949e87028cdec471de003efc228c78cc7ececad8 [file] [log] [blame]
Philipp Maier3f4a4cb2021-07-26 13:20:05 +02001#pragma once
2
3struct mgcp_client;
4struct mgcp_client_pool;
Pau Espin Pedrol5d8b5b02022-10-13 17:52:40 +02005struct mgcp_client_pool_member;
Philipp Maier3f4a4cb2021-07-26 13:20:05 +02006
7struct mgcp_client_pool *mgcp_client_pool_alloc(void *talloc_ctx);
Pau Espin Pedrol5d8b5b02022-10-13 17:52:40 +02008
Philipp Maier3f4a4cb2021-07-26 13:20:05 +02009void mgcp_client_pool_vty_init(int parent_node, int mgw_node, const char *indent, struct mgcp_client_pool *pool);
10unsigned int mgcp_client_pool_connect(struct mgcp_client_pool *pool);
11void mgcp_client_pool_register_single(struct mgcp_client_pool *pool, struct mgcp_client *mgcp_client);
Pau Espin Pedrol5d8b5b02022-10-13 17:52:40 +020012
Philipp Maier3f4a4cb2021-07-26 13:20:05 +020013struct mgcp_client *mgcp_client_pool_get(struct mgcp_client_pool *pool);
14void mgcp_client_pool_put(struct mgcp_client *mgcp_client);
Pau Espin Pedrol5d8b5b02022-10-13 17:52:40 +020015
16struct mgcp_client_pool_member *mgcp_client_pool_find_member_by_nr(struct mgcp_client_pool *pool, unsigned int nr);
17struct mgcp_client *mgcp_client_pool_member_get(struct mgcp_client_pool_member *pool_member);
18bool mgcp_client_pool_member_is_blocked(const struct mgcp_client_pool_member *pool_member);