簡體   English   中英

DBus-Python網絡管理器腳本-WpaFlags問題

[英]DBus-Python Network Manager script - WpaFlags issue

我正在DBus-python中編寫python腳本,以通過網絡管理器獲取有關可用訪問點的一些信息。 我可以正確獲取ssid,mac地址和信號強度值。 雖然當我嘗試獲取WpaFlags時,我只是得到一些整數值。 我認為,應該如何使用“ NM_802_11_AP_SEC”,但我不知道如何使用。 我將不勝感激任何建議。

可讀的結果:

ssid = ap_prop_iface.Get("org.freedesktop.NetworkManager.AccessPoint","Ssid",byte_arrays=True)
hwaddr = ap_prop_iface.Get("org.freedesktop.NetworkManager.AccessPoint", "HwAddress")

無法讀取的結果:

encryption = ap_prop_iface.Get("org.freedesktop.NetworkManager.AccessPoint", "WpaFlags")

如果沒有加密,則加密= 0-沒關系-我得到的其他結果是324和392

WpaFlags(和其他* Flags)是由位標志(此處為NM_802_11_AP_SEC )組成的整數。 因此324 ix 0x144(十六進制)為NM_802_11_AP_SEC_KEY_MGMT_PSK | NM_802_11_AP_SEC_GROUP_TKIP | NM_802_11_AP_SEC_PAIR_TKIP。

一般而言,這是一個有關位標志的問題: 按位操作和用法

例:

NM_802_11_AP_SEC_PAIR_TKIP = 0x04  // declare other constants too...
flags = 324                        // from an API call really
if flags & NM_802_11_AP_SEC_PAIR_TKIP:
    print "PAIR_TKIP is enabled"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM