TCPware V5.9 Programmer's Guide Table of Contents
Introducing This Guide
What You Need to Know Beforehand
How This Guide Is Organized
Online Help
Obtaining Customer Support
License Information
Maintenance Services
Reader's Comments Page
Documentation Set
Conventions Used
Introduction
TCP/IP Programming Concepts
Connection-Oriented Services and TCP
Connectionless Services and UDP
Socket Concepts
Naming Communication Endpoints
Data Representation and Exchange
Data Encoding Schemes
Native Byte Order and Network Byte Order
Programming Services Options
Device Drivers
VAX C and DEC C Socket Library and UCX Compatibility Services
TCPware Socket Library
System Queue Input/Output (QIO) Calls
FTP Library Routines
TELNET Library Routines
ONC RPC Services
Network Programming with Sockets
Using Socket Calls in Network Programming
Socket System Calls
BSD Socket Data Structures
Multicasting
Sending IP Multicast Datagrams
Receiving IP Multicast Datagrams
Writing Application Programs
Writing a Stream Client
Writing a Stream Server
Writing a Datagram Client
Writing a Datagram Server
Writing Servers
Introduction
Multicasting
Logicals
Sample Programs
Introduction
Sequence of Operations
Other Operations
TCPDRIVER System Service Call Format
TCPDRIVER System Service Call Arguments
TCPDRIVER System Service Call Function Codes
Sample Programs
C Programs
FORTRAN Program
Introduction
Sequence of Operations
Other Operations
User Datagram Protocol Implementation Notes
UDPDRIVER System Service Call Format
UDPDRIVER System Service Call Arguments
UDPDRIVER System Service Call Function Codes
Status
Sample Programs
C Programs
FORTRAN Program
Introduction
Sequence of Operations
Other Operations
Internet Protocol Implementation Notes
IPDRIVER System Service Call Format
IPDRIVER System Service Call Arguments
IPDRIVER User Interface System Service Call Function Codes
Reading Extended Characteristics
Reading Network Device Information
Reading the Routing Table
Reading the ARP Table Function
IPDRIVER External Interface
I/O Functions for the External Interface
Sequence of Operations for the Network Interface Program
IPDRIVER External Interface System Service Call Codes
Introduction
Sequence of Operations
Client Operations
Server Operations
Multicasting
Other Operations
INETDRIVER Socket Library
INETDRIVER System Service Call Format
INETDRIVER System Service Call Arguments
INETDRIVER System Service Call Function Codes
Sample Programs
Introduction
Building an FTP Client
Connection Control Block
Transferring Files
Error Status Codes
Library Routines
Introduction
Transitioning to the C Socket Library: Include (Header) Files
Transitioning to the C Socket Library: Linking Applications
Sample Programs
Introduction
Connection Control Block
Library Routines Reference
User Command Processing
Introduction
Requirements
Linking the Extension Agent Image
Installing the Extension Agent Image
Sample Code and Data Structures
Debugging Code
Subroutine Reference
Introduction
Supported Languages
How to Use Functions
Header Files
Activating Program Shareable Image
Function Reference
Introduction
What Are ONC RPC Services?
TCPware Implementation
Distributed Applications
Components of ONC RPC Services
Run-Time Libraries (RTLs)
RPCGEN Compiler
Port Mapper
RPCINFO Command
Client-Server Relationship
External Data Representation (XDR)
ONC RPC Processing Flow
Local Calls Versus Remote Calls
Handling System Crashes
Handling Errors
Call Semantics
Programming Interface
High-Level Routines
Mid-Level Routines
Low-Level Routines
Transport Protocols
XID Cache
Cache Entries
Cache Size
Execution Guarantees
Enabling XID Cache
Active Cache
Broadcast RPC
ONC RPC Batch Facilities
Batch Requirements
Identifying Remote Programs and Procedures
Remote Program Numbers
Remote Version Numbers
Remote Procedure Numbers
Additional Terms
Introduction
Distributed Application Components
What You Need to Do
Step 1: Design the Application
Step 2: Write and Compile the Interface Definition
Step 3: Write the Necessary Code
Building a Structure
Step 4: Compile All Files
Step 5: Link the Object Code
Step 6: Start the Port Mapper
Step 7: Execute the Client and Server Programs
Using Asynchronous Transports
Writing an Asynchronous Server
Before You Begin
Writing the Code
How Asynchronous Transports Affect Memory
Asynchronous System Traps
RPCINFO Utility
Requesting a Program Listing
Calling a NULL Routine
Introduction
What Is RPCGEN?
Software Requirements
Input Files
Output Files
Preprocessor Directives
Invoking RPCGEN
Creating All Output Files at Once
Creating Specific Output Files
Examples:
Creating Server Stubs for TCP or UDP Transports
Error Handling
Restrictions
Introduction
Management Routines
Routine Name Conventions
Header Files
Boolean Values
TCPware/Sun Implementation Differences
Management Routines
Introduction
Common Arguments
Client Routines
Introduction
Port Mapper Routines
Port Mapper Arguments
Routine Descriptions
Introduction
Server Routines
Routine Descriptions
Introduction
XDR Routines
What XDR Routines Do
When to Call XDR Routines
Quick Reference
Routine Descriptions
Diagnostics
Introduction
Introducing Sample Programs
Running Sample Programs
Running GETSYI Client
Running PRINT Client
Running SYSINFO Client
Miscellaneous Clients and Servers
Batch RPC Sample Programs
Broadcast RPC Sample Programs
Introduction
Include (Header) Files
Linking Applications
Sample Programs
Subroutine Categories
Socket Operations
Lookup Operations
Byte Order Conversion Operations
Byte String Operations
Internet Address Conversion Subroutines
Server Operation
Subroutine Data Structures
WIN/TCP Socket Library Support
Using WIN/TCP Applications Under TCPware
Recompiling and Linking WIN/TCP Applications
Socket Library Reference
Sample Discard Protocol Programs