Newsgroups: vmsnet.networks.tcp-ip.cmu-tek
Subject: RE: Pause delay
From: henrym@sacusr.mp.usbr.gov
Date: Sat, 12 Sep 1992 21:20:49 PDT
Reply-To: HENRYM@SACUSR.MP.USBR.GOV
Organization: The Internet
Return-Path: <SYNFUL@CMUTEK.CC.CMU.EDU>
Errors-To: SYNFUL@CMUTEK.CC.CMU.EDU
X-Listname: CMU-TEK TCP/IP Mailing list <CMU-TEK-TCP@CMUTEK.CC.CMU.EDU>
X-Vms-Original-To: INET%"cmu-tek-tcp@cmutek.cc.cmu.edu"


Hi, all,

	In my posting last night (early this morning?), where I gave directions
to get the new images that will fix, among other things, the TELNET pause bug,
I forgot to mention a couple of things.

	First, except in real pathological cases, the memory crashing problems
have been fixed as well.  The problem was excessive memory fragmentation.  This
has been resolved by pre-allocating certain structures that IPACP is going
to use.  However, the price is that the initial amount of memory required by
IPACP will be higher.  In the long run, as IPACP stays up, it will use less
memory than it would attempt to with the old memory allocation scheme.  This
patch did not make it into the distributed 6.6-5.

	Second, the new PNDRIVER replaces the PZDRIVER for PTY service.  You
must have the logicals defined properly and PNDRIVER must be installed.

	Also, most logicals, especially INTERNET_HOST_NAME must be defined
in /EXEC mode.  Otherwise, images like TELNET, which are installed with
privileges cannot see that logical.

	Enclosed is a sample IP_STARTUP file.  Some of the items are highly
system specific, and are commented out in this file.  This particular file
does not contain the logicals for the DNS, either.  You should review this
file against your own, and make the appropriate changes.

	Good luck,

-HWM
----------
Henry W. Miller
Assistant Systems and Network Manager
U.S. Bureau of Reclamation
Mid Pacific Region
2800 Cottage Way MP1100
Sacramento, CA 95825
(916) 978-5108 / FTS - Same as commercial
Inet:	"henrym@sacwms.mp.usbr.gov"

"I've fallen, and I can't get up!"
$! ------------------ CUT HERE -----------------------
$ v='f$verify(f$trnlnm("SHARE_VERIFY"))'
$!
$! This archive created by VMS_SHARE Version 7.2-007  22-FEB-1990
$!   On 12-SEP-1992 21:09:41.92   By user HENRYM
$!
$! This VMS_SHARE Written by:
$!    Andy Harper, Kings College London UK
$!
$! Acknowledgements to:
$!    James Gray       - Original VMS_SHARE
$!    Michael Bednarek - Original Concept and implementation
$!
$! TO UNPACK THIS SHARE FILE, CONCATENATE ALL PARTS IN ORDER
$! AND EXECUTE AS A COMMAND PROCEDURE  (  @name  )
$!
$! THE FOLLOWING FILE(S) WILL BE CREATED AFTER UNPACKING:
$!       1. IP_STARTUP.COM;5
$!
$set="set"
$set symbol/scope=(nolocal,noglobal)
$f=f$parse("SHARE_TEMP","SYS$SCRATCH:.TMP_"+f$getjpi("","PID"))
$e="write sys$error  ""%UNPACK"", "
$w="write sys$output ""%UNPACK"", "
$ if f$trnlnm("SHARE_LOG") then $ w = "!"
$ ve=f$getsyi("version")
$ if ve-f$extract(0,1,ve) .ges. "4.4" then $ goto START
$ e "-E-OLDVER, Must run at least VMS 4.4"
$ v=f$verify(v)
$ exit 44
$UNPACK: SUBROUTINE ! P1=filename, P2=checksum
$ if f$search(P1) .eqs. "" then $ goto file_absent
$ e "-W-EXISTS, File ''P1' exists. Skipped."
$ delete 'f'*
$ exit
$file_absent:
$ if f$parse(P1) .nes. "" then $ goto dirok
$ dn=f$parse(P1,,,"DIRECTORY")
$ w "-I-CREDIR, Creating directory ''dn'."
$ create/dir 'dn'
$ if $status then $ goto dirok
$ e "-E-CREDIRFAIL, Unable to create ''dn'. File skipped."
$ delete 'f'*
$ exit
$dirok:
$ w "-I-PROCESS, Processing file ''P1'."
$ if .not. f$verify() then $ define/user sys$output nl:
$ EDIT/TPU/NOSEC/NODIS/COM=SYS$INPUT 'f'/OUT='P1'
PROCEDURE Unpacker ON_ERROR ENDON_ERROR;SET(FACILITY_NAME,"UNPACK");SET(
SUCCESS,OFF);SET(INFORMATIONAL,OFF);f:=GET_INFO(COMMAND_LINE,"file_name");b:=
CREATE_BUFFER(f,f);p:=SPAN(" ")@r&LINE_END;POSITION(BEGINNING_OF(b));
LOOP EXITIF SEARCH(p,FORWARD)=0;POSITION(r);ERASE(r);ENDLOOP;POSITION(
BEGINNING_OF(b));g:=0;LOOP EXITIF MARK(NONE)=END_OF(b);x:=ERASE_CHARACTER(1);
IF g=0 THEN IF x="X" THEN MOVE_VERTICAL(1);ENDIF;IF x="V" THEN APPEND_LINE;
MOVE_HORIZONTAL(-CURRENT_OFFSET);MOVE_VERTICAL(1);ENDIF;IF x="+" THEN g:=1;
ERASE_LINE;ENDIF;ELSE IF x="-" THEN IF INDEX(CURRENT_LINE,"+-+-+-+-+-+-+-+")=
1 THEN g:=0;ENDIF;ENDIF;ERASE_LINE;ENDIF;ENDLOOP;t:="0123456789ABCDEF";
POSITION(BEGINNING_OF(b));LOOP r:=SEARCH("`",FORWARD);EXITIF r=0;POSITION(r);
ERASE(r);x1:=INDEX(t,ERASE_CHARACTER(1))-1;x2:=INDEX(t,ERASE_CHARACTER(1))-1;
COPY_TEXT(ASCII(16*x1+x2));ENDLOOP;WRITE_FILE(b,GET_INFO(COMMAND_LINE,
"output_file"));ENDPROCEDURE;Unpacker;QUIT;
$ delete/nolog 'f'*
$ CHECKSUM 'P1'
$ IF CHECKSUM$CHECKSUM .eqs. P2 THEN $ EXIT
$ e "-E-CHKSMFAIL, Checksum of ''P1' failed."
$ ENDSUBROUTINE
$START:
$ create 'f'
X$ !++
X$ ! IP_Startup.COM
X$ !
X$ ! Description:
X$ !
X$ !        Start the CMU-TEK IP/ACP system.
X$ !
X$ ! Written By:  Vince Fuller CMU-CS/RI
X$ !
X$ ! Modifications:
X$ !--
X$
X$! Define these two crucial logicals
X$!`09These next two lines are system dependent...
X$! Define/System/Exec/NoLog/trans=conc`09CMUTEK_ROOT $3$DUB4:`5BSYS0.SYSCOMM
VON.`5D
X$! Define/System/Exec/NoLog/trans=conc`09CMUTEK_SRC $3$DUB4:`5BSYS0.SYSCOMMO
VN.SRC.`5D
X$
X$`20
X$ mcr sysgen
X load CMUTEK_ROOT:`5BSYS$LDR`5Dipdriver.exe
X connect IP0/noadapter
X load CMUTEK_ROOT:`5BSYS$LDR`5Dpndriver.exe
X connect PNA0/noadapter/driver=pndriver
X load CMUTEK_ROOT:`5BSYS$LDR`5Dtzdriver.exe
X connect TZA0/noadapter/driver=tzdriver
X$
X$ Define/System/Exec/NoLog INET$DEVICE`09`09IP:
X$ Define/System/Exec/NoLog INET$PTY`09`09PNA0:
X$ Define/System/Exec/NoLog INET$PTY_TERM`09TZ
X$ Define/System/Exec/NoLog NFS$CONFIG`09`09CMUTEK_ROOT:`5BSYSMGR`5DNFS.CONFI
VG
X$ Define/System/Exec/NoLog INET$CONFIG`09`09CMUTEK_ROOT:`5BSYSMGR`5DINTERNET
V.CONFIG
X$ Define/System/Exec/NoLog INET$HOSTS`09`09CMUTEK_ROOT:`5BSYSLIB`5DHOSTS.TXT
X$ Define/System/Exec/NoLog INET$LOG`09`09CMUTEK_ROOT:`5BSYSMGR`5DINTERNET.LO
VG
X$ Define/System/Exec/NoLog INET$ACTIVITY`09CMUTEK_ROOT:`5BSYSMGR`5DTCP_ACTIV
VITY.LOG
X$ Define/System/Exec/NoLog INET$NAMRES`09`09CMUTEK_ROOT:`5BSYSEXE`5DNAMRES.E
VXE
X$ Define/System/Exec/NoLog NAMRES$CONFIG`09CMUTEK_ROOT:`5BSYSMGR`5DNAMRES.CO
VNFIG
X$ Define/System/Exec/NoLog NAMRES$LOG`09`09CMUTEK_ROOT:`5BSYSMGR`5DNAMRES.LO
VG
X$ Define/System/Exec/NoLog IPNCP$CONFIG`09`09CMUTEK_ROOT:`5BSYSMGR`5DIPNCP_C
VNF.DAT
X$ Define/System/Exec/NoLog TCP$FTPSRV`09`09CMUTEK_ROOT:`5BSYSEXE`5DFTP_SERVE
VR.EXE
X$ Define/System/Exec/NoLog TCP$TELSRV`09`09CMUTEK_ROOT:`5BSYSEXE`5DTELNET_SE
VRVER.EXE
X$ Define/System/Exec/NoLog TCP$SMTPSV`09`09CMUTEK_ROOT:`5BSYSEXE`5DSMTP_SERV
VER.EXE
X$ Define/System/Exec/NoLog TCP$FNGSRV`09`09CMUTEK_ROOT:`5BSYSEXE`5DFINGER_SE
VRVER.EXE
X$ Define/System/Exec/NoLog TCP$LPD`09`09CMUTEK_ROOT:`5BSYSEXE`5DLPD.EXE
X$
X$ RUN CMUTEK_ROOT:`5BSYSEXE`5DIPACP.EXE -
X`09/NOACCOUNTNG -
X`09/NOAUTHORIZE -
X`09/DETACHED -
X`09/DUMP -
X`09/BUFFER_LIMIT=65535 -
X`09/IO_BUFFERED=32767 -
X`09/IO_DIRECT=32767 -
X`09/PRIORITY=6 -
X`09/PRIVILEGES=(NOEXQUOTA,CMKRNL) -
X`09/FILE_LIMIT=512 -
X`09/AST_LIMIT=200 -
X`09/QUEUE_LIMIT=100 -
X`09/EXTENT=8192 -
X`09/UIC=`5B1,4`5D
X$
X$!`09This needs to be the fully qualified domain name...
X$!`09This line, too, is system dependent...
X$! Define/System/Exec/NoLog INTERNET_HOST_NAME "BOOT2"
X$
X$ if (f$search("CMUTEK_ROOT:`5BSYSEXE`5Dfinger.exe") .NES. "") THEN -
X     if (.NOT. F$FILE("CMUTEK_ROOT:`5BSYSEXE`5DFINGER.EXE","KNOWN")) then -
X        install add CMUTEK_ROOT:`5BSYSEXE`5Dfinger /priv=(sysprv,cmkrnl,worl
Vd)
X$ if (f$search("CMUTEK_ROOT:`5BSYSEXE`5Dtelnet.exe") .NES. "") THEN -
X     if (.NOT. f$file("CMUTEK_ROOT:`5BSYSEXE`5Dtelnet.exe","KNOWN")) then -
X        install add CMUTEK_ROOT:`5BSYSEXE`5Dtelnet /open/header/share
X$ if f$search("CMUTEK_ROOT:`5BSYSMGR`5DLPR_startup.com") .NES. "" then -
X$     @CMUTEK_ROOT:`5BSYSMGR`5DLPR_startup.com
X$ If F$Search("Sys$Library:DECW$Transport_CMU.EXE") .Nes. "" .And.  -
X`09.Not. F$File("Sys$Library:DECW$Transport_CMU.EXE","Known") Then -
X`09Install Add Sys$Library:DECW$Transport_CMU /Open /Head /Share /Prot
X$ If F$Search("CMUTEK_ROOT:`5BSYSMGR`5DTalk_Startup.Com") .NES. "" Then -
X`09@CMUTEK_ROOT:`5BSYSMGR`5DTalk_Startup.Com
X$exit
$ CALL UNPACK IP_STARTUP.COM;5 207838129
$ v=f$verify(v)
$ EXIT