Vývoj programovacího jazyka Zig byl přesunut z GitHubu na Codeberg. Sponzoring na Every.
Stejně jako GNOME i KDE Plasma končí s X11. KDE Plasma 6.8 poběží už pouze nad Waylandem. Aplikace pro X11 budou využívat XWayland.
Poslanci Evropského parlamentu dnes vyzvali k výraznému zvýšení ochrany nezletilých na internetu, včetně zákazu vstupu na sociální sítě pro osoby mladší 16 let. Legislativně nezávazná zpráva, kterou dnes odsouhlasil Evropský parlament poměrem 493 hlasů pro ku 92 proti, kromě zavedení věkové hranice 16 let pro využívání sociálních sítí, platforem pro sdílení videí či společníků s umělou inteligencí (AI) vyzývá také k zákazu … více »
Doom v KiCadu nebo na osciloskopu? Žádný problém: KiDoom: Running DOOM on PCB Traces a ScopeDoom: DOOM on an Oscilloscope via Sound Card.
Po AlmaLinuxu byl v nové stabilní verzi 10.1 vydán také Rocky Linux. Přehled novinek v poznámkách k vydání.
Open source reimplementace počítačových her Tomb Raider I a Tomb Raider II spolu s dalšími vylepšeními a opravami chyb TRX byla vydána ve verzi 1.0. Jedná se o sloučení projektů / enginů TR1X a TR2X do jednoho TRX. Videoukázka na YouTube.
Společnost Seznam.cz spouští konverzační nástroj založený na umělé inteligenci Seznam Asistent. Asistent využívá vlastní jazykový model SeLLMa a dočasně i komerční modely od OpenAI provozované v evropských datacentrech prostřednictvím Microsoft Azure. Dlouhodobým cílem Seznamu je provozovat Asistenta výhradně na interních jazykových modelech a ve vlastních datových centrech.
Software LibrePods osvobozuje bezdrátová sluchátka AirPods z ekosystému Applu. Exkluzivní funkce AirPods umožňuje využívat na Androidu a Linuxu. Díky zdokumentování proprietárního protokolu AAP (Apple Accessory Protocol).
Byl vydán AlmaLinux OS 10.1 s kódovým názvem Heliotrope Lion. S podporou Btrfs. Podrobnosti v poznámkách k vydání.
Placená služba prohledávání zprostředkovatelů dat a automatického odstraňování uniklých osobních údajů Mozilla Monitor Plus bude 17. prosince ukončena. Bezplatná monitorovací služba Mozilla Monitor bude i nadále poskytovat okamžitá upozornění a podrobné pokyny k omezení rizik úniku dat. Služba Mozilla Monitor Plus byla představena v únoru loňského roku.
Současné vývojové jádro je 4.15-rc3, vydané 10. prosince. Linus řekl: „Nemám radost z velikosti raných kandidátů na vydání 4.15, ale rc3 často bývá největší, protože je to stále poměrně brzo v té části, kdy se věci uklidňují, přitom ale lidé už měli dostatek času na to, aby začali nacházet problémy. I tak je tento rc3 příliš velký i podle standardů rc3. To není dobré.“ Od vydání 4.15-rc2 bylo začleněno 489 sad změn.
Stabilní aktualizace: 4.14.5, 4.9.68, 4.4.105 a 3.18.87 byly vydány 10. prosince. Další aktualizace 4.14.6 a 4.9.69 byly v době psaní tohoto článku v procesu revidování a vyšly 14. prosince.
Stojí za přečtení: tento příspěvek v blogu APNIC od Marka Nottinghama o nejbližším vývoji různých internetových protokolů. „Nejnovější změnou na obzoru je DOH – DNS over HTTP. Významné množství výzkumu ukázalo, že sítě běžně využívají DNS jako prostředek k vynucování pravidel (ať už ve jménu poskytovatele nebo vyšší autority). O obejití kontroly tohoto typu pomocí šifrování se již delší dobu mluví, ale má to nevýhodu (alespoň z některých úhlů pohledu) – jde to oddělit od ostatního provozu, například zablokovat přístup na portu s příslušným číslem. DOH to řeší tak, že nasadí DNS provoz na stávající HTTP spojení, čímž zruší jakoukoli diskriminaci.
MAP_FIXED_SAFE. Jonathan Corbet. 13. prosince 2017
Volba MAP_FIXED systémového volání mmap() procesu umožňuje určit, že k mapování má dojít na dané virtuální adrese, je-li to možné. Ukazuje se však, že „je-li to možné“ napáchá o něco více vedlejších škod, než by se některým líbilo, a dokonce může vést ke zneužitelným zranitelnostem. Nová, bezpečnější volba se připravuje, ale jak tomu často bývá, narazila na nějaké netechnické obtíže.
Každé volání mmap() umožňuje volajícímu procesu určit adresu, kde má se má provést mapování. Za běžného provozu je však tato adresa pouze nasměrování, které jádro klidně může ignorovat. MAP_FIXED je tu pro případy, kdy k mapování opravdu musí dojít na požadované adrese, nebo nebude aplikace fungovat. Jádro tento příznak bere vážně až do té míry, že pokud v daném adresním rozsahu už je jiné mapování, zničí ho, aby se udělalo místo pro mapování nové. Na první pohled to může vypadat jako podivná sémantika: jestliže aplikace chce mapování v dané oblasti, asi by měla být schopná převzít zodpovědnost za to, že na požadované mapování bude místo. Ale volání mmap() je takto nastaveno, čili se děje, co se děje.
Asi není třeba dodávat, že to může být problematické v situaci, kdy aplikace neví o konfliktu mapování – něco, co by mohlo nastat jako výsledek chyby, randomizace rozložení adresního prostoru, neshody mezi knihovnami nebo záměrné manipulace útočníkem. Data obsažená v tomto mapování (nebo alespoň v překrývající se části), budou tiše zahozena a na jejich místě se objeví nové mapování. Podle očekávání není příliš pravděpodobné, že po takové akci bude všechno fungovat správně. V některých případech jsou výsledkem bezpečnostní zranitelnosti, viz například CVE-2017-1000253, kdy bylo interní použití MAP_FIXED v jádře za účelem načtení programů do paměti zneužito k poškození zásobníku.
Řešení se dá najít v sadě patchů MAP_FIXED_SAFE od Michala Hocka. Přidává nový příznak mmap(), který se jmenuje – překvapení – MAP_FIXED_SAFE. Jeho sémantika se podobá MAP_FIXED s jednou výjimkou: operace selže, není-li cílový rozsah adres volný. Načítání ELF v jádře je upraveno, aby tento nový příznak používalo při mapování programů do paměti. Tím pádem nahrávání programu v případě kolize dvou mapování selže, ale je to ta lepší varianta. Očekává se, že nový kód bude používat tento příznak téměř ve všech případech a že starší programy na něj nakonec také přejdou.
Někteří navrhli přidat samostatný příznak, který by změnil chování MAP_FIXED, takže aplikace by volání mmap() předaly něco jako MAP_FIXED|MAP_SAFE. Problém s tímto přístupem je, že mmap() je jedno z těch systémových volání, která nikdy neřešila neznámé příznaky. Program používající tuto konstrukci by se tím pádem na starších jádrech, které postrádaly podporu nového příznaku MAP_SAFE, tiše vrátil zpět k MAP_FIXED. Použití nového příznaku znamená, že ačkoliv na starších jádrech aplikace nedosáhne kýženého selhání, nebude-li adresní prostor dostupný, nebude zároveň ani sahat do žádných dalších mapování (protože zadaná adresa bude jádrem považována za nezávazné nasměrování).
Tato změna je více méně připravena a Hocko požádal o její začlenění. Je tu ovšem zásadní otázka, která je příčinou největší části debat o této řadě patchů: pojmenování MAP_FIXED_SAFE. Různí vývojáři by z různých důvodů rádi jiný název. Mezi návrhy zaznělo MAP_FIXED_UNIQUE, MAP_FIXED_NOREPLACE, MAP_FIXED_NO_CLOBBER, MAP_TANTRUM, MAP_EXACT, MAP_NOFORCE aj. Byl to právě ten druh diskuze, kdy se již podařilo vyřešit technické problémy, ale každý se chce podepsat pod finální výsledek.
Poté, co Hocko přežil velkou část diskuze, oznámil své vlastní rozhodnutí o jméně:
„Obávám se, že bychom to mohli řešit donekonečna a stejně by se našel někdo, kdo se snaží najít lepší název. Proto jsem se rozhodl držet se svého původního MAP_FIXED_SAFE. Proč? No, protože název si drží prefix MAP_FIXED, který by měl být vývojářům známý, a sufix _SAFE dává najevo, že všechny nebezpečné vedlejší účinky starého MAP_FIXED jsou pryč.Také prohlásil, že každý, kdo byl se jménem skutečně nespokojen, mohl zablokovat tento patch a nějakým způsobem dospět ke konsenzu na lepším, ale že on už se toho účastnit nebude. Takže přirozeně se někdo takový našel, kdo protestoval, a Hocko mu popřál hodně štěstí s převzetím odpovědnosti za patch.
Vzhledem k nátuře zúčastněných by si někdo mohl myslet, že dojde k zablokování užitečného patche. Autor článku by se však vsadil, že sada patchů MAP_FIXED_SAFE bude začleněna ve zhruba stejném stavu, v jakém se aktuálně nachází. Řeší totiž skutečný problém. Zdržování a hledání perfektního jména se nezdá jako přístup, který by komukoliv prospěl.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej: