abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:55 | Nová verze

    KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | IT novinky

    Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.

    Ladislav Hagara | Komentářů: 3
    dnes 04:44 | Zajímavý článek

    Firefox 149 dostupný od 24. března přinese bezplatnou vestavěnou VPN s 50 GB přenesených dat měsíčně (s CZ a SK se zatím nepočítá) a zobrazení dvou webových stránek vedle sebe v jednom panelu (split view). Firefox Labs 149 umožní přidat poznámky k panelům (tab notes, videoukázka).

    Ladislav Hagara | Komentářů: 2
    dnes 00:33 | Nová verze

    Byla vydána nová stabilní verze 7.9 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 146. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    dnes 00:11 | Zajímavý software

    Dle plánu byla vydána Opera GX pro Linux. Ke stažení je .deb i .rpm. V plánu je flatpak. Opera GX je webový prohlížeč zaměřený na hráče počítačových her.

    Ladislav Hagara | Komentářů: 5
    včera 19:22 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.27.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    včera 04:00 | Bezpečnostní upozornění

    Byly publikovány informace (technické detaily) o bezpečnostním problému Snapu. Jedná se o CVE-2026-3888. Neprivilegovaný lokální uživatel může s využitím snap-confine a systemd-tmpfiles získat práva roota.

    Ladislav Hagara | Komentářů: 5
    včera 03:33 | Zajímavý software

    Nightingale je open-source karaoke aplikace, která z jakékoliv písničky lokálního alba (včetně videí) dokáže oddělit vokály, získat text a vše přehrát se synchronizací na úrovni jednotlivých slov a hodnocením intonace. Pro separaci vokálů využívá UVR Karaoke model s Demucs od Mety, texty písní stahuje z lrclib.net (LRCLIB), případně extrahuje pomocí whisperX, který rovněž využívá k načasování slov. V případě audiosouborů aplikace na

    … více »
    NUKE GAZA! 🎆 | Komentářů: 2
    18.3. 18:22 | Nová verze

    Po půl roce vývoje od vydání verze 49 bylo vydáno GNOME 50 s kódovým názvem Tokyo (Mastodon). Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 32
    18.3. 17:22 | Nová verze

    Článek na stránkách Fedora Magazinu informuje o vydání Fedora Asahi Remixu 43, tj. linuxové distribuce pro Apple Silicon vycházející z Fedora Linuxu 43.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (11%)
     (29%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1118 hlasů
     Komentářů: 27, poslední 17.3. 19:26
    Rozcestník

    Dotaz: Linux/Win32 API: SO_LINGER - okamžité uzavření soketu

    Fuky avatar 30.10.2008 22:55 Fuky | skóre: 52 | blog: 4u
    Linux/Win32 API: SO_LINGER - okamžité uzavření soketu
    Přečteno: 426×
    Multiplatformní aplikace napsaná v C se připojí k protistraně a začne jí posílat data. Protistraně se zaplní buffer, takže přestane přijímat pakety. Začnou se tedy objevovat retransmission pakety. Uzavřu tedy spojení s protistranou, abych jí dal čas na vyprázdnění bufferu. V Linuxu se mi spojení díky nastavení SO_LINGER okamžitě uzavře. Ovšem ve Windows spojení zůstane viset dál, i když použiju stejné nastavení SO_LINGER, protože se čeká na doručení paketu. Jak zajistit i ve Windows okamžité uzavření soketu, i když jsou ve frontě stále nějaké nedoručené pakety? Děkuji za nakopnutí správným směrem.

    Řešení dotazu:


    Odpovědi

    Pavel Stárek avatar 31.10.2008 12:16 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Linux/Win32 API: SO_LINGER - okamžité uzavření soketu
    Citace z dokumentace na webu MSDN:

    To disable a socket from remaining open, an application only needs to set the l_onoff member of the linger structure to zero.

    A pro jistotu bych ještě nastavil ten l_linger timeout v té struktuře na nulu.
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    Fuky avatar 2.11.2008 12:00 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Linux/Win32 API: SO_LINGER - okamžité uzavření soketu
    Děkuji za radu, i toto nastavení jsem zkoušel a výsledek je stále stejný. Jakmile začnou chodit retransmission pakety, tak mi vrátí fce select() na zapisovacím deskriptoru WSAEWOULDBLOCK - Error 10035, já tedy uzavřu soket, ale Windows nechá spojení otevřené a čeká až bude moci doručit neodeslaný paket.
    Fuky avatar 2.11.2008 22:33 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Linux/Win32 API: SO_LINGER - okamžité uzavření soketu

    Správně je set_linger.l_onoff = 1; set_linger.l_linger = 0;, tj. zahodí neodeslaná data a okamžitě odešlě protistraně RESET. Pokud je l_onoff == 0 pošle FIN, ale pouze pokud jsou všechna data doručena protistraně (implicitní chování). Pokud je l_onoff == 1 && l_linger != 0, tak v případě, že jsou všechna data doručena pošle FIN, jinak po vypršení timeoutu pošlě RESET.

    Pokud program spustím pod Wine, funguje dle očekávání bez problémů. Ovšem na Windows ne...

    Stejný dotaz jsem ještě položil na Okamžité uzavření soketu ve Windows (builder.cz), ovšem zatím bez řešení.

    Řešení 1× (Fuky (tazatel))
    Fuky avatar 3.11.2008 22:52 Fuky | skóre: 52 | blog: 4u
    Rozbalit Rozbalit vše Re: Linux/Win32 API: SO_LINGER - okamžité uzavření soketu
    Takže problém je vyřešen. Chyba bude nakonec na straně FW protistrany v nižší síťové vrstvě, na funkci v Linuxu to nemělo vliv, ale ve Windows nefungovalo okamžité uzavření soketu. Další problém byl v tom, že před closesocket() se nesmí volat shutdown() jinak se soket také okamžitě neuzavře.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.