tokselect Token-Ring Device Handler Entry Point

Purpose

Note: This function is supported in AIX® 5.1 and earlier only.

Determines whether a specified event has occurred on the token-ring device.

Syntax

#include <sys/device.h>
#include <sys/comio.h>
#include <sys/tokuser.h>

int tokselect ( devno,  events,  reventp,  chan)
dev_t devno;
ushort events;
ushort *reventp;
int chan;

Parameters

Item Description
devno Specifies major and minor device numbers.
events Specifies the conditions to check, denoted by the bitwise OR of one or more of the following:
POLLIN
Check whether receive data is available.
POLLOUT
Check whether transmit available.
POLLPRI
Check whether status is available.
POLLSYNC
Check whether asynchronous notification is available.
reventp Points to the result of condition checks. A bitwise OR one of the following conditions is returned:
POLLIN
Indicates available receive data.
POLLOUT
Indicates available transmit.
POLLPRI
Indicates available status.
chan Specifies the channel number assigned by the tokmpx entry point.

Description

Note: Only user-mode callers should call this entry point.

The tokselect entry point is called when the select or poll subroutine is used to determine if a specified event has occurred on the token-ring device.

When the token-ring device handler is in a state in which the event can never be satisfied (for example, an adapter failure), then the tokselect entry point sets the returned events flags to 1 for the event that cannot be satisfied. This prevents the select or poll subroutines from waiting indefinitely.

The tokselect entry point functions with a Token-Ring High Performance Network Adapter that has been correctly configured for use on a qualified network. Consult adapter specifications for more information on configuring the adapter and network qualifications.

Execution Environment

The tokselect entry point can only be called from the process environment.

Return Values

Item Description
ENXIO Indicates the specified minor number is not valid.
EACCES Indicates a call from a kernel process is not valid.