About this book

Table of contents

About this book

The Network Programming Interfaces describes the libraries and application program interfaces (APIs) available with the SCO OpenServer(TM) Development System to develop application programs that use the services of network-oriented communication protocols.

You will find the information you need more quickly if you are familiar with:

Although we try to present information in the most useful way, you are the ultimate judge of how well we succeed. Please let us know how we can improve this book.

How this book is organized

This book describes how to write:

This book also contains manual pages for:

XTI and TLI (NET)
Transport Library Interface and X/Open Transport Interface library routines

Socket Library Functions (SLIB)
support routines for socket-based programs

Socket System Calls (SSC)
routines for creating and manipulating sockets

Network System Services (NS)
library routines to access NFS, NIS, and ONC(TM) RPC, and XDR.

All of these manual pages can be displayed with the man(C) command.

Typographical conventions

This publication presents commands, filenames, keystrokes, and other special elements in these typefaces:

Example . . . . . . . . Used for:

lp or lp(C)
commands, device drivers, programs, and utilities (names, icons, or windows); the letter in parentheses indicates the reference manual section in which the command, driver, program, or utility is documented

/new/client.list
files, directories, and desktops (names, icons, or windows)

root
system, network, or user names

filename
placeholders (replace with appropriate name or value)

<Esc>
keyboard keys

Exit program?
system output (prompts, messages)

yes or yes
user input

``Description''
field names or column headings (on screen or in database)

Cancel
button names

Edit
menu names

Copy
menu items

File Find Text
sequences of menus and menu items

open or open(S)
library routines, system calls, kernel functions, C keywords; the letter in parentheses indicates the reference manual section in which the file is documented

$HOME
environment or shell variables

SIGHUP
named constants or signals

``adm3a''
data values

employees
database names

orders
database tables

buf
C program structures

b_b.errno
structure members

Related documentation

The SCO OpenServer(TM) Development System includes comprehensive documentation. Books are available in online and/or printed form. Access online books by double-clicking on the Desktop Help icon. Printed versions of the books are also available.

The contents of the SCO OpenServer Development System documentation set are illustrated here. In addition to these books, a copy of the Development System Release and Installation Notes is provided with the Development System software.

 --------------------------------------------------------------------------------------------------------------
|             |                         Reference                        |                Guide               |
|             | ---------------------------------------------------------|------------------------------------|
|        UNIX®|    C++ Library Manual                                   |    C++ Selected Readings          |
| Applications|    C++ Product Reference Manual                         |    Character User Interfaces Guide|
|             |    Programmer's Reference Manual                        |    Developer's Topics             |
|             |      (2 Volumes)                                         |    Programming Tools Guide        |
|-------------|-----------------------------------------------------------------------------------------------|
|   Networking|    Network Programmer's Guide and Reference                                                  |
|-------------|----------------------------------------------------------|------------------------------------|
|    Graphical|    X Window System                                      |                                    |
|             |      Programmer's Reference                              |                                    |
|             |    OSF/Motif Programmer's Reference                     |                                    |
|-------------|-----------------------------------------------------------------------------------------------|
|     Optional|    Device Driver Writer's Guide                                                              |
|-------------|-----------------------------------------------------------------------------------------------|

The books included with the Development System are:

C++ Library Manual
describes the three C++ class libraries and their use.

C++ Product Reference Manual
provides a complete definition of the C++ language supported by Release 3.1 of the SCO® C++ Language System.

C++ Selected Readings
contains papers describing aspects of the C++ language.

Character User Interfaces Guide
introduces the facilities available for developing user interfaces, and gives detailed instructions for using curses(S) and the Extended Terminal Interface (ETI), and for writing user interfaces that can be run on ASCII terminals. This book includes numerous examples of curses programs.

Developer's Topics
a collection of technical papers about topics of interest to users of the Development System. Many of these papers include examples illustrating features that are extensions provided by SCO software.

Network Programmer's Guide and Reference
describes the libraries and application program interfaces (APIs) available (Internet domain sockets, TLI, XTI, ONC, RPC, and XDR), for developing applications that use the services of network-oriented communication protocols (TCP/IP, IPX/SPX, and NetBIOS). It also describes how to use UNIX domain sockets for interprocess communication, and an SMUX API to create SMUX peers for SNMP agents. The (NC), (NET), (NS), (SAPD), (SLIB), and (SSC) reference manual pages are included in this book.

OSF/Motif Programmer's Reference
consists of the OSF/Motif toolkit, window manager, and user interface language commands and functions: (Xm) reference manual pages.

Programmer's Reference Manual
a two-volume set of reference manual pages for the Development System, including sections (CDMT), (CP), (FP), and (S).

Programming Tools Guide
provides useful information about programming tools and their use in developing software, including implementation-specific details about the ANSI-conforming C compiler provided with the Development System. It also contains information about debugging tools and their use in tracking down and eliminating problems in C and assembly language programs, and information on using dbXtraTM to debug C and C++ programs in an OSF/MotifTM based windowing environment.

Release and Installation Notes
highlights new features, product changes, documentation changes, and known limitations for this release of the Development System. It also contains the installation notes.

X Window System Programmer's Reference
provides X Window SystemTM programming commands and functions: X Library (XS), X Toolkit (Xt), X Miscellaneous Utilities (Xmu), and X Extensions (Xext) reference manual pages for programmers.

In addition, the following book is available on request:

Device Driver Writer's Guide
provides guide and reference information about writing device drivers for SCO systems. This book is available separately.

Commercial books and articles

A number of fine books and articles are published commercially that discuss how to develop software on the UNIX operating system. The Developer's Topics includes a large ``Bibliography'' that will interest users of the Development System.

In particular, we recommend that developers have the following standard textbooks on their shelves:

Brian Kernighan and Dennis Ritchie, The C Programming Language, 2nd Edition.

One of the following general books about programming on UNIX operating systems:

Donald Lewine, POSIX Programmer's Guide.

Marc Rochkind, Advanced UNIX Programming.

W. Richard Stevens, Advanced Programming in the UNIX Environment.

W. Richard Stevens, UNIX Network Programming. Useful for programmers who are writing distributed applications.

Maurice Bach, Design of the UNIX Operating System. Useful for programmers who want to thoroughly understand UNIX system internals.

See the ``Bibliography'' in Developer's Topics for full citations if you are not familiar with the books listed above.

Reference manual sections

Reference material is distributed as individual reference sections in the various volumes of the Operating and Development Systems. The following table lists the section name, description, and location of each reference section.

 -----------------------------------------------------------------------------------
 Section   Description                    Volume
 -----------------------------------------------------------------------------------
 ADM       administrative commands        Operating System Administrator's Reference 
 ADMN      TCP/IP network                 Networking Reference 
           administration commands
 ADMP      TCP/IP network protocols       Networking Reference 
 C         commands                       Operating System User's Reference 
 C++       C++ library routines           C++ Library Manual 
 CDMT      Custom Distribution            Programmer's Reference Manual 
           Mastering Toolkit utilities
 CP        programming commands           Programmer's Reference Manual 
 F         file formats                   Operating System Administrator's Reference 
 FP        programming file formats       Programmer's Reference Manual 
 HW        hardware devices               Operating System Administrator's Reference 
 K         kernel functions (general)     Kernel/Driver Interface 
 LMC       LAN Manger Client commands     Guide to Gateways for LAN Servers 
 M         miscellaneous                  Operating System User's Reference 
 NADM      NFS network administration     Networking Reference 
           commands
 NC        NFS network user commands      Networking Reference 
 NET       transport interfaces           Network Programmer's Guide and Reference  
           (TLI/XTI)
 NF        NFS file formats               Networking Reference 
 NS        network system calls           Network Programmer's Guide and Reference 
 NWG       Gateway for NetWare commands   Guide to Gateways for LAN Servers 
 PADM      IPX/SPX commands               Networking Reference 
 PCI       PC-Interface commands          PC-Interface Guide 
 S         system calls and library       Programmer's Reference Manual 
           routines
 SAPD      Service Advertising Protocol   Network Programmer's Guide and Reference 
           functions
 SFF       TCP/IP file formats            Networking Reference 
 SLIB      socket library routines        Network Programmer's Guide and Reference 
 SSC       socket system calls            Network Programmer's Guide and Reference 
 TC        TCP/IP user commands           Networking Reference 
 TCL       Tcl commands                   Operating System User's Reference 
 X         X server commands              Graphical Environment Reference 
 XC        X client commands              Graphical Environment Reference 
 XS        X library routines             X Window System Programmer's Reference 
 Xext      X Extensions library           X Window System Programmer's Reference 
 Xm        OSF/Motif commands and         OSF/Motif Programmer's Reference 
           functions
 Xmu       X miscellaneous utilities      X Window System Programmer's Reference 
 Xt        X Toolkit Intrinsics library   X Window System Programmer's Reference 

How can we improve this book?

What did you find particularly helpful in this book? Are there mistakes in this book? Could it be organized more usefully? Did we leave out information you need or include unnecessary material? If so, please tell us.

To help us implement your suggestions, include relevant details, such as book title, section name, page number, and system component. We would appreciate information on how to contact you in case we need additional explanation.

To contact us, use the card at the back of the SCO OpenServer Handbook or write to us at:

Technical Publications
Attn: CFT
The Santa Cruz Operation, Inc.
PO Box 1900
Santa Cruz, California 95061-9969
USA

or e-mail us at:

techpubs@sco.com or ... uunet!sco!techpubs

Thank you.