libwebsockets/minimal-examples-lowlevel/secure-streams/minimal-secure-streams-custom-client-transport/private.h

39 lines
1.3 KiB
C

/*
* lws-minimal-secure-streams-custom-proxy-transport
*
* Written in 2010-2021 by Andy Green <andy@warmcat.com>
* Kutoga <kutoga@user.github.invalid>
*
* This file is made available under the Creative Commons CC0 1.0
* Universal Public Domain Dedication.
*/
#define LWS_SS_USE_SSPC
#include <libwebsockets.h>
#define MAX_CUSTOM_POLLFDS 10
typedef struct custom_poll_ctx {
struct pollfd pollfds[MAX_CUSTOM_POLLFDS];
void *priv[MAX_CUSTOM_POLLFDS];
int count_pollfds;
struct lws_dll2_owner scheduler;
lws_transport_mux_t *tm;
} custom_poll_ctx_t;
extern custom_poll_ctx_t a_cpcx;
extern int interrupted, transport_fd, log_level;
extern const lws_transport_client_ops_t lws_sss_ops_client_serial;
extern const lws_ss_info_t ssi_binance;
extern int open_transport_file(custom_poll_ctx_t *cpcx, const char *filepath, void *priv);
extern int custom_poll_add_fd(custom_poll_ctx_t *cpcx, lws_sockfd_type fd,
int events, void *priv);
extern int custom_poll_del_fd(custom_poll_ctx_t *cpcx, lws_sockfd_type fd);
extern int custom_poll_change_fd(custom_poll_ctx_t *cpcx, lws_sockfd_type fd,
int events_add, int events_remove);
extern int custom_poll_run(custom_poll_ctx_t *cpcx);
extern int custom_transport_event(struct pollfd *pfd, void *priv);