Thinking out loud here

This commit is contained in:
XANTRONIX Development 2020-06-20 00:41:55 -04:00 committed by XANTRONIX Industrial
parent 1240061aa8
commit ac8b239ed8

View file

@ -13,6 +13,9 @@
struct _patty_ax25_server { struct _patty_ax25_server {
patty_list *ifaces; patty_list *ifaces;
patty_dict *clients,
*client_requests;
patty_dict *socks_by_fd, patty_dict *socks_by_fd,
*socks_pending_accept, *socks_pending_accept,
*socks_pending_connect, *socks_pending_connect,
@ -23,6 +26,8 @@ struct _patty_ax25_server {
fd_set fds_watch, fd_set fds_watch,
fds_r, fds_r,
fds_w; fds_w;
patty_list *responses_by_client;
}; };
int patty_ax25_server_init(patty_ax25_server *server) { int patty_ax25_server_init(patty_ax25_server *server) {
@ -32,6 +37,14 @@ int patty_ax25_server_init(patty_ax25_server *server) {
goto error_list_new_ifaces; goto error_list_new_ifaces;
} }
if ((server->clients = patty_dict_new()) == NULL) {
goto error_dict_new_clients;
}
if ((server->client_requests = patty_dict_new()) == NULL) {
goto error_dict_new_client_requests;
}
if ((server->socks_by_fd = patty_dict_new()) == NULL) { if ((server->socks_by_fd = patty_dict_new()) == NULL) {
goto error_dict_new_socks_by_fd; goto error_dict_new_socks_by_fd;
} }
@ -60,6 +73,12 @@ error_dict_new_socks_pending_accept:
patty_dict_destroy(server->socks_by_fd); patty_dict_destroy(server->socks_by_fd);
error_dict_new_socks_by_fd: error_dict_new_socks_by_fd:
patty_dict_destroy(server->client_requests);
error_dict_new_client_requests:
patty_dict_destroy(server->clients);
error_dict_new_clients:
patty_list_destroy(server->ifaces); patty_list_destroy(server->ifaces);
error_list_new_ifaces: error_list_new_ifaces:
@ -77,6 +96,8 @@ void patty_ax25_server_stop(patty_ax25_server *server) {
patty_dict_destroy(server->socks_pending_connect); patty_dict_destroy(server->socks_pending_connect);
patty_dict_destroy(server->socks_pending_accept); patty_dict_destroy(server->socks_pending_accept);
patty_dict_destroy(server->socks_by_fd); patty_dict_destroy(server->socks_by_fd);
patty_dict_destroy(server->client_requests);
patty_dict_destroy(server->clients);
patty_ax25_server_each_if(server, destroy_if, NULL); patty_ax25_server_each_if(server, destroy_if, NULL);
patty_list_destroy(server->ifaces); patty_list_destroy(server->ifaces);