Avaya Logo

Previous Topic

Next Topic

Book Contents

Book Index

SubProging applications on channels

A process subprog's another process on a channel via an irSubProg(3IRAPI) function. Channels may be irSubProg'ed to permanent or transient processes. Permanent processes are typically multi-channel applications run from inittab. Transient processes are exec(2) 'ed by the irSubProg function and typically exit(2) when the call, or their portion of it, completes.

Ownership of the channel is relinquished by the current owner with an irSubProg(3IRAPI). Once an irSubProg function is called, the calling process must stop using the channel_id. Channel ownership is made available immediately to the irSubProg'ed application. After receiving the IRE_EXEC event, the channel should be initialized immediately via irInit(3IRAPI). Once the called process gives up control of the channel with irReturn(3IRAPI), then channel ownership reverts back to the parent process. The parent process may use the channel_id again.

As with irExec, parameters may be used to allow the child process to run in a context similar to the parent process. The discussion in the previous section on the IRP_EXEC_BUF and IRP_REGISTER parameters applies to irSubProg and irExec.

© 2006 Avaya Inc. All Rights Reserved.