V implementaci Broadcom 802.11 byla zjištěna chyba ve zpracování WPS/EAP, týká se to SDK od roku 2010. Broadcom podle výzkumníka Quentina Kaisera odmítl CVE přidělit. Modemy Huawei a Technicolor jsou používány i v ČR, v LTE routerech, běžných domácích routerech a firemních přístupových bodech, jejich současný počet a zranitelnost konkrétních verzí však zatím neznáme. Více detailů a demo. GitHub / Broadcom 802.11 SDK Detection Toolkit.
Byla vydána nová verze 10.8 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Přibyl balíček DietPi WireGuard.
Oslavte vydání openSUSE Leap 16.1 s námi v Praze! Ve středu 4. listopadu 2026 (den po vydání Leapu 16.1) vás zveme na malou oslavu vydání openSUSE Leap 16.1 do pražské kanceláře SUSE. Připravili jsme pro vás dvě krátké přednášky: … více »
Dle plánu bylo PHP vydáno v nových verzích 8.5.12, 8.4.27, 8.3.36 a 8.2.35. Opraveny jsou kritické zranitelnosti CVE-2026-109618 a CVE-2026-109619 aneb PHP2Shell.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-2.1 a 24.04-1.5. S opravou kritických zranitelností.
Společnost Škoda Auto zveřejnila na Printables bezplatné 3D modely příslušenství do svých vozů (držáky na nápoje, pomůcky pro vedení kabelů, mincovníky, háčky na USB kabely a čepice pro kapsy na zadních stranách opěradel sedadel, držáky na telefony a úchyty pro horní upevnění bezpečnostních pásů).
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 170 (pdf).
Dnes v 16:00 (14:00 UTC) budou opraveny 2 kritické zranitelnosti s CVSS 9.2 v PHP.
Nizozemská policie 13. října 2026 zabavila v datacentru Amsterdam Science Park server italského poskytovatele internetových služeb Autistici/Inventati (A/I), a to na základě americké žádosti o mezinárodní právní pomoc.… více »
Řešení dotazu:
#include <stdio.h>
#include <stdlib.h>
int lencln(char const * sin)
{
int len = 0;
for (int i = 0; sin[i] != '\0'; i++)
if((sin[i] >= 'A' && sin[i] <= 'Z') || (sin[i] >= 'a' && sin[i] <= 'z'))
len++;
return len;
}
char * clean(char const * sin){
int j = 0;
char *str_cln = NULL;
str_cln = (char*) malloc(sizeof(char) * (lencln(sin) + 1));
if(str_cln == NULL)
return NULL;
for (int i = 0; sin[i] != '\0'; i++)
if((sin[i] >= 'A' && sin[i] <= 'Z') || (sin[i] >= 'a' && sin[i] <= 'z'))
str_cln[j++] = sin[i];
str_cln[j]='\0'; // !!!
return str_cln;
}
int main(){
char sin[101];
scanf(" %100[^\n]s", sin);
char * strout = clean(sin);
puts(strout);
free(strout);
strout = NULL;
return 0;
}
A ten Tvoj obrázok je výstup z akého programu?
A ten Tvoj obrázok je výstup z akého programu?
z toho samýho jeho zkompilovanýho :O ;D hele jendův tutorial na asan ;D
.......obrázok..
btw text z konzole si mužeš normálně zkopírovat když ho uplně vobyčejně voznačíš myšičkou a pak máčkneš ctrl+shift+c a nemusíš čarovat s vobrázkama :O ;D ......a mužeš taky líp poskovávat jakejže soubor kde kompiluješ by tě učitelskej nemoch doxnout :O :D ;D ;D
podobně ctrl+shift+v na vložení textu do terminálu :O ;D
<pre>, tohle je na prd.
Nějak jsem to otipoval a hned při kompilaci vyletí warning:
a.c: In function ‘lencln’:
a.c:8:22: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
8 | if(sin[i] >= 'A' && sin[i] <= 'Z' || sin[i] >= 'a' && sin[i] <= 'z'){
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
a.c: In function ‘clean’:
a.c:23:22: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]
23 | if(sin[i] >= 'A' && sin[i] <= 'Z' || sin[i] >= 'a' && sin[i] <= 'z') {
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
tak bych začal tím. Dále bývá zvykem přiložit vstup, na kterém to spadne (např. jestli když tady testuješ písmenka, tak musí mít vstup čísla nebo tak něco), ale naštěstí mi to spadlo na prvním co jsem zadal.
A ta chyba je podle mě v tom, že alokuješ str_cln mallocem (neinicializované), nikde do toho nenapíšeš terminující nulu a pak se to pokusíš printfnout. No a printf čte a čte a čte, až narazí na konec. Takže tam přidej na konec clean str_cln[j] = 0; nebo alokuj callocem, ten ti to vynuluje.
Plus dávám za použití satanizéru, který zjevně alokovanou paměť otravuje, protože když to zkompiluju bez něj, tak mi většinou malloc vrátí nuly (byť podle specifikace tam může být cokoli), protože heap je na začátku vynulovaný aby tam nebyla tajná data předchozích procesů, a chyba se tak hned neprojeví.
Tiskni
Sdílej: