OpenSS7
SS7 for the
Common Man
© Copyright 1997-2007 OpenSS7 Corporation All Rights Reserved.
Last modified: Sat, 01 Nov 2008 10:42:33 GMT
Home TopIndex FirstPrev Next LastMore Download Info FAQ Mail  Home -> Documentation -> Man Pages -> Manpage of T_RCVDIS
Quick Links

Download

SCTP

SIGTRAN

SS7

Hardware

STREAMS

Asterisk

Related

Package

Manual

FAQ

Man Pages

Applications

SS7 Stack

ISDN Stack

SIGTRAN Stack

VoIP Stack

MG Stack

SS7/ISDN Devices

IP Transport

Embedded Systems

OS

Documentation

FAQ

SIGTRAN

Design

Conformance

Performance

References

Man Pages

Manuals

Papers

Home

Overview

Status

Documentation

Resources

About

News

Manpage of T_RCVDIS

Description: Manual Page

Keywords: ss7 ss7/ip ss7 over ip ss7 mtp ss7 sccp ss7 tcap sigtran mtp sccp tcap openss7 acb56 linux telephony pstn linux telephony linux nebs linux compactpci


T_RCVDIS

Section: OpenSS7 XTI/TLI Networking Library Calls (3)
Updated: 2008-10-31
Index Return to Main Contents

NAME

t_rcvdis - receive abortive disconnect

SYNOPSIS

#include <xti.h>

int t_rcvdis(int fd, struct t_discon *dis);

ARGUMENTS

fd

the transport endpoint to disconnect.
dis
a pointer to a t_discon structure to contain returned disconnect information.

DESCRIPTION

t_rcvdis() receives a disconnect indication arriving on the specified local transport endpoint fd.

fd specifies the local transport endpoint upon which a disconnect indication is to be received.

dis a pointer to a t_discon structure that returns any user disconnect data and the reason and possible sequence number associated with the disconnect on fd. The t_discon strucuture is formatted as follows:

struct t_discon {
        struct netbuf udata;            /* user data */
        int reason;                     /* reason code */
        int sequence;                   /* sequence number */
};

The t_discon structure returns the following members and contains the following information:
udata
is a netbuf(3) structure that returns any disconnect user data. The dis->udata.maxlen is significant on call and the dis->udata.len is significant on return. If dis->udata.maxlen is zero on call, no disconnect data will be returned: any received disconnect data will be discarded. If dis->udata.len is zero on return, no disconnect data was available.
reason
indicates the reason for the disconnection. The values for the reason field are transport service provider specific.
sequence
indicates the sequence number, if any, of the connection indication which is now disconnected. This field is only significant if the disconnection indication is subsequent to an outstanding connection indication. Otherwise, this field is insignificant and set to zero (0) by the transport service provider.

Typically, t_rcvdis() is called after a receive data call fails with TLOOK and a call to t_look(3) returns T_DISCONNECT.

CAVEATS

t_rcvdis() is only valid in states T_DATAXFER, T_OUTCON, T_OUTREL, T_INREL, T_INCON with outstanding connection indications.

In synchronous mode, t_rcvdis() blocks until a disconnect indication is received. In asynchronous mode and a disconnect indication is not outstanding, t_rcvdis() returns -1 and sets t_errno(3) to TNODIS.

RETURN VALUE

Upon success, t_rcvdis() returns zero (0). Upon failure, t_rcvdis() returns -1 and sets t_errno(3) to an appropriate error number.

ERRORS

When t_rcvdis() fails, it returns -1 and sets t_errno(3) to an appropriate error number as follows:

[TBADF]
fd is invalid.
[TBUFOVFLW]
The dis->udata.maxlen field of the netbuf(3) structure passed to the call was non-zero, but insufficient to hold the available disconnect user data. See, netbuf(3) for more information.
[TNODIS]
An attempt was made to read a disconnect and no disconnect indication was available, and the stream is set for asynchronous mode (O_NONBLOCK or O_NDELAY to t_open(3) or fcntl(2).
[TNOTSUPPORT]
The call requires the use of a TLI primitive not supported by the underlying transport provider. Abortive disconnect is not supported by all transport service providers. If the transport provider service type is connectionless [RT_CLTS,] this error is returned.
[TOUTSTATE]
The call was issued with the interface in a state other than T_DATAXFER, T_OUTCON, T_OUTREL, T_INREL or T_INCON with outstanding connection indications.
[TPROTO]
A protocol error occured between the XTI/TLI library and the underlying transport provider.
[TSYSERR]
A Linux system error occured and the Linux error number is set in errno(3).

SEE ALSO

errno(3), fcntl(2), netbuf(3), t_errno(3), t_look(3), t_open(3).

BUGS

t_rcvdis() has no known bugs. t_rcvdis() has been tested for the described behavior using the test-xnet(8) and test-xnet_thr(8) conformance test suites.

COMPATIBILITY

The XTI/TLI library functions are compatible with SVR4.2[1], XNS 5.2[2], SUSv2[3]. Compatibility is tested using the test-xnet(8) and test-xnet_thr(8) test case executables and the OpenSS7 XTI/TLI Networking autotest test suite.

CONFORMANCE

XTI/TLI[4], TPI[5], XPG5, XNS 5.2[2], SUSv2[3]. Conformance is tested using the test-xnet(8) and test-xnet_thr(8) test case executables and the OpenSS7 XTI/TLI Networking autotest test suite.

HISTORY

t_rcvdis first appeared in SVR4.2[1].

VERSIONS

This manpage was written for the OpenSS7 XTI/TLI Library.

REFERENCES

[1]
SVR 4.2, UNIX® System V Release 4.2 Programmer's Manual, 1992, (Englewood Cliffs, New Jersey), AT&T UNIX System Laboratories, Inc., Prentice Hall.
[2]
XNS, Open Group CAE Specification: Technical Standard: Network Services (XNS), Issue 5.2, Draft 2, 1999, (Berkshire, UK), OpenGroup, Open Group Publication. [ISBN 1-85912-241-8] <http://www.opengroup.org/onlinepubs/>
[3]
SUS Version 2, Single UNIX Specification, OpenGroup, Open Group Publication. <http://www.opengroup.org/onlinepubs/>
[4]
XTI/TLI Revision 1.0, Open Group CAE Specification: XOpen Transport Interface, Revision 1, n.d., (Berkshire, UK), XPG, X Programmer's Group. <http://www.opengroup.org/onlinepubs/>
[5]
TPI Revision 2.0.0, Open Group CAE Specification: Transport Provider Interface (TPI) Specification, Revision 2.0.0, Draft 2, 1999, (Berkshire, UK), OpenGroup, Open Group Publication. <http://www.opengroup.org/onlinepubs/>

TRADEMARKS

OpenSS7tm
is a trademark of OpenSS7 Corporation.
Linux®
is a registered trademark of Linus Torvalds.
UNIX®
is a registered trademark of The Open Group.
Solaris®
is a registered trademark of Sun Microsystems.

Other trademarks are the property of their respective owners.

IDENTIFICATION


OpenSS7 XTI/TLI Networking: Package strxnet version 0.9.2.12 released 2008-10-31.

Copyright©1997-2008OpenSS7 Corp. All Rights Reserved.
(See roff source for permission notice.)



Index

NAME
SYNOPSIS
ARGUMENTS
DESCRIPTION
CAVEATS
RETURN VALUE
ERRORS
SEE ALSO
BUGS
COMPATIBILITY
CONFORMANCE
HISTORY
VERSIONS
REFERENCES
TRADEMARKS
IDENTIFICATION

This document was created by man2html, using the manual pages.
Time: 20:20:07 GMT, May 18, 2013
OpenSS7
SS7 for the
Common Man
Home TopIndex FirstPrev Next LastMore Download Info FAQ Mail  Home -> Documentation -> Man Pages -> Manpage of T_RCVDIS
Last modified: Sat, 01 Nov 2008 10:42:33 GMT
© Copyright 1997-2007 OpenSS7 Corporation All Rights Reserved.