Tribunál Soudního dvora Evropské unie dnes zamítl několik žalob, v nichž se americká společnost Apple ohrazovala proti pravidlům fungování velkých technologických společností na unijním trhu. Applu se nelíbilo, že jeho obchod s aplikacemi a operační systém iOS mají podléhat přísnějším povinnostem jen proto, že Brusel firmu považuje za takzvaného gatekeepera, tedy strážce přístupu.
Na WhatsAppu budou postupně v průběhu následujících měsíců zavedena uživatelská jména. Telefonní čísla tak mohou zůstat soukromá. Aktuálně si lze uživatelské jméno rezervovat.
Byl aktualizován TIOBE Index (Wikipedie). Programovací jazyk Rust se poprvé dostal do první desítky tohoto žebříčku popularity programovacích jazyků. Vede Python následovaný C, C++, Java, C#, …
Proton (Wikipedie), tj. fork Wine integrovaný ve Steamu umožňující na Linuxu hrát hry určené pouze pro Windows, byl vydán ve verzi 11.0-1. Přehled novinek se seznamem nově podporovaných her na GitHubu. Aktuální přehled všech podporovaných her na stránkách ProtonDB
Byly publikovány zdrojové kódy počítačové hry Unturned. Pro nekomerční účely. V plánu je přelicencování pod MIT. Hra Unturned je postavena nad multiplatformním herním enginem Unity.
První česká družice navržená a sestavená výhradně studenty se dostala na oběžnou dráhu Země. Družice KOSTKA, kterou vyvinul studentský tým YSpace z Vysokého učení technického v Brně (VUT), dnes odstartovala na palubě rakety Falcon 9 společnosti SpaceX v rámci mise Transporter-17 z kalifornské základny Vandenberg Space Force Base.
Po nákresech ovladače Steam Controller a puku společnost Valve na svém GitLabu publikovala projekt Inkterface, tj. podrobný návod (PDF, video v mp4) na sestavení předního panelu s e-papírovým displejem pro Steam Machine pro zobrazování systémových informací. Použity jsou součástky od společnosti Adafruit.
V jádře Linux byla nalezena a v dubnu letošního roku v upstreamu opravena kritická zranitelnost Bad Epoll aneb CVE-2026-46242. Jedná se o zranitelnost typu "race-condition use-after-free", která běžnému uživateli umožňuje získat práva roota. Na distribucích Linuxu i na Androidu. Dokonce i zevnitř sandboxu prohlížeče Chrome. Chyba byla do Linuxu zavedena v dubnu 2023, tj. Linux 6.4.
Byla vydána nová verze 10.4 sady aplikací pro SSH komunikaci OpenSSH. Přináší řadu důležitých bezpečnostních oprav, vylepšení funkcí a oprav chyb. Vyzkoušet lze experimentální podporu postkvantového algoritmu mldsa44-ed25519.
Open Printer je otevřená kompaktní tiskárna od Open Tools. Brzy by měla být spuštěna kampaň na její podporu na Crowd Supply. Současně by měly být uvolněny zdrojové kódy. Postavena je na Raspberry Pi Zero W a STM32. Používá inkoustové kazety HP 302.
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
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.
Tiskni
Sdílej: