GNU cflow 1.7 jau buvo išleistas su naujomis komandomis ir dar daugiau

Po trejų metų vystymosi Buvo paskelbta apie naujos GNU cflow 1.7 versijos išleidimą. Tie, kurie nežino apie šį įrankį, turėtų žinoti, kad tai yra skirtas sukurti vaizdinį funkcijų iškvietimų grafiką C programose, kuris gali būti naudojamas supaprastinti taikymo logikos tyrimą.

Grafikasarba konstruojamas tik iš šaltinio tekstų analizės, nereikia paleisti programos, be to, palaikoma tiesioginių ir atvirkštinių srautų grafikų generavimas, taip pat failų su kodu kryžminių nuorodų sąrašų generavimas.

Paketas yra visiškai funkcionalus ir kompiliuojamas bei veikia bet kuriame GNU/Linux paskirstyme, taip pat naujesnėse UNIX tipo sistemose. Jis palaiko visas linijos perjungimo komandas, reikalingas POSIX. Jis gali pateikti rezultatus dviem formatais: GNU cflow formatu (kuris yra numatytasis) ir POSIX formatu.

Šiuo metu įrankis gali apdoroti tik C šriftus, nes tai yra vienintelis nukrypimas nuo POSIX specifikacijų, reikalaujantis galimybės apdoroti YACC ir LEX šriftus, taip pat dvejetainius objektų failus.

Emacs modulis cflow-mode.el veikia su failais GNU cflow formatu (priešingai nei POSIX formatu) ir buvo išbandytas su Emacs 24.2.1.

Pagrindinės naujos GNU cflow 1.7 funkcijos

Šioje naujoje leidimo versijoje išsiskiria suderinamumo su "taško" išvesties formatu įgyvendinimu ('–format=taškas'), kad sugeneruotumėte DOT rezultatą tolesniam apdorojimui Graphviz pakete.

Be to, taip pat pabrėžiama pridėta galimybė nurodyti kelias paleisties funkcijas, dubliuojant „–pagrindines“ parinktis, kuri bus sugeneruota su atskiru grafiku kiekvienai iš šių funkcijų.

Taip pat pažymėtina, kad buvo pridėta parinktis „–target=FUNCTION“, kad gautą grafiką apribotų tik viena šaka kuri apima tam tikras funkcijas (parinktį „–target“ galima nurodyti kelis kartus).

Kitas pakeitimas, kuris buvo integruotas į šią naują GNU cflow 1.7 versiją, yra tas pridėtos naujos komandos naršyti diagramoje cflow režimas: »c», naudojamas norint pereiti į iškvietimo funkciją, «n», kuri naudojama pereiti prie kitos šio įdėjimo lygio funkcijos, ir «p», norint pereiti prie ankstesnės funkcijos su to paties lygio įdėjimu.

Kita vertus, šios naujos GNU cflow 1.7 versijos pranešime taip pat minima, kad ji taip pat buvo pašalinti du pažeidžiamumai kurie buvo nustatyti 2019 m. ir sukelia atminties pažeidimą apdorojant specialiai sukurtus šaltinio tekstus „cflow“.

Iš pažeidžiamumų, kurie buvo pašalinti, paminėti šie:

  • Pirmasis pažeidžiamumas (CVE-2019-16165) atsiranda, kai pasiekiama atmintis po to, kai analizatoriaus kode yra laisvos (naudoti-after-free) (nurodyta funkcija parser.c).
  • Antrasis pažeidžiamumas (CVE-2019-16166) yra susijęs su funkcijos nexttoken() buferio perpildymu. Kūrėjų nuomone, šios problemos nekelia grėsmės saugumui, nes jos apsiriboja nenormaliu paslaugų nutraukimu.

Pagaliau jei norite sužinoti daugiau apie tai apie šią naują versiją galite sužinoti išsamią informaciją šią nuorodą.

Kaip įdiegti „cflow“ sistemoje „Linux“?

Tiems, kurie domisi galimybe įdiegti šią priemonę savo sistemoje, turėtumėte žinoti, kad cflow yra kai kurių pagrindinių Linux platinimų saugyklose. Tik turiu paminėti, kad kai kuriose iš jų naujoji versija dar neįdiegta, tačiau bus kelių dienų klausimas, kol ji bus paruošta.

Tiems, kurie yra Debian, Ubuntu ar bet kurio jų darinio vartotojai, galite įdiegti iš terminalo įvesdami šią komandą:

sudo apt install cflow -y

Jei naudojasi „Arch Linux“, „Manjaro“ ar bet koks kitas iš jų sukurtas platinimas, diegimas turi būti atliktas iš AUR saugyklų:

yay -s cflow

Tiems, kurie domisi naujos versijos sudarymu, galite ją gauti iš sekanti nuoroda.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.