Patch Name: PHNE_3758 Patch Description: s300_400 9.X SNAplusRJE enhancement for logon retry Adds capability to turn on logon retry for host shutdowns This patch adds a new capability to SNAplusRJE. Normally, when RJE sends a logon to an IBM host and it receives a Error sense code, such as 0857 (application (JES) not available), it will not retry the logon. This is to avoid an indefinite retry of the logons when there may be a host or configuration error. An environment variable: RJE_LOGON_RETRY will now change how RJE responds in some situations. When the user now specifies a non-null value, such as: $export RJE_LOGON_RETRY=1 and RJE has previously had a session with the host, a host unbind will cause RJE to retry the logon (about every 30 seconds) no matter what response it gets. This will result in RJE automatically establishing a session after JES is restarted. ************************************************************ * NOTE: If this is the first time RJE is attempting to * * establish a session with the host, and it * * receives an error sense code, it will not retry * * the logon. This feature only applies if * * RJE was previously logged on to the host, and * * the host terminated the session. * * * ************************************************************ The environment variable must be specified before the snaprjestart command is issued. To disable the feature later, specify a non-null value: $export RJE_LOGON_RETRY= The default is no logon retry. Before installing the patch, issue the command: $snapstop daemon Install the patch, and then issue the command: $snapstart daemon Then open the running configuration file (/usr/lib/sna/com.cfg) with the new snapconfig provided with this patch. Save the configuration file and exit snapconfig. Then restart the link, node and connection within snapmanage. If you are using Token Ring, you should also have previously installed: PHNE_3581 (s700) PHNE_3582 (s800) ********************************************************* * Text from earlier RJE patches * ********************************************************* This patch adds the following 2 features to SNAplusRJE 1) The size of the RU sent to the host now has a maximum of 3584 bytes. The previous size was 256. SNAplusRJE will accept a bind up to 4096, but will limit the outbound RU size to 3584. 2) The user can now specify that formfeed characters are written to the output file. This is done by specifying a non-null value for the environment variable: RJE_FF_PASSTHROUGH Eg. $export RJE_FF_PASSTHROUGH=1 This must be done before the snaprjestart command is issued. To turn this feature off, set the environment variable to null value before issuing the snaprjestart command (the default value is no formfeed passthrough). Eg. $export RJE_FF_PASSTHROUGH= When this feature is used, SNAplusRJE will write formfeeds directly to the output file. It will not fill out the remainder of the form (as specified with the FCB or Set Vertical Form) with newlines. It is recommended that if the user is specifying this environment variable that he not mix this with the specification of top and bottom margins (FCB or SVF). This is because the formfeed is now just output data and the top and bottom margins (expressed as newlines) will not line up with formfeeds which are done by a printer. This patch also fixes a problem seen at one site where post-processor (rjeusr/rjeusrpad) base directory files were not being created with write permission. This resulted in an error SNA9542, and output was not written to the file. If the customer is using Token Ring, this patch requires previous installation of the patches: PHNE_3581 (700's) PHNE_3582 (800's) Before installing the patch, issue the command: $snapstop daemon Install the patch, and then issue the command: $snapstart daemon Then open the running configuration file (/usr/lib/sna/com.cfg) with the new snapconfig provided with this patch. Save the configuration file and exit snapconfig. Then restart the link, node and connection within snapmanage. I have included the text from previous SNAplusRJE patches below. ************************************************************* This text contains descriptions of 2 new RJE enhancements included with this patch. The 2 new enhancements included with this patch: 1) enhancement to options for punch padding. Patches 2784/2785/2786 contained an enhancement which allowed the user to specify an environment variable RJE_PUNCH_PADDING for control over how punch output was padded. This patch adds 2 more options. RJE_PUNCH_PADDING=B - Pad all punch records (text and transparent) with spaces. If ebcdic->ascii conversion is begin done, records are padded with ascii spaces. Otherwise, records are padded with ebcdic spaces. RJE_PUNCH_PADDING=S - Same as B option, except that only transparent records are padded. I will included the text from the original punch padding patch at the end of this text. 2) This patch also allows the user to specify a directory path which will contain subdirectories used for output to user programs. Previously, if output was sent to a user program, all output was initially sent to a temporary file in /usr/lib/sna/rje//.pgmout. Also, if the rjeusr or rjeusrpad programs were used, and they left output in the base directory, this output was placed in /usr/lib/sna/rje//output. With this new enhancement. The user can specify a new directory path for these 2 directories. The syntax is: RJE_TMP_DIR=// Eg. $export RJE_TMP_DIR=/users/user1/tmp As with all environment variables, you must specify this before the "snaprjestart" command is issued. If this environment variable is specified, RJE will create .pgmout and output for this path. If they exist, the permissions will be modified to be the permissions of the user and group configured for the workstation. The user and group configured for the workstation must be able to access the specified path, or an error will be reported. Also, the maximum path length is 50 characters. Do not remove these directories while RJE is running. RJE will loop trying to access the directories. There is currently a defect report for this and it will be fixed in a future release. This enhancement is currently undocumented and is recommended only for customers which need it (those transferring very large files which will not fit on the /usr disk.) It's usage may change with a future release. ********************************************************* Listed below is the text for earlier patches, 2784/2785/2786 (punch padding) and 2939/2940/2941 (performance improvement). *********************************************************** 2784/2785/2786 (punch padding) SNAplusRJE, as initially released with version number A.09.01.002, does punch padding when the user configures /usr/bin/rjeusrpad as the program for processing output. Only punch files which contained no transparent records are padded. Records are padded to the length specfied in the FMH-1, which is the LRECL configured for the punch device on the host. This enhancement allows the user to pad all punch output by setting an environment variable RJE_PUNCH_PADDING. It is not necessary to configure an output program to do the padding. When RJE_PUNCH_PADDING=A all punch records are padded. Text records are padded with blanks (ebcdic or ascii, depending on whether translation is being done.) Transparent records are padded with NULLS ('0'); When RJE_PUNCH_PADDING=T only text records are padded. When RJE_PUNCH_PADDING=P only transparent records are padded. (with nulls). The environment variable must be set before the snaprjestart command is issued and the specified padding remains in effect as long as the workstation is running. The workstation must be stopped in order to change the specification for punch padding. When RJE_PUNCH_PADDING= ... anything else, punch records are not padded. ============================================================= 2939/2940/2941 (performance improvement). SNAplusRJE had a performance bottleneck, which was especially noticeable on token ring. Also, it could not logon when a large RU size (greater than 1024) was specified. This patch fixes both of those problems. To use the patch, issue the following command: snapstop daemon This command will stop all SNAplus processes. Run the update program to install the patch. Then issue the following command: snapstart daemon At this point, it will be necessary to open the configuration file with snapconfig and then save the configuration file. This is necessary because a new snapconfig program has been installed which allows SNAplusRJE to work with larger RU sizes. Then, start the node, connection and link within snapmanage. Performance was measured for outbound data (from the host) over 1 LU. Performance under the best conditions was about 200 Kpbs for a 4 megabit token ring. For a 56K baud SDLC line, it was about 44 kbps. The original performance figures for outbound data over 1 LU: Token ring: 16 kbps 56K SDLC : 3.9 kbps But, these figures were obtained with a host configuration which was less optimized than the current tests. The results were achieved with the following configuration. Note, this may not be the most desirable configuration for your installation and application, since the only considerations were performance. Performance may vary and you may not achieve this transfer rate with your installation. The most critical parameter is RU size. The output RU size used for this test was 3840. (The RU size depends upon the combination of the RUSIZE parameter of the logmode table and BUFSIZE parameter of the remote configuration. For token ring, make sure your btu size and frame size are large enough for the RU). Logmode parameters: LOGRJE3E MODEENT LOGMODE=LOGRJE3E,FMPROF=X'03',TSPROF=X'03', COS=ISTVTCOS, PRIPROT=X'B3',SECPROT=X'B3',COMPROT=X'7080', SRCVPAC=X'07',PSNDPAC=X'07',SSNDPAC=X'07', RUSIZES=X'C8C8',PSERVIC=X'01102000F100E00000010060' RMT42 DEVTYPE=LUTYPE1,BUFSIZE=3960,COMPRESS=YES,CONS=NO, RMT150=YES,COMPACT=NO, DISCINTV=0,NUMPRT=3,NUMPUN=4,WAITIME=4 R42.PU1 CLASS=B,CCTL,SEP=NO The following command was issued from the RJE console to insure maximum chaining of the output: $T R42.PU1,CKPTLINE=15000 Performance was measured on a 9000/750 receiving data from an IBM host running MVS and JES2. One LU was configured for the workstation and the outbound (from host) transfer rate was measured while receiving a 1 megabyte punch file. Note that any tracing done by RJE or the node will degrade performance. Path Name: /hp-ux_patches/s300_400/9.X/PHNE_3758 Effective Date: 94/02/07 Repost: 95/06/22 The patch was modified to allow installation on HP-UX 9.10. OS Release: 9.00 9.03 9.10 Reboot Required: No Patch Files: rjeusr rjeusrpad sna.msg snapconfig snaprjestart SR#: 5003166710 "what" string/timestamp: rjeusr: A.09.01.004 SNAplus RJE post-processor A.09.01.002 SNAplus Trace Library A.09.01.002 SNAplus RJE utility functions A.09.01.002 SNAplus RJE library functions rjeusrpad: A.09.01.004 SNAplus RJE padding post-processor A.09.01.002 SNAplus Trace Library A.09.01.002 SNAplus RJE utility functions A.09.01.002 SNAplus RJE library functions sna.msg: snapconfig: A.09.01.006 SNAplus Configuration Program A.09.01.002 SNAplus Character Windows Library A.09.01.002 SNAplus Help Library A.09.01.002 SNAplus Trace Library snaprjestart: A.09.01.007 SNAplus RJE workstation A.09.01.002 SNAplus Trace Library "sum" output: 7199 54 rjeusr 9992 54 rjeusrpad 11669 128 sna.msg 30377 1267 snapconfig 30772 817 snaprjestart Dependencies: PHNE_3581 (700 server) PHNE_3582 (800 server) Supersedes: PHNE_2784 PHNE_2939 PHNE_3176 PHNE_3683 Patch Package Size: 1220 Kbytes Installation Instructions: Please review all instructions and the Hewlett-Packard SupportLine User Guide or your Hewlett-Packard support terms and conditions for precautions, scope of license, restrictions, and, limitation of liability and warranties, before installing this patch. Note: Please back up your system before you patch. --------------------------------------------------------------------------- After getting the patch onto your machine, unshar the patch (sh PHNE_3758). To install this patch do the following: 1) Run /etc/update (Note: you must be logged in as root to update a system). 2) Once in the update "Main Menu" move the highlighted line to "Change Source or Destination ->" and press "Return" or "Select Item". 3) Make sure the highlighted item in the "Change Source or Destination" window is "From Tape Device to Local System ...", then press "Return" or "Select Item". 4) You should now be in the "From Tape Device to Local System" window. Change the "Source: /dev/rmt/0m" to "Source: /tmp/PHNE_3758.updt" (this assumes that you are in the /tmp directory where PHNE_3758.updt has been placed). Note: You must enter the complete path name. 5) Press "Done". 6) From here on follow the standard directions for update. The customized script that update runs will move the original software to /system/PHNE_3758/orig. HP recommends keeping this software there in order to recover from any potential problems. It is also recommended that you move the PHNE_3758.text file to /system/PHNE_3758 to be retained for future reference. If you wish to put this patch on a magnetic tape and update from the tape drive, dd a copy of the patch to the tape drive. As an example the following will create a copy of the patch that update can read: dd if=PHNE_3758.updt of=/dev/rmt/0m bs=2048