Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ X25AcceptCall(3X25) — DECnet WAN Support 3.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

X25Encode(3X25)

X25Listen(3X25)

X25AcceptCall(3X25)  —  Subroutines

Digital

NAME

X25AcceptCall − Accepts an incoming X.25 call

LIBRARY

X.25 Library (libx25.a)

SYNOPSIS

#include <netx25/x25.h>
int X25AcceptCall(

int pd ,
int manualMode ,
unsigned char ∗ epl ,
int eplLength );

 

PARAMETERS

pdIdentifies the port on which the incoming call was received. 

manualMode
Specifies the data-transfer mode in which the port is to operate.  A value of 1 sets the port to Manual Mode.  A value of 0 sets the port to Automatic Mode.

eplPoints to an Encoded Parameter List containing the X.25 facilities to request when accepting the call. 

eplLengthSpecifies the length of the Encoded Parameter List epl. 
 

DESCRIPTION

 
 
The X25AcceptCall routine accepts an incoming X.25 call.  The call parameters requested by the caller are returned by the X25Listen routine.  The call can be accepted with no changes to the requested parameters by returning an encoded parameter list containing only the name of a template with no characteristic attributes set.  Encoded parameter lists are generated using the X25Encode routine and are described in the X.25 for Digital UNIX − Programmer’s Reference Manual. 

If facility negotiation is required, the encoded parameter list passed in epl specifies the conditions under which the incoming call will be accepted.  The encoded parameter list can optionally include an X25I_TEMPLATE item.  This identifies the X25 Access Template entity which defines default facility values with respect to which the call is being accepted.  When omitted, the values of the Default template are used.  Only a subset of the template characteristics are valid; these are defined by the accept facilities listed below. 

The manualMode parameter controls the data transfer mode of the connection.  To operate in Manual Mode, where the user controls the more data and qualified data bits and the packetization of the data packets, the manualMode parameter must be set to a non-zero value.  To operate in Automatic Mode, where all packet fragmentation and re-assembly are handled by the system, the manualMode parameter must be set to zero. 

The encoded parameter list can optionally contain accept parameter values that override those specified in the template.  The valid accept parameters are network dependent, but may include the following:

Item Code Description
X25I_CALLEDEXTISO Called Address Extension
X25I_CALLEDEXTNONISO Called Address Extension
X25I_CHARGEINFO Charging Information - requesting service
X25I_ETEDELAY End-to-End Transit Delay Negotiation
X25I_EXPEDITE Expedited Data Negotiation
X25I_NOEXPEDITE Expedited Data Negotiation
X25I_NETUSERID Network User Identification (NUI)
X25I_NONX25FACILITIES Non-X.25 facilities provided by the local or remote network (only in the case of an internetwork virtual call)
X25I_PKTSIZEIN Flow Control - Packet Size
X25I_PKTSIZEOUT Flow Control - Packet Size
X25I_PRIORITY Quality of Service - Priority
X25I_PROTECTION Quality of Service - Protection
X25I_TEMPLATE Template Entity Name
X25I_THRUCLSIN Throughput Class Negotiation
X25I_THRUCLSOUT Throughput Class Negotiation
X25I_USERDATA User Data
X25I_WINSIZEIN Flow Control - Window Size
X25I_WINSIZEOUT Flow Control - Window Size

 

RETURN VALUES

Upon successful completion, the X25AcceptCall routine returns a value of 0.  Otherwise, a (negative) error code is returned. 
 

ERRORS

 
 
If the X25AcceptCall routine fails, one of the following error codes is returned:

[X25RC_BADPD]
Invalid port descriptor specified

[X25RC_CALLABORT]
An X.25 call arrived at the Digital UNIX host, but was cleared by the network or the remote DTE before the call was accepted with the X25AcceptCall routine.  You may need to increase the Call Timer at the remote DTE if the transit delay through the network is greater than or comparable to the current setting of the timer. 

[X25RC_CALLPARAM]
One of the call parameters specified in the EPL or the template is not valid.  Either the EPL contains an item that is not a valid call parameter, or one of the X.25 facilities requested was rejected by the network.

[X25RC_INVALFAC]
The X.25 facilities specified in the EPL and/or the template are too long for the network to which the DTE is connected.

[X25RC_INVALSTATE]
The port is not in a valid state to perform the requested operation.  Either there is a connection already established on the specified port, or there is no call waiting on the specified port.

[X25RC_LINKDOWN]
The X.25 call was aborted due to a LAPB or LLC2 link failure.  Before attempting another call, ensure that the Link Service Provider of the DTE used to make the call is enabled and running.

[X25RC_NETABORT]
The X.25 call was aborted due to a network-initiated restart of the DTE on which the call was established.  Wait for the X25 Protocol DTE entity to return to the running state before making the call again.

[X25RC_NETMANCLR]
The call has been cleared by a network management command.

[X25RC_NOMEM]
There were insufficient system resources to perform the requested operation.  The call was not accepted.

[X25RC_PORTABORT]
The X.25 call was aborted due to a failure in a module below X25 Access.  Before attempting another call, ensure that the X25 Protocol DTE entity and its Link Service Provider are enabled and in the running state.

[X25RC_PROTOCOL]
The X.25 call was aborted due to an invalid packet received from the network.  To further isolate this problem, use CTF to determine the packet in error.

[X25RC_SERVICEDOWN]
The X.25 service is not available because an entity is not in the correct state.  Either the X25 Access entity is disabled, or the X25 Protocol entity does not exist.

[X25RC_SYSERR]
An operating system error occurred.  The external variable errno is set to indicate the error. 

[X25RC_TEMPLATE]
The specified template does not exist.
 

RELATED INFORMATION

Functions: X25Encode(3X25), X25Listen(3X25). 

CTF for Digital UNIX − CTF User’s Guide,
X.25 for Digital UNIX − Programmer’s Reference Manual. 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026