TCP Connect Timeout

bravenec na optimit.cz bravenec na optimit.cz
Úterý Březen 17 13:00:14 CET 1998


Leos Urban wrote:
> 
> Ahoj,
> nevite nekdo, jak nastavit (snizit) v cecku cas pro timeout ve funkci
> Connect?
> Potrebuji, aby connect kdyz nenajde pocitac na druhe strane (existuje,
> ale neni zapnuty) vypadl uz po treba 5 sekundach.
> Funkce SetSocketOpt s parametrem SO_RCVTIMEO mi nefunguje,
> je udajne jen read-only a navic ten parametr SO_RCVTIMEO nemam vubec v
> header filech.
> Dik, moc byste mi pomohli.
> 
> Leos

Strucne, pouze jako namet, nebudu vypisovat cely program:

s = socket();
fcntl (s, F_SETFL, O_NONBLOCK);
for (i=0; i<5; i++) {
    x = connect (s, &addr, addr_len);
    if (x==0) {
        /* PROPOJENO! */
        break;
        }
    sleep(1);
    }

Pokud neni propojeno, volani connect nastavuje errno na EINPROGRASS

Petr Bravenec
http://www.qsl.net/ok2pid


Další informace o konferenci Linux