 |
Index for Section 3 |
|
 |
Alphabetical listing for D |
|
 |
Bottom of page |
|
dn_comp(3)
NAME
dn_comp - Compress a domain name
SYNOPSIS
#include <sys/types.h>
#include <netinet/in.h>
#include <arpa/nameser.h>
#include <resolv.h>
int dn_comp(
const char *expanded_name,
u_char *compressed_name,
int length,
u_char **name_ptrs,
u_char **end_ptr );
LIBRARY
Standard C Library (libc)
PARAMETERS
expanded_name
Points to a domain name.
compressed_name
Points to an array containing the compressed domain name.
length
Specifies the size of the array pointed to by the compressed_name
parameter.
name_ptrs
Specifies a list of pointers to previously compressed names in the
current message.
end_ptr
Points to the end of the array pointed to by the compressed_name
parameter.
DESCRIPTION
The dn_comp() (domain name compression) function compresses the domain name
pointed to by the expanded_name parameter and stores it in the area pointed
to by the compressed_name parameter.
The dn_comp() function inserts labels into the message as the name is
compressed. The dn_comp() function also maintains a list of pointers to
the message labels.
If the value of the name_ptrs parameter is null, the dn_comp() function
does not compress any names, but instead translates a domain name from
ASCII to internal format without removing suffixes (compressing).
Otherwise, the name_ptrs parameter is the address of pointers to previously
compressed suffixes. The list ends with NULL.
If the end_ptr parameter is null, the dn_comp() function does not update
the list of label pointers.
The dn_comp() function is one of a set of subroutines that form the
resolver, a set of functions that resolves domain names. Global
information that is used by the resolver functions is kept in the _res data
structure. The /include/resolv.h file contains the _res data structure
definition.
RETURN VALUES
Upon successful completion, the dn_comp() function returns the size of the
compressed domain name. Otherwise, a value of -1 is returned and the
h_errno external variable is set with an error code, if any. Error code
values and reasons are defined in <netdb.h>.
FILES
/etc/resolv.conf
Defines name server and domain name structures, constants, and values.
SEE ALSO
Functions: dn_expand(3), dn_find(3), dn_skipname(3), putshort(3),
putlong(3), res_init(3), res_mkquery(3), res_query(3), res_search(3),
res_send(3), _getshort(3), _getlong(3).
Commands: named(8).
 |
Index for Section 3 |
|
 |
Alphabetical listing for D |
|
 |
Top of page |
|