GNU cflow 1.7 telah pun dikeluarkan dan disertakan dengan arahan baharu dan banyak lagi

Selepas tiga tahun pembangunan keluaran versi baharu utiliti cflow GNU 1.7 telah diumumkan. Bagi mereka yang tidak mengetahui utiliti ini, mereka harus tahu bahawa ia adalah direka untuk membina graf visual panggilan fungsi dalam program C, yang boleh digunakan untuk memudahkan kajian logik aplikasi.

carta ituatau ia dibina semata-mata daripada analisis teks sumber, tanpa perlu menjalankan program, ditambah lagi ia menyokong penjanaan graf aliran ke hadapan dan songsang, serta penjanaan senarai rujukan silang untuk fail dengan kod.

Pakej ini berfungsi sepenuhnya dan menyusun serta berjalan pada mana-mana pengedaran GNU/Linux dan juga pada sistem seperti UNIX yang lebih baharu. Ia menyokong semua arahan suis baris yang diperlukan oleh POSIX. Ia mampu menghasilkan output dalam dua format: format cflow GNU (yang merupakan lalai) dan format POSIX.

Pada masa ini, utiliti hanya boleh memproses fon C, kerana ini adalah satu-satunya sisihan daripada spesifikasi POSIX, yang memerlukan keupayaan untuk memproses Font YACC dan LEX, serta fail objek binari.

Modul cflow-mode.el Emacs berfungsi dengan fail dalam format cflow GNU (berbanding dengan format POSIX) dan telah diuji dengan Emacs 24.2.1.

Ciri baharu utama GNU cflow 1.7

Dalam versi keluaran baharu ini terkenal kerana melaksanakan sokongan untuk format output "titik". ('–format=dot') untuk menjana hasil DOT untuk pemprosesan selanjutnya dalam pakej Graphviz.

Di samping itu, ia juga diketengahkan bahawa menambahkan keupayaan untuk menentukan berbilang fungsi permulaan dengan menduplikasi pilihan '–utama', yang akan dijana dengan graf berasingan untuk setiap fungsi ini.

Ia juga diperhatikan bahawa pilihan telah ditambah "–target=FUNCTION" untuk mengehadkan graf yang terhasil kepada hanya satu cabang yang merangkumi fungsi tertentu (pilihan “–sasaran” boleh ditentukan beberapa kali).

Satu lagi perubahan yang telah disepadukan dalam versi baharu GNU cflow 1.7 ini ialah arahan baharu untuk navigasi carta telah ditambah mod-cflow:”c” yang digunakan untuk pergi ke fungsi panggilan, “n” yang digunakan untuk pergi ke fungsi seterusnya dalam tahap bersarang ini dan “p” untuk pergi ke fungsi sebelumnya dengan tahap bersarang yang sama .

Sebaliknya, ia juga disebut dalam pengumuman versi baharu GNU cflow 1.7 ini yang juga dua kelemahan dibuang yang dikenal pasti pada 2019 menyebabkan kerosakan memori apabila memproses teks sumber yang dibuat khas dalam cflow.

Daripada kelemahan yang telah diperbaiki, perkara berikut disebut:

  • Kerentanan pertama (CVE-2019-16165) berlaku apabila memori diakses selepas percuma (guna-selepas-bebas) dalam kod parser (fungsi rujukan dalam parser.c).
  • Kerentanan kedua (CVE-2019-16166) berkaitan dengan limpahan penimbal dalam fungsi nexttoken(). Pada pendapat pemaju, masalah ini tidak mewakili ancaman keselamatan, kerana ia terhad kepada penamatan utiliti yang tidak normal.

Akhirnya sekiranya anda berminat untuk mengetahui lebih lanjut mengenainya mengenai versi baru ini, anda boleh menyemak butirannya di pautan berikut.

Bagaimana untuk memasang cflow pada Linux?

Bagi mereka yang berminat untuk dapat memasang utiliti ini pada sistem mereka, mereka harus tahu bahawa cflow berada dalam repositori beberapa pengedaran Linux utama. Saya hanya perlu menyebut bahawa versi baharu itu belum lagi dilaksanakan dalam beberapa daripada mereka, tetapi ia akan siap dalam beberapa hari.

Dalam kes mereka yang merupakan pengguna Debian, Ubuntu atau mana-mana terbitan ini, mereka boleh memasang dari terminal dengan menaip arahan berikut:

sudo apt install cflow -y

Dalam kes pengguna Arch Linux, Manjaro atau mana-mana pengedaran lain yang diperoleh daripada ini, pemasangan mesti dilakukan dari repositori AUR:

yay -s cflow

Bagi mereka yang berminat untuk dapat menyusun versi baharu, mereka boleh mendapatkannya daripada pautan berikut.


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.