Byly publikovány informace (technické detaily) o bezpečnostním problému Snapu. Jedná se o CVE-2026-3888. Neprivilegovaný lokální uživatel může s využitím snap-confine a systemd-tmpfiles získat práva roota.
Nightingale je open-source karaoke aplikace, která z jakékoliv písničky lokálního alba (včetně videí) dokáže oddělit vokály, získat text a vše přehrát se synchronizací na úrovni jednotlivých slov a hodnocením intonace. Pro separaci vokálů využívá UVR Karaoke model s Demucs od Mety, texty písní stahuje z lrclib.net (LRCLIB), případně extrahuje pomocí whisperX, který rovněž využívá k načasování slov. V případě audiosouborů aplikace na
… více »Po půl roce vývoje od vydání verze 49 bylo vydáno GNOME 50 s kódovým názvem Tokyo (Mastodon). Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.
Článek na stránkách Fedora Magazinu informuje o vydání Fedora Asahi Remixu 43, tj. linuxové distribuce pro Apple Silicon vycházející z Fedora Linuxu 43.
Byl zveřejněn program konference Installfest 2026. Konference proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13. Vstup zdarma.
Byla vydána Java 26 / JDK 26. Nových vlastností (JEP - JDK Enhancement Proposal) je 10. Odstraněno bylo Applet API.
Byla vydána nová verze 260 správce systému a služeb systemd (Wikipedie, GitHub). Odstraněna byla podpora skriptů System V. Aktualizovány byly závislosti. Minimální verze Linuxu z 5.4 na 5.10, OpenSSL z 1.1.0 na 3.0.0, Pythonu z 3.7.0 na 3.9.0…
Byla vydána nová verze 5.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v poznámkách k vydání. Videopředstavení na YouTube.
Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.
Byl představen open-source a open-hardware prototyp nízkonákladového raketometu kategorie MANPADS, který byl sestaven z běžně dostupné elektroniky a komponent vytištěných na 3D tiskárně. Raketa využívá skládací stabilizační křidélka a canardovou stabilizaci aktivně řízenou palubním letovým počítačem ESP32, vybaveným inerciální měřicí jednotkou MPU6050 (gyroskop a akcelerometr). Přenosné odpalovací zařízení obsahuje GPS,
… více »
#include < sys/socket.h >
#include < netinet/in.h >
#include < arpa/inet.h >
#include < stdio.h >
#include < stdlib.h >
int main(int argc, char *argv[])
{
struct in_addr addr;
unsigned char buf[sizeof(struct in6_addr)];
char str[INET6_ADDRSTRLEN];
if (argc<2)
{
fprintf(stderr, "IPv4 address required as an argument.\n");
exit(EXIT_FAILURE);
}
if (inet_aton(argv[1], &addr) == 0)
{
perror("inet_aton");
exit(EXIT_FAILURE);
}
if (inet_pton(AF_INET, argv[1], buf) != 1)
{
perror("inet_pton");
exit(EXIT_FAILURE);
}
if (inet_ntop(AF_INET6, buf, str, INET6_ADDRSTRLEN)==NULL)
{
perror("inet_ntop");
exit(EXIT_FAILURE);
}
printf("%s\n", str);
exit(EXIT_SUCCESS);
}
Řešení dotazu:
#define _GNU_SOURCE
#include < string.h>
#include < sys/socket.h>
#include < netinet/in.h>
#include < arpa/inet.h>
#include < stdio.h>
#include < stdlib.h>
#define IPV6_ADDRESS_SIZE sizeof(struct in6_addr)
int main(int argc, char *argv[])
{
struct in_addr addr;
unsigned char buf_v4[sizeof(struct in_addr)];
unsigned char buf_v6[IPV6_ADDRESS_SIZE] = {0};
unsigned char str[INET6_ADDRSTRLEN];
if (argc<2)
{
fprintf(stderr, "IPv4 address required as an argument.\n");
exit(EXIT_FAILURE);
}
if (inet_aton(argv[1], &addr) == 0)
{
perror("inet_aton");
exit(EXIT_FAILURE);
}
if (inet_pton(AF_INET, argv[1], buf_v4) != 1)
{
perror("inet_pton");
exit(EXIT_FAILURE);
}
*(buf_v6 + IPV6_ADDRESS_SIZE - 5) = 255;
*(buf_v6 + IPV6_ADDRESS_SIZE - 6) = 255;
mempcpy(buf_v6 + IPV6_ADDRESS_SIZE - 4, buf_v4, 4);
if (inet_ntop(AF_INET6, buf_v6, str, INET6_ADDRSTRLEN)==NULL)
{
perror("inet_ntop");
exit(EXIT_FAILURE);
}
printf("%s\n", str);
exit(EXIT_SUCCESS);
}
Tiskni
Sdílej: