Konference OpenAlt 2023 proběhne o víkendu 11. a 12. listopadu v Brně. Přihlásit přednášky lze do neděle 08. října 23:59.
V X.Org v libX11 do 1.8.7 a libXpm do 3.5.17 bylo nalezeno a v upstreamu opraveno 5 bezpečnostních chyb (CVE-2023-43785, CVE-2023-43786, CVE-2023-43787, CVE-2023-43788 a CVE-2023-43789). Dvě nejstarší jsou s námi 35 let. Obsaženy byly již v X11R2 vydaném v únoru 1988.
Byly publikovány informace o bezpečnostní chybě Looney Tunables aneb CVE-2023-4911 v glibc ld.so. Útočník ji může využít k lokální eskalaci práv. Vyzkoušeno na výchozích instalacích linuxových distribucí Fedora 37 a 38, Ubuntu 22.04 a 23.04 a Debian 12 a 13. Chyba byla do glibc zavlečena v dubnu 2021. Detaily v txt.
Na Kickstarteru byla spuštěna crowdfundingová kampaň na podporu telefonu Murena 2 s /e/OS. Telefon má 2 hardwarové přepínače. Prvním lze jednoduše vypnout kamery a mikrofony. Druhým se lze odpojit od sítí.
Společnost Qualcomm publikovala říjnový bezpečnostní bulletin. V úvodu informuje, že bezpečnostní chyby CVE-2023-33106, CVE-2023-33107, CVE-2022-22071 a CVE-2023-33063 jsou cíleně využívány útočníky. O CVE-2022-22071 se píše už v loňském květnovém bulletinu. Detaily o zbylých chybách jsou k dispozici OEM partnerům. Veřejně budou k dispozici až s vydáním prosincového bulletinu.
Byla vydána nová verze 5.18 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 12.5.6. Tor na verzi 0.4.8.6.
Šifrovací nástroj VeraCrypt v menším vydání 1.26.7 nejen opravuje chyby a aktualizuje podporované algoritmy (podrobnosti v poznámkách vydání), ale také přestává podporovat původní svazky TrueCrypt.
V sobotu 7. října proběhne Maker Faire Liberec, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Mastodon vydal výroční zprávu za rok 2022 (pdf).
Ubuntu Summit 2023 proběhne od 3. do 5. listopadu v Rize.
Zdravím,
Pokouším se napsat program a spíš se i učím, ale mám problém s tímhle. Nedokážu pořád pochopit jak to pracuje a jedinej zdroj informací je
http://library.gnome.org/devel/glib/stable/glib-Key-value-file-parser.html
http://www.gtkbook.com/tutorial.php?page=keyfile
z čehož mi to pořád není jasný
Mám napsanou funkci pro přidávání záznamů
void add_record(gchar *name, gchar *last_name, gchar *birth, gchar *name_holiday) { GKeyFile *keyfile; GKeyFileFlags flags; GError *error = NULL; gchar *group_name; keyfile = g_key_file_new(); flags = G_KEY_FILE_KEEP_COMMENTS; if (!g_key_file_load_from_file (keyfile, "date_reminder.conf", flags, &error)) { g_error (error->message); return; } sprintf(group_name,"%s-%s", name, last_name); g_strup(group_name); /* Tohle je jenom kontrole záznamů co se tam bude vkládat */ printf("%s %s %s %s %s\n", group_name,name,last_name,birth,name_holiday); g_key_file_set_string(keyfile, group_name, "name", name); g_key_file_set_string(keyfile, group_name, "last_name", last_name); g_key_file_set_string(keyfile, group_name, "birth", birth); g_key_file_set_string(keyfile, group_name, "name_holiday", name_holiday); }
Problém je v tom, že se mi to do souboru neuloží a vůbec nevím co mi tam chybí nebo co mám blbě, takže budu rád za každou radu, protože v tuto chvíli víc asi nevymyslím. Výsledek by měl vypadat asi takhle pro uložení např. Jan, Osel, 4.5.1978, 5.6
[JAN-OSEL] name=Jan last_name=Osel birth=4.5.1978 name_holiday=5.6
Díky :)
Vyřešeno :)
void add_record(gchar *name, gchar *last_name, gchar *birth, gchar *name_holiday) { GKeyFile *keyfile; GKeyFileFlags flags; GError *error = NULL; gchar group_name[40]; gchar *buffer; gsize length; keyfile = g_key_file_new(); flags = G_KEY_FILE_KEEP_COMMENTS; if (!g_key_file_load_from_file (keyfile, "date_reminder.conf", flags, &error)) { g_error (error->message); return; } sprintf(group_name,"%s-%s", name, last_name); g_strup(group_name); printf("%s %s %s %s %s\n", group_name,name,last_name,birth,name_holiday); if(!g_key_file_has_group(keyfile,group_name)) { g_key_file_set_string(keyfile, group_name, "name", name); g_key_file_set_string(keyfile, group_name, "last_name", last_name); g_key_file_set_string(keyfile, group_name, "birth", birth); g_key_file_set_string(keyfile, group_name, "name_holiday", name_holiday); } else { printf("už existuje\n"); } buffer = g_key_file_to_data(keyfile, &length, NULL); g_file_set_contents ("date_reminder.conf", buffer, length, &error); g_key_file_free(keyfile); g_free(buffer); }
sprintf(group_name,"%s-%s", name, last_name); g_strup(group_name);je dosť zvláštna. Lepšie je asi niečo ako
group_name = g_strdup_printf("%s-%s", name, last_name);(a potom samozrejme g_free(group_name);) GKeyFile neukladá automaticky do súboru, o to sa musíš postarať ty. Funkcia g_key_file_to_data vráti reťazec obsahujúci tie kľúče/hodnoty a potom s tým musíš niečo urobiť (v tvojom prípade to musíš uložiť do toho súboru).
Díky,
Já teprv s Glib začínám takže ješte všechny ty funkce tak neznám takže nemám přehled :)
Tiskni
Sdílej: