abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    dnes 04:00 | Nová verze

    FreeTube, desktopový klient pro YouTube využívající lokální API, byl vydán ve verzi 0.26.0. Toto velké opravné vydání mj. vrací částečnou podporu živých přenosů nebo přepracovává zobrazování titulků a obecně nastavení videa v přehrávači – FreeTube umožňuje např. přehrávat video s větším zrychlením.

    ʚĭɞ 🍉 | Komentářů: 0
    dnes 03:55 | Humor

    Další vlna kyberútoků zasáhla chladicí zařízení supermarketů v sedmi evropských zemích, Belgii, Lucembursku, Švédsku, Nizozemsku, Irsku, Estonsku a Finsku. Mrazáky se v některých prodejnách opět 'proměnily v trouby' a zahřály až na 50°C, což pochopitelně vedlo ke znehodnocení uskladněných potravin. Útoky navazují na podobný incident ve Francii z první poloviny října letošního roku, pachatel stále není znám.

    👻 | Komentářů: 0
    včera 17:52 | Zajímavý projekt
    WorldTUI je experimentální LLM o 360 milionech parametrů, který napodobuje terminál. Podle stisknutých kláves se snaží předpovídat změny na obrazovce a zvládá tak vyonávat rozličné příkazy, například Vim, tmux i jednoduchou hru Snake. Nejedná se o skutečný příkazový řádek, jeho 'soubory' i příkazy jsou pouze simulované a model může samozřejmě různě chybovat. WorldTUI vychází z jazykového modelu Qwen2.5-Coder-0.5B, který autor … více »
    👻 | Komentářů: 2
    včera 17:48 | Zajímavý článek
    Josef Bacik navrhuje novou abstrakci cell, která by celý kontejner reprezentovala jako jeden kernelový objekt. Proces by vznikl přímo uvnitř cell a nemohl by ji opustit. Oprávnění ke správě by se odvozovala od držení cellfd. … více »
    vencour | Komentářů: 9
    včera 16:23 | Bezpečnostní upozornění

    Zranitelnost v aktualizačním mechanismu WordPress umožňuje útočníkovi zasáhnout do dočasného instalačního adresáře během aktualizace jádra systému. Před aktualizací veřejně dostupného WordPressu dočasně zablokovat HTTP přístup k wp-content/upgrade/, následně aktualizovat a zkontrolovat logy. Postižené verze: WordPress 4.7 až 7.1.3.

    vencour | Komentářů: 1
    včera 16:11 | Bezpečnostní upozornění

    Alpine Linux zveřejnil podrobnosti o útoku na svůj GitLab a 30. října oznámil obnovení provozu. Útočník se 20.–21. října pokusil zneužít chybu v regulárních výrazech. Exploit způsobil opakované pády workerů a několikrát se dostal do pokročilé fáze. Úspěšné spuštění kódu však nebylo potvrzeno. Fix: Opravený GitLab a současně Ruby 3.3.13, 3.4.12 nebo 4.0.9+, pokud jde o vlastní sestavení či kontejner.

    vencour | Komentářů: 1
    včera 15:44 | Pozvánky

    Konference OpenAlt 2026 proběhne tento víkend 7. a 8. listopadu na FIT VUT v Brně. Jedná se již o 21. ročník této konference, která propojuje otevřené technologie, svobodný software, hardware a lidi, kteří chtějí věci nejen používat, ale také jim rozumět a měnit je k lepšímu. Více o konferenci v příspěvku OpenAlt 2026: technologie, které dávají svobodu na blogu spolku OpenAlt.

    Ladislav Hagara | Komentářů: 1
    včera 15:22 | IT novinky

    Eben Upton oznámil další zdražení jednodeskových počítačů Raspberry Pi. Tentokrát 16 GB varianty Raspberry Pi o 80 dolarů a 16 GB varianty Raspberry Pi Compute Module 5 o 40 dolarů. Cena Raspberry Pi 500+ se nemění.

    Ladislav Hagara | Komentářů: 0
    včera 15:11 | IT novinky

    Francouzské Národní shromáždění přijalo 30. října 2026 poměrem 11 hlasů pro, 10 proti a 14 abstencí pozměňovací návrh I-1358 ke státnímu rozpočtu na rok 2027, který zavádí daň z objemu dat doručovaných uživatelům internetu. Návrh socialistického poslance Laurenta Lhardita stanovuje sazbu 0,055 eura za gigabajt, tedy 55 eur za terabajt. Zatím nejde o platný zákon, ale o dílčí hlasování během prvního čtení rozpočtu. Daň by měli platit

    … více »
    vencour | Komentářů: 9
    1.11. 12:44 | IT novinky

    Nizozemská vláda ve snaze šetřit a zvyšovat efektivitu s využitím umělé inteligence (AI) hodlá zrušit asi 25.000 pracovních míst ve státní správě. Cílem je postupně dosáhnout ročních úspor až 3,5 miliardy eur (85,2 miliardy Kč). Na konci loňského roku ve státní správě pracovalo rekordních 160.000 lidí. „Nemůžeme pokračovat v tom, co jsme dělali dosud,“ uvedl státní tajemník pro efektivní fungování vlády Eric van den Burg. „Proto

    … více »
    Ladislav Hagara | Komentářů: 40
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (20%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2967 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: strncpy přidává '\031' – bug v glibc?

    stativ avatar 27.12.2009 11:29 stativ | skóre: 54 | blog: SlaNé roury
    strncpy přidává '\031' – bug v glibc?
    Přečteno: 744×
    Právě jsem narazil na prapodivný problém, kdy mi v jednom konkrétním případě strncpy přidává znak '\031' (end of medium?) na konec řetězce.

    Dělá mi to na desktopu s Archem (32 bit) – jak s gcc 4.4.2 tak s clang 2.6, tudíž předpokládám, že pokud bug není u mě tak bude nejspíš v glibc (2.11.1). Když jsem to ale zkoušel na mašině s OpenSuSE (64bit) tak to jelo správně.

    Ukázka kódu, který blbne:
    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    
    int main() {
        char *test = "x^3 + (-x)^5";
        /*char *test = "sin(123 + 45 * ln(27 - 6))";*/
        char *str = malloc(strlen(test) * sizeof(char));
    
        strncpy(str, test, strlen(test));
    
        printf("%s\n",str);
    }
    
    Čekal bych, že na výstupu bude: x^3 + (-x)^5

    ale já dostanu: x^3 + (-x)^5\031

    Zvláštní je, že s jiným řetězcem (např. tím zakomentovaným to funguje).

    Můj dotaz je – je bug u mě, nebo jinde?
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk

    Řešení dotazu:


    Odpovědi

    27.12.2009 11:40 0-58glfsdhesr
    Rozbalit Rozbalit vše Re: strncpy přidává '\031' – bug v glibc?
    "Prekladac automaticky pridava ke kazde konstatne typu *char znak \0, aby funkce poznaly, kde konci" (volne podle K&R). Avsak strlen vraci delku bez \0 (man 3 strlen).

    V tomto pripade by mozna stalo za to pouzit funkci strdup, ale nekdy se hodi si pamet alokovat rucne.

    Doporucuju na ten kod spustit valgrind, ktery odhali chyby podobneho typu.
    stativ avatar 27.12.2009 11:49 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: strncpy přidává '\031' – bug v glibc?
    Jop, přesně tak. Ani mě nenapadlo, že bych mohl takovou chybu udělat (zvlášť, když jinde to mám správně).
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    stativ avatar 27.12.2009 11:46 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: strncpy přidává '\031' – bug v glibc?
    Safra, já zapomněl na plus jedna.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    27.12.2009 16:48 KS | skóre: 10 | blog: blg | Horní polní u západní dolní
    Rozbalit Rozbalit vše Re: strncpy přidává '\031' – bug v glibc?
    Měl byste se raději podívat na význam základních operátorů v C++, protože sizeof(test) vrátí délku celého pole, namísto volání strlen(test), násobení sizeof(char) a přičítání jedničky. Nejen, že použití sizeof(test) je elegantnější, ale narozdíl od Vámi prezentovaného řešení má konstatní složitost (strlen(test) má lineární složitost!).
    Pochybnost, nejistota - základ poznání
    AraxoN avatar 27.12.2009 17:59 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: strncpy přidává '\031' – bug v glibc?
    Neviem ako v C++, ale v C sizeof(test) vráti veľkosť dátového typu "smerník".
    27.12.2009 18:25 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
    Rozbalit Rozbalit vše Re: strncpy přidává '\031' – bug v glibc?
    protože sizeof(test) vrátí délku celého pole
    Jenže zde jde o pointer! Velikost celého pole může sizeof vrátit pouze pokud jde o pole v době deklarace. Prostě:
    int a[10];
    int *pa = a;
    // sizeof(a) = 10*sizeof(int) != sizeof(pa) = sizeof(void *)
    
    I am always ready to learn although I do not always like to be taught. (W. Churchill)
    stativ avatar 27.12.2009 19:15 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: strncpy přidává '\031' – bug v glibc?
    To je pěkný, ale je to pointer. Navíc sizeof vrací alokovanou paměť, ne tu, která je řetězcem reálně obsazená.
    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk

    Založit nové vlákno • Nahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.