diff options
author | tbkizle <tbkizle@gmail.com> | 2020-02-13 06:13:44 +0100 |
---|---|---|
committer | Calum Lind <calumlind+deluge@gmail.com> | 2022-01-30 17:13:27 +0100 |
commit | 540d557cb2163c41af894ee252cc677d01887376 (patch) | |
tree | 1e03424802944dde5d6cab4f2278173d39fff9ec /DEPENDS.md | |
parent | [Tests] fix/enable most ui tests on Windows (diff) | |
download | deluge-540d557cb2163c41af894ee252cc677d01887376.tar.xz deluge-540d557cb2163c41af894ee252cc677d01887376.zip |
[Common] Add is_interface to validate network interfaces
Libtorrent now supports interface names instead of just IP address so
add new common functions to validate user input.
* Added is_interface that will verify if a libtorrent interface of name
or IP address.
* Added is_interface_name to verify that the name supplied is a valid
network interface name in the operating system.
On Windows sock.if_nameindex() is only supported on 3.8+ and does not
return a uuid (required by libtorrent) so use ifaddr package. Using git
commit version for ifaddr due to adapter name decode bug in v0.1.7.
On other OSes attempt to use stdlib and fallback to ifaddr if installed
otherwiser return True.
* Added tests for is_interface & is_interface_name
* Updated UIs with change from address to interface
* Updated is_ipv6 and is_ipv4 to used inet_pton; now supported on
Windows.
Ref: https://github.com/pydron/ifaddr/pull/32
Closes: https://github.com/deluge-torrent/deluge/pull/338
Diffstat (limited to 'DEPENDS.md')
-rw-r--r-- | DEPENDS.md | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/DEPENDS.md b/DEPENDS.md index 31fdfd0c3..197556dd0 100644 --- a/DEPENDS.md +++ b/DEPENDS.md @@ -28,6 +28,7 @@ All modules will require the [common](#common) section dependencies. - [setproctitle] - Optional: Renaming processes. - [Pillow] - Optional: Support for resizing tracker icons. - [dbus-python] - Optional: Show item location in filemanager. +- [ifaddr] - Optional: Verify network interfaces. ### Linux and BSD @@ -96,3 +97,4 @@ All modules will require the [common](#common) section dependencies. [libnotify]: https://developer.gnome.org/libnotify/ [python-appindicator]: https://packages.ubuntu.com/xenial/python-appindicator [librsvg]: https://wiki.gnome.org/action/show/Projects/LibRsvg +[ifaddr]: https://pypi.org/project/ifaddr/ |