annotate Doc/mac/libmacdnr.tex @ 5817:48b94de85bf3 legacy-trunk

Extensive changes by AMK.
author Guido van Rossum <guido@python.org>
date Thu, 17 Jul 1997 16:29:42 +0000
parents 9b7e6d9a528d
children 3468ea8645ca
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
1
2576
f47bc5554418 mass changes; fix titles; add examples; correct typos; clarifications;
Guido van Rossum <guido@python.org>
parents: 2467
diff changeset
2 \section{Built-in Module \sectcode{macdnr}}
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
3 \bimodindex{macdnr}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
4
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
5 This module provides an interface to the Macintosh Domain Name
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
6 Resolver. It is usually used in conjunction with the \var{mactcp}
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
7 module, to map hostnames to IP-addresses. It may not be available in
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
8 all Mac Python versions.
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
9
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
10 The \code{macdnr} module defines the following functions:
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
11
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
12 \renewcommand{\indexsubitem}{(in module macdnr)}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
13
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
14 \begin{funcdesc}{Open}{\optional{filename}}
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
15 Open the domain name resolver extension. If \var{filename} is given it
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
16 should be the pathname of the extension, otherwise a default is
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
17 used. Normally, this call is not needed since the other calls will
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
18 open the extension automatically.
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
19 \end{funcdesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
20
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
21 \begin{funcdesc}{Close}{}
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
22 Close the resolver extension. Again, not needed for normal use.
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
23 \end{funcdesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
24
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
25 \begin{funcdesc}{StrToAddr}{hostname}
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
26 Look up the IP address for \var{hostname}. This call returns a dnr
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
27 result object of the ``address'' variation.
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
28 \end{funcdesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
29
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
30 \begin{funcdesc}{AddrToName}{addr}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
31 Do a reverse lookup on the 32-bit integer IP-address
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
32 \var{addr}. Returns a dnr result object of the ``address'' variation.
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
33 \end{funcdesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
34
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
35 \begin{funcdesc}{AddrToStr}{addr}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
36 Convert the 32-bit integer IP-address \var{addr} to a dotted-decimal
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
37 string. Returns the string.
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
38 \end{funcdesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
39
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
40 \begin{funcdesc}{HInfo}{hostname}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
41 Query the nameservers for a \code{HInfo} record for host
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
42 \var{hostname}. These records contain hardware and software
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
43 information about the machine in question (if they are available in
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
44 the first place). Returns a dnr result object of the ``hinfo''
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
45 variety.
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
46 \end{funcdesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
47
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
48 \begin{funcdesc}{MXInfo}{domain}
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
49 Query the nameservers for a mail exchanger for \var{domain}. This is
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
50 the hostname of a host willing to accept SMTP mail for the given
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
51 domain. Returns a dnr result object of the ``mx'' variety.
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
52 \end{funcdesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
53
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
54 \subsection{dnr result object}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
55
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
56 Since the DNR calls all execute asynchronously you do not get the
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
57 results back immediately. Instead, you get a dnr result object. You
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
58 can check this object to see whether the query is complete, and access
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
59 its attributes to obtain the information when it is.
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
60
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
61 Alternatively, you can also reference the result attributes directly,
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
62 this will result in an implicit wait for the query to complete.
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
63
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
64 The \var{rtnCode} and \var{cname} attributes are always available, the
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
65 others depend on the type of query (address, hinfo or mx).
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
66
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
67 \renewcommand{\indexsubitem}{(dnr result object method)}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
68
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
69 % Add args, as in {arg1\, arg2 \optional{\, arg3}}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
70 \begin{funcdesc}{wait}{}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
71 Wait for the query to complete.
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
72 \end{funcdesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
73
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
74 % Add args, as in {arg1\, arg2 \optional{\, arg3}}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
75 \begin{funcdesc}{isdone}{}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
76 Return 1 if the query is complete.
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
77 \end{funcdesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
78
2576
f47bc5554418 mass changes; fix titles; add examples; correct typos; clarifications;
Guido van Rossum <guido@python.org>
parents: 2467
diff changeset
79 \renewcommand{\indexsubitem}{(dnr result object attribute)}
f47bc5554418 mass changes; fix titles; add examples; correct typos; clarifications;
Guido van Rossum <guido@python.org>
parents: 2467
diff changeset
80
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
81 \begin{datadesc}{rtnCode}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
82 The error code returned by the query.
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
83 \end{datadesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
84
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
85 \begin{datadesc}{cname}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
86 The canonical name of the host that was queried.
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
87 \end{datadesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
88
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
89 \begin{datadesc}{ip0}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
90 \dataline{ip1}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
91 \dataline{ip2}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
92 \dataline{ip3}
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
93 At most four integer IP addresses for this host. Unused entries are
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
94 zero. Valid only for address queries.
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
95 \end{datadesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
96
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
97 \begin{datadesc}{cpuType}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
98 \dataline{osType}
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
99 Textual strings giving the machine type an OS name. Valid for hinfo
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
100 queries.
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
101 \end{datadesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
102
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
103 \begin{datadesc}{exchange}
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
104 The name of a mail-exchanger host. Valid for mx queries.
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
105 \end{datadesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
106
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
107 \begin{datadesc}{preference}
2647
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
108 The preference of this mx record. Not too useful, since the Macintosh
9b7e6d9a528d typos, layout and other small things
Guido van Rossum <guido@python.org>
parents: 2576
diff changeset
109 will only return a single mx record. Mx queries only.
2467
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
110 \end{datadesc}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
111
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
112 The simplest way to use the module to convert names to dotted-decimal
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
113 strings, without worrying about idle time, etc:
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
114 \begin{verbatim}
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
115 >>> def gethostname(name):
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
116 ... import macdnr
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
117 ... dnrr = macdnr.StrToAddr(name)
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
118 ... return macdnr.AddrToStr(dnrr.ip0)
4f7c673da918 The final bit of my Mac documentation.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
119 \end{verbatim}