Nowe posty

xx KDE Wallet (4)
Dzisiaj o 13:25:07
xx MacOS vs Linux (17)
Wczoraj o 21:20:08
xx [rozwiązane] Jak zainstalować Firefox'a 66 w Mint'cie 19.1? (15)
Wczoraj o 19:24:47
xx Dziwne zachowanie Firefoxa 65.0.1 (8)
Wczoraj o 11:49:13
xx Gdzie jest link do MOJE POSTY? (2)
Wczoraj o 07:34:45
xx HUMBLE BOOK BUNDLE: LINUX BY WILEY (0)
Wczoraj o 07:24:44
xx [ Gra Za Darmo on-line ] Albion Online (1)
Wczoraj o 07:21:33
xx Mint 19.1 - jest na wpół po polsku i angielsku, no szlag... (5)
2019-03-20, 10:49:16
xx brak uprawnień przy pobieraniu (3)
2019-03-20, 02:57:12
xx Reklamy (2)
2019-03-19, 14:58:34

Autor Wątek: czy select() moze odczytac deskryptor portu?  (Przeczytany 3255 razy)

Offline Wojtek Czernek

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 4
    • Zobacz profil
czy select() moze odczytac deskryptor portu?
« dnia: 2005-07-17, 20:05:08 »
Witam! Czy jest możliwość oglądania na linuxie np. kamer internetowych, lub np. teledysków z teledyski.interia.pl na linuxie?

Offline Wojtek Bartosiak

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 18
    • Zobacz profil
czy select() moze odczytac deskryptor portu?
« Odpowiedź #1 dnia: 2005-07-17, 15:07:07 »
mam tutaj na mysli czy jesli zrobie sobie socket i dostane socket destryptor to czy moge tak zrobic:

    string AdresNadawcy;
    PORT PortNadawcy;
   
    // ustawiam odpowiedni czas
    struct timeval czas;
    czas.tv_sec  = 0;
    czas.tv_usec = 500;
   
    // Ustawiam FileDestryptor jako socket ;-)
    fd_set ZrodloDanych;
    FD_ZERO(&ZrodloDanych);
    FD_SET(0, &ZrodloDanych);

    if (select(1, &ZrodloDanych, NULL, NULL, &czas)) {
        int temp;
        char buf[4097];
        text = "";
        bzero(buf,4097);
        temp = recvFrom(buf, 4096, AdresNadawcy, PortNadawcy);
        if ((AdresNadawcy == Adres) && (PortNadawcy == Port))
           text.append(buf,4096);
    }
    else text="";


Dodam ze protokol to UDP..
Chodzi mi o to ze jesli serverek nic do mnie nie odpowie (blednie wprowdzony port lub IP) to mi sie program tnie

Offline Wojtek Bartosiak

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 18
    • Zobacz profil
czy select() moze odczytac deskryptor portu?
« Odpowiedź #2 dnia: 2005-07-17, 17:55:50 »
Dodalem flage O_NONBLOCK
i zadzialalo a dokladniej:
fcntl(sockDesc, F_SETFL, O_NONBLOCK);

a czas na 1 sekundke i dziala !