Lines Matching defs:conn
110 altcp_proxyconnect_send_request(struct altcp_pcb *conn)
115 altcp_proxyconnect_state_t *state = (altcp_proxyconnect_state_t *)conn->state;
144 err_t err = altcp_write(conn->inner_conn, buffer, (u16_t)len2, TCP_WRITE_FLAG_COPY);
163 struct altcp_pcb *conn = (struct altcp_pcb *)arg;
164 if (conn && conn->state) {
165 LWIP_ASSERT("pcb mismatch", conn->inner_conn == inner_conn);
169 if (conn->connected) {
170 if (conn->connected(conn->arg, conn, err) == ERR_ABRT) {
177 return altcp_proxyconnect_send_request(conn);
190 struct altcp_pcb *conn = (struct altcp_pcb *)arg;
195 if (!conn) {
196 /* no connection given as arg? should not happen, but prevent pbuf/conn leaks */
203 state = (altcp_proxyconnect_state_t *)conn->state;
204 LWIP_ASSERT("pcb mismatch", conn->inner_conn == inner_conn);
215 if (conn->recv) {
216 return conn->recv(conn->arg, conn, p, err);
224 if (altcp_close(conn) != ERR_OK) {
225 altcp_abort(conn);
237 if (conn->connected) {
238 return conn->connected(conn->arg, conn, ERR_OK);
253 struct altcp_pcb *conn = (struct altcp_pcb *)arg;
255 if (conn) {
256 altcp_proxyconnect_state_t *state = (altcp_proxyconnect_state_t *)conn->state;
257 LWIP_ASSERT("pcb mismatch", conn->inner_conn == inner_conn);
264 if (conn->sent) {
265 return conn->sent(conn->arg, conn, len);
278 struct altcp_pcb *conn = (struct altcp_pcb *)arg;
279 if (conn) {
280 LWIP_ASSERT("pcb mismatch", conn->inner_conn == inner_conn);
282 if (conn->poll) {
283 return conn->poll(conn->arg, conn);
292 struct altcp_pcb *conn = (struct altcp_pcb *)arg;
293 if (conn) {
294 conn->inner_conn = NULL; /* already freed */
295 if (conn->err) {
296 conn->err(conn->arg, err);
298 altcp_free(conn);
306 altcp_proxyconnect_setup_callbacks(struct altcp_pcb *conn, struct altcp_pcb *inner_conn)
308 altcp_arg(inner_conn, conn);
317 altcp_proxyconnect_setup(struct altcp_proxyconnect_config *config, struct altcp_pcb *conn, struct altcp_pcb *inner_conn)
323 LWIP_ASSERT("invalid inner_conn", conn != inner_conn);
332 altcp_proxyconnect_setup_callbacks(conn, inner_conn);
333 conn->inner_conn = inner_conn;
334 conn->fns = &altcp_proxyconnect_functions;
335 conn->state = state;
434 altcp_proxyconnect_set_poll(struct altcp_pcb *conn, u8_t interval)
436 if (conn != NULL) {
437 altcp_poll(conn->inner_conn, altcp_proxyconnect_lower_poll, interval);
442 altcp_proxyconnect_recved(struct altcp_pcb *conn, u16_t len)
445 if (conn == NULL) {
448 state = (altcp_proxyconnect_state_t *)conn->state;
455 altcp_recved(conn->inner_conn, len);
459 altcp_proxyconnect_connect(struct altcp_pcb *conn, const ip_addr_t *ipaddr, u16_t port, altcp_connected_fn connected)
463 if ((conn == NULL) || (ipaddr == NULL)) {
466 state = (altcp_proxyconnect_state_t *)conn->state;
475 conn->connected = connected;
480 return altcp_connect(conn->inner_conn, &state->conf->proxy_addr, state->conf->proxy_port, altcp_proxyconnect_lower_connected);
484 altcp_proxyconnect_listen(struct altcp_pcb *conn, u8_t backlog, err_t *err)
486 LWIP_UNUSED_ARG(conn);
494 altcp_proxyconnect_abort(struct altcp_pcb *conn)
496 if (conn != NULL) {
497 if (conn->inner_conn != NULL) {
498 altcp_abort(conn->inner_conn);
500 altcp_free(conn);
505 altcp_proxyconnect_close(struct altcp_pcb *conn)
507 if (conn == NULL) {
510 if (conn->inner_conn != NULL) {
511 err_t err = altcp_close(conn->inner_conn);
513 /* closing inner conn failed, return the error */
517 /* no inner conn or closing it succeeded, deallocate myself */
518 altcp_free(conn);
523 altcp_proxyconnect_write(struct altcp_pcb *conn, const void *dataptr, u16_t len, u8_t apiflags)
529 if (conn == NULL) {
533 state = (altcp_proxyconnect_state_t *)conn->state;
542 return altcp_write(conn->inner_conn, dataptr, len, apiflags);
546 altcp_proxyconnect_dealloc(struct altcp_pcb *conn)
549 if (conn) {
550 altcp_proxyconnect_state_t *state = (altcp_proxyconnect_state_t *)conn->state;
553 conn->state = NULL;