UNIVERSAL UDPUNV -- COMMON UDP DEFNS SUBTTL P BUDNE@BU/DSG SEARCH ANAUNV,MACSYM ; Copyright (C) 1985 Philip L. Budne SUBTTL UCB BLOCK DEFINITION .T==0 UCBQ==.T ; UCB Queue (UCBH) .T==.T+QSZ UCBLCK==.T ; UCB.Lock .T==.T+LOCKSZ DEFSTR(UCBJOB,\<.T>,17,18) ; UCB.Owner.job DEFSTR(UCBFRK,\<.T>,35,18) ; UCB.Owner.fork .T==.T+1 DEFSTR(UCBFH,\<.T>,31,32) ; Foreign Host .T==.T+1 DEFSTR(UCBLH,\<.T>,31,32) ; Local Host .T==.T+1 DEFSTR(UCBLP,\<.T>,15,16) ; Local Port DEFSTR(UCBFP,\<.T>,31,16) ; Foreign Port .T==.T+1 ; Flags DEFSTR(UCBNAM,\<.T>,0,1) ; GTJFN name done once DEFSTR(UCBEXT,\<.T>,1,1) ; GTJFN extension done once DEFSTR(UCBSEC,\<.T>,2,1) ; Secure interface (* NYI *) DEFSTR(UCBOPN,\<.T>,3,1) ; OPENF done DEFSTR(UCBHT,\<.T>,4,1) ; Set for high thruput (* ALWAYS *) DEFSTR(UCB8B,\<.T>,5,1) ; 8bit open DEFSTR(UCBOB,\<.T>,6,1) ; Output buffer setup DEFSTR(UCBBM,\<.T>,7,1) ; Block mode open (* NYI *) DEFSTR(UCBPU,\<.T>,8,1) ; Do PUSH ;; BIT 9 IS FREE DEFSTR(UWLDN,\<.T>,10,1) ; Net wild (* USED? *) DEFSTR(UWLDT,\<.T>,11,1) ; Host wild (* USED? *) DEFSTR(UWLDP,\<.T>,12,1) ; Port wild (* USED? *) ;; BITS 13..17 FREE DEFSTR(UCBWAI,\<.T>,27,9) ; (18..27) Wait bit number (for input) DEFSTR(UCBTTL,\<.T>,35,8) ; (28..35) Time to live (* NYI *) .T==.T+1 DEFSTR(UCLFH,\<.T>,31,32) ; Last 4n Host .T==.T+1 DEFSTR(UCLFP,\<.T>,17,18) ; Last 4n port DEFSTR(UCBJFN,\<.T>,35,18) ; UCB JFN .T==.T+1 DEFSTR(UCBICD,\<.T>,17,6) ; Data avail PSI chan DEFSTR(UCBIFD,\<.T>,35,18) ; Data avail PSI fork .T==.T+1 UCBINQ==.T ; Input queue .T==.T+QSZ UCBCTR==.T ; Queue count (Never hold more than UCBLIM) ; Perhaps limit should be a UCB variable ; (set only by wizards) .T==.T+1 UCBIBF==.T ; Input buffer addr .T==.T+1 UCBOBF==.T ; Output buffer addr .T==.T+1 UDPBCO==.T ; 'Real' FILBCO .T==.T+1 UCBXXX==.T ; Spare .T==.T+1 UCBSIZ==.T+1 ; Size of UCB PURGE .T ; Out damn spot ; Symbols for MTOPR% ; .UDLEN==0 .UDBUF==1 .UDSIZ==2 .UDADR==3 .UDPRT==4 ; ; END