Skip to content

Commit 4e761ea

Browse files
committed
Changing 'except' calls to work with 2.x and 3.x
1 parent 77f70d3 commit 4e761ea

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

ping.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -344,8 +344,9 @@ def __init__(self, destination, timeout=3000, packet_size=64, own_id=None, quiet
344344
self.stats.destination_ip = info[4][0]
345345
else:
346346
self.stats.destination_ip = socket.gethostbyname(self.stats.destination_host)
347-
except socket.error, e:
348-
self._stderr.write("\nPYTHON PING: Unknown host: %s (%s)\n" % (self.stats.destination_host, e.args[1]))
347+
except socket.error:
348+
etype, evalue, etb = sys.exc_info()
349+
self._stderr.write("\nPYTHON PING: Unknown host: %s (%s)\n" % (self.stats.destination_host, evalue.args[1]))
349350
#sys.exit(2)
350351
self.unknown_host = True
351352
return
@@ -366,15 +367,16 @@ def do_one(self):
366367
current_socket = socket.socket(socket.AF_INET6, socket.SOCK_RAW, socket.getprotobyname("ipv6-icmp"))
367368
else:
368369
current_socket = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.getprotobyname("icmp"))
369-
except socket.error, e:
370+
except socket.error:
371+
etype, evalue, etb = sys.exc_info()
370372
# if e.args[0] == 1:
371373
# # Operation not permitted - Add more information to traceback
372374
# etype, evalue, etb = sys.exc_info()
373375
# evalue = etype(
374376
# "%s - Note that ICMP messages can only be send from processes running as root." % evalue
375377
# )
376378
# raise etype, evalue, etb
377-
self._stderr.write("failed. (socket error: '%s')\n" % e.args[1])
379+
self._stderr.write("failed. (socket error: '%s')\n" % evalue.args[1])
378380
raise # raise the original error
379381

380382
send_time = self.send_one_ping(current_socket)
@@ -486,8 +488,9 @@ def send_one_ping(self, current_socket):
486488
current_socket.sendto(packet, (self.stats.destination_ip, self.stats.destination_port, 0, 0))
487489
else:
488490
current_socket.sendto(packet, (self.stats.destination_ip, self.stats.destination_port))
489-
except socket.error, e:
490-
self._stderr.write("General failure (%s)\n" % (e.args[1]))
491+
except socket.error:
492+
etype, evalue, etb = sys.exc_info()
493+
self._stderr.write("General failure (%s)\n" % (evalue.args[1]))
491494
send_time = None
492495

493496
return send_time
@@ -705,7 +708,7 @@ def main(arguments):
705708
parser.add_argument('-W', dest='timeout', metavar='timeout', type=int, default=3, help='Time to wait for a response, in seconds.')
706709

707710
args = parser.parse_args()
708-
except ImportError, evalue:
711+
except ImportError:
709712
from optparse import OptionParser
710713

711714
parser = OptionParser(description='Send ICMP ECHO_REQUEST to network hosts')

0 commit comments

Comments
 (0)