2011-12-28 7 views
6

मैं वाईफाई प्रबंधक प्रोग्राम को कार्यान्वित करना चाहता हूं जो निम्नलिखित को संभालना चाहिए। वाईफ़ाई पहुँच बिंदु परजो c/C++ लाइब्रेरी का उपयोग लिनक्स के लिए वाईफाई कनेक्शन को संभालने के लिए किया जा सकता है?

  • अधिसूचना आते हैं या
  • उपलब्ध वाईफ़ाई पहुँच बिंदु के बारे में जानकारी प्रदान
  • कनेक्ट/एक दिया वाईफ़ाई पहुँच बिंदु

साथ डिस्कनेक्ट कौन सा है चला गया है इसे प्राप्त करने के लिए लिनक्स के लिए अनुशंसित सी/सी ++ वाईफाई लाइब्रेरी?

+0

भाषा? C/C++? – Paul

+0

हां पॉल सी/सी ++ लाइब्रेरी – Ashish

उत्तर

4

फेडोरा (कम से कम) पर, NetworkManager के साथ बातचीत करने के लिए पसंदीदा तरीका DBus के माध्यम से है।

जबकि वायरलेस उपकरणों और की तरह काम करेगा - यहां तक ​​कि प्रत्यक्ष कर्नेल कॉल, यदि आप चाहिए - वहाँ समस्याओं के एक जोड़े हैं:

  • आप शायद सुपर उपयोगकर्ता विशेषाधिकार होने चाहिए
  • NetworkManager शायद होगा एक आतंक हमले और, आप के साथ झगड़े में मिल जब तक आप अपनी सेवा बंद
  • उपयोगकर्ता की सामान्य नेटवर्किंग नियंत्रण (जैसे डेस्कटॉप ट्रे आइकन) लगभग निश्चित रूप से NetworkManager का उपयोग करने के लिए कॉन्फ़िगर कर रहे हैं।

आप वाईफाई के साथ-साथ अन्य प्रकार के नेटवर्क इंटरफेस के लिए आपके द्वारा वर्णित सभी कार्यों के लिए डीबीस संदेश भेज और प्राप्त कर सकते हैं। एपीआई here, for version 0.8 प्रकाशित है।

नए ऑपरेटिंग सिस्टम के लिए, वहाँ जाहिरा तौर पर changes in the API, with a migration guide हैं।

उनके wiki वास्तव में सहायक होना चाहिए।

मैं दोनों फेडोरा और Ubuntu डिफ़ॉल्ट रूप से NetworkManager का उपयोग पता है; मेरा मानना ​​है कि कई अन्य सिस्टम भी करते हैं, लेकिन एक विस्तृत सूची नहीं है।

बेशक

, तो आप एक एम्बेडेड सिस्टम, कस्टम वितरण, या कुछ उपयोग कर रहे हैं, तो अपने लाभ भिन्न हो सकते हैं।

1

मैं सीधे NetworkManager Library का उपयोग कर की सिफारिश करेंगे। example add connection glib

अधिक जानकारी के लिए, आप कमांड लाइन ग्राहक nmcli के कोड में एक बार देख ले सकते हैं:

आप निम्न स्तर के डी-बस पुस्तकालय या libnm-चिकना पुस्तकालय, करता है कि संचार आसान उपयोग कर सकते हैं ।