{
{      The purpose of this request is to offer a switch of ownership of a
{ connection end point to another job on the local system. Switching
{ ownership of a connection end point is a local system operation. The
{ peer application at the remote connection end point does not receive
{ an indication of this action.
{
{      Switching ownership of a connection end point is a cooperative
{ process which requires the active participation of both the source
{ job (current owner) and the destination job (proposed owner).
{ The source job uses this request to make an offer to switch a
{ connection end point to a destination job. The destination job must
{ accept this switch offer to complete the connection end point switch.
{
{      The source job determines the duration of the offer to switch a
{ connection end point.  If the destination job does not accept the switch
{ offer within a reasonable amount of time, the source job may cancel the
{ switch offer.
{
{      While the switch offer is in effect, the only valid requests for
{ the specified connection file are rfp$terminate_connection and
{ rfp$cancel_switch offer. Once the destination job accepts the
{ switch offer, the connection file may be terminated without
{ affecting the switched connection.  This is the only request which may
{ be made for the connection file after the switch offer has been accepted.
{
{      An offer to switch a connection end point may not be made if there
{ are any active instances of open for the connection file.
{
{      Connection end point switching causes the source application's
{ connection count to be decremented by one and the destination application's
{ connection count to be incremented by one.
{
{         note - passing a connection from a server application to a
{                partner application does not decrease the number of
{                server connections in the server definition table.
{                (i.e. the current number of server connections = the
{                number of server connections + the number of server
{                partner job connections).  This prevents the maximum
{                connection count, which is specified when the server is
{                defined, from being exceeded.
{
{      The file attributes that are on the connection file are passed
{ to the DESTINATION_JOB along with the connection.  The access method
{ uses those attributes as the initial file attributes for the
{ connection_file specified by the DESTINATION_JOB on the
{ RFP$ACCEPT_SWITCH_OFFER request.
{
{ RFP$OFFER_CONNECTION_SWITCH(CONNECTION_FILE, DESTINATION_JOB,
{   WAIT_TIME, STATUS)
{
{ CONNECTION_FILE: (input) This parameter specifies name of the connection
{   file, whose corresponding connection is to be switched to the
{   DESTINATION_JOB.  The connection state of the connection file goes
{   to 'rfc$switch_accepted' when the switch offer is accepted.
{
{ DESTINATION_JOB: (input) This parameter specifies the system supplied
{   job name of the job, to whom the connection is to be offered.
{
{ WAIT_TIME: (input) This parameter specifies the number of milliseconds
{   that the request is to wait for the destination job to accept the
{   switch offer. A value of 0 indicates that the calling task is to
{   continue execution while the switch offer is in effect. If the
{   WAIT_TIME expires before the switch offer is accepted, the request
{   is terminated with a status of 'rfe$switch_offer_not_accepted'.
{
{   Failure of the destination job to accept the switch offer within
{   this waiting period has no effect on the switch offer.  The source
{   job must explicitly cancel the switch offer if the destination job
{   has not accepted the offer within a reasonable amount of time.
{
{   The osp$await_activity_complete request may also be used to wait for
{   the switch offer to be accepted.
{
{ STATUS: (output) This parameter returns the results of the request.
{   A status of normal means that the specified connection has been offered
{   to the specified job.
{   CONDITIONS:  rfe$connect_in_progress
{                rfe$connected
{                rfe$connection_not_active
{                rfe$connection_rejected
{                rfe$connection_terminated
{                rfe$file_not_closed
{                rfe$local_nad_failure
{                rfe$switch_accepted
{                rfe$switch_offer_not_accepted
{                rfe$switch_offered
{                rfe$system_interrupt
{                rfe$system_task_shutdown
{   IDENTIFIER:  'RF'
{
