GNU cflow 1.7 telah dirilis dan dilengkapi dengan perintah baru dan banyak lagi

Setelah tiga tahun pengembangan rilis versi baru dari utilitas GNU cflow 1.7 diumumkan. Bagi mereka yang tidak mengetahui utilitas ini, mereka harus tahu bahwa itu adalah dirancang untuk membuat grafik visual panggilan fungsi dalam program C, yang dapat digunakan untuk menyederhanakan studi logika aplikasi.

Grafiknyaatau dibangun semata-mata dari analisis teks sumber, tanpa perlu menjalankan program, selain mendukung pembuatan grafik aliran langsung dan terbalik, serta pembuatan daftar referensi silang untuk file dengan kode.

Paket ini berfungsi penuh dan dikompilasi dan berjalan pada distribusi GNU / Linux apa pun dan juga pada sistem mirip UNIX yang lebih baru. Ini mendukung semua sakelar baris perintah yang diperlukan POSIX. Ia mampu menghasilkan hasil dalam dua format: dalam format cflow GNU (yang merupakan default) dan dalam format POSIX.

Saat ini, utilitas hanya dapat memproses font C karena ini adalah satu-satunya penyimpangan dari spesifikasi POSIX, yang membutuhkan kemampuan untuk memproses Font YACC dan LEX serta file objek biner.

Modul cflow-mode.el Emacs bekerja dengan file dalam format cflow GNU (sebagai lawan dari format POSIX) dan telah diuji dengan Emacs 24.2.1.

Fitur baru utama dari GNU cflow 1.7

Dalam versi rilis baru ini menonjol untuk implementasi kompatibilitas dengan format output "dot" ('–Format = dot') untuk menghasilkan hasil DOT untuk diproses lebih lanjut dalam paket Graphviz.

Selain itu, hal itu juga yang ditonjolkan menambahkan kemampuan untuk menentukan beberapa fungsi startup dengan menduplikasi opsi '–main', yang akan dihasilkan dengan grafik terpisah untuk masing-masing fungsi tersebut.

Juga dicatat bahwa opsi "–Target = FUNCTION" untuk membatasi grafik yang dihasilkan hanya pada satu cabang yang mencakup fungsi tertentu (opsi "–target" dapat ditentukan beberapa kali).

Perubahan lain yang telah terintegrasi dalam versi baru GNU cflow 1.7 ini adalah perintah baru telah ditambahkan untuk navigasi grafik a cflow-mode: »c" yang digunakan untuk pergi ke fungsi pemanggilan, "n" yang digunakan untuk pergi ke fungsi berikutnya pada tingkat bersarang ini dan "p" untuk pergi ke fungsi sebelumnya dengan tingkat bersarang yang sama.

Di sisi lain, disebutkan juga dalam pengumuman versi baru GNU cflow 1.7 ini bahwa juga dua kerentanan telah dihapus yang diidentifikasi pada tahun 2019 menyebabkan kerusakan memori saat memproses teks sumber yang dibuat khusus dalam cflow.

Dari kerentanan yang diperbaiki, berikut ini disebutkan:

  • Kerentanan pertama (CVE-2019-16165) terjadi saat mengakses memori setelah membebaskannya (use-after-free) dalam kode parser (fungsi referensi di parser.c).
  • Kerentanan kedua (CVE-2019-16166) berkaitan dengan buffer overflow di fungsi nexttoken(). Menurut pendapat pengembang, masalah ini tidak menimbulkan ancaman keamanan karena terbatas pada penghentian utilitas yang tidak normal.

Akhirnya jika Anda tertarik untuk mengetahui lebih banyak tentangnya tentang versi baru ini, Anda dapat memeriksa detailnya di link berikut.

Bagaimana cara menginstal cflow di Linux?

Bagi mereka yang tertarik untuk dapat menginstal utilitas ini di sistem mereka, mereka harus tahu bahwa cflow ada di dalam repositori dari beberapa distribusi Linux utama. Saya hanya perlu menyebutkan bahwa versi baru belum diimplementasikan di beberapa dari mereka, tetapi hanya beberapa hari sebelum siap.

Bagi mereka yang merupakan pengguna Debian, Ubuntu atau turunannya, mereka dapat menginstal dari terminal dengan mengetikkan perintah berikut:

sudo apt install cflow -y

Dalam kasus Arch Linux, Manjaro atau distribusi lain yang berasal dari pengguna ini, penginstalan harus dilakukan dari repositori AUR:

yay -s cflow

Adapun bagi yang berminat untuk dapat mengkompilasi versi baru ini dapat diperoleh dari link berikut.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.