GNU cflow 1.7 je že izšel in ima nove ukaze in še več

Po treh letih razvoja objavljena je bila izdaja nove različice pripomočka GNU cflow 1.7. Tisti, ki se ne zavedajo tega pripomočka, bi morali vedeti, da je zasnovan za izgradnjo vizualnega grafa klicev funkcij v programih C, ki se lahko uporablja za poenostavitev študija logike aplikacije.

grafikonali pa je zgrajena zgolj iz analize izvornih besedil, brez potrebe po zagonu programa, poleg tega pa podpira generiranje grafov toka naprej in nazaj ter generiranje seznamov navzkrižnih sklicevanj za datoteke s kodo.

Paket je popolnoma funkcionalen ter se prevaja in izvaja na kateri koli distribuciji GNU/Linux in tudi na novejših sistemih, podobnih UNIX-u. Podpira vse ukaze za preklop linij, ki jih zahteva POSIX. Zmožen je izdelati izhod v dveh oblikah: formatu GNU cflow (ki je privzeto) in formatu POSIX.

Trenutno lahko pripomoček obdeluje samo pisave C, saj je to edino odstopanje od specifikacij POSIX, ki zahteva sposobnost obdelave pisav YACC in LEX ter binarnih objektnih datotek.

Modul Emacs cflow-mode.el deluje z datotekami v formatu GNU cflow (v nasprotju s formatom POSIX) in je bil preizkušen z Emacs 24.2.1.

Glavne nove funkcije GNU cflow 1.7

V tej novi različici izdaje opazen po implementaciji podpore za izhodni format "pike". ('–format=dot'), da ustvarite rezultat DOT za nadaljnjo obdelavo v paketu Graphviz.

Poleg tega je tudi poudarjeno, da dodana možnost določanja več funkcij zagona s podvajanjem možnosti »–glavne«, ki bo ustvarjen z ločenim grafom za vsako od teh funkcij.

Opozoriti je treba tudi, da je bila ta možnost dodana "–target=FUNCTION", da omejite nastali graf na samo eno vejo ki vključuje določene funkcije (možnost »–target« lahko podate večkrat).

Druga sprememba, ki je bila vključena v to novo različico GNU cflow 1.7, je ta dodani so novi ukazi za navigacijo po karti cflow-mode: "c", ki se uporablja za prehod na klicno funkcijo, "n", ki se uporablja za prehod na naslednjo funkcijo na tej ravni gnezdenja in "p" za prehod na prejšnjo funkcijo z enako stopnjo gnezdenja .

Po drugi strani pa je v napovedi te nove različice GNU cflow 1.7 omenjeno tudi dve ranljivosti odstranjeni ki so bili leta 2019 ugotovljeni, da povzročajo okvaro pomnilnika pri obdelavi posebej izdelanih izvornih besedil v cflow.

Od ranljivosti, ki so bile odpravljene, so navedene naslednje:

  • Prva ranljivost (CVE-2019-16165) se pojavi, ko je pomnilnik dostopen po prostem (brez uporabe) v kodi razčlenjevalnika (referenčna funkcija v parser.c).
  • Druga ranljivost (CVE-2019-16166) je povezana s prelivanjem medpomnilnika v funkciji nexttoken(). Po mnenju razvijalcev te težave ne predstavljajo varnostne grožnje, saj so omejene na nenormalno ukinitev pripomočka.

Končno če vas zanima več o tem o tej novi različici lahko podrobnosti preverite v naslednjo povezavo.

Kako namestiti cflow na Linux?

Za tiste, ki jih zanima, da bi lahko namestili ta pripomoček v svoj sistem, bi morali vedeti, da je cflow znotraj skladišč nekaterih glavnih distribucij Linuxa. Omeniti moram le, da nova različica v nekaterih še ni implementirana, bo pa pripravljena v nekaj dneh.

V primeru tistih, ki so uporabniki Debiana, Ubuntuja ali katere koli izpeljanke le-teh, lahko namestijo s terminala tako, da vnesejo naslednji ukaz:

sudo apt install cflow -y

V primeru uporabnikov Arch Linux, Manjaro ali katere koli druge distribucije, ki izhaja iz teh, je treba namestitev izvesti iz repozitorijev AUR:

yay -s cflow

Za tiste, ki jih zanima, da bi lahko prevedli novo različico, jo lahko pridobijo na naslednja povezava.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.