用于处理hostapd配置文件的库
pyhostapdconf的Python项目详细描述
此包包含一个库,用于处理中的hostapd配置文件 Python。它旨在配置简单的访问点,并支持 以下配置:
- 界面选择
- 驱动程序选择(支持NL80211和RTL871XDRV)
- ssid
- 国家代码
- 频道
- wpa配置(密码,wpa模式) 最大客户端限制
- 隐藏ssid
配置类
要加载配置文件,请使用HostapdConf类:
>>> from hostapdconf.parser import HostapdConf >>> conf = HostapdConf('example/hostapd_example.conf')
这个类是一个通用的配置解析器/编写器,对 配置选项的工作方式。它的行为就像一本字典,你可以看 使用下标符号向上键。例如:
>>> conf['interface'] 'wlan0'
如果找不到密钥,则引发KeyError。
>>> conf['driver'] KeyError: '<HostapdConf "interface=wlan0...">' has no key 'driver'
您可以通过指定来设置任何键:
>>> conf['driver'] = 'nl80211'
通过使用 字典作为它的参数,就像python字典一样。最后,如果你 要保存配置文件,可以使用write()方法:
>>> conf.write()
警告
调用write()将覆盖加载的文件,并且注释是 未保存。
如果要将文件保存到其他位置,只需将路径传递到 write()方法。要重新加载配置,可以使用reload() 方法。
HostapdConf类将尽可能保留配置键的顺序 但它不提供插入配置选项的方法 在随机地点。
帮助函数
为了帮助完成常见的配置任务,有许多helper方法。
助手位于hosapdconf.helpers模块中。
>>> from hostapdconf import helpers as ha
每个helper函数都将configuration对象作为后面的第一个参数 通过特定于设置的参数。下面是帮助程序的快速概述 方法:
>>> ha.set_ssid(conf, 'Foobar') >>> ha.hide_ssid(conf) >>> ha.reveal_ssid(conf) >>> ha.set_iface(conf, 'wlan2') >>> ha.set_driver(conf, ha.REALTEK) # or ha.STANDARD >>> ha.set_channel(conf, 2) # wpa_modes supported: ha.WPA1_ONLY, ha.WPA2_ONLY, ha.WPA_BOTH >>> ha.enable_wpa(conf, passphrase='SECRET', wpa_mode=ha.WPA2_ONLY) >>> ha.disable_wpa(conf) >>> ha.set_country(conf, 'de')
许可证
pyhostapdconf是在gplv3下发布的。请参阅中的COPYING文件 源代码树。