GNU cflow 1.7 पहले ही जारी किया जा चुका है और नए कमांड और बहुत कुछ के साथ आता है

तीन साल के विकास के बाद GNU cflow उपयोगिता 1.7 के नए संस्करण को जारी करने की घोषणा की गई। जो लोग इस उपयोगिता से अनजान हैं, उन्हें पता होना चाहिए कि यह है सी प्रोग्राम में फंक्शन कॉल्स का विजुअल ग्राफ बनाने के लिए डिजाइन किया गया है, जिसका उपयोग अनुप्रयोग तर्क के अध्ययन को सरल बनाने के लिए किया जा सकता है।

चार्टया यह पूरी तरह से स्रोत ग्रंथों के विश्लेषण से निर्मित है, प्रोग्राम को चलाने की आवश्यकता के बिना, साथ ही यह फॉरवर्ड और रिवर्स फ्लो ग्राफ की पीढ़ी का समर्थन करता है, साथ ही कोड वाली फाइलों के लिए क्रॉस-रेफरेंस सूचियों की पीढ़ी का समर्थन करता है।

पैकेज पूरी तरह कार्यात्मक और संकलित है और किसी भी जीएनयू/लिनक्स वितरण और नए यूनिक्स जैसी प्रणालियों पर भी चलता है। यह POSIX द्वारा आवश्यक सभी लाइन स्विच कमांड का समर्थन करता है। यह दो स्वरूपों में आउटपुट उत्पन्न करने में सक्षम है: GNU cflow प्रारूप (जो कि डिफ़ॉल्ट है) और POSIX प्रारूप।

वर्तमान में, उपयोगिता केवल सी फोंट को संसाधित कर सकती है, क्योंकि यह पॉज़िक्स विनिर्देशों से एकमात्र विचलन है, जिसके लिए वाईएसीसी और लेक्स फ़ॉन्ट्स, साथ ही बाइनरी ऑब्जेक्ट फाइलों को संसाधित करने की क्षमता की आवश्यकता होती है।

Emacs cflow-mode.el मॉड्यूल GNU cflow प्रारूप (POSIX प्रारूप के विपरीत) में फ़ाइलों के साथ काम करता है और Emacs 24.2.1 के साथ परीक्षण किया गया है।

GNU cflow 1.7 . की मुख्य नई विशेषताएं

इस नए रिलीज़ संस्करण में "डॉट" आउटपुट स्वरूप के लिए समर्थन लागू करने के लिए उल्लेखनीय ('-format=dot') ग्राफ़विज़ पैकेज में आगे की प्रक्रिया के लिए डीओटी परिणाम उत्पन्न करने के लिए।

इसके अतिरिक्त, यह भी बताया गया है कि '-main' विकल्पों की नकल करके कई स्टार्टअप कार्यों को निर्दिष्ट करने की क्षमता को जोड़ा, जो इन कार्यों में से प्रत्येक के लिए एक अलग ग्राफ के साथ उत्पन्न होगा।

यह भी नोट किया जाता है कि विकल्प जोड़ा गया था परिणामी ग्राफ़ को केवल एक शाखा तक सीमित करने के लिए "-target=FUNCTION" जिसमें कुछ कार्य शामिल हैं ("-लक्ष्य" विकल्प को कई बार निर्दिष्ट किया जा सकता है)।

GNU cflow 1.7 के इस नए संस्करण में एकीकृत किया गया एक और परिवर्तन यह है कि चार्ट नेविगेशन के लिए नए आदेश जोड़े गए हैं एक cflow-mode: "c" जिसका उपयोग कॉलिंग फ़ंक्शन पर जाने के लिए किया जाता है, "n" जिसका उपयोग इस नेस्टिंग स्तर में अगले फ़ंक्शन पर जाने के लिए किया जाता है और "p" पिछले फ़ंक्शन पर नेस्टिंग के समान स्तर पर जाने के लिए उपयोग किया जाता है। .

दूसरी ओर, GNU cflow 1.7 के इस नए संस्करण की घोषणा में यह भी उल्लेख किया गया है कि यह भी दो कमजोरियां हटाई गईं जिन्हें 2019 में विशेष रूप से तैयार किए गए स्रोत ग्रंथों को cflow में संसाधित करते समय स्मृति भ्रष्टाचार के कारण पहचाना गया था।

तय की गई कमजोरियों में से, निम्नलिखित का उल्लेख किया गया है:

  • पहली भेद्यता (CVE-2019-16165) तब होती है जब पार्सर कोड (parser.c में संदर्भ फ़ंक्शन) में मेमोरी को मुफ्त (उपयोग-बाद-मुक्त) के बाद एक्सेस किया जाता है।
  • दूसरी भेद्यता (CVE-2019-16166) नेक्स्टटोकन () फ़ंक्शन में बफर ओवरफ्लो से संबंधित है। डेवलपर्स की राय में, ये समस्याएं सुरक्षा खतरे का प्रतिनिधित्व नहीं करती हैं, क्योंकि वे उपयोगिता की असामान्य समाप्ति तक सीमित हैं।

अंत में यदि आप इसके बारे में अधिक जानने में रुचि रखते हैं इस नए संस्करण के बारे में, आप विवरण देख सकते हैं निम्नलिखित लिंक।

लिनक्स पर cflow कैसे स्थापित करें?

उन लोगों के लिए जो अपने सिस्टम पर इस उपयोगिता को स्थापित करने में सक्षम होने में रुचि रखते हैं, उन्हें पता होना चाहिए कि cflow कुछ मुख्य लिनक्स वितरणों के भंडार के भीतर है। मुझे केवल यह उल्लेख करना होगा कि उनमें से कुछ में नया संस्करण अभी तक लागू नहीं किया गया है, लेकिन यह कुछ ही दिनों में तैयार हो जाएगा।

उन लोगों के मामले में जो डेबियन, उबंटू या इनमें से किसी भी व्युत्पन्न के उपयोगकर्ता हैं, वे निम्न आदेश टाइप करके टर्मिनल से स्थापित कर सकते हैं:

sudo apt install cflow -y

आर्क लिनक्स, मंज़रो या इनसे प्राप्त किसी अन्य वितरण के उपयोगकर्ताओं के मामले में, स्थापना AUR रिपॉजिटरी से की जानी चाहिए:

yay -s cflow

उन लोगों के लिए जो नए संस्करण को संकलित करने में रुचि रखते हैं, वे इसे से प्राप्त कर सकते हैं निम्नलिखित लिंक।


अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: मिगुएल elngel Gatón
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।