PROTO_ACTION                    MAIL alternate protcol action table      30-AUG-1989 14:11:58  VAX MACRO V5.0-8            Page   1
V01.01                                                                   16-AUG-1989 14:15:48  PROTO_ACTION.MAR;1                (1)

                                     0000     1 .title	PROTO_ACTION	MAIL alternate protcol action table
                                     0000     2 ; +
                                     0000     3 ; PROTO_ACTION	Generate a table of action routines for LNK_C_xxx operations
                                     0000     4 ;
                                     0000     5 ; Author:	Nick de Smith
                                     0000     6 ; Date  :	27-Oct-87
                                     0000     7 ; Description:
                                     0000     8 ; This routine is used to generate a dispatch table for the required routines
                                     0000     9 ; for an alternate protocol for VMSMAIL. The table is read by MAIL$PROTOCOL in
                                     0000    10 ; module PROTO.C.
                                     0000    11 ;
                                     0000    12 ; Edit	Edit date	By	Why
                                     0000    13 ;  02	16-Aug-89	NMdS	Update for VMS V5.1 (protocol version 2.1, MAIL-11 V3.1)
                                     0000    14 ;  01	05-May-87	NMdS	First attempt
                                     0000    15 ;--
                                     0000    16 	.Ident	/V01.01/
                                     0000    17 ;
                                     0000    18 ; We use .WEAK so that undefined routines have a 0 entry in the table.
                                     0000    19 ; The dispatch code in MAIL$PROTOCOL handles this.
                                     0000    20 ;
                                     0000    21 .weak	PROTO_OUT_CONNECT, PROTO_OUT_SENDER, PROTO_OUT_CKUSER, PROTO_OUT_TO,-
                                     0000    22 	PROTO_OUT_SUBJ, PROTO_OUT_FILE, PROTO_OUT_CKSEND, PROTO_OUT_DEACCESS,-
                                     0000    23 	PROTO_IN_CONNECT, PROTO_IN_SENDER, PROTO_IN_CKUSER, PROTO_IN_TO,-
                                     0000    24 	PROTO_IN_SUBJ, PROTO_IN_FILE, PROTO_IO_READ, PROTO_IO_WRITE,-
                                     0000    25 	PROTO_IN_CC, PROTO_OUT_CC, PROTO_IN_ATTRIBS, PROTO_OUT_ATTRIBS
                                     0000    26 ;+
                                     0000    27 ; Dispatch table for alternate protocol action routines.
                                     0000    28 ;
                                     0000    29 ; ***  The order of routines in this table is critical.  ***
                                     0000    30 ; *** It is the same as the sequence of LNK_C_xxx values ***
                                     0000    31 ; *** from LNKDEF in module MAILDEF. Do not ever add to  ***
                                     0000    32 ; *** the middle or start of this list.                  ***
                                     0000    33 ;-
                                 00000000    34 	.psect	$code	rd, nowrt, exe, shr, pic, long
                                     0000    35 mai$r_action::						; Accessed by MAIL$PROTOCOL
                           00000000' 0000    36 	.address	PROTO_OUT_CONNECT		;
                           00000000' 0004    37 	.address	PROTO_OUT_SENDER
                           00000000' 0008    38 	.address	PROTO_OUT_CKUSER
                           00000000' 000C    39 	.address	PROTO_OUT_TO
                           00000000' 0010    40 	.address	PROTO_OUT_SUBJ
                           00000000' 0014    41 	.address	PROTO_OUT_FILE
                           00000000' 0018    42 	.address	PROTO_OUT_CKSEND
                           00000000' 001C    43 	.address	PROTO_OUT_DEACCESS
                           00000000' 0020    44 	.address	PROTO_IN_CONNECT
                           00000000' 0024    45 	.address	PROTO_IN_SENDER
                           00000000' 0028    46 	.address	PROTO_IN_CKUSER
                           00000000' 002C    47 	.address	PROTO_IN_TO
                           00000000' 0030    48 	.address	PROTO_IN_SUBJ
                           00000000' 0034    49 	.address	PROTO_IN_FILE
                           00000000' 0038    50 	.address	PROTO_IO_READ
                           00000000' 003C    51 	.address	PROTO_IO_WRITE
                           00000000' 0040    52 	.address	PROTO_IN_CC
                           00000000' 0044    53 	.address	PROTO_OUT_CC
                           00000000' 0048    54 	.address	PROTO_IN_ATTRIBS
                           00000000' 004C    55 	.address	PROTO_OUT_ATTRIBS
                           00000013  0050    56 mai$c_max_operation == <. - mai$r_action - 1>/4		; Maximim allowed operation number
                                     0050    57 	.end
PROTO_ACTION                    MAIL alternate protcol action table      30-AUG-1989 14:11:58  VAX MACRO V5.0-8            Page   2
Symbol table                                                             16-AUG-1989 14:15:48  PROTO_ACTION.MAR;1                (1)

MAI$C_MAX_OPERATION            = 00000013  G D            
MAI$R_ACTION                     00000000 RG D  01        
PROTO_IN_ATTRIBS                 ********W GX   00        
PROTO_IN_CC                      ********W GX   00        
PROTO_IN_CKUSER                  ********W GX   00        
PROTO_IN_CONNECT                 ********W GX   00        
PROTO_IN_FILE                    ********W GX   00        
PROTO_IN_SENDER                  ********W GX   00        
PROTO_IN_SUBJ                    ********W GX   00        
PROTO_IN_TO                      ********W GX   00        
PROTO_IO_READ                    ********W GX   00        
PROTO_IO_WRITE                   ********W GX   00        
PROTO_OUT_ATTRIBS                ********W GX   00        
PROTO_OUT_CC                     ********W GX   00        
PROTO_OUT_CKSEND                 ********W GX   00        
PROTO_OUT_CKUSER                 ********W GX   00        
PROTO_OUT_CONNECT                ********W GX   00        
PROTO_OUT_DEACCESS               ********W GX   00        
PROTO_OUT_FILE                   ********W GX   00        
PROTO_OUT_SENDER                 ********W GX   00        
PROTO_OUT_SUBJ                   ********W GX   00        
PROTO_OUT_TO                     ********W GX   00        

                                                +----------------+
                                                ! Psect synopsis !
                                                +----------------+

PSECT name                      Allocation          PSECT No.  Attributes     
----------                      ----------          ---------  ----------     
.  ABS  .                       00000000  (    0.)  00 (  0.)  NOPIC   USR   CON   ABS   LCL NOSHR NOEXE NORD  NOWRT NOVEC BYTE  
$CODE                           00000050  (   80.)  01 (  1.)    PIC   USR   CON   REL   LCL   SHR   EXE   RD  NOWRT NOVEC LONG  

                                             +------------------------+
                                             ! Performance indicators !
                                             +------------------------+

Phase                    Page faults    CPU Time       Elapsed Time   
-----                    -----------    --------       ------------   
Initialization                   33     00:00:00.13    00:00:00.47
Command processing              885     00:00:00.97    00:00:01.82
Pass 1                          111     00:00:00.37    00:00:02.76
Symbol table sort                 0     00:00:00.02    00:00:00.03
Pass 2                           31     00:00:00.18    00:00:00.40
Symbol table output               1     00:00:00.03    00:00:00.03
Psect synopsis output             2     00:00:00.02    00:00:00.02
Cross-reference output            0     00:00:00.00    00:00:00.00
Assembler run totals           1070     00:00:01.74    00:00:05.59

The working set limit was 1200 pages.
606 bytes (2 pages) of virtual memory were used to buffer the intermediate code.
There were 10 pages of symbol table space allocated to hold 22 non-local and 0 local symbols.
57 source lines were read in Pass 1, producing 13 object records in Pass 2.
0 pages of virtual memory were used to define 0 macros.
PROTO_ACTION                    MAIL alternate protcol action table      30-AUG-1989 14:11:58  VAX MACRO V5.0-8            Page   3
VAX-11 Macro Run Statistics                                              16-AUG-1989 14:15:48  PROTO_ACTION.MAR;1                (1)


                                            +--------------------------+
                                            ! Macro library statistics !
                                            +--------------------------+

Macro library name                           Macros defined      
------------------                           --------------      
SYS$COMMON:[SYSLIB]STARLET.MLB;2                        0        

0 GETS were required to define 0 macros.

There were no errors, warnings or information messages.

MACRO/DEBUG PROTO_ACTION
