mirror of
				https://github.com/mozilla/gecko-dev.git
				synced 2025-11-04 10:18:41 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			69 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
PRHostEnt
 | 
						|
=========
 | 
						|
 | 
						|
A structure that defines a list of network addresses. This structure is
 | 
						|
output from :ref:`PR_GetHostByName` and :ref:`PR_GetHostByAddr` and passed to
 | 
						|
:ref:`PR_EnumerateHostEnt`. Clients should avoid directly accessing any of
 | 
						|
the structure's fields.
 | 
						|
 | 
						|
 | 
						|
Syntax
 | 
						|
------
 | 
						|
 | 
						|
.. code::
 | 
						|
 | 
						|
   #include <prnetdb.h>
 | 
						|
 | 
						|
   typedef struct PRHostEnt {
 | 
						|
     char *h_name;
 | 
						|
     char **h_aliases;
 | 
						|
   #if defined(_WIN32)
 | 
						|
     PRInt16 h_addrtype;
 | 
						|
     PRInt16 h_length;
 | 
						|
   #else
 | 
						|
     PRInt32 h_addrtype;
 | 
						|
     PRInt32 h_length;
 | 
						|
   #endif
 | 
						|
     char **h_addr_list;
 | 
						|
   } PRHostEnt;
 | 
						|
 | 
						|
 | 
						|
Fields
 | 
						|
~~~~~~
 | 
						|
 | 
						|
The structure has the following fields:
 | 
						|
 | 
						|
``h_name``
 | 
						|
   Pointer to the official name of host.
 | 
						|
``h_aliases``
 | 
						|
   Pointer to a pointer to list of aliases. The list is terminated with
 | 
						|
   a ``NULL`` entry.
 | 
						|
``h_addrtype``
 | 
						|
   Host address type. For valid NSPR usage, this field must have a value
 | 
						|
   indicating either an IPv4 or an IPv6 address.
 | 
						|
``h_length``
 | 
						|
   Length of internal representation of the address in bytes. All of the
 | 
						|
   addresses in the list are of the same type and therefore of the same
 | 
						|
   length.
 | 
						|
``h_addr_list``
 | 
						|
   Pointer to a pointer to a list of addresses from name server (in
 | 
						|
   network byte order). The list is terminated with a ``NULL`` entry.
 | 
						|
 | 
						|
 | 
						|
Description
 | 
						|
-----------
 | 
						|
 | 
						|
This structure is used by many of the network address functions. All
 | 
						|
addresses are passed in host order and returned in network order
 | 
						|
(suitable for use in system calls).
 | 
						|
 | 
						|
Use the network address functions to manipulate the :ref:`PRHostEnt`
 | 
						|
structure. To make the transition to IP version 6 easier, it's best to
 | 
						|
treat :ref:`PRHostEnt` as an opaque structure.
 | 
						|
 | 
						|
Note
 | 
						|
----
 | 
						|
 | 
						|
``WINSOCK.H`` defines ``h_addrtype`` and ``h_length`` as a 16-bit field,
 | 
						|
whereas other platforms treat it as a 32-bit field. The ``#ifdef`` in
 | 
						|
the structure allows direct assignment of the :ref:`PRHostEnt` structure.
 |