*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->OpenBSD man pages -> ns (3)              
Title
Content
Arch
Section
 

NS(3)

Contents


NAME    [Toc]    [Back]

     ns_addr, ns_ntoa - Xerox NS(tm) address conversion routines

SYNOPSIS    [Toc]    [Back]

     #include <sys/types.h>
     #include <netns/ns.h>

     struct ns_addr
     ns_addr(char *cp);

     char *
     ns_ntoa(struct ns_addr ns);

DESCRIPTION    [Toc]    [Back]

     The routine ns_addr() interprets  character  strings  representing XNS addresses,
  returning  binary  information suitable for use in
system calls.
     The routine ns_ntoa() takes XNS addresses and returns  ASCII
strings representing
 the address in a notation in common use in the Xerox Development
 Environment:

           <network number>.<host number>.<port number>

     Trailing zero fields are  suppressed,  and  each  number  is
printed in hexadecimal,
  in a format suitable for input to ns_addr().  Any
fields lacking
 super-decimal digits will have a trailing `H'  appended.

     Unfortunately, no universal standard exists for representing
XNS addresses.
  An effort has been made to  ensure  that  ns_addr()  be
compatible with
     most  formats  in common use.  It will first separate an address into 1 to
     3 fields using a single delimiter chosen from period  (`.'),
colon (`:'),
     or  pound-sign  `#'.   Each  field is then examined for byte
separators
     (colon or period).  If there are byte separators, each  subfield separated
     is  taken to be a small hexadecimal number, and the entirety
is taken as a
     network-byte-ordered quantity to be  zero  extended  in  the
high-network-order
  bytes.   Next,  the  field is inspected for hyphens, in
which case the
     field is assumed to be a number in decimal notation with hyphens separating
  the  millenia.  Next, the field is assumed to be a number: It is interpreted
 as hexadecimal if there is a leading `0x'  (as  in
C), a trailing
     `H' (as in Mesa), or there are any super-decimal digits present.  It is
     interpreted as octal if there is a leading `0' and there are
no super-octal
 digits.  Otherwise, it is converted as a decimal number.

RETURN VALUES    [Toc]    [Back]

     None.  (See BUGS.)

SEE ALSO    [Toc]    [Back]

      
      
     hosts(5), networks(5)

HISTORY    [Toc]    [Back]

     The ns_addr() and ns_toa() functions appeared in 4.3BSD.

BUGS    [Toc]    [Back]

     The string returned by ns_ntoa() resides in a static  memory
area.  The
     function  ns_addr() should diagnose improperly formed input,
and there
     should be an unambiguous way to recognize this.

OpenBSD      3.6                           June      4,      1993
[ Back ]
 Similar pages
Name OS Title
ipx_addr OpenBSD IPX address conversion routines
ipx OpenBSD IPX address conversion routines
ipx FreeBSD IPX address conversion routines
ipx_addr FreeBSD IPX address conversion routines
ipx_ntoa OpenBSD IPX address conversion routines
ipx_ntoa FreeBSD IPX address conversion routines
ether_ntoa FreeBSD Ethernet address conversion and lookup routines
ether_ntohost FreeBSD Ethernet address conversion and lookup routines
ethers FreeBSD Ethernet address conversion and lookup routines
ether_hostton FreeBSD Ethernet address conversion and lookup routines
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service