GNU cflow 1.7 je već objavljen i dolazi s novim naredbama i više

Nakon tri godine razvoja najavljeno je izdavanje nove verzije uslužnog programa GNU cflow 1.7. Za one koji nisu svjesni ove korisnosti, trebali bi znati da jest dizajniran za izgradnju vizualnog grafa poziva funkcija u C programima, koji se može koristiti za pojednostavljenje proučavanja logike aplikacije.

Grafikonili se gradi isključivo analizom izvornih tekstova, bez potrebe za pokretanjem programa, osim što podržava generiranje grafova izravnog i obrnutog toka, kao i generiranje popisa unakrsnih referenci za datoteke s kodom.

Paket je potpuno funkcionalan, kompilira se i radi na bilo kojoj GNU/Linux distribuciji, kao i na novijim sustavima sličnim UNIX-u. Podržava sve prekidače naredbenog retka koje zahtijeva POSIX. Može proizvesti rezultate u dva formata: u GNU cflow formatu (koji je zadani) i u POSIX formatu.

Trenutačno, uslužni program može obraditi samo C fontove jer je to jedino odstupanje od POSIX specifikacija, što zahtijeva mogućnost obrade YACC i LEX fontova kao i binarnih objektnih datoteka.

Modul Emacs cflow-mode.el radi s datotekama u GNU cflow formatu (za razliku od POSIX formata) i testiran je s Emacsom 24.2.1.

Glavne nove značajke GNU cflow 1.7

U ovoj novoj verziji izdanja ističe se implementacijom kompatibilnosti s izlaznim formatom "točka" ('–Format = točka') za generiranje DOT rezultata za daljnju obradu u paketu Graphviz.

Osim toga, također je istaknuto da dodana mogućnost određivanja višestrukih funkcija pokretanja dupliciranjem '–glavnih' opcija, koji će se generirati s posebnim grafom za svaku od ovih funkcija.

Također se napominje da je opcija "–Target = FUNCTION" za ograničavanje rezultirajućeg grafikona na samo jednu granu koji uključuje određene funkcije (opcija "–target" može se specificirati više puta).

Još jedna promjena koja je integrirana u ovu novu verziju GNU cflow 1.7 je to nove su naredbe dodane za navigaciju po karti cflow-mode: »c" koji se koristi za odlazak na funkciju pozivanja, "n" koji se koristi za prelazak na sljedeću funkciju na ovoj razini ugniježđenja i "p" za odlazak na prethodnu funkciju s istom razinom ugniježđenja.

S druge strane, također se spominje u najavi ove nove verzije GNU cflow 1.7 da je također dvije ranjivosti su uklonjene koji su identificirani 2019. da uzrokuju oštećenje memorije prilikom obrade posebno izrađenih izvornih tekstova u cflowu.

Od ranjivosti koje su otklonjene spominje se sljedeće:

  • Prva ranjivost (CVE-2019-16165) javlja se prilikom pristupa memoriji nakon što se ona oslobodi (use-after-free) u kodu parsera (referentna funkcija u parser.c).
  • Druga ranjivost (CVE-2019-16166) odnosi se na prelijevanje međuspremnika u funkciji nexttoken (). Prema mišljenju programera, ovi problemi ne predstavljaju sigurnosnu prijetnju jer su ograničeni na neuobičajen prekid uslužnog programa.

Konačno ako vas zanima više o tome o ovoj novoj verziji, detalje možete provjeriti u sljedeći link.

Kako instalirati cflow na Linux?

Za one koji su zainteresirani da mogu instalirati ovaj uslužni program na svoj sustav, trebali bi znati da se cflow nalazi unutar repozitorija nekih od glavnih Linux distribucija. Moram samo napomenuti da nova verzija još nije implementirana u neke od njih, ali je pitanje dana kada će biti spremna.

Za one koji su korisnici Debiana, Ubuntua ili bilo kojeg derivata istih, mogu instalirati s terminala upisivanjem sljedeće naredbe:

sudo apt install cflow -y

U slučaju Arch Linuxa, Manjara ili bilo koje druge distribucije izvedene od ovih korisnika, instalacija se mora izvršiti iz AUR repozitorija:

yay -s cflow

Što se tiče onih koji su zainteresirani da mogu sastaviti novu verziju, to se može dobiti na sljedeći link.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.