43 #if defined(LWS_SS_USE_SSPC)
44 #define lws_ss_handle lws_sspc_handle
45 #define lws_ss_create lws_sspc_create
46 #define lws_ss_destroy lws_sspc_destroy
47 #define lws_ss_request_tx lws_sspc_request_tx
48 #define lws_ss_request_tx_len lws_sspc_request_tx_len
49 #define lws_ss_client_connect lws_sspc_client_connect
50 #define lws_ss_get_sequencer lws_sspc_get_sequencer
51 #define lws_ss_proxy_create lws_sspc_proxy_create
52 #define lws_ss_get_context lws_sspc_get_context
53 #define lws_ss_rideshare lws_sspc_rideshare
54 #define lws_ss_set_metadata lws_sspc_set_metadata
55 #define lws_ss_get_metadata lws_sspc_get_metadata
56 #define lws_ss_add_peer_tx_credit lws_sspc_add_peer_tx_credit
57 #define lws_ss_get_est_peer_tx_credit lws_sspc_get_est_peer_tx_credit
58 #define lws_ss_start_timeout lws_sspc_start_timeout
59 #define lws_ss_cancel_timeout lws_sspc_cancel_timeout
60 #define lws_ss_to_user_object lws_sspc_to_user_object
61 #define lws_ss_change_handlers lws_sspc_change_handlers
62 #define lws_smd_ss_rx_forward lws_smd_sspc_rx_forward
63 #define lws_ss_tag lws_sspc_tag
64 #define _lws_fi_user_ss_fi _lws_fi_user_sspc_fi
68 struct lws_sspc_handle;
70 LWS_VISIBLE LWS_EXTERN
int
71 lws_sspc_create(
struct lws_context *context,
int tsi,
const lws_ss_info_t *ssi,
72 void *opaque_user_data,
struct lws_sspc_handle **ppss,
73 struct lws_sequencer *seq_owner,
const char **ppayload_fmt);
82 LWS_VISIBLE LWS_EXTERN
void
83 lws_sspc_destroy(
struct lws_sspc_handle **ppss);
94 LWS_VISIBLE LWS_EXTERN lws_ss_state_return_t
95 lws_sspc_request_tx(
struct lws_sspc_handle *pss);
114 LWS_VISIBLE LWS_EXTERN lws_ss_state_return_t
115 lws_sspc_request_tx_len(
struct lws_sspc_handle *h,
unsigned long len);
125 LWS_VISIBLE LWS_EXTERN lws_ss_state_return_t
126 lws_sspc_client_connect(
struct lws_sspc_handle *h);
138 LWS_VISIBLE LWS_EXTERN
struct lws_sequencer *
139 lws_sspc_get_sequencer(
struct lws_sspc_handle *h);
149 LWS_VISIBLE LWS_EXTERN
int
150 lws_sspc_proxy_create(
struct lws_context *context);
161 LWS_VISIBLE LWS_EXTERN
struct lws_context *
162 lws_sspc_get_context(
struct lws_sspc_handle *h);
164 LWS_VISIBLE
extern const struct lws_protocols lws_sspc_protocols[2];
166 LWS_VISIBLE LWS_EXTERN
const char *
167 lws_sspc_rideshare(
struct lws_sspc_handle *h);
193 LWS_VISIBLE LWS_EXTERN
int
194 lws_sspc_set_metadata(
struct lws_sspc_handle *h,
const char *
name,
195 const void *value,
size_t len);
197 LWS_VISIBLE LWS_EXTERN
int
198 lws_sspc_get_metadata(
struct lws_sspc_handle *h,
const char *
name,
199 const void **value,
size_t *len);
201 LWS_VISIBLE LWS_EXTERN
int
202 lws_sspc_add_peer_tx_credit(
struct lws_sspc_handle *h, int32_t add);
204 LWS_VISIBLE LWS_EXTERN
int
205 lws_sspc_get_est_peer_tx_credit(
struct lws_sspc_handle *h);
207 LWS_VISIBLE LWS_EXTERN
void
208 lws_sspc_start_timeout(
struct lws_sspc_handle *h,
unsigned int timeout_ms);
210 LWS_VISIBLE LWS_EXTERN
void
211 lws_sspc_cancel_timeout(
struct lws_sspc_handle *h);
213 LWS_VISIBLE LWS_EXTERN
void *
214 lws_sspc_to_user_object(
struct lws_sspc_handle *h);
216 LWS_VISIBLE LWS_EXTERN
void
217 lws_sspc_change_handlers(
struct lws_sspc_handle *h,
218 lws_ss_state_return_t (*rx)(
void *userobj,
const uint8_t *buf,
219 size_t len,
int flags),
220 lws_ss_state_return_t (*tx)(
void *userobj, lws_ss_tx_ordinal_t ord,
221 uint8_t *buf,
size_t *len,
int *flags),
222 lws_ss_state_return_t (*state)(
void *userobj,
void *h_src
224 lws_ss_constate_t state,
225 lws_ss_tx_ordinal_t ack));
228 lws_sspc_tag(
struct lws_sspc_handle *h);
Definition: lws-protocols-plugins.h:44
const char * name
Definition: lws-protocols-plugins.h:45
Definition: lws-secure-streams.h:350