[an error occurred while processing this directive]

HP OpenVMS Systems Documentation

Content starts here D.6 PTD$SET_EVENT_NOTIFICATION — Enable or Disable Terminal Event Notification ASTs
HP OpenVMS I/O User’s Reference Manual: OpenVMS Version 8.4 > Appendix D Control Connection Routines

D.6 PTD$SET_EVENT_NOTIFICATION — Enable or Disable Terminal Event Notification ASTs

Enables or disables a number of repeating terminal event notification ASTs.

D.6.1 Format

PTD$SET_EVENT_NOTIFICATION chan, astadr [,astprm] [,acmode], type

D.6.2 Returns

OpenVMS usage:

longword (unsigned)

type:

write only

access:

by value

D.6.3 Arguments

chan

OpenVMS usage:

channel

type:

word (unsigned)

access:

read only

mechanism:

by value

Number of the I/O channel assigned to the pseudoterminal. This channel is only intended to be used for PTD$XXX operations.

astadr

OpenVMS usage:

ast_procedure

type:

procedure value

access:

call without stack unwinding

mechanism:

by reference

Address of the notification AST service routine, or zero if the AST is to be canceled.

astprm

OpenVMS usage:

user_arg

type:

longword (unsigned)

access:

read only

mechanism:

by value

AST parameter to be passed to the AST service routine specified by the astadr argument.

acmode

OpenVMS usage:

access_mode

type:

longword (unsigned)

access:

read only

mechanism:

by value

Access mode for which the AST is to be declared. The most privileged access mode is the access mode of the caller. The resulting mode is the access mode at which the AST is declared.

type

OpenVMS usage:

type_longword

type:

longword (unsigned)

access:

read only

mechanism:

by value

Value that indicates which notification AST to enable. The $PTDDEF macro defines the symbolic names listed in Table D-2.

Table D-2 Symbolic Names Defined by $PTDDEF Macro

Symbolic NameDescription

PTD$C_SEND_XON

Deliver notification AST when the pseudoterminal is ready to accept input. This AST is not delivered if the pseudoterminal is set to NO HOSTSYNC.

PTD$C_SEND_BELL

Deliver notification AST when the pseudoterminal wants to stop input and signal it with a bell character.

PTD$C_SEND_XOFF

Deliver notification AST when the pseudoterminal wants to stop input and signal it with a DC3 character.

PTD$C_STOP_OUTPUT

Deliver notification AST when the pseudoterminal is stopping output.

PTD$C_RESUME_OUTPUT

Deliver notification AST when the pseudoterminal is resuming output.

PTD$C_CHAR_CHANGED

Deliver notification AST when the pseudoterminal has changed some device characteristic.

PTD$C_ABORT_OUTPUT

Deliver notification AST when the pseudoterminal wants to abort output.

PTD$C_START_READ

Deliver notification AST when the pseudoterminal is starting an application's read request. This AST is delivered only if read event notification has been enabled.

PTD$C_MIDDLE_READ

Deliver notification AST when the pseudoterminal has finished sending an application's read request prompt string. This AST is delivered only if read event notification has been enabled.

PTD$C_END_READ

Deliver notification AST when the pseudoterminal has finished an application's read request. This AST is delivered only if read event notification has been enabled.

PTD$C_ENABLE_READ

Enable terminal read event AST delivery. If this code is used, you cannot supply the astadr argument.

PTD$C_DISABLE_READ

Disable terminal read event AST delivery. If this code is used, you cannot supply the astadr argument.

 

D.6.4 Description

PTD$SET_EVENT_NOTIFICATION enables or disables the repeating terminal event notification ASTs listed in Table D-2. After an event notification AST is enabled, it remains in effect until it is disabled or until the device is deleted.

D.6.5 Return Values

SS$_NORMAL

Normal successful completion.
SS$_ACCVIOUnable to read an argument, or invalid I/O buffer address.
SS$_BADPARAMAn astadr, astprm, or acmode argument was not zero when enabling or disabling r3ad notification.
SS$_DEVOFFLINEDevice is off line and request cannot proceed.

SS$_EXASTLM

Insufficient AST quota for notification AST.

SS$_INFMEM

Insufficient memory.

SS$_IVCHAN

Illegal channel.
SS$_NOPRIVInsufficient privilege to perform request.