home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 April / Chip_1997-04_cd.bin / ovladace / novell / 411sp1b / 411sp1b.exe / 411SP1 / 411SPACK.IPS next >
Text File  |  1996-10-02  |  25KB  |  628 lines

  1. ; ***************************************************************
  2. ;
  3. ; This script has been developed to install "Support Pack for NetWare 4.11".
  4. ; Date: 10/16/96 
  5. ;
  6. ; ***************************************************************
  7. ; @SyntaxVersion 1.00
  8. ; "CoPyRiGhT=(c) 1996 Novell, Inc.  All Rights Reserved."
  9. ; VeRsIoN=2.00
  10.  
  11.  
  12.     CopyToServer SYSTEM\NWUPDATE, PI_ICMD.NLM, '', ''
  13.     CopyToServer SYSTEM\NWUPDATE, PI_INIT.NLM, '', ''
  14.     Command NWUPDATE\PI_ICMD
  15.  
  16.     GetPath TempInstallDir, 1, 'SYS:\\SYSTEM\\NWUPDATE', ''
  17.     GetPath    TempSystemDir, 1, 'SYS:\\SYSTEM', ''
  18.  
  19.     ValueSet PatchKitLevel, "1"
  20.     SetVar PatchKitID, "PK411%{PatchKitLevel}"
  21.     ;-- WARNING:
  22.     ;ProductRecord does not support passing a varible
  23.     ;When modifing PatchKitID also modify the description string on ProductRecord
  24.      ; Example:
  25.      ; ProductRecord SPACK, 1, "NetWare v4.11 Support Pack 411SP1"
  26.  
  27.  
  28.     ValueSet InstallIntranetWare, 0
  29.     ValueSet InstallNetWare, 0
  30.  
  31.  
  32. ; ***************************************************************
  33.  
  34. ;    This file set is commented out because we only want to install the (Support Pack ONLY).
  35. ;    to find addition commented line search for "XXX"
  36. ;    Note: line 68, Name: PTONLY_KIT , Class: OPTIONAL_OFF was changed to OPTIONAL.  
  37. ;    Note: lines 217, and 335 commended out to avoid adding a PMLOAD FOR START_IT
  38. @FileSet
  39.  
  40.         Description: "V1.0 Support Pack for NetWare 4.11 + NIAS 4.0 or MPR 3.1"
  41.      Name: PTIT_KIT
  42. ;xxx        CLASS: OPTIONAL_OFF
  43.      CLASS: OPTIONAL
  44.      HELP: "Choose this option to update NetWare 4.11 with NIAS 4.0 and/or MPR 3.1 installed also.    (Choose one option only!)"
  45.  
  46.     ValueSet InstallIntranetWare, 1
  47.  
  48. @EndFileSet
  49.  
  50.  
  51. @FileSet
  52.  
  53.         Description: "V1.0 Support Pack for NetWare 4.11"
  54.         Name: PTONLY_KIT
  55.         CLASS: OPTIONAL_OFF
  56. ;xxx        CLASS: OPTIONAL
  57.         HELP: "Choose this option if you desire to update NetWare 4.11 and do NOT have NIAS 4.0 or MPR 3.1 installed also.     (Choose one option only!)"
  58.  
  59.    ValueSet InstallNetWare, 1
  60.  
  61. @EndFileSet
  62.  
  63. ; ***************************************************************
  64. ; ***************************************************************
  65.  
  66.     ;********* Test for OS Version
  67.  
  68.  
  69.     ;********* Test for Support Pack Level  
  70.    GotoIfEqual %{InstallIntranetWare}, %{InstallNetWare}, ERROR_MustSelectOneOption
  71.  
  72.     ; (Note that PI_INIT.NLM sets the PI_* variables used below)
  73.     NLMExec 1, NWUPDATE\PI_INIT, ccode
  74.  
  75. ;   GotoIfLess %{PatchKitLevel}, %{PI_InstalledPatchKitLevel}, ERROR_PatchKitIsOutdated
  76.  
  77.     PI_EditNCF_KEYSTRINGS
  78.  
  79.      'adtrstfx','alequefx','alldirfx','alwritfx','auddirfx','audnspfx',
  80.      'autodump','brdcstfx','chklanfx','clrdirfx','clsscrfx','comabrfx',
  81.      'comcopfx','comredfx','comsdsfx','comstpfx','comupdfx','credirfx',
  82.      'crtdirfx','diag410 ','dsprcsfx','duplicfx','eadflgfx','eapurgfx',
  83.      'eavlmtfx','eofredfx','evntrpfx','exvmgtfx','fndsymfx','getdirfx',
  84.      'getvinfx','getvolfx','ipxhanfx','ipxstafx','lckstnfx','lsllckfx',
  85.      'lsltimfx','macreqfx','mapconfx','maxpckfx','memcolfx','migfrefx',
  86.      'miginifx','migkeyfx','migstrfx','mmdismfx','mmmirrfx','mmremmfx',
  87.      'msinpqfx','msshim  ','mssmemfx','msvolmfx','nsmodffx','nswildfx',
  88.      'opnclbfx','pboutwfx','prgdelfx','prgfilfx','protidfx','pubrecfx',
  89.      'readflfx','regopnfx','relquefx','rendirfx','respolfx','ripfix  ',
  90.      'rpcerrfx','rtconnfx','serperfx','shrramfx','shrresfx','srsyncfx',
  91.      'srvprsfx','srvstpfx','stdrchfx','stpsrvfx','sublckfx','subspcfx',
  92.      'synmemfx','synmsgfx','synthrfx','timresfx','totblkfx','unkspcfx',
  93.      'vgenfufx','watdogfx','worktdfx','swtintfx',
  94.      'PM410'   ,'PMLOAD  ','Activate Server',
  95.      ''   ; Last entry MUST be null string (indicates end of list)
  96.  
  97.      ; Note that SMPSHMFX is not in the list because the SMP install
  98.      ; handles that patch explicitely on its own.
  99.  
  100.  
  101.     ;********* Get the source and destination paths
  102.  
  103.     GotoIfEqual 0, '%{PI_OSType}', SetupPaths_NATIVE
  104.     GotoIfEqual 1, '%{PI_OSType}', SetupPaths_NWOS2
  105.     GotoIfEqual 2, '%{PI_OSType}', SetupPaths_SFT3
  106.  
  107.     Display 0, 'Unknown OS Type %{PI_OSType}'
  108.     Goto ERROR_EXIT
  109.  
  110.     Label SetupPaths_NATIVE
  111.      GetPath startupDir, 3, '%{NWBOOT}', '', NWBOOT
  112.      GetPath autoexecDir, 3, 'SYS:SYSTEM', ''
  113.  
  114. ;        SetVar RelativePatchPath, '\\%{PatchKitID}'
  115.      SetVar RelativePatchPath, '\\PK411'
  116.      GetPath PatchSrc,  3, '%{NWSRC}%{RelativePatchPath}', '', NWSRC
  117. ;        GetPath PatchDest, 3, '%{NWBOOT}\\PATCHES%{RelativePatchPath}', '', NWBOOT
  118.      GetPath PatchDest, 3, '%{NWBOOT}', '', NWBOOT
  119.  
  120.      GetPath SourceBootDrive,  3, '%{NWSRC}\\BOOT', '', NWSRC
  121.      GetPath DestBootDrive, 3, '%{NWBOOT}', '', NWBOOT
  122.  
  123.      GetPath SourceSYSDrive,  3, '%{NWSRC}\\SYS', '', NWSRC
  124.      SetVar DestSYSDrive, "SYS:"
  125.      
  126.      GetPath MPR30, 3, '%{NWSRC}\\MPR\\30', '', NWSRC
  127.      GetPath MPR31, 3, '%{NWSRC}\\MPR\\31', '', NWSRC
  128.  
  129.      Goto InstallPatches_NonSFT3
  130.  
  131.     Label SetupPaths_NWOS2
  132.      GetPath startupDir, 3, '%{NWBOOT}', '', NWBOOT
  133.      GetPath autoexecDir, 3, 'SYS:SYSTEM', ''
  134.  
  135. ;        SetVar RelativePatchPath, '\\%{PatchKitID}'
  136.      SetVar RelativePatchPath, '\\pk411'
  137.      GetPath PatchSrc,  3, '%{NWSRC}%{RelativePatchPath}', '', NWSRC
  138. ;        GetPath PatchDest, 3, '%{NWBOOT}\\PATCHES%{RelativePatchPath}', '', NWBOOT
  139.      GetPath PatchDest, 3, '%{NWBOOT}', '', NWBOOT
  140.  
  141.      GetPath SourceBootDrive,  3, '%{NWSRC}\\BOOT', '', NWSRC
  142.      GetPath DestBootDrive, 3, '%{NWBOOT}', '', NWBOOT
  143.  
  144.      GetPath SourceSYSDrive,  3, '%{NWSRC}\\SYS', '', NWSRC
  145.      SetVar DestSYSDrive, "SYS:"
  146.  
  147.      GetPath MPR30, 3, '%{NWSRC}\\MPR\\30', '', NWSRC
  148.      GetPath MPR31, 3, '%{NWSRC}\\MPR\\31', '', NWSRC
  149.  
  150.      Goto InstallPatches_NonSFT3
  151.  
  152.     Label SetupPaths_SFT3
  153.      GetPath autoexecDir, 3, 'SYS:SYSTEM', '', NWBOOT
  154.  
  155. ;        SetVar RelativePatchPath, '\\%{PatchKitID}'
  156.      SetVar RelativePatchPath, '\\PK411'
  157.      GetPath PatchSrc,  3, '%{NWSRC}%{RelativePatchPath}', '', NWSRC
  158.  
  159.      GetPath SourceBootDrive,  3, '%{NWSRC}\\BOOT', '', NWSRC
  160.  
  161.      GetPath SourceSYSDrive,  3, '%{NWSRC}\\SYS', '', NWSRC
  162.      SetVar DestSYSDrive, 'SYS:'
  163.  
  164.      GetPath MPR30, 3, '%{NWSRC}\\MPR\\30', '', NWSRC
  165.      GetPath MPR31, 3, '%{NWSRC}\\MPR\\31', '', NWSRC
  166.  
  167.      Goto InstallPatches_SFT3
  168.  
  169.  
  170. ; ***************************************************************
  171. ; ***************************************************************
  172.  
  173. Label InstallPatches_NonSFT3
  174.  
  175.     Display 2, "Support Pack %{PatchKitID} for NetWare v4.11 is about to be installed."
  176.  
  177.     ;********* Copy Patches
  178.     CopyFile 1, 1, 1, 1, 0, PatchSrc, '', '', '',PatchDest, '', '', '', 0
  179.  
  180.     ;********* Copy system NLMS TO NWBOOT AND SYS: if any are present on the source.
  181.     ;********* Copy to the SYS: Volume 
  182.     CopyFile 1, 1, 0, 1, 0, SourceSYSDrive, '', '', '', DestSYSDrive, '', '', '', 0
  183.  
  184.     ;********* Copy to the BOOT Drive.
  185.     CopyFile 1, 1, 0, 1, 0, SourceBootDrive, '', '', '', DestBootDrive, '', '', '', 0
  186.  
  187.     ;********* Copy IntranetWare Specific file here.
  188.     GotoIfEqual 0, %{InstallIntranetWare}, NoInstallIntranetWare
  189.      
  190.      ;********* Copy the MPR31 Product and also its associated NLS Files.
  191.      Display 0, "PINSTALL.NLM will now be invoked to update Multiprotocol Router 3.1 files.  Follow the prompts."
  192. ;       CopyFile 0, 1, 0, 1, 0, MPR31, '', '', '', autoexecDir, '', '', '', 4
  193. ;       CopyFile 0, 1, 0, 1, 0, '%{MPR31}\\NLS\\%{PI_LanguageID}', '', '', '', 'SYS:\\SYSTEM\\NLS\\%{PI_LanguageID}', '', '', '', 4
  194.      CopyFile 1, 1, 0, 1, 0, mpr31, '', '', '', TempInstallDir, '', '', '', 4
  195.      NLMExec 1, '%{TempInstallDir}\\NIAS_PTF\\DISK1\\pinstall', ccode
  196.  
  197.     Label NoInstallIntranetWare 
  198.  
  199.     ;********* Copy NetWare Specific file here.
  200.     GotoIfEqual 0, %{InstallNetWare}, NoInstallNetWare
  201.  
  202.      ;********* Copy the MPR30 Product and also its associated NLS Files.
  203.      Display 0, "PINSTALL.NLM will now be invoked to update a subset of Multiprotocol Router 3.0 files contained in NetWare 4.11."
  204. ;       CopyFile 0, 1, 0, 1, 0, '%{MPR30}\\NLS\\%{PI_LanguageID}', '', '', '', 'SYS:\\SYSTEM\\NLS\\%{PI_LanguageID}', '', '', '', 4
  205. ;    CopyFile 0, 1, 0, 1, 0, MPR30, '', '', '', autoexecDir, '', '', '', 4
  206.      CopyFile 1, 1, 0, 1, 0, MPR30, '', '', '', TempInstallDir, '', '', '', 4
  207.      NLMExec 1, '%{TempInstallDir}\\pinstall', ccode
  208.  
  209.     Label NoInstallNetWare 
  210.  
  211. ;    ;********* Test for Language 
  212. ;    GotoIfEqual 1, %{PI_LanguageID}, 1Language
  213. ;    GotoIfEqual 2, %{PI_LanguageID}, 2Language
  214. ;    GotoIfEqual 3, %{PI_LanguageID}, 3Language
  215. ;    GotoIfEqual 4, %{PI_LanguageID}, 4Language
  216. ;    GotoIfEqual 5, %{PI_LanguageID}, 5Language
  217. ;    GotoIfEqual 6, %{PI_LanguageID}, 6Language
  218. ;    GotoIfEqual 7, %{PI_LanguageID}, 7Language
  219. ;    GotoIfEqual 8, %{PI_LanguageID}, 8Language
  220. ;    GotoIfEqual 12, %{PI_LanguageID}, 12Language
  221. ;    GotoIfEqual 14, %{PI_LanguageID}, 14Language
  222. ;    Goto EXIT_LANGUAGE
  223. ;
  224. ;    ;********* Copy English Files here
  225. ;    Label 4Language
  226. ;
  227. ;        Display 2, "Updating Language files."
  228. ;        CopyFile 0, 1, 0, 1, 0, '%{NWSRC}\\NLS\\%{PI_LanguageID}', '', '', '', 'SYS:\\SYSTEM\\NLS\\%{PI_LanguageID}', '', '', '', 4
  229. ;
  230. ;    Goto EXIT_LANGUAGE
  231. ;
  232. ;    Label EXIT_LANGUAGE
  233.  
  234.  
  235.     ;********* Synchronize SYS:\SYSTEM <---> NWBOOT 
  236. ;    Display 2, "Sychronizing %{NWBOOT} with SYS:\SYSTEM"
  237. ;    CopyFile 0, 1, 0, 1, 0, autoexecDir, '', '', '', NWBOOT, '', '', '', 9
  238.  
  239.      Display 2, "Updating files on %{NWBOOT} with SYS:\SYSTEM"
  240.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'CNE2100.LDI', '', '', NWBOOT, '', '', '', 9
  241.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'INETCFG.NLM', '', '', NWBOOT, '', '', '', 9
  242.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'MSM.NLM', '', '', NWBOOT, '', '', '', 9
  243.    ;  CopyFile 0, 0, 0, 1, 0, autoexecDir, 'MSM31X.NLM', '', '', NWBOOT, '', '', '', 9
  244.   ;   CopyFile 0, 0, 0, 1, 0, autoexecDir, 'NBI31X.NLM', '', '', NWBOOT, '', '', '', 9
  245.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'NE1500T.LAN', '', '', NWBOOT, '', '', '', 9
  246.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'NTR2000.LAN', '', '', NWBOOT, '', '', '', 9
  247.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'SMP.NLM', '', '', NWBOOT, '', '', '', 9
  248.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'TCPIP.NLM', '', '', NWBOOT, '', '', '', 9
  249.  
  250.     Display 2, "Done copying files."
  251.  
  252.     ;********* Edit the NCF FILES
  253.  
  254.     Display 2, "Modifying STARTUP.NCF, comments added to highlight changes, original file renamed STARTUP.PT"
  255.  
  256.     GetPath startupDir, 3, '%{NWBOOT}', '', NWBOOT
  257.     GetPath autoexecDir, 3, 'SYS:SYSTEM', ''
  258.  
  259.     ;--- Edit STARTUP.NCF
  260.  
  261.     ; Define the list of lines to be added at the top of the NCF file
  262.     ; Clear the list of lines
  263.    ; PI_EditNCF_ADDLINE ''        ; (not adding anything)
  264.     ;PI_EditNCF_ADDLINE '; The following lines were moved and/or added by the %{PatchKitID} Support Pack installation'
  265.    ; PI_EditNCF_ADDLINE 'LOAD %{PatchDest}\\PK411.NLM'
  266.  
  267.  
  268.     GotoIfEqual 1, %{InstallNetWare}, CommentPMLoadIT
  269.      PI_EditNCF_ADDLINE '; End of modifications made by Support Pack installation'
  270.      PI_EditNCF_ADDLINE ' ' ;Add blank Line
  271.  
  272.      Goto EditContinue
  273.     Label CommentPMLoadIT
  274.      PI_EditNCF_ADDLINE '; End of modifications made by Support Pack installation'
  275.      PI_EditNCF_ADDLINE ' ' ;Add blank Line
  276.  
  277.     Label EditContinue
  278.  
  279.     PI_EditNCF startupDir, 'STARTUP.NCF', '.PT', ccode
  280.  
  281.     ;--- Edit AUTOEXEC.NCF
  282.  
  283.     ; Clear the list of lines
  284.     PI_EditNCF_ADDLINE ''        ; (not adding anything)
  285.  
  286.     PI_EditNCF autoexecDir, 'AUTOEXEC.NCF', '.PT', ccode
  287.  
  288.     ;********* Swap the loader
  289.  
  290.     ;NetWare for OS/2 does not need LOADER.EXE SWAPPED.
  291. ;    GotoIfEqual 1, '%{PI_OSType}', SkipInstallLoader_ForNWOS2
  292.      Display 2, "Updating SERVER.EXE with a new version of LOADER.EXE."
  293. ;        NLMExec 1, '%{PatchDest}\\LSWAP %{PatchDest}\\LOADER.EXE %{NWBOOT}\\SERVER.EXE', ccode
  294.      NLMExec 1, '%{NWBOOT}\\LSWAP %{NWBOOT}\\LOADER.EXE %{NWBOOT}\\SERVER.EXE', ccode
  295. ;    Label SkipInstallLoader_ForNWOS2
  296.  
  297.     ;********* Load PK411 and the patches
  298.  
  299.    ; Display 2, "Loading PK411"
  300.    ; NLMExec 0, '%{PatchDest}\\PK411.NLM', ccode
  301.  
  302. ;    Display 2, "Executing PMLOAD console command\n"
  303. ;    Console 'PMLOAD %{PatchDest}\\START_PT', 5
  304. ;
  305. ;    GotoIfEqual 1, %{InstallNetWare}, DontLoadIT
  306. ;
  307. ;        Console 'PMLOAD %{PatchDest}\\START_IT', 2
  308.  
  309.     Label DontLoadIT
  310.  
  311.     Goto COMMON_FINISH_UP
  312.  
  313. ; ***************************************************************
  314. ; ***************************************************************
  315.  
  316. Label InstallPatches_SFT3
  317.  
  318.     ;*********  Stuff that happens once
  319.  
  320.     Display 2, "Support Pack %{PatchKitID} for NetWare v4.11 SFT3 is about to be installed."
  321.  
  322.     ; Note that PI_ICMD.NLM assumes that PI_IOCON.NLM and PI_IOMKD.NLM are
  323.     ; located in SYS:SYSTEM.
  324.     CopyToServer SYSTEM, PI_IOCON.NLM, '', ''
  325.     CopyToServer SYSTEM, PI_IOMKD.NLM, '', ''
  326.  
  327.     ;********* Copy system NLMS TO NWBOOT AND SYS: if any are present on the source.
  328.     ;********* Copy to the SYS: Volume
  329.     Display 2, "Copying files to SYS:\\... including sub-directories."
  330.     CopyFile 1, 1, 0, 1, 0, SourceSYSDrive, '', '', '',DestSYSDrive, '', '', '', 0
  331.  
  332.     ;********* Copy IntranetWare Specific file here.
  333.     GotoIfEqual 0, %{InstallIntranetWare}, NoInstallIntranetWare
  334.      
  335.      Display 0, "PINSTALL.NLM will now be invoked to update Multiprotocol Router 3.1 files."
  336.      CopyFile 1,1,0,1,0, mpr31, '', '', '', TempInstallDir, '', '', '', 4
  337.      NLMExec 1, '%{TempInstallDir}\\NIAS_PTF\\DISK1\\pinstall', ccode
  338.  
  339.  
  340.     Label NoInstallIntranetWare 
  341.  
  342.     ;********* Copy NetWare Specific file here.
  343.     GotoIfEqual 0, %{InstallNetWare}, NoInstallNetWare
  344.  
  345.      Display 0, "PINSTALL.NLM will now be invoked to update subset of Multiprotocol Router 3.0 files contained in NetWare 4.11."
  346.      CopyFile 1, 1, 0, 1, 0, MPR30, '', '', '', TempInstallDir, '', '', '', 4
  347.      NLMExec 1, '%{TempInstallDir}\\pinstall', ccode
  348.  
  349.  
  350.     Label NoInstallNetWare 
  351.  
  352.     GetDOSServer saveEngineNum
  353.     SetVar engineNum, 0
  354.  
  355.     Label SFT3_DoOtherEngine                   
  356.  
  357.      ;*********  Stuff that happens for each engine
  358.      SetDOSServer %{engineNum}, ccode
  359.      GotoIfNEqual 0, %{ccode}, SFT3_IOEngineNotPresent
  360.  
  361.      GetPath startupDir, 3, '%{NWBOOT}', '', NWBOOT
  362.  
  363. ;        GetPath PatchDest, 3, '%{NWBOOT}\\PATCHES%{RelativePatchPath}', '', NWBOOT
  364.      GetPath PatchDest, 3, '%{NWBOOT}', '', NWBOOT
  365.      GetPath DestBootDrive, 3, '%{NWBOOT}', '', NWBOOT
  366.  
  367.      ;********* Copy Patches
  368.      Display 2, "Copying dynamic updates files."
  369.      CopyFile 1, 1, 1, 1, 0, PatchSrc, '', '', '',PatchDest, '', '', '', 0
  370.  
  371.      ;********* Copy system NLMS TO NWBOOT AND SYS: if any are present on the source.
  372.      ;********* Copy to the BOOT Drive.
  373.      Display 2, "Copying files to Boot drive"
  374.      CopyFile 1, 1, 0, 1, 0, SourceBootDrive, '', '', '',DestBootDrive, '', '', '', 0
  375.  
  376.      ;********* Synchronize SYS:\SYSTEM <---> NWBOOT 
  377. ;        Display 2, "Sychronizing %{NWBOOT} with SYS:\SYSTEM"
  378. ;        CopyFile 0, 1, 0, 1, 0, autoexecDir, '', '', '', NWBOOT, '', '', '', 9
  379.  
  380.      Display 2, "Updating files on %{NWBOOT} with SYS:\SYSTEM"
  381.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'CNE2100.LDI', '', '', NWBOOT, '', '', '', 9
  382.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'INETCFG.NLM', '', '', NWBOOT, '', '', '', 9
  383.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'MSM.NLM', '', '', NWBOOT, '', '', '', 9
  384.      ;CopyFile 0, 0, 0, 1, 0, autoexecDir, 'MSM31X.NLM', '', '', NWBOOT, '', '', '', 9
  385.      ;CopyFile 0, 0, 0, 1, 0, autoexecDir, 'NBI31X.NLM', '', '', NWBOOT, '', '', '', 9
  386.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'NE1500T.LAN', '', '', NWBOOT, '', '', '', 9
  387.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'NTR2000.LAN', '', '', NWBOOT, '', '', '', 9
  388.     ; CopyFile 0, 0, 0, 1, 0, autoexecDir, 'SMP.NLM', '', '', NWBOOT, '', '', '', 9
  389.      CopyFile 0, 0, 0, 1, 0, autoexecDir, 'TCPIP.NLM', '', '', NWBOOT, '', '', '', 9
  390.  
  391.  
  392.      Display 2, "Done copying files."
  393.  
  394.      ;********* Edit the NCF FILES
  395.      ;----- Edit IOSTART.NCF
  396.  
  397.      Display 2, "Modifying IOSTART.NCF- comments added to highlight changes"
  398.  
  399.      ; Clear the list of lines
  400.      PI_EditNCF_ADDLINE ''
  401.  
  402.      ; Define the list of lines to be added at the top of the NCF file
  403.  
  404.      PI_EditNCF_ADDLINE '; The following lines were moved and/or added by the %{PatchKitID} Support Pack installation'
  405.  
  406.      ; Search for a "SET NEW START ADDRESS FOR UNCLAIMED..." command in IOSTART.NCF.
  407.  
  408.      PI_SrchNCF startupDir, 'IOSTART.NCF', 'New Start Address For Unclaimed Memory Block', NewStartReturnedLine, ccode
  409.      GotoIfNEqual  0, '%{ccode}', SkipNewStartAddline
  410.          PI_EditNCF_ADDLINE '%{NewStartReturnedLine}'
  411.      Label SkipNewStartAddline
  412.  
  413.      ; Search for a "SET NEW END ADDRESS FOR UNCLAIMED..." command in IOSTART.NCF.
  414.  
  415.      PI_SrchNCF startupDir, 'IOSTART.NCF', 'New End Address For Unclaimed Memory Block', NewEndReturnedLine, ccode
  416.      GotoIfNEqual 0, '%{ccode}', SkipNewEndAddline
  417.          PI_EditNCF_ADDLINE '%{NewEndReturnedLine}'
  418.      Label SkipNewEndAddline
  419.  
  420.      ;PI_EditNCF_ADDLINE 'LOAD %{PatchDest}\\PK411.NLM'
  421. ;        PI_EditNCF_ADDLINE 'PMLOAD %{PatchDest}\\IO\\START_PT'
  422.  
  423. ;    GotoIfEqual 1, %{InstallNetWare}, SFT3CommentPMLoadIT1
  424. ;            PI_EditNCF_ADDLINE 'PMLOAD %{PatchDest}\\IO\\START_IT'
  425.          PI_EditNCF_ADDLINE '; End of modifications made by Support Pack installation'
  426.          PI_EditNCF_ADDLINE ' ' ;Add blank Line
  427.          Goto SFT3EditContinue1
  428.      Label SFT3CommentPMLoadIT1
  429. ;            PI_EditNCF_ADDLINE '; PMLOAD %{PatchDest}\\IO\\START_IT'
  430.          PI_EditNCF_ADDLINE '; End of modifications made by Support Pack installation'
  431.          PI_EditNCF_ADDLINE ' ' ;Add blank Line
  432.      Label SFT3EditContinue1
  433.  
  434.      ; Now actually edit the NCF file...
  435.  
  436.      PI_EditNCF startupDir, 'IOSTART.NCF', '.PT', ccode
  437.  
  438.      ;----- Edit IOAUTO.NCF
  439.  
  440.      ; Clear the list of lines
  441.      PI_EditNCF_ADDLINE ''        ; (not adding anything)
  442.  
  443.      PI_EditNCF startupDir, 'IOAUTO.NCF', '.PT', ccode
  444.  
  445.      ;----- Edit MSSTART.NCF
  446.  
  447.      Display 2, "Modifying MSSTART.NCF"
  448.  
  449.      ; Clear the list of lines
  450.      PI_EditNCF_ADDLINE ''        ; (not adding anything)
  451.  
  452.      ; Define the list of lines to be added at the top of the NCF file
  453.      PI_EditNCF_ADDLINE '; The following two lines were added by the %{PatchKitID} Support Pack installation'
  454. ;    PI_EditNCF_ADDLINE 'LOAD %{PatchDest}\\PK411.NLM'
  455. ;        PI_EditNCF_ADDLINE 'PMLOAD %{PatchDest}\\MS\\START_PT'
  456.     
  457.      GotoIfEqual 1, %{InstallNetWare}, SFT3CommentPMLoadIT2
  458. ;            PI_EditNCF_ADDLINE 'PMLOAD %{PatchDest}\\MS\\START_IT'
  459.          PI_EditNCF_ADDLINE ' ' ;Add blank Line
  460.  
  461.          Goto SFT3EditContinue2
  462.      Label SFT3CommentPMLoadIT2
  463. ;            PI_EditNCF_ADDLINE '; PMLOAD %{PatchDest}\\MS\\START_IT'
  464.          PI_EditNCF_ADDLINE ' ' ;Add blank Line
  465.  
  466.      Label SFT3EditContinue2
  467.  
  468.      PI_EditNCF startupDir, 'MSSTART.NCF', '.PT', ccode
  469.  
  470.      ;----- Edit MSAUTO.NCF
  471.  
  472.      ; Clear the list of lines
  473.      PI_EditNCF_ADDLINE ''        ; (not adding anything)
  474.  
  475.      PI_EditNCF autoexecDir, 'MSAUTO.NCF', '.PT', ccode
  476.  
  477.      ;********* Swap the loader
  478.  
  479.      Display 2, "Updating MSERVER.EXE with latest version of LOADER"
  480. ;        NLMExec 1, '%{PatchDest}\\LSWAP %{PatchDest}\\LOADER.EXE %{NWBOOT}\\MSERVER.EXE', ccode
  481.      NLMExec 1, '%{NWBOOT}\\LSWAP %{NWBOOT}\\LOADER.EXE %{NWBOOT}\\MSERVER.EXE', ccode
  482.      ;********* Load PK411 and patches in IOEngine
  483.  
  484.      ;Display 2, "Loading PK411 in IOEngine"
  485.      ;NLMExec_IO 0, '%{PatchDest}\\PK411.NLM', ccode
  486.  
  487.      ;Display 2, "Loading IOEngine patches\n"
  488.      ;Console_IO 'PMLOAD %{PatchDest}\\IO\\START_PT', 5
  489.  
  490.      GotoIfEqual 1, %{InstallNetWare}, SFT3DontLoadIT_IO
  491.  
  492.         ; Console_IO 'PMLOAD %{PatchDest}\\IO\\START_IT', 2
  493.  
  494.      Label SFT3DontLoadIT_IO
  495.  
  496. Label SFT3_IOEngineNotPresent_continue
  497.  
  498.      ValueAdd engineNum, 1
  499.  
  500.     GotoIfEqual 1, '%{engineNum}', SFT3_DoOtherEngine
  501.  
  502.     ;********* Set DOS server back to original engine number
  503.  
  504.     SetDOSServer %{saveEngineNum}, ccode
  505.  
  506.     ;********* Load PK411 and patches in MSEngine
  507.  
  508.     ;Display 2, "Loading PK411 in MSEngine"
  509.     ;NLMExec 0, '%{PatchDest}\\PK411.NLM', ccode
  510.  
  511.    ; Display 2, "Loading MSEngine patches\n"
  512.  ;  Console 'PMLOAD %{PatchDest}\\MS\\START_PT', 5
  513.  
  514.     ;GotoIfEqual 1, %{InstallNetWare}, SFT3DontLoadIT_MS
  515.  
  516.      ;Console 'PMLOAD %{PatchDest}\\MS\\START_IT', 2
  517.  
  518.     ;Label SFT3DontLoadIT_MS
  519.  
  520.     ;********* Finished
  521.  
  522.     Goto COMMON_FINISH_UP
  523.  
  524. Label SFT3_IOEngineNotPresent
  525.  
  526.     display 0, 'IOEngine[%{engineNum}] not present (will be skipped)'
  527.     Goto SFT3_IOEngineNotPresent_continue
  528.  
  529. ; ***************************************************************
  530. ; ***************************************************************
  531.  
  532. ; Common exit stuff
  533.  
  534. Label ERROR_MustSelectOneOption
  535.  
  536.     display 0, 'ERROR: More than one option was selected, select ONE of the two file groups only.'
  537.     Goto CLEANUP    ; Skip the CLEANUP stuff (we never copied anything)
  538.  
  539. Label ERROR_PatchKitIsOutdated
  540.  
  541.     display 0, 'ERROR: Support Pack is outdated.\n
  542.        This Support Pack (%{PatchKitID}), is older than currently installed Support Pack (%{PI_InstalledPatchKitID}).'
  543.     Goto CLEANUP
  544.  
  545. Label COMMON_FINISH_UP
  546.  
  547.     ;********* Remove old records (we now just use OS_PATCHES)
  548.     Display 2, "Removing old records from PRODUCT.DAT file"
  549.     NLMExec 1, 'SYS:\\SYSTEM\\UINSTALL 410PT3', ccode
  550.     NLMExec 1, 'SYS:\\SYSTEM\\UINSTALL 410PT4', ccode
  551.     NLMExec 1, 'SYS:\\SYSTEM\\UINSTALL 410IT6'  ccode
  552.     NLMExec 1, 'SYS:\\SYSTEM\\UINSTALL 410PT6'  ccode
  553.  
  554.  
  555. ;    ;********* Update OS_PATCHES record in PRODUCTS.DAT
  556. ;    ;We have a problem using %{PatchKitID} variable as part of the ProductRecord discription.
  557. ;    ;NetWare for OS/2 will page fault for some customers adding the ProductRecord.
  558. ;    GotoIfEqual 1, '%{PI_OSType}', SkipProductRecord_ForNWOS2
  559. ;        ProductRecord PATCHKIT, 1, "NetWare v4.11 Support Pack 411SP(Rel_Ver. B)"
  560. ;    Label SkipProductRecord_ForNWOS2
  561.  
  562.     ;********* Add IntranetWare ProductRecord here.
  563. ;    GotoIfEqual 0, %{InstallIntranetWare}, NoIntranetWareProductRecord
  564.      
  565.      ProductRecord SPACK, 1, "V1.0 Support Pack for NetWare 4.11 (10/96)"
  566.  
  567.     Label NoIntranetWareProductRecord
  568.  
  569.     ;********* Add NetWare ProductRecord here.
  570. ;    GotoIfEqual 0, %{InstallNetWare}, NoNetWareProductRecord
  571. ;
  572. ;        ProductRecord SPACK, 1, "V1.0 Support Pack for NetWare 4.11 (10/96)"
  573. ;
  574. ;    Label NoNetWareProductRecord 
  575.     ; Fall through to CLEANUP
  576.  
  577.     ;********* Setup closeing screens dependent on the version of OS.
  578.     GotoIfEqual 0, '%{PI_OSType}', CloseScreen_NATIVE
  579.     GotoIfEqual 1, '%{PI_OSType}', CloseScreen_NWOS2
  580.     GotoIfEqual 2, '%{PI_OSType}', CloseScreen_SFT3
  581.  
  582.     Label CloseScreen_SFT3
  583.     Display 0,     "Support Pack installation is complete!\n\n
  584.  
  585.           ISSUE:\n\n
  586.  
  587.          NetWare SFTIII parses the IOSTART.NCF by scanning the file twice.\n
  588.          First pass to scan for all SET parameters, except for the following:\n\n
  589.               
  590.           Set New Start Address For Unclaimed Memory Block\n
  591.           Set New End Address For Unclaimed Memory Block\n\n
  592.  
  593.          Second pass to scan for LOAD commands and the two SET parameters listed above.
  594.          The LOAD command and SET parameters are executed in the order that they apear
  595.          in the NCF file..\n\n
  596.  
  597.          This Support Pack installation makes an attempt to move the two SET parameters above
  598.          the LOAD statement for the Support Pack."
  599.           
  600.     Display 0,    "Novell recommends that all SFTIII configurations have ALL SET paramters before
  601.          ALL LOAD commands\n\n
  602.  
  603.          Novell also recommends that all SFTIII installations have a minimum of 12 Meg for
  604.          for each IO Engine by doing the following in the IOSTART.NCF\n\n
  605.  
  606.           Set New Start Address For Unclaimed Memory Block=12000000\n\n
  607.          
  608.          By doing this the following ABEND can be avoided:    
  609.          ABEND: SERVER-4.10-385: Insufficient memory to available to allocate enough receive buffers.
  610.     is a result of having insufficient IOEngine memory and also loading the patches be for
  611.          the SET parameters.\n\n
  612.                
  613.          Review the NCF files for accuracy then DOWN the server and RESTART SERVER to complete the Support Pack installation."
  614.      Goto CLEANUP
  615.  
  616.     Label CloseScreen_NATIVE
  617.     Label CloseScreen_NWOS2
  618.      Display 0, "Support Pack installation is complete!\n\nPlease review the NCF files for accuracy, DOWN the server and then RESTART SERVER to complete the installation of Support Pack. Thank you for installing the Support Pack."
  619.     Goto CLEANUP
  620.     
  621. Label CLEANUP
  622.  
  623.     EraseFile 0, TempInstallDir, '','',''
  624.     EraseFile 0, TempSystemDir, 'PI_IOMKD.NLM','',''
  625.     EraseFile 0, TempSystemDir, 'PI_IOCON.NLM','',''
  626.  
  627. Label EXIT
  628.