mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	 1947991c2f
			
		
	
	
		1947991c2f
		
	
	
	
	
		
			
			checkin of myformat.sty.
Change "\renewcommand{\indexsubitem}{(...)}" to "\setindexsubitem{(...)}"
everywhere.
Some other minor nits that I happened to come across.
		
	
			
		
			
				
	
	
		
			119 lines
		
	
	
	
		
			3.7 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			119 lines
		
	
	
	
		
			3.7 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
| \section{Built-in Module \sectcode{macdnr}}
 | |
| \label{module-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.  It may not be available in
 | |
| all Mac Python versions.
 | |
| 
 | |
| The \code{macdnr} module defines the following functions:
 | |
| 
 | |
| \setindexsubitem{(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 immediately.  Instead, 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).
 | |
| 
 | |
| \setindexsubitem{(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}
 | |
| 
 | |
| \setindexsubitem{(dnr result object attribute)}
 | |
| 
 | |
| \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}
 |