Hello Uwe, I have the call back for accept set as follows.
In the main application, I call echo_accept. server_tpcb = tcp_new(); ui32Err = tcp_bind(server_tpcb, (ip_addr_t *)&g_ui32IPAddress, NODE_TCP_SERVER_PORT); UARTprintf("\n%d",ui32Err); server_tpcb = tcp_listen(server_tpcb); tcp_accept(server_tpcb, echo_accept); which is as follows. static err_t echo_accept(void *arg, struct tcp_pcb *pcb, err_t err) { LWIP_UNUSED_ARG(arg); LWIP_UNUSED_ARG(err); tcp_setprio(pcb, TCP_PRIO_MIN); tcp_arg(pcb, NULL); tcp_recv(pcb, echo_recv); tcp_err(pcb, echo_err); tcp_poll(pcb, NULL, 0); return ERR_OK; } Do you mean that instead of using pcb I should have another tcp_pcb e,g, newpcb that is assigned from the pcb in the call back. struct tcp_pcb *newpcb; static err_t echo_accept(void *arg, struct tcp_pcb *pcb, err_t err) { LWIP_UNUSED_ARG(arg); LWIP_UNUSED_ARG(err); newpcb = pcb; tcp_setprio(pcb, TCP_PRIO_MIN); tcp_arg(pcb, NULL); tcp_recv(pcb, echo_recv); tcp_err(pcb, echo_err); tcp_poll(pcb, NULL, 0); return ERR_OK; } Regards Amit On Thu, Nov 5, 2015 at 11:28 AM, Valery Ushakov <u...@stderr.spb.ru> wrote: > Amit Ashara <ashara.a...@gmail.com> wrote: > > > When a connection is established between the server and the client, > > I can use the tcp_write on the client side to send data in my > > application code. However the same on the server side is not > > possible. The pcb that has been used for the server only contains > > the server's address and server's port but not the client's address > > and client's port. In the receive call back on the server side, I > > can send the data to the client but not outside of the call back. > > You are using wrong pcb. On the server you start with a listening > pcb. When your accept callback is called, it's passed a *new* pcb, > that represents the established connection. You should use that pcb > for tcp_write. Writing from receive callback works because in the > receive callback the pcb argument is that connection pcb, not the > original listening pcb. > > -uwe > > > _______________________________________________ > lwip-users mailing list > lwip-users@nongnu.org > https://lists.nongnu.org/mailman/listinfo/lwip-users >
_______________________________________________ lwip-users mailing list lwip-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/lwip-users