VMS Help  —  System Services, $END BRANCH
    Removes a branch from a transaction and returns the outcome of
    the transaction.

    Format

      SYS$END_BRANCH  [efn] ,[flags] ,iosb ,[astadr] ,[astprm] ,tid

                      ,bid

    C Prototype

      int sys$end_branch  (unsigned int efn, unsigned int

                          flags, struct _iosb *iosb, void

                          (*astadr)(__unknown_params), int astprm,

                          unsigned int tid [4], unsigned int bid

                          [4]);

1  –  Arguments

 efn

    OpenVMS usage:ef_number
    type:         longword (unsigned)
    access:       read only
    mechanism:    by value
    Number of the event flag set when the service completes. If this
    argument is omitted, event flag 0 is used.

 flags

    OpenVMS usage:mask_longword
    type:         longword (unsigned)
    access:       read only
    mechanism:    by value
    Flags specifying options for the service. The flags argument is
    a longword bit mask in which each bit corresponds to an option
    flag. The $DDTMDEF macro defines symbolic names for these option
    flags, described in $END_BRANCH Option Flags. All undefined bits
    must be 0. If this argument is omitted, no flags are used.

    Table SYS-14 $END_BRANCH Option Flags

    Flag Name      Description

    DDTM$M_SYNC    Specifies successful synchronous completion by
                   returning SS$_SYNCH. When SS$_SYNCH is returned,
                   the AST routine is not called, the event flag is
                   not set, and the I/O status block is not filled
                   in.
    DDTM$M_        Indicates that the service should return to the
    NOWAIT         caller without waiting for final cleanup. Note
                   that $END_BRANCHW with the DDTM$M_NOWAIT flag
                   set is not equivalent to $END_BRANCH. The latter
                   returns when the operation has been queued. The
                   former does not return until the operation has
                   been initiated. The full range of status values
                   may be returned from a nowait call.

 iosb

    OpenVMS usage:io_status_block
    type:         quadword (unsigned)
    access:       write only
    mechanism:    by reference
    The I/O status block in which the following information is
    returned:

    o  The completion status of the service. This is returned as a
       condition value. See the Condition Values Returned section for
       more information.

    o  The outcome of the transaction. If the service completes
       successfully, the outcome of the transaction is commit. If
       it returns SS$_ABORT, the outcome of the transaction is abort.

    o  An abort reason code that gives one reason why the transaction
       aborted, if the completion status of the service is SS$_ABORT.
       The $DDTMMSGDEF macro defines symbolic names for these abort
       reason codes. See $ACK_EVENT for a list of the codes that are
       currently defined.

    Refer to the HP OpenVMS System Services Reference Manual to view
    the I/O status block diagram.

 astadr

    OpenVMS usage:ast_procedure
    type:         procedure entry mask
    access:       call without stack unwinding
    mechanism:    by reference
    The AST routine executed when the service completes, if SS$_
    NORMAL is returned in R0. The astadr argument is the address
    of the entry mask of this routine. The routine is executed in
    the same access mode as that of the caller of the $END_BRANCH
    service.

 astprm

    OpenVMS usage:user_arg
    type:         longword (unsigned)
    access:       read only
    mechanism:    by value
    The AST parameter passed to the AST routine specified by the
    astadr argument.

 tid

    OpenVMS usage:trans_id
    type:         octaword (unsigned)
    access:       read only
    mechanism:    by reference
    The identifier (TID) of the transaction from which the branch is
    to be removed.

 bid

    OpenVMS usage:branch_id
    type:         octaword (unsigned)
    access:       read only
    mechanism:    by reference
    The identifier (BID) of the branch to be removed from the
    transaction.
Close Help