» »

[c] setsockopt

[c] setsockopt

slovencl ::

Imam problem s socketopt, in branjem UDP paketov. Imam nastavljen socketopt, da počaka na paket.
Zadeva je do nedavnega delovala, potem pa sem v isti program dodal nove sockete, samo na drugih vratih, pa ta opcija kar naenkrat no več delovala. Sploh ne počaka eno sekundo na odgovor, ampak gre kar naprej.

Ali ima OS (linux v mojem primeru) kakšne omejitve glede števila socketov ali karkoli kar bi vplivalo, da mi kar naenkrat ne deluje.
Sem pa poskusil na drugi kišti - isti sistem: Na enem računalniku mi isti program deluje, na drugem pa ne.

Kakšna ideja?

read_timeout.tv_sec = 1;
 read_timeout.tv_usec = 0;
 setsockopt(sockfd, SOL_SOCKET, SO_RCVTIMEO, &read_timeout, sizeof read_timeout); // timeout

 recvfrom(sockfd, (char *)rx_buffer, MAXLINE, MSG_WAITALL, (struct sockaddr *) &device_address, &len);

sas084 ::

Število povezav maš omejeno s številom file deskriptorjev in je konfigurabilno, vendar po mojem to ni problem. Kaj ti vrne recvfrom v errno?

slovencl ::

Hvala za odgovor. Sem resil. Problem je bil, da je odgovor bil, ampak ni bila ustrezna vsebina, zato je sel program naprej, jaz pa sem sklepal da ni pocakal :)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[c] ne sprejme UDP paketa

Oddelek: Programiranje
7926 (514) slovencl
»

Kako masovno pingat?

Oddelek: Programiranje
448285 (6272) ragezor
»

[Java] Multi Client chat server

Oddelek: Programiranje
262360 (1631) javaMaster
»

Windows XP Black screen

Oddelek: Pomoč in nasveti
122978 (2718) Twix
»

C: connect() funkcija, kako nastaviti timeout

Oddelek: Programiranje
231632 (1413) fefko-the-bulldog

Več podobnih tem