Byla vydána nová verze 6.4 programovacího jazyka Swift (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.
Německý kancléř Friedrich Merz (CDU) se během debaty s finalisty studentské vědecké soutěže Jugend forscht vyjádřil pro konec anonymity na internetu a vyslovil názor, že pro uživatele Internetu by měla platit podobná právní odpovědnost jako pro novináře tradičních médií. Na dotaz studenta, jak by se tedy povinnost uvádět pravé jméno slučovala s prací investigativních novinářů nebo ochranou jejich zdrojů, Merz neodpověděl, ve své
… více »Společnost Fujitsu představila FUJITSU-MONAKA CPU a Fujitsu MONAKA Server. Navrženo, vyvinuto a vyrobeno v Japonsku. Pro suverénní AI infrastrukturu.
Předprodej v květnu představených notebooků Googlebook, nástupců notebooků Chromebook, bude spuštěn v pondělí 21. září.
Byla vydána betaverze Fedora Linuxu 45 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 20. října. S konzolí kmscon místo fbcon. Současně byla vydána betaverze Fedora Linux Asahi Remixu 45. S podporou čipů M3.
Po půl roce vývoje od vydání verze 50 bylo vydáno GNOME 51 s kódovým názvem "A Coruña" (Mastodon). Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře. Videopředstavení na PeerTube a YouTube.
OpenAI spolupracuje s konkurenty Anthropic a Google DeepMind ze skupiny Alphabet na bezpečnosti umělé inteligence (AI). Globální obavy ohledně existenčních rizik umělé inteligence vzrostly poté, co se o víkendu sešli vedoucí předních amerických firem z odvětví AI a vyzvali k pozastavení vývoje technologie.
Evropská unie navrhne zákaz sociálních sítí, online her a chatbotů pro děti mladší 13 let a možnost účtu pro děti do 15 let jen se souhlasem rodičů, oznámila šéfka Evropské komise Ursula von der Leyenová v dnešním projevu ve Štrasburku. Návrh předpisu nazvaného EU Kids Act představí Evropská komise ve čtvrtek. Von der Leyenová zdůraznila, že chce, aby se rovněž změnilo základní pravidlo: platformy budou muset dokázat, že jsou bezpečné.
… více »Byla vydána Java 27 / JDK 27. Nových vlastností (JEP - JDK Enhancement Proposal) je 9.
Byl vydán Mozilla Firefox 156.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Vestavěný prohlížeč PDF se nyní spouští o 45 % rychleji. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 156 bude brzy k dispozici také na Flathubu a Snapcraftu.
Ve zdojácích xinetd jsem v souboru xinetd/int.c narazil na řádek, který nechápu:
socklen_t size = AF_UNIX ;
Proč do proměnné „velikost“ někdo přiřazuje hodnotu z číselníku AF_*? Vždyť AF_UNIX = 1 a to přece není žádná velikost, ne?
V Gitu jsem k tomu našel zprávu:
24.5.2012 int.c: fix possible uninitialized value call when socket family detection fails
Ano, inicializovat proměnnou je fajn – ale proč zrovna hodnotou AF_UNIX?
Řešení dotazu:
socket.h je:
/* Address families. */ #define AF_UNSPEC PF_UNSPEC #define AF_LOCAL PF_LOCAL #define AF_UNIX PF_UNIX #define AF_FILE PF_FILE #define AF_INET PF_INET #define AF_AX25 PF_AX25 #define AF_IPX PF_IPX …
/* Protocol families. */ #define PF_UNSPEC 0 /* Unspecified. */ #define PF_LOCAL 1 /* Local to host (pipes and file-domain). */ #define PF_UNIX PF_LOCAL /* POSIX name for PF_LOCAL. */ #define PF_FILE PF_LOCAL /* Another non-standard name for PF_LOCAL. */ #define PF_INET 2 /* IP protocol family. */ #define PF_AX25 3 /* Amateur Radio AX.25. */ #define PF_IPX 4 /* Novell Internet Protocol. */ …Nepřijde mi, že by ta čísla měla znamenat nějakou velikost.
AF_UNIX je samozřejmě nesmysl, ta proměnná (aspoň na začátku) obsahuje délku příslušné sockaddr struktury, takže když už tam autor chtěl dát nějakou zdánlivě smysluplnou hodnotu, měl použít např. "sizeof(struct sockaddr)".
Ve skutečnosti je ale úplně jedno, jak se to inicializuje, protože pokud ten kód má mít nějaký smysl, funkce int_fail() se nebude vracet, nejspíš volá exit() nebo něco podobného. V okamžiku použití tak size vždy inicializovaná bude a ten warning je false positive.
Problém bude pravděpodobně v tom, že je int_fail() definovaná v jiném souboru a kompilátor tak neví, že se nemůže vrátit, pokud to není explicitně uvedeno v deklaraci (gcc na to má "__attribute__ ((__noreturn__))"). Nebo to řádně označeno je (případně je ta funkce inline) a jde o úlitbu starším kompilátorům, které nedokážou vyhodnotit, že proměnná bude vždy včas inicializovaná.
socklen_t size;a v pohode. Mozno to dava warningy pri pedantnejsej kontrole kodu. A samozrejme. Bud nic alebo nula. Napis autorovi.
Tiskni
Sdílej: