GNU cflow 1.7 zaten yayınlandı ve yeni komutlar ve daha fazlasıyla birlikte geliyor

Üç yıllık gelişimden sonra GNU cflow 1.7 yardımcı programının yeni sürümünün yayımlandığı duyuruldu. Bu yardımcı programın farkında olmayanlar için şunu bilmelisiniz: C programlarındaki işlev çağrılarının görsel bir grafiğini oluşturmak için tasarlanmıştırUygulama mantığının çalışmasını basitleştirmek için kullanılabilir.

Grafikveya yalnızca kaynak metinlerin analizinden oluşturulmuşturProgramı çalıştırmaya gerek kalmadan, ileri ve geri akış grafiklerinin oluşturulmasının yanı sıra kod içeren dosyalar için çapraz referans listelerinin oluşturulmasını desteklemenin yanı sıra.

Paket tamamen işlevseldir ve herhangi bir GNU/Linux dağıtımında ve ayrıca daha yeni UNIX benzeri sistemlerde derlenir ve çalışır. POSIX'in gerektirdiği tüm hat değiştirme komutlarını destekler. Sonuçları iki formatta üretme kapasitesine sahiptir: GNU cflow formatında (varsayılandır) ve POSIX formatında.

Şu anda yardımcı program yalnızca C yazı tiplerini işleyebilmektedir; çünkü bu, POSIX spesifikasyonlarından tek sapmadır ve YACC ve LEX yazı tiplerinin yanı sıra ikili nesne dosyalarını da işleme yeteneği gerektirir.

Emacs modülü cflow-mode.el, GNU cflow formatındaki (POSIX formatının aksine) dosyalarla çalışır ve Emacs 24.2.1 ile test edilmiştir.

GNU cflow 1.7'nin başlıca yeni özellikleri

Sürümün bu yeni sürümünde "nokta" çıktı formatıyla uyumluluğun uygulanmasıyla öne çıkıyor ('–format=dot') Graphviz paketinde daha ileri işlemler için bir DOT sonucu oluşturmak için.

Ayrıca vurgulanmaktadır ki '–ana' seçenekleri çoğaltarak birden çok başlangıç ​​işlevini belirtme yeteneği eklendi, bu fonksiyonların her biri için ayrı bir grafik oluşturulacaktır.

Seçeneğin eklenmiş olması da dikkat çekicidir. Ortaya çıkan grafiği yalnızca bir dalla sınırlamak için “–target=FUNCTION” belirli işlevleri içerir (“–hedef” seçeneği birden çok kez belirtilebilir).

GNU cflow 1.7'nin bu yeni sürümüne entegre edilen diğer bir değişiklik de şudur: Grafik navigasyonu için yeni komutlar eklendi cflow modu: çağıran fonksiyona gitmek için kullanılan »c», bu yuvalama seviyesinde bir sonraki fonksiyona gitmek için kullanılan «n» ve aynı seviyedeki yuvalama ile önceki fonksiyona gitmek için kullanılan «p».

Öte yandan GNU cflow 1.7'nin bu yeni sürümünün duyurusunda da bahsediliyor ki iki güvenlik açığı ortadan kaldırıldı 2019'da tespit edilen ve özel hazırlanmış kaynak metinlerin cflow'ta işlenmesi sırasında hafıza bozulmasına neden olan yazılımlar.

Çözülen güvenlik açıklarından şunlar belirtildi:

  • İlk güvenlik açığı (CVE-2019-16165), ayrıştırıcı kodunda (parser.c'de başvurulan işlev) serbest kaldıktan sonra (serbest kullanımdan sonra) belleğe erişildiğinde ortaya çıkar.
  • İkinci güvenlik açığı (CVE-2019-16166), nexttoken() işlevindeki arabellek taşması ile ilgilidir. Geliştiricilerin görüşüne göre bu sorunlar, yardımcı programın anormal şekilde sonlandırılmasıyla sınırlı olduğundan bir güvenlik tehdidi teşkil etmiyor.

Nihayet onun hakkında daha fazla bilgi edinmekle ilgileniyorsan bu yeni sürüm hakkında ayrıntıları kontrol edebilirsiniz aşağıdaki bağlantı.

Linux'ta cflow nasıl kurulur?

Bu yardımcı programı sistemlerine kurmak isteyenler için, cflow'un bazı ana Linux dağıtımlarının depolarında bulunduğunu bilmelisiniz. Yeni sürümün bazılarında henüz uygulanmadığını ancak hazır hale gelmesinin birkaç gün süreceğini belirtmem gerekiyor.

Debian, Ubuntu veya bunların herhangi bir türevini kullananlar aşağıdaki komutu yazarak terminalden kurulum yapabilirler:

sudo apt install cflow -y

Arch Linux, Manjaro veya bunlardan türetilen başka bir dağıtım kullanıcısı olması durumunda, kurulumun AUR depolarından yapılması gerekir:

yay -s cflow

Yeni versiyonu derlemekle ilgilenenler ise şu adresten temin edebilirler: aşağıdaki bağlantı.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.