Annotation of 43BSDTahoe/man/man3/ns.3, revision 1.1.1.1

1.1       root        1: .\" Copyright (c) 1986 Regents of the University of California.
                      2: .\" All rights reserved.  The Berkeley software License Agreement
                      3: .\" specifies the terms and conditions for redistribution.
                      4: .\"
                      5: .\"    @(#)ns.3n       6.2 (Berkeley) 5/12/86
                      6: .\"
                      7: .TH NS 3N "May 12, 1986"
                      8: .UC 6
                      9: .SH NAME
                     10: ns_addr, ns_ntoa \- Xerox NS(tm)  address conversion routines
                     11: .SH SYNOPSIS
                     12: .nf
                     13: .B "#include <sys/types.h>
                     14: .B "#include <netns/ns.h>
                     15: .PP
                     16: .B "struct ns_addr ns_addr(cp)
                     17: .B "char *cp;
                     18: .PP
                     19: .B "char *ns_ntoa(ns)
                     20: .B "struct ns_addr ns;
                     21: .fi
                     22: .SH DESCRIPTION
                     23: The routine
                     24: .I ns_addr
                     25: interprets character strings representing
                     26: XNS addresses, returning binary information suitable
                     27: for use in system calls.
                     28: .I ns_ntoa
                     29: takes XNS addresses and returns ASCII
                     30: strings representing the address in a
                     31: notation in common use in the Xerox Development Environment:
                     32: .nf
                     33:        <network number>.<host number>.<port number>
                     34: .fi
                     35: Trailing zero fields are suppressed, and each number is printed in hexadecimal,
                     36: in a format suitable for input to 
                     37: .IR ns_addr .
                     38: Any fields lacking super-decimal digits will have a
                     39: trailing ``H'' appended.
                     40: .PP
                     41: Unfortunately, no universal standard exists for representing XNS addresses.
                     42: An effort has been made to insure that
                     43: .I ns_addr
                     44: be compatible with most formats in common use.
                     45: It will first separate an address into 1 to 3 fields using a single delimiter
                     46: chosen from
                     47: period (``.''),
                     48: colon (``:'') or pound-sign (``#'').
                     49: Each field is then examined for byte separators (colon or period).
                     50: If there are byte separators, each subfield separated is taken to be
                     51: a small hexadecimal number, and the entirety is taken as a network-byte-ordered
                     52: quantity to be zero extended in the high-network-order bytes.
                     53: Next, the field is inspected for hyphens, in which case
                     54: the field is assumed to be a number in decimal notation
                     55: with hyphens separating the millenia.
                     56: Next, the field is assumed to be a number:
                     57: It is interpreted
                     58: as hexadecimal if there is a leading ``0x'' (as in C),
                     59: a trailing ``H'' (as in Mesa), or there are any super-decimal digits present.
                     60: It is interpreted as octal is there is a leading ``0''
                     61: and there are no super-octal digits.
                     62: Otherwise, it is converted as a decimal number.
                     63: .SH "SEE ALSO"
                     64: hosts(5), networks(5),
                     65: .SH DIAGNOSTICS
                     66: None (see BUGS).
                     67: .SH BUGS
                     68: The string returned by
                     69: .I ns_ntoa
                     70: resides in a static memory area.
                     71: .br
                     72: .I ns_addr
                     73: should diagnose improperly formed input, and there should be an unambiguous
                     74: way to recognize this.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.