Stress Test: flowctl

### TEST NAME

> flowctl - test serial I/O flow control

### SYNOPSIS

> `Iflowctl` `-b` baudrate `-d` devicename `-n`

> `Iflowctl` `-b` baudrate `-d` devicename `-s`

> `Oflowctl` `-b` baudrate `-d` devicename `-n`

> `Oflowctl` `-b` baudrate `-d` devicename `-s`

### DESCRIPTION

> `flowctl` sets the terminal parameter with the requested baud rate and flow control using the standard `ioctl`(2) system call. `flowctl` then transfers and receives the data for a duration (in seconds) specified by the `RUNTIME` environment variable.

> `Oflowctl` transmits data until `RUNTIME` seconds is reached or until an error occurs during transmission.

> `Iflowctl` receives data until one of the following events occurs:

> - The end flag is received.
> - EOF is received.
> - An error occurs during reception.

> `Iflowctl` verifies that flow control happened and the transmission is correct.

### OPTIONS

> `-b` baudrate
>   Baud rate. The baud rate must be one that is supported in the `termios_p` structure. Refer to the `termio`(7I) man page for the supported baud rate.
> `-d` devicename
>   Device for communication. Use a full path for devicename. Dialout device paths typically start with `/dev/cua/`.
> `-n`
>   No flow control.
> `-s`
>   Software flow control.

### DURATION

> About 8 hours

### POSSIBLE CONCURRENT TESTS

> No other concurrent tests are possible on the same port. That is, no other concurrent tests are possible on the port specified by devicename.

### EXAMPLES

> If:

> - Receiver device is `/dev/cua/a`
> - Transmitter device is `/dev/cua/b`
> - Receiver baud rate is 38400
> - Transmitter baud rate is 38400
> - Flow control is software

> Then, on the receiver side:

> > `# Iflowctl -s -d /dev/cua/a -b 38400`

> On the transmitter side:

> > `# Oflowctl -s -d /dev/cua/b -b 38400`

> Note: The receiver device and the transmitter device can be on the same machine or on different machines, but they must be physically connected.

### REFERENCES

> `termio`(7I)

Copyright 2005 Sun Microsystems, Inc. All rights reserved.