Transferring Data

Xon

lgo_Xon()

Request resumption of data transmission by a remote system.

Syntax
#include "laygo.h"

LResult lgo_Xon
    (
        LCid    cid
    );
cidconnection on which to cancel flow control
Description

lgo_Xon() enables resumption of data transmission by a remote system, canceling a previous xoff request. If a call to lgo_Xon() is not preceded by a call to lgo_Xoff(), the effect, if any, is defined by the protocol. For instance, The X.21 bis protocol uses a physical signal for flow control. So multiple xon requests have no effect. However, an HDLC LAPB implementation may chose to send a RRframe each time lgo_Xon() is called.

The API exercises no control over the application's use of lgo_Xoff() and lgo_Xon() other to insure that the connection is in a data transfer state when they are called. The application is responsible for maintaining the state of its own flow control requests to the remote system. However, when an xoff event is received from the remote system, calls to lgo_Write() by the application will fail until an xon event is received.

Return Values

If successful, lgo_Xon() returns a non-negative value. Otherwise, it returns a negative value indicating the reason it failed. Possible unsuccessful return values are:

See Also

lgo_Xoff()

Example
if (ableToProcess)
{
    lgo_Xon(cid);
}