perm filename PUPDEF.FAI[S,NET]1 blob
sn#551085 filedate 1983-05-30 generic text, type T, neo UTF8
;PUPDEF.FAI[NET,TVR] 19-DEC-80 00:20:18 EDIT BY TVR
; Removed extra cruft for use at SAIL and assembled by FAIL
;<PUP>PUPDEF.MAC;31 28-NOV-79 11:14:18 EDIT BY TAFT
; Add FTP/Mail flags to mark type table
;<PUP>PUPDEF.MAC;30 2-SEP-79 15:58:49 EDIT BY TAFT
;<PUP>PUPDEF.MAC;29 11-APR-79 17:31:43 EDIT BY TAFT
; Put Sender property in its right alphabetical sequence, dummy
;<PUP>PUPDEF.MAC;28 18-MAR-79 19:18:28 EDIT BY TAFT
; Put back Sender property
;<PUP>PUPDEF.MAC;27 24-MAY-78 18:12:41 EDIT BY TAFT
; Add New-Store mark
;<PUP>PUPDEF.MAC;26 15-SEP-77 11:19:01 EDIT BY TAFT
; Fix [Mailbox-exception] command to take sub-codes
;<PUP>PUPDEF.MAC;25 1-SEP-77 15:52:10 EDIT BY TAFT
; Revise property and mark tables for updated Mail Transfer Protocol
;<PUP>PUPDEF.MAC;24 3-JUN-77 11:04:13 EDIT BY TAFT
; Remove "Sender" and "Distribution" properties
;<PUP>PUPDEF.MAC;23 2-JUN-77 21:33:43 EDIT BY TAFT
; Add "Size" and "Author" properties
; Add "Rename" command mark
;<PUP>PUPDEF.MAC;22 15-APR-77 10:03:57 EDIT BY TAFT
; Add SERVF
;<PUP>PUPDEF.MAC;21 31-MAR-77 20:16:42 EDIT BY TAFT
; Add marks and properties for Mail Transfer Protocol
;<PUP>PUPDEF.MAC;20 19-MAR-77 20:24:21 EDIT BY TAFT
; Add "delete" mark type
; Add date properties
;<PUP>PUPDEF.MAC;18 18-MAR-77 17:05:38 EDIT BY TAFT
; Move mark and property definitions here from PFUDEF.MAC.
; Add some common flag bits.
;<PUP>PUPDEF.MAC;16 10-MAR-77 14:24:40 EDIT BY TAFT
; Divide into two definitions files:
; PUPDEF.MAC contains definitions common to PUPSRV and PUPFTP
; PSVDEF.MAC contains stuff specific to PUPSRV
;<PUP>PUPDEF.MAC;14 20-OCT-76 13:27:17 EDIT BY TAFT
; Add defs for net directory server
;<PUP>PUPDEF.MAC;13 2-OCT-76 23:16:30 EDIT BY TAFT
; Add defs for gateway info server
;<PUP>PUPDEF.MAC;11 30-JUN-76 18:04:45 EDIT BY TAFT
; Revise storage assignment macros
; Add defs for event report server
; Copyright 1979 by Xerox Corporation
UNIVERSAL PUPDEF -- DEFINITIONS COMMON TO PUPSRV AND PUPFTP
SUBTTL E. A. Taft / September, 1975
; FTP-related definitions common to server and user
USRSTL== =39 ; Maximum name/password/acct string lengths
NAMSTL==<2*=39+1+2*=39> ; Name.Extension length (with possible ↑Vs)
SFNSTL==USRSTL+2+NAMSTL+7 ; Server-Filename string length
PQUOTE=="'" ; Quote character in property lists
EOL==37 ; Tenex EOL character (internal use only)
; Property list names and assignments
; Calls are of the form
; X internal mnemonic , property name , storage
; The internal mnemonic must be 4 characters or less.
; Entries must be sorted alphabetically by property name.
; "Storage" is the maximum number of words needed to store
; the property (default 1).
; Offsets in a property list are assigned to P.' mnemonic.
; Dispatches to process received properties are PP' mnemonic.
DEFINE PNAMES <
X AUTH,<AUTHOR>,USRSTL/5+1
X BYTE,<BYTE-SIZE>
X CNAM,<CONNECT-NAME>
X CPSW,<CONNECT-PASSWORD>,USRSTL/5+1
X CDAT,<CREATION-DATE>
X DEVI,<DEVICE>,USRSTL/5+1
X DIRE,<DIRECTORY>,USRSTL/5+1
X EOLC,<END-OF-LINE-CONVENTION>
X MLBX,<MAILBOX>,0
X NAMB,<NAME-BODY>,NAMSTL/5+1
X RDAT,<READ-DATE>
X SNDR,<SENDER>,USRSTL/5+1
X SFIL,<SERVER-FILENAME>,SFNSTL/5+1
X SIZE,<SIZE>
X TYPE,<TYPE>
X UACT,<USER-ACCOUNT>,USRSTL/5+2
X UNAM,<USER-NAME>
X UPSW,<USER-PASSWORD>,USRSTL/5+1
X VERS,<VERSION>
X WDAT,<WRITE-DATE>
>
; Assign offsets for individual properties in a property list
DEFINE X '(SYM,NAME,SIZE) <
P.'SYM==PLSIZE
IFDIF<><SIZE>< PLSIZE==PLSIZE+SIZE >
IFIDN<><SIZE>< PLSIZE==PLSIZE+1 >
>
PLSIZE==0
PNAMES
; Mark type assignments
; Calls are of the form
; XN internal mnemonic , mark type , name string , flags
; or XS internal mnemonic , mark type , name string , flags
; The internal mnemonic must be 4 characters or less.
; Mark type must be octal. Entries must be in order of Mark type.
; Mark types are assigned to MK' mnemonic.
; Dispatches to process received Marks are C.' mnemonic.
; The XS macro declares the Mark to have sub-codes.
; Flag assignments
; B0 ; Command has subcommands
NFETCH==1B1 ; Do not pre-fetch command text
OKRETR==1B2 ; Command ok during Retrieve
OKSTOR==1B3 ; Command ok during Store
NOTFTS==1B4 ; Not allowed in FTP server
NOTMLS==1B5 ; Not allowed in Mail server
DEFINE MARKS <
XN RETR, 1,<Retrieve>
XN STOR, 2,<Store>,NOTMLS
XS YES, 3,<Yes>,OKRETR+OKSTOR
XS NO, 4,<No>,OKRETR+OKSTOR
XN FILE, 5,<Here-is-file>,NFETCH+OKSTOR
XN EOC, 6,<End-of-command>,NFETCH+OKRETR+OKSTOR
XN COMM, 7,<Comment>,OKRETR+OKSTOR
XS VERS,10,<Version>
XN NSTO,11,<New-store>,NOTMLS
XN DIR, 12,<Directory>,NOTMLS
XN PLST,13,<Here-is-property-list>
XN YUSR,14,<You-are-user>,NOTMLS
XN ABOR,15,<Abort>,OKRETR+OKSTOR
XN DELE,16,<Delete>,NOTMLS
XN RENA,17,<Rename>,NOTMLS
XN SMAI,20,<Store-mail>,NOTFTS
XN RMAI,21,<Retrieve-mail>,NOTFTS
XN FMAI,22,<Flush-mail>,NOTFTS
XS MBEX,23,<Mailbox-exception>,NOTFTS
>
; Assign the Mark type symbols
DEFINE XN '(SYM,TYPE,NAME,FLAGS) <
MK'SYM==TYPE
NMARKS==NMARKS+1
>
DEFINE XS '(SYM,TYPE,NAME,FLAGS) <
MK'SYM==TYPE
NMARKS==NMARKS+1
>
NMARKS==0
MARKS
END