From ef50b23f5bfa579cc3c226f288c4dafd95eafd88 Mon Sep 17 00:00:00 2001 From: Igor Chubin Date: Sun, 7 Jul 2019 19:10:05 +0200 Subject: [PATCH] fixes for the @echarlie IPv6 patch (#160) --- lib/location.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/lib/location.py b/lib/location.py index 2b40949..7d191b7 100644 --- a/lib/location.py +++ b/lib/location.py @@ -11,7 +11,6 @@ from __future__ import print_function import os import json -import re import socket import requests import geoip2.database @@ -36,13 +35,15 @@ def is_ip(ip_addr): Check if `ip_addr` looks like an IP Address """ - if re.match(r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}', ip_addr) is None: - return False try: - socket.inet_aton(ip_addr) + socket.inet_pton(socket.AF_INET, ip_addr.encode("utf-8")) return True except socket.error: - return False + try: + socket.inet_pton(socket.AF_INET6, ip_addr.encode("utf-8")) + return True + except socket.error: + return False def location_normalize(location): """