ESP32 socket (LWIP) problem

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Sobota Listopad 20 00:21:05 CET 2021


Tak asi jsem na to prisel, zrejme jsou nastavene vysoke casy pro keep 
alive. Takhle to dela asi 6s ale hodnoty a jejich vyznam jeste budu 
muset analyzovat...

             const int optval = 1;
             setsockopt(sc, SOL_SOCKET, SO_KEEPALIVE, &optval, 
sizeof(optval));
             const int keepidle = 3;
             setsockopt(sc, IPPROTO_TCP, TCP_KEEPIDLE, (void 
*)&keepidle, sizeof(keepidle));
             const int keepintvl = 2;
             setsockopt(sc, IPPROTO_TCP, TCP_KEEPINTVL, (void 
*)&keepintvl, sizeof(keepintvl));
             const int keepcnt = 3;
             setsockopt(sc, IPPROTO_TCP, TCP_KEEPCNT, (void *)&keepcnt, 
sizeof(keepcnt));

Dne 19.11.2021 v 23:26 Jaroslav Buchta napsal(a):
> Zdravim,
>
> problem je v tom, ze kdyz se nejaky zpusobe narusi komunikace (ESP je 
> server), napr. vytahnu kabel z pocitace, kde bezi putty tak spojeni 
> nevyhnije, read i recv dava errno = EAGAIN i kdyz cekam treba hodinu. 
> To same write, tvari se, ze funguje.
>
> Potreboval bych zjistit, ze spojeni je nefunkcni a ukoncit ho, aby 
> mohlo byt vytvoreno znovu. Je na to nejaka finta?
>
> Data nemusi delsi dobu prichazet, je to proste terminalove rozhrani.
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list




Další informace o konferenci Hw-list