mirror of https://github.com/python/cpython.git
The final bit of my Mac documentation.
This commit is contained in:
parent
d211220cd2
commit
f16d5fa46f
|
@ -0,0 +1,116 @@
|
|||
|
||||
\section{Built-in module \sectcode{macdnr}}
|
||||
\bimodindex{macdnr}
|
||||
|
||||
This module provides an interface to the Macintosh Domain Name
|
||||
Resolver. It is usually used in conjunction with the \var{mactcp} module, to
|
||||
map hostnames to IP-addresses.
|
||||
|
||||
The \code{macdnr} module defines the following functions:
|
||||
|
||||
\renewcommand{\indexsubitem}{(in module macdnr)}
|
||||
|
||||
\begin{funcdesc}{Open}{\optional{filename}}
|
||||
Open the domain name resolver extension. If \var{filename} is given it
|
||||
should be the pathname of the extension, otherwise a default is
|
||||
used. Normally, this call is not needed since the other calls will
|
||||
open the extension automatically.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{Close}{}
|
||||
Close the resolver extension. Again, not needed for normal use.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{StrToAddr}{hostname}
|
||||
Look up the IP address for \var{hostname}. This call returns a dnr
|
||||
result object of the ``address'' variation.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{AddrToName}{addr}
|
||||
Do a reverse lookup on the 32-bit integer IP-address
|
||||
\var{addr}. Returns a dnr result object of the ``address'' variation.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{AddrToStr}{addr}
|
||||
Convert the 32-bit integer IP-address \var{addr} to a dotted-decimal
|
||||
string. Returns the string.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{HInfo}{hostname}
|
||||
Query the nameservers for a \code{HInfo} record for host
|
||||
\var{hostname}. These records contain hardware and software
|
||||
information about the machine in question (if they are available in
|
||||
the first place). Returns a dnr result object of the ``hinfo''
|
||||
variety.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{MXInfo}{domain}
|
||||
Query the nameservers for a mail exchanger for \var{domain}. This is
|
||||
the hostname of a host willing to accept SMTP mail for the given
|
||||
domain. Returns a dnr result object of the ``mx'' variety.
|
||||
\end{funcdesc}
|
||||
|
||||
\subsection{dnr result object}
|
||||
|
||||
Since the DNR calls all execute asynchronously you do not get the
|
||||
results back immedeately. In stead, you get a dnr result object. You
|
||||
can check this object to see whether the query is complete, and access
|
||||
its attributes to obtain the information when it is.
|
||||
|
||||
Alternatively, you can also reference the result attributes directly,
|
||||
this will result in an implicit wait for the query to complete.
|
||||
|
||||
The \var{rtnCode} and \var{cname} attributes are always available, the
|
||||
others depend on the type of query (address, hinfo or mx).
|
||||
|
||||
\renewcommand{\indexsubitem}{(dnr result object method)}
|
||||
|
||||
% Add args, as in {arg1\, arg2 \optional{\, arg3}}
|
||||
\begin{funcdesc}{wait}{}
|
||||
Wait for the query to complete.
|
||||
\end{funcdesc}
|
||||
|
||||
% Add args, as in {arg1\, arg2 \optional{\, arg3}}
|
||||
\begin{funcdesc}{isdone}{}
|
||||
Return 1 if the query is complete.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{datadesc}{rtnCode}
|
||||
The error code returned by the query.
|
||||
\end{datadesc}
|
||||
|
||||
\begin{datadesc}{cname}
|
||||
The canonical name of the host that was queried.
|
||||
\end{datadesc}
|
||||
|
||||
\begin{datadesc}{ip0}
|
||||
\dataline{ip1}
|
||||
\dataline{ip2}
|
||||
\dataline{ip3}
|
||||
At most four integer IP addresses for this host. Unused entries are
|
||||
zero. Valid only for address queries.
|
||||
\end{datadesc}
|
||||
|
||||
\begin{datadesc}{cpuType}
|
||||
\dataline{osType}
|
||||
Textual strings giving the machine type an OS name. Valid for hinfo
|
||||
queries.
|
||||
\end{datadesc}
|
||||
|
||||
\begin{datadesc}{exchange}
|
||||
The name of a mail-exchanger host. Valid for mx queries.
|
||||
\end{datadesc}
|
||||
|
||||
\begin{datadesc}{preference}
|
||||
The preference of this mx record. Not too useful, since the Macintosh
|
||||
will only return a single mx record. Mx queries only.
|
||||
\end{datadesc}
|
||||
|
||||
The simplest way to use the module to convert names to dotted-decimal
|
||||
strings, without worrying about idle time, etc:
|
||||
\begin{verbatim}
|
||||
>>> def gethostname(name):
|
||||
... import macdnr
|
||||
... dnrr = macdnr.StrToAddr(name)
|
||||
... return macdnr.AddrToStr(dnrr.ip0)
|
||||
\end{verbatim}
|
|
@ -0,0 +1,116 @@
|
|||
|
||||
\section{Built-in module \sectcode{macdnr}}
|
||||
\bimodindex{macdnr}
|
||||
|
||||
This module provides an interface to the Macintosh Domain Name
|
||||
Resolver. It is usually used in conjunction with the \var{mactcp} module, to
|
||||
map hostnames to IP-addresses.
|
||||
|
||||
The \code{macdnr} module defines the following functions:
|
||||
|
||||
\renewcommand{\indexsubitem}{(in module macdnr)}
|
||||
|
||||
\begin{funcdesc}{Open}{\optional{filename}}
|
||||
Open the domain name resolver extension. If \var{filename} is given it
|
||||
should be the pathname of the extension, otherwise a default is
|
||||
used. Normally, this call is not needed since the other calls will
|
||||
open the extension automatically.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{Close}{}
|
||||
Close the resolver extension. Again, not needed for normal use.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{StrToAddr}{hostname}
|
||||
Look up the IP address for \var{hostname}. This call returns a dnr
|
||||
result object of the ``address'' variation.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{AddrToName}{addr}
|
||||
Do a reverse lookup on the 32-bit integer IP-address
|
||||
\var{addr}. Returns a dnr result object of the ``address'' variation.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{AddrToStr}{addr}
|
||||
Convert the 32-bit integer IP-address \var{addr} to a dotted-decimal
|
||||
string. Returns the string.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{HInfo}{hostname}
|
||||
Query the nameservers for a \code{HInfo} record for host
|
||||
\var{hostname}. These records contain hardware and software
|
||||
information about the machine in question (if they are available in
|
||||
the first place). Returns a dnr result object of the ``hinfo''
|
||||
variety.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{funcdesc}{MXInfo}{domain}
|
||||
Query the nameservers for a mail exchanger for \var{domain}. This is
|
||||
the hostname of a host willing to accept SMTP mail for the given
|
||||
domain. Returns a dnr result object of the ``mx'' variety.
|
||||
\end{funcdesc}
|
||||
|
||||
\subsection{dnr result object}
|
||||
|
||||
Since the DNR calls all execute asynchronously you do not get the
|
||||
results back immedeately. In stead, you get a dnr result object. You
|
||||
can check this object to see whether the query is complete, and access
|
||||
its attributes to obtain the information when it is.
|
||||
|
||||
Alternatively, you can also reference the result attributes directly,
|
||||
this will result in an implicit wait for the query to complete.
|
||||
|
||||
The \var{rtnCode} and \var{cname} attributes are always available, the
|
||||
others depend on the type of query (address, hinfo or mx).
|
||||
|
||||
\renewcommand{\indexsubitem}{(dnr result object method)}
|
||||
|
||||
% Add args, as in {arg1\, arg2 \optional{\, arg3}}
|
||||
\begin{funcdesc}{wait}{}
|
||||
Wait for the query to complete.
|
||||
\end{funcdesc}
|
||||
|
||||
% Add args, as in {arg1\, arg2 \optional{\, arg3}}
|
||||
\begin{funcdesc}{isdone}{}
|
||||
Return 1 if the query is complete.
|
||||
\end{funcdesc}
|
||||
|
||||
\begin{datadesc}{rtnCode}
|
||||
The error code returned by the query.
|
||||
\end{datadesc}
|
||||
|
||||
\begin{datadesc}{cname}
|
||||
The canonical name of the host that was queried.
|
||||
\end{datadesc}
|
||||
|
||||
\begin{datadesc}{ip0}
|
||||
\dataline{ip1}
|
||||
\dataline{ip2}
|
||||
\dataline{ip3}
|
||||
At most four integer IP addresses for this host. Unused entries are
|
||||
zero. Valid only for address queries.
|
||||
\end{datadesc}
|
||||
|
||||
\begin{datadesc}{cpuType}
|
||||
\dataline{osType}
|
||||
Textual strings giving the machine type an OS name. Valid for hinfo
|
||||
queries.
|
||||
\end{datadesc}
|
||||
|
||||
\begin{datadesc}{exchange}
|
||||
The name of a mail-exchanger host. Valid for mx queries.
|
||||
\end{datadesc}
|
||||
|
||||
\begin{datadesc}{preference}
|
||||
The preference of this mx record. Not too useful, since the Macintosh
|
||||
will only return a single mx record. Mx queries only.
|
||||
\end{datadesc}
|
||||
|
||||
The simplest way to use the module to convert names to dotted-decimal
|
||||
strings, without worrying about idle time, etc:
|
||||
\begin{verbatim}
|
||||
>>> def gethostname(name):
|
||||
... import macdnr
|
||||
... dnrr = macdnr.StrToAddr(name)
|
||||
... return macdnr.AddrToStr(dnrr.ip0)
|
||||
\end{verbatim}
|
Loading…
Reference in New Issue