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 09:00 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 133 (pdf) a HackSpace 70 (pdf).

    Ladislav Hagara | Komentářů: 0
    včera 23:55 | Nová verze

    Po půl roce vývoje od vydání verze 44 bylo vydáno GNOME 45 s kódovým názvem Rīga. Přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře. Krátké představení na YouTube. Jednou z nejviditelnějších změn je odstranění tlačítka Činnosti (Activities) v levém horním rohu. Nově je tam indikátor ploch. Výchozím prohlížečem obrázků je nově Loupe, nahradil Eye of GNOME (eog). Novou aplikací pro práci s webovou kamerou je Snapshot, nahradil Cheese. Rozšíření GNOME Shellu fungující v předchozích verzích nejsou s verzí 45 kompatibilní.

    Ladislav Hagara | Komentářů: 2
    včera 17:55 | Komunita

    Linux Foundation představila a zaštítila svobodný a otevřený fork Terraformu s názvem OpenTofu. Ten vznikl pod původním názvem OpenTF jako reakce na přelicencování Terraformu na BSL (Business Source License) společností HashiCorp.

    Ladislav Hagara | Komentářů: 2
    včera 11:22 | IT novinky

    Google oznámil (en), že konverzační AI Bard (Wikipedie) může nyní komunikovat s aplikacemi a službami Google: "Díky nejnovějšímu rozšíření služby může Bard najít a zobrazit relevantní informace z nástrojů společnosti Google, které používáte každý den, jako je například Gmail, Dokumenty, Disk, Mapy, YouTube a Letenky Google, a to i když jsou potřebné informace v různých aplikacích a službách."

    Ladislav Hagara | Komentářů: 0
    včera 08:00 | Zajímavý software

    Apache Pinot (GitHub, Wikipedie) dospěl do verze 1.0. Jedná se o realtimeový distribuovaný OLAP datastore navržený tak, aby na OLAP dotazy odpovídal s nízkou latencí.

    Ladislav Hagara | Komentářů: 0
    19.9. 19:44 | Nová verze

    Byla vydána Java 21 / JDK 21. Nových vlastností (JEP - JDK Enhancement Proposal) je 15. Jedná se o LTS verzi. Nová Java / JDK vychází každých 6 měsíců.

    Ladislav Hagara | Komentářů: 14
    19.9. 16:55 | Nová verze

    Byla vydána betaverze Fedora Linuxu 39, tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 17. října. Nový Fedora Linux přinese GNOME 45, LibreOffice 7.6, GCC 13.2, …

    Ladislav Hagara | Komentářů: 9
    19.9. 12:33 | Nová verze

    Byla vydána verze 17.0.1, tj. první veřejná verze z nové řady 17.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools, Libc++, Polly a Flang.

    Ladislav Hagara | Komentářů: 6
    19.9. 11:33 | Zajímavý projekt

    Z aktuálních akcí na Humble Bundle lze vypíchnout sady knih Become a Python Expert by Pearson a Software Architecture by O'Reilly nebo hru PC Building Simulator (Steam, ProtonDB).

    Ladislav Hagara | Komentářů: 0
    19.9. 10:55 | Nová verze

    Craig Loewen se na blogu Microsoftu rozepsal o zářijové aktualizaci Windows Subsystému pro Linux (WSL) aneb o předběžném vydání 2.0.0. Nové experimentální vlastnosti (autoMemoryReclaim, sparseVhd, networkingMode, dnsTunneling, firewall, autoProxy) představil také na YouTube.

    Ladislav Hagara | Komentářů: 26
    Knihy s linuxovou tematikou
     (20%)
     (16%)
     (51%)
     (26%)
    Celkem 267 hlasů
     Komentářů: 11, poslední 17.9. 19:19
    Rozcestník

    Dotaz: Xinetd + Perl + ukonceni klienta

    7.9.2008 16:26 kocour_easy
    Xinetd + Perl + ukonceni klienta
    Přečteno: 172×
    Zdravim, zkousim si zprovoznit xinetd server napsany v perlu. Pro xinetd jsem si udelal testovanej konfigurak.
    service test
    {
    disable = no
    type = UNLISTED
    wait = no
    socket_type = stream
    protocol = tcp
    port = 2222
    server = /root/test.pl
    flags = NOLIBWRAP KEEPALIVE
    }
    V perl skriptu jsem inicializoval stdin a stdout. Cteni od klienta pres stdin a zapis klientovy na stdout pomoci systemovych funkci sysread a syswrite funguje. Nedokazal jsem najit nikde co se stane kdyz klient zavre spojeni pomoci funkci shutdown+close. Tedka to mam reseno pomoci funkce alarm.
    sub get_alarmed {
    exit;
    }

    local $SIG{ALRM} = \&get_alarmed;
    alarm 10;
    my $ret_len = sysread($s, $buf, 2);
    alarm 0;
    Podle dokumentace by mneli tyto funkce vracet undef pri nejake chybe. Moje otazka zni jestli je toto spravne a jak se da nastavit sysread+syswrite do neblockovaneho rezimu. Diky

    Odpovědi

    7.9.2008 16:56 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Xinetd + Perl + ukonceni klienta

    je zbytecne delat handler s exitem na sigalarm, protoze implicitni handler dela exit :-)

    pokud klient provede close, dostanete na vstupu (sysread) EOF, tj. 0 prectenych znaku. na vystupu (syswrite) dostanete -1 a EPIPE, pripadne se vam dostavi i sigpipe, ktery je potreba osetrit. pokud nemate nejaky extra duvod k sys* funkcim (tj. nevadi vam bufferovani, perlio, atd), muzete pouzit normalni print, read nebo readline (alias <>).

    nonblock muzete delat dvema zpusoby, a to bud klasicky pres fcntl (viz cookbook), nebo ve vetsine pripadu je plne dostacujici pouzivat select na normalnich (blokujicich) socketech. v druhem pripade bych dal prednost jiz hotovemu modulu IO::Select.

    In Ada the typical infinite loop would normally be terminated by detonation.

    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.