mirror of
https://github.com/python/cpython.git
synced 2025-09-22 08:23:36 +00:00

svn+ssh://pythondev@svn.python.org/python/trunk ........ r60990 | eric.smith | 2008-02-23 17:05:26 +0100 (Sat, 23 Feb 2008) | 1 line Removed duplicate Py_CHARMASK define. It's already defined in Python.h. ........ r60991 | andrew.kuchling | 2008-02-23 17:23:05 +0100 (Sat, 23 Feb 2008) | 4 lines #1330538: Improve comparison of xmlrpclib.DateTime and datetime instances. Remove automatic handling of datetime.date and datetime.time. This breaks backward compatibility, but python-dev discussion was strongly against this automatic conversion; see the bug for a link. ........ r60994 | andrew.kuchling | 2008-02-23 17:39:43 +0100 (Sat, 23 Feb 2008) | 1 line #835521: Add index entries for various pickle-protocol methods and attributes ........ r60995 | andrew.kuchling | 2008-02-23 18:10:46 +0100 (Sat, 23 Feb 2008) | 2 lines #1433694: minidom's .normalize() failed to set .nextSibling for last element. Fix by Malte Helmert ........ r61000 | christian.heimes | 2008-02-23 18:40:11 +0100 (Sat, 23 Feb 2008) | 1 line Patch #2167 from calvin: Remove unused imports ........ r61001 | christian.heimes | 2008-02-23 18:42:31 +0100 (Sat, 23 Feb 2008) | 1 line Patch #1957: syslogmodule: Release GIL when calling syslog(3) ........ r61002 | christian.heimes | 2008-02-23 18:52:07 +0100 (Sat, 23 Feb 2008) | 2 lines Issue #2051 and patch from Alexander Belopolsky: Permission for pyc and pyo files are inherited from the py file. ........
55 lines
1.5 KiB
Python
55 lines
1.5 KiB
Python
"""Sample program performing domain name lookups and showing off EasyDialogs,
|
|
Res and Dlg in the process"""
|
|
|
|
import EasyDialogs
|
|
from Carbon import Res
|
|
from Carbon import Dlg
|
|
import socket
|
|
import string
|
|
import macresource
|
|
#
|
|
# Definitions for our resources
|
|
ID_MAIN=512
|
|
|
|
ITEM_LOOKUP_ENTRY=1
|
|
ITEM_RESULT=2
|
|
ITEM_LOOKUP_BUTTON=3
|
|
ITEM_QUIT_BUTTON=4
|
|
|
|
def main():
|
|
"""Main routine: open resource file, call dialog handler"""
|
|
macresource.need("DLOG", ID_MAIN, "dnslookup-1.rsrc")
|
|
do_dialog()
|
|
|
|
def do_dialog():
|
|
"""Post dialog and handle user interaction until quit"""
|
|
my_dlg = Dlg.GetNewDialog(ID_MAIN, -1)
|
|
while 1:
|
|
n = Dlg.ModalDialog(None)
|
|
if n == ITEM_LOOKUP_BUTTON:
|
|
tp, h, rect = my_dlg.GetDialogItem(ITEM_LOOKUP_ENTRY)
|
|
txt = Dlg.GetDialogItemText(h)
|
|
|
|
tp, h, rect = my_dlg.GetDialogItem(ITEM_RESULT)
|
|
Dlg.SetDialogItemText(h, dnslookup(txt))
|
|
elif n == ITEM_QUIT_BUTTON:
|
|
break
|
|
|
|
def dnslookup(str):
|
|
""" Perform DNS lookup on str. If first character of digit is numeric,
|
|
assume that str contains an IP address. Otherwise, assume that str
|
|
contains a hostname."""
|
|
if str == '': str = ' '
|
|
if str[0] in string.digits:
|
|
try:
|
|
value = socket.gethostbyaddr(str)[0]
|
|
except:
|
|
value = 'Lookup failed'
|
|
else:
|
|
try:
|
|
value = socket.gethostbyname(str)
|
|
except:
|
|
value = 'Lookup failed'
|
|
return value
|
|
|
|
main()
|