diff --git a/bindings/python/src/session.cpp b/bindings/python/src/session.cpp index a87327e3e..6f7968860 100644 --- a/bindings/python/src/session.cpp +++ b/bindings/python/src/session.cpp @@ -880,7 +880,16 @@ void bind_session() .value("upnp", lt::portmap_transport::upnp) ; - class_("peer_class_type_filter") + enum_("peer_class_type_filter_socket_type_t") + .value("tcp_socket", peer_class_type_filter::tcp_socket) + .value("utp_socket", peer_class_type_filter::utp_socket) + .value("ssl_tcp_socket", peer_class_type_filter::ssl_tcp_socket) + .value("ssl_utp_socket", peer_class_type_filter::ssl_utp_socket) + .value("i2p_socket", peer_class_type_filter::i2p_socket) + ; + + { + scope s = class_("peer_class_type_filter") .def(init<>()) .def("add", <::peer_class_type_filter::add) .def("remove", <::peer_class_type_filter::remove) @@ -888,14 +897,12 @@ void bind_session() .def("allow", <::peer_class_type_filter::allow) .def("apply", <::peer_class_type_filter::apply) ; - - enum_("socket_type_t") - .value("tcp_socket", peer_class_type_filter::tcp_socket) - .value("utp_socket", peer_class_type_filter::utp_socket) - .value("ssl_tcp_socket", peer_class_type_filter::ssl_tcp_socket) - .value("ssl_utp_socket", peer_class_type_filter::ssl_utp_socket) - .value("i2p_socket", peer_class_type_filter::i2p_socket) - ; + s.attr("tcp_socket") = peer_class_type_filter::tcp_socket; + s.attr("utp_socket") = peer_class_type_filter::utp_socket; + s.attr("ssl_tcp_socket") = peer_class_type_filter::ssl_tcp_socket; + s.attr("ssl_utp_socket") = peer_class_type_filter::ssl_utp_socket; + s.attr("i2p_socket") = peer_class_type_filter::i2p_socket; + } { scope s = class_("session", no_init) diff --git a/bindings/python/test.py b/bindings/python/test.py index 40620c489..9ada5aa32 100644 --- a/bindings/python/test.py +++ b/bindings/python/test.py @@ -459,11 +459,11 @@ class test_peer_class(unittest.TestCase): def test_peer_class_filter(self): filt = lt.peer_class_type_filter() - filt.add(lt.socket_type_t.tcp_socket, lt.session.global_peer_class_id); - filt.remove(lt.socket_type_t.utp_socket, lt.session.local_peer_class_id); + filt.add(lt.peer_class_type_filter.tcp_socket, lt.session.global_peer_class_id); + filt.remove(lt.peer_class_type_filter.utp_socket, lt.session.local_peer_class_id); - filt.disallow(lt.socket_type_t.tcp_socket, lt.session.global_peer_class_id); - filt.allow(lt.socket_type_t.utp_socket, lt.session.local_peer_class_id); + filt.disallow(lt.peer_class_type_filter.tcp_socket, lt.session.global_peer_class_id); + filt.allow(lt.peer_class_type_filter.utp_socket, lt.session.local_peer_class_id); def test_peer_class_ip_filter(self): s = lt.session({'enable_dht': False})