You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(7) |
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(1) |
Feb
|
Mar
(13) |
Apr
(10) |
May
(30) |
Jun
(2) |
Jul
(2) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(1) |
2003 |
Jan
(1) |
Feb
(1) |
Mar
(6) |
Apr
(17) |
May
(15) |
Jun
(3) |
Jul
(9) |
Aug
(2) |
Sep
(1) |
Oct
|
Nov
|
Dec
(1) |
2004 |
Jan
(3) |
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(1) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(3) |
2006 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
(2) |
Sep
(1) |
Oct
(4) |
Nov
(2) |
Dec
(7) |
2007 |
Jan
(8) |
Feb
(18) |
Mar
(5) |
Apr
(5) |
May
(16) |
Jun
(11) |
Jul
(18) |
Aug
(18) |
Sep
(15) |
Oct
(10) |
Nov
(17) |
Dec
(8) |
2008 |
Jan
(6) |
Feb
(13) |
Mar
(37) |
Apr
(18) |
May
(24) |
Jun
(14) |
Jul
(25) |
Aug
(10) |
Sep
(13) |
Oct
(8) |
Nov
|
Dec
|
From: Anthony B. <ant...@us...> - 2002-05-06 07:25:19
|
Update of /cvsroot/pydns/pydns In directory usw-pr-cvs1:/tmp/cvs-serv2845 Modified Files: .cvsignore Log Message: ignore another build file Index: .cvsignore =================================================================== RCS file: /cvsroot/pydns/pydns/.cvsignore,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** .cvsignore 19 Mar 2002 10:45:35 -0000 1.4 --- .cvsignore 6 May 2002 07:25:16 -0000 1.5 *************** *** 1,2 **** --- 1,3 ---- build dist + MANIFEST |
From: Anthony B. <ant...@us...> - 2002-05-06 07:24:51
|
Update of /cvsroot/pydns/pydns In directory usw-pr-cvs1:/tmp/cvs-serv2597 Added Files: CREDITS.txt README-guido.txt README.txt Removed Files: CREDITS README README.guido Log Message: renamed to 'doze compatible names. --- NEW FILE: CREDITS.txt --- This code was originally based on the DNS library created by Guido van Rossum somewhere near the dawn of time. Since then, as well as myself (Anthony), I have had contributions by: Michael Ströder Bastian Kleineidam Timothy J. Miller Wolfgang Strobl It's possible there's other people - the old RCS logs for my code were lost some time ago. The list above is almost certainly incomplete - let me know if I've forgotten you... --- NEW FILE: README-guido.txt --- This directory contains a module (dnslib) that implements a DNS (Domain Name Server) client, plus additional modules that define some symbolic constants used by DNS (dnstype, dnsclass, dnsopcode). Type "python dnslib.py -/" for a usage message. You can also import dnslib and write your own, more sophisticated client code; use the test program as an example (there is currently no documentation :-). --Guido van Rossum, CWI, Amsterdam <Gui...@cw...> URL: <http://www.cwi.nl/cwi/people/Guido.van.Rossum.html> --- NEW FILE: README.txt --- Release 2.3 Mon May 6 16:18:02 EST 2002 This is a another release of the pydns code, as originally written by Guido van Rossum, and with a hopefully nicer API bolted over the top of it by Anthony Baxter <an...@in...>. This code is released under a Python-style license. I'm making this release because there hasn't been a release in a heck of a long time, and it probably deserves one. I'd also like to do a substantial refactor of some of the guts of the code, and this is likely to break any code that uses the existing interface. So this will be a release for people who are using the existing API... There are several known bugs/unfinished bits - processing of AXFR results is not done yet. - doesn't do IPv6 DNS requests (type AAAA) - docs, aside from this file - all sorts of other stuff that I've probably forgotten. - MacOS support for discovering nameservers - the API that I evolved some time ago is pretty ugly. I'm going to re-do it, designed this time. Stuff it _does_ do: - processes /etc/resolv.conf - at least as far as nameserver directives go. - tries multiple nameservers. - nicer API - see below. - returns results in more useful format. - optional timing of requests. - default 'show' behaviour emulates 'dig' pretty closely. To use: import DNS reqobj=DNS.Request(args) reqobj.req(args) args can be a name, in which case it takes that as the query, and/or a series of keyword/value args. (see below for a list of args) when calling the 'req()' method, it reuses the options specified in the DNS.Request() call as defaults. options are applied in the following order: those specified in the req() call or, if not specified there, those specified in the creation of the Request() object or, if not specified there, those specified in the DNS.defaults dictionary name servers can be specified in the following ways: - by calling DNS.DiscoverNameServers(), which will load the DNS servers from the system's /etc/resolv.conf file on Unix, or from the Registry on windows. - by specifying it as an option to the request - by manually setting DNS.defaults['server'] to a list of server IP addresses to try - XXXX It should be possible to load the DNS servers on a mac os machine, from where-ever they've squirrelled them away name="host.do.main" # the object being looked up qtype="SOA" # the query type, eg SOA, A, MX, CNAME, ANY protocol="udp" # "udp" or "tcp" - usually you want "udp" server="nameserver" # the name of the nameserver. Note that you might # want to use an IP address here rd=1 # "recursion desired" - defaults to 1. other: opcode, port, ... There's also some convenience functions, for the lazy: to do a reverse lookup: >>> print DNS.revlookup("192.189.54.17") yarrina.connect.com.au to look up all MX records for an entry: >>> print DNS.mxlookup("connect.com.au") [(10, 'yarrina.connect.com.au'), (100, 'warrane.connect.com.au')] Documentation of the rest of the interface will have to wait for a later date. Note that the DnsAsyncRequest stuff is currently not working - I haven't looked too closely at why, yet. There's some examples in the tests/ directory - including test5.py, which is even vaguely useful. It looks for the SOA for a domain, checks that the primary NS is authoritative, then checks the nameservers that it believes are NSs for the domain and checks that they're authoritative, and that the zone serial numbers match. see also README.guido for the original docs. comments to me, an...@in..., or to the mailing list, pyd...@li.... bugs/patches to the tracker on SF - http://sourceforge.net/tracker/?group_id=31674 --- CREDITS DELETED --- --- README DELETED --- --- README.guido DELETED --- |
From: Anthony B. <ant...@us...> - 2002-05-06 07:09:59
|
Update of /cvsroot/pydns/website In directory usw-pr-cvs1:/tmp/cvs-serv29398 Modified Files: downloads.ht Log Message: point to the released versions of the source. Index: downloads.ht =================================================================== RCS file: /cvsroot/pydns/website/downloads.ht,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** downloads.ht 24 Apr 2002 09:10:22 -0000 1.1 --- downloads.ht 6 May 2002 07:09:55 -0000 1.2 *************** *** 7,11 **** <p> ! pyDNS is currently only <a href="http://sourceforge.net/cvs/?group_id=31674"> available via CVS</a>. --- 7,18 ---- <p> ! PyDNS source, in either .tar.gz format or .zip format, is available ! from the ! <a href="http://sourceforge.net/project/showfiles.php?group_id=31674">Files ! section of the sourceforge project.</a> ! </p> ! ! <p> ! The absolutely latest version of the PyDNS source is <a href="http://sourceforge.net/cvs/?group_id=31674"> available via CVS</a>. |
From: Anthony B. <ant...@us...> - 2002-05-06 06:54:10
|
Update of /cvsroot/pydns/pydns In directory usw-pr-cvs1:/tmp/cvs-serv23989 Added Files: MANIFEST.in Log Message: build files... --- NEW FILE: MANIFEST.in --- recursive-include DNS *.py recursive-include tools *.py recursive-include tests *.py include *.txt include setup.* |
From: Anthony B. <ant...@us...> - 2002-05-06 06:40:32
|
Update of /cvsroot/pydns/pydns In directory usw-pr-cvs1:/tmp/cvs-serv20864 Modified Files: README Log Message: license note, since I've had more than one query about it in the past. Index: README =================================================================== RCS file: /cvsroot/pydns/pydns/README,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** README 6 May 2002 06:31:06 -0000 1.4 --- README 6 May 2002 06:40:30 -0000 1.5 *************** *** 5,8 **** --- 5,10 ---- top of it by Anthony Baxter <an...@in...>. + This code is released under a Python-style license. + I'm making this release because there hasn't been a release in a heck of a long time, and it probably deserves one. I'd also like to |
From: Anthony B. <ant...@us...> - 2002-05-06 06:39:07
|
Update of /cvsroot/pydns/pydns In directory usw-pr-cvs1:/tmp/cvs-serv20343 Added Files: CREDITS Log Message: credits file. --- NEW FILE: CREDITS --- This code was originally based on the DNS library created by Guido van Rossum somewhere near the dawn of time. Since then, as well as myself (Anthony), I have had contributions by: Michael Ströder Bastian Kleineidam Timothy J. Miller Wolfgang Strobl It's possible there's other people - the old RCS logs for my code were lost some time ago. The list above is almost certainly incomplete - let me know if I've forgotten you... |
From: Anthony B. <ant...@us...> - 2002-05-06 06:32:10
|
Update of /cvsroot/pydns/pydns In directory usw-pr-cvs1:/tmp/cvs-serv17754 Modified Files: setup.py Log Message: filled in a blank Index: setup.py =================================================================== RCS file: /cvsroot/pydns/pydns/setup.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** setup.py 23 Nov 2001 19:43:57 -0000 1.3 --- setup.py 6 May 2002 06:32:07 -0000 1.4 *************** *** 20,24 **** long_description = """Python DNS library: """, ! author = '', author_email = 'pyd...@li...', url = 'http://pydns.sourceforge.net/', --- 20,24 ---- long_description = """Python DNS library: """, ! author = 'Anthony Baxter and others', author_email = 'pyd...@li...', url = 'http://pydns.sourceforge.net/', *************** *** 28,31 **** --- 28,34 ---- # # $Log$ + # Revision 1.4 2002/05/06 06:32:07 anthonybaxter + # filled in a blank + # # Revision 1.3 2001/11/23 19:43:57 stroeder # Prepend current directory to sys.path to enable import of DNS. |
From: Anthony B. <ant...@us...> - 2002-05-06 06:31:11
|
Update of /cvsroot/pydns/pydns In directory usw-pr-cvs1:/tmp/cvs-serv17265 Modified Files: README Log Message: woo. updating the readme. about time. Index: README =================================================================== RCS file: /cvsroot/pydns/pydns/README,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** README 19 Jul 2001 07:00:54 -0000 1.3 --- README 6 May 2002 06:31:06 -0000 1.4 *************** *** 1,27 **** ! This is the initial checkin version for the move to sourceforge.net ! ! Release 2.2, Mon Apr 27 22:59:16 EST 1998 ! This is a test release of the DNS code, as originally written by Guido van Rossum, and with a hopefully nicer API bolted over the ! top of it by Anthony Baxter <an...@in...>. It's also in a ! python 1.5 package. There are several known bugs/unfinished bits - processing of AXFR results is not done yet. ! - something I've done recently has broken the DnsAsyncRequest(). Bummer. ! - doesn't do IPv6 DNS requests (type AAAA) (as per [RFC 1886]) - docs, aside from this file - all sorts of other stuff that I've probably forgotten. Stuff it _does_ do: ! processes /etc/resolv.conf - at least as far as nameserver directives go. ! tries multiple nameservers. ! nicer API - see below. ! returns results in more useful format. ! optional timing of requests. ! default 'show' behaviour emulates 'dig' pretty closely. ! support for asyncore.py ### NOTE: currently broken a bit. --- 1,31 ---- ! Release 2.3 Mon May 6 16:18:02 EST 2002 ! This is a another release of the pydns code, as originally written by Guido van Rossum, and with a hopefully nicer API bolted over the ! top of it by Anthony Baxter <an...@in...>. ! ! I'm making this release because there hasn't been a release in a ! heck of a long time, and it probably deserves one. I'd also like to ! do a substantial refactor of some of the guts of the code, and this ! is likely to break any code that uses the existing interface. So ! this will be a release for people who are using the existing API... There are several known bugs/unfinished bits - processing of AXFR results is not done yet. ! - doesn't do IPv6 DNS requests (type AAAA) - docs, aside from this file - all sorts of other stuff that I've probably forgotten. + - MacOS support for discovering nameservers + - the API that I evolved some time ago is pretty ugly. I'm going + to re-do it, designed this time. Stuff it _does_ do: ! - processes /etc/resolv.conf - at least as far as nameserver directives go. ! - tries multiple nameservers. ! - nicer API - see below. ! - returns results in more useful format. ! - optional timing of requests. ! - default 'show' behaviour emulates 'dig' pretty closely. *************** *** 46,56 **** name servers can be specified in the following ways: ! by calling DNS.ParseResolvConf(), which will load the DNS.servers ! from the system's /etc/resolv.conf file ! by specifying it as an option to the request ! by manually setting DNS.defaults['server'] to a list of server IP addresses to try ! XXXX It should be possible to load the DNS servers on a windows or ! mac box, from where-ever they've squirrelled them away name="host.do.main" # the object being looked up --- 50,61 ---- name servers can be specified in the following ways: ! - by calling DNS.DiscoverNameServers(), which will load the DNS servers ! from the system's /etc/resolv.conf file on Unix, or from the Registry ! on windows. ! - by specifying it as an option to the request ! - by manually setting DNS.defaults['server'] to a list of server IP addresses to try ! - XXXX It should be possible to load the DNS servers on a mac os machine, ! from where-ever they've squirrelled them away name="host.do.main" # the object being looked up *************** *** 84,86 **** see also README.guido for the original docs. ! comments to me - an...@in... --- 89,95 ---- see also README.guido for the original docs. ! comments to me, an...@in..., or to the mailing list, ! pyd...@li.... ! ! bugs/patches to the tracker on SF - ! http://sourceforge.net/tracker/?group_id=31674 |
From: Anthony B. <ant...@us...> - 2002-05-06 06:17:52
|
Update of /cvsroot/pydns/pydns/DNS In directory usw-pr-cvs1:/tmp/cvs-serv13442 Modified Files: __init__.py Log Message: found that the old README file called itself release 2.2. So make this one 2.3... Index: __init__.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/__init__.py,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** __init__.py 6 May 2002 06:16:15 -0000 1.7 --- __init__.py 6 May 2002 06:17:49 -0000 1.8 *************** *** 9,13 **** # __init__.py for DNS class. ! __version__ = '0.1.0' import Type,Opcode,Status,Class --- 9,13 ---- # __init__.py for DNS class. ! __version__ = '2.3.0' import Type,Opcode,Status,Class *************** *** 23,26 **** --- 23,30 ---- # # $Log$ + # Revision 1.8 2002/05/06 06:17:49 anthonybaxter + # found that the old README file called itself release 2.2. So make + # this one 2.3... + # # Revision 1.7 2002/05/06 06:16:15 anthonybaxter # make some sort of reasonable version string. releasewards ho! |
From: Anthony B. <ant...@us...> - 2002-05-06 06:16:18
|
Update of /cvsroot/pydns/pydns/DNS In directory usw-pr-cvs1:/tmp/cvs-serv13103 Modified Files: __init__.py Log Message: make some sort of reasonable version string. releasewards ho! Index: __init__.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/__init__.py,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** __init__.py 19 Mar 2002 13:05:02 -0000 1.6 --- __init__.py 6 May 2002 06:16:15 -0000 1.7 *************** *** 9,13 **** # __init__.py for DNS class. ! __version__ = '0.0.1' import Type,Opcode,Status,Class --- 9,13 ---- # __init__.py for DNS class. ! __version__ = '0.1.0' import Type,Opcode,Status,Class *************** *** 23,26 **** --- 23,29 ---- # # $Log$ + # Revision 1.7 2002/05/06 06:16:15 anthonybaxter + # make some sort of reasonable version string. releasewards ho! + # # Revision 1.6 2002/03/19 13:05:02 anthonybaxter # converted to class based exceptions (there goes the python1.4 compatibility :) |
From: Anthony B. <ant...@us...> - 2002-05-06 06:15:34
|
Update of /cvsroot/pydns/pydns/DNS In directory usw-pr-cvs1:/tmp/cvs-serv12754 Modified Files: win32dns.py Log Message: apparently some versions of windows return servers as unicode string with space sep, rather than strings with comma sep. *sigh* Index: win32dns.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/win32dns.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** win32dns.py 19 Mar 2002 12:41:33 -0000 1.2 --- win32dns.py 6 May 2002 06:15:31 -0000 1.3 *************** *** 20,24 **** """ ! import string import _winreg --- 20,24 ---- """ ! import string, re import _winreg *************** *** 38,43 **** def stringdisplay(s): ! 'convert "d.d.d.d,d.d.d.d" to ["d.d.d.d","d.d.d.d"]' ! return string.split(s,",") def RegistryResolve(): --- 38,46 ---- def stringdisplay(s): ! '''convert "d.d.d.d,d.d.d.d" to ["d.d.d.d","d.d.d.d"]. ! also handle u'd.d.d.d d.d.d.d', as reporting on SF ! ''' ! import re ! return map(str, re.split("[ ,]",s)) def RegistryResolve(): *************** *** 111,114 **** --- 114,122 ---- # # $Log$ + # Revision 1.3 2002/05/06 06:15:31 anthonybaxter + # apparently some versions of windows return servers as unicode + # string with space sep, rather than strings with comma sep. + # *sigh* + # # Revision 1.2 2002/03/19 12:41:33 anthonybaxter # tabnannied and reindented everything. 4 space indent, no tabs. |
From: Anthony B. <ant...@us...> - 2002-05-06 06:14:40
|
Update of /cvsroot/pydns/pydns/DNS In directory usw-pr-cvs1:/tmp/cvs-serv12662 Modified Files: lazy.py Log Message: reformat, move import to top of file. Index: lazy.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/lazy.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** lazy.py 19 Mar 2002 12:41:33 -0000 1.4 --- lazy.py 6 May 2002 06:14:38 -0000 1.5 *************** *** 9,16 **** # routines for lazy people. import Base def revlookup(name): "convenience routine for doing a reverse lookup of an address" - import string a = string.split(name, '.') a.reverse() --- 9,16 ---- # routines for lazy people. import Base + import string def revlookup(name): "convenience routine for doing a reverse lookup of an address" a = string.split(name, '.') a.reverse() *************** *** 24,28 **** sorted list of (preference, mail exchanger) records """ - a = Base.DnsRequest(name, qtype = 'mx').req().answers l = map(lambda x:x['data'], a) --- 24,27 ---- *************** *** 32,35 **** --- 31,37 ---- # # $Log$ + # Revision 1.5 2002/05/06 06:14:38 anthonybaxter + # reformat, move import to top of file. + # # Revision 1.4 2002/03/19 12:41:33 anthonybaxter # tabnannied and reindented everything. 4 space indent, no tabs. |
From: Anthony B. <ant...@us...> - 2002-05-06 06:13:44
|
Update of /cvsroot/pydns/pydns/tests In directory usw-pr-cvs1:/tmp/cvs-serv12488 Modified Files: test5.py Log Message: note to self. Index: test5.py =================================================================== RCS file: /cvsroot/pydns/pydns/tests/test5.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** test5.py 19 Mar 2002 12:40:58 -0000 1.3 --- test5.py 6 May 2002 06:13:40 -0000 1.4 *************** *** 26,29 **** --- 26,30 ---- def GetNS(domain): import DNS + # hm. this might fail if a server is off the air. r = DNS.Request(domain,qtype='SOA').req() if r.header['status'] != 'NOERROR': |
From: Anthony B. <ant...@us...> - 2002-04-24 13:27:57
|
Update of /cvsroot/pydns/website In directory usw-pr-cvs1:/tmp/cvs-serv32620 Added Files: style.css Log Message: final version. installed. all happy now. --- NEW FILE: style.css --- /* $Id: style.css,v 1.1 2002/04/24 13:27:51 anthonybaxter Exp $ */ BODY { background: white; color: #484848; } A:link { color: #645460; } A:visited { color: #303030; } A:active { color: #ff9933; } P:footer { font-size: x-small; } TABLE:navigation { width: 100%; border: 0; } TABLE:navigation TR { background: white; padding: 10%; } TD:navtitle { color: #f4a560; font-size: xx-large; text-style: bold; } IMG { border: 0; } |
From: Anthony B. <ant...@us...> - 2002-04-24 13:27:56
|
Update of /cvsroot/pydns/website/scripts In directory usw-pr-cvs1:/tmp/cvs-serv32620/scripts Modified Files: make.rules Log Message: final version. installed. all happy now. Index: make.rules =================================================================== RCS file: /cvsroot/pydns/website/scripts/make.rules,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** make.rules 24 Apr 2002 09:21:44 -0000 1.2 --- make.rules 24 Apr 2002 13:27:51 -0000 1.3 *************** *** 22,26 **** # physical location of files on the server. LIVE_HOST = shell1.sourceforge.net ! LIVE_ROOT = /home/groups/p/py/pydns/htdocs/new LIVE_DEST = $(LIVE_HOST):$(LIVE_ROOT)/$(ROOT_OFFSET) --- 22,26 ---- # physical location of files on the server. LIVE_HOST = shell1.sourceforge.net ! LIVE_ROOT = /home/groups/p/py/pydns/htdocs/ LIVE_DEST = $(LIVE_HOST):$(LIVE_ROOT)/$(ROOT_OFFSET) |
From: Anthony B. <ant...@us...> - 2002-04-24 09:21:47
|
Update of /cvsroot/pydns/website/scripts In directory usw-pr-cvs1:/tmp/cvs-serv19726 Modified Files: make.rules rsync-excludes Log Message: oops. get the path right. new website is at pydns.sf.net/new/ will update to final version later tonight. Index: make.rules =================================================================== RCS file: /cvsroot/pydns/website/scripts/make.rules,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** make.rules 24 Apr 2002 08:49:21 -0000 1.1.1.1 --- make.rules 24 Apr 2002 09:21:44 -0000 1.2 *************** *** 22,26 **** # physical location of files on the server. LIVE_HOST = shell1.sourceforge.net ! LIVE_ROOT = /usr/local/WWW/ftp.python.org/pub/www.python.org LIVE_DEST = $(LIVE_HOST):$(LIVE_ROOT)/$(ROOT_OFFSET) --- 22,26 ---- # physical location of files on the server. LIVE_HOST = shell1.sourceforge.net ! LIVE_ROOT = /home/groups/p/py/pydns/htdocs/new LIVE_DEST = $(LIVE_HOST):$(LIVE_ROOT)/$(ROOT_OFFSET) Index: rsync-excludes =================================================================== RCS file: /cvsroot/pydns/website/scripts/rsync-excludes,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** rsync-excludes 24 Apr 2002 08:49:21 -0000 1.1.1.1 --- rsync-excludes 24 Apr 2002 09:21:44 -0000 1.2 *************** *** 1,4 **** --- 1,6 ---- /*/* .rsync-excludes + orig + scripts *.htp *.bak |
From: Anthony B. <ant...@us...> - 2002-04-24 09:10:25
|
Update of /cvsroot/pydns/website In directory usw-pr-cvs1:/tmp/cvs-serv16801 Modified Files: docs.ht index.ht links.h Added Files: .cvsignore apps.ht downloads.ht faq.ht Removed Files: docs.html index.html Log Message: hm. hopefully ok now. --- NEW FILE: .cvsignore --- *.html --- NEW FILE: apps.ht --- Title: PyDNS Applications Author-Email: pyd...@so... Author: pydns-developer <h2>Applications</h2> <p>There are a number of small scripts in the tests directory that implement various simple tasks. These will migrate into a proper tools/ directory soon</p> <h2>Third-party applications</h2> There are some applications implemented with the help of PyDNS (in alphabetical order): <dl> <dt> <a href="http://www.web2ldap.de">web2ldap</a> </dt> <dd> <p> A web gateway to LDAP servers which uses <em>PyDNS</em> to look up DNS SRV RR's for dc-style LDAP DNs. </p> </dd> </dl> --- NEW FILE: downloads.ht --- Title: Downloading PyDNS Author-Email: pyd...@so... Author: pydns-developer <h2>Downloads</h2> <p> pyDNS is currently only <a href="http://sourceforge.net/cvs/?group_id=31674"> available via CVS</a>. </p> --- NEW FILE: faq.ht --- Title: PyDNS FAQs Author-Email: pyd...@so... Author: pydns-developer <h1>Frequently Asked Questions</h1> <ol> <li> </li> </ol> Index: docs.ht =================================================================== RCS file: /cvsroot/pydns/website/docs.ht,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** docs.ht 24 Apr 2002 08:49:21 -0000 1.1.1.1 --- docs.ht 24 Apr 2002 09:10:22 -0000 1.2 *************** *** 1,5 **** --- 1,10 ---- Title: PyDNS Documentation + Author-Email: pyd...@so... + Author: pydns-developer <h2>Related information</h2> + + <h2>PyDNS docs</h2> + <p><i>tbd...</i></p> <h2>RFCs</h2> Index: index.ht =================================================================== RCS file: /cvsroot/pydns/website/index.ht,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** index.ht 24 Apr 2002 08:49:21 -0000 1.1.1.1 --- index.ht 24 Apr 2002 09:10:22 -0000 1.2 *************** *** 1,9 **** Title: PyDNS: DNS module for Python <H2>What is PyDNS?</h2> <p> ! PyDNS provides a module for looking up DNS entries ! with Python applications. </p> <h2>Mailing list</h2> --- 1,18 ---- Title: PyDNS: DNS module for Python + Author-Email: pyd...@so... + Author: pydns-developer <H2>What is PyDNS?</h2> <p> ! PyDNS provides a module for performing DNS queries from python ! applications. </p> + + <p>Code is currently available from the PyDNS Sourceforge site, + accessible from the 'PyDNS @ SF' link on the top of the page.</p> + + <h2>History, background</h2> + <p>This was originally based on Guido van Rossum's DNS library code, + but has drifted further and further away from it over time.</p> <h2>Mailing list</h2> Index: links.h =================================================================== RCS file: /cvsroot/pydns/website/links.h,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** links.h 24 Apr 2002 08:49:21 -0000 1.1.1.1 --- links.h 24 Apr 2002 09:10:22 -0000 1.2 *************** *** 1,3 **** --- 1,4 ---- <h3>PyDNS</h3> + <li><a href="index.html">Top</a> <li><a href="downloads.html">Downloads</a> <li><a href="docs.html">Docs</a> --- docs.html DELETED --- --- index.html DELETED --- |
From: Anthony B. <ant...@us...> - 2002-04-24 09:10:25
|
Update of /cvsroot/pydns/website/scripts/ht2html In directory usw-pr-cvs1:/tmp/cvs-serv16801/scripts/ht2html Modified Files: PyDNSGenerator.py Log Message: hm. hopefully ok now. Index: PyDNSGenerator.py =================================================================== RCS file: /cvsroot/pydns/website/scripts/ht2html/PyDNSGenerator.py,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -C2 -d -r1.1.1.1 -r1.2 *** PyDNSGenerator.py 24 Apr 2002 08:49:22 -0000 1.1.1.1 --- PyDNSGenerator.py 24 Apr 2002 09:10:22 -0000 1.2 *************** *** 21,25 **** class PyDNSGenerator(Skeleton, Sidebar, Banner): ! AUTHOR = 'py...@py...' def __init__(self, file, rootdir, relthis): --- 21,25 ---- class PyDNSGenerator(Skeleton, Sidebar, Banner): ! AUTHOR = 'pyd...@so...' def __init__(self, file, rootdir, relthis): *************** *** 37,43 **** # end center tags, otherwise layout gets messed up p.sidebar.append(('%(rootdir)s', ''' ! <center> <img alt="" border="0" ! src="http://sourceforge.net/sflogo.php?group_id=31674&type=1"></center> ''' % self.__d)) self.__linkfixer.massage(p.sidebar, self.__d) --- 37,43 ---- # end center tags, otherwise layout gets messed up p.sidebar.append(('%(rootdir)s', ''' ! <div align="right"> <img alt="" border="0" ! src="http://sourceforge.net/sflogo.php?group_id=31674&type=1"></div> ''' % self.__d)) self.__linkfixer.massage(p.sidebar, self.__d) *************** *** 145,155 **** # python.org color scheme overrides def get_lightshade(self): ! return '#99ccff' def get_mediumshade(self): ! return '#3399ff' def get_darkshade(self): ! return '#003366' def get_charset(self): --- 145,155 ---- # python.org color scheme overrides def get_lightshade(self): ! return '#c7c7d7' def get_mediumshade(self): ! return '#867272' def get_darkshade(self): ! return '#635d5d' def get_charset(self): |
From: Anthony B. <ant...@us...> - 2002-04-24 08:49:26
|
Update of /cvsroot/pydns/website In directory usw-pr-cvs1:/tmp/cvs-serv11224 Log Message: initial import. Status: Vendor Tag: anthony Release Tags: v0_0 N website/Makefile N website/index.ht N website/docs.html N website/links.h N website/docs.ht N website/index.html N website/scripts/make.rules N website/scripts/calcroot.py N website/scripts/rsync-excludes N website/scripts/striphtml.py N website/scripts/ht2html/.cvsignore N website/scripts/ht2html/BAWGenerator.py N website/scripts/ht2html/Banner.py N website/scripts/ht2html/HTParser.py N website/scripts/ht2html/IPC8Generator.py N website/scripts/ht2html/JPyGenerator.py N website/scripts/ht2html/JPyLocalGenerator.py N website/scripts/ht2html/LinkFixer.py N website/scripts/ht2html/PDOGenerator.py N website/scripts/ht2html/README N website/scripts/ht2html/SelfGenerator.py N website/scripts/ht2html/Sidebar.py N website/scripts/ht2html/Skeleton.py N website/scripts/ht2html/StandardGenerator.py N website/scripts/ht2html/calcroot.py N website/scripts/ht2html/ht2html.py N website/scripts/ht2html/PyDNSGenerator.py N website/scripts/ht2html/doc/Makefile N website/scripts/ht2html/doc/PythonPoweredSmall.png N website/scripts/ht2html/doc/bugs.ht N website/scripts/ht2html/doc/bugs.html N website/scripts/ht2html/doc/components.ht N website/scripts/ht2html/doc/components.html N website/scripts/ht2html/doc/docstring.ht N website/scripts/ht2html/doc/docstring.html N website/scripts/ht2html/doc/examples.ht N website/scripts/ht2html/doc/examples.html N website/scripts/ht2html/doc/ht2html.png N website/scripts/ht2html/doc/index.ht N website/scripts/ht2html/doc/index.html N website/scripts/ht2html/doc/links.h N website/scripts/ht2html/doc/style.ht N website/scripts/ht2html/doc/style.html N website/orig/apps.shtml N website/orig/docs.shtml N website/orig/download.shtml N website/orig/faq.shtml N website/orig/index.html N website/orig/style.css No conflicts created by this import ***** Bogus filespec: - Imported sources |
From: Anthony B. <ant...@us...> - 2002-04-23 13:08:06
|
Update of /cvsroot/pydns/pydns/DNS In directory usw-pr-cvs1:/tmp/cvs-serv6389 Modified Files: Status.py Class.py Log Message: cleanup whitespace. Index: Status.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/Status.py,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Status.py 23 Apr 2002 10:57:57 -0000 1.6 --- Status.py 23 Apr 2002 12:52:19 -0000 1.7 *************** *** 22,31 **** NOTZONE = 10 # Name not contained in zone [RFC 2136] BADVERS = 16 # Bad OPT Version [RFC 2671] ! BADSIG = 16 # TSIG Signature Failure [RFC 2845] BADKEY = 17 # Key not recognized [RFC 2845] BADTIME = 18 # Signature out of time window [RFC 2845] BADMODE = 19 # Bad TKEY Mode [RFC 2930] BADNAME = 20 # Duplicate key name [RFC 2930] ! BADALG = 21 # Algorithm not supported [RFC 2930] # Construct reverse mapping dictionary --- 22,31 ---- NOTZONE = 10 # Name not contained in zone [RFC 2136] BADVERS = 16 # Bad OPT Version [RFC 2671] ! BADSIG = 16 # TSIG Signature Failure [RFC 2845] BADKEY = 17 # Key not recognized [RFC 2845] BADTIME = 18 # Signature out of time window [RFC 2845] BADMODE = 19 # Bad TKEY Mode [RFC 2930] BADNAME = 20 # Duplicate key name [RFC 2930] ! BADALG = 21 # Algorithm not supported [RFC 2930] # Construct reverse mapping dictionary *************** *** 42,45 **** --- 42,48 ---- # # $Log$ + # Revision 1.7 2002/04/23 12:52:19 anthonybaxter + # cleanup whitespace. + # # Revision 1.6 2002/04/23 10:57:57 anthonybaxter # update to complete the list of response codes. Index: Class.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/Class.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** Class.py 19 Mar 2002 12:41:33 -0000 1.5 --- Class.py 23 Apr 2002 12:52:19 -0000 1.6 *************** *** 14,18 **** CS = 2 # the CSNET class (Obsolete - used only for examples in # some obsolete RFCs) ! CH = 3 # the CHAOS class HS = 4 # Hesiod [Dyer 87] --- 14,19 ---- CS = 2 # the CSNET class (Obsolete - used only for examples in # some obsolete RFCs) ! CH = 3 # the CHAOS class. When someone shows me python running on ! # a Symbolics Lisp machine, I'll look at implementing this. HS = 4 # Hesiod [Dyer 87] *************** *** 35,38 **** --- 36,42 ---- # # $Log$ + # Revision 1.6 2002/04/23 12:52:19 anthonybaxter + # cleanup whitespace. + # # Revision 1.5 2002/03/19 12:41:33 anthonybaxter # tabnannied and reindented everything. 4 space indent, no tabs. |
From: Anthony B. <ant...@us...> - 2002-04-23 10:58:00
|
Update of /cvsroot/pydns/pydns/DNS In directory usw-pr-cvs1:/tmp/cvs-serv1088 Modified Files: Status.py Log Message: update to complete the list of response codes. Index: Status.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/Status.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** Status.py 19 Mar 2002 12:41:33 -0000 1.5 --- Status.py 23 Apr 2002 10:57:57 -0000 1.6 *************** *** 10,19 **** """ ! NOERROR = 0 ! FORMERR = 1 ! SERVFAIL = 2 ! NXDOMAIN = 3 ! NOTIMP = 4 ! REFUSED = 5 # Construct reverse mapping dictionary --- 10,31 ---- """ ! NOERROR = 0 # No Error [RFC 1035] ! FORMERR = 1 # Format Error [RFC 1035] ! SERVFAIL = 2 # Server Failure [RFC 1035] ! NXDOMAIN = 3 # Non-Existent Domain [RFC 1035] ! NOTIMP = 4 # Not Implemented [RFC 1035] ! REFUSED = 5 # Query Refused [RFC 1035] ! YXDOMAIN = 6 # Name Exists when it should not [RFC 2136] ! YXRRSET = 7 # RR Set Exists when it should not [RFC 2136] ! NXRRSET = 8 # RR Set that should exist does not [RFC 2136] ! NOTAUTH = 9 # Server Not Authoritative for zone [RFC 2136] ! NOTZONE = 10 # Name not contained in zone [RFC 2136] ! BADVERS = 16 # Bad OPT Version [RFC 2671] ! BADSIG = 16 # TSIG Signature Failure [RFC 2845] ! BADKEY = 17 # Key not recognized [RFC 2845] ! BADTIME = 18 # Signature out of time window [RFC 2845] ! BADMODE = 19 # Bad TKEY Mode [RFC 2930] ! BADNAME = 20 # Duplicate key name [RFC 2930] ! BADALG = 21 # Algorithm not supported [RFC 2930] # Construct reverse mapping dictionary *************** *** 30,33 **** --- 42,48 ---- # # $Log$ + # Revision 1.6 2002/04/23 10:57:57 anthonybaxter + # update to complete the list of response codes. + # # Revision 1.5 2002/03/19 12:41:33 anthonybaxter # tabnannied and reindented everything. 4 space indent, no tabs. |
From: Anthony B. <ant...@us...> - 2002-04-23 10:51:47
|
Update of /cvsroot/pydns/pydns/DNS In directory usw-pr-cvs1:/tmp/cvs-serv31761 Modified Files: Opcode.py Log Message: Added UPDATE, NOTIFY. Index: Opcode.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/Opcode.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** Opcode.py 19 Mar 2002 12:41:33 -0000 1.5 --- Opcode.py 23 Apr 2002 10:51:43 -0000 1.6 *************** *** 7,11 **** This code is covered by the standard Python License. ! Opcode values in message header (section 4.1.1) """ --- 7,11 ---- This code is covered by the standard Python License. ! Opcode values in message header. RFC 1035, 1996, 2136. """ *************** *** 15,18 **** --- 15,20 ---- IQUERY = 1 STATUS = 2 + NOTIFY = 4 + UPDATE = 5 # Construct reverse mapping dictionary *************** *** 29,32 **** --- 31,37 ---- # # $Log$ + # Revision 1.6 2002/04/23 10:51:43 anthonybaxter + # Added UPDATE, NOTIFY. + # # Revision 1.5 2002/03/19 12:41:33 anthonybaxter # tabnannied and reindented everything. 4 space indent, no tabs. |
From: Anthony B. <ant...@us...> - 2002-04-23 06:04:33
|
Update of /cvsroot/pydns/pydns/DNS In directory usw-pr-cvs1:/tmp/cvs-serv19657 Modified Files: Base.py Log Message: attempt to refactor the DNSRequest.req method a little. after doing a bit of this, I've decided to bite the bullet and just rewrite the puppy. will be checkin in some design notes, then unit tests and then writing the sod. Index: Base.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/Base.py,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** Base.py 19 Mar 2002 13:05:02 -0000 1.11 --- Base.py 23 Apr 2002 06:04:27 -0000 1.12 *************** *** 10,15 **** """ ! import socket ! import string import Type,Class,Opcode import asyncore --- 10,14 ---- """ ! import socket, string, types, time import Type,Class,Opcode import asyncore *************** *** 31,34 **** --- 30,35 ---- continue fields=string.split(line) + if len(fields) == 0: + continue if fields[0]=='domain': defaults['domain']=fields[1] *************** *** 62,66 **** if not name and self.defaults.has_key('name'): args['name'] = self.defaults['name'] ! if type(name) is type(""): args['name']=name else: --- 63,67 ---- if not name and self.defaults.has_key('name'): args['name'] = self.defaults['name'] ! if type(name) is types.StringType: args['name']=name else: *************** *** 74,78 **** else: args[i]=defaults[i] ! if type(args['server']) == type(''): args['server'] = [args['server']] self.args=args --- 75,79 ---- else: args[i]=defaults[i] ! if type(args['server']) == types.StringType: args['server'] = [args['server']] self.args=args *************** *** 147,151 **** rd = self.args['rd'] server=self.args['server'] ! if type(self.args['qtype']) == type('foo'): try: qtype = getattr(Type, string.upper(self.args['qtype'])) --- 148,152 ---- rd = self.args['rd'] server=self.args['server'] ! if type(self.args['qtype']) == types.StringType: try: qtype = getattr(Type, string.upper(self.args['qtype'])) *************** *** 163,166 **** --- 164,168 ---- #print 'QTYPE %d(%s)' % (qtype, Type.typestr(qtype)) m = Lib.Mpacker() + # jesus. keywords and default args would be good. TODO. m.addHeader(0, 0, opcode, 0, 0, rd, 0, 0, 0, *************** *** 169,209 **** self.request = m.getbuf() if protocol == 'udp': ! self.response=None ! self.socketInit(socket.AF_INET, socket.SOCK_DGRAM) ! for self.ns in server: ! try: ! #self.s.connect((self.ns, self.port)) ! self.conn() ! self.time_start=time.time() ! if not self.async: ! self.s.send(self.request) ! self.response=self.processUDPReply() ! #except socket.error: ! except None: ! continue ! break ! if not self.response: ! if not self.async: ! raise DNSError,'no working nameservers found' ! else: ! self.response=None ! for self.ns in server: ! try: ! self.socketInit(socket.AF_INET, socket.SOCK_STREAM) ! self.time_start=time.time() ! self.conn() ! self.s.send(Lib.pack16bit(len(self.request)) + ! self.request) ! self.s.shutdown(1) ! self.response=self.processTCPReply() ! except socket.error: ! continue ! break ! if not self.response: ! raise DNSError,'no working nameservers found' ! if not self.async: ! return self.response else: return None #class DnsAsyncRequest(DnsRequest): --- 171,219 ---- self.request = m.getbuf() if protocol == 'udp': ! self.sendUDPRequest(server) else: + self.sendTCPRequest(server) + if self.async: return None + else: + return self.response + + def sendUDPRequest(self, server): + "refactor me" + self.response=None + self.socketInit(socket.AF_INET, socket.SOCK_DGRAM) + for self.ns in server: + try: + # TODO. Handle timeouts &c correctly (RFC) + #self.s.connect((self.ns, self.port)) + self.conn() + self.time_start=time.time() + if not self.async: + self.s.send(self.request) + self.response=self.processUDPReply() + #except socket.error: + except None: + continue + break + if not self.response: + if not self.async: + raise DNSError,'no working nameservers found' + + def sendTCPRequest(self, server): + " do the work of sending a TCP request " + self.response=None + for self.ns in server: + try: + self.socketInit(socket.AF_INET, socket.SOCK_STREAM) + self.time_start=time.time() + self.conn() + self.s.send(Lib.pack16bit(len(self.request))+self.request) + self.s.shutdown(1) + self.response=self.processTCPReply() + except socket.error: + continue + break + if not self.response: + raise DNSError,'no working nameservers found' #class DnsAsyncRequest(DnsRequest): *************** *** 243,246 **** --- 253,261 ---- # # $Log$ + # Revision 1.12 2002/04/23 06:04:27 anthonybaxter + # attempt to refactor the DNSRequest.req method a little. after doing a bit + # of this, I've decided to bite the bullet and just rewrite the puppy. will + # be checkin in some design notes, then unit tests and then writing the sod. + # # Revision 1.11 2002/03/19 13:05:02 anthonybaxter # converted to class based exceptions (there goes the python1.4 compatibility :) |
From: <mi...@st...> - 2002-03-22 01:30:28
|
Anthony Baxter wrote: > How important is python 1.5.2 compatibility? given that we're just about > up to the 7th release since 1.5.2, is it ditchable? opinions, anyone? Personally I'm not using Python 1.5.2 anymore. But e.g. RedHat Linux still ships with this version being the default Python version. And many CGI-BIN programmers are still stuck with 1.5.x since their web space providers refuse to upgrade the installed Python. So if it's not too much code bloat we should stay with Python 1.5.x compability for quite a little while longer. This might change if PyDNS becomes part of the Python distribution. Ciao, Michael. |
From: Anthony B. <ant...@us...> - 2002-03-19 13:05:07
|
Update of /cvsroot/pydns/pydns/DNS In directory usw-pr-cvs1:/tmp/cvs-serv32544 Modified Files: Base.py Lib.py __init__.py Log Message: converted to class based exceptions (there goes the python1.4 compatibility :) removed a quite gross use of 'eval()'. Index: Base.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/Base.py,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** Base.py 19 Mar 2002 12:41:33 -0000 1.10 --- Base.py 19 Mar 2002 13:05:02 -0000 1.11 *************** *** 12,18 **** import socket import string ! import Lib,Type,Class,Opcode import asyncore ! from DNS import Error as DNSError defaults= { 'protocol':'udp', 'port':53, 'opcode':Opcode.QUERY, --- 12,19 ---- import socket import string ! import Type,Class,Opcode import asyncore ! ! class DNSError(Exception): pass defaults= { 'protocol':'udp', 'port':53, 'opcode':Opcode.QUERY, *************** *** 92,96 **** def processTCPReply(self): ! import time self.f = self.s.makefile('r') header = self.f.read(2) --- 93,97 ---- def processTCPReply(self): ! import time, Lib self.f = self.s.makefile('r') header = self.f.read(2) *************** *** 106,109 **** --- 107,111 ---- def processReply(self): + import Lib self.args['elapsed']=(self.time_finish-self.time_start)*1000 u = Lib.Munpacker(self.reply) *************** *** 136,140 **** def req(self,*name,**args): " needs a refactoring " ! import time self.argparse(name,args) #if not self.args: --- 138,142 ---- def req(self,*name,**args): " needs a refactoring " ! import time, Lib self.argparse(name,args) #if not self.args: *************** *** 147,152 **** if type(self.args['qtype']) == type('foo'): try: ! qtype = eval(string.upper(self.args['qtype']),Type.__dict__) ! except (NameError,SyntaxError): raise DNSError,'unknown query type' else: --- 149,154 ---- if type(self.args['qtype']) == type('foo'): try: ! qtype = getattr(Type, string.upper(self.args['qtype'])) ! except AttributeError: raise DNSError,'unknown query type' else: *************** *** 241,244 **** --- 243,251 ---- # # $Log$ + # Revision 1.11 2002/03/19 13:05:02 anthonybaxter + # converted to class based exceptions (there goes the python1.4 compatibility :) + # + # removed a quite gross use of 'eval()'. + # # Revision 1.10 2002/03/19 12:41:33 anthonybaxter # tabnannied and reindented everything. 4 space indent, no tabs. Index: Lib.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/Lib.py,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** Lib.py 19 Mar 2002 12:41:33 -0000 1.10 --- Lib.py 19 Mar 2002 13:05:02 -0000 1.11 *************** *** 22,27 **** # ------------------------------------------------------------------------ - UnpackError = 'DNS.Lib.UnpackError' # Exception - PackError = 'DNS.Lib.PackError' # Exception import string, types --- 22,25 ---- *************** *** 32,35 **** --- 30,37 ---- import Status + from Base import DNSError + + class UnpackError(DNSError): pass + class PackError(DNSError): pass # Low-level 16 and 32 bit integer packing and unpacking *************** *** 630,633 **** --- 632,640 ---- # # $Log$ + # Revision 1.11 2002/03/19 13:05:02 anthonybaxter + # converted to class based exceptions (there goes the python1.4 compatibility :) + # + # removed a quite gross use of 'eval()'. + # # Revision 1.10 2002/03/19 12:41:33 anthonybaxter # tabnannied and reindented everything. 4 space indent, no tabs. Index: __init__.py =================================================================== RCS file: /cvsroot/pydns/pydns/DNS/__init__.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** __init__.py 19 Mar 2002 12:41:33 -0000 1.5 --- __init__.py 19 Mar 2002 13:05:02 -0000 1.6 *************** *** 11,18 **** __version__ = '0.0.1' - Error='DNS API error' import Type,Opcode,Status,Class from Base import * from Lib import * from lazy import * Request = DnsRequest --- 11,20 ---- __version__ = '0.0.1' import Type,Opcode,Status,Class + from Base import DnsRequest, DNSError + from Lib import DnsResult from Base import * from Lib import * + Error=DNSError from lazy import * Request = DnsRequest *************** *** 21,24 **** --- 23,31 ---- # # $Log$ + # Revision 1.6 2002/03/19 13:05:02 anthonybaxter + # converted to class based exceptions (there goes the python1.4 compatibility :) + # + # removed a quite gross use of 'eval()'. + # # Revision 1.5 2002/03/19 12:41:33 anthonybaxter # tabnannied and reindented everything. 4 space indent, no tabs. |