From bdb885aa9b96730179b85dc42f07ec3357de45aa Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 6 May 2021 18:06:11 +0200 Subject: [PATCH] Prevent import failure when /etc/protocols is unavailable. Fixes #662. * dns/rdtypes/IN/WKS.py: Wrap TCP and UDP protocol lookups in try...except. --- dns/rdtypes/IN/WKS.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/dns/rdtypes/IN/WKS.py b/dns/rdtypes/IN/WKS.py index 0d362817..e9bc33c5 100644 --- a/dns/rdtypes/IN/WKS.py +++ b/dns/rdtypes/IN/WKS.py @@ -22,9 +22,13 @@ import dns.ipv4 import dns.immutable import dns.rdata -_proto_tcp = socket.getprotobyname('tcp') -_proto_udp = socket.getprotobyname('udp') - +try: + _proto_tcp = socket.getprotobyname('tcp') + _proto_udp = socket.getprotobyname('udp') +except OSError: + # Fall back to defaults in case /etc/protocols is unavailable. + _proto_tcp = 6 + _proto_udp = 17 @dns.immutable.immutable class WKS(dns.rdata.Rdata): -- 2.47.3