[Identification] OptionType = NetService [Options] RAS [GeneralConstants] Chosen = "ON" NotChosen = "OFF" TRUE = 1 FALSE = 0 NoTitle = 0 FLibraryErrCtl = 1 OldVersionExisted = FALSE [FileConstants] HandleNull = "" PORTSDLGHANDLE = $(HandleNull) RasServerOption = "Server" RasClientOption = "Client" RasAdminOption = "Admin" RasClientAndServerOption = "ClientAndServer" !PROXY_INSTALLED = FALSE ROUTER_TYPE_RAS = 1 ROUTER_TYPE_LAN = 2 ROUTER_TYPE_WAN = 4 !Manufacturer = "Microsoft" !ProductMajorVersion = "4" !ProductMinorVersion = "0" ProductVersion = $(!ProductMajorVersion)"."$(!ProductMinorVersion) ProductOpSupport = 135 NetEventDLL = "%SystemRoot%\System32\netevent.dll" IoLogMsgDll = "%SystemRoot%\System32\drivers\IoLogMsg.dll" !RouterMsgDll = "%SystemRoot%\System32\mprmsg.dll" !RasEventTypeSupported = 31 RouterEventTypeSupported = 31 !HideComponent = 1 HideBindings = 0 fReviewBindings = 1 !RasInfName = "OEMNSVRA.INF" ProductFullInfName = $(!STF_CWDDIR)$(!RasInfName) RasDir = $(!STF_CWDDIR)RAS ProductPath = $(RasDir)"\" ProductRASName = "RAS" ProductRASImagePath = "%SystemRoot%\system32\ras" ProductRASSvcType = "service" NetRuleRASClass = "classRasService ""basic""" NetRuleRASType = "RasService classRasService" NetRuleRASUse = "system" !ProductPCIMACName = "PCIMAC" ProductRASSVRName = "RemoteAccess" ProductRASSVRImagePath = "%SystemRoot%\system32\mprouter.exe" ProductRASSVRSvcType = "service" NetRuleRASSVRClass = "classRasServer ""basic""" NetRuleRASSVRType = "RasServer classRasServer" NetRuleRASSVRUse = $(ProductRASSVRSvcType) NetRuleRASSVRBindForm = """RasServer"" yes yes container" NetRuleRASSVRBindable = {"classRasServer netBiosTransport non non 100",+ "classRasServer ipxTransport non non 100"} ProductROUTINGName = "Router" ProductROUTINGImagePath = "%SystemRoot%\system32\mprouter.exe" ProductROUTINGSvcType = "service" NetRuleROUTINGClass = "classRasServer ""basic""" NetRuleROUTINGType = "RasServer classRasServer" NetRuleROUTINGUse = $(ProductROUTINGSvcType) NetRuleROUTINGBindForm = """RasServer"" yes yes container" NetRuleROUTINGBindable = {"classRouter netBiosTransport non non 100",+ "classRouter ipxTransport non non 100"} PROTO_IP = 33 PROTO_IPX = 43 ProductRASMANName = "RasMan" ProductRASMANImagePath = "%SystemRoot%\system32\mprouter.exe" ProductRASMANSvcType = "service" NetRuleRASMANClass = "classRasManager ""basic""" NetRuleRASMANType = "RasManager classRasManager" NetRuleRASMANUse = $(ProductRASMANSvcType) NetRuleRASMANBindForm = """RasManager"" yes no container" NetRuleRASMANBindable = "" !ProductRASARPName = "RasArp" !ProductRASARPImagePath = "\SystemRoot\system32\drivers\rasarp.sys" !ProductWANARPName = "WanArp" !ProductWANARPImagePath = "\SystemRoot\system32\drivers\wanarp.sys" !ProductIPFLTName = "IPFilterDriver" !ProductIPFLTImagePath = "\SystemRoot\system32\drivers\ipfltdrv.sys" !ProductIPXPINGName = "IpxPing" !ProductIPXPINGImagePath = "%SystemRoot%\system32\mprouter.exe" !ProductNWLNKFWDName = "NwLnkFwd" !ProductNWLNKFWDImagePath = "\SystemRoot\system32\drivers\nwlnkfwd.sys" !ProductNWLNKFLTName = "NwLnkFlt" !ProductNWLNKFLTImagePath = "\SystemRoot\system32\drivers\nwlnkflt.sys" !ProductRASISNRIPName = "NwlnkRip" !ProductRASISNSAPName = "NwSapAgent" !ProductRASISNRIPImagePath = "\SystemRoot\system32\drivers\nwlnkrip.sys" !ProductRASISNSAPImagePath = "%SystemRoot%\system32\services.exe" !ProductRASAUTODIALName = "RasAuto" !ProductRASAUTODIALImagePath = "%SystemRoot%\system32\mprouter.exe" !ProductRASAUTODIALSvcType = "service" !ProductRASACDName = "RasAcd" !ProductRASACDImagePath = "\SystemRoot\system32\drivers\rasacd.sys" !ProductNDISWANName = "NdisWan" !ProductNDISWANImagePath = "\SystemRoot\system32\drivers\ndiswan.sys" ProductNDISWANSvcType = "kernel" ProductNDISWANType = "transport" !NetRuleNDISWANType = "ndisWanDrv ndisWanTransport" !NetRuleNDISWANClass = {"ndisWanTransport basic"} NetRuleNDISWANUse = $(ProductNDISWANType)" yes yes" !NetRuleNDISWANBindForm = """NdisWan"" yes no container" !NetRuleNDISWANBindable = + {"rasCapableTransport ndisWanAdapterDialIn non non 100",+ "rasCapableTransport ndisWanAdapterDialOut non non 100",+ "tcpipTransport ndisWanAdapterDialInIP non non 100",+ "tcpipTransport ndisWanAdapterDialOutIP non non 100",+ "netbtTransport ndisWanAdapterDialInIP non non 100",+ "netbtTransport ndisWanAdapterDialOutIP non non 100",+ "ipxTransport ndisWanAdapterDialInOutIPX non non 100",+ "bhService ndisWanAdapterBH non non 100",+ "ndisWanTransport ndisWanAdapterBH non non 100",+ "ndisWanTransport ndisWanAdapterDialIn non non 100",+ "ndisWanTransport ndisWanAdapterDialOut non non 100",+ "ndisWanTransport ndisWanAdapterDialInIP non non 100",+ "ndisWanTransport ndisWanAdapterDialOutIP non non 100",+ "ndisWanTransport ndisWanAdapterDialInOutIPX non non 100"} ProductRASASYMACName = "AsyncMac" ProductRASASYMACImagePath = "\SystemRoot\system32\drivers\asyncmac.sys" ProductRASASYMACType = "driver" ProductRASASYMACSvcType = "kernel" NetRuleRASASYMACType = "rasAsyMacDrv rasAsyMacDriver" NetRuleRASASYMACClass = {"rasAsyMacDriver basic"} NetRuleRASASYMACUse = $(ProductRASASYMACType) NetRuleRASASYMACBindForm = """RasAsyMac"" yes no container" !NetRuleRASASYMACBindable = + {"rasAsyMacDriver rasAsyMacAdapter non non 100"} !ProductRASHUBDIALINName = "RasHubDialin" !ProductRASHUBDIALOUTName = "RasHubDialout" !ProductRASHUBDIALINIPName = "RasHubDialinIp" !ProductRASHUBDIALOUTIPName = "RasHubDialoutIp" !ProductRASHUBDIALINOUTIPXName = "RasHubDialinoutIpx" !ProductNDISWANDIALINName = "NdisWanDialin" !ProductNDISWANDIALOUTName = "NdisWanDialout" !ProductNDISWANDIALINIPName = "NdisWanDialinIp" !ProductNDISWANDIALOUTIPName = "NdisWanDialoutIp" !ProductNDISWANDIALINOUTIPXName = "NdisWanDialinoutIpx" !NetRuleHardwareBHType = "ndisWanBH ndisWanAdapterBH" !NetRuleHardwareBHClass = {"ndisWanAdapterBH basic"} !NetRuleHardwareBHBindForm = " yes yes container" !NetRuleHardwareNDISWANBindForm = " yes yes container" !NetRuleHardwareDIALINType = "ndiswandialin ndisWanAdapterDialIn" !NetRuleHardwareDIALINClass = {"ndisWanAdapterDialIn basic"} !NetRuleHardwareDIALINBlock = {"lanmanServer ndisWanAdapterDialIn",+ "tcpipTransport ndisWanAdapterDialIn",+ "netbtTransport ndisWanAdapterDialIn",+ "ipxTransport ndisWanAdapterDialin",+ "lanmanWorkstation ndisWanAdapterDialIn"} !NetRuleHardwareDIALINIPType = "ndiswandialinIP ndisWanAdapterDialInIP" !NetRuleHardwareDIALINIPClass = {"ndisWanAdapterDialInIP basic"} !NetRuleHardwareDIALINIPBlock = {"lanmanServer ndisWanAdapterDialInIP",+ "nbfTransport ndisWanAdapterDialinIP",+ "ipxTransport ndisWanAdapterDialinIP",+ "lanmanWorkstation ndisWanAdapterDialInIP"} !NetRuleHardwareDIALOUTType = "ndiswandialout ndisWanAdapterDialOut" !NetRuleHardwareDIALOUTClass = {"ndisWanAdapterDialOut basic"} !NetRuleHardwareDIALOUTBlock = {"ipxTransport ndisWanAdapterDialOut"} !NetRuleHardwareDIALOUTIPType = "ndiswandialoutIP ndisWanAdapterDialOutIP" !NetRuleHardwareDIALOUTIPClass = {"ndisWanAdapterDialOutIP basic"} !NetRuleHardwareDIALOUTIPBlock = {"ipxTransport ndisWanAdapterDialOutIP",+ "nbfTransport ndisWanAdapterDialOutIP"} !NetRuleHardwareDIALINOUTIPXType = "ndiswandialinoutIPX ndisWanAdapterDialInOutIPX" !NetRuleHardwareDIALINOUTIPXClass = {"ndisWanAdapterDialInOutIPX basic"} !NetRuleHardwareDIALINOUTIPXBlock = {"nbfTransport ndisWanAdapterDialInOutIPX",+ "tcpipTransport ndisWanAdapterDialInOutIPX",+ "netbtTransport ndisWanAdapterDialInOutIPX"} NetRuleHardwareRASASYMACType = "rasAsyMac rasAsyMacAdapter" NetRuleHardwareRASASYMACBindForm = " yes yes container" NetRuleHardwareRASASYMACClass = {"rasAsyMacAdapter basic"} !ProductNDISTAPIName = "NdisTapi" !ProductNDISTAPIImagePath = "\SystemRoot\system32\drivers\ndistapi.sys" !RasPerfKeyName = "Performance" !RasPerfLibraryName = "rasctrs.dll" !RasPerfOpenFunction = "OpenRasPerformanceData" !RasPerfCloseFunction = "CloseRasPerformanceData" !RasPerfCollectFunction = "CollectRasPerformanceData" !RasCounterFileName = "rasctrs.ini" ProductKeyBase = $(!NTN_SoftwareBase)"\"$(!Manufacturer) ProductKeyName = $(!NTN_SoftwareBase)"\"$(!Manufacturer)"\"$(ProductRASName)"\CurrentVersion" ProductRouterName = $(!NTN_SoftwareBase)"\"$(!Manufacturer)"\"$(ProductROUTINGName)"\CurrentVersion" !NetworkCardKeyName = $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards" RasSvrKeyName = $(!NTN_ServiceBase)"\"$(ProductRASSVRName) !RouterKeyName = $(!NTN_ServiceBase)"\"$(ProductROUTINGName) RasSvrParamKeyName = $(!NTN_ServiceBase)"\"$(ProductRASSVRName)"\Parameters" !RasManSvcKeyName = $(!NTN_ServiceBase)"\"$(ProductRASMANName) !RasAcdKeyName = $(!NTN_ServiceBase)"\"$(!ProductRASACDName) !RasArpKeyName = $(!NTN_ServiceBase)"\"$(!ProductRASARPName) !RasIsnRipKeyName = $(!NTN_ServiceBase)"\"$(!ProductRASISNRIPName) !RasIsnSapKeyName = $(!NTN_ServiceBase)"\"$(!ProductRASISNSAPName) !NdisTapiKeyName = $(!NTN_ServiceBase)"\"$(!ProductNDISTAPIName) !RasManKeyName = $(!NTN_SoftwareBase)"\"$(!Manufacturer)"\"$(ProductRASMANName)"\CurrentVersion" !RasAutodialKeyName = $(!NTN_ServiceBase)"\"$(!ProductRASAUTODIALName) RasManParamKeyName = $(!NTN_ServiceBase)"\"$(ProductRASMANName)"\Parameters" RasManLinkageKeyName = $(!NTN_ServiceBase)"\"$(ProductRASMANName)"\Linkage" NdisWanParamKeyName = $(!NTN_ServiceBase)"\"$(!ProductNDISWANName)"\Parameters" NdisWanLinkageKeyName = $(!NTN_ServiceBase)"\"$(!ProductNDISWANName)"\Linkage" RasAsyMacKeyName = $(!NTN_ServiceBase)"\"$(ProductRASASYMACName) RasAsyMacParamKeyName = $(!NTN_ServiceBase)"\"$(ProductRASASYMACName)"\Parameters" RasMacLinkageKeyName = $(!NTN_ServiceBase)"\"$(ProductRASASYMACName)"\Linkage" RasTapiDevicesKeyName = $(!NTN_SoftwareBase)"\"$(!Manufacturer)"\"$(ProductRASName)"\TAPI DEVICES" LinkageKeyName = $(!NTN_ServiceBase)"\"$(Product$(Option)Name)"\Linkage" !ProductNDISWANKeyName = $(!NTN_SoftwareBase)"\"$(!Manufacturer)"\"$(!ProductNDISWANName)"\CurrentVersion" ProductRASASYMACKeyName = $(!NTN_SoftwareBase)"\"$(!Manufacturer)"\"$(ProductRASASYMACName)"\CurrentVersion" RasProtocolsKeyName = $(!NTN_SoftwareBase)"\"$(!Manufacturer)"\"$(ProductRASName)"\PROTOCOLS" !UtilityInf = "UTILITY.INF" subroutninf = "SUBROUTN.INF" RascfgDll = "RASCFG.DLL" Exit_Code = 0 ShellCode = 0 from = "" to = "" ExitCodeOk = 0 ExitCodeCancel = 1 ExitCodeFatal = 2 KeyNull = "" !MAXIMUM_ALLOWED = 33554432 !SERVICE_NO_CHANGE = 4294967295 !SERVICE_SHARE_INTERACT = 288 RegistryErrorIndex = NO_ERROR ServerSize = 820116 ClientSize = 634260 AdminSize = 513962 FInstallServer = $(Chosen) FInstallClient = $(Chosen) FInstallAdmin = $(Chosen) RoutingKeyList = ^(RoutingKeys, 1) RoutingValueList = ^(RoutingKeys, 2) [RoutingKeys] Name, "Router" ImagePath, "%SystemRoot%\system32\mprouter.exe" SvcType, "service" Class, "classRouter ""basic""" Type, "Router classRouter" Use, "service" BindForm, """Router"" yes yes container" Bindable, {"classRouter netBiosTransport non non 100",+ "classRouter ipxTransport non non 100"} MsgDll, "%SystemRoot%\System32\mprmsg.dll" EventType, 31 [UiVars] VolumeList = {} ? $(!LIBHANDLE) GetHardDriveLetters VolumeFreeList = {} ? $(!LIBHANDLE) GetHardDriveFreeSpace VolumeFSList = {} ? $(!LIBHANDLE) GetHardDriveFileSystems DestVolume = "" MinHelpID = 25000 MaxHelpID = 25999 [SystemVars] !STF_PROCESSOR = "" ? $(!LIBHANDLE) GetProcessor !STF_PLATFORM = "" ? $(!LIBHANDLE) GetPlatform !STF_WINDOWSPATH = "" ? $(!LIBHANDLE) GetWindowsNtDir !STF_NTPATH = $(!STF_WINDOWSPATH) !STF_WINDOWSSYSPATH = "" ? $(!LIBHANDLE) GetWindowsNtSysDir !STF_COMPUTERNAME = "" ? $(!LIBHANDLE) GetMyComputerName !STF_USERNAME = "" ? $(!LIBHANDLE) GetMyUserName !STF_FLOPPYLIST = {} ? $(!LIBHANDLE) GetFloppyDriveLetters !STF_UNUSEDDRIVES = {} ? $(!LIBHANDLE) GetUnusedDrives !STF_LANGUAGE = "" ? $(!LIBHANDLE) GetLanguage !STF_BUSTYPE = "" ? $(!LIBHANDLE) GetMyBusType !STF_BUSTYPELIST = "" ? $(!LIBHANDLE) GetMyBusTypeList !NTN_SoftwareBase = "Software" !NTN_ServiceBase = "System\CurrentControlSet\Services" !NTN_ScUseRegistry = "NO" [AvailableSystemMemory] SystemMemory = "" ? $(!LIBHANDLE) GetMemorySize MinSystemMemory = 2048 [date] !CurrentDate = {} ? $(!LIBHANDLE) GetSystemDate [HelpContextIDs] HC_RASOPTIONS = 25020 HC_CLIENTACCESS = 25021 HC_INSTALLOVER1 = 25022 HC_INSTALLOVER2 = 25023 [Identify] read-syms Identification set Status = STATUS_SUCCESSFUL set Identifier = $(OptionType) set Media = #("Source Media Descriptions", 1, 1) Return $(Status) $(Identifier) $(Media) [ReturnOptions] set Status = STATUS_FAILED set OptionList = {} set OptionTextList = {} set LanguageList = ^(LanguagesSupported, 1) Ifcontains(i) $($0) in $(LanguageList) goto returnoptions Else set Status = STATUS_NOLANGUAGE goto finish_ReturnOptions Endif returnoptions = + set OptionList = ^(Options, 1) set OptionTextList = ^(OptionsText$($0), 1) set Status = STATUS_SUCCESSFUL finish_ReturnOptions = + Return $(Status) $(OptionList) $(OptionTextList) [Shell Commands] set Exit_Code = $(!STF_ERROR_GENERAL) LoadLibrary "x" $(!STF_SRCDIR)\setupdll.dll !LIBHANDLE LoadLibrary "x" $(!STF_SRCDIR)\ncpa.cpl !NCPA_HANDLE ifstr(i) $(!LIBHANDLE) == "" Debug-Output "OEMNSVRA.INF: unable to load setupdll.dll" Shell subroutn.inf, SetupMessage $(!STF_LANGUAGE) "FATAL" $(UnableToLoadSetupdll) set Exit_Code = STATUS_USERCANCEL exit endif ifstr(i) $(!NCPA_HANDLE) == "" Debug-Output "OEMNSVRA.INF: unable to load ncpa.cpl" Shell subroutn.inf, SetupMessage $(!STF_LANGUAGE) "FATAL" $(UnableToLoadNcpaCpl) set Exit_Code = STATUS_USERCANCEL exit endif ifstr(i) $(RAS_INSTALL_MODE) == "" set RAS_INSTALL_MODE = install endif read-syms SystemVars detect SystemVars read-syms RasErrors$(!STF_LANGUAGE) OpenRegKey $(!REG_H_LOCAL) "" "System\CurrentControlSet\Control\ProductOptions" 33554432 KeyProductOption ifstr(i) $(KeyProductOption) != "" GetRegValue $(KeyProductOption) "ProductType" ProductTypeList set TempProductType = *($(ProductTypeList),4) ifstr(i) $(TempProductType) == "winnt" set !STF_PRODUCT = WINNT else-ifstr(i) $(TempProductType) == "lanmannt" set !STF_PRODUCT = LANMANNT else-ifstr(i) $(TempProductType) == "servernt" set !STF_PRODUCT = SERVERNT else Debug-Output "OEMNSVRA.INF: invalid Product Type "$(TempProductType) Shell subroutn.inf, SetupMessage $(!STF_LANGUAGE) "FATAL" $(UnknownProductType) set Exit_Code = STATUS_USERCANCEL exit endif CloseRegKey $(KeyProductOptions) else Debug-Output "OEMNSVRA.INF: unable to determine Product Type " Shell subroutn.inf, SetupMessage $(!STF_LANGUAGE) "FATAL" $(NoProductType) set Exit_Code = STATUS_USERCANCEL exit endif Debug-Output "OEMNSVRA.INF: Product Type "$(!STF_PRODUCT) ifstr(i) $(RAS_INSTALL_MODE) != "install" ifstr(i) $(RAS_INSTALL_MODE) != "configure" ifstr(i) $(RAS_INSTALL_MODE) != "deinstall" Debug-Output "OEMNSVRA.INF: Invalid RAS_INSTALL_MODE "$(RAS_INSTALL_MODE) Shell subroutn.inf, SetupMessage $(!STF_LANGUAGE) "STATUS" $(InvalidMode) set Exit_Code = STATUS_USERCANCEL exit endif endif endif set !NTN_InstallMode = $(RAS_INSTALL_MODE) Shell "" InstallOption $(!STF_LANGUAGE) "RAS" $(!STF_SRCDIR) "YES" "YES" "YES" ifint $($ShellCode) != $( !SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF: Failed to shell out to InstallOption" exit endif set Exit_Code = $($R0) ifstr(i) $($R0) == STATUS_SUCCESSFUL set Exit_Code = 1 endif Debug-Output "OEMNSVRA.INF: install returned "$($R0) FreeLibrary $(!LIBHANDLE) FreeLibrary $(!NCPA_HANDLE) exit [InstallOption] Debug-Output "In InstallOption section" set Status = STATUS_FAILED set Option = $($1) set SourceDir = $($2) set AddCopy = $($3) set DoCopy = $($4) set DoConfig = $($5) set LanguageList = ^(LanguagesSupported, 1) Ifcontains(i) $($0) NOT-IN $(LanguageList) Return STATUS_NOLANGUAGE endif StartWait set-subst LF = "\n" read-syms UiVars detect UiVars set !STF_NTPATH = $(!STF_WINDOWSSYSPATH) GetDriveInPath !STF_NTDRIVE $(!STF_WINDOWSSYSPATH) read-syms GeneralConstants read-syms FileConstants read-syms DialogConstants$(!STF_LANGUAGE) read-syms FileConstants$(!STF_LANGUAGE) read-syms RasErrors$(!STF_LANGUAGE) detect date detect version read-syms HelpContextIDs SetHelpFile $(!STF_CWDDIR)rassetup.hlp $(MinHelpID) $(MaxHelpID) set-title $(FunctionTitle) set to = Begin set from = Begin set CommonStatus = STATUS_SUCCESSFUL Debug-Output "OEMNSVRA.INF: STF_CWDDIR is: "$(!STF_CWDDIR) Debug-Output "OEMNSVRA.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE) Debug-Output "OEMNSVRA.INF: Option is: "$(Option) Debug-Output "OEMNSVRA.INF: NTN_SoftwareBase is: "$(!NTN_SoftwareBase) Debug-Output "OEMNSVRA.INF: NTN_ServiceBase is: "$(!NTN_ServiceBase) Shell "" CheckProxyInstalled Debug-Output "OEMNSVRA.INF: Proxy Service installed? "$(!PROXY_INSTALLED) Begin = + set !NETCARD_LIST = {} set ServerInstalled = FALSE set ClientInstalled = FALSE set AdminInstalled = FALSE set DoServer = TRUE set DoClient = TRUE set DoAdmin = TRUE set DoServerOnly = FALSE set DoClientOnly = FALSE set DoAdminOnly = FALSE set DoRas = FALSE set DoRasSvr = FALSE set DoRouter = FALSE set DoRasMan = FALSE set DoNdisWan = FALSE set DoRasAsyMac = FALSE IfStr(i) $(!NTN_InstallMode) == deinstall Set StartLabel = RemoveRas else-Ifstr(i) $(!NTN_InstallMode) == Update set StartLabel = UpgradeRas else-Ifstr(i) $(!NTN_InstallMode) == configure set StartLabel = ConfigureRas else-Ifstr(i) $(!NTN_InstallMode) == bind set StartLabel = BindingsRas else set StartLabel = InstallRas endif set from = Begin set to = end goto $(StartLabel) InstallRas = + StartWait Debug-Output "In InstallRas Section" Debug-Output "Origin is "$(!NTN_Origination) Debug-Output "Install Mode "$(!NTN_InstallMode) Debug-Output "Install phase "$(!NTN_InstallPhase) Debug-Output "Copy Flag is "$(DoCopy) Debug-Output "Option is "$(Option) Debug-Output "SrcDir is "$(SourceDir) Debug-Output "STF_WINDOWSPATH is "$(!STF_WINDOWSPATH) Debug-Output "Context Inf name "$(STF_CONTEXTINFNAME) Debug-Output "!STF_UNATTENDED is "$(!STF_UNATTENDED) Debug-Output "!STF_GUI_UNATTENDED is "$(!STF_GUI_UNATTENDED) Debug-Output "!STF_UNATTENDED_SECTION is "$(!STF_UNATTENDED_SECTION) Debug-Output "Proxy Service installed? "$(!PROXY_INSTALLED) set WindowsVersion = "4.0" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion" $(!MAXIMUM_ALLOWED) KeyVersion ifstr $(KeyVersion) != $(KeyNull) GetRegValue $(KeyVersion) "CurrentVersion" CurrVersion ifint $(RegLastError) == 0 set WindowsVersion = *($(CurrVersion), 4) endif else Debug-Output "Failed to open registry key "$(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion" endif Debug-Output "Windows Version is: "$(WindowsVersion) ifstr(i) $(!STF_PRODUCT) == "WINNT" ifstr(i) $(WindowsVersion) == "4.0" Shell subroutn.inf, SetupMessage $(!STF_LANGUAGE) "STATUS" $(No40WkstaInstall) set CommonStatus = STATUS_USERCANCEL goto end endif endif set RasComponentsList = {} set NumInstalled = 0 OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(!MAXIMUM_ALLOWED) KeyProduct Ifstr $(KeyProduct) != $(KeyNull) Ifstr(i) $(!NTN_InstallPhase) == primary set CommonStatus = STATUS_USERCANCEL goto end EndIf OpenRegKey $(!REG_H_LOCAL) "" $(ProductRouterName) $(!MAXIMUM_ALLOWED) KeyRouter ifstr $(KeyRouter) == $(KeyNull) Shell subroutn.inf, SetupMessage $(!STF_LANGUAGE) "STATUS" $(RemoveRasFirst) set CommonStatus = STATUS_USERCANCEL goto end endif GetRegValue $(KeyProduct) "MajorVersion" VersionInfo set VersionMajor = *($(VersionInfo), 4) GetRegValue $(KeyProduct) "MinorVersion" VersionInfo set VersionMinor = *($(VersionInfo), 4) set InstalledVersion = $(VersionMajor)"."$(VersionMinor) ifstr(i) $(ProductVersion) != $(InstalledVersion) Shell "" QueryRasUpgrade $(ProductRASTitle) $(InstalledVersion) + $(ProductVersion) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif Ifstr(i) $($R1) == "OK" set from = InstallRas set to = InstallRas1 goto RemoveRas else goto end endif endif shell "" QueryComponentsInstalled $(ProductKeyName) Ifstr(i) $($R0) == STATUS_SUCCESSFUL Set RasComponentsList = $($R1) Set InstalledFlags = $($R2) Set ServerInstalled = *($(InstalledFlags),1) Set ClientInstalled = *($(InstalledFlags),2) Set AdminInstalled = *($(InstalledFlags),3) Endif Debug-Output "Installed List is "$(RasComponentsList) Debug-Output "Installed Flags is "$(InstalledFlags) QueryListSize NumInstalled $(RasComponentsList) ifint $(NumInstalled) != 0 goto PortsConfigure endif CloseRegKey $(KeyProduct) else InstallRas1 =+ set fRemoveRas = TRUE endif goto memorycheck setupabort = + read-syms SetupAbortDlg$(!STF_LANGUAGE) ui start "SetupAbort" ifstr(i) $(DLGEVENT) == "CONTINUE" ui pop 1 Exit else ui pop 1 Exit endif memorycheck = + read-syms AvailableSystemMemory detect AvailableSystemMemory Debug-Output "Available Memory is "$(SystemMemory) IfInt $(SystemMemory) < $(MinSystemMemory) read-syms FatalErrorMem$(!STF_LANGUAGE) shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "FATAL" $(Fatal) goto setupabort Else goto CopyResources EndIf CopyResources = + ifstr(i) $(!NTN_InstallMode) == "install" Ifstr(i) $(DoCopy) == "YES" Shell $(!UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SourceDir) YES Ifint $($ShellCode) != $(!SHELL_CODE_OK) Goto ShellCodeError Else-Ifstr(i) $($R0) == STATUS_FAILED Shell $(!UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL" ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set Error = $($R0) goto fatal Else-Ifstr(i) $($R0) == STATUS_USERCANCEL Goto end Endif Set !STF_SRCDIR = $($R1) Set SourceDir = $($R1) Debug-Output "SrcDir "$(SourceDir) endif forlistdo {"RTRCFG.DLL", "RASMXS.DLL", "RASFIL32.DLL", "IPXADMIN.DLL", "MPRAPI.DLL", "MPRFILTR.DLL"} LibraryProcedure STATUS, $(!LIBHANDLE), CheckFileExistance $(!STF_WINDOWSSYSPATH)"\"$($) ifstr(i) $(STATUS) == NO LibraryProcedure STATUS, $(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) + $(SourceDir)"\"$($) $(!STF_WINDOWSSYSPATH)"\"$($) endif endforlistdo LibraryProcedure STATUS, $(!NCPA_HANDLE), CopySingleFile + $(!STF_HWND) $(SourceDir)"\RASCFG.DLL" $(!STF_WINDOWSSYSPATH)"\RASCFG.DLL" Shell "" AreRequiredDllsPresent ifstr(i) $($R0) != STATUS_SUCCESSFUL set MissingFiles = $($R1) set ErrorLoadingConfigDll = $(ErrorLoadingConfigDll)" "$(MissingFiles) shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "STATUS" $(ErrorLoadingConfigDll) set CommonStatus = STATUS_USERCANCEL goto end endif set PORTSDLGHANDLE = $(HandleNull) LoadLibrary "x" $(!STF_WINDOWSSYSPATH)"\rascfg.dll" PORTSDLGHANDLE LibraryProcedure Result, $(PORTSDLGHANDLE), CheckSnmpRunning Debug-Output "Result of CheckSnmpRunning "$(Result) ifstr(i) $(PORTSDLGHANDLE) != $(HandleNull) Debug-Output "Unloading RASCFG.DLL" FreeLibrary $(PORTSDLGHANDLE) endif set PORTSDLGHANDLE = $(HandleNull) ifstr(i) *($(Result),1) == "RUNNING" shell $(subroutninf) SetupMessage $(!STF_LANGUAGE) "STATUS" $(ErrorSnmpRunning) Set CommonStatus = STATUS_USERCANCEL goto end endif ifstr(i) *($(Result),1) == "RUNNING" shell $(subroutninf) SetupMessage $(!STF_LANGUAGE) "STATUS" $(ErrorSnmpRunning) Set CommonStatus = STATUS_USERCANCEL goto end endif Debug-Output "OEMNSVRA.INF: Copying files" Install InstallResources ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS goto filecopycancel endif install InstallRasFiles ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS goto filecopycancel endif endif StartWait goto PortsConfigure ConfigureRas = + set OldVersionExisted = TRUE read-syms StatusDeterminingConfig$(!STF_LANGUAGE) shell $(subroutninf) PushBillBoard NETSTATUSDLG $(ReadingConfig) Set BillboardVisible = 1 StartWait shell "" QueryComponentsInstalled $(ProductKeyName) Ifstr(i) $($R0) == STATUS_SUCCESSFUL Set InstalledComps = $($R1) Set InstalledFlags = $($R2) Set DoServer = *($(InstalledFlags),1) Set DoClient = *($(InstalledFlags),2) Set DoAdmin = *($(InstalledFlags),3) Set DoServerOnly = *($(InstalledFlags),4) Set DoClientOnly = *($(InstalledFlags),5) Set DoAdminOnly = *($(InstalledFlags),6) Endif Set ServerInstalled = $(DoServer) Set ClientInstalled = $(DoClient) Set AdminInstalled = $(DoAdmin) Debug-Output "DoServer "$(DoServer) Debug-Output "DoClient "$(DoClient) Debug-Output "DoAdmin "$(DoAdmin) Debug-Output "DoServerOnly "$(DoServerOnly) Debug-Output "DoClientOnly "$(DoClientOnly) Debug-Output "DoAdminOnly "$(DoAdminOnly) ifstr(i) $(DoAdminOnly) == TRUE read-syms NoConfigLAN$(!STF_LANGUAGE) shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "STATUS" $(NoConfigLanRouting) set CommonStatus = STATUS_USERCANCEL goto end endif goto PortsConfigure PortsConfigure = + StartWait Shell "" AreRequiredDllsPresent ifstr(i) $($R0) != STATUS_SUCCESSFUL set MissingFiles = $($R1) set ErrorLoadingConfigDll = $(ErrorLoadingConfigDll)" "$(MissingFiles) shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "STATUS" $(ErrorLoadingConfigDll) set CommonStatus = STATUS_USERCANCEL goto end endif LoadLibrary "x" $(!STF_CWDDIR)rascfg.dll PORTSDLGHANDLE read-syms StatusDeterminingConfig$(!STF_LANGUAGE) shell $(subroutninf) PushBillBoard NETSTATUSDLG $(ReadingConfig) Set BillboardVisible = 1 set Result = {} set fNetcardInstalled = FALSE shell "" IsNetcardInstalled ifstr(i) $($R0) == STATUS_SUCCESSFUL set fNetcardInstalled = $($R1) endif Debug-Output "fNetcardInstalled Option "$(fNetcardInstalled) CheckProtocolsInstalled =+ shell "" QueryInstalledProtocols ifstr(i) $($R0) == STATUS_SUCCESSFUL set fNetbeuiInstalled = $($R1) set fTcpIpInstalled = $($R2) set fIpxInstalled = $($R3) else read-syms QueryInstalledProtocolsError$(!STF_LANGUAGE) shell $(subroutninf) SetupMessage $(!STF_LANGUAGE) "FATAL" $(Text) goto end endif Ifint $(BillboardVisible) != 0 Shell "subroutn.inf" PopBillboard Set BillboardVisible = 0 Endif Debug-Output "!STF_UNATTENDED is "$(!STF_UNATTENDED) Debug-Output "!STF_GUI_UNATTENDED is "$(!STF_GUI_UNATTENDED) Debug-Output "!STF_UNATTENDED_SECTION is "$(!STF_UNATTENDED_SECTION) LibraryProcedure Result, $(PORTSDLGHANDLE), RasPortsConfig $(!STF_HWND) + $(!NTN_InstallMode) $(fNetcardInstalled) $(ProductPath) + $(fNetbeuiInstalled) $(fTcpIpInstalled) $(fIpxInstalled) + $(!STF_GUI_UNATTENDED) $(!STF_UNATTENDED) $(!STF_UNATTENDED_SECTION) StartWait set NewNumPorts = 0 set NewNumTapiPorts = 0 set NewNumDialoutNBF = 0 set NewNumDialinNBF = 0 set NewNumDialinIP = 0 set NewNumDialoutIP = 0 set NewNumDialinoutIPX = 0 set fSerialInstalled = FALSE set fUnimodemInstalled = FALSE set fOtherInstalled = FALSE set fNetbeuiChosen = FALSE set fTcpIpChosen = FALSE set fIpxChosen = FALSE set fNetbeuiSelected = FALSE set fTcpIpSelected = FALSE set fIpxSelected = FALSE set fNetbeuiAllowed = FALSE set fTcpIpAllowed = FALSE set fIpxAllowed = FALSE set NewNumPorts = *($(Result),1) set NewNumTapiPorts = *($(Result),2) set NewNumPortsList = {} set NullString = "" Debug-Output "PortsConfigure returned: "$(Result) Debug-Output "PortsConfigure NewNumPorts: "$(NewNumPorts) Debug-Output "PortsConfigure NewNumTapiPorts: "$(NewNumTapiPorts) ifstr(i) $(NewNumPorts) == "EXITSETUP" Debug-Output "PortsConfigre User selected ExitSetup." goto RemoveDiskFiles else-ifstr(i) $(NewNumPorts) == "NOPORTS" Debug-Output "PortsConfigre: No serial ports detected." shell $(subroutninf) SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(ErrorNoPorts) goto RemoveDiskFiles else-ifstr(i) $(NewNumPorts) == "BADARGS" Debug-Output "PortsConfigre: bad arguments to dll." shell $(subroutninf) SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(ErrorBadArgs) goto RemoveDiskFiles else-ifstr(i) $(NewNumPorts) == "FAILURE" Debug-Output "PortsConfigre: Unknown failure." shell $(subroutninf) SetupMessage $(!STF_LANGUAGE) "NONFATAL" $(ErrorUnknown) goto RemoveDiskFiles endif goto PortsConfigure1 RemoveDiskFiles = + set CommonStatus = STATUS_USERCANCEL ifstr(i) $(!NTN_InstallMode) == "install" goto filecopycancel endif goto end PortsConfigure1 = + set NewNumDialoutNBF = *($(Result),3) Debug-Output "PortsConfigure NewNumDialoutNBF: "$(NewNumDialoutNBF) set NewNumDialinNBF = *($(Result),4) Debug-Output "PortsConfigure NewNumDialinNBF: "$(NewNumDialinNBF) set fSerialInstalled = *($(Result),5) Debug-Output "PortsConfigure fSerialInstalled: "$(fSerialInstalled) set fUnimodemInstalled = *($(Result),6) Debug-Output "PortsConfigure fUnimodemInstalled: "$(fUnimodemInstalled) set fOtherInstalled = *($(Result),7) Debug-Output "PortsConfigure fOtherInstalled: "$(fOtherInstalled) ifstr(i) $(fSerialInstalled) == TRUE set NewNumPortsList = >($(NewNumPortsList), $(NullString)$(NewNumPorts)$(NullString)) else-ifstr(i) $(fOtherInstalled) == TRUE set NewNumPortsList = >($(NewNumPortsList), $(NullString)$(NewNumPorts)$(NullString)) else-ifstr(i) $(fUnimodemInstalled) == TRUE set NewNumPortsList = >($(NewNumPortsList), $(NullString)$(NewNumPorts)$(NullString)) endif set fNetbeuiSelected = *($(Result),8) Debug-Output "PortsConfigure NetbeuiSelected: "$(fNetbeuiSelected) set fTcpIpSelected = *($(Result),9) Debug-Output "PortsConfigure TcpIpSelected: "$(fTcpIpSelected) set fIpxSelected = *($(Result),10) Debug-Output "PortsConfigure IpxSelected: "$(fIpxSelected) set fNetbeuiAllowed = *($(Result),11) Debug-Output "PortsConfigure NetbeuiAllowed: "$(fNetbeuiAllowed) set fTcpIpAllowed = *($(Result),12) Debug-Output "PortsConfigure TcpIpAllowed: "$(fTcpIpAllowed) set fIpxAllowed = *($(Result),13) Debug-Output "PortsConfigure IpxAllowed: "$(fIpxAllowed) set InstallRas = *($(Result),14) Debug-Output "PortsConfigure InstallRas: "$(InstallRas) set InstallDdm = *($(Result),15) Debug-Output "PortsConfigure InstallDdm: "$(InstallDdm) set InstallLan = *($(Result),16) Debug-Output "PortsConfigure InstallLan: "$(InstallLan) set dwRouterType = *($(Result),17) Debug-Output "PortsConfigure dwRouterType: "$(dwRouterType) ifstr(i) $(fNetbeuiSelected) == TRUE set fNetbeuiChosen = TRUE else set fNetbeuiChosen = $(fNetbeuiAllowed) endif ifstr(i) $(fTcpIpSelected) == TRUE set fTcpIpChosen = TRUE else set fTcpIpChosen = $(fTcpIpAllowed) endif ifstr(i) $(fIpxSelected) == TRUE set fIpxChosen = TRUE else set fIpxChosen = $(fIpxAllowed) endif ifstr(i) $(fTcpIpSelected) == TRUE set NewNumDialoutIP = $(NewNumDialoutNBF) endif ifint $(NewNumDialinNBF) != 0 ifstr(i) $(fTcpIpAllowed) == TRUE set NewNumDialinIP = 1 endif endif Debug-Output "NewNumDialinIP: "$(NewNumDialinIP) Debug-Output "NewNumDialoutIP: "$(NewNumDialoutIP) ifstr(i) $(fIpxChosen) == TRUE set NewNumDialinoutIPX = 1 Debug-Output "IPX Selected - NewNumDialinoutIPX: "$(NewNumDialinoutIPX) endif ifstr(i) $(fIpxAllowed) == TRUE set EnableIpxRouter = 1 else set EnableIpxRouter = 0 endif ifstr(i) $(fNetbeuiAllowed) == FALSE set NewNumDialinNBF = 0 endif ifstr(i) $(fNetbeuiSelected) == FALSE set NewNumDialoutNBF = 0 endif Debug-Output "NewNumDialinNbf: "$(NewNumDialinNBF) Debug-Output "NewNumDialoutNbf: "$(NewNumDialoutNBF) set LanRoutingOnly = FALSE ifstr(i) $(InstallRas) == FALSE ifstr(i) $(InstallDdm) == FALSE set LanRoutingOnly = TRUE endif endif set NetBiosGtwyEnabled = 0 set EnableIpRouter = 0 set EnableWanRouter = 0 Shell "" GetNetworkAccess ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling GetNetworkAccess." goto ShellCodeError endif set NetBiosGtwyEnabled = $($R1) ifstr(i) $(LanRoutingOnly) == TRUE ifstr(i) $(fTcpIpAllowed) == TRUE set EnableIpRouter = 1 endif ifstr(i) $(fIpxAllowed) == TRUE set EnableWanRouter = 1 endif else set EnableIpRouter = $($R2) set EnableWanRouter = $($R3) endif ifint $(NetBiosGtwyEnabled) == 0 ifstr(i) $(fNetbeuiAllowed) == TRUE set-add NewNumDialoutNBF = $(NewNumDialoutNBF), $(NewNumDialinNBF) set NewNumDialinNBF = 0 Debug-Output "Mapped dialin ports to dialout ports "$(NewNumDialoutNBF) endif endif set NewNumDialin = 0 set NewNumDialout = 0 set-add NewNumDialin = $(NewNumDialinNBF), $(NewNumDialinIP) ifstr(i) $(fIpxAllowed) == TRUE set-add NewNumDialin = $(NewNumDialin), $(NewNumDialinoutIPX) endif set-add NewNumDialout = $(NewNumDialoutNBF), $(NewNumDialoutIP) ifstr(i) $(fIpxSelected) == TRUE set-add NewNumDialout = $(NewNumDialout), $(NewNumDialinoutIPX) endif CommonCode = + ifstr(i) $(OldVersionExisted) == TRUE goto WriteParameters endif QueryListSize ListCount $(RasComponentsList) ifint $(ListCount) == 0 goto FirstTimeInstall else ifstr(i) $(DoServer) == TRUE ifstr(i) $(ClientInstalled) == FALSE ifstr(i) $(AdminInstalled) == FALSE set DoRas = TRUE endif set DoRasSvr = TRUE set DoRasMan = TRUE set DoRasAutodial = TRUE set DoNdisWan = TRUE set DoRasAsyMac = TRUE else-ifstr(i) $(ServerInstalled) == FALSE set DoRasSvr = TRUE endif set RasComponentsList = >($(RasComponentsList), $(RasServerOption)) endif ifstr(i) $(DoClient) == TRUE ifstr(i) $(ServerInstalled) == FALSE ifstr(i) $(AdminInstalled) == FALSE set DoRas = TRUE endif set DoRasMan = TRUE set DoRasAutodial = TRUE set DoNdisWan = TRUE set DoRasAsyMac = TRUE endif set RasComponentsList = >($(RasComponentsList), $(RasClientOption)) endif ifstr(i) $(DoAdmin) == TRUE ifstr(i) $(ServerInstalled) == FALSE ifstr(i) $(ClientInstalled) == FALSE set DoRas = TRUE endif endif set RasComponentsList = >($(RasComponentsList), $(RasAdminOption)) endif shell "" UpdateComponentsInstalled $(RasComponentsList) $(ProductKeyName) goto FirstTimeInstall-1 endif FirstTimeInstall =+ ifstr(i) $(DoServer) == TRUE set DoRas = TRUE set DoRouter = TRUE ifstr(i) $(LanRoutingOnly) != TRUE set DoRasSvr = TRUE set DoRasMan = TRUE set DoRasAutodial = TRUE set DoNdisWan = TRUE set DoRasAsyMac = TRUE set RasComponentsList = >($(RasComponentsList), $(RasServerOption)) endif endif ifstr(i) $(DoClient) == TRUE set DoRas = TRUE ifstr(i) $(LanRoutingOnly) != TRUE set DoRasMan = TRUE set DoRasAutodial = TRUE set DoNdisWan = TRUE set DoRasAsyMac = TRUE set RasComponentsList = >($(RasComponentsList), $(RasClientOption)) endif endif ifstr(i) $(DoAdmin) == TRUE ifstr(i) $(ServerInstalled) == FALSE ifstr(i) $(ClientInstalled) == FALSE set DoRas = TRUE endif endif set RasComponentsList = >($(RasComponentsList), $(RasAdminOption)) endif FirstTimeInstall-1 = + ifstr(i) $(DoRas) == TRUE StartWait read-syms StatusUpdatingRegistry$(!STF_LANGUAGE) shell $(subroutninf) PushBillBoard NETSTATUSDLG $(CreatingRas) Set BillboardVisible = 1 set ThisOption = RAS Shell $(!UtilityInf), InstallSoftwareProduct, $(!Manufacturer),+ $(Product$(ThisOption)Name), $(!RasInfName) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "InstallSoftware bombed out." goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" Debug-Output "REGISTRY GOODAL" CloseRegKey $($R1) CloseRegKey $($R2) goto fatalregistry endif Set SoftProductKey = $($R1) Set SoftNetRuleKey = $($R2) set NewValueList = + {{Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)},+ {SoftwareType,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)SvcType)},+ {Title,$(NoTitle),$(!REG_VT_SZ), $(Product$(ThisOption)Title)},+ {Description,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Description)},+ {PathName,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)ImagePath)},+ {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMajorVersion)},+ {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMinorVersion)},+ {RasComponents,$(NoTitle),$(!REG_VT_MULTI_SZ),$(RasComponentsList)},+ {OperationsSupport,$(NoTitle),$(!REG_VT_DWORD),$(ProductOpSupport)}, + {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(!CurrentDate),1)}} Shell $(!UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) CloseRegKey $(SoftProductKey) CloseRegKey $(SoftNetRuleKey) goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftProductKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftNetRuleKey) goto fatalregistry endif set NewValueList = + {{class, $(NoTitle), $(!REG_VT_SZ), $(NetRule$(ThisOption)Class)},+ {type,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(ThisOption)Type)},+ {use,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(ThisOption)Use)}, + {InfOption,$(NoTitle),$(!REG_VT_SZ), "RAS"}, + {Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)}} Shell $(!UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftNetRuleKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto fatalregistry endif endif ifstr(i) $(DoRasSvr) == TRUE set ThisOption = RASSVR set RasSpecificString = $(Product$(ThisOption)Name) Shell $(!UtilityInf), AddSoftwareComponent, $(!Manufacturer), + $(Product$(ThisOption)Name), $(Product$(ThisOption)Name), + $(Product$(ThisOption)DisplayName), + $(!RasInfName), $(Product$(ThisOption)ImagePath),+ "serviceshare", "Network", {"LanmanServer","RasMan"}, "", + $(!RouterMsgDll), $(!RasEventTypeSupported) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRasSvr: AddSoftware bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" Debug-Output "DoRasSvr: Registry Error "$(RegistryErrorIndex) CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) CloseRegKey $($R4) CloseRegKey $($R5) goto fatalregistry endif Set SoftProductKey = $($R1) Set SoftNetRuleKey = $($R2) set SoftServiceKey = $($R3) Set SoftParamsKey = $($R4) Set SoftLinkageKey = $($R5) set NewValueList = + {{Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)},+ {ServiceName,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Name)},+ {SoftwareType,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)SvcType)},+ {Title,$(NoTitle),$(!REG_VT_SZ),$(Product$(ThisOption)Title)},+ {Description,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Description)},+ {PathName,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)ImagePath)},+ {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMajorVersion)},+ {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMinorVersion)},+ {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(!CurrentDate),1)},+ {Hidden,$(NoTitle),$(!REG_VT_DWORD),$(!HideComponent)}} Shell $(!UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRasSvr:product: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftProductKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" Debug-Output "DoRasSvr: Registry Error "$(RegistryErrorIndex) CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftNetRuleKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) goto fatalregistry endif set NewValueList = + {{class, $(NoTitle), $(!REG_VT_SZ), $(NetRule$(ThisOption)Class)},+ {type,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(ThisOption)Type)},+ {use,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(ThisOption)Use)}, + {InfOption,$(NoTitle),$(!REG_VT_SZ), "RAS"}, + {bindform,$(NoTitle),$(!REG_VT_SZ),+ $(NetRule$(ThisOption)BindForm)}, + {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),+ $(NetRule$(ThisOption)Bindable)}, + {Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)}} Shell $(!UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRasSvr:netrules: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftNetRuleKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) Debug-Output "DoRasSvr: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif set RasDependencies = {"LanmanServer","RasMan"} OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NetBios" $(!MAXIMUM_ALLOWED) KeyNetBios ifstr $(KeyNetBios) != $(KeyNull) set RasDependencies = >($(RasDependencies),"NetBios") CloseRegKey $(KeyNetBios) endif Debug-Output "DoRasSvr: Adding RasDependencies "$(RasDependencies) set NewValueList = + {{OtherDependencies, $(NoTitle), $(!REG_VT_MULTI_SZ),+ $(RasDependencies)}} Shell $(!UtilityInf), AddValueList, $(SoftLinkageKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRasSvr:Linkage: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftLinkageKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) Debug-Output "DoRasSvr: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif set NewValueList = + {{AuthenticateRetries, $(NoTitle), $(!REG_VT_DWORD), 2},+ {AuthenticateTime, $(NoTitle), $(!REG_VT_DWORD), 120},+ {Autodisconnect, $(NoTitle), $(!REG_VT_DWORD), 20},+ {EnableAudit, $(NoTitle), $(!REG_VT_DWORD), 1},+ {CallbackTime, $(NoTitle), $(!REG_VT_DWORD), 2}} Shell $(!UtilityInf), AddValueList, $(SoftParamsKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) goto fatalregistry endif OpenRegKey $(SoftParamsKey) "" "NetBiosGateway" $(!MAXIMUM_ALLOWED) KeyNetbiosGtwy ifstr $(KeyNtbiosGtwy) == $(KeyNull) CreateRegKey $(SoftParamsKey) {"NetBiosGateway",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyNetbiosGtwy OpenRegKey $(SoftParamsKey) "" "NetBiosGateway" $(!MAXIMUM_ALLOWED) KeyNetbiosGtwy endif set NewValueList = + {{EnableBroadcast, $(NoTitle), $(!REG_VT_DWORD), 0},+ {EnableNetbiosSessionsAuditing, $(NoTitle), $(!REG_VT_DWORD), 0},+ {MaxDynMem, $(NoTitle), $(!REG_VT_DWORD), 655350},+ {MaxNames, $(NoTitle), $(!REG_VT_DWORD), 255},+ {MaxSessions, $(NoTitle), $(!REG_VT_DWORD), 255},+ {MulticastForwardRate, $(NoTitle), $(!REG_VT_DWORD), 5},+ {SizWorkbuf, $(NoTitle), $(!REG_VT_DWORD), 4500},+ {RemoteListen, $(NoTitle), $(!REG_VT_DWORD), 1},+ {NameUpdateTime, $(NoTitle), $(!REG_VT_DWORD), 120},+ {MaxDgBufferedPerGroupName, $(NoTitle), $(!REG_VT_DWORD), 10},+ {RcvDgSubmittedPerGroupName, $(NoTitle), $(!REG_VT_DWORD), 3},+ {DisableMcastFwdWhenSessionTraffic, $(NoTitle), $(!REG_VT_DWORD), 1},+ {MaxBcastDgBuffered, $(NoTitle), $(!REG_VT_DWORD), 32},+ {NumRecvQueryIndications, $(NoTitle), $(!REG_VT_DWORD), 3}} Shell $(!UtilityInf), AddValueList, $(KeyNetbiosGtwy), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) goto fatalregistry endif CloseRegKey $(KeyNetbiosGtwy) CloseRegKey $(SoftParamsKey) Shell "" UpdatePerfmonInfoHelper $(SoftServiceKey) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling UpdatePerfmonInfoHelper." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by UpdatePerfmonInfoHelper." endif CloseRegKey $(SoftServiceKey) endif InstallRouter =+ ifstr(i) $(DoRouter) == TRUE Shell "" InstallRouterService $(InstallDdm) $(InstallRas) $(RoutingKeyList) $(RoutingValueList) goto InstallRouterEnd endif InstallRouterEnd = + ifstr(i) $(LanRoutingOnly) != TRUE Shell "" AddServiceDependency "Router" "RasMan" endif Debug-Output "!PROXY_INSTALLED = "$(!PROXY_INSTALLED) ifstr(i) $(!PROXY_INSTALLED) == "TRUE" Shell "" AddServiceDependency "Router" "mspadmin" endif Shell "" AddServiceDependency "Router" "LanManServer" Debug-Output "AddPPTPFilters entry." LibraryProcedure Result, $(PORTSDLGHANDLE), AddPPTPFilters Debug-Output "AddPPTPFilters exit result = "$(Result) InstallRasMan = + ifstr(i) $(DoRasMan) == TRUE set ThisOption = RASMAN set RasSpecificString = $(Product$(ThisOption)Name) Shell $(!UtilityInf), AddSoftwareComponent, $(!Manufacturer), + $(Product$(ThisOption)Name), $(Product$(ThisOption)Name), + $(Product$(ThisOption)DisplayName), + $(!RasInfName), $(Product$(ThisOption)ImagePath), "serviceshare",+ "Network", {}, "", $(!RouterMsgDll), $(!RasEventTypeSupported) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddSoftware bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) CloseRegKey $($R4) CloseRegKey $($R5) goto fatalregistry endif Set SoftProductKey = $($R1) Set SoftNetRuleKey = $($R2) CloseRegKey $($R3) Set SoftParamsKey = $($R4) CloseRegKey $($R5) set NewValueList = + {{Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)},+ {ServiceName,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Name)},+ {SoftwareType,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)SvcType)},+ {Title,$(NoTitle),$(!REG_VT_SZ),$(Product$(ThisOption)Title)},+ {Description,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Description)},+ {PathName,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)ImagePath)},+ {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMajorVersion)},+ {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMinorVersion)},+ {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(!CurrentDate),1)},+ {Hidden,$(NoTitle),$(!REG_VT_DWORD),$(!HideComponent)}} Shell $(!UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftProductKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftNetRuleKey) CloseRegKey $(SoftParamsKey) goto fatalregistry endif set NewValueList = + {{class, $(NoTitle), $(!REG_VT_SZ), $(NetRule$(ThisOption)Class)},+ {type,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(ThisOption)Type)},+ {use,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(ThisOption)Use)}, + {bindform,$(NoTitle),$(!REG_VT_SZ),+ $(NetRule$(ThisOption)BindForm)}, + {bindable,$(NoTitle),$(!REG_VT_SZ),+ $(NetRule$(ThisOption)Bindable)}, + {InfOption,$(NoTitle),$(!REG_VT_SZ), "RAS"}, + {Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)}} Shell $(!UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftNetRuleKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto fatalregistry endif set NewValueList = {{Logging, $(NoTitle), $(!REG_VT_DWORD), 0}} Shell $(!UtilityInf), AddValueList, $(SoftParamsKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto fatalregistry endif CloseRegKey $(SoftParamsKey) Shell "" AddServiceDependency "RasMan" "tapisrv" Shell "" AddServiceDependency "RasMan" "rpcss" Shell "" AddServiceDependency "RasMan" "LanManWorkstation" endif ifstr(i) $(DoRasAutodial) == TRUE set ThisOption = RASAUTODIAL set RasSpecificString = $(!Product$(ThisOption)Name) Shell "" InstallSoftwareAndService $(ThisOption) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling InstallSoftwareAndService for "$(ThisOption) goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "Error from InstallSoftwareAndService for"$(ThisOption) goto end endif set DisableAutoDial = FALSE ifint $(NewNumDialout) == 0 set DisableAutoDial = TRUE endif ifstr(i) $(DisableAutoDial) == TRUE OpenRegKey $(!REG_H_LOCAL) "" $(!RasAutodialKeyName) $(!MAXIMUM_ALLOWED) KeyAutodial ifstr $(KeyAutodial) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open RasAuto key" else SetRegValue $(KeyAutodial) {Start, $(NoTitle), $(!REG_VT_DWORD), 4} CloseRegKey $(KeyAutodial) endif endif Shell "" InstallRasAcdService ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling InstallRasAcdService" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "Error from InstallRasAcdService" goto end endif Shell "" AddServiceDependency "RasAuto" "RasMan" Shell "" AddServiceDependency "RasAuto" "tapisrv" endif ifstr(i) $(DoNdisWan) == TRUE set ThisOption = NDISWAN set RasSpecificString = $(Product$(ThisOption)Name) Shell $(!UtilityInf), AddSoftwareComponent, $(!Manufacturer), + $(!Product$(ThisOption)Name), $(!Product$(ThisOption)Name), + $(!Product$(ThisOption)DisplayName), + $(!RasInfName), $(!Product$(ThisOption)ImagePath),+ "kernelautostart", "NDISWAN", {}, "", + $(!RouterMsgDll), $(!RasEventTypeSupported) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddSoftware bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) CloseRegKey $($R4) CloseRegKey $($R5) goto fatalregistry endif Set SoftProductKey = $($R1) Set SoftNetRuleKey = $($R2) CloseRegKey $($R3) CloseRegKey $($R4) CloseRegKey $($R5) set NewValueList = + {{Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)},+ {ServiceName,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)Name)},+ {SoftwareType,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Type)},+ {Title,$(NoTitle),$(!REG_VT_SZ),$(!Product$(ThisOption)Title)},+ {Description,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)Description)},+ {PathName,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)ImagePath)},+ {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMajorVersion)},+ {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMinorVersion)},+ {BindControl,$(NoTitle),$(!REG_VT_DWORD),$(HideBindings)},+ {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(!CurrentDate),1)},+ {Hidden,$(NoTitle),$(!REG_VT_DWORD),$(!HideComponent)}} Shell $(!UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftProductKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftNetRuleKey) goto fatalregistry endif set NewValueList = + {{class, $(NoTitle), $(!REG_VT_MULTI_SZ), $(!NetRule$(ThisOption)Class)},+ {type,$(NoTitle),$(!REG_VT_SZ),$(!NetRule$(ThisOption)Type)},+ {use,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(ThisOption)Use)}, + {bindform,$(NoTitle),$(!REG_VT_SZ),+ $(!NetRule$(ThisOption)BindForm)}, + {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),+ $(!NetRule$(ThisOption)Bindable)}, + {InfOption,$(NoTitle),$(!REG_VT_SZ), "RAS"}, + {Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)}} Shell $(!UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftNetRuleKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto fatalregistry endif Shell "" InstallNdisWanBHAdapter ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Cannot add NdisWan Blood hound adapter" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL set RegistryErrorIndex = $($R0) Debug-Output "Error installing NdisWan Blood hound adapter" goto fatalregistry endif Shell "" AddNDISWANToServiceGroupOrder ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Cannot add NDISWAN to ServiceGroupOrder" goto ShellCodeError endif DoNdisWanEnd = + endif ifstr(i) $(DoRasAsyMac) == TRUE set ThisOption = RASASYMAC set RasSpecificString = $(Product$(ThisOption)Name) ifstr(i) $(fSerialInstalled) == TRUE set AsySoftwareType = "kernelautostart" else-ifstr(i) $(fOtherInstalled) == TRUE set AsySoftwareType = "kernelautostart" else-ifstr(i) $(fUnimodemInstalled) == TRUE set AsySoftwareType = "kernelautostart" else set AsySoftwareType = "kerneldisable" endif Shell $(!UtilityInf), AddSoftwareComponent, $(!Manufacturer), + $(Product$(ThisOption)Name), $(Product$(ThisOption)Name), + $(Product$(ThisOption)DisplayName), + $(!RasInfName), $(Product$(ThisOption)ImagePath), $(AsySoftwareType),+ "NDIS", {}, "", $(!RouterMsgDll), $(!RasEventTypeSupported) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddSoftware bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) CloseRegKey $($R4) CloseRegKey $($R5) goto fatalregistry endif Set SoftProductKey = $($R1) Set SoftNetRuleKey = $($R2) CloseRegKey $($R3) CloseRegKey $($R4) CloseRegKey $($R5) set NewValueList = + {{Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)},+ {ServiceName,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Name)},+ {SoftwareType,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Type)},+ {Title,$(NoTitle),$(!REG_VT_SZ),$(Product$(ThisOption)Title)},+ {Description,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Description)},+ {PathName,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)ImagePath)},+ {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMajorVersion)},+ {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMinorVersion)},+ {BindControl,$(NoTitle),$(!REG_VT_DWORD),$(HideBindings)},+ {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(!CurrentDate),1)},+ {Hidden,$(NoTitle),$(!REG_VT_DWORD),$(!HideComponent)}} Shell $(!UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftProductKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftNetRuleKey) goto fatalregistry endif set NewValueList = + {{class, $(NoTitle), $(!REG_VT_MULTI_SZ), $(NetRule$(ThisOption)Class)},+ {type,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(ThisOption)Type)},+ {use,$(NoTitle),$(!REG_VT_SZ),$(NetRule$(ThisOption)Use)}, + {bindform,$(NoTitle),$(!REG_VT_SZ),+ $(NetRule$(ThisOption)BindForm)}, + {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),+ $(!NetRule$(ThisOption)Bindable)}, + {InfOption,$(NoTitle),$(!REG_VT_SZ), "RAS"}, + {Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)}} Shell $(!UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftNetRuleKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto fatalregistry endif Shell $(!UtilityInf), AddHardwareComponent, + $(Product$(ThisOption)Name),$(!RasInfName),+ $(Product$(ThisOption)KeyName) ifint $($R4) != -1 Set !NETCARD_LIST = >($(!NETCARD_LIST), + {$(Product$(ThisOption)Name),+ $(!NetworkCardKeyName)"\"$($R4)}) endif ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Cannot add hardware component" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != NO_ERROR Debug-Output "Registry error: add hardware component" CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) goto fatalregistry endif set KeyNetcard = $($R1) set KeyParameters = $($R3) set KeyAdapterRules = $($R2) set AdapterNumber = $($R4) set NewValueList = + {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(!Manufacturer)},+ {Title,$(NoTitle),$(!REG_VT_SZ),+ "["$($R4)"] "$(Product$(ThisOption)Title)},+ {Description,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Description)},+ {ProductName,$(NoTitle),$(!REG_VT_SZ),+ $(Product$(ThisOption)Name)},+ {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+ {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(!CurrentDate),1)},+ {Hidden,$(NoTitle),$(!REG_VT_DWORD),$(!HideComponent)}} Shell $(!UtilityInf), AddValueList, $(KeyNetcard), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "ShellCode error" goto ShellCodeError endif CloseRegKey $(KeyNetcard) set TempProdName = """"$(Product$(ThisOption)Name)$(AdapterNumber)"""" set TempBindForm = $(TempProdName)$(NetRuleHardware$(ThisOption)BindForm) set NewValueList = + {{type,$(NoTitle),$(!REG_VT_SZ),+ $(NetRuleHardware$(ThisOption)Type)},+ {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, + {class,$(NoTitle),$(!REG_VT_MULTI_SZ),+ $(NetRuleHardware$(ThisOption)Class)}, + {InfOption,$(NoTitle),$(!REG_VT_SZ), "RAS"}, + {Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)}} Shell $(!UtilityInf), AddValueList, $(KeyAdapterRules), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "ShellCode error." goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != NO_ERROR Debug-Output "Resgitry error: add value list." CloseRegKey $(KeyParameters) CloseRegKey $(KeyAdapterRules) goto fatalregistry endif CloseRegKey $(KeyAdapterRules) CloseRegKey $(KeyParameters) endif ifstr(i) $(LanRoutingOnly) != TRUE Shell "" InstallNdisTapiService ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling InstallNdisTapiService " goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL set RegistryErrorIndex = $($R0) Debug-Output "Error installing NdisTapi Service" goto fatalregistry endif endif shell "" InstallRasRad goto WriteParameters WriteParameters = + StartWait read-syms StatusUpdatingRegistry$(!STF_LANGUAGE) shell $(subroutninf) PushBillBoard NETSTATUSDLG $(WritingRasParams) Set BillboardVisible = 1 Debug-Output "Writing Registry Parameters." set InstallRouting = FALSE ifstr(i) $(InstallDdm) == TRUE set InstallRouting = TRUE else-ifstr(i) $(InstallLan) == TRUE set InstallRouting = TRUE endif Debug-Output "AddRtrMgrAndLanInterfaces entry." LibraryProcedure Result, $(PORTSDLGHANDLE), AddRtrMgrAndLanInterfaces $(fTcpIpChosen) $(fIpxChosen) ifstr(i) $(Result) == ERROR Shell subroutn.inf, SetupMessage $(!STF_LANGUAGE) "STATUS" $(ErrorAddingRtrMgr) else Debug-Output "AddRtrMgrAndLanInterfaces exit." endif ifstr(i) $(DoServer) != TRUE goto WriteRasMan endif Debug-Output "OEMNSVRA.INF: Product type "$(!STF_PRODUCT) Debug-Output "OEMNSVRA.INF: Total dialin ports "$(NewNumDialin) Debug-Output "OEMNSVRA.INF: Total dialout ports "$(NewNumDialout) set RasStartValue = 3 ifstr(i) $(!STF_PRODUCT) != "WINNT" ifint $(NewNumDialin) != 0 set RasStartValue = 2 endif endif set KeySvr = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(!RouterKeyName) $(!MAXIMUM_ALLOWED) KeySvr ifstr $(KeySvr) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open Services\Router key" else ifstr(i) $(!NTN_InstallMode) != install GetRegValue $(KeySvr) "Start" StartList ifint $(RegLastError) == 0 set RasStartValue = *($(StartList), 4) endif endif ifint $(NewNumDialin) == 0 ifint $(RasStartValue) != 4 set RasStartValue = 3 endif endif Debug-Output "OEMNSVRA.INF: Setting Router start type to "$(RasStartValue) SetRegValue $(KeySvr) {Start,$(NoTitle),$(!REG_VT_DWORD),$(RasStartValue)} CloseRegKey $(KeySvr) endif Debug-Output "WriteParameters LanRoutingOnly= "$(LanRoutingOnly) ifstr(i) $(LanRoutingOnly) == TRUE Debug-Output "WriteParameters: to WriteProtocolInfo because LanRoutingOnly enabled" goto WriteProtocolInfo endif OpenRegKey $(!REG_H_LOCAL) "" $(RasSvrParamKeyName) $(!MAXIMUM_ALLOWED) KeySrvParams ifstr $(KeySrvParams) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open RasSvr Params key" set RegistryErrorIndex = UNABLE_OPEN_SERVICE_PARAMETERS goto fatalregistry endif set NewValueList = + {{NetBiosGatewayEnabled, $(NoTitle), $(!REG_VT_DWORD), $(NetBiosGtwyEnabled)}} Shell $(!UtilityInf), AddValueList, $(KeySrvParams), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto fatalregistry endif CloseRegKey $(KeySrvParams) ifint $(NewNumDialout) == 0 set RasAutoStartValue = 4 else set RasAutoStartValue = 3 endif OpenRegKey $(!REG_H_LOCAL) "" $(!RasAutodialKeyName) $(!MAXIMUM_ALLOWED) KeyAuto ifstr $(KeyAuto) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open RasAuto key" else Debug-Output "OEMNSVRA.INF: Setting RasAuto start type to "$(RasAutoStartValue) SetRegValue $(KeyAuto) {Start,$(NoTitle),$(!REG_VT_DWORD),$(RasAutoStartValue)} CloseRegKey $(KeyAuto) endif WriteRasMan = + OpenRegKey $(!REG_H_LOCAL) "" $(RasManParamKeyName) $(!MAXIMUM_ALLOWED) KeyRasManParams ifstr $(KeyRasManParams) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open RasMan Params key" set RegistryErrorIndex = UNABLE_OPEN_SERVICE_PARAMETERS goto fatalregistry endif set MediaValue = {"rastapi"} ifstr(i) $(fSerialInstalled) == TRUE set MediaValue = >($(MediaValue), "rasser") endif set OtherConfigKey = $(!NTN_SoftwareBase)"\"$(!Manufacturer)"\"$(ProductRASName)"\OTHER DEVICES\CONFIGURED" set KeyOtherMedia = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(OtherConfigKey) $(!MAXIMUM_ALLOWED) + KeyOtherMedia ifstr $(KeyOtherMedia) != $(KeyNull) EnumRegKey $(KeyOtherMedia) OtherList Debug-Output "OEMNSVRA.INF: Other Media list "$(OtherList) ForListDo $(OtherList) set MediaName = *($($),1) set KeyMedia = $(KeyNull) OpenRegKey $(KeyOtherMedia) "" $(MediaName) $(!MAXIMUM_ALLOWED) + KeyMedia ifstr $(KeyMedia) != $(KeyNull) GetRegValue $(KeyMedia), "MediaType" MediaType Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set MediaTypeValue = *($(MediaType),4) set MediaValue = >($(MediaValue), $(MediaTypeValue)) endif CloseRegKey $(KeyMedia) endif EndForListDo CloseRegKey $(KeyOtherMedia) else Debug-Output "OEMNSVRA.INF: Other Media not configured" endif Debug-Output "Adding Medias as "$(MediaValue) set NewValueList = {{Medias,$(NoTitle),$(!REG_VT_MULTI_SZ),$(MediaValue)}} Shell $(!UtilityInf), AddValueList, $(KeyRasManParams), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto fatalregistry endif CloseRegKey $(KeyRasManParams) WriteNdisWan = + set PrevNumPorts = 0 set PrevNumDialin = 0 set PrevNumDialout = 0 OpenRegKey $(!REG_H_LOCAL) "" $(RasAsyMacParamKeyName) $(!MAXIMUM_ALLOWED) KeyMacParams ifstr $(KeyMacParams) == $(KeyNull) ifstr(i) $(!NTN_InstallMode) == configure Debug-Output "OEMNSVRA.INF: could not open AsyncMac Params key" set RegistryErrorIndex = UNABLE_OPEN_SERVICE_PARAMETERS goto fatalregistry endif goto WriteNdisWan1 endif GetRegValue $(KeyMacParams), "Ports" PortsInfo GetRegValue $(KeyMacParams), "DialinNBF" DialinNBFInfo GetRegValue $(KeyMacParams), "DialoutNBF" DialoutNBFInfo GetRegValue $(KeyMacParams), "DialinIP" DialinIPInfo GetRegValue $(KeyMacParams), "DialoutIP" DialoutIPInfo GetRegValue $(KeyMacParams), "DialinoutIPX" DialinoutIPXInfo set PrevNumPorts = *($(PortsInfo), 4) set PrevNumDialinNBF = *($(DialinNBFInfo), 4) set PrevNumDialoutNBF = *($(DialoutNBFInfo), 4) set PrevNumDialinIP = *($(DialinIPInfo), 4) set PrevNumDialoutIP = *($(DialoutIPInfo), 4) set PrevNumDialinoutIPX = *($(DialinoutIPXInfo), 4) Debug-Output "Ports currently configured "$(PrevNumPorts) Debug-Output "Ports currently dialin NBF "$(PrevNumDialinNBF) Debug-Output "Ports currently dialout NBF "$(PrevNumDialoutNBF) Debug-Output "Ports currently dialin IP "$(PrevNumDialinIP) Debug-Output "Ports currently diaout IP "$(PrevNumDialoutIP) Debug-Output "Ports currently diainout IPX "$(PrevNumDialinoutIPX) CloseRegKey $(KeyMacParams) WriteNdisWan1 =+ set ThisOption = NDISWAN set RasSpecificString = $(!Product$(ThisOption)Name) OpenRegKey $(!REG_H_LOCAL) "" $(NdisWanParamKeyName) $(!MAXIMUM_ALLOWED) KeyHubParams ifstr $(KeyHubParams) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open NdisWan Params key" set RegistryErrorIndex = UNABLE_OPEN_SERVICE_PARAMETERS goto fatalregistry endif set NewValueList = + {{EndPoints, $(NoTitle), $(!REG_VT_MULTI_SZ), $(NewNumPortsList)}} Shell $(!UtilityInf), AddValueList, $(KeyHubParams), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(KeyHubParams) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto fatalregistry endif ifint $(PrevNumDialinNBF) == $(NewNumDialinNBF) ifint $(PrevNumDialoutNBF) == $(NewNumDialoutNBF) ifint $(PrevNumDialinIP) == $(NewNumDialinIP) ifint $(PrevNumDialoutIP) == $(NewNumDialoutIP) ifint $(PrevNumDialinoutIPX) == $(NewNumDialinoutIPX) set CommonStatus = STATUS_USERCANCEL goto WriteRasAsyMac endif endif endif endif endif set NumAddDialinNBF = 0 set NumAddDialoutNBF = 0 set NumRemoveDialinNBF = 0 set NumRemoveDialoutNBF = 0 set NumAddDialinIP = 0 set NumAddDialoutIP = 0 set NumRemoveDialinIP = 0 set NumRemoveDialoutIP = 0 ifint $(PrevNumDialinNBF) > $(NewNumDialinNBF) set-sub NumRemoveDialinNBF = $(PrevNumDialinNBF), $(NewNumDialinNBF) else set-sub NumAddDialinNBF = $(NewNumDialinNBF), $(PrevNumDialinNBF) endif ifint $(PrevNumDialoutNBF) > $(NewNumDialoutNBF) set-sub NumRemoveDialoutNBF = $(PrevNumDialoutNBF), $(NewNumDialoutNBF) else set-sub NumAddDialoutNBF = $(NewNumDialoutNBF), $(PrevNumDialoutNBF) endif ifint $(PrevNumDialinIP) > $(NewNumDialinIP) set-sub NumRemoveDialinIP = $(PrevNumDialinIP), $(NewNumDialinIP) else set-sub NumAddDialinIP = $(NewNumDialinIP), $(PrevNumDialinIP) endif ifint $(PrevNumDialoutIP) > $(NewNumDialoutIP) set-sub NumRemoveDialoutIP = $(PrevNumDialoutIP), $(NewNumDialoutIP) else set-sub NumAddDialoutIP = $(NewNumDialoutIP), $(PrevNumDialoutIP) endif ifint $(PrevNumDialinoutIPX) > $(NewNumDialinoutIPX) set-sub NumRemoveDialinoutIPX = $(PrevNumDialinoutIPX), $(NewNumDialinoutIPX) else set-sub NumAddDialinoutIPX = $(NewNumDialinoutIPX), $(PrevNumDialinoutIPX) endif set NumAddTotal = 0 set NumRemoveTotal = 0 set-add NumAddTotal = $(NumAddDialinNBF), $(NumAddDialoutNBF) set-add NumAddTotal = $(NumAddTotal), $(NumAddDialinIP) set-add NumAddTotal = $(NumAddTotal), $(NumAddDialoutIP) set-add NumAddTotal = $(NumAddTotal), $(NumAddDialinoutIPX) set-add NumRemoveTotal = $(NumRemoveDialinNBF), $(NumRemoveDialoutNBF) set-add NumRemoveTotal = $(NumRemoveTotal), $(NumRemoveDialinIP) set-add NumRemoveTotal = $(NumRemoveTotal), $(NumRemoveDialoutIP) set-add NumRemoveTotal = $(NumRemoveTotal), $(NumRemoveDialinoutIPX) Debug-Output "NumAddDialinNBF = "$(NumAddDialinNBF) Debug-Output "NumAddDialoutNBF = "$(NumAddDialoutNBF) Debug-Output "NumAddDialinIP = "$(NumAddDialinIP) Debug-Output "NumAddDialoutIP = "$(NumAddDialoutIP) Debug-Output "NumAddDialinoutIPX = "$(NumAddDialinoutIPX) Debug-Output "NumAddTotal = "$(NumAddTotal) Debug-Output "NumRemoveDialinNBF = "$(NumRemoveDialinNBF) Debug-Output "NumRemoveDialinIP = "$(NumRemoveDialinIP) Debug-Output "NumRemoveDialinoutIPX = "$(NumRemoveDialinoutIPX) Debug-Output "NumRemoveTotal = "$(NumRemoveTotal) Shell "utility.inf" BaseServiceKey set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) == NO_ERROR Debug-Output "OEMNSVRA.INF: Opened the services base key" set ServicesBaseKey = $($R1) else set ServicesBaseKey = $(KeyNull) endif OpenRegKey $(!REG_H_LOCAL) "" $(!NetworkCardKeyName) $(!MAXIMUM_ALLOWED) KeyNetcards Ifstr(i) $(RegistryErrorIndex) == NO_ERROR Debug-Output "OEMNSVRA.INF: Opened the networkcardkey " endif set RasAdapterNumber = 1 AddNdisWanNetCard = + IfInt $(NumAddTotal) == 0 goto RemoveNdisWanNetCard else Debug-Output "In the Add if loop. NumAddTotal = "$(NumAddTotal) shell $(subroutninf) PushBillBoard NETSTATUSDLG + $(WritingRasParamsAdd)" "$(NumAddTotal) set-sub NumAddTotal = $(NumAddTotal),1 Shell $(!UtilityInf), AddHardwareComponent, + $(!Product$(ThisOption)Name),$(!RasInfName),+ $(!Product$(ThisOption)KeyName), + $(ServicesBaseKey), $(KeyNetcards), $(RasAdapterNumber) ifint $($R4) != -1 Set !NETCARD_LIST = >($(!NETCARD_LIST), + {$(!Product$(ThisOption)Name),+ $(!NetworkCardKeyName)"\"$($R4)}) set RasAdapterNumber = $($R4) endif ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Cannot add hardware component" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != NO_ERROR Debug-Output "Registry error: add hardware component" CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) goto fatalregistry endif set KeyNetcard = $($R1) set KeyParameters = $($R3) set KeyAdapterRules = $($R2) set AdapterNumber = $($R4) set NetcardInfoList = + {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(!Manufacturer)},+ {Title,$(NoTitle),$(!REG_VT_SZ),+ "["$($R4)"] "$(!Product$(ThisOption)Title)},+ {Description,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)Description)},+ {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+ {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(!CurrentDate),1)},+ {Hidden,$(NoTitle),$(!REG_VT_DWORD),$(!HideComponent)}} Shell $(!UtilityInf), GetBusTypeNum set BusTypeNum = $($R1) ifint $(NumAddDialinNBF) > 0 set-sub NumAddDialinNBF = $(NumAddDialinNBF), 1 set NetcardInfoList = >($(NetcardInfoList), + {ProductName,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)DIALINName)}) set ServiceParamList = + {{EnumExportPref,$(NoTitle),$(!REG_VT_DWORD),0},+ {BusType, $(NoTitle), $(!REG_VT_DWORD), $(BusTypeNum)}} set AdapterType = $(!NetRuleHardwareDIALINType) set AdapterClass = $(!NetRuleHardwareDIALINClass) set AdapterBlock = $(!NetRuleHardwareDIALINBlock) else-ifint $(NumAddDialoutNBF) > 0 set-sub NumAddDialoutNBF = $(NumAddDialoutNBF), 1 set NetcardInfoList = >($(NetcardInfoList), + {ProductName,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)DIALOUTName)}) set ServiceParamList = + {{EnumExportPref,$(NoTitle),$(!REG_VT_DWORD),1},+ {BusType, $(NoTitle), $(!REG_VT_DWORD), $(BusTypeNum)}} set AdapterType = $(!NetRuleHardwareDIALOUTType) set AdapterClass = $(!NetRuleHardwareDIALOUTClass) set AdapterBlock = $(!NetRuleHardwareDIALOUTBlock) else-ifint $(NumAddDialinIP) > 0 set-sub NumAddDialinIP = $(NumAddDialinIP), 1 set NetcardInfoList = >($(NetcardInfoList), + {ProductName,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)DIALINIPName)}) set ServiceParamList = + {{EnumExportPref,$(NoTitle),$(!REG_VT_DWORD),0},+ {AutoIPAddress,$(NoTitle),$(!REG_VT_DWORD),1},+ {ServerAdapter,$(NoTitle),$(!REG_VT_DWORD),1},+ {BusType, $(NoTitle), $(!REG_VT_DWORD), $(BusTypeNum)}} set AdapterType = $(!NetRuleHardwareDIALINIPType) set AdapterClass = $(!NetRuleHardwareDIALINIPClass) set AdapterBlock = $(!NetRuleHardwareDIALINIPBlock) else-ifint $(NumAddDialoutIP) > 0 set-sub NumAddDialoutIP = $(NumAddDialoutIP), 1 set NetcardInfoList = >($(NetcardInfoList), + {ProductName,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)DIALOUTIPName)}) set ServiceParamList = + {{EnumExportPref,$(NoTitle),$(!REG_VT_DWORD),1},+ {AutoIPAddress,$(NoTitle),$(!REG_VT_DWORD),1},+ {ServerAdapter,$(NoTitle),$(!REG_VT_DWORD),0},+ {BusType, $(NoTitle), $(!REG_VT_DWORD), $(BusTypeNum)}} set AdapterType = $(!NetRuleHardwareDIALOUTIPType) set AdapterClass = $(!NetRuleHardwareDIALOUTIPClass) set AdapterBlock = $(!NetRuleHardwareDIALOUTIPBlock) else-ifint $(NumAddDialinoutIPX) > 0 set-sub NumAddDialinoutIPX = $(NumAddDialinoutIPX), 1 set NetcardInfoList = >($(NetcardInfoList), + {ProductName,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)DIALINOUTIPXName)}) set ServiceParamList = + {{EnumExportPref,$(NoTitle),$(!REG_VT_DWORD),0},+ {BusType, $(NoTitle), $(!REG_VT_DWORD), $(BusTypeNum)}} set AdapterType = $(!NetRuleHardwareDIALINOUTIPXType) set AdapterClass = $(!NetRuleHardwareDIALINOUTIPXClass) set AdapterBlock = $(!NetRuleHardwareDIALINOUTIPXBlock) endif Shell $(!UtilityInf), AddValueList, $(KeyNetcard), $(NetcardInfoList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "ShellCode error" goto ShellCodeError endif CloseRegKey $(KeyNetcard) set TempProdName = """"$(!Product$(ThisOption)Name)$(AdapterNumber)"""" set TempBindForm = $(TempProdName)$(!NetRuleHardware$(ThisOption)BindForm) set AdapterRulesList = + {{type,$(NoTitle),$(!REG_VT_SZ),+ $(AdapterType)},+ {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)},+ {class,$(NoTitle),$(!REG_VT_MULTI_SZ),+ $(AdapterClass)},+ {block,$(NoTitle),$(!REG_VT_MULTI_SZ),+ $(AdapterBlock)},+ {InfOption,$(NoTitle),$(!REG_VT_SZ), "RAS"},+ {Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)}} Shell $(!UtilityInf), AddValueList, $(KeyAdapterRules), $(AdapterRulesList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "ShellCode error." goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != NO_ERROR Debug-Output "Resgitry error: add value list." CloseRegKey $(KeyParameters) CloseRegKey $(KeyAdapterRules) goto fatalregistry endif CloseRegKey $(KeyAdapterRules) Shell $(!UtilityInf), AddValueList, $(KeyParameters), $(ServiceParamList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "ShellCode error." goto ShellCodeError endif CloseRegKey $(KeyParameters) goto AddNdisWanNetCard endif RemoveNdisWanNetCard = + ifstr(i) $(ServicesBaseKey) != $(KeyNull) CloseRegKey $(ServicesBaseKey) endif ifstr(i) $(KeyNetcards) != $(KeyNull) CloseRegKey $(KeyNetcards) endif Ifint $(NumRemoveTotal) == 0 goto WriteRasAsyMac endif Debug-Output "Removing NdisWan netcard entry..." OpenRegKey $(!REG_H_LOCAL) "" $(!NetworkCardKeyName) $(!MAXIMUM_ALLOWED) KeyNetcards ifstr $(KeyNetcards) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open Netcards key" set RegistryErrorIndex = UNABLE_OPEN_NETWORKCARD_SECTION goto fatalregistry endif EnumRegKey $(KeyNetcards) NetcardsList set RemoveDialinList = {} set RemoveDialinIpList = {} set RemoveDialoutList = {} set RemoveDialoutIpList = {} set RemoveDialinoutIpxList = {} ForListDo $(NetcardsList) set KeyName = *($($),1) OpenRegKey $(KeyNetcards) "" $(KeyName) $(!MAXIMUM_ALLOWED) Card ifstr $(Card) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open netcard key" set RegistryErrorIndex = UNABLE_OPEN_NETWORKCARD_SECTION goto fatalregistry endif GetRegValue $(Card), "ProductName" ProductNameInfo set CardProductName = *($(ProductNameInfo), 4) ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINName) set RemoveDialinList = >($(RemoveDialinList), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINIPName) set RemoveDialinIpList = >($(RemoveDialinIpList), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALOUTName) set RemoveDialoutList = >($(RemoveDialoutList), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALOUTIPName) set RemoveDialoutIpList = >($(RemoveDialoutIpList), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINOUTIPXName) set RemoveDialinoutIpxList = >($(RemoveDialinoutIpxList), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) endif CloseRegKey $(Card) EndForListDo CloseRegKey $(KeyNetcards) QueryListSize IpNetCards $(RemoveDialinIpList) ifint $(IpNetCards) != 0 ForListDo $(RemoveDialinIpList) ifint $(NumRemoveDialinIP) == 0 goto RemoveDialinIPX endif set-sub NumRemoveDialinIP = $(NumRemoveDialinIP), 1 shell $(subroutninf) PushBillBoard NETSTATUSDLG + $(WritingRasParamsRemove)" "$(NumRemoveTotal) set-sub NumRemoveTotal = $(NumRemoveTotal), 1 debug-output "Removing hardware component: "$($) Shell $(!UtilityInf), RemoveHardwareComponent, + $(!Manufacturer), *($($),1), *($($),2) EndForListDo endif RemoveDialinIPX =+ QueryListSize IpxNetCards $(RemoveDialinoutIpxList) ifint $(IpxNetCards) != 0 ForListDo $(RemoveDialinoutIpxList) ifint $(NumRemoveDialinoutIPX) == 0 goto RemoveDialinNBF endif set-sub NumRemoveDialinoutIPX = $(NumRemoveDialinoutIPX), 1 debug-output "Removing hardware component: "$($) shell $(subroutninf) PushBillBoard NETSTATUSDLG + $(WritingRasParamsRemove)" "$(NumRemoveTotal) set-sub NumRemoveTotal = $(NumRemoveTotal), 1 Shell $(!UtilityInf), RemoveHardwareComponent, + $(!Manufacturer), *($($),1), *($($),2) EndForListDo endif RemoveDialinNBF =+ ForListDo $(RemoveDialinList) ifint $(NumRemoveDialinNBF) == 0 goto RemoveDialout endif set-sub NumRemoveDialinNBF = $(NumRemoveDialinNBF), 1 shell $(subroutninf) PushBillBoard NETSTATUSDLG + $(WritingRasParamsRemove)" "$(NumRemoveTotal) set-sub NumRemoveTotal = $(NumRemoveTotal), 1 debug-output "Removing hardware component: "$($) Shell $(!UtilityInf), RemoveHardwareComponent, $(!Manufacturer),+ *($($),1), *($($),2) EndForListDo RemoveDialout = + QueryListSize IpNetCards $(RemoveDialoutIpList) ifint $(IpNetCards) != 0 ForListDo $(RemoveDialoutIpList) ifint $(NumRemoveDialoutIP) == 0 goto RemoveDialoutNBF endif set-sub NumRemoveDialoutIP = $(NumRemoveDialoutIP), 1 shell $(subroutninf) PushBillBoard NETSTATUSDLG + $(WritingRasParamsRemove)" "$(NumRemoveTotal) set-sub NumRemoveTotal = $(NumRemoveTotal), 1 debug-output "Removing hardware component: "$($) Shell $(!UtilityInf), RemoveHardwareComponent, + $(!Manufacturer), *($($),1), *($($),2) EndForListDo endif RemoveDialoutNBF =+ ForListDo $(RemoveDialoutList) ifint $(NumRemoveDialoutNBF) == 0 goto WriteRasAsyMac endif set-sub NumRemoveDialoutNBF = $(NumRemoveDialoutNBF), 1 shell $(subroutninf) PushBillBoard NETSTATUSDLG + $(WritingRasParamsRemove)" "$(NumRemoveTotal) set-sub NumRemoveTotal = $(NumRemoveTotal), 1 debug-output "Removing hardware component: "$($) Shell $(!UtilityInf), RemoveHardwareComponent, $(!Manufacturer),+ *($($),1), *($($),2) EndForListDo WriteRasAsyMac = + ifstr(i) $(fSerialInstalled) == TRUE set AsyStartValue = 2 else-ifstr(i) $(fOtherInstalled) == TRUE set AsyStartValue = 2 else-ifstr(i) $(fUnimodemInstalled) == TRUE set AsyStartValue = 2 else set AsyStartValue = 4 endif OpenRegKey $(!REG_H_LOCAL) "" $(RasAsyMacKeyName) $(!MAXIMUM_ALLOWED) KeyMac ifstr $(KeyMac) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open AsyncMac key" else SetRegValue $(KeyMac) {Start,$(NoTitle),$(!REG_VT_DWORD),$(AsyStartValue)} CloseRegKey $(KeyMac) endif ifint $(PrevNumPorts) == $(NewNumPorts) ifint $(PrevNumDialinNBF) == $(NewNumDialinNBF) ifint $(PrevNumDialoutNBF) == $(NewNumDialoutNBF) ifint $(PrevNumDialinIP) == $(NewNumDialinIP) ifint $(PrevNumDialoutIP) == $(NewNumDialoutIP) ifint $(PrevNumDialinoutIPX) == $(NewNumDialinoutIPX) EndWait Ifint $(BillboardVisible) != 0 Shell "subroutn.inf" PopBillboard Set BillboardVisible = 0 Endif goto WriteProtocolInfo endif endif endif endif endif endif OpenRegKey $(!REG_H_LOCAL) "" $(RasAsyMacParamKeyName) $(!MAXIMUM_ALLOWED) KeyMacParams ifstr $(KeyMacParams) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open AsyncMac Params key" set RegistryErrorIndex = UNABLE_OPEN_SERVICE_PARAMETERS goto fatalregistry endif set NewValueList = + {{Ports, $(NoTitle), $(!REG_VT_DWORD), $(NewNumPorts)},+ {DialinNBF, $(NoTitle), $(!REG_VT_DWORD), $(NewNumDialinNBF)},+ {DialoutNBF, $(NoTitle), $(!REG_VT_DWORD), $(NewNumDialoutNBF)},+ {DialinIP, $(NoTitle), $(!REG_VT_DWORD), $(NewNumDialinIP)},+ {DialoutIP, $(NoTitle), $(!REG_VT_DWORD), $(NewNumDialoutIP)},+ {DialinoutIPX, $(NoTitle), $(!REG_VT_DWORD), $(NewNumDialinoutIPX)}} Shell $(!UtilityInf), AddValueList, $(KeyMacParams), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(KeyMacParams) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto fatalregistry endif OpenRegKey $(!REG_H_LOCAL) "" $(!NetworkCardKeyName) $(!MAXIMUM_ALLOWED) KeyNetcards ifstr $(KeyNetcards) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open Netcards key" set RegistryErrorIndex = UNABLE_OPEN_NETWORKCARD_SECTION goto fatalregistry endif EnumRegKey $(KeyNetcards) NetcardsList ForListDo $(NetcardsList) set KeyName = *($($),1) OpenRegKey $(KeyNetcards) "" $(KeyName) $(!MAXIMUM_ALLOWED) Card ifstr $(Card) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open netcard key" set RegistryErrorIndex = UNABLE_OPEN_NETWORKCARD_SECTION goto fatalregistry endif GetRegValue $(Card), "ProductName" ProductNameInfo set CardProductName = *($(ProductNameInfo), 4) ifstr(i) $(CardProductName) == $(ProductRASASYMACName) goto RasMacCardFound endif CloseRegKey $(Card) EndForListDo CloseRegKey $(KeyNetcards) RasMacCardFound = + Debug-Output "Shelling to find AsyncMac Service." Shell $(!UtilityInf) FindService, $(Card) CloseRegKey $(Card) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF: shell Findservice failed" goto ShellCodeError endif ifstr(i) $($R0) != NO_ERROR Debug-Output "OEMNSVRA.INF: findservice failed." goto fatalregistry endif set KeyParameters = $($R2) CloseRegKey $($R1) Shell $(!UtilityInf), GetBusTypeNum set BusTypeNum = $($R1) set NewValueList = + {{Ports, $(NoTitle), $(!REG_VT_DWORD), $(NewNumPorts)}, + {BusType, $(NoTitle), $(!REG_VT_DWORD), $(BusTypeNum)}} Shell $(!UtilityInf), AddValueList, $(KeyParameters), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(KeyParameters) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto fatalregistry endif WriteProtocolInfo =+ ifstr(i) $(LanRoutingOnly) == TRUE shell "" SetLanOnlyMode 1 else shell "" SetLanOnlyMode 0 endif Shell "" SaveSelectedProtocols $(fNetbeuiSelected) $(fTcpIpSelected) + $(fIpxSelected) $(fNetbeuiAllowed) + $(fTcpIpAllowed) $(fIpxAllowed) $(dwRouterType) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling SaveSelectedProtocols" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "Error Saving selected protocols" goto end endif ifstr(i) $(LanRoutingOnly) != TRUE Shell "" WritePPPParameters ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling WritePPPParameters" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "Error from WritePPPParameters" goto end endif endif ifstr(i) $(fNetbeuiChosen) == TRUE ifstr(i) $(fNetbeuiInstalled) == FALSE Shell "" InstallProtocol "NETBEUI" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling InstallProtocol NETBEUI" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "Error installing NETBEUI" goto end endif endif endif ifstr(i) $(fTcpIpChosen) == TRUE ifstr(i) $(fTcpIpInstalled) == FALSE Shell "" InstallProtocol "TCPIP" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling InstallProtocol TCPIP" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "Error installing TCPIP" goto end endif endif Shell "" UpdateIPRouterInfo $(EnableIpRouter) ifstr(i) $(LanRoutingOnly) != TRUE Shell "" SaveTcpipInfo $(fTcpIpAllowed) endif ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling SaveTcpipInfo" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "Error saving Tcpip info" goto end endif ifstr(i) $(LanRoutingOnly) != TRUE Shell "" InstallWanArpService endif Shell "" DisablePPTPFilterDriver Shell "" InstallIPFilterDriver Shell "" InstallIPRtrMgr Shell "" InstallIPEventlogDlls Shell "" InstallIPSnmpAgents set CommonStatus = STATUS_SUCCESSFUL else ifstr(i) $(LanRoutingOnly) != TRUE Shell "" SaveTcpipInfo $(fTcpIpAllowed) Shell "" RemoveWanArpService endif set CommonStatus = STATUS_SUCCESSFUL endif ifstr(i) $(fIpxChosen) == TRUE ifstr(i) $(fIpxInstalled) == FALSE Shell "" InstallProtocol "IPX" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling InstallProtocol IPX" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "Error installing IPX" goto end endif endif OpenRegKey $(!REG_H_LOCAL) "" + $(!NTN_ServiceBase)"\NWLNKIPX\Parameters" + $(!MAXIMUM_ALLOWED) KeyIpxParameters ifstr $(KeyIpxParameters) != $(KeyNull) GetRegValue $(KeyIpxParameters), "SingleNetworkActive" + SingleNetworkActive ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) SetRegValue $(KeyIpxParameters) + {SingleNetworkActive, 0, $(!REG_VT_DWORD), 1} endif GetRegValue $(KeyIpxParameters), "DisableDialoutSap" + DisableDialoutSap ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) SetRegValue $(KeyIpxParameters) + {DisableDialoutSap, 0, $(!REG_VT_DWORD), 1} endif GetRegValue $(KeyIpxParameters), "DisableDialinNetbios" + DisableDialinNetbios ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) SetRegValue $(KeyIpxParameters) + {DisableDialinNetbios, 0, $(!REG_VT_DWORD), 1} endif CloseRegKey $(KeyIpxParameters) Endif else Debug-Output "OEMNSVRA.INF: error opening NWLNKIPX\Parameters key" endif ifstr(i) $(LanRoutingOnly) != TRUE Shell "" SaveIpxInfo $(EnableIpxRouter) $(fIpxAllowed) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling SaveIpxInfo" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "Error saving Ipx info" goto end endif endif ifint $(EnableIpxRouter) == 1 Shell "" InstallIPXRtrMgr Shell "" InstallIPXEventlogDlls Shell "" InstallIPXSnmpAgents Shell "" InstallIpxPingService shell "" InstallNwlnkFwdService shell "" InstallNwlnkFltService set CommonStatus = STATUS_SUCCESSFUL endif Shell "" UpdateIPXRouterInfo $(EnableWanRouter) Ifstr(i) $(!NTN_InstallPhase) != primary shell $(subroutninf) PopBillBoard Set BillboardVisible = 0 Endif else ifstr(i) $(LanRoutingOnly) != TRUE Shell "" SaveIpxInfo $(EnableIpxRouter) $(fIpxAllowed) endif endif WriteParametersOver = + EndWait goto successful RemoveRas = + StartWait set REMOVE_SOFTWARE = {} Shell "" AreRequiredDllsPresent ifstr(i) $($R0) != STATUS_SUCCESSFUL set MissingFiles = $($R1) set ErrorLoadingConfigDll = $(ErrorLoadingConfigDll)" "$(MissingFiles) shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "STATUS" $(ErrorLoadingConfigDll) set CommonStatus = STATUS_USERCANCEL goto end endif LoadLibrary "x" $(!STF_CWDDIR)rascfg.dll PORTSDLGHANDLE shell "" QueryComponentsInstalled $(ProductKeyName) Ifstr(i) $($R0) == STATUS_SUCCESSFUL Set InstalledComps = $($R1) Set InstalledFlags = $($R2) Set DoServer = *($(InstalledFlags),1) Set DoClient = *($(InstalledFlags),2) Set DoAdmin = *($(InstalledFlags),3) Set DoServerOnly = *($(InstalledFlags),4) Set DoClientOnly = *($(InstalledFlags),5) Set DoAdminOnly = *($(InstalledFlags),6) Endif Debug-Output "Installed List is "$(InstalledComps) Debug-Output "Installed Flags is "$(InstalledFlags) set REMOVE_SOFTWARE = >($(REMOVE_SOFTWARE), $(ProductRASName)) set REMOVE_SOFTWARE = >($(REMOVE_SOFTWARE), $(ProductROUTINGName)) set REMOVE_SOFTWARE = >($(REMOVE_SOFTWARE), $(ProductRASSVRName)) set REMOVE_SOFTWARE = >($(REMOVE_SOFTWARE), $(ProductRASMANName)) set REMOVE_SOFTWARE = >($(REMOVE_SOFTWARE), $(!ProductRASAUTODIALName)) OpenRegKey $(!REG_H_LOCAL) "" $(!NetworkCardKeyName) $(!MAXIMUM_ALLOWED) KeyNetcards ifstr $(KeyNetcards) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open Netcards key" goto RemoveSoftware endif EnumRegKey $(KeyNetcards) NetcardsList ForListDo $(NetcardsList) set KeyName = *($($),1) OpenRegKey $(KeyNetcards) "" $(KeyName) $(!MAXIMUM_ALLOWED) Card ifstr $(Card) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open netcard key" goto RemoveSoftware endif GetRegValue $(Card), "ProductName" ProductNameInfo set CardProductName = *($(ProductNameInfo), 4) ifstr(i) $(CardProductName) == $(!ProductNDISWANName) set !NETCARD_LIST = >($(!NETCARD_LIST), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINName) set !NETCARD_LIST = >($(!NETCARD_LIST), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALOUTName) set !NETCARD_LIST = >($(!NETCARD_LIST), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINIPName) set !NETCARD_LIST = >($(!NETCARD_LIST), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALOUTIPName) set !NETCARD_LIST = >($(!NETCARD_LIST), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINOUTIPXName) set !NETCARD_LIST = >($(!NETCARD_LIST), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(ProductRASASYMACName) set !NETCARD_LIST = >($(!NETCARD_LIST),+ {$(ProductRASASYMACName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) endif CloseRegKey $(Card) EndForListDo CloseRegKey $(KeyNetcards) read-syms StatusUpdatingRegistry$(!STF_LANGUAGE) QueryListSize NumRemove $(!NETCARD_LIST) ForListDo $(!NETCARD_LIST) shell $(subroutninf) PushBillBoard NETSTATUSDLG + $(RemovingAdapters)" "$(NumRemove) Set BillboardVisible = 1 debug-output "Removing hardware component: "$($) Shell $(!UtilityInf), RemoveHardwareComponent, $(!Manufacturer),+ *($($),1), *($($),2) set-sub NumRemove = $(NumRemove), 1 EndForListDo RemoveSoftware = + shell $(subroutninf) PushBillBoard NETSTATUSDLG $(RemovingServices) set BillboardVisible = 1 Shell "" RemoveNdisTapiService Shell "" RemoveRasAcdService Shell "" RemoveWanArpService ifstr(i) $(!PROXY_INSTALLED) == FALSE Shell "" RemoveIPFilterDriver endif Shell "" RemoveIPRtrMgr Shell "" RemoveIPEventlogDlls Shell "" RemoveIPSnmpAgents Shell "" RemoveRasRadService Shell "" EnablePPTPFilterDriver Shell "" RemoveIPXRtrMgr Shell "" RemoveIpxPingService Shell "" RemoveIPXEventlogDlls Shell "" RemoveIPXSnmpAgents Shell "" RemoveNwlnkFwdService Shell "" RemoveNwlnkFltService set RasTapiDevicesKey = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(RasTapiDevicesKeyName) $(!MAXIMUM_ALLOWED) RasTapiDevicesKey ifstr $(RasTapiDevicesKey) != $(KeyNull) set TapiProviderList = {} EnumRegKey $(RasTapiDevicesKey) TapiProviderList ForListDo $(TapiProviderList) set ProviderName = *($($),1) Debug-Output "OEMNSVRA.INF: Removing "$(ProviderName)" dependency on NdisTapi." Shell "" RemoveServiceDependency $(ProviderName) "NdisTapi" EndForListDo EndIf set fIpxAllowed = FALSE Shell "" QuerySelectedProtocols ifstr(i) $($R0) == STATUS_SUCCESSFUL set fIpxAllowed = $($R6) else Debug-Output "RemoveRas: error QuerySelectedProtocols" endif ifstr(i) $(fIpxAllowed) == TRUE OpenRegKey $(!REG_H_LOCAL) "" $(!RasIsnSapKeyName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != "" SetRegValue $(KeyService) {ImagePath, 0, $(!REG_VT_EXPAND_SZ), "%SystemRoot%\system32\services.exe"} CloseRegKey $(KeyService) endif OpenRegKey $(!REG_H_LOCAL) "" $(!RasIsnRipKeyName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != "" SetRegValue $(KeyService) {Start, 0, $(!REG_VT_DWORD), 2} CloseRegKey $(KeyService) endif endif Debug-Output "Remove Software List "$(REMOVE_SOFTWARE) ForListDo $(REMOVE_SOFTWARE) Debug-Output "Removing software component: "$($) ifstr(i) $($) == RAS OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyBase) + $(!MAXIMUM_ALLOWED) ProductKey Ifstr $(ProductKey) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open Software product key" goto RemoveFiles endif DeleteRegTree $(ProductKey) $(Product$($)Name) CloseRegKey $(ProductKey) else Shell $(!UtilityInf), RemoveSoftwareComponent, $(!Manufacturer), $($) endif EndForListDo RemoveFiles = + shell $(subroutninf) PushBillBoard NETSTATUSDLG $(RemovingFiles) set BillboardVisible = 1 Install RemoveRasFiles Install RestoreSavedFiles ifstr(i) $(DoServerOnly) == FALSE Install RemoveRasGroup endif Shell "" RemoveInfFromReviewPrograms shell "" RemoveNetGroupDependency RemoveRasOver = + Debug-Output "OEMNSVRA.INF: Doing a forcible cleanup..." OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_SoftwareBase)"\Microsoft" + $(!MAXIMUM_ALLOWED) KeySoftware ifstr $(KeySoftware) != $(KeyNull) set SoftList = {"ASYNCMAC", "NDISWAN", "RAS", "RASMAN", + "RASAUTO", "REMOTEACCESS"} ForListDo $(SoftList) DeleteRegTree $(KeySoftware) $($) EndForListDo set NetworkCardKey = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(!NetworkCardKeyName) + $(!MAXIMUM_ALLOWED) NetworkCardKey Ifstr(i) $(NetworkCardKey) != $(KeyNull) set NetcardsList = {} EnumRegKey $(NetworkCardKey) NetcardsList Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ForListDo $(NetcardsList) set KeyName = *($($),1) set Card = $(KeyNull) OpenRegKey $(NetworkCardKey) "" $(KeyName) $(!MAXIMUM_ALLOWED) Card ifstr $(Card) == $(KeyNull) Debug-Output "RemoveRas: could not open netcard key "$(KeyName) else GetRegValue $(Card), "ProductName" ProductNameInfo Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "RemoveRas: ProductName not found." else set CardProductName = *($(ProductNameInfo), 4) Debug-Output "RemoveRas: ProductName. "$(CardProductName) ifstr(i) $(CardProductName) == $(!ProductNDISWANName) DeleteRegTree $(NetworkCardKey) $(KeyName) endif ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINName) DeleteRegTree $(NetworkCardKey) $(KeyName) endif ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALOUTName) DeleteRegTree $(NetworkCardKey) $(KeyName) endif ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINIPName) DeleteRegTree $(NetworkCardKey) $(KeyName) endif ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALOUTIPName) DeleteRegTree $(NetworkCardKey) $(KeyName) endif ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINOUTIPXName) DeleteRegTree $(NetworkCardKey) $(KeyName) endif ifstr(i) $(CardProductName) == $(ProductRASASYMACName) DeleteRegTree $(NetworkCardKey) $(KeyName) endif endif EndForListDo else Debug-Output "RemoveRas: EnumRegKey failed." endif else Debug-Output "RemoveRas: failed to open "$(!NetworkCardKeyName) endif CloseRegKey $(KeySoftware) else Debug-Output "RemoveRas: failed to open software key" endif OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase) + $(!MAXIMUM_ALLOWED) KeyServices ifstr $(KeyServices) != $(KeyNull) set ServiceList = {"ASYNCMAC", "NDISWAN", "RASARP", "RASMAN", + "REMOTEACCESS", "RASACD", "RASAUTO"} ForListDo $(ServiceList) DeleteRegTree $(KeyServices) $($) EndForListDo EnumRegKey $(KeyServices) ServiceList Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ForListDo $(ServiceList) set ServiceName = *($($),1) set Result = 1 LibraryProcedure Result $(!LIBHANDLE) SetupStrncmp + $(ServiceName) "NdisWan" 7 ifint $(Result) == 0 Debug-Output "RemoveRas: Removing "$(ServiceName) DeleteRegTree $(KeyServices) $(ServiceName) else LibraryProcedure Result $(!LIBHANDLE) SetupStrncmp + $(ServiceName) "AsyncMac" 8 ifint $(Result) == 0 Debug-Output "RemoveRas: Removing "$(ServiceName) DeleteRegTree $(KeyServices) $(ServiceName) endif endif EndForListDo endif CloseRegKey $(KeyServices) endif ifint $(BillboardVisible) != 0 Shell "subroutn.inf" PopBillboard Set BillboardVisible = 0 Endif EndWait goto $(to) BindingsRas = + Shell "" AreRequiredDllsPresent ifstr(i) $($R0) != STATUS_SUCCESSFUL set MissingFiles = $($R1) set ErrorLoadingConfigDll = $(ErrorLoadingConfigDll)" "$(MissingFiles) shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "STATUS" $(ErrorLoadingConfigDll) set CommonStatus = STATUS_USERCANCEL goto end endif LoadLibrary "x" $(!STF_CWDDIR)rascfg.dll PORTSDLGHANDLE Debug-Output "OEMNSVRA.INF:Review bindings is being called!!!." Shell "" UpdateSelectedProtocols ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling UpdateSelectedProtocols." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by UpdateSelectedProtocols." endif set fNetbeuiChosen = $($R1) set fTcpIpChosen = $($R2) set fIpxChosen = $($R3) set dwRouterType = $($R4) ifstr(i) $(fNetbeuiChosen) == FALSE ifstr(i) $(fTcpIpChosen) == FALSE ifstr(i) $(fIpxChosen) == FALSE read-syms NoProtocolsDlg$(!STF_LANGUAGE) Shell $(subroutninf) SetupMessage, $(!STF_LANGUAGE), "STATUS", $(NoProtocolsWarning) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif goto end endif endif endif OpenRegKey $(!REG_H_LOCAL) "" $(!RouterKeyName) $(!MAXIMUM_ALLOWED) KeyRouter ifstr $(KeyRouter) != $(KeyNull) GetRegValue $(KeyRouter), "Review" ReviewInfo set ReviewValue = *($(ReviewInfo), 4) ifint $(ReviewValue) == 1 Debug-Output "BindingsRas: resetting Review to 0 in SOFTWARE\Router\CurrentVersion key" SetRegValue $(KeyRouter) {Review,$(NoTitle),$(!REG_VT_DWORD), 0} Shell "" AddInfToReviewProgramsList ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling AddInfToReviewProgramsList." goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by AddInfToReviewProgramsList." endif endif CloseRegKey $(KeyRouter) else Debug-Output "OEMNSVRA.INF: error opening SOFTWARE\Router\CurrentVersion key." endif ifstr(i) $(fIpxChosen) == TRUE OpenRegKey $(!REG_H_LOCAL) "" $(!RasIsnSapKeyName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != "" SetRegValue $(KeyService) {ImagePath, 0, $(!REG_VT_EXPAND_SZ), "%SystemRoot%\System32\mprouter.exe"} CloseRegKey $(KeyService) endif OpenRegKey $(!REG_H_LOCAL) "" $(!RasIsnRipKeyName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != "" SetRegValue $(KeyService) {Start, 0, $(!REG_VT_DWORD), 4} CloseRegKey $(KeyService) endif endif Debug-Output "AddRtrMgrAndLanInterfaces entry." LibraryProcedure Result, $(PORTSDLGHANDLE), AddRtrMgrAndLanInterfaces $(fTcpIpChosen) $(fIpxChosen) ifstr(i) $(Result) == ERROR Shell subroutn.inf, SetupMessage $(!STF_LANGUAGE) "STATUS" $(ErrorConfigInterfaces) Debug-Output "AddRtrMgrAndLanInterfaces ERROR exit." else Debug-Output "AddRtrMgrAndLanInterfaces exit." endif RemoveRtrMgrsBegin =+ Debug-Output "BindingsRas: RemoveRtrMgrsBegin..." set RemoveRtrMgrList = {} ifstr(i) $(fTcpIpChosen) == FALSE set RemoveRtrMgrList = >($(RemoveRtrMgrList), "IP") endif ifstr(i) $(fIpxChosen) == FALSE set RemoveRtrMgrList = >($(RemoveRtrMgrList), "IPX") endif Debug-Output "BindingsRas: RemoveRtrMgrList == "$(RemoveRtrMgrList) set NumRtrMgrs = 0 QueryListSize NumRtrMgrs $(RemoveRtrMgrList) ifint $(NumRtrMgrs) != 0 OpenRegKey $(!REG_H_LOCAL) "" $(!RouterKeyName)"\RouterManagers" $(!MAXIMUM_ALLOWED) KeyRtrMgrs Ifstr $(KeyRtrMgrs) == "" Debug-Output "BindingsRas: error opening Router\RouterManagers key" goto RemoveRtrMgrsEnd endif OpenRegKey $(!REG_H_LOCAL) "" $(!RouterKeyName)"\Interfaces" $(!MAXIMUM_ALLOWED) KeyInterfaces Ifstr $(KeyInterfaces) == "" CloseRegKey $(KeyRtrMgrs) Debug-Output "BindingsRas: error opening Router\Interfaces key" goto RemoveRtrMgrsEnd endif Debug-Output "BindingsRas: InterfacesList == "$(InterfacesList) forlistdo $(RemoveRtrMgrList) set RemoveRtrMgr = $($) Debug-Output "BindingsRas: Removing RouterManager "$(RemoveRtrMgr) DeleteRegTree $(KeyRtrMgrs) $(RemoveRtrMgr) set InterfacesList = {} EnumRegKey $(KeyInterfaces) InterfacesList forlistdo $(InterfacesList) set InterfaceName = *($($),1) OpenRegKey $(KeyInterfaces) "" $(InterfaceName) $(!MAXIMUM_ALLOWED) KeyInterface ifstr $(KeyInterface) == "" Debug-Output "BindingsRas: error opening interface "$(InterfaceName) CloseRegKey $(KeyRtrMgrs) CloseRegKey $(KeyInterfaces) goto RemoveRtrMgrsEnd endif EnumRegKey $(KeyInterface) InterfaceRtrMgrList forlistdo $(InterfaceRtrMgrList) set InterfaceRtrMgrName = *($($),1) ifstr(i) $(InterfaceRtrMgrName) == $(RemoveRtrMgr) Debug-Output "BindingsRas: Removing RouterManager "$(InterfaceRtrMgrName)"for interface "$(InterfaceName) DeleteRegTree $(KeyInterface) $(InterfaceRtrMgrName) endif endforlistdo set InterfaceRtrMgrList = {} EnumRegKey $(KeyInterface) InterfaceRtrMgrList set NumInterfaceRtrMgrs = 0 QueryListSize NumInterfaceRtrMgrs $(InterfaceRtrMgrList) ifint $(NumInterfaceRtrMgrs) == 0 Debug-Output "BindingsRas: Removing Interface "$(InterfaceName) DeleteRegTree $(KeyInterfaces) $(InterfaceName) else CloseRegKey $(KeyInterface) endif endforlistdo endforlistdo CloseRegKey $(KeyRtrMgrs) CloseRegKey $(KeyInterfaces) endif RemoveRtrMgrsEnd =+ LibraryProcedure Result, $(!LIBHANDLE), SetupChangeServiceConfig, "Router" + $(!SERVICE_SHARE_INTERACT), $(!SERVICE_NO_CHANGE), + $(!SERVICE_NO_CHANGE), "", "", $(newGroupList), + "", "", "" Debug-Output "Result of setting service Router to interact with desktop=> "$(Result) LibraryProcedure Result, $(PORTSDLGHANDLE), ChangeRouterServiceConfig ifint $(dwRouterType) == $(ROUTER_TYPE_LAN) Debug-Output "LanRouting only enabled, so nothing to do" goto BindingsRasEnd endif set WkstaConfigured = FALSE set SrvrConfigured = FALSE shell "" IsNetworkConfigured Debug-Output "IsNetworkConfigured returned R0 "$($R0) Debug-Output "IsNetworkConfigured returned R1 "$($R1) Debug-Output "IsNetworkConfigured returned R2 "$($R2) ifstr(i) $($R0) == STATUS_SUCCESSFUL set WkstaConfigured = $($R1) set SrvrConfigured = $($R2) else read-syms NetworkConfigError$(!STF_LANGUAGE) set Text = $(Text1) shell $(subroutninf) SetupMessage $(!STF_LANGUAGE) "FATAL" $(Text) goto end endif ifstr(i) $(WkstaConfigured) == TRUE ifstr(i) $(SrvrConfigured) == TRUE goto InstallNetworkEnd else goto InstallNetworkError endif else goto InstallNetworkError endif InstallNetworkError =+ set CommonStatus = STATUS_USERCANCEL read-syms NetworkConfigError$(!STF_LANGUAGE) set Text = $(Text2) shell $(subroutninf) SetupMessage $(!STF_LANGUAGE) "STATUS" $(Text) InstallNetworkEnd =+ shell "" QueryComponentsInstalled $(ProductKeyName) Ifstr(i) $($R0) == STATUS_SUCCESSFUL Set InstalledComps = $($R1) Set InstalledFlags = $($R2) Set DoServer = *($(InstalledFlags),1) Set DoClient = *($(InstalledFlags),2) Set DoAdmin = *($(InstalledFlags),3) Set DoServerOnly = *($(InstalledFlags),4) Set DoClientOnly = *($(InstalledFlags),5) Set DoAdminOnly = *($(InstalledFlags),6) Endif Debug-Output "Installed List is "$(InstalledComps) Debug-Output "Installed Flags is "$(InstalledFlags) set AsyStartValue = 4 OpenRegKey $(!REG_H_LOCAL) "" $(RasAsyMacKeyName) $(!MAXIMUM_ALLOWED) KeyMac ifstr $(KeyMac) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open AsyncMac key" else GetRegValue $(KeyMac), "Start" AsyStartInfo ifint $(RegLastError) == 0 set AsyStartValue = *($(AsyStartInfo), 4) endif Debug-Output "OEMNSVRA.INF: AsyncMac start value "$(AsyStartValue) CloseRegKey $(KeyMac) endif set NdisWanParam = {} set NdisWanEndPointsLst = {} ifint $(AsyStartValue) != 4 set RasMacLinkageKey = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(RasMacLinkageKeyName) $(!MAXIMUM_ALLOWED) RasMacLinkageKey ifstr $(RasMacLinkageKey) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open AsyncMac linkage key" set RegistryErrorIndex = UNABLE_ACCESS_CONFIGURE_SERVICE goto fatalregistry endif GetRegValue $(RasMacLinkageKey), "Bind" BindInfo set NdisWanParam = *($(BindInfo), 4) CloseRegKey $(RasMacLinkageKey) set NdisWanParamKey = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(NdisWanParamKeyName) $(!MAXIMUM_ALLOWED) NdisWanParamKey ifstr $(NdisWanParamKey) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open NdisWanParamKey" else GetRegValue $(NdisWanParamKey), "EndPoints" EndPointsInfo set EndPointsLst = *($(EndPointsInfo), 4) set NdisWanEndPointsLst = >($(NdisWanEndPointsLst),*($(EndPointsLst), 1)) CloseRegKey $(NdisWanParamKey) endif endif set ProviderList = {} set RasTapiDevicesKey = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(RasTapiDevicesKeyName) $(!MAXIMUM_ALLOWED) RasTapiDevicesKey ifstr $(RasTapiDevicesKey) != $(KeyNull) set TapiProviderList = {} EnumRegKey $(RasTapiDevicesKey) TapiProviderList ForListDo $(TapiProviderList) set TapiAddress = {} set NumEndPoints = 0 set ProviderName = *($($),1) Debug-Output "OEMNSVRA.INF: TAPI provider name = "$(ProviderName) OpenRegKey $(RasTapiDevicesKey) "" $(ProviderName) $(!MAXIMUM_ALLOWED) Provider ifstr $(Provider) != $(KeyNull) GetRegValue $(Provider), "Address" TapiAddress set AdapterNum = "" set EndPointCount = 0 set tmpNdisWanParam = {} set tmpNdisWanEndPointsLst = {} set DeviceName = "" ForListDo *($(TapiAddress),4) Split-String $($) "- " Address set NewAdapterNum = *($(Address), 1) ifstr(i) $(AdapterNum) != $(NewAdapterNum) ifstr(i) $(AdapterNum) != "" set tmpNdisWanParam = >($(tmpNdisWanParam), $(DeviceName)) set tmpNdisWanEndPointsLst = >($(tmpNdisWanEndPointsLst), $(EndPointCount)) set EndPointCount = 0 endif set AdapterNum = $(NewAdapterNum) set DeviceName = "\Device\"$(ProviderName)$(AdapterNum) endif set-add EndPointCount = $(EndPointCount), 1 EndForListDo ifstr $(DeviceName) != "" set tmpNdisWanParam = >($(tmpNdisWanParam), $(DeviceName)) set tmpNdisWanEndPointsLst = >($(tmpNdisWanEndPointsLst), $(EndPointCount)) endif CloseRegKey $(Provider) else Debug-Output "OEMNSVRA.INF: could not open RAS\TAPI DEVICES\"$(DriverName)" key." endif set ProviderKeyName = $(!NTN_ServiceBase)"\"$(ProviderName) set ProviderLinkageKeyName = $(!NTN_ServiceBase)"\"$(ProviderName)"\Linkage" Debug-Output "TAPI provider key name "$(ProviderKeyName) set ProviderKey = $(KeyNull) set ProviderLinkageKey = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(ProviderKeyName) $(!MAXIMUM_ALLOWED) ProviderKey ifstr $(ProviderKey) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open key "$(ProviderKeyName) else set DeleteFlag = 0 set DeleteFlagInfo = {} GetRegValue $(ProviderKey),"DeleteFlag", DeleteFlagInfo set DeleteFlag = *($(DeleteFlagInfo), 4) ifint $(DeleteFlag) != 1 set ProviderList = >($(ProviderList), $(ProviderName)) Shell "" AddServiceDependency $(ProviderName) "NdisTapi" ForListDo $(tmpNdisWanParam) set NdisWanParam = >($(NdisWanParam), $($)) set NdisWanEndPointsLst = >($(NdisWanEndPointsLst), *($(tmpNdisWanEndPointsLst), $(#))) EndForListDo endif CloseRegKey $(ProviderKey) endif EndForListDo CloseRegKey $(RasTapiDevicesKey) else Debug-Output "OEMNSVRA.INF: could not open RAS\TAPI DEVICES key" endif set NumBindings = 0 Debug-Output "NdisWan param Bind value = "$(NdisWanParam) QueryListSize NumBindings $(NdisWanParam) Debug-Output "Number of Ndiswan bindings = "$(NumBindings) ifint $(NumBindings) == 0 Debug-Output "OEMNSVRA.INF: No ports are configured" read-syms NoPortsConfigured$(!STF_LANGUAGE) Shell $(subroutninf) SetupMessage, $(!STF_LANGUAGE), "STATUS", $(NoPortsError) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif goto end endif OpenRegKey $(!REG_H_LOCAL) "" $(NdisWanParamKeyName) $(!MAXIMUM_ALLOWED) NdisWanParamKey ifstr $(NdisWanParamKey) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open NdisWanParamKey" set RegistryErrorIndex = UNABLE_ACCESS_CONFIGURE_SERVICE goto fatalregistry endif Debug-Output "Setting NdisWan param Bind to "$(NdisWanParam) set NewValueList = {{Bind, $(NoTitle), $(!REG_VT_MULTI_SZ), $(NdisWanParam)}} Shell $(!UtilityInf), AddValueList, $(NdisWanParamKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) CloseRegKey $(NdisWanParamKey) goto ShellCodeError endif Debug-Output "Setting NdisWan param EndPoints to "$(NdisWanEndPointsLst) set NewValueList = {{EndPoints, $(NoTitle), $(!REG_VT_MULTI_SZ), $(NdisWanEndPointsLst)}} Shell $(!UtilityInf), AddValueList, $(NdisWanParamKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) CloseRegKey $(NdisWanParamKey) goto ShellCodeError endif CloseRegKey $(NdisWanParamKey) LibraryProcedure Result, $(PORTSDLGHANDLE), InitRasmanSecurityDescriptor Debug-Output "Result of setting Rasman security descriptor "$(Result) LibraryProcedure Result, $(PORTSDLGHANDLE), InitRemoteSecurityDescriptor Debug-Output "Result of setting Remote security descriptor "$(Result) forlistdo { RasAuto, RasMan, RemoteAccess, Router } LibraryProcedure Result, $(!LIBHANDLE), SetupChangeServiceConfig, $($) + $(!SERVICE_SHARE_INTERACT), $(!SERVICE_NO_CHANGE), + $(!SERVICE_NO_CHANGE), "", "", $(newGroupList), + "", "", "" Debug-Output "Result of setting service "$($)" to interact with desktop=> "$(Result) endforlistdo Shell "" UpdateCPList ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling UpdateCPList." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by UpdateCPList." endif ifstr(i) $(fTcpIpChosen) == TRUE shell "" UpdateLLInterface ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling UpdateLLInterface." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by UpdateLLInterface." endif endif BindingsRasEnd = + Debug-Output "Review bindings done." goto end UpgradeRas = + OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(!MAXIMUM_ALLOWED) KeyProduct Ifstr $(KeyProduct) != $(KeyNull) Shell $(!UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "ShellCode error" goto ShellCodeError endif set !UG_Filename = $($R0) ifstr(i) $(!UG_Filename) != "" Debug-Output "File Name is "$(!UG_Filename) StartWait read-syms UpgradeErrors$(!STF_LANGUAGE) read-syms StatusUpdatingRegistry$(!STF_LANGUAGE) Shell "subroutn.inf" PushBillboard NETSTATUSDLG $(UpdatingRas) Set BillboardVisible = 1 SetRegValue $(KeyProduct) {Title, $(NoTitle), $(!REG_VT_SZ), $(!ProductROUTINGTitle)} SetRegValue $(KeyProduct) {Description, $(NoTitle), $(!REG_VT_SZ), $(!ProductROUTINGDescription)} shell "" QueryComponentsInstalled $(ProductKeyName) Ifstr(i) $($R0) == STATUS_SUCCESSFUL Set InstalledComps = $($R1) Set InstalledFlags = $($R2) Set DoServer = *($(InstalledFlags),1) Set DoClient = *($(InstalledFlags),2) Set DoAdmin = *($(InstalledFlags),3) Set DoServerOnly = *($(InstalledFlags),4) Set DoClientOnly = *($(InstalledFlags),5) Set DoAdminOnly = *($(InstalledFlags),6) Endif Debug-Output "Installed List is "$(InstalledComps) Debug-Output "Installed Flags is "$(InstalledFlags) Set ServerInstalled = $(DoServer) Set ClientInstalled = $(DoClient) Set AdminInstalled = $(DoAdmin) Install InstallResources ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS goto filecopycancel endif Install InstallRasFiles ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS goto filecopycancel endif Shell "" AreRequiredDllsPresent ifstr(i) $($R0) != STATUS_SUCCESSFUL set MissingFiles = $($R1) set ErrorLoadingConfigDll = $(ErrorLoadingConfigDll)" "$(MissingFiles) shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "STATUS" $(ErrorLoadingConfigDll) set CommonStatus = STATUS_USERCANCEL goto end endif LoadLibrary "x" $(!STF_CWDDIR)rascfg.dll PORTSDLGHANDLE Debug-Output "AddPPTPFilters entry." LibraryProcedure Result, $(PORTSDLGHANDLE), AddPPTPFilters Debug-Output "AddPPTPFilters exit result = "$(Result) set RasInstalled = FALSE set LanInstalled = FALSE set DdmInstalled = FALSE OpenRegKey $(!REG_H_LOCAL) "" $(RasProtocolsKeyName) $(!MAXIMUM_ALLOWED) KeyProtocol ifstr $(KeyProtocol) != $(KeyNull) GetRegValue $(KeyProtocol), "RouterType" RouterType Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(!MAXIMUM_ALLOWED) KeyRas ifstr $(KeyRas) != $(KeyNull) set RasInstalled = TRUE CloseRegKey $(KeyRas) endif ForListDo { NwlnkRip, NwSapAgent, IpRip, RelayAgent } set ServiceName = $(!NTN_ServiceBase)"\"$($) OpenRegKey $(!REG_H_LOCAL) "" $(ServiceName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) set LanInstalled = TRUE CloseRegKey $(KeyService) endif EndForListDo set RouterType = 1 ifstr(i) $(RasInstalled) == TRUE ifstr(i) $(LanInstalled) == TRUE set RouterType = 3 else set RouterType = 1 endif else-ifstr(i) $(LanInstalled) == TRUE ifstr(i) $(RasInstalled) == TRUE set RouterType = 3 else set RouterType = 2 endif endif SetRegValue $(KeyProtocol) {RouterType, $(NoTitle), $(!REG_VT_DWORD), $(RouterType)} EndIf CloseRegKey $(KeyProtocol) endif Shell "" RemoveIpRipService Shell "" RemoveRelayAgentService Shell "" RemoveNwlnkRipService Shell "" RemoveIsnSapService set fTcpIpChosen = FALSE set fIpxChosen = FALSE Shell "" QuerySelectedProtocols Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by QuerySelectedProtocols." endif set fNetbeuiSelected = $($R1) set fTcpIpSelected = $($R2) set fIpxSelected = $($R3) set fNetbeuiAllowed = $($R4) set fTcpIpAllowed = $($R5) set fIpxAllowed = $($R6) set dwRouterType = $($R7) ifstr(i) $(fTcpIpSelected) == TRUE set fTcpIpChosen = TRUE else set fTcpIpChosen = $(fTcpIpAllowed) endif ifstr(i) $(fIpxSelected) == TRUE set fIpxChosen = TRUE else set fIpxChosen = $(fIpxAllowed) endif set LanRoutingOnly = FALSE ifint $(dwRouterType) == 1 set RasInstalled = TRUE else-ifint $(dwRouterType) == 2 set LanRoutingOnly = TRUE set LanInstalled = TRUE else-ifint $(dwRouterType) == 3 set RasInstalled = TRUE set LanInstalled = TRUE else-ifint $(dwRouterType) == 4 set DdmInstalled = TRUE else-ifint $(dwRouterType) == 5 set RasInstalled = TRUE set DdmInstalled = TRUE else-ifint $(dwRouterType) == 6 set DdmInstalled = TRUE set LanInstalled = TRUE else-ifint $(dwRouterType) == 7 set RasInstalled = TRUE set DdmInstalled = TRUE set LanInstalled = TRUE else Debug-Output "upgraderas:invalid RouterType "$(dwRouterType) endif Shell "" InstallRouterService $(DdmInstalled) $(RasInstalled) $(RoutingKeyList) $(RoutingValueList) ifstr(i) $(LanRoutingOnly) != TRUE Shell "" AddServiceDependency "Router" "RasMan" endif Debug-Output "!PROXY_INSTALLED = "$(!PROXY_INSTALLED) ifstr(i) $(!PROXY_INSTALLED) == "TRUE" Shell "" AddServiceDependency "Router" "mspadmin" endif Shell "" AddServiceDependency "Router" "LanManServer" Debug-Output "UpgradeRas: dwRouterType= "$(dwRouterType) ifstr(i) $(dwRouterType) == $(ROUTER_TYPE_LAN) Debug-Output "UpgradeRas: done because lanroutingonly" goto UpgradeRasEnd endif ForListDo {AsyncMac, NdisWan, RasAuto, RasMan, RemoteAccess} set ServiceName = $(!NTN_ServiceBase)"\EventLog\System\"$($) OpenRegKey $(!REG_H_LOCAL) "" $(ServiceName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) SetRegValue $(KeyService) {EventMessageFile, $(NoTitle), $(!REG_VT_EXPAND_SZ), $(!RouterMsgDll)} CloseRegKey $(KeyService) endif EndForListDo ifstr(i) $(fTcpIpChosen) == TRUE Shell "" RemoveServiceDependency "TCPIP" "RASARP" Shell "" RemoveRasArpService Shell "" InstallWanArpService Shell "" DisablePPTPFilterDriver Shell "" InstallIPFilterDriver Shell "" InstallIPEventlogDlls Shell "" InstallIPSnmpAgents endif ifstr(i) $(fIpxChosen) == TRUE Shell "" InstallIpxPingService shell "" InstallNwlnkFwdService shell "" InstallNwlnkFltService Shell "" InstallIPXEventlogDlls Shell "" InstallIPXSnmpAgents endif LibraryProcedure Result, $(PORTSDLGHANDLE), AddRtrMgrAndLanInterfaces $(fTcpIpChosen) $(fIpxChosen) ifstr(i) $(Result) == ERROR Shell subroutn.inf, SetupMessage $(!STF_LANGUAGE) "STATUS" $(ErrorAddingRtrMgr) else Debug-Output "AddRtrMgrAndLanInterfaces exit." endif ForListDo {remoteaccess, rasman, rasauto, router} set ServiceName = $(!NTN_ServiceBase)"\"$($) set ImagePath = "%SystemRoot%\System32\mprouter.exe" set KeyService = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(ServiceName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) SetRegValue $(KeyService) {ImagePath,$(NoTitle),$(!REG_VT_EXPAND_SZ),$(ImagePath)} SetRegValue $(KeyService) {Type,$(NoTitle),$(!REG_VT_DWORD),288} CloseRegKey $(KeyService) endif EndForListDo Shell "" SetRestoreConnectionTo1 Shell "" RemoveServiceDependency "RemoteAccess" "NetLogon" Shell "" AddServiceDependency "RasMan" "tapisrv" Shell "" AddServiceDependency "RasMan" "rpcss" Shell "" AddServiceDependency "RasMan" "LanManWorkstation" Shell "" AddServiceDependency "Router" "LanManServer" Shell "" InstallSoftwareAndService RASAUTODIAL ifstr(i) $(!STF_PRODUCT) != "WINNT" OpenRegKey $(!REG_H_LOCAL) "" $(!RasAutodialKeyName) $(!MAXIMUM_ALLOWED) KeyAutodial ifstr $(KeyAutodial) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open RasAuto key" else SetRegValue $(KeyAutodial) {Start, $(NoTitle), $(!REG_VT_DWORD), 3} CloseRegKey $(KeyAutodial) endif endif Shell "" AddServiceDependency "RasAuto" "RasMan" OpenRegKey $(!REG_H_LOCAL) "" $(!RasManSvcKeyName) $(!MAXIMUM_ALLOWED) KeyRasMan ifstr $(KeyRasMan) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open RasMan key" else SetRegValue $(KeyRasMan) {Type, $(NoTitle), $(!REG_VT_DWORD), 32} CloseRegKey $(KeyRasMan) endif Shell "" IsNdisWanBHAdapterInstalled ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling IsNdisWanBHAdapterInstalled" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL Shell "" InstallNdisWanBHAdapter ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling InstallNdisWanBHAdapter" goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL set RegistryErrorIndex = $($R0) Debug-Output "Error installing NdisWan Blood hound adapter" goto fatalregistry endif endif Shell "" InstallNdisTapiService ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error shelling InstallNdisTapiService " goto ShellCodeError endif ifstr(i) $($R0) != STATUS_SUCCESSFUL set RegistryErrorIndex = $($R0) Debug-Output "Error installing NdisTapi Service" goto fatalregistry endif Shell "" UpdateAsyncMacNetRules ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling UpdateAsyncMacNetRules." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNSVRA.INF:error returned by UpdateAsyncMacNetRules." goto end endif Shell "" UpdateNdisWanInfo ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling UpdateNdisWanInfo." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNSVRA.INF:error returned by UpdateNdisWanInfo." goto end endif Shell "" AddNDISWANToServiceGroupOrder ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Cannot add NDISWAN to ServiceGroupOrder" goto ShellCodeError endif Shell "" UpdateAsyncMacParameters ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling UpdateAsyncMacParameters." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNSVRA.INF:error returned by UpdateAsyncMacParameters." goto end endif Shell "" UpdateAsyncMacStartType ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling UpdateAsyncMacStartType." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNSVRA.INF:error returned by UpdateAsyncMacStartType." goto end endif Shell "" UpgradeSelectedProtocols ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling UpgradeSelectedProtocols." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNSVRA.INF:error returned by UpgradeSelectedProtocols." goto end endif OpenRegKey $(!REG_H_LOCAL) "" $(RasSvrKeyName) + $(!MAXIMUM_ALLOWED) KeySvr ifstr $(KeySvr) != $(KeyNull) Debug-Output "OEMNSVRA.INF: Changing Router Start value to 3" SetRegValue $(KeySvr) {Start,$(NoTitle),$(!REG_VT_DWORD), 3} CloseRegKey $(KeySvr) else Debug-Output "OEMNSVRA.INF: error opening RemoteAccess service key" endif ifstr(i) $(!STF_STANDARDSERVERUPGRADE) == "YES" OpenRegKey $(!REG_H_LOCAL) "" $(RasProtocolsKeyName) + $(!MAXIMUM_ALLOWED) KeyProtocols ifstr $(KeyProtocols) != $(KeyNull) set fDialin = FALSE set TmpList = {} GetRegValue $(KeyProtocols) "fNetbeuiAllowed" TmpList ifint $(RegLastError) == 0 ifstr *($(TmpList), 4) == 1 set fDialin = TRUE endif endif set TmpList = {} ifstr(i) $(fDialin) == FALSE GetRegValue $(KeyProtocols) "fTcpIpAllowed" TmpList ifint $(RegLastError) == 0 ifstr *($(TmpList), 4) == 1 set fDialin = TRUE endif endif endif set TmpList = {} ifstr(i) $(fDialin) == FALSE GetRegValue $(KeyProtocols) "fIpxAllowed" TmpList ifint $(RegLastError) == 0 ifstr *($(TmpList), 4) == 1 set fDialin = TRUE endif endif endif Debug-Output "OEMNSVRA.INF: Upgrade => Are dialin ports configured? "$(fDialin) ifstr(i) $(fDialin) == TRUE OpenRegKey $(!REG_H_LOCAL) "" $(!RouterKeyName) + $(!MAXIMUM_ALLOWED) KeySvr ifstr $(KeySvr) != $(KeyNull) set RasStartValue = 2 GetRegValue $(KeySvr) "Start" StartList ifint $(RegLastError) == 0 set RasStartValue = *($(StartList), 4) endif ifint $(RasStartValue) != 4 Debug-Output "OEMNSVRA.INF: Changing Router Start value to 2" SetRegValue $(KeySvr) {Start,$(NoTitle),$(!REG_VT_DWORD), 2} endif CloseRegKey $(KeySvr) else Debug-Output "OEMNSVRA.INF: error opening Router service key" endif endif CloseRegKey $(KeyProtocols) else Debug-Output "OEMNSVRA.INF: could not open RAS\Protocols key" endif OpenRegKey $(!REG_H_LOCAL) "" $(!NdisTapiKeyName)"\Parameters" $(!MAXIMUM_ALLOWED) ParamKey Ifstr(i) $(ParamKey) != $(KeyNull) SetRegValue $(ParamKey) {AsyncEventQueueSize, 0, $(!REG_VT_DWORD), 3072} CloseRegKey $(ParamKey) EndIf endif Shell "" UpgradeIpxInfo $(PORTSDLGHANDLE) Shell "" UpgradeIsdnInfo ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling UpgradeIsdnInfo." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNSVRA.INF:error returned by UpgradeIsdnInfo." set Error = $(UpgradeIsdnInfoError) goto fatal endif Shell "" UpdatePerfmonInfo ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling UpdatePerfmonInfo." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNSVRA.INF:error returned by UpdatePerfmonInfo." goto end endif Shell "" UpdateCPList ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling UpdateCPList." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNSVRA.INF:error returned by UpdateCPList." goto end endif ifstr(i) $(!STF_PRODUCT) != "WINNT" OpenRegKey $(!REG_H_LOCAL) "" $(!NdisTapiKeyName)"\Parameters" $(!MAXIMUM_ALLOWED) ParamKey Ifstr(i) $(ParamKey) != $(KeyNull) SetRegValue $(ParamKey) {AsyncEventQueueSize, 0, $(!REG_VT_DWORD), 3072} CloseRegKey $(ParamKey) EndIf EndIf Install RemoveRasGroup Install CreateRtrAdminIcon UpgradeRasEnd =+ EndWait Ifint $(BillboardVisible) != 0 Shell "subroutn.inf" PopBillboard Set BillboardVisible = 0 Endif endif Shell "" UpdateSoftwareType ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF:error shelling UpdateSoftwareType." goto ShellCodeError endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "OEMNSVRA.INF:error returned by UpdateSoftwareType." goto end endif SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMajorVersion)} SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMinorVersion)} SetRegValue $(KeyProduct) {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductRASDescription)} SetRegValue $(KeyProduct) {OperationsSupport,$(NoTitle),$(!REG_VT_DWORD),$(ProductOpSupport)} CloseRegKey $(KeyProduct) else Set RegistryErrorIndex = $($R0) goto fatalregistry endif goto end successful = + Ifstr(i) $(!NTN_InstallMode) == "install" Debug-Output "OEMNSVRA.INF: Creating RTRADMIN icon in Administrative Tools program group" install CreateRtrAdminIcon EndIf Ifstr(i) $(!NTN_InstallPhase) == primary goto installstep1 else-ifstr(i) $(!NTN_InstallMode) == configure goto installstep1 endif ifint $(NewNumDialin) != 0 ifstr(i) $(!STF_GUI_UNATTENDED) != YES read-syms SuccessfulInstall$(!STF_LANGUAGE) ifstr(i) $(LanRoutingOnly) != TRUE shell "subroutn.inf" SetupMessage $(!STF_LANGUAGE) "STATUS" $(Success) endif endif endif installstep1 = + goto end warning = + Shell $(subroutninf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif ifstr(i) $($R1) == "OK" goto $(to) else-ifstr(i) $($R1) == "CANCEL" goto $(from) else Debug-Msg "Error Error Bad DLGEVENT" goto "end" endif nonfatal = + Shell $(subroutninf) SetupMessage, $(!STF_LANGUAGE), "NONFATAL", $(Error) ifint $($ShellCode) != $(!SHELL_CODE_OK) goto ShellCodeError endif ifstr(i) $($R1) == "OK" goto $(from) else goto "end" endif fatalregistry = + Shell $(!UtilityInf) RegistryErrorString $(RegistryErrorIndex) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "fatalregistry: shell to find RegistryErrorString failed." goto ShellCodeError endif ifstr(i) $(RasSpecificString) != "" set Error = $($R0)" - service "$(RasSpecificString)"." else set Error = $($R0) endif read-syms AbortMessage$(!STF_LANGUAGE) set Error = $(Error)$(!LF)$(!LF)$(AbortText) goto fatal fatal = + Shell $(subroutninf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "fatal: shell to SetupMessage failed." goto ShellCodeError endif goto setfailed ShellCodeError = + read-syms ShellCodeErrorMsg$(!STF_LANGUAGE) ui start "Error Message" goto setfailed setfailed = + set CommonStatus = STATUS_FAILED ifstr(i) $(fRemoveRas) == TRUE set fRemoveRas = FALSE set from = setfailed set to = end goto RemoveRas endif goto end filecopycancel =+ set CommonStatus = STATUS_USERCANCEL ifstr(i) $(fRemoveRas) == TRUE set fRemoveRas = FALSE set from = setfailed set to = end goto RemoveRas endif end = + ifstr(i) $(PORTSDLGHANDLE) != $(HandleNull) Debug-Output "Unloading RASCFG.DLL" FreeLibrary $(PORTSDLGHANDLE) endif Debug-Output "ending at last!!" goto term term = + Debug-Output "OEMNSVRA.INF:term: CommonStatus "$(CommonStatus) Return $(CommonStatus) [BindingsReview] set Option = $($1) set SrcDir = $($2) set AddCopy = $($3) set DoCopy = $($4) set DoConfig = $($5) set Language = $(!STF_LANGUAGE) set SaveInstallMode = $(!NTN_InstallMode) set !NTN_InstallMode = bind Shell "" InstallOption $(Language) $(Option) $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig) set !NTN_InstallMode = $(SaveInstallMode) set Status = $($R0) Return $(Status) [AreRequiredDllsPresent] Debug-Output "AreRequiredDllsPresent entry.." set Sys32Dir = $(!STF_WINDOWSSYSPATH) set FilesList = { "RASCFG.DLL", "RASFIL32.DLL", "RASMXS.DLL", "RTRCFG.DLL", "IPXADMIN.DLL", "MPRAPI.DLL", "MPRFILTR.DLL" } set MissingFiles = {} forlistdo $(FilesList) set STATUS = NO LibraryProcedure STATUS, $(!LIBHANDLE), CheckFileExistance $(Sys32Dir)"\"$($) ifstr(i) $(STATUS) == NO set MissingFiles = >($(MissingFiles), $($)" ") endif endforlistdo QueryListSize NumberOfFiles $(MissingFiles) ifint $(NumberOfFiles) != 0 Debug-Output "AreRequiredDllsPresent: missing files=> "$(MissingFiles) set Status = STATUS_FAILED else set Status = STATUS_SUCCESSFUL endif Debug-Output "AreRequiredDllsPresent exit." return $(Status) $(MissingFiles) [SetRestoreConnectionTo1] Debug-Output "SetRestoreConnectionTo1 entry.." set KeyNull = "" set RestoreKeyName = "SYSTEM\CurrentControlSet\Control\networkprovider" OpenRegKey $(!REG_H_LOCAL) "" $(RestoreKeyName) $(!MAXIMUM_ALLOWED) KeyRestore Ifstr(i) $(KeyRestore) != $(KeyNull) SetRegValue $(KeyRestore) {RestoreConnection, 0, $(!REG_VT_DWORD), 1} CloseRegKey $(KeyRestore) else Debug-Output "SetRestoreConnectionTo1 error opening key. "$(RestoreKeyName) endif Debug-Output "SetRestoreConnectionTo1 exit." return [InstallSoftwareAndService] set Status = STATUS_SUCCESSFUL set ThisOption = $($0) Debug-Output "InstallSoftwareAndService for "$(ThisOption) Shell $(!UtilityInf), AddSoftwareComponent, $(!Manufacturer), + $(!Product$(ThisOption)Name), $(!Product$(ThisOption)Name), + $(!Product$(ThisOption)DisplayName), + $(!RasInfName), $(!Product$(ThisOption)ImagePath), "serviceshare",+ "", {}, "", $(!RouterMsgDll), $(!RasEventTypeSupported) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "InstallSoftware: AddSoftware bombed out for "$(ThisOption) goto InstallSoftwareError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) == SERVICE_ALREADY_EXISTS return $(Status) EndIf Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) CloseRegKey $($R4) CloseRegKey $($R5) goto InstallSoftwareError endif Set SoftProductKey = $($R1) CloseRegKey $($R2) CloseRegKey $($R3) CloseRegKey $($R4) CloseRegKey $($R5) set NewValueList = + {{Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)},+ {ServiceName,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)Name)},+ {SoftwareType,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)SvcType)},+ {Title,$(NoTitle),$(!REG_VT_SZ),$(!Product$(ThisOption)Title)},+ {Description,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)Description)},+ {PathName,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)ImagePath)},+ {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMajorVersion)},+ {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMinorVersion)},+ {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(!CurrentDate),1)},+ {Hidden,$(NoTitle),$(!REG_VT_DWORD),$(!HideComponent)}} Shell $(!UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "InstallSoftware: AddValueList bombed out for "$(ThisOption) goto InstallSoftwareError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftProductKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto InstallSoftwareError endif goto InstallSoftwareEnd InstallSoftwareError =+ read-syms ShellCodeErrorMsg$(!STF_LANGUAGE) ui start "Error Message" return STATUS_FAILED InstallSoftwareEnd =+ return $(Status) [InstallRouterService] set ServiceName = $(!NTN_SoftwareBase)"\"$(!Manufacturer)"\ROUTER\CurrentVersion" OpenRegKey $(!REG_H_LOCAL) "" $(ServiceName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) CloseRegKey $(KeyService) goto InstallRouterServiceEnd endif set ThisOption = "ROUTING" set PROTO_IP = 33 set PROTO_IPX = 43 set KeyNull = "" set NoTitle = 0 set InstallDdm = $($0) set InstallRas = $($1) set RoutingKeyList = $($2) set RoutingValueList = $($3) set DependOn = {"LanmanServer"} set LanOnlyMode = 1 ifstr(i) $(InstallDdm) == "TRUE" set DependOn = >($(DependOn), "RasMan") set LanOnlyMode = 0 else-ifstr(i) $(InstallRas) == "TRUE" set DependOn = >($(DependOn), "RasMan") set LanOnlyMode = 0 endif Debug-Output "RoutingKeyList "$(RoutingKeyList) Debug-Output "RoutingValueList "$(RoutingValueList) set Name = *($(RoutingValueList), ~($(RoutingKeyList), Name)) set ImagePath = *($(RoutingValueList), ~($(RoutingKeyList), ImagePath)) set SvcType = *($(RoutingValueList), ~($(RoutingKeyList), SvcType)) set Class = *($(RoutingValueList), ~($(RoutingKeyList), Class)) set Type = *($(RoutingValueList), ~($(RoutingKeyList), Type)) set Use = *($(RoutingValueList), ~($(RoutingKeyList), Use)) set BindForm = *($(RoutingValueList), ~($(RoutingKeyList), BindForm)) set Bindable = *($(RoutingValueList), ~($(RoutingKeyList), Bindable)) set MsgDll = *($(RoutingValueList), ~($(RoutingKeyList), MsgDll)) set EventType = *($(RoutingValueList), ~($(RoutingKeyList), EventType)) Shell $(!UtilityInf), AddSoftwareComponent, $(!Manufacturer), + $(Name), $(Name), + $(!Product$(ThisOption)DisplayName), + $(!RasInfName), $(ImagePath),+ "serviceshare", "Network", $(DependOn), "", + $(MsgDll), $(EventType) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter: AddSoftware bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) CloseRegKey $($R4) CloseRegKey $($R5) goto fatalregistry endif Set SoftProductKey = $($R1) Set SoftNetRuleKey = $($R2) set SoftServiceKey = $($R3) Set SoftParamsKey = $($R4) Set SoftLinkageKey = $($R5) set NewValueList = + {{Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)},+ {ServiceName,$(NoTitle),$(!REG_VT_SZ),+ $(Name)},+ {SoftwareType,$(NoTitle),$(!REG_VT_SZ),+ $(SvcType)},+ {Title,$(NoTitle),$(!REG_VT_SZ),$(!Product$(ThisOption)Title)},+ {Description,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)Description)},+ {PathName,$(NoTitle),$(!REG_VT_SZ),+ $(ImagePath)},+ {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMajorVersion)},+ {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(!ProductMinorVersion)},+ {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(!CurrentDate),1)},+ {Review, $(NoTitle), $(!REG_VT_DWORD), 1}, + {Hidden,$(NoTitle),$(!REG_VT_DWORD), $(!HideComponent)}} Shell $(!UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter:product: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CreateRegKey $(SoftProductKey) {"UIConfigDLLs",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyUIConfigDLLs set NewValueList = + {{58bdf950-f471-11cf-aa67-00805f0c9232, $(NoTitle), $(!REG_VT_SZ), "ifadmin.dll"},+ {58bdf951-f471-11cf-aa67-00805f0c9232, $(NoTitle), $(!REG_VT_SZ), "ipadmin.dll"},+ {58bdf952-f471-11cf-aa67-00805f0c9232, $(NoTitle), $(!REG_VT_SZ), "ipxadmin.dll"},+ {58bdf953-f471-11cf-aa67-00805f0c9232, $(NoTitle), $(!REG_VT_SZ), "ddmadmin.dll"}} Shell $(!UtilityInf), AddValueList, $(KeyUIConfigDLLs), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter:UIconfigDlls: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) CloseRegKey $(SoftProductKey) Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif set KeyRouterMgrs = $(KeyNull) set KeyIP = $(KeyNull) set KeyIpx = $(KeyNull) CreateRegKey $(SoftProductKey) {"RouterManagers",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyRouterMgrs ifstr(i) $(KeyRouterMgrs) != $(KeyNull) CreateRegKey $(KeyRouterMgrs) {"IP",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyIP CreateRegKey $(KeyRouterMgrs) {"IPX",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyIPX CloseRegKey $(KeyRouterMgrs) else Debug-Output "CreateRegKey failed for RouterManagers" endif set NewValueList = + {{Title, $(NoTitle), $(!REG_VT_SZ), "TCP/IP Routing Manager"},+ {ProtocolId, $(NoTitle), $(!REG_VT_DWORD), $(PROTO_IP)},+ {DllPath, $(NoTitle), $(!REG_VT_EXPAND_SZ), "%SystemRoot%\system32\iprtrmgr.dll"},+ {ConfigCLSID, $(NoTitle), $(!REG_VT_SZ), "58bdf951-f471-11cf-aa67-00805f0c9232"},+ {ConfigDll, $(NoTitle), $(!REG_VT_SZ), "ipadmin.dll"}} Shell $(!UtilityInf), AddValueList, $(KeyIP), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter:UIconfigDlls: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) CloseRegKey $(SoftProductKey) Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif set KeyIpRip = $(KeyNull) set KeyBootp = $(KeyNull) set KeyOSPF = $(KeyNull) ifstr(i) $(KeyIP) != $(KeyNull) CreateRegKey $(KeyIP) {"IPRIP",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyIpRip CreateRegKey $(KeyIP) {"IPBOOTP",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyBootp CreateRegKey $(KeyIP) {"OSPF",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyOSPF else Debug-Output "KeyIP is not valid" endif ifstr(i) $(KeyIpRip) != $(KeyNull) set NewValueList = + {{Title, $(NoTitle), $(!REG_VT_SZ), "RIP Version 2 for Internet Protocol"},+ {ProtocolId, $(NoTitle), $(!REG_VT_DWORD), 8},+ {DllName, $(NoTitle), $(!REG_VT_SZ), "IPRIP2.DLL"},+ {ConfigDll, $(NoTitle), $(!REG_VT_SZ), "ipadmin.dll"}} Shell $(!UtilityInf), AddValueList, $(KeyIpRip), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter:UIconfigDlls: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) CloseRegKey $(SoftProductKey) Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif CloseRegKey $(KeyIpRip) else Debug-Output "KeyIpRip is not valid" endif ifstr(i) $(KeyBootp) != $(KeyNull) set NewValueList = + {{Title, $(NoTitle), $(!REG_VT_SZ), "DHCP Relay Agent"},+ {ProtocolId, $(NoTitle), $(!REG_VT_DWORD), 9999},+ {DllName, $(NoTitle), $(!REG_VT_SZ), "IPBOOTP.DLL"},+ {ConfigDll, $(NoTitle), $(!REG_VT_SZ), "ipadmin.dll"}} Shell $(!UtilityInf), AddValueList, $(KeyBootp), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter:UIconfigDlls: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) CloseRegKey $(SoftProductKey) Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif CloseRegKey $(KeyBootp) else Debug-Output "KeyBootp is not valid" endif ifstr(i) $(KeyOSPF) != $(KeyNull) set NewValueList = + {{Title, $(NoTitle), $(!REG_VT_SZ), "Open Shortest Path First (OSPF) by Bay Networks"},+ {ProtocolId, $(NoTitle), $(!REG_VT_DWORD), 13},+ {DllName, $(NoTitle), $(!REG_VT_SZ), "OSPF.DLL"},+ {ConfigDll, $(NoTitle), $(!REG_VT_SZ), "ipadmin.dll"}} Shell $(!UtilityInf), AddValueList, $(KeyOSPF), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter:UIconfigDlls: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) CloseRegKey $(SoftProductKey) Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif CloseRegKey $(KeyOSPF) else Debug-Output "KeyOSPF is not valid" endif ifstr(i) $(KeyIP) != $(KeyNull) CloseRegKey $(KeyIP) endif set KeyIpxRip = $(KeyNull) set KeyIpxSap = $(KeyNull) ifstr(i) $(KeyIPX) != $(KeyNull) set NewValueList = + {{Title, $(NoTitle), $(!REG_VT_SZ), "IPX Routing Manager"},+ {ProtocolId, $(NoTitle), $(!REG_VT_DWORD), $(PROTO_IPX)},+ {DllPath, $(NoTitle), $(!REG_VT_EXPAND_SZ), "%SystemRoot%\system32\ipxrtmgr.dll"},+ {ConfigCLSID, $(NoTitle), $(!REG_VT_SZ), "58bdf952-f471-11cf-aa67-00805f0c9232"},+ {ConfigDll, $(NoTitle), $(!REG_VT_SZ), "ipxadmin.dll"}} Shell $(!UtilityInf), AddValueList, $(KeyIPX), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter:UIconfigDlls: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) CloseRegKey $(SoftProductKey) Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif CreateRegKey $(KeyIPX) {"IpxRip",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyIpxRip CreateRegKey $(KeyIPX) {"IpxSap",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyIpxSap endif ifstr(i) $(KeyIpxRip) != $(KeyNull) set NewValueList = + {{Title, $(NoTitle), $(!REG_VT_SZ), "RIP for IPX"},+ {ProtocolId, $(NoTitle), $(!REG_VT_DWORD), 131072},+ {DllName, $(NoTitle), $(!REG_VT_SZ), "IPXRIP.DLL"},+ {ConfigDll, $(NoTitle), $(!REG_VT_SZ), "ipxadmin.dll"}} Shell $(!UtilityInf), AddValueList, $(KeyIpxRip), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter:UIconfigDlls: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) CloseRegKey $(SoftProductKey) Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif CloseRegKey $(KeyIpxRip) endif ifstr(i) $(KeyIpxSap) != $(KeyNull) set NewValueList = + {{Title, $(NoTitle), $(!REG_VT_SZ), "SAP for IPX"},+ {ProtocolId, $(NoTitle), $(!REG_VT_DWORD), 131073},+ {DllName, $(NoTitle), $(!REG_VT_SZ), "IPXSAP.DLL"},+ {ConfigDll, $(NoTitle), $(!REG_VT_SZ), "ipxadmin.dll"}} Shell $(!UtilityInf), AddValueList, $(KeyIpxSap), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter:UIconfigDlls: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) CloseRegKey $(SoftProductKey) Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif CloseRegKey $(KeyIpxSap) endif ifstr(i) $(KeyIPX) != $(KeyNull) CloseRegKey $(KeyIPX) endif CloseRegKey $(SoftProductKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftNetRuleKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) goto fatalregistry endif set NewValueList = + {{class, $(NoTitle), $(!REG_VT_SZ), $(Class)},+ {type,$(NoTitle),$(!REG_VT_SZ),$(Type)},+ {use,$(NoTitle),$(!REG_VT_SZ),$(Use)}, + {InfOption,$(NoTitle),$(!REG_VT_SZ), "RAS"}, + {bindform,$(NoTitle),$(!REG_VT_SZ),+ $(BindForm)}, + {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),+ $(Bindable)}, + {Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)}} Shell $(!UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "DoRouter:netrules: AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) CloseRegKey $(SoftNetRuleKey) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) CloseRegKey $(SoftLinkageKey) CloseRegKey $(SoftParamsKey) Debug-Output "DoRouter: Registry Error "$(RegistryErrorIndex) goto fatalregistry endif set NewValueList = + {{LanOnlyMode, $(NoTitle), $(!REG_VT_DWORD), $(LanOnlyMode)}} Shell $(!UtilityInf), AddValueList, $(SoftParamsKey), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "AddValueList bombed out" goto ShellCodeError endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" CloseRegKey $(SoftServiceKey) goto fatalregistry endif set KeyInterfaces = $(KeyNull) set KeyDDM = $(KeyNull) CreateRegKey $(SoftServiceKey) {"Interfaces",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyInterfaces ifstr(i) $(KeyInterfaces) != $(KeyNull) CloseRegKey $(KeyInterfaces) endif CreateRegKey $(SoftServiceKey) {"DemandDialManager",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyDDM SetRegValue $(KeyDDM) {DLLPath, $(NoTitle), $(!REG_VT_EXPAND_SZ), "%SystemRoot%\system32\mprddm.dll"} ifstr(i) $(KeyDDM) != $(KeyNull) CloseRegKey $(KeyDDM) endif CloseRegKey $(SoftParamsKey) CloseRegKey $(SoftServiceKey) InstallRouterServiceEnd = + return STATUS_SUCCESSFUL [AddInfToReviewProgramsList] Debug-Output "AddInfToReviewPrograms: entry" set Status = STATUS_FAILED set KeyNull = "" set NcpaKeyName = $(!NTN_SoftwareBase)"\Microsoft\Ncpa\CurrentVersion" set newList = {"OEMNSVRA.INF"} OpenRegKey $(!REG_H_LOCAL) "" $(NcpaKeyName) $(!MAXIMUM_ALLOWED) KeyNcpa Ifstr(i) $(KeyNcpa) != $(KeyNull) GetRegValue $(KeyNcpa) "ReviewPrograms" TmpList ifint $(RegLastError) == 0 Debug-Output "AddInf: old List "*($(TmpList), 4) ForListDo *($(TmpList),4) ifstr(i) $($) != "OEMNSVRA.INF" set newList = >($(newList), $($)) endif EndForListDo Debug-Output "OEMNSVRA.INF: AddInf: new List "$(newList) SetRegValue $(KeyNcpa) {ReviewPrograms, 0, + $(!REG_VT_MULTI_SZ),$(newList)} CloseRegKey $(KeyNcpa) Set Status = STATUS_SUCCESSFUL endif else Debug-Output "AddInfToReviewPrograms: error opening ncpa key." endif Debug-Output "AddInfToReviewPrograms: exit" return $(Status) [RemoveInfFromReviewPrograms] Debug-Output "RemoveInfFromReviewPrograms: entry" set Status = STATUS_FAILED set KeyNull = "" set NcpaKeyName = $(!NTN_SoftwareBase)"\Microsoft\Ncpa\CurrentVersion" set newList = {} OpenRegKey $(!REG_H_LOCAL) "" $(NcpaKeyName) $(!MAXIMUM_ALLOWED) KeyNcpa Ifstr(i) $(KeyNcpa) != $(KeyNull) GetRegValue $(KeyNcpa) "ReviewPrograms" TmpList ifint $(RegLastError) == 0 Debug-Output "RemoveInf: old List "*($(TmpList), 4) ForListDo *($(TmpList),4) ifstr(i) $($) != "OEMNSVRA.INF" set newList = >($(newList), $($)) endif EndForListDo Debug-Output "AddInf: new List "$(newList) SetRegValue $(KeyNcpa) {ReviewPrograms, 0, + $(!REG_VT_MULTI_SZ),$(newList)} CloseRegKey $(KeyNcpa) Set Status = STATUS_SUCCESSFUL endif else Debug-Output "RemoveInfFromReviewPrograms: error opening ncpa key." endif Debug-Output "RemoveInfFromReviewPrograms: exit" return $(Status) [InstallResources] set STF_VITAL = NO Debug-Output "In Copying Files" ifstr(i) $(AddCopy) == "YES" CreateDir $(RasDir) AddSectionFilesToCopyList Files-Resource $(SourceDir) $(!STF_WINDOWSSYSPATH) AddSectionKeyFileToCopyList Files-Ras-Inf "rasread" $(SourceDir) $(ProductPath) ifstr(i) $(!NTN_InstallMode) == "Install" AddSectionKeyFileToCopyList Files-Ras-Inf "modem" $(SourceDir) $(ProductPath) AddSectionKeyFileToCopyList Files-Ras-Inf "pad" $(SourceDir) $(ProductPath) AddSectionKeyFileToCopyList Files-Ras-Inf "switch" $(SourceDir) $(ProductPath) AddSectionKeyFileToCopyList Files-Ras-Scp "cis" $(SourceDir) $(ProductPath) AddSectionKeyFileToCopyList Files-Ras-Scp "slip" $(SourceDir) $(ProductPath) AddSectionKeyFileToCopyList Files-Ras-Scp "slipmenu" $(SourceDir) $(ProductPath) AddSectionKeyFileToCopyList Files-Ras-Scp "pppmenu" $(SourceDir) $(ProductPath) AddSectionKeyFileToCopyList Files-Ras-Scp "scriptdoc" $(SourceDir) $(ProductPath) else-Ifstr(i) $(!NTN_InstallMode) == "Update" forlistdo {modem.new, pad.new, switch.new, cis.new, slip.new, slipmenu.new, pppmenu.new, script.doc} LibraryProcedure Status, $(!LIBHANDLE), DelFile + $(!STF_WINDOWSSYSPATH)"\RAS\"$($) set STF_RENAME = "MODEM.NEW" AddSectionKeyFileToCopyList Files-Ras-Inf "modem" $(SourceDir) $(ProductPath) set STF_RENAME = "PAD.NEW" AddSectionKeyFileToCopyList Files-Ras-Inf "pad" $(SourceDir) $(ProductPath) set STF_RENAME = "SWITCH.NEW" AddSectionKeyFileToCopyList Files-Ras-Inf "switch" $(SourceDir) $(ProductPath) set STF_RENAME = "CIS.SCP" AddSectionKeyFileToCopyList Files-Ras-Scp "cis" $(SourceDir) $(ProductPath) set STF_RENAME = "SLIP.SCP" AddSectionKeyFileToCopyList Files-Ras-Scp "slip" $(SourceDir) $(ProductPath) set STF_RENAME = "SLIPMENU.SCP" AddSectionKeyFileToCopyList Files-Ras-Scp "slipmenu" $(SourceDir) $(ProductPath) set STF_RENAME = "PPPMENU.SCP" AddSectionKeyFileToCopyList Files-Ras-Scp "pppmenu" $(SourceDir) $(ProductPath) set STF_RENAME = "SCRIPT.DOC" AddSectionKeyFileToCopyList Files-Ras-Scp "scriptdoc" $(SourceDir) $(ProductPath) set STF_RENAME = "" endif endif ifstr(i) $(!NTN_InstallMode) == "Update" set !STF_NCPA_FLUSH_COPYLIST = TRUE CopyFilesInCopyList else-ifstr(i) $(DoCopy) == "YES" set !STF_NCPA_FLUSH_COPYLIST = TRUE CopyFilesInCopyList endif Debug-Output "Done Copying Files" exit [RemoveResources] Debug-Output "In removing infs and dll" set RemoveList = {} set RenameList = {} set RemoveList = >($(RemoveList), #(Files-RemoveList, MODEMINF, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, PADINF, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, SWITCHINF, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASSETUPHLP, 1)) set RenameList = >($(RenameList), #(Files-RemoveList, RASRESDLL, 1)) set RenameList = >($(RenameList), #(Files-RemoveList, RASCFGDLL, 1)) set RenameList = >($(RenameList), #(Files-RemoveList, RASFIL32DLL, 1)) ForListDo $(RemoveList) Debug-Output "Removing "$($) LibraryProcedure Status , $(!LIBHANDLE), DelFile $($) Debug-Output "Status is "$(Status) EndForListDo ForListDo $(RenameList) Split-String $($) "\" FilePath QueryListSize PathLen $(FilePath) Split-String *($(FilePath),$(PathLen)) "." FullFileName Set FileName = *($(FullFileName),1) Debug-Output "FileName is "$(FileName) LibraryProcedure STATUS, $(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\"$(FileName)".old" Debug-Output "CheckFile Status = "$(STATUS) ifstr(i) $(STATUS) == YES LibraryProcedure STATUS, $(!LIBHANDLE), DelFile $(!STF_WINDOWSSYSPATH)"\"$(FileName)".old" Debug-Output "Delfile Status = "$(STATUS) endif Debug-Output "Renaming from "$($) Debug-Output "Renaming to "$(!STF_WINDOWSSYSPATH)"\"$(FileName)".old" LibraryProcedure Status1 , $(!LIBHANDLE), RenFile $($), $(!STF_WINDOWSSYSPATH)"\"$(FileName)".old" AddFileToDeleteList $(!STF_WINDOWSSYSPATH)"\"$(FileName)".old" EndForListDo exit [InstallRasFiles] set STF_VITAL = NO Debug-Output "In InstallRasFiles Copying Files" Debug-Output "ServerInstalled "$(ServerInstalled) Debug-Output "ClientInstalled "$(ClientInstalled) AddSectionFilesToCopyList Files-Ras-Admin $(SourceDir) + $(!STF_WINDOWSSYSPATH) AddSectionFilesToCopyList Files-Ras-Client $(SourceDir) + $(!STF_WINDOWSSYSPATH) AddSectionFilesToCopyList Files-Ras-Server $(SourceDir) + $(!STF_WINDOWSSYSPATH) AddSectionFilesToCopyList Files-Router $(SourceDir) + $(!STF_WINDOWSSYSPATH) AddSectionFilesToCopyList Files-Ras-Common $(SourceDir) + $(!STF_WINDOWSSYSPATH) AddSectionFilesToCopyList Files-Ras-Drivers $(SourceDir) + $(!STF_WINDOWSSYSPATH)\drivers AddSectionFilesToCopyList Files-Router-Drivers $(SourceDir) + $(!STF_WINDOWSSYSPATH)\drivers ifstr(i) $(!PROXY_INSTALLED) == FALSE AddSectionFilesToCopyList Files-Router-Filter-Driver $(SourceDir) + $(!STF_WINDOWSSYSPATH)\drivers endif InstallRasFiles1 = + ifstr(i) $(!NTN_InstallMode) == "Update" set !STF_NCPA_FLUSH_COPYLIST = TRUE CopyFilesInCopyList else ifstr(i) $(DoCopy) == "YES" set !STF_NCPA_FLUSH_COPYLIST = TRUE CopyFilesInCopyList endif endif Debug-Output "Done Copying Files" exit [RemoveRasFiles] ifstr(i) $(!NTN_InstallMode) == install ifstr(i) $(DoCopy) == "NO" Exit endif endif set RemoveList = {} set RenameList = {} set fCommonRemoved = FALSE ifstr(i) $(DoServer) == TRUE set fCommonRemoved = TRUE set RemoveList = >($(RemoveList), #(Files-RemoveList, RASGTWYDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASGPRXYDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASSPRXYEXE, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASSRVEXE, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASCTRSDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASCTRSINI, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASCTRNMH, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASSAUTHDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASADMINDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASMANDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASMANEXE, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASSERDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASIPXCPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASPPPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASPPPENDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASPAPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASCHAPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASSPAPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASIPCPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASIPHLPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASNBFCPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASCCPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASCBCPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASNBIPCDLL, 1)) endif ifstr(i) $(DoClient) == TRUE set RemoveList = >($(RemoveList), #(Files-RemoveList, RASDIALEXE, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASPHONEHLP, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASCAUTHDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASAPI32DLL, 1)) ifstr(i) $(fCommonRemoved) == FALSE set RemoveList = >($(RemoveList), #(Files-RemoveList, RASMANDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASMANEXE, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASSERDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASIPXCPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASPPPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASPPPENDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASPAPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASCHAPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASSPAPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASIPCPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASIPHLPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASNBFCPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASCCPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASCBCPDLL, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASNBIPCDLL, 1)) endif endif ifstr(i) $(DoAdmin) == TRUE set RemoveList = >($(RemoveList), #(Files-RemoveList, RASADMINHLP, 1)) set RemoveList = >($(RemoveList), #(Files-RemoveList, RASGLOSSHLP, 1)) endif ForListDo $(RemoveList) Debug-Output "Removing "$($) LibraryProcedure Status , $(!LIBHANDLE), DelFile $($) Debug-Output "Status is "$(Status) EndForListDo LibraryProcedure Status , $(!LIBHANDLE), DelFile $(!STF_WINDOWSSYSPATH)"\RAS\router.pbk" ForListDo $(RenameList) Split-String $($) "\" FilePath QueryListSize PathLen $(FilePath) Split-String *($(FilePath),$(PathLen)) "." FullFileName Set FileName = *($(FullFileName),1) Debug-Output "FileName is "$(FileName) LibraryProcedure STATUS, $(!LIBHANDLE),CheckFileExistance $(!STF_WINDOWSSYSPATH)"\DRIVERS\"$(FileName)".old" Debug-Output "CheckFile Status = "$(STATUS) ifstr(i) $(STATUS) == YES LibraryProcedure STATUS, $(!LIBHANDLE), DelFile $(!STF_WINDOWSSYSPATH)"\DRIVERS\"$(FileName)".old" Debug-Output "Delfile Status = "$(STATUS) endif Debug-Output "Renaming from "$($) Debug-Output "Renaming to "$(!STF_WINDOWSSYSPATH)"\DRIVERS\"$(FileName)".old" LibraryProcedure Status1 , $(!LIBHANDLE), RenFile $($), $(!STF_WINDOWSSYSPATH)"\DRIVERS\"$(FileName)".old" AddFileToDeleteList $(!STF_WINDOWSSYSPATH)"\DRIVERS\"$(FileName)".old" EndForListDo exit [RestoreSavedFiles] set BackupDir = $(!STF_WINDOWSSYSPATH)"\~~RB$$~~" set DriversDir = $(!STF_WINDOWSSYSPATH)"\drivers" set Sys32Dir = $(!STF_WINDOWSSYSPATH) set Files_System32 = { "SNMP.EXE", "SNMPAPI.DLL", "INETMIB1.DLL", + "OEMNSVRA.INF", "OEMNXPPP.INF" } set Files_Drivers = { "NWLNKIPX.SYS", "NWLNKNB.SYS", "NWLNKSPX.SYS", + "NWLNKRIP.SYS", "NDIS.SYS", "TCPIP.SYS", + "RASARP.SYS", "RASPPTPF.SYS" } forlistdo $(Files_System32) set STATUS = NO LibraryProcedure STATUS, $(!LIBHANDLE), CheckFileExistance $(BackupDir)"\"$($) ifstr(i) $(STATUS) == YES LibraryProcedure STATUS, $(!LIBHANDLE),CheckFileExistance $(Sys32Dir)"\"$($) ifstr(i) $(STATUS) == YES LibraryProcedure Status , $(!LIBHANDLE), DelFile $(Sys32Dir)"\"$($)".OLD" Debug-Output "File "$($)"is being renamed to "$($)".OLD" LibraryProcedure STATUS, $(!LIBHANDLE), RenFile $(Sys32Dir)"\"$($) + $(Sys32Dir)"\"$($)".OLD" AddFileToDeleteList $(Sys32Dir)"\"$($)".OLD" endif LibraryProcedure STATUS, $(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) + $(BackupDir)"\"$($) $(Sys32Dir)"\"$($) LibraryProcedure Status , $(!LIBHANDLE), DelFile $(BackupDir)"\"$($) Debug-Output "File "$(BackupDir)"\"$($)" delete Status = "$(STATUS) endif endforlistdo forlistdo $(Files_Drivers) set STATUS = NO LibraryProcedure STATUS, $(!LIBHANDLE), CheckFileExistance $(BackupDir)"\"$($) ifstr(i) $(STATUS) == YES LibraryProcedure STATUS, $(!LIBHANDLE),CheckFileExistance $(DriversDir)"\"$($) ifstr(i) $(STATUS) == YES LibraryProcedure Status , $(!LIBHANDLE), DelFile $(DriversDir)"\"$($)".OLD" Debug-Output "File "$($)"is being renamed to "$($)".OLD" LibraryProcedure STATUS, $(!LIBHANDLE), RenFile $(DriversDir)"\"$($) + $(DriversDir)"\"$($)".OLD" AddFileToDeleteList $(DriversDir)"\"$($)".OLD" endif LibraryProcedure STATUS, $(!NCPA_HANDLE), CopySingleFile $(!STF_HWND) + $(BackupDir)"\"$($) $(DriversDir)"\"$($) LibraryProcedure Status , $(!LIBHANDLE), DelFile $(BackupDir)"\"$($) Debug-Output "File "$(BackupDir)"\"$($)" delete Status = "$(STATUS) else LibraryProcedure STATUS, $(!LIBHANDLE), CheckFileExistance $(DriversDir)"\"$($)".SAV" ifstr(i) $(STATUS) == YES LibraryProcedure STATUS, $(!LIBHANDLE),CheckFileExistance $(DriversDir)"\"$($) ifstr(i) $(STATUS) == YES LibraryProcedure Status , $(!LIBHANDLE), DelFile $(DriversDir)"\"$($)".OLD" Debug-Output "File "$($)"is being renamed to "$($)".OLD" LibraryProcedure STATUS, $(!LIBHANDLE), RenFile $(DriversDir)"\"$($) + $(DriversDir)"\"$($)".OLD" AddFileToDeleteList $(DriversDir)"\"$($)".OLD" endif LibraryProcedure STATUS, $(!LIBHANDLE), RenFile + $(DriversDir)"\"$($)".SAV" $(DriversDir)"\"$($) endif endif endforlistdo exit [CreateRtrAdminIcon] RemoveCommonProgManItem $(AdminGroup) $(RasAdmin) CreateCommonProgManItem $(AdminGroup), $(RtrAdmin) "%SystemRoot%\system32\mpradmin.exe" "" 0 exit [RemoveRasGroup] Debug-Output "Removing icons from "$(RasGroup) RemoveCommonProgManItem $(AdminGroup) $(RtrAdmin) CreateCommonProgManGroup $(RasGroup) "" RemoveCommonProgManGroup $(RasGroup) exit [AddNDISWANToServiceGroupOrder] set GroupOrderName = "SYSTEM\CurrentControlSet\Control\ServiceGroupOrder" OpenRegKey $(!REG_H_LOCAL) "" $(GroupOrderName) $(!MAXIMUM_ALLOWED) KeyGroup set OldList = {} Ifstr(i) $(KeyGroup) != $(KeyNull) GetRegValue $(KeyGroup) "List" TmpList ifint $(RegLastError) == 0 ForListDo *($(TmpList), 4) set OldList = >($(OldList), $($)) EndForListDo endif Debug-Output "AddNDISWANToServiceGroupOrder current list "$(OldList) Ifcontains(i) "NDISWAN" not-in $(OldList) set NewGroupList = {} ForListDo $(OldList) set NewGroupList = >($(NewGroupList), $($)) ifstr(i) $($) == "NDIS" set NewGroupList = >($(NewGroupList), "NDISWAN" ) endif EndForListDo Debug-Output "AddNDISWANToServiceGroupOrder new list "$(NewGroupList) SetRegValue $(KeyGroup) {List, 0,$(!REG_VT_MULTI_SZ),$(NewGroupList)} endif CloseRegKey $(KeyGroup) else Debug-Output "AddNDISWANToServiceGroupOrder error opening ServiceGroupOrder key." endif return [CheckRasInstalled] set MAXIMUM_ALLOWED = 33554432 set ProductKeyName = $(!NTN_ServiceBase)"\RasMan" OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct Ifstr $(KeyProduct) != "" CloseRegKey $(KeyProduct) return "TRUE" else return "FALSE" endif [CheckProxyInstalled] set MAXIMUM_ALLOWED = 33554432 set ProductKeyName = $(!NTN_ServiceBase)"\mspadmin" OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct Ifstr $(KeyProduct) != "" CloseRegKey $(KeyProduct) set !PROXY_INSTALLED = TRUE return "TRUE" else set !PROXY_INSTALLED = FALSE return "FALSE" endif [QueryComponentsInstalled] Set Status = STATUS_FAILED Set ValueName = "" Set InstalledList = {} Set InstalledFlags = {} Set TmpList = {} Set KeyNull = "" Set NumberOfComps = 0 Set RasKeyName = $($0) Debug-Output "QueryComponentsInstalled: "$(RasKeyName) OpenRegKey $(!REG_H_LOCAL) "" $(RasKeyName) $(!MAXIMUM_ALLOWED) KeyProduct Ifstr(i) $(KeyProduct) != $(KeyNull) GetRegValue $(KeyProduct) "RasComponents" TmpList Debug-Output "QueryComponentsInstalled: "$(TmpList) ForListDo *($(TmpList),4) set InstalledList = >($(InstalledList), $($)) EndForListDo CloseRegKey $(KeyProduct) Ifcontains(i) "Server" in $(InstalledList) Set InstalledFlags = >($(InstalledFlags), TRUE) else Set InstalledFlags = >($(InstalledFlags), FALSE) endif Ifcontains(i) "Client" in $(InstalledList) Set InstalledFlags = >($(InstalledFlags), TRUE) else Set InstalledFlags = >($(InstalledFlags), FALSE) endif Ifcontains(i) "Admin" in $(InstalledList) Set InstalledFlags = >($(InstalledFlags), TRUE) else Set InstalledFlags = >($(InstalledFlags), FALSE) endif QueryListSize NumberOfComps $(InstalledList) ifint $(NumberOfComps) == 1 Ifcontains(i) "Server" in $(InstalledList) Set InstalledFlags = >($(InstalledFlags), TRUE) else Set InstalledFlags = >($(InstalledFlags), FALSE) endif Ifcontains(i) "Client" in $(InstalledList) Set InstalledFlags = >($(InstalledFlags), TRUE) else Set InstalledFlags = >($(InstalledFlags), FALSE) endif Ifcontains(i) "Admin" in $(InstalledList) Set InstalledFlags = >($(InstalledFlags), TRUE) else Set InstalledFlags = >($(InstalledFlags), FALSE) endif else Set InstalledFlags = >($(InstalledFlags), FALSE) Set InstalledFlags = >($(InstalledFlags), FALSE) Set InstalledFlags = >($(InstalledFlags), FALSE) endif Set Status = STATUS_SUCCESSFUL Else Set Status = STATUS_NOT_FOUND EndIf Debug-Output "QueryComponentsInstalled: "$(InstalledList) Return $(Status) $(InstalledList) $(InstalledFlags) [UpdateComponentsInstalled] Set Status = STATUS_FAILED Set InstalledList = $($0) Set RasKeyName = $($1) Set KeyNull = "" Debug-Output "UpdateComponentsInstalled: "$(RasKeyName) OpenRegKey $(!REG_H_LOCAL) "" $(RasKeyName) $(!MAXIMUM_ALLOWED) KeyProduct Ifstr(i) $(KeyProduct) != $(KeyNull) SetRegValue $(KeyProduct) {RasComponents, 0,$(!REG_VT_MULTI_SZ),$(InstalledList)} CloseRegKey $(KeyProduct) Set Status = STATUS_SUCCESSFUL else Set Status = STATUS_FAILED endif return $(Status) [GetNetworkAccess] set Status = STATUS_SUCCESSFUL Set KeyNull = "" set NbfNetAccess = 0 set TcpIpNetAccess = 0 set IpxNetAccess = 0 set RasProtocolsKeyName = $(!NTN_SoftwareBase)"\Microsoft\RAS\PROTOCOLS" Debug-Output "GetNetworkAccess entry" set ProtocolKeyName = $(RasProtocolsKeyName)"\NBF" OpenRegKey $(!REG_H_LOCAL) "" $(ProtocolKeyName) $(!MAXIMUM_ALLOWED) KeyProtocol Ifstr(i) $(KeyProtocol) != $(KeyNull) GetRegValue $(KeyProtocol), "NetBiosGatewayEnabled" NetworkAccess ifint $(RegLastError) == 0 set NbfNetAccess = *($(NetworkAccess), 4) endif CloseRegKey $(KeyProtocol) else Debug-Output "GetNetworkAccess:error opening key "$(ProtocolKeyName) endif set ProtocolKeyName = $(RasProtocolsKeyName)"\IP" OpenRegKey $(!REG_H_LOCAL) "" $(ProtocolKeyName) $(!MAXIMUM_ALLOWED) KeyProtocol Ifstr(i) $(KeyProtocol) != $(KeyNull) GetRegValue $(KeyProtocol), "AllowNetworkAccess" NetworkAccess ifint $(RegLastError) == 0 set TcpIpNetAccess = *($(NetworkAccess), 4) endif CloseRegKey $(KeyProtocol) else Debug-Output "GetNetworkAccess:error opening key "$(ProtocolKeyName) endif set ProtocolKeyName = $(RasProtocolsKeyName)"\IPX" OpenRegKey $(!REG_H_LOCAL) "" $(ProtocolKeyName) $(!MAXIMUM_ALLOWED) KeyProtocol Ifstr(i) $(KeyProtocol) != $(KeyNull) GetRegValue $(KeyProtocol), "AllowNetworkAccess" NetworkAccess ifint $(RegLastError) == 0 set IpxNetAccess = *($(NetworkAccess), 4) endif CloseRegKey $(KeyProtocol) else Debug-Output "GetNetworkAccess:error opening key "$(ProtocolKeyName) endif Debug-Output "GetNetworkAccess exit" return $(Status) $(NbfNetAccess) $(TcpIpNetAccess) $(IpxNetAccess) [IsNdisWanBHAdapterInstalled] set Status = STATUS_FAILED Set KeyNull = "" Debug-Output "IsNdisWanBHAdapterInstalled entry" set NetworkCardKey = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(!NetworkCardKeyName) $(!MAXIMUM_ALLOWED) NetworkCardKey Ifstr(i) $(NetworkCardKey) != $(KeyNull) set NetcardsList = {} EnumRegKey $(NetworkCardKey) NetcardsList Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "IsNdisWanBHAdapterInstalled: EnumRegKey failed." goto IsNdisWanBHAdapterInstalledEnd endif ForListDo $(NetcardsList) set KeyName = *($($),1) set Card = $(KeyNull) OpenRegKey $(NetworkCardKey) "" $(KeyName) $(!MAXIMUM_ALLOWED) Card ifstr $(Card) == $(KeyNull) Debug-Output "IsNdisWanBHAdapterInstalled: could not open netcard key "$(KeyName) else GetRegValue $(Card), "ProductName" ProductNameInfo Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "IsNdisWanBHAdapterInstalled: ProductName not found." else set CardProductName = *($(ProductNameInfo), 4) Debug-Output "IsNdisWanBHAdapterInstalled: ProductName. "$(CardProductName) ifstr(i) $(CardProductName) == $(!ProductNDISWANName) set Status = STATUS_SUCCESSFUL CloseRegKey $(Card) goto IsNdisWanBHAdapterInstalledEnd endif endif CloseRegKey $(Card) endif EndForListDo else Debug-Output "IsNdisWanBHAdapterInstalled: failed to open "$(!NetworkCardKeyName) endif IsNdisWanBHAdapterInstalledEnd =+ ifstr(i) $(NetworkCardKey) != $(KeyNull) CloseRegKey $(NetworkCardKey) endif Debug-Output "IsNdisWanBHAdapterInstalled exit" Return $(Status) [InstallNdisWanBHAdapter] set Status = STATUS_FAILED set ThisOption = NDISWAN Debug-Output "InstallNdisWanBHAdapter entry" Shell "utility.inf", AddHardwareComponent, + $(!Product$(ThisOption)Name),$(!RasInfName),+ $(!Product$(ThisOption)KeyName) ifint $($R4) != -1 Set !NETCARD_LIST = >($(!NETCARD_LIST), + {$(!Product$(ThisOption)Name),+ $(!NetworkCardKeyName)"\"$($R4)}) endif ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "InstallNdisWanBHAdapter:Shell error" goto InstallNdisWanBHAdapterEnd endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != NO_ERROR Debug-Output "InstallNdisWanBHAdapter:Registry error: add hardware component" CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) goto InstallNdisWanBHAdapterEnd endif set KeyNetcard = $($R1) set KeyParameters = $($R3) set KeyAdapterRules = $($R2) set AdapterNumber = $($R4) set NewValueList = + {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(!Manufacturer)},+ {Title,$(NoTitle),$(!REG_VT_SZ),+ "["$($R4)"] "$(!Product$(ThisOption)Title)},+ {Description,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)Description)},+ {ProductName,$(NoTitle),$(!REG_VT_SZ),+ $(!Product$(ThisOption)Name)},+ {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+ {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(!CurrentDate),1)},+ {Hidden,$(NoTitle),$(!REG_VT_DWORD),1}} Shell "utility.inf", AddValueList, $(KeyNetcard), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "InstallNdisWanBHAdapter: ShellCode error" goto InstallNdisWanBHAdapterEnd endif CloseRegKey $(KeyNetcard) set TempProdName = """"$(!Product$(ThisOption)Name)$(AdapterNumber)"""" set TempBindForm = $(TempProdName)$(!NetRuleHardwareBHBindForm) set NewValueList = + {{type,$(NoTitle),$(!REG_VT_SZ),+ $(!NetRuleHardwareBHType)},+ {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, + {class,$(NoTitle),$(!REG_VT_MULTI_SZ),+ $(!NetRuleHardwareBHClass)}, + {InfOption,$(NoTitle),$(!REG_VT_SZ), "RAS"}, + {Infname ,$(NoTitle),$(!REG_VT_SZ),$(!RasInfName)}} Shell "utility.inf", AddValueList, $(KeyAdapterRules), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "InstallNdisWanBHAdapter: ShellCode error" goto InstallNdisWanBHAdapterEnd endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != NO_ERROR Debug-Output "InstallNdisWanBHAdapter:Registry error: add hardware component" CloseRegKey $(KeyParameters) CloseRegKey $(KeyAdapterRules) goto InstallNdisWanBHAdapterEnd endif CloseRegKey $(KeyAdapterRules) CloseRegKey $(KeyParameters) set Status = STATUS_SUCCESSFUL InstallNdisWanBHAdapterEnd =+ Debug-Output "InstallNdisWanBHAdapter exit" return $(Status) [InstallService] set ServiceName = $($0) set DisplayName = $($1) set ImagePath = $($2) set StartType = $($3) set GroupName = $($4) set Dependencies = $($5) set RegKeyName = $(!NTN_ServiceBase)"\"$(ServiceName) set Status = STATUS_SUCCESSFUL set KeyNull = "" Debug-Output "Install"$(ServiceName)" entry" OpenRegKey $(!REG_H_LOCAL) "" $(RegKeyName) $(!MAXIMUM_ALLOWED) KeyService Ifstr(i) $(KeyService) == $(KeyNull) Shell "utility.inf", CreateService, $(ServiceName), $(DisplayName), $(ImagePath), + $(StartType), $(GroupName), $(Dependencies), "" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF: Install"$(ServiceName)": ShellCode error" return STATUS_FAILED endif set RegistryErrorIndex = $($R0) CloseRegKey $($R1) CloseRegKey $($R2) CloseRegKey $($R3) Ifstr(i) $(RegistryErrorIndex) == SERVICE_ALREADY_EXISTS return $(Status) EndIf Ifstr(i) $(RegistryErrorIndex) != NO_ERROR Debug-Output "OEMNSVRA.INF: Install"$(ServiceName)": Registry error create service" return STATUS_FAILED endif endif Ifstr(i) $(KeyService) != $(KeyNull) CloseRegKey $(KeyService) endif Debug-Output "Install"$(ServiceName)" exit" return $(Status) [RemoveService] set ServiceName = $($0) set RegKeyName = $(!NTN_ServiceBase)"\"$(ServiceName) set Status = STATUS_SUCCESSFUL set KeyNull = "" Debug-Output "Remove"$(ServiceName)" entry" OpenRegKey $(!REG_H_LOCAL) "" $(RegKeyName) $(!MAXIMUM_ALLOWED) KeyService Ifstr(i) $(KeyService) != $(KeyNull) Shell "utility.inf", RemoveService $(ServiceName) "YES" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF: Remove"$(ServiceName)": ShellCode error" return STATUS_FAILED endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != NO_ERROR Debug-Output "OEMNSVRA.INF: Remove"$(ServiceName)": Registry error: " return STATUS_FAILED endif CloseRegKey $(KeyService) endif Debug-Output "Remove"$(ServiceName)" exit" return $(Status) [InstallRasRad] Debug-Output "InstallRasRad entry...." set Status = STATUS_FAILED set Status = $($R0) set KeyPerformance = "" set KeyRasRad = "" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\RasRad" $(!MAXIMUM_ALLOWED) KeyRasRad ifstr $(KeyRasRad) == "" CreateRegKey $(!REG_H_LOCAL) {$(!NTN_ServiceBase)"\RasRad", 0, GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyRasRad ifstr $(KeyRasRad) == "" Debug-Output "InstallRasRad: can not create registry key" goto InstallRasRadEnd endif OpenRegKey $(KeyRasRad) "" "Performance" $(!MAXIMUM_ALLOWED) KeyPerformance ifstr $(KeyPerformance) == "" CreateRegKey $(KeyRasRad) {"Performance", 0, GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyPerformance ifstr $(KeyPerformance) == "" Debug-Output "Error creating Performance key" goto InstallRasRadEnd endif endif set NewValueList = + {{Library ,0,$(!REG_VT_SZ),"rasrad.dll"},+ {Open, 0,$(!REG_VT_SZ),"Open"},+ {Close, 0,$(!REG_VT_SZ),"Close"},+ {Collect, 0,$(!REG_VT_SZ),"Collect"}} Shell "Utility.Inf", AddValueList, $(KeyPerformance), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "InstallRasRadService: error shelling AddValueList" goto InstallRasRadEnd endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" Debug-Output "InstallRasRadService: AddValueList bombed out" goto InstallRasRadEnd endif CloseRegKey $(KeyPerformance) set Status = STATUS_SUCCESSFUL CloseRegKey $(KeyRasRad) else Debug-Output "InstallRasRadService: Failed to open RasRad service key" endif InstallRasRadEnd =+ Debug-Output "InstallRasRad exit" return $(Status) [RemoveRasRad] set Status = STATUS_SUCCESSFUL DeleteRegTree $(!NTN_ServiceBase) "RasRad" return $(Status) [InstallRasArpService] shell "" InstallService $(!ProductRASARPName) $(!ProductRASARPDisplayName), + $(!ProductRASARPImagePath), "kernelautostart", "PNP_TDI", {"TCPIP"} return $($R0) [RemoveRasArpService] shell "" RemoveService $(!ProductRASARPName) return $($R0) [InstallWanArpService] shell "" InstallService $(!ProductWANARPName) $(!ProductWANARPDisplayName), + $(!ProductWANARPImagePath), "kernel", "PNP_TDI", {"TCPIP"} return $($R0) [RemoveWanArpService] shell "" RemoveService $(!ProductWANARPName) return $($R0) [InstallIPFilterDriver] shell "" InstallService $(!ProductIPFLTName) $(!ProductIPFLTDisplayName), + $(!ProductIPFLTImagePath), "kernel", "", {} return $($R0) [RemoveIPFilterDriver] shell "" RemoveService $(!ProductIPFLTName) return $($R0) [InstallIpxPingService] shell "" InstallService $(!ProductIPXPINGName) $(!ProductIPXPINGDisplayName), + $(!ProductIPXPINGImagePath), "serviceshare", "", {"NWLNKIPX"} return $($R0) [RemoveIpxPingService] shell "" RemoveService $(!ProductIPXPINGName) return $($R0) [InstallNwLnkFwdService] shell "" InstallService $(!ProductNWLNKFWDName) $(!ProductNWLNKFWDDisplayName), + $(!ProductNWLNKFWDImagePath), "kernel", "", {"NWLNKIPX"} return $($R0) [RemoveNwLnkFwdService] shell "" RemoveService $(!ProductNWLNKFWDName) return $($R0) [InstallNwLnkFltService] shell "" InstallService $(!ProductNWLNKFLTName) $(!ProductNWLNKFLTDisplayName), + $(!ProductNWLNKFLTImagePath), "kernel", "", {$(!ProductNWLNKFWDName)} return $($R0) [RemoveIpRipService] shell "" RemoveService "IPRIP" return $($R0) [RemoveRelayAgentService] shell "" RemoveService "RELAYAGENT" return $($R0) [RemoveNwLnkFltService] shell "" RemoveService $(!ProductNWLNKFLTName) return $($R0) [InstallRtrMgr] set RtrMgr = $($0) set RtrDll = $($1) set RtrId = $($2) Debug-Output "InstallRtrMgr for "$(RtrMgr)" entry" CreateRegKey $(!REG_H_LOCAL) {$(!RouterKeyName)"\RouterManagers", 0, GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyRtrMgrs Ifstr $(KeyRtrMgrs) == "" OpenRegKey $(!REG_H_LOCAL) "" $(!RouterKeyName)"\RouterManagers" $(!MAXIMUM_ALLOWED) KeyRtrMgrs Ifstr $(KeyRtrMgrs) == "" Debug-Output "InstallRtrMgr: error opening RouterManagers key" set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY return $(RegistryErrorIndex) endif endif CreateRegKey $(KeyRtrMgrs) {$(RtrMgr), 0, GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyRtrMgr Ifstr $(KeyRtrMgr) == "" OpenRegKey $(KeyRtrMgrs) "" $(RtrMgr) $(!MAXIMUM_ALLOWED) KeyRtrMgr Ifstr $(KeyRtrMgr) == "" Debug-Output "InstallRtrMgr: error creating RouterManagers\"$RtrMgr)" key" set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY return $(RegistryErrorIndex) endif endif SetRegValue $(KeyRtrMgr) {"DLLPath", 0, $(!REG_VT_EXPAND_SZ), $(RtrDll)} SetRegValue $(KeyRtrMgr) {"ProtocolID", 0, $(!REG_VT_DWORD), $(RtrId)} CloseRegKey $(KeyRtrMgr) CloseRegKey $(KeyRtrMgrs) Debug-Output "InstallRtrMgr for "$(RtrMgr)" exit" return STATUS_SUCCESSFUL [InstallIPRtrMgr] shell "" InstallRtrMgr "IP" "%systemroot%\system32\iprtrmgr.dll" $(!P:PROTO_IP) return $($R0) [InstallIPXRtrMgr] shell "" InstallRtrMgr "IPX" "%systemroot%\system32\ipxrtmgr.dll" $(!P:PROTO_IPX) return $($R0) [RemoveRtrMgr] set RtrMgr = $($0) Debug-Output "RemoveRtrMgr for "$(RtrMgr)" entry" OpenRegKey $(!REG_H_LOCAL) "" $(!RouterKeyName)"\RouterManagers" $(!MAXIMUM_ALLOWED) KeyRtrMgrs Ifstr $(KeyRtrMgrs) == "" Debug-Output "RemoveRtrMgr: error opening RouterManagers key" set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY return $(RegistryErrorIndex) endif DeleteRegTree $(KeyRtrMgrs) $(RtrMgr) CloseRegKey $(KeyRtrMgrs) Debug-Output "RemoveRtrMgr for "$(RtrMgr)" exit" return STATUS_SUCCESSFUL [RemoveIPRtrMgr] shell "" RemoveRtrMgr "IP" return $($R0) [RemoveIPXRtrMgr] shell "" RemoveRtrMgr "IPX" return $($R0) [InstallEventlogDlls] set DllList = $($0) Debug-Output "InstallEventlogDlls entry" OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Services\EventLog\System" $(!MAXIMUM_ALLOWED) KeyEventLog Ifstr $(KeyEventLog) == "" debug-output "OEMNSVRA.INF: InstallEventlogDlls Cannot open eventlog key" return UNABLE_OPEN_EVENTLOG_SUBKEY else ForListDo $(DllList) set Component = *($($), 1) set DllName = "%SystemRoot%\system32\"*($($), 2) set TypeSupported = *($($), 3) CreateRegKey $(KeyEventLog) {$(Component), 0,GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyService ifstr(i) $(KeyService) == "" OpenRegKey $(KeyEventLog) "" $(Component) $(!MAXIMUM_ALLOWED) KeyService endif Ifstr $(KeyService) != "" SetRegValue $(KeyService) {EventMessageFile, 0,$(!REG_VT_EXPAND_SZ),$(DllName)} SetRegValue $(KeyService) {TypesSupported, 0,$(!REG_VT_DWORD), $(TypeSupported)} CloseRegKey $(KeyService) else Debug-Output "InstallEventlogDlls: error creating or opening eventlog\system\"$(Component)" key" endif EndForListDo CloseRegKey $(KeyEventLog) Endif Debug-Output "InstallEventlogDlls exit" return STATUS_SUCCESSFUL [InstallIPEventlogDlls] set DllList = {{"IPRouterManager", "mprmsg.dll", 7},+ {"IPRIP2", "iprip2.dll", 7},+ {"IPBOOTP", "ipbootp.dll", 7},+ {"OSPFMib", "ospfmib.dll", 7},+ {"OSPF", "ospf.dll", 7}} shell "" InstallEventlogDlls $(DllList) return $($R0) [InstallIPXEventlogDlls] set DllList = {{"IPXRouterManager", "mprmsg.dll", 7},+ {"IPXRIP", "mprmsg.dll", 7},+ {"IPXSAP", "mprmsg.dll", 7}} shell "" InstallEventlogDlls $(DllList) return $($R0) [RemoveEventlogDlls] set DllList = $($0) Debug-Output "RemoveEventlogDlls entry" OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Services\EventLog\System" $(!MAXIMUM_ALLOWED) KeyEventLog Ifstr $(KeyEventLog) == "" debug-output "OEMNSVRA.INF: InstallEventlogDlls Cannot open eventlog key" return UNABLE_OPEN_EVENTLOG_SUBKEY else ForListDo $(DllList) set Component = *($($), 1) DeleteRegTree $(KeyEventLog) $(Component) EndForListDo CloseRegKey $(KeyEventLog) Endif Debug-Output "RemoveEventlogDlls exit" return STATUS_SUCCESSFUL [RemoveIPEventlogDlls] set DllList = {{"IPRouterManager"}, {"IPRIP2"}, {"IPBOOTP"}, {"OSPFMib"}, {"OSPF"}} shell "" InstallEventlogDlls $(DllList) return $($R0) [RemoveIPXEventlogDlls] set DllList = {{"IPXRouterManager"}, {"IPXRIP"}, {"IPXSAP"}} shell "" InstallEventlogDlls $(DllList) return $($R0) [InstallSnmpAgents] set AgentList = $($0) set ProductKeyBase = $(!NTN_SoftwareBase)"\Microsoft" Debug-Output "InstallSnmpAgents entry" OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ExtensionAgents" $(!MAXIMUM_ALLOWED) KeySnmp Ifstr $(KeySnmp) == "" debug-output "OEMNSVRA.INF: InstallSnmpAgents Cannot open ExtensionAgents key" return UNABLE_OPEN_EVENTLOG_SUBKEY else ForListDo $(AgentList) set AgentName = *($($), 1) set AgentKeyName = *($($), 2) set DllName = "%SystemRoot%\System32\"*($($), 3) SetRegValue $(KeySnmp) {$(AgentName), 0,$(!REG_VT_SZ), "SOFTWARE\MICROSOFT\"$(AgentKeyName)"\CurrentVersion"} CreateRegKey $(!REG_H_LOCAL) {$(ProductKeyBase)"\"$(AgentKeyName), 0, GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyAgent Ifstr $(KeyAgent) == "" OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyBase)"\"$(AgentKeyName) $(!MAXIMUM_ALLOWED) KeyAgent Ifstr $(KeyAgent) == "" Debug-Output "InstallSnmpAgents: error opening "$(AgentKeyName)" registry key" set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY return $(RegistryErrorIndex) endif Endif CreateRegKey $(KeyAgent) {"CurrentVersion", 0, GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyCurrentVer Ifstr $(KeyCurrentVer) == "" OpenRegKey $(KeyAgent) "" "CurrentVersion" $(!MAXIMUM_ALLOWED) KeyCurrentVer Ifstr $(KeyCurrentVer) == "" Debug-Output "InstallSnmpAgents: error opening "$(AgentKeyName)"\CurrentVersion registry key" set RegistryErrorIndex = UNABLE_CREATE_SERVICE_SUBKEY return $(RegistryErrorIndex) endif EndIf SetRegValue $(KeyCurrentVer) {"PathName", 0, $(!REG_VT_EXPAND_SZ), $(DllName)} CloseRegKey $(KeyCurrentVer) CloseRegKey $(KeyAgent) EndForListDo CloseRegKey $(KeySnmp) Endif Debug-Output "InstallSnmpAgents exit" return STATUS_SUCCESSFUL [InstallIPSnmpAgents] set AgentList = { {"ospf", "OspfMibAgent", "ospfagnt.dll"},+ {"rip2", "Rip2Agent", "ripagnt.dll"},+ {"bootp", "BootPAgent", "btpagnt.dll"} } shell "" InstallSnmpAgents $(AgentList) return $($R0) [InstallIPXSnmpAgents] set AgentList = { {"IPX", "IPXMibAgent", "rtipxmib.dll"} } shell "" InstallSnmpAgents $(AgentList) return $($R0) [RemoveSnmpAgents] set AgentList = $($0) set ProductKeyBase = $(!NTN_SoftwareBase)"\MICROSOFT" Debug-Output "RemoveSnmpAgents entry" OpenRegKey $(!REG_H_LOCAL) "" "SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ExtensionAgents" $(!MAXIMUM_ALLOWED) KeySnmp Ifstr $(KeySnmp) == "" debug-output "OEMNSVRA.INF: RemoveSnmpAgents Cannot open ExtensionAgents key" return UNABLE_OPEN_EVENTLOG_SUBKEY else ForListDo $(AgentList) set AgentName = *($($), 1) set AgentKeyName = *($($), 2) DeleteRegValue $(KeySnmp) $(AgentName) DeleteRegTree $(!REG_H_LOCAL) $(ProductKeyBase)"\"$(AgentKeyName) EndForListDo CloseRegKey $(KeySnmp) Endif Debug-Output "RemoveSnmpAgents exit" return STATUS_SUCCESSFUL [RemoveIPSnmpAgents] set AgentList = { {"ospf", "OspfMibAgent"},+ {"mib2", "NewMib2Agent"},+ {"rip2", "Rip2Agent"},+ {"bootp", "BootPAgent"} } shell "" RemoveSnmpAgents $(AgentList) return $($R0) [RemoveIPXSnmpAgents] set AgentList = { {"IPX", "IPXMibAgent"} } shell "" RemoveSnmpAgents $(AgentList) return $($R0) [InstallRasAcdService] shell "" InstallService $(!ProductRASACDName) $(!ProductRASACDDisplayName), + $(!ProductRASACDImagePath), "kernelautostart", "Streams Drivers", {} return $($R0) [RemoveRasAcdService] shell "" RemoveService $(!ProductRASACDName) return $($R0) [InstallNdisTapiService] set Status = STATUS_SUCCESSFUL set KeyNull = "" Debug-Output "InstallNdisTapiService entry" OpenRegKey $(!REG_H_LOCAL) "" $(!NdisTapiKeyName) $(!MAXIMUM_ALLOWED) KeyService Ifstr(i) $(KeyService) == $(KeyNull) Shell "utility.inf", CreateService, $(!ProductNDISTAPIName), + $(!ProductNDISTAPIDisplayName), + $(!ProductNDISTAPIImagePath), + "kernelauto", "NDIS", {}, "" ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF: InstallNdisTapiService : ShellCode error" return STATUS_FAILED endif set RegistryErrorIndex = $($R0) set ParamKey = $($R2) CloseRegKey $($R1) CloseRegKey $($R3) Ifstr(i) $(RegistryErrorIndex) == SERVICE_ALREADY_EXISTS return $(Status) EndIf Ifstr(i) $(RegistryErrorIndex) != NO_ERROR Debug-Output "OEMNSVRA.INF: InstallNdisTapiService: Registry error create service" return STATUS_FAILED endif ifstr(i) $(!STF_PRODUCT) != "WINNT" SetRegValue $(ParamKey) {AsyncEventQueueSize, 0, $(!REG_VT_DWORD), 3072} else SetRegValue $(ParamKey) {AsyncEventQueueSize, 0, $(!REG_VT_DWORD), 768} endif CloseRegKey $(ParamKey) endif Ifstr(i) $(KeyService) != $(KeyNull) CloseRegKey $(KeyService) endif Debug-Output "InstallNdisTapiService exit" return $(Status) [RemoveNdisTapiService] shell "" RemoveService $(!ProductNDISTAPIName) return $($R0) [InstallNwlnkRipService] Debug-Output "InstallNwlnkRipService entry" set Status = STATUS_FAILED set KeyNull = "" Set SrcDir = $(!STF_SRCDIR) OpenRegKey $(!REG_H_LOCAL) "" $(!RasIsnRipKeyName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != "" SetRegValue $(KeyService) {Start, 0, $(!REG_VT_DWORD), 4} CloseRegKey $(KeyService) endif set Status = STATUS_SUCCESSFUL InstallNwlnkRipServiceEnd =+ Debug-Output "InstallNwlnkRipService exit" return $(Status) [RemoveNwlnkRipService] Debug-Output "RemoveNwlnkRipService entry" set Status = STATUS_FAILED set KeyNull = "" Set SrcDir = $(!STF_SRCDIR) set AddCopy = YES set DoCopy = YES set DoConfig = YES set SaveNTN_InstallMode = $(!NTN_InstallMode) set !NTN_InstallMode = deinstall Shell "oemnsvrr.inf" InstallOption $(!STF_LANGUAGE) "NWLNKRIP" + $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig) "RAS" set !NTN_InstallMode = $(SaveNTN_InstallMode) Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error removing NWLNKRIP service" Goto RemoveNwlnkRipServiceEnd Endif Set RemoveStatus = $($R0) Ifstr(i) $(RemoveStatus) != STATUS_SUCCESSFUL Ifstr(i) $(RemoveStatus) != STATUS_USERCANCEL Debug-Output "RemoveNwlnkRipService returned "$(RemoveStatus) Goto RemoveNwlnkRipServiceEnd Endif Endif Shell "" RemoveServiceDependency "RemoteAccess" $(!ProductRASISNRIPName) ifstr(i) $($R0) == STATUS_FAILED Debug-Output "RemoveNwlnkRipService: error removing service dependency" endif set Status = STATUS_SUCCESSFUL RemoveNwlnkRipServiceEnd =+ Debug-Output "RemoveNwlnkRipService exit" return $(Status) [InstallIsnSapService] Debug-Output "InstallIsnSapService entry" set Status = STATUS_FAILED set KeyNull = "" Set SrcDir = $(!STF_SRCDIR) ifstr(i) $(!NTN_InstallMode) == "install" set !STF_SRCDIR_OVERRIDE = $(SrcDir) endif set AddCopy = YES set DoCopy = YES set DoConfig = YES set SaveNTN_InstallMode = $(!NTN_InstallMode) set !NTN_InstallMode = install Shell "oemnsvsa.inf" InstallOption $(!STF_LANGUAGE) "SAP" + $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig) "RAS" set !NTN_InstallMode = $(SaveNTN_InstallMode) Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error installing SAP agent" Goto InstallIsnSapServiceEnd Endif Set InstallStatus = $($R0) Ifstr(i) $(InstallStatus) != STATUS_SUCCESSFUL Ifstr(i) $(InstallStatus) != STATUS_USERCANCEL Debug-Output "InstallSapService returned "$(InstallStatus) Goto InstallIsnSapServiceEnd Endif Endif OpenRegKey $(!REG_H_LOCAL) "" $(!RasIsnSapKeyName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != "" SetRegValue $(KeyService) {ImagePath, 0, $(!REG_VT_EXPAND_SZ), "%SystemRoot%\System32\mprouter.exe"} CloseRegKey $(KeyService) endif set Status = STATUS_SUCCESSFUL InstallIsnSapServiceEnd =+ Debug-Output "InstallIsnSapService exit" return $(Status) [RemoveIsnSapService] Debug-Output "RemoveIsnSapService entry" set Status = STATUS_FAILED set KeyNull = "" Set SrcDir = $(!STF_SRCDIR) set AddCopy = YES set DoCopy = YES set DoConfig = YES set SaveNTN_InstallMode = $(!NTN_InstallMode) set !NTN_InstallMode = deinstall Shell "oemnsvsa.inf" InstallOption $(!STF_LANGUAGE) "SAP" + $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig) "RAS" set !NTN_InstallMode = $(SaveNTN_InstallMode) Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error removing SAP agent" Goto RemoveIsnSapServiceEnd Endif Set RemoveStatus = $($R0) Ifstr(i) $(RemoveStatus) != STATUS_SUCCESSFUL Ifstr(i) $(RemoveStatus) != STATUS_USERCANCEL Debug-Output "RemoveIsnSapService returned "$(RemoveStatus) Goto RemoveIsnSapServiceEnd Endif Endif Shell "" RemoveServiceDependency "RemoteAccess" $(!ProductRASISNSAPName) ifstr(i) $($R0) == STATUS_FAILED Debug-Output "RemoveIsnSapService: error removing service dependency" endif set Status = STATUS_SUCCESSFUL RemoveIsnSapServiceEnd =+ Debug-Output "RemoveIsnSapService exit" return $(Status) [InstallSnmpService] Debug-Output "InstallSnmpService entry" set Status = STATUS_FAILED set KeyNull = "" Set SrcDir = $(!STF_SRCDIR) OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\Snmp" $(!MAXIMUM_ALLOWED) KeySnmp ifstr $(KeySnmp) != $(KeyNull) Debug-Output "OEMNSVRA.INF: Not installing SNMP service because it is already installed." CloseRegkey $(KeySnmp) return STATUS_SUCCESSFUL endif ifstr(i) $(!NTN_InstallMode) == "install" set !STF_SRCDIR_OVERRIDE = $(SrcDir) endif set AddCopy = YES set DoCopy = YES set DoConfig = YES set SaveNTN_InstallMode = $(!NTN_InstallMode) set !NTN_InstallMode = install Shell "oemnsvsn.inf" InstallOption $(!STF_LANGUAGE) "SNMP" + $(SrcDir) $(AddCopy) $(DoCopy) $(DoConfig) set !NTN_InstallMode = $(SaveNTN_InstallMode) Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "Error installing SAP agent" Goto InstallIsnSapServiceEnd Endif Set InstallStatus = $($R0) Ifstr(i) $(InstallStatus) != STATUS_SUCCESSFUL Ifstr(i) $(InstallStatus) != STATUS_USERCANCEL Debug-Output "InstallSapService returned "$(InstallStatus) Goto InstallSnmpServiceEnd Endif Endif set Status = STATUS_SUCCESSFUL InstallSnmpServiceEnd =+ Debug-Output "InstallSnmpService exit" return $(Status) [EnablePPTPFilterDriver] Debug-Output "EnablePPTPFilterDriver entry" set Status = STATUS_FAILED set DrvrKeyName = $(!NTN_ServiceBase)"\RASPPTPF" OpenRegKey $(!REG_H_LOCAL) "" $(DrvrKeyName) $(!MAXIMUM_ALLOWED) KeyDriver ifstr $(KeyDriver) != "" SetRegValue $(KeyDriver) {Start, 0, $(!REG_VT_DWORD), 2} CloseRegKey $(KeyDriver) Debug-Output "Set PPTPFilterDriver Start value to 2" set Status = STATUS_SUCCESSFUL endif Debug-Output "EnablePPTPFilterDriver exit" return $(Status) [DisablePPTPFilterDriver] Debug-Output "DisablePPTPFilterDriver entry" set Status = STATUS_FAILED set BackupDir = $(!STF_WINDOWSSYSPATH)"\~~RB$$~~" set DrvrKeyName = $(!NTN_ServiceBase)"\RASPPTPF" OpenRegKey $(!REG_H_LOCAL) "" $(DrvrKeyName) $(!MAXIMUM_ALLOWED) KeyDriver ifstr $(KeyDriver) != "" SetRegValue $(KeyDriver) {Start, 0, $(!REG_VT_DWORD), 4} CloseRegKey $(KeyDriver) Debug-Output "Set PPTPFilterDriver Start value to 4" set STATUS = NO LibraryProcedure STATUS, $(!LIBHANDLE), CheckFileExistance $(!STF_WINDOWSSYSPATH)"\drivers\RASPPTPF.SYS" ifstr(i) $(STATUS) == YES set STATUS = NO LibraryProcedure STATUS, $(!LIBHANDLE), CheckFileExistance $(BackupDir)"\RASPPTPF.SYS" ifstr(i) $(STATUS) == YES LibraryProcedure STATUS, $(!LIBHANDLE), DelFile + $(!STF_WINDOWSSYSPATH)"drivers\RASPPTPF.OLD" LibraryProcedure STATUS, $(!LIBHANDLE), RenFile $(!STF_WINDOWSSYSPATH)"\drivers\RASPPTPF.SYS" + $(!STF_WINDOWSSYSPATH)"\drivers\RASPPTPF.OLD" AddFileToDeleteList $(!STF_WINDOWSSYSPATH)"\drivers\RASPPTPF.OLD" else LibraryProcedure STATUS, $(!LIBHANDLE), DelFile $(!STF_WINDOWSSYSPATH)"\DRIVERS\RASPPTPF.SYS.SAV" LibraryProcedure STATUS, $(!LIBHANDLE), RenFile $(!STF_WINDOWSSYSPATH)"\drivers\RASPPTPF.SYS" + $(!STF_WINDOWSSYSPATH)"\drivers\RASPPTPF.SYS.SAV" endif endif set Status = STATUS_SUCCESSFUL endif Debug-Output "DisablePPTPFilterDriver exit" return $(Status) [WritePPPParameters] Debug-Output "WritePPPParameters: entry" Set Status = STATUS_FAILED set KeyNull = "" set RasManKeyName = $(!NTN_ServiceBase)"\RasMan" set RasManPPPKeyName = $(!NTN_ServiceBase)"\RasMan\PPP" set RasProtocolsKeyName = $(!NTN_SoftwareBase)"\Microsoft\RAS\PROTOCOLS" OpenRegKey $(!REG_H_LOCAL) "" $(RasManKeyName) $(!MAXIMUM_ALLOWED) KeyRasMan ifstr $(KeyRasMan) != $(KeyNull) OpenRegKey $(KeyRasMan) "" "PPP" $(!MAXIMUM_ALLOWED) KeyRasManPPP set NewValueList = {} ifstr $(KeyRasManPPP) != $(KeyNull) EnumRegValue $(KeyRasManPPP) NewValueList else CreateRegKey $(KeyRasMan) + {"PPP",0,GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyRasManPPP CloseRegKey $(KeyRasMan) ifstr $(KeyRasManPPP) == $(KeyNull) Debug-Output "WritePPPParameters: error creating RasMan\ppp key" goto WritePPPParametersEnd endif endif else Debug-Output "WritePPPParameters: error opening RasMan key" goto UpdateCPListEnd endif ifstr(i) $(NewValueList) == {} set NewValueList = {{MaxConfigure, 0, $(!REG_VT_DWORD), 10}, + {MaxTerminate, 0, $(!REG_VT_DWORD), 2}, + {MaxFailure, 0, $(!REG_VT_DWORD), 10}. + {MaxReject, 0, $(!REG_VT_DWORD), 5}. + {NegotiateTime, 0, $(!REG_VT_DWORD), 150}, + {Logging, 0, $(!REG_VT_DWORD), 0}, + {RestartTimer, 0, $(!REG_VT_DWORD), 3}} endif forlistdo $(NewValueList) SetRegValue $(KeyRasManPPP) $($) endforlistdo set ForceEncryptedPassword = 2 set ForceEncryptedData = 0 set ForceStrongEncryption = 0 OpenRegKey $(!REG_H_LOCAL) "" $(RasProtocolsKeyName) $(!MAXIMUM_ALLOWED) KeyRasProtocols ifstr $(KeyRasProtocols) != $(KeyNull) GetRegValue $(KeyRasProtocols) "ForceEncryptedPassword" ForceValue ifint $(RegLastError) == 0 set ForceEncryptedPassword = *($(ForceValue), 4) endif GetRegValue $(KeyRasProtocols) "ForceEncryptedData" ForceValue ifint $(RegLastError) == 0 set ForceEncryptedData = *($(ForceValue), 4) endif GetRegValue $(KeyRasProtocols) "ForceStrongEncryption" ForceValue ifint $(RegLastError) == 0 set ForceStrongEncryption = *($(ForceValue), 4) endif SetRegValue $(KeyRasManPPP) {ForceEncryptedPassword, 0, + $(!REG_VT_DWORD),$(ForceEncryptedPassword)} SetRegValue $(KeyRasManPPP) {ForceEncryptedData, 0, + $(!REG_VT_DWORD),$(ForceEncryptedData)} SetRegValue $(KeyRasManPPP) {ForceStrongEncryption, 0, + $(!REG_VT_DWORD),$(ForceStrongEncryption)} CloseRegKey $(KeyRasProtocols) endif CloseRegKey $(KeyRasManPPP) set Status = STATUS_SUCCESSFUL WritePPPParametersEnd =+ Debug-Output "WritePPPParameters: exit" return $(Status) [UpdateCPList] Debug-Output "UpdateCPList: entry" Set Status = STATUS_FAILED set KeyNull = "" set RasManPPPKeyName = $(!NTN_ServiceBase)"\RasMan\PPP" Shell "" WritePPPParameters Shell "" QuerySelectedProtocols ifstr(i) $($R0) == STATUS_SUCCESSFUL set fNetbeuiSelected = $($R1) set fTcpIpSelected = $($R2) set fIpxSelected = $($R3) set fNetbeuiAllowed = $($R4) set fTcpIpAllowed = $($R5) set fIpxAllowed = $($R6) else Debug-Output "UpdateCPList: error QuerySelectedProtocols" goto UpdateCPListEnd endif OpenRegKey $(!REG_H_LOCAL) "" $(RasManPPPKeyName) $(!MAXIMUM_ALLOWED) KeyRasManPPP ifstr $(KeyRasManPPP) != $(KeyNull) EnumRegKey $(KeyRasManPPP) OldCPList ifstr(i) $(fNetbeuiSelected) == TRUE set fNetbeuiChosen = TRUE else set fNetbeuiChosen = $(fNetbeuiAllowed) endif ifstr(i) $(fTcpIpSelected) == TRUE set fTcpIpChosen = TRUE else set fTcpIpChosen = $(fTcpIpAllowed) endif ifstr(i) $(fIpxSelected) == TRUE set fIpxChosen = TRUE else set fIpxChosen = $(fIpxAllowed) endif set CPList = {"PAP", "CHAP", "SPAP", "CBCP", "COMPCP"} ifstr(i) $(fNetbeuiChosen) == TRUE set CPList = >($(CPList), "NBFCP") endif ifstr(i) $(fTcpIpChosen) == TRUE set CPList = >($(CPList), "IPCP") endif ifstr(i) $(fIpxChosen) == TRUE set CPList = >($(CPList), "IPXCP") endif set CurrentCPList = {} ForListDo $(OldCPList) set CPName = *($($),1) ifcontains(i) $(CPName) not-in $(CPList) DeleteRegTree $(KeyRasManPPP) $(CPName) else set CurrentCPList = >($(CurrentCPList), $(CPName)) endif EndForListDo forlistdo $(CPList) ifcontains(i) $($) not-in $(CurrentCPList) CreateRegKey $(KeyRasManPPP) + {$($),0,GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyCp set path = #(CP-List, $($), 1) set NewValueList = {{Path, 0, $(!REG_VT_EXPAND_SZ), $(path)}} ifstr $(KeyCp) != $(KeyNull) Shell "utility.inf", AddValueList, $(KeyCp), + $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "UpdateCPList:AddValueList bombed out" goto UpdateCPListEnd endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto UpdateCPListEnd endif CloseRegKey $(KeyCp) else Debug-Output "UpdateCPList:error creating key" endif endif endforlistdo CloseRegKey $(KeyRasManPPP) else Debug-Output "UpdateCPList:error opening RASMAN\PPP key" goto UpdateCPListEnd endif set Status = STATUS_SUCCESSFUL UpdateCPListEnd =+ Debug-Output "UpdateCPList: exit" return $(Status) [UpdateSoftwareType] Debug-Output "UpdateSoftwareType: entry" set ProductKeyName = $(!NTN_SoftwareBase)"\Microsoft\RAS\CurrentVersion" set Status = STATUS_FAILED set KeyCurrentVersion = "" OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(!MAXIMUM_ALLOWED) KeyCurrentVersion ifstr $(KeyCurrentVersion) == "" Debug-Output "OEMNSVRA.INF:UpdateSoftwareType: couldn't open "$(ProductKeyName) goto UpdateSoftwareTypeEnd endif SetRegValue $(KeyCurrentVersion) {SoftwareType, 0, $(!REG_VT_SZ), "service" } CloseRegKey $(KeyCurrentVersion) set Status = STATUS_SUCCESSFUL UpdateSoftwareTypeEnd=+ Debug-Output "UpdateSoftwareType: exit" return $(Status) [UpdateLLInterface] Debug-Output "UpdateLLInterface: entry" set Status = STATUS_FAILED set KeyNull = "" set LLInterface = "\Device\WANARP" set KeyIpLinkage = $(KeyNull) set IPLinkageKeyName = $(!NTN_ServiceBase)"\TCPIP\Linkage" OpenRegKey $(!REG_H_LOCAL) "" $(IPLinkageKeyName) $(!MAXIMUM_ALLOWED) KeyIpLinkage ifstr $(KeyIpLinkage) == $(KeyNull) Debug-Output "OEMNSVRA.INF:UpdateLLInterface: couldn't open IP Linkage key" goto UpdateLLInterfaceEnd endif set NdisWanList = {} set DeviceList = {} GetRegValue $(KeyIpLinkage) "Bind" TmpList ForListDo *($(TmpList),4) Split-String $($), "\", BindList QueryListSize ListSize $(BindList) set ServiceName = *($(BindList), $(ListSize)) LibraryProcedure Result $(!LIBHANDLE) SetupStrncmp $(ServiceName) "NdisWan" 7 ifint $(Result) == 0 set NdisWanList = >($(NdisWanList), $(ServiceName)) set DeviceList = >($(DeviceList), $($)) endif EndForListDo CloseRegKey $(KeyIpLinkage) set NdisWanServerAdapter = "" ForListDo $(NdisWanList) set ServiceKeyName = $(!NTN_ServiceBase)"\"$($)"\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(ServiceKeyName) $(!MAXIMUM_ALLOWED) KeyNdisWan ifstr $(KeyNdisWan) != $(KeyNull) GetRegValue $(KeyNdisWan) "ServerAdapter" KeyValue ifint $(RegLastError) == 0 ifint *($(KeyValue), 4) == 1 set NdisWanServerAdapter = "\Device\"$($) endif endif CloseRegKey $(KeyNdisWan) endif EndForListDo set ListSize = 0 QueryListSize ListSize $(DeviceList) ifint $(ListSize) >= 1 set KeyLinkage = $(KeyNull) set KeyParam = $(KeyNull) set WanArpLinkageKeyName = $(!NTN_ServiceBase)"\WanArp\Linkage" set WanArpParamKeyName = $(!NTN_ServiceBase)"\WanArp\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(WanArpLinkageKeyName) $(!MAXIMUM_ALLOWED) KeyLinkage ifstr $(KeyLinkage) != $(KeyNull) SetRegValue $(KeyLinkage) {Bind, 0, $(!REG_VT_MULTI_SZ), $(DeviceList)} CloseRegKey $(KeyLinkage) else Debug-Output "OEMNSVRA.INF:UpdateLLInterface: couldn't open WANARP Linkage key" endif OpenRegKey $(!REG_H_LOCAL) "" $(WanArpParamKeyName) $(!MAXIMUM_ALLOWED) KeyParam ifstr $(KeyParam) != $(KeyNull) SetRegValue $(KeyParam) {NdisWanAdapter, 0, $(!REG_VT_SZ), *($(DeviceList), 1)} SetRegValue $(KeyParam) {NdisWanServerAdapter, 0, $(!REG_VT_SZ), $(NdisWanServerAdapter)} CloseRegKey $(KeyParam) else Debug-Output "OEMNSVRA.INF:UpdateLLInterface: couldn't open WANARP Parameters key" endif endif set ListSize = 0 QueryListSize ListSize $(NdisWanList) ifint $(ListSize) >= 1 ForListDo $(NdisWanList) set ServiceKeyName = $(!NTN_ServiceBase)"\"$($)"\Parameters\TCPIP" OpenRegKey $(!REG_H_LOCAL) "" $(ServiceKeyName) $(!MAXIMUM_ALLOWED) KeyNdisWan ifstr $(KeyNdisWan) != $(KeyNull) SetRegValue $(KeyNdisWan) {IPAddress, 0, + $(!REG_VT_MULTI_SZ), {"0.0.0.0"}} SetRegValue $(KeyNdisWan) {SubnetMask, 0, + $(!REG_VT_MULTI_SZ), {"0.0.0.0"}} SetRegValue $(KeyNdisWan) {DefaultGateway, 0, + $(!REG_VT_MULTI_SZ), {""}} SetRegValue $(KeyNdisWan) {LLInterface, 0,+ $(!REG_VT_SZ), $(LLInterface)} SetRegValue $(KeyNdisWan) {EnableDHCP, 0, + $(!REG_VT_DWORD), 0} else CreateRegKey $(!REG_H_LOCAL) + {$(ServiceKeyName),0,GenericClass} "" + $(!MAXIMUM_ALLOWED) "" KeyNdisWan ifstr $(KeyNdisWan) != $(KeyNull) SetRegValue $(KeyNdisWan) {IPAddress, 0, + $(!REG_VT_MULTI_SZ), {"0.0.0.0"}} SetRegValue $(KeyNdisWan) {SubnetMask, 0, + $(!REG_VT_MULTI_SZ), {"0.0.0.0"}} SetRegValue $(KeyNdisWan) {DefaultGateway, 0, + $(!REG_VT_MULTI_SZ), {""}} SetRegValue $(KeyNdisWan) {LLInterface, 0,+ $(!REG_VT_SZ), $(LLInterface)} SetRegValue $(KeyNdisWan) {EnableDHCP, 0, + $(!REG_VT_DWORD), 0} SetRegValue $(KeyNdisWan) {UseZeroBroadcast, 0, + $(!REG_VT_DWORD), 0} else Debug-Output "OEMNSVRA.INF:UpdateLLInterface: couldn't create NdisWan params-tcpip key" goto UpdateLLInterfaceEnd endif endif CloseRegKey $(KeyNdisWan) EndForListDo endif set Status = STATUS_SUCCESSFUL UpdateLLInterfaceEnd =+ Debug-Output "UpdateLLInterface: exit" return $(Status) [SetRasArpBindValueFromTcpIP] Debug-Output "SetRasArpBindValueFromTcpIP: entry" set Status = STATUS_FAILED set KeyNull = "" set IPLinkageKeyName = $(!NTN_ServiceBase)"\TCPIP\Linkage" OpenRegKey $(!REG_H_LOCAL) "" $(IPLinkageKeyName) $(!MAXIMUM_ALLOWED) KeyIpLinkage ifstr $(KeyIpLinkage) == $(KeyNull) Debug-Output "OEMNSVRA.INF:SetRasArpBindValueFromTcpIP: couldn't open IP Linkage key" goto SetRasArpBindValueFromTcpIPEnd endif set NdisWanList = {} GetRegValue $(KeyIpLinkage) "Bind" TmpList ForListDo *($(TmpList),4) Split-String $($), "\", BindList QueryListSize ListSize $(BindList) set ServiceName = *($(BindList), $(ListSize)) LibraryProcedure Result $(!LIBHANDLE) SetupStrncmp $(ServiceName) "NdisWan" 7 ifint $(Result) == 0 set NdisWanList = >($(NdisWanList), $($)) endif EndForListDo set RasArpLinkageKeyName = $(!NTN_ServiceBase)"\RASARP\Linkage" OpenRegKey $(!REG_H_LOCAL) "" $(RasArpLinkageKeyName) $(!MAXIMUM_ALLOWED) KeyRasArpLinkage ifstr $(KeyRasArpLinkage) != $(KeyNull) SetRegValue $(KeyRasArpLinkage) {Bind, 0, $(!REG_VT_MULTI_SZ), $(NdisWanList)} CloseRegKey $(KeyRasArpLinkage) endif CloseRegKey $(KeyIpLinkage) set Status = STATUS_SUCCESSFUL SetRasArpBindValueFromTcpIPEnd=+ Debug-Output "SetRasArpBindValueFromTcpIP: entry" return $(Status) [UpdateNetGroupDependency] Set Status = STATUS_SUCCESSFUL set KeyNull = "" set fNetbeuiInstalled = $($0) set fTcpIpInstalled = $($1) set fIpxInstalled = $($2) Debug-Output "UpdateNetGroupDependency entry" set ServiceList = {} ifstr(i) $(fNetbeuiInstalled) == TRUE set ServiceList = >($(ServiceList), "nbf") endif ifstr(i) $(fTcpIpInstalled) == TRUE set ServiceList = >($(ServiceList), "tcpip") endif ifstr(i) $(fIpxInstalled) == TRUE set ServiceList = >($(ServiceList), "nwlnkipx") endif ForListDo $(ServiceList) set Service = $($) Debug-Output "OEMNSVRA.INF: Changing group dependency of "$(Service) OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(Service) + $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) set newGroupList = {"+NDIS", "+NDISWAN"} GetRegValue $(KeyService) "DependOnGroup" GrpList ifint $(RegLastError) == 0 Debug-Output "UpdateNetGroupDependency: old group List "*($(GrpList), 4) ForListDo *($(GrpList),4) ifstr(i) $($) != "NDIS" ifstr(i) $($) != "NDISWAN" set newGroup = "+"$($) set newGroupList = >($(newGroupList), $(newGroup)) endif endif EndForListDo endif GetRegValue $(KeyService) "DependOnService" ServiceList ifint $(RegLastError) == 0 Debug-Output "UpdateNetGroupDependency: old service List "*($(ServiceList), 4) ForListDo *($(ServiceList),4) set newGroupList = >($(newGroupList), $($)) EndForListDo endif Debug-Output "OEMNSVRA.INF: UpdateNetGroupDependency: new depend List "$(newGroupList) LibraryProcedure Result, $(!LIBHANDLE), SetupChangeServiceConfig, $(Service) $(!SERVICE_NO_CHANGE), $(!SERVICE_NO_CHANGE), $(!SERVICE_NO_CHANGE), "", "", $(newGroupList), "", "", "" CloseRegKey $(KeyService) else Debug-Output "UpdateNetGroupDependency: failed to open service linkage key"$(Service) endif EndForListDo Debug-Output "UpdateNetGroupDependency exit" return $(Status) [RemoveNetGroupDependency] Set Status = STATUS_SUCCESSFUL set KeyNull = "" set fNetbeuiInstalled = $($0) set fTcpIpInstalled = $($1) set fIpxInstalled = $($2) Debug-Output "UpdateNetGroupDependency entry" set ServiceList = {"nbf", "tcpip", "nwlnkipx"} ForListDo $(ServiceList) set Service = $($) Debug-Output "OEMNSVRA.INF: Changing group dependency of "$(Service) OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\"$(Service) + $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) set DeleteFlag = "" GetRegValue $(KeyService),"DeleteFlag", DeleteFlagInfo set DeleteFlag = *($(DeleteFlagInfo), 4) ifint $(DeleteFlag) != 1 set newGroupList = {} GetRegValue $(KeyService) "DependOnGroup" GrpList ifint $(RegLastError) == 0 Debug-Output "UpdateNetGroupDependency: old List "*($(GrpList), 4) ForListDo *($(GrpList),4) ifstr(i) $($) != "NDISWAN" set newGroup = "+"$($) set newGroupList = >($(newGroupList), $(newGroup)) endif EndForListDo endif GetRegValue $(KeyService) "DependOnService" ServiceList ifint $(RegLastError) == 0 Debug-Output "UpdateNetGroupDependency: old service List "*($(ServiceList), 4) ForListDo *($(ServiceList),4) set newGroupList = >($(newGroupList), $($)) EndForListDo endif Debug-Output "OEMNSVRA.INF: UpdateNetGroupDependency: new depend List "$(newGroupList) LibraryProcedure Result, $(!LIBHANDLE), SetupChangeServiceConfig, $(Service) $(!SERVICE_NO_CHANGE), $(!SERVICE_NO_CHANGE), $(!SERVICE_NO_CHANGE), "", "", $(newGroupList), "", "", "" CloseRegKey $(KeyService) endif else Debug-Output "UpdateNetGroupDependency: failed to open service linkage key"$(Service) endif EndForListDo Debug-Output "UpdateNetGroupDependency exit" return $(Status) [UpdateIPRouterInfo] set EnableRouter = $($0) set KeyNull = "" Debug-Output "UpdateIPRouterInfo entry" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\TCPIP\parameters" $(!MAXIMUM_ALLOWED) KeyIpParams ifstr $(KeyIpParams) != $(KeyNull) SetRegValue $(KeyIpParams) {IPEnableRouter, 0,+ $(!REG_VT_DWORD), $(EnableRouter)} CloseRegKey $(KeyIpParams) endif Debug-Output "UpdateIPRouterInfo exit" return STATUS_SUCCESSFUL [UpdateIPXRouterInfo] set Status = STATUS_FAILED set EnableRouter = $($0) set KeyNull = "" Debug-Output "UpdateIPXRouterInfo entry" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\NWLNKIPX\NetConfig" $(!MAXIMUM_ALLOWED) KeyIpxNetConfig ifstr $(KeyIpxNetConfig) != $(KeyNull) EnumRegKey $(KeyIpxNetConfig) DriverList ForListDo $(DriverList) set DriverName = *($($),1) OpenRegKey $(KeyIpxNetConfig) "" $(DriverName) $(!MAXIMUM_ALLOWED) Driver ifstr $(Driver) == $(KeyNull) Debug-Output "UpdateIPXRouterInfo: could not open key ipx\netconfig\"$(DriverName) CloseRegKey $(KeyIpxNetConfig) return $(Status) endif SetRegValue $(Driver) {EnableWanRouter, 0,+ $(!REG_VT_DWORD), $(EnableRouter)} CloseRegKey $(Driver) EndForListDo CloseRegKey $(KeyIpxNetConfig) set Status = STATUS_SUCCESSFUL else Debug-Output "UpdateIPXRouterInfo: error opening ipx\netconfig key" endif Debug-Output "UpdateIPXRouterInfo exit" return $(Status) [IsNetcardInstalled] Set Status = STATUS_FAILED Set fNetcardInstalled = FALSE Set KeyNull = "" set ProductRASASYMACName = "AsyncMac" set NetworkCardKey = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(!NetworkCardKeyName) $(!MAXIMUM_ALLOWED) NetworkCardKey Ifstr(i) $(NetworkCardKey) != $(KeyNull) set NetcardsList = {} EnumRegKey $(NetworkCardKey) NetcardsList Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "IsNetcardInstalled: EnumRegKey failed." goto IsNetcardInstalledEnd endif ForListDo $(NetcardsList) set KeyName = *($($),1) set Card = $(KeyNull) OpenRegKey $(NetworkCardKey) "" $(KeyName) $(!MAXIMUM_ALLOWED) Card ifstr $(Card) == $(KeyNull) Debug-Output "IsNetcardInstalled: could not open netcard key "$(KeyName) else GetRegValue $(Card), "ProductName" ProductNameInfo Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) Debug-Output "IsNetcardInstalled: ProductName not found." else set CardProductName = *($(ProductNameInfo), 4) Debug-Output "IsNetcardInstalled: ProductName. "$(CardProductName) ifstr(i) $(CardProductName) != $(!ProductNDISWANName) ifstr(i) $(CardProductName) != $(!ProductNDISWANDIALINName) ifstr(i) $(CardProductName) != $(!ProductNDISWANDIALOUTName) ifstr(i) $(CardProductName) != $(!ProductNDISWANDIALINIPName) ifstr(i) $(CardProductName) != $(!ProductNDISWANDIALOUTIPName) ifstr(i) $(CardProductName) != $(!ProductNDISWANDIALINOUTIPXName) ifstr(i) $(CardProductName) != $(ProductRASASYMACName) ifstr(i) $(CardProductName) != $(!ProductPCIMACName) GetRegValue $(Card), "Manufacturer" Manufacturer Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) ifstr(i) *($(Manufacturer), 4) != "Digiboard" Debug-Output "found installed netcard" set fNetcardInstalled = TRUE set Status = STATUS_SUCCESSFUL CloseRegKey $(Card) goto IsNetcardInstalledEnd endif endif endif endif endif endif endif endif endif endif endif CloseRegKey $(Card) endif EndForListDo else Debug-Output "IsNetcardInstalled: failed to open "$(!NetworkCardKeyName) endif IsNetcardInstalledEnd =+ ifstr(i) $(NetworkCardKey) != $(KeyNull) CloseRegKey $(NetworkCardKey) endif Return $(Status) $(fNetcardInstalled) [IsNetworkConfigured] set WkstaKeyName = $(!NTN_ServiceBase)"\LanmanWorkstation" set SrvrKeyName = $(!NTN_ServiceBase)"\LanmanServer" Set KeyNull = "" Set status = STATUS_FAILED Set WkstaConfigured = FALSE Set SrvrConfigured = FALSE Debug-Output "IsNetworkConfigured WkstaKeyName "$(WkstaKeyName) set KeyProduct = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(WkstaKeyName) $(!MAXIMUM_ALLOWED) KeyProduct Ifstr(i) $(KeyProduct) != $(KeyNull) GetRegValue $(KeyProduct),"DeleteFlag", DeleteFlagInfo set DeleteFlag = *($(DeleteFlagInfo), 4) ifint $(DeleteFlag) != 1 set WkstaConfigured = TRUE endif CloseRegKey $(KeyProduct) endif Debug-Output "IsNetworkConfigured SrvrKeyName "$(SrvrKeyName) set KeyProduct = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(SrvrKeyName) $(!MAXIMUM_ALLOWED) KeyProduct Ifstr(i) $(KeyProduct) != $(KeyNull) GetRegValue $(KeyProduct),"DeleteFlag", DeleteFlagInfo set DeleteFlag = *($(DeleteFlagInfo), 4) ifint $(DeleteFlag) != 1 set SrvrConfigured = TRUE endif CloseRegKey $(KeyProduct) endif set status = STATUS_SUCCESSFUL Debug-Output "IsNetworkConfigured exit" Return $(status) $(WkstaConfigured) $(SrvrConfigured) [QueryInstalledProtocols] Debug-Output "QueryInstalledProtocols entry " set NbfKeyName = $(!NTN_ServiceBase)"\Nbf" set TcpIpKeyName = $(!NTN_ServiceBase)"\TcpIp" set IpxKeyName = $(!NTN_ServiceBase)"\NWLNKIPX" set AppleTalkKeyName = $(!NTN_ServiceBase)"\AppleTalk" Set KeyNull = "" Set status = STATUS_FAILED Set NbfInstalled = FALSE Set TcpIpInstalled = FALSE Set IpxInstalled = FALSE Set AppleTalkInstalled = FALSE set KeyService = $(KeyNull) set DeleteFlag = 0 set DeleteFlagInfo = {} OpenRegKey $(!REG_H_LOCAL) "" $(NbfKeyName) $(!MAXIMUM_ALLOWED) KeyService Ifstr(i) $(KeyService) != $(KeyNull) GetRegValue $(KeyService),"DeleteFlag", DeleteFlagInfo set DeleteFlag = *($(DeleteFlagInfo), 4) ifint $(DeleteFlag) != 1 set NbfInstalled = TRUE endif CloseRegKey $(KeyService) endif set KeyService = $(KeyNull) set DeleteFlag = 0 set DeleteFlagInfo = {} OpenRegKey $(!REG_H_LOCAL) "" $(TcpIpKeyName) $(!MAXIMUM_ALLOWED) KeyService Ifstr(i) $(KeyService) != $(KeyNull) GetRegValue $(KeyService),"DeleteFlag", DeleteFlagInfo set DeleteFlag = *($(DeleteFlagInfo), 4) ifint $(DeleteFlag) != 1 set TcpIpInstalled = TRUE endif CloseRegKey $(KeyService) endif set KeyService = $(KeyNull) set DeleteFlag = 0 set DeleteFlagInfo = {} OpenRegKey $(!REG_H_LOCAL) "" $(IpxKeyName) $(!MAXIMUM_ALLOWED) KeyService Ifstr(i) $(KeyService) != $(KeyNull) GetRegValue $(KeyService),"DeleteFlag", DeleteFlagInfo set DeleteFlag = *($(DeleteFlagInfo), 4) ifint $(DeleteFlag) != 1 set IpxInstalled = TRUE endif CloseRegKey $(KeyService) endif set KeyService = $(KeyNull) set DeleteFlag = 0 set DeleteFlagInfo = {} OpenRegKey $(!REG_H_LOCAL) "" $(AppleTalkKeyName) $(!MAXIMUM_ALLOWED) KeyService Ifstr(i) $(KeyService) != $(KeyNull) GetRegValue $(KeyService),"DeleteFlag", DeleteFlagInfo set DeleteFlag = *($(DeleteFlagInfo), 4) ifint $(DeleteFlag) != 1 set AppleTalkInstalled = TRUE endif CloseRegKey $(KeyService) endif set status = STATUS_SUCCESSFUL Debug-Output "QueryInstalledProtocols exit" Return $(status) $(NbfInstalled) $(TcpIpInstalled) $(IpxInstalled) + $(AppleTalkInstalled) [ProtocolInfo] NETBEUI = "OEMNXPNB.INF", "NBF", 1 TCPIP = "OEMNXPTC.INF", "TC", 2 IPX = "OEMNXPIP.INF", "NWLNKIPX", 3 [InstallProtocol] Set Status = STATUS_FAILED Set KeyNull = "" set Protocol = $($0) Debug-Output "OEMNSVRA.INF: Label: InstallProtocol" Set ThisInfName = #(ProtocolInfo, $(Protocol), 1) Set InfOption = #(ProtocolInfo, $(Protocol), 2) Set BbIndex = #(ProtocolInfo, $(Protocol), 3) Debug-Output "OEMNSVRA.INF: Installing "$(ThisInfName) Ifint $(BbIndex) != 0 read-syms Billboard$(BbIndex)$(!STF_LANGUAGE) Shell "subroutn.inf" PushBillboard NETSTATUSDLG $(Status) Set BillboardVisible = 1 Else-ifint $(BillboardVisible) != 0 Shell "subroutn.inf" PopBillboard Set BillboardVisible = 0 Endif set AddCopy = YES set DoCopy = YES set DoConfig = YES set InvokedByRas = YES set SaveNTN_InstallMode = $(!NTN_InstallMode) set SaveSTF_INSTALL_MODE = $(!STF_INSTALL_MODE) set !NTN_InstallMode = install set !STF_INSTALL_MODE = EXPRESS Shell $(ThisInfName) InstallOption $(!STF_LANGUAGE) $(InfOption) $(!STF_SRCDIR) $(AddCopy) $(DoCopy) $(DoConfig) $(InvokedByRas) set !NTN_InstallMode = $(SaveNTN_InstallMode) set !STF_INSTALL_MODE = $(SaveSTF_INSTALL_MODE) Ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "OEMNSVRA.INF: INF "$(ThisInfName)" SHELL ERROR!" Goto InstallProtocolEscape Endif Set InstallProtocolStatus = $($R0) Ifstr(i) $(InstallProtocolStatus) != STATUS_SUCCESSFUL Ifstr(i) $(InstallProtocolStatus) != STATUS_USERCANCEL Debug-Output "OEMNSVRA.INF: INF "$(ThisInfName)" returned "$(InstallProtocolStatus) Goto InstallProtocolEscape Endif Endif InstallProtocolEscape = + set Status = $(InstallProtocolStatus) return $(Status) [UpgradeSelectedProtocols] Debug-Output "UpgradeSelectedProtocols entry." set Status = STATUS_FAILED Set KeyNull = "" set RasKeyName = $(!NTN_SoftwareBase)"\Microsoft\Ras" set RasProtocolName = $(!NTN_SoftwareBase)"\Microsoft\Ras\Protocols" set RasServiceParmName = $(!NTN_ServiceBase)"\Remoteaccess\Parameters" set AsyMacServiceParmName = $(!NTN_ServiceBase)"\AsyncMac\Parameters" set RasManPPPName = $(!NTN_ServiceBase)"\RasMan\PPP" set GtwyEnabled = 1 OpenRegKey $(!REG_H_LOCAL) "" $(RasServiceParmName) $(!MAXIMUM_ALLOWED) KeyParam ifstr $(KeyParam) != $(KeyNull) GetRegValue $(KeyParam), "NetBiosGatewayEnabled", GtwyEnabledList ifint $(RegLastError) == 0 set GtwyEnabled = *($(GtwyEnabledList), 4) endif CloseRegKey $(KeyParam) else Debug-Output "UpgradeSelectedProtocols: error opening RemoteAccess\Parameters key" endif set DialinNBF = 0 set DialinIP = 0 set DialoutNBF = 0 set DialoutIP = 0 set DialinoutIPX = 0 OpenRegKey $(!REG_H_LOCAL) "" $(AsyMacServiceParmName) $(!MAXIMUM_ALLOWED) KeyParam ifstr $(KeyParam) != $(KeyNull) GetRegValue $(KeyParam), "DialinNBF", DialinNBFList ifint $(RegLastError) == 0 set DialinNBF = *($(DialinNBFList), 4) endif GetRegValue $(KeyParam), "DialinIP", DialinIPList ifint $(RegLastError) == 0 set DialinIP = *($(DialinIPList), 4) endif GetRegValue $(KeyParam), "DialoutNBF", DialoutNBFList ifint $(RegLastError) == 0 set DialoutNBF = *($(DialoutNBFList), 4) endif GetRegValue $(KeyParam), "DialoutIP", DialoutIPList ifint $(RegLastError) == 0 set DialoutIP = *($(DialoutIPList), 4) endif GetRegValue $(KeyParam), "DialinoutIPX", DialinoutIPXList ifint $(RegLastError) == 0 set DialinoutIPX = *($(DialinoutIPXList), 4) endif CloseRegKey $(KeyParam) else Debug-Output "UpgradeSelectedProtocols: error opening AsyncMac\Parameters key" endif set fDownLevel = FALSE OpenRegKey $(!REG_H_LOCAL) "" $(RasProtocolName) $(!MAXIMUM_ALLOWED) RasProtocolKey ifstr $(RasProtocolKey) == $(KeyNull) set fDownLevel = TRUE OpenRegKey $(!REG_H_LOCAL) "" $(RasKeyName) $(!MAXIMUM_ALLOWED) RasKey CreateRegKey $(RasKey) {"Protocols",0,GenericClass} "" $(!MAXIMUM_ALLOWED) "" RasProtocolKey OpenRegKey $(RasKey) "" "Protocols" $(!MAXIMUM_ALLOWED) RasProtocolKey CloseRegKey $(RasKey) endif ifstr $(RasProtocolKey) != $(KeyNull) set MultilinkList = {} GetRegValue $(RasProtocolKey), "Multilink", MultiLinkList ifint $(RegLastError) != 0 Debug-Output "Upgradeselectedprotocols: defaulting Multilink to 0" SetRegValue $(RasProtocolKey) {Multilink, 0, $(!REG_VT_DWORD), 0} endif set NetbeuiSelected = 0 set NetbeuiAllowed = 0 set TcpIpSelected = 0 set TcpIpAllowed = 0 set IpxSelected = 0 set IpxAllowed = 0 ifint $(DialoutNBF) != 0 set NetbeuiSelected = 1 endif ifint $(GtwyEnabled) == 1 ifint $(DialinNBF) != 0 set NetbeuiAllowed = 1 endif else ifint $(DialoutNBF) != 0 set NetbeuiAllowed = 1 endif endif ifstr(i) $(fDownLevel) != TRUE ifint $(DialoutIP) != 0 set TcpIpSelected = 1 endif ifint $(DialinIP) != 0 set TcpIpAllowed = 1 endif ifint $(DialinoutIPX) != 0 set IpxSelected = 1 set IpxAllowed = 1 endif endif set ItemList = {} GetRegValue $(RasProtocolKey), "fNetbeuiSelected", ItemList ifint $(RegLastError) != 0 SetRegValue $(RasProtocolKey) {fNetbeuiSelected, 0,+ $(!REG_VT_DWORD),$(NetbeuiSelected)} endif GetRegValue $(RasProtocolKey), "fTcpIpSelected", ItemList ifint $(RegLastError) != 0 SetRegValue $(RasProtocolKey) {fTcpIpSelected, 0,+ $(!REG_VT_DWORD),$(TcpIpSelected)} endif GetRegValue $(RasProtocolKey), "fIpxSelected", ItemList ifint $(RegLastError) != 0 SetRegValue $(RasProtocolKey) {fIpxSelected, 0,+ $(!REG_VT_DWORD),$(IpxSelected)} endif GetRegValue $(RasProtocolKey), "fNetbeuiAllowed", ItemList ifint $(RegLastError) != 0 SetRegValue $(RasProtocolKey) {fNetbeuiAllowed, 0,+ $(!REG_VT_DWORD),$(NetbeuiAllowed)} endif GetRegValue $(RasProtocolKey), "fTcpIpAllowed", ItemList ifint $(RegLastError) != 0 SetRegValue $(RasProtocolKey) {fTcpIpAllowed, 0,+ $(!REG_VT_DWORD),$(TcpIpAllowed)} endif GetRegValue $(RasProtocolKey), "fIpxAllowed", ItemList ifint $(RegLastError) != 0 SetRegValue $(RasProtocolKey) {fIpxAllowed, 0,+ $(!REG_VT_DWORD),$(IpxAllowed)} endif OpenRegKey $(RasProtocolKey) "" "NBF" $(!MAXIMUM_ALLOWED) NbfKey ifstr $(NbfKey) == $(KeyNull) CreateRegKey $(RasProtocolKey) {"NBF",0,GenericClass} "" $(!MAXIMUM_ALLOWED) "" NbfKey SetRegValue $(NbfKey) {NetBiosGatewayEnabled, 0,+ $(!REG_VT_DWORD),$(GtwyEnabled)} CloseRegKey $(NbfKey) endif ifstr(i) $(fDownLevel) != TRUE OpenRegKey $(RasProtocolKey) "" "IP" $(!MAXIMUM_ALLOWED) IpKey ifstr $(IpKey) != $(KeyNull) GetRegValue $(IpKey), "AllowNetworkAccess", ItemList ifint $(RegLastError) != 0 SetRegValue $(IpKey) {AllowNetworkAccess, 0,+ $(!REG_VT_DWORD),$(GtwyEnabled)} endif CloseRegKey $(IpKey) endif OpenRegKey $(RasProtocolKey) "" "IPX" $(!MAXIMUM_ALLOWED) IpxKey ifstr $(IpxKey) != $(KeyNull) GetRegValue $(IpxKey), "AllowNetworkAccess", ItemList ifint $(RegLastError) != 0 SetRegValue $(IpxKey) {AllowNetworkAccess, 0,+ $(!REG_VT_DWORD),$(GtwyEnabled)} endif CloseRegKey $(IpxKey) endif endif set ForceEncryptedPassword = 2 set ForceEncryptedData = 0 ifstr(i) $(fDownLevel) != TRUE GetRegValue $(RasProtocolKey), "ForceEncryptedData", DataList ifint $(RegLastError) != 0 GetRegValue $(RasProtocolKey), "ForceEncryptedPassword", PasswdList ifint $(RegLastError) == 0 set ForceEncryptedPassword = *($(PasswdList), 4) ifint $(ForceEncryptedPassword) == 1 set ForceEncryptedPassword = 2 endif endif else goto UpgradeSelectedProtocolsEnd endif endif SetRegValue $(RasProtocolKey) {ForceEncryptedPassword, 0,+ $(!REG_VT_DWORD), $(ForceEncryptedPassword)} SetRegValue $(RasProtocolKey) {ForceEncryptedData, 0,+ $(!REG_VT_DWORD), $(ForceEncryptedData)} UpgradeSelectedProtocolsEnd =+ CloseRegKey $(RasProtocolKey) set Status = STATUS_SUCCESSFUL else Debug-Output "UpgradeSelectedProtocols: error opening Ras\protocols key" endif Debug-Output "UpgradeSelectedProtocols exit." return $(Status) [SaveSelectedProtocols] Debug-Output "SaveSelectedProtocols entry." set Status = STATUS_FAILED Set KeyNull = "" ifstr(i) $($0) == TRUE set NetbeuiSelected = 1 else set NetbeuiSelected = 0 endif ifstr(i) $($1) == TRUE set TcpIpSelected = 1 else set TcpIpSelected = 0 endif ifstr(i) $($2) == TRUE set IpxSelected = 1 else set IpxSelected = 0 endif ifstr(i) $($3) == TRUE set NetbeuiAllowed = 1 else set NetbeuiAllowed = 0 endif ifstr(i) $($4) == TRUE set TcpIpAllowed = 1 else set TcpIpAllowed = 0 endif ifstr(i) $($5) == TRUE set IpxAllowed = 1 else set IpxAllowed = 0 endif set dwRouterType = $($6) set RasKeyName = $(!NTN_SoftwareBase)"\Microsoft\Ras" set RasProtocolName = $(!NTN_SoftwareBase)"\Microsoft\Ras\Protocols" OpenRegKey $(!REG_H_LOCAL) "" $(RasProtocolName) $(!MAXIMUM_ALLOWED) RasProtocolKey ifstr $(RasProtocolKey) == $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(RasKeyName) $(!MAXIMUM_ALLOWED) RasKey CreateRegKey $(RasKey) {"Protocols",0,GenericClass} "" $(!MAXIMUM_ALLOWED) "" RasProtocolKey OpenRegKey $(RasKey) "" "Protocols" $(!MAXIMUM_ALLOWED) RasProtocolKey CloseRegKey $(RasKey) endif ifstr $(RasProtocolKey) != $(KeyNull) SetRegValue $(RasProtocolKey) {fNetbeuiSelected, 0,+ $(!REG_VT_DWORD),$(NetbeuiSelected)} SetRegValue $(RasProtocolKey) {fTcpIpSelected, 0,+ $(!REG_VT_DWORD),$(TcpIpSelected)} SetRegValue $(RasProtocolKey) {fIpxSelected, 0,+ $(!REG_VT_DWORD),$(IpxSelected)} SetRegValue $(RasProtocolKey) {fNetbeuiAllowed, 0,+ $(!REG_VT_DWORD),$(NetbeuiAllowed)} SetRegValue $(RasProtocolKey) {fTcpIpAllowed, 0,+ $(!REG_VT_DWORD),$(TcpIpAllowed)} SetRegValue $(RasProtocolKey) {fIpxAllowed, 0,+ $(!REG_VT_DWORD),$(IpxAllowed)} SetRegValue $(RasProtocolKey) {RouterType, 0,+ $(!REG_VT_DWORD),$(dwRouterType)} CloseRegKey $(RasProtocolKey) set Status = STATUS_SUCCESSFUL else Debug-Output "error opening Ras\protocols key" endif Debug-Output "SaveSelectedProtocols exit." return $(Status) [QuerySelectedProtocols] Debug-Output "QuerySelectedProtocols: entry" set Status = STATUS_FAILED Set KeyNull = "" set fNetbeuiSelected = FALSE set fTcpIpSelected = FALSE set fIpxSelected = FALSE set fNetbeuiAllowed = FALSE set fTcpIpAllowed = FALSE set fIpxAllowed = FALSE set dwRouterType = 0 set NetbeuiSelected = {} set TcpIpSelected = {} set IpxSelected = {} set NetbeuiAllowed = {} set TcpIpAllowed = {} set IpxAllowed = {} set RouterType = {} set RasKeyName = $(!NTN_SoftwareBase)"\Microsoft\Ras\Protocols" OpenRegKey $(!REG_H_LOCAL) "" $(RasKeyName) $(!MAXIMUM_ALLOWED) RasKey ifstr $(RasKey) != $(KeyNull) GetRegValue $(RasKey), "fNetbeuiSelected", NetbeuiSelected ifint *($(NetbeuiSelected), 4) == 1 set fNetbeuiSelected = TRUE else set fNetbeuiSelected = FALSE endif GetRegValue $(RasKey), "fTcpIpSelected", TcpIpSelected ifint *($(TcpIpSelected), 4) == 1 set fTcpIpSelected = TRUE else set fTcpIpSelected = FALSE endif GetRegValue $(RasKey), "fIpxSelected", IpxSelected ifint *($(IpxSelected), 4) == 1 set fIpxSelected = TRUE else set fIpxSelected = FALSE endif GetRegValue $(RasKey), "fNetbeuiAllowed", NetbeuiAllowed ifint *($(NetbeuiAllowed), 4) == 1 set fNetbeuiAllowed = TRUE else set fNetbeuiAllowed = FALSE endif GetRegValue $(RasKey), "fTcpIpAllowed", TcpIpAllowed ifint *($(TcpIpAllowed), 4) == 1 set fTcpIpAllowed = TRUE else set fTcpIpAllowed = FALSE endif GetRegValue $(RasKey), "fIpxAllowed", IpxAllowed ifint *($(IpxAllowed), 4) == 1 set fIpxAllowed = TRUE else set fIpxAllowed = FALSE endif GetRegValue $(RasKey), "RouterType", RouterType set dwRouterType = *($(RouterType), 4) CloseRegKey $(RasKey) set Status = STATUS_SUCCESSFUL else Debug-Output "error opening Ras\protocols key" endif Debug-Output "QuerySelectedProtocols: NbfSelected="$(fNetbeuiSelected)+ " TcpSelected="$(fTcpIpSelected)" IpxSelected="$(fIpxSelected)+ " NbfAllowed="$(fNetbeuiAllowed)" TcpAllowed="$(fTcpIpAllowed)+ " IpxAllowed="$(fIpxAllowed)" dwRouterType="$(dwRouterType) Debug-Output "QuerySelectedProtocols: exit" return $(Status) $(fNetbeuiSelected) $(fTcpIpSelected) $(fIpxSelected) + $(fNetbeuiAllowed) $(fTcpIpAllowed) $(fIpxAllowed) $(dwRouterType) [UpdateSelectedProtocols] Debug-Output "UpdateSelectedProtocols: entry" set Status = STATUS_FAILED set fNetbeuiChosen = FALSE set fTcpIpChosen = FALSE set fIpxChosen = FALSE set dwRouterType = 0 Shell "" QuerySelectedProtocols ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling QuerySelectedProtocols." goto UpdateSelectedProtocolsEnd endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by QuerySelectedProtocols." goto UpdateSelectedProtocolsEnd endif set fNetbeuiSelected = $($R1) set fTcpIpSelected = $($R2) set fIpxSelected = $($R3) set fNetbeuiAllowed = $($R4) set fTcpIpAllowed = $($R5) set fIpxAllowed = $($R6) set dwRouterType = $($R7) Debug-Output "UpdateSelectedProtocols: Selected protocols NBF IP IPX "$(fNetbeuiSelected)" "$(fTcpIpSelected)" "$(fIpxSelected) shell "" QueryInstalledProtocols ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling QueryInstalledProtocols." goto UpdateSelectedProtocolsEnd endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by QueryInstalledProtocols." goto UpdateSelectedProtocolsEnd endif set fNetbeuiInstalled = $($R1) set fTcpIpInstalled = $($R2) set fIpxInstalled = $($R3) Debug-Output "UpdateSelectedProtocols: Installed Protocols NBF IP IPX "$(fNetbeuiInstalled)" "$(fTcpIpInstalled)" "$(fIpxInstalled) set fNetbeuiSelectedNew = $(fNetbeuiSelected) set fTcpIpSelectedNew = $(fTcpIpSelected) set fIpxSelectedNew = $(fIpxSelected) set fNetbeuiAllowedNew = $(fNetbeuiAllowed) set fTcpIpAllowedNew = $(fTcpIpAllowed) set fIpxAllowedNew = $(fIpxAllowed) ifstr(i) $(fNetbeuiSelectedNew) == TRUE set fNetbeuiChosen = TRUE else set fNetbeuiChosen = $(fNetbeuiAllowedNew) endif ifstr(i) $(fTcpIpSelectedNew) == TRUE set fTcpIpChosen = TRUE else set fTcpIpChosen = $(fTcpIpAllowedNew) endif ifstr(i) $(fIpxSelectedNew) == TRUE set fIpxChosen = TRUE else set fIpxChosen = $(fIpxAllowedNew) endif ifstr(i) $(fNetbeuiInstalled) == FALSE set fNetbeuiSelectedNew = FALSE set fNetbeuiAllowedNew = FALSE endif ifstr(i) $(fTcpIpInstalled) == FALSE set fTcpIpSelectedNew = FALSE set fTcpIpAllowedNew = FALSE endif ifstr(i) $(fIpxInstalled) == FALSE set fIpxSelectedNew = FALSE set fIpxAllowedNew = FALSE endif ifstr(i) $(fNetbeuiSelectedNew) == $(fNetbeuiSelected) ifstr(i) $(fTcpIpSelectedNew) == $(fTcpIpSelected) ifstr(i) $(fIpxSelectedNew) == $(fIpxSelected) ifstr(i) $(fNetbeuiAllowedNew) == $(fNetbeuiAllowed) ifstr(i) $(fTcpIpAllowedNew) == $(fTcpIpAllowed) ifstr(i) $(fIpxAllowedNew) == $(fIpxAllowed) set Status = STATUS_SUCCESSFUL Debug-Output "UpdateSelectedProtocols: Nothing changed" goto UpdateSelectedProtocolsEnd endif endif endif endif endif endif Shell "" SaveSelectedProtocols $(fNetbeuiSelectedNew) $(fTcpIpSelectedNew) + $(fIpxSelectedNew) $(fNetbeuiAllowedNew) + $(fTcpIpAllowedNew) $(fIpxAllowedNew) $(dwRouterType) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling SaveSelectedProtocols." goto UpdateSelectedProtocolsEnd endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by SaveSelectedProtocols." goto UpdateSelectedProtocolsEnd endif ifstr(i) $(fNetbeuiSelectedNew) == TRUE set fNetbeuiChosen = TRUE else set fNetbeuiChosen = $(fNetbeuiAllowedNew) endif ifstr(i) $(fTcpIpSelectedNew) == TRUE set fTcpIpChosen = TRUE else set fTcpIpChosen = $(fTcpIpAllowedNew) endif ifstr(i) $(fIpxSelectedNew) == TRUE set fIpxChosen = TRUE else set fIpxChosen = $(fIpxAllowedNew) endif Shell "" UpdateNetCardInfo $(fNetbeuiChosen) $(fTcpIpChosen) + $(fIpxChosen) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling UpdateNetCardInfo." goto UpdateSelectedProtocolsEnd endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by UpdateNetCardInfo." goto UpdateSelectedProtocolsEnd endif set Status = STATUS_SUCCESSFUL ifstr(i) $(fNetbeuiAllowedNew) == FALSE Debug-Output "UpdateSelectedProtocols: Removing RemoteAccess NBF dependency" OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_ServiceBase)"\RemoteAccess\Parameters" $(!MAXIMUM_ALLOWED) KeyParams ifstr $(KeyParams) != "" SetRegValue $(KeyParams) {NetBiosGatewayEnabled, 0,+ $(!REG_VT_DWORD), 0 } CloseRegKey $(KeyParams) endif Shell "" RemoveServiceDependency "RemoteAccess" "NBF" endif ifstr(i) $(fTcpIpChosen) == FALSE Debug-Output "UpdateSelectedProtocols: Removing RasArp service" shell "" RemoveRasArpService endif ifstr(i) $(fIpxAllowedNew) == FALSE Debug-Output "UpdateSelectedProtocols: Removing IPX router and SAP" shell "" RemoveNwlnkRipService shell "" RemoveIsnSapService Shell "" RemoveServiceDependency "RemoteAccess" "NWLNKIPX" ifstr(i) $($R0) == STATUS_FAILED Debug-Output "UpdateSelectedProtocols: error removing service dependency of RemoteAccess on NWLNKIPX" endif endif UpdateSelectedProtocolsEnd = + Debug-Output "UpdateSelectedProtocols: exit" return $(Status) $(fNetbeuiChosen) $(fTcpIpChosen) $(fIpxChosen) $(dwRouterType) [UpgradeIsdnInfo] Debug-Output "UpgradeIsdnInfo entry." set Status = STATUS_FAILED Set KeyNull = "" set RasKeyName = $(!NTN_SoftwareBase)"\Microsoft\Ras" set TapiName = $(!NTN_SoftwareBase)"\Microsoft\Ras\Tapi Devices" set RasIsdnName = $(!NTN_SoftwareBase)"\Microsoft\Ras\MEDIA\ISDN" set RasManParamName = $(!NTN_ServiceBase)"\RasMan\Parameters" set PcimacName = "HARDWARE\DEVICEMAP\TAPI DEVICES\PCIMAC" set KeyIsdn = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(RasIsdnName) $(!MAXIMUM_ALLOWED) KeyIsdn ifstr $(KeyIsdn) != $(KeyNull) EnumRegKey $(KeyIsdn) PortList ifint $(RegLastError) != 0 Debug-Output "UpgradeIsdnInfo: error enumerating MEDIAS\ISDN key." CloseRegKey $(KeyIsdn) set Status = STATUS_SUCCESSFUL goto UpgradeIsdnInfoEnd endif QueryListSize IsdnPorts $(PortList) ifint $(IsdnPorts) == 0 set Status = STATUS_SUCCESSFUL CloseRegKey $(KeyIsdn) goto UpgradeIsdnInfoEnd endif set MediaType = "ISDN" set Addresses = {} OpenRegKey $(!REG_H_LOCAL) "" $(PcimacName) + $(!MAXIMUM_ALLOWED) KeyPcimac ifstr $(KeyPcimac) != $(KeyNull) GetRegValue $(KeyPcimac), "Address", AddressList ifint $(RegLastError) == 0 set Addresses = *($(AddressList), 4) endif GetRegValue $(KeyPcimac), "Media Type", MediaValue ifint $(RegLastError) == 0 set MediaType = *($(MediaValue), 4) endif CloseRegKey $(KeyPcimac) else Debug-Output "UpgradeIsdnInfo: error opening DEVICEMAP\TAPI DEVICES\PCIMAC key." CloseRegKey $(KeyIsdn) goto UpgradeIsdnInfoEnd endif set AddressList = {} set NameList = {} set UsageList = {} set index = 1 forlistdo $(PortList) set Address = *($(Addresses), $(index)) set-add index = $(index) , 1 set AddressList = >($(AddressList), $(Address)) set PortName = *($($), 1) set NameList = >($(NameList), Pcimac$(PortName)) OpenRegKey $(KeyIsdn) "" $(PortName) $(!MAXIMUM_ALLOWED) KeyPort ifstr $(KeyPort) != $(KeyNull) GetRegValue $(KeyPcimac), "Usage", UsageValue ifint $(RegLastError) == 0 set Usage = *($(UsageValue), 4) set UsageList = >($(UsageList), $(Usage)) else Debug-Output "UpgradeIsdnInfo: error reading usage "$(PortName) set UsageList = >($(UsageList), "Client") endif CloseRegKey $(KeyPort) else Debug-Output "UpgradeIsdnInfo: error opening key "$(PortName) set UsageList = >($(UsageList), "Client") endif endforlistdo set KeyTapi = $(KeyNull) CreateRegKey $(!REG_H_LOCAL) + {$(TapiName),$(NoTitle),GenericClass} + "" $(!MAXIMUM_ALLOWED) "" KeyTapi ifstr $(KeyTapi) != $(KeyNull) CreateRegKey $(KeyTapi) + {"Pcimac" ,$(NoTitle),GenericClass} + "" $(!MAXIMUM_ALLOWED) "" KeyPcimac ifstr $(KeyPcimac) != $(KeyNull) Debug-Output "UpgradeIsdnInfo: MediaType "$(MediaType) Debug-Output "UpgradeIsdnInfo: Addresses "$(AddressList) Debug-Output "UpgradeIsdnInfo: Names "$(NameList) Debug-Output "UpgradeIsdnInfo: Usage "$(UsageList) SetRegValue $(KeyPcimac) {"Media Type", 0, + $(!REG_VT_SZ),$(MediaType)} SetRegValue $(KeyPcimac) {"Address", 0, + $(!REG_VT_MULTI_SZ),$(AddressList)} SetRegValue $(KeyPcimac) {"Friendly Name", 0, + $(!REG_VT_MULTI_SZ),$(NameList)} SetRegValue $(KeyPcimac) {"Usage", 0, + $(!REG_VT_MULTI_SZ),$(UsageList)} CloseRegKey $(KeyPcimac) else Debug-Output "UpgradeIsdnInfo: error creating RAS\TAPI DEVICES\Pcimac key" endif else Debug-Output "UpgradeIsdnInfo: error creating RAS\TAPI DEVICES key" endif CloseRegKey $(KeyIsdn) OpenRegKey $(!REG_H_LOCAL) "" $(RasKeyName) + $(!MAXIMUM_ALLOWED) KeyRas ifstr $(KeyRas) != $(KeyNull) DeleteRegTree $(KeyRas) "Media" CloseRegKey $(KeyRas) endif set KeyRasman = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(RasManParamName) + $(!MAXIMUM_ALLOWED) KeyRasman ifstr $(KeyRasman) != $(KeyNull) GetRegValue $(KeyRasman), "Medias", MediaList ifint $(RegLastError) == 0 set Medias = *($(MediaList), 4) else Debug-Output "UpgradeIsdnInfo: error reading Medias value " endif set NewMedias = {} forlistdo $(Medias) ifstr(i) $($) != "ISDN" set NewMedias = >($(NewMedias), $($)) endif endforlistdo set NewMedias = >($(NewMedias), "rastapi") Debug-Output "UpgradeIsdnInfo: NewMedias "$(NewMedias) SetRegValue $(KeyRasman) {"Medias", 0, + $(!REG_VT_MULTI_SZ),$(NewMedias)} CloseRegKey $(KeyRasman) else Debug-Output "UpgradeIsdnInfo: error opening Services\Rasman\Parameters key" goto UpgradeIsdnInfoEnd endif set Status = STATUS_SUCCESSFUL else set Status = STATUS_SUCCESSFUL endif UpgradeIsdnInfoEnd = + Debug-Output "UpgradeIsdnInfo exit." return $(Status) [UpdateNetCardInfo] Debug-Output "UpdateNetCardInfo: entry" set Status = STATUS_FAILED Set KeyNull = "" set fNetbeuiChosen = $($0) set fTcpIpChosen = $($1) set fIpxChosen = $($2) set RasAsyMacParamKeyName = $(!NTN_ServiceBase)"\AsyncMac\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(!NetworkCardKeyName) $(!MAXIMUM_ALLOWED) KeyNetcards ifstr $(KeyNetcards) == $(KeyNull) Debug-Output "UpdateNetCardInfo: could not open Netcards key" goto UpdateNetCardInfoEnd endif EnumRegKey $(KeyNetcards) NetcardsList set RemoveList = {} ForListDo $(NetcardsList) set KeyName = *($($),1) OpenRegKey $(KeyNetcards) "" $(KeyName) $(!MAXIMUM_ALLOWED) Card ifstr $(Card) == $(KeyNull) Debug-Output "OEMNSVRA.INF: could not open netcard key" CloseRegKey $(KeyNetcards) goto UpdateNetCardInfoEnd endif GetRegValue $(Card), "ProductName" ProductNameInfo set CardProductName = *($(ProductNameInfo), 4) ifstr(i) $(fNetbeuiChosen) == FALSE ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINName) set RemoveList = >($(RemoveList), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALOUTName) set RemoveList = >($(RemoveList), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) endif endif ifstr(i) $(fTcpIpChosen) == FALSE ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINIPName) set RemoveList = >($(RemoveList), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) else-ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALOUTIPName) set RemoveList = >($(RemoveList), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) endif endif ifstr(i) $(fIpxChosen) == FALSE ifstr(i) $(CardProductName) == $(!ProductNDISWANDIALINOUTIPXName) set RemoveList = >($(RemoveList), + {$(!ProductNDISWANName),+ $(!NetworkCardKeyName)"\"$(KeyName)}) endif endif CloseRegKey $(Card) EndForListDo CloseRegKey $(KeyNetcards) QueryListSize NetCards $(RemoveList) ifint $(NetCards) != 0 ForListDo $(RemoveList) debug-output "Removing hardware component: "$($) Shell "utility.inf", RemoveHardwareComponent, + $(!Manufacturer), *($($),1), *($($),2) EndForListDo endif OpenRegKey $(!REG_H_LOCAL) "" $(RasAsyMacParamKeyName) $(!MAXIMUM_ALLOWED) KeyMacParams ifstr $(KeyMacParams) == $(KeyNull) Debug-Output "UpdateNetCardInfo: could not open AsyncMac Params key" goto UpdateNetCardInfoEnd endif set NewValueList = {} ifstr(i) $(fNetbeuiChosen) == FALSE set NewValueList = >($(NewValueList), + {DialinNBF, $(NoTitle), $(!REG_VT_DWORD), 0}) set NewValueList = >($(NewValueList), + {DialoutNBF, $(NoTitle), $(!REG_VT_DWORD), 0}) endif ifstr(i) $(fTcpIpChosen) == FALSE set NewValueList = >($(NewValueList), + {DialinIP, $(NoTitle), $(!REG_VT_DWORD), 0 }) set NewValueList = >($(NewValueList), + {DialoutIP, $(NoTitle), $(!REG_VT_DWORD), 0 }) endif ifstr(i) $(fIpxChosen) == FALSE set NewValueList = >($(NewValueList), + {DialinoutIPX, $(NoTitle), $(!REG_VT_DWORD), 0}) endif Shell "utility.inf", AddValueList, $(KeyMacParams), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "UpdateNetCardInfo:AddValueList bombed out" goto UpdateNetCardInfoEnd endif set RegistryErrorIndex = $($R0) CloseRegKey $(KeyMacParams) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" goto UpdateNetCardInfoEnd endif set Status = STATUS_SUCCESSFUL UpdateNetCardInfoEnd =+ Debug-Output "UpdateNetcardInfo: Exit" return $(Status) [UpdateNdisWanInfo] Debug-Output "UpdateNdisWanNetInfo: entry" set Status = STATUS_FAILED Set KeyNull = "" set NdisWanName = $(!NTN_SoftwareBase)"\Microsoft\NdisWan\CurrentVersion" set NdisWanRulesName = $(!NTN_SoftwareBase)"\Microsoft\NdisWan\CurrentVersion\NetRules" set NdisWanSvcName = $(!NTN_ServiceBase)"\NdisWan" set RasManLinkageName = $(!NTN_ServiceBase)"\RasMan\Linkage" OpenRegKey $(!REG_H_LOCAL) "" $(NdisWanName) $(!MAXIMUM_ALLOWED) KeyNdisWan ifstr $(KeyNdisWan) != $(KeyNull) SetRegValue $(KeyNdisWan) {Description, 0, + $(!REG_VT_SZ),$(!ProductNDISWANDescription)} SetRegValue $(KeyNdisWan) {PathName, 0, + $(!REG_VT_SZ),$(!ProductNDISWANImagePath)} SetRegValue $(KeyNdisWan) {ServiceName, 0, + $(!REG_VT_SZ),$(!ProductNDISWANName)} SetRegValue $(KeyNdisWan) {Title, 0, + $(!REG_VT_SZ),$(!ProductNDISWANTitle)} CloseRegKey $(KeyNdisWan) else Debug-Output "UpdateNdisWanInfo: could not open NdisWan key" endif OpenRegKey $(!REG_H_LOCAL) "" $(NdisWanRulesName) $(!MAXIMUM_ALLOWED) KeyRules ifstr $(KeyRules) != $(KeyNull) SetRegValue $(KeyRules) {bindable, 0, + $(!REG_VT_MULTI_SZ),$(!NetRuleNDISWANBindable)} SetRegValue $(KeyRules) {bindform, 0, + $(!REG_VT_SZ),$(!NetRuleNDISWANBindForm)} SetRegValue $(KeyRules) {class, 0, + $(!REG_VT_MULTI_SZ),$(!NetRuleNDISWANClass)} SetRegValue $(KeyRules) {type, 0, + $(!REG_VT_SZ),$(!NetRuleNDISWANType)} SetRegValue $(KeyRules) {InfOption, 0, + $(!REG_VT_SZ), "RAS"} CloseRegKey $(KeyRules) else Debug-Output "UpdateNdisWanInfo: could not open NdisWan NetRules key" endif OpenRegKey $(!REG_H_LOCAL) "" $(NdisWanSvcName) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) SetRegValue $(KeyService) {DisplayName, 0, + $(!REG_VT_SZ),$(!ProductNDISWANDisplayName)} SetRegValue $(KeyService) {ImagePath, 0, + $(!REG_VT_EXPAND_SZ),$(!ProductNDISWANImagePath)} SetRegValue $(KeyService) {Start, 0, $(!REG_VT_DWORD),2} SetRegValue $(KeyService) {Group, 0, $(!REG_VT_SZ), "NDISWAN"} DeleteRegValue $(KeyService) "DependOnService" DeleteRegValue $(KeyService) "DependOnGroup" OpenRegKey $(KeyService) "" "Linkage" $(!MAXIMUM_ALLOWED) KeyLinkage ifstr $(KeyLinkage) != $(KeyNull) DeleteRegValue $(KeyLinkage) "OtherDependencies" CloseRegKey $(KeyLinkage) endif CloseRegKey $(KeyService) else Debug-Output "UpdateNdisWanInfo: could not open NdisWan services key" endif Shell "" RemoveServiceDependency "RasMan" "RasHub" set Status = STATUS_SUCCESSFUL UpdateNdisWanInfoEnd =+ Debug-Output "UpdateNdisWanInfo: Exit" return $(Status) [UpdateAsyncMacNetRules] Debug-Output "UpdateAsyncMacNetRules: entry" set Status = STATUS_FAILED Set KeyNull = "" set AsyncMacRulesName = $(!NTN_SoftwareBase)"\Microsoft\AsyncMac\CurrentVersion\NetRules" OpenRegKey $(!REG_H_LOCAL) "" $(AsyncMacRulesName) $(!MAXIMUM_ALLOWED) KeyRules ifstr $(KeyRules) != $(KeyNull) set Status = STATUS_SUCCESSFUL SetRegValue $(KeyRules) {bindable, 0, + $(!REG_VT_MULTI_SZ),$(!NetRuleRASASYMACBindable)} CloseRegKey $(KeyRules) else Debug-Output "UpdateAsyncMacNetRules: could not open NdisWan NetRules key" endif Debug-Output "UpdateAsyncMacNetRules: Exit" return $(Status) [UpdateAsyncMacParameters] Debug-Output "UpdateAsyncMacParameters: entry" set Status = STATUS_SUCCESSFUL Set KeyNull = "" set RasAsyMacParamKeyName = $(!NTN_ServiceBase)"\AsyncMac\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(RasAsyMacParamKeyName) $(!MAXIMUM_ALLOWED) KeyMacParams ifstr $(KeyMacParams) != $(KeyNull) GetRegValue $(KeyMacParams), "DialinNBF" DialinNBFInfo Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) GetRegValue $(KeyMacParams), "Dialin" DialinNBFInfo set PrevNumDialinNBF = *($(DialinNBFInfo), 4) SetRegValue $(KeyMacParams) {DialinNBF, 0, + $(!REG_VT_DWORD),$(PrevNumDialinNBF)} Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "UpdateAsyncMacParameters: deleting dialin key" DeleteRegValue $(KeyMacParams) "Dialin" endif endif GetRegValue $(KeyMacParams), "DialoutNBF" DialoutNBFInfo Ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) GetRegValue $(KeyMacParams), "Dialout" DialoutNBFInfo set PrevNumDialoutNBF = *($(DialoutNBFInfo), 4) SetRegValue $(KeyMacParams) {DialoutNBF, 0, + $(!REG_VT_DWORD),$(PrevNumDialoutNBF)} Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) Debug-Output "UpdateAsyncMacParameters: deleting dialout key" DeleteRegValue $(KeyMacParams) "Dialout" endif endif CloseRegKey $(KeyMacParams) else Debug-Output "OEMNSVRA.INF: could not open AsyncMac Params key" endif Debug-Output "UpdateAsyncMacParameters: Exit" return $(Status) [UpdateAsyncMacStartType] Debug-Output "UpdateAsyncMacStartType: entry" set Status = STATUS_SUCCESSFUL Set KeyNull = "" set RasAsyMacKeyName = $(!NTN_ServiceBase)"\AsyncMac" OpenRegKey $(!REG_H_LOCAL) "" $(RasAsyMacKeyName) $(!MAXIMUM_ALLOWED) KeyMac ifstr $(KeyMac) != $(KeyNull) GetRegValue $(KeyMac), "Start" StartValue Ifint $(RegLastError) == $(!REG_ERROR_SUCCESS) set Start = *($(StartValue), 4) ifint $(Start) == 3 set Start = 2 SetRegValue $(KeyMac) {Start, 0, $(!REG_VT_DWORD), $(Start)} endif endif CloseRegKey $(KeyMac) else Debug-Output "OEMNSVRA.INF: could not open AsyncMac key" endif Debug-Output "UpdateAsyncMacStartType: Exit" return $(Status) [UpdatePerfmonInfo] Debug-Output "UpdatePerfmonInfo: entry" set Status = STATUS_FAILED Set KeyNull = "" set RemoteAccessService = $(!NTN_ServiceBase)"\RemoteAccess" OpenRegKey $(!REG_H_LOCAL) "" $(RemoteAccessService) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) Shell "" UpdatePerfmonInfoHelper $(KeyService) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "error shelling UpdatePerfmonInfoHelper." goto UpdatePerfmonInfoEnd endif Ifstr(i) $($R0) != STATUS_SUCCESSFUL Debug-Output "error returned by UpdatePerfmonInfo." goto UpdatePerfmonInfoEnd endif CloseRegKey $(KeyService) set Status = STATUS_SUCCESSFUL else Debug-Output "UpdatePerfmonInfo: error opening RemoteAccess service key" endif UpdatePerfmonInfoEnd =+ Debug-Output "UpdatePerfmonInfo: Exit" return $(Status) [UpdatePerfmonInfoHelper] Debug-Output "UpdatePerfmonInfoHelper: entry" set Status = STATUS_FAILED Set KeyNull = "" set ServiceKey = $($0) set KeyPerformance = $(KeyNull) OpenRegKey $(ServiceKey) "" $(!RasPerfKeyName) $(!MAXIMUM_ALLOWED) KeyPerformance ifstr $(KeyPerformance) == $(KeyNull) CreateRegKey $(ServiceKey) {$(!RasPerfKeyName),$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" KeyPerformance OpenRegKey $(ServiceKey) "" $(!RasPerfKeyName) $(!MAXIMUM_ALLOWED) KeyPerformance ifstr $(KeyPerformance) == $(KeyNull) Debug-Output "Error creating Performance key" goto UpdatePerfmonInfoHelperEnd endif endif set NewValueList = + {{Library ,$(NoTitle),$(!REG_VT_SZ),$(!RasPerfLibraryName)},+ {Open, $(NoTitle),$(!REG_VT_SZ),$(!RasPerfOpenFunction)},+ {Close, $(NoTitle),$(!REG_VT_SZ),$(!RasPerfCloseFunction)},+ {Collect, $(NoTitle),$(!REG_VT_SZ),$(!RasPerfCollectFunction)}} Shell "Utility.Inf", AddValueList, $(KeyPerformance), $(NewValueList) ifint $($ShellCode) != $(!SHELL_CODE_OK) Debug-Output "UpdatePerfmonInfoHelper: error shelling AddValueList" goto UpdatePerfmonInfoHelperEnd endif set RegistryErrorIndex = $($R0) Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR" Debug-Output "UpdatePerfmonInfoHelper: AddValueList bombed out" goto UpdatePerfmonInfoHelperEnd endif CloseRegKey $(KeyPerformance) set Status = STATUS_SUCCESSFUL UpdatePerfmonInfoHelperEnd =+ Debug-Output "UpdatePerfmonInfoHelper: Exit" return $(Status) [RenameRasHubToNdisWan] Debug-Output "RenameRasHubToNdisWan: entry" set Status = STATUS_FAILED Set KeyNull = "" OpenRegKey $(!REG_H_LOCAL) "" $(!NetworkCardKeyName) $(!MAXIMUM_ALLOWED) KeyNetcards ifstr $(KeyNetcards) == $(KeyNull) Debug-Output "RenameRasHubToNdisWan: could not open Netcards key" goto RenameRasHubToNdisWanEnd endif EnumRegKey $(KeyNetcards) NetcardsList ForListDo $(NetcardsList) set KeyName = *($($),1) OpenRegKey $(KeyNetcards) "" $(KeyName) $(!MAXIMUM_ALLOWED) Card ifstr $(Card) == $(KeyNull) Debug-Output "RenameRasHubToNdisWan: could not open netcard key" CloseRegKey $(KeyNetcards) goto RenameRasHubToNdisWanEnd endif GetRegValue $(Card), "ProductName" ProductNameInfo set CardProductName = *($(ProductNameInfo), 4) ifstr(i) $(CardProductName) == $(!ProductRASHUBDIALINName) set ThisOption = DIALIN else-ifstr(i) $(CardProductName) == $(!ProductRASHUBDIALOUTName) set ThisOption = DIALOUT else-ifstr(i) $(CardProductName) == $(!ProductRASHUBDIALINIPName) set ThisOption = DIALINIP else-ifstr(i) $(CardProductName) == $(!ProductRASHUBDIALOUTIPName) set ThisOption = DIALOUTIP else-ifstr(i) $(CardProductName) == $(!ProductRASHUBDIALINOUTIPXName) set ThisOption = DIALINOUTIPX else goto endloop endif SetRegValue $(Card) {ProductName, 0, + $(!REG_VT_SZ),$(!ProductNDISWAN$(ThisOption)Name)} SetRegValue $(Card) {Description, 0, + $(!REG_VT_SZ),$(!ProductNDISWANDescription)} SetRegValue $(Card) {ServiceName, 0, $(!REG_VT_SZ), + $(!ProductNDISWANName)$(KeyName)} SetRegValue $(Card) {Title, 0, $(!REG_VT_SZ),+ "["$(KeyName)"] "$(!ProductNDISWANTitle)} OpenRegKey $(Card) "" "NetRules" $(!MAXIMUM_ALLOWED) NetRules ifstr $(NetRules) == $(KeyNull) CloseRegKey $(KeyNetCards) CloseRegKey $(Card) Debug-Output "RenameRasHubToNdisWan: could not open "$(KeyName)"\NetRules key" goto RenameRasHubToNdisWanEnd Endif SetRegValue $(NetRules) {InfOption, 0, + $(!REG_VT_SZ), "RAS"} SetRegValue $(NetRules) {block, 0, + $(!REG_VT_MULTI_SZ),$(!NetRuleHardware$(ThisOption)Block)} SetRegValue $(NetRules) {class, 0, + $(!REG_VT_MULTI_SZ),$(!NetRuleHardware$(ThisOption)Class)} SetRegValue $(NetRules) {type, 0, + $(!REG_VT_SZ),$(!NetRuleHardware$(ThisOption)Type)} Set TempProdName = """"$(!ProductNDISWANName)$(KeyName)"""" Set TempBindForm = $(TempProdName)$(!NetRuleHardwareNDISWANBindForm) SetRegValue $(NetRules) {bindform, 0, $(!REG_VT_SZ),$(TempBindForm)} CloseRegKey $(NetRules) endloop=+ CloseRegKey $(Card) EndForListDo CloseRegKey $(KeyNetcards) set Status = STATUS_SUCCESSFUL RenameRasHubToNdisWanEnd =+ Debug-Output "RenameRasHubToNdisWan: Exit" return $(Status) [UpgradeIpxInfo] Debug-Output "UpgradeIpxInfo: entry" set PORTSDLGHANDLE = $($0) set RasProtocolsName = $(!NTN_SoftwareBase)"\Microsoft\Ras\Protocols" set SapAgentName = $(!NTN_SoftwareBase)"\Microsoft\NWSAPAGENT" set NwlnkRipName = $(!NTN_SoftwareBase)"\Microsoft\NWLNKRIP" set IpxRouterName = $(!NTN_ServiceBase)"\IpxRouter" OpenRegKey $(!REG_H_LOCAL) "" + $(RasProtocolsName) $(!MAXIMUM_ALLOWED) KeyProtocols ifstr $(KeyProtocols) != "" set fIpxAllowed = 0 GetRegValue $(KeyProtocols) "fIpxAllowed" IpxList ifint $(RegLastError) == 0 set fIpxAllowed = *($(IpxList), 4) endif ifint $(fIpxAllowed) != 0 Debug-Output "UpgradeIpxInfo: RAS is configured for IPX dialin" set KeyRouter = "" OpenRegKey $(!REG_H_LOCAL) "" + $(IpxRouterName) $(!MAXIMUM_ALLOWED) KeyRouter ifstr $(KeyRouter) != "" CloseRegKey $(KeyRouter) Debug-Output "Renaming IpxRouter to NwlnkRip..." LibraryProcedure Result $(PORTSDLGHANDLE) RenameIpxRouterToNwlnkRip Shell "" RemoveServiceDependency "RemoteAccess" "IpxRouter" Debug-Output "Renaming IpxRouter to NwlnkRip done..." endif OpenRegKey $(!REG_H_LOCAL) "" + $(!NTN_ServiceBase)"\NWLNKIPX\Parameters" + $(!MAXIMUM_ALLOWED) KeyIpxParameters ifstr $(KeyIpxParameters) != $(KeyNull) GetRegValue $(KeyIpxParameters), "SingleNetworkActive" + SingleNetworkActive ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) SetRegValue $(KeyIpxParameters) + {SingleNetworkActive, 0, $(!REG_VT_DWORD), 1} endif GetRegValue $(KeyIpxParameters), "DisableDialoutSap" + DisableDialoutSap ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) SetRegValue $(KeyIpxParameters) + {DisableDialoutSap, 0, $(!REG_VT_DWORD), 1} endif GetRegValue $(KeyIpxParameters), "DisableDialinNetbios" + DisableDialinNetbios ifint $(RegLastError) != $(!REG_ERROR_SUCCESS) SetRegValue $(KeyIpxParameters) + {DisableDialinNetbios, 0, $(!REG_VT_DWORD), 1} endif CloseRegKey $(KeyIpxParameters) Endif else Debug-Output "OEMNSVRA.INF: error opening NWLNKIPX\Parameters key" endif endif CloseRegKey $(KeyProtocols) else Debug-Output "UpgradeIpxInfo: error opening RAS\Protocols key" endif Debug-Output "UpgradeIpxInfo: exit" return [SaveTcpipInfo] Debug-Output "SaveTcpipInfo: entry - AddIpInfo = "$($0) set AddTcpInfo = $($0) set Status = STATUS_FAILED Set KeyNull = "" set RasIpKeyName = $(!NTN_SoftwareBase)"\Microsoft\Ras\Protocols\Ip" set RasSvrParamKeyName = $(!NTN_ServiceBase)"\RemoteAccess\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(RasIpKeyName) $(!MAXIMUM_ALLOWED) RasIpKey ifstr $(RasIpKey) != $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(RasSvrParamKeyName) $(!MAXIMUM_ALLOWED) KeySrvParams ifstr $(KeySrvParams) == $(KeyNull) Debug-Output "SaveTcpipInfo: could not open RasSvr Params key" CloseRegKey $(RasIpKey) return $(Status) endif ifstr(i) $(AddTcpInfo) == TRUE CreateRegKey $(KeySrvParams) {"Ip",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" RemoteIpKey OpenRegKey $(KeySrvParams) "" "Ip" $(!MAXIMUM_ALLOWED) RemoteIpKey ifstr $(RemoteIpKey) != $(KeyNull) EnumRegValue $(RasIpKey) NewValueList Shell "utility.inf", AddValueList, $(RemoteIpKey), $(NewValueList) CloseRegKey $(RemoteIpKey) endif else Debug-Output "SaveTpcipInfo: removing ip info" DeleteRegTree $(KeySrvParams) "IP" endif CloseRegKey $(RasIpKey) CloseRegKey $(KeySrvParams) endif Debug-Output "SaveTcpipInfo: exit" set Status = STATUS_SUCCESSFUL return $(Status) [SaveIpxInfo] Debug-Output "SaveIpxInfo: entry RouterInstalled= "$($0)" AddIpxInfo = "$($1) set RouterInstalled = $($0) set AddIpxInfo = $($1) set Status = STATUS_FAILED Set KeyNull = "" set RasIpxKeyName = $(!NTN_SoftwareBase)"\Microsoft\Ras\Protocols\Ipx" set RasSvrParamKeyName = $(!NTN_ServiceBase)"\RemoteAccess\Parameters" OpenRegKey $(!REG_H_LOCAL) "" $(RasIpxKeyName) $(!MAXIMUM_ALLOWED) RasIpxKey ifstr $(RasIpxKey) != $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(RasSvrParamKeyName) + $(!MAXIMUM_ALLOWED) KeySrvParams ifstr $(KeySrvParams) == $(KeyNull) Debug-Output "SaveTcpipInfo: could not open RasSvr Params key" CloseRegKey $(RasIpxKey) return $(Status) $(fRouterInstalled) endif ifstr(i) $(AddIpxInfo) == TRUE CreateRegKey $(KeySrvParams) {"Ipx",$(NoTitle),GenericClass} "" $(!MAXIMUM_ALLOWED) "" RemoteIpxKey OpenRegKey $(KeySrvParams) "" "Ipx" $(!MAXIMUM_ALLOWED) RemoteIpxKey ifstr $(RemoteIpxKey) != $(KeyNull) EnumRegValue $(RasIpxKey) NewValueList Shell "utility.inf", AddValueList, $(RemoteIpxKey), $(NewValueList) SetRegValue $(RemoteIpxKey) {RouterInstalled, 0,$(!REG_VT_DWORD), $(RouterInstalled)} CloseRegKey $(RemoteIpxKey) endif else Debug-Output "SaveIpxInfo: removing ipx info" DeleteRegTree $(KeySrvParams) "IPX" endif CloseRegKey $(KeySrvParams) CloseRegKey $(RasIpxKey) endif Debug-Output "SaveIpxInfo: exit" set Status = STATUS_SUCCESSFUL return $(Status) [AddServiceDependency] Debug-Output "AddServiceDependency: entry" set Status = STATUS_FAILED Set KeyNull = "" set DependentService = $(!NTN_ServiceBase)\$($0) set DependentName = $($0) set DependOn = $($1) set ServiceKey = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(DependentService)"\Linkage" $(!MAXIMUM_ALLOWED) ServiceKey ifstr(i) $(ServiceKey) != $(KeyNull) GetRegValue $(ServiceKey) "OtherDependencies" ServicesList ifint $(RegLastError) != 0 set ServiceValues = {} else set ServiceValues = *($(ServicesList),4) endif debug-output "AddServiceDependency: Old OtherDependencies: "$(ServiceValues) ifstr(i) $(ServiceValues) == {} Set ServiceValues = {$(DependOn)} else-ifstr(i) $(ServiceValues) == "" Set ServiceValues = {$(DependOn)} else-ifcontains(i) $(DependOn) in $(ServiceValues) return STATUS_SUCCESSFUL else Set ServiceValues = >($(ServiceValues), $(DependOn)) endif debug-output "AddServiceDependency: New OtherDependencies: "$(ServiceValues) SetRegValue $(ServiceKey) {OtherDependencies, 0,+ $(!REG_VT_MULTI_SZ), $(ServiceValues)} CloseRegKey $(ServiceKey) set Status = STATUS_SUCCESSFUL else Debug-Output "AddServiceDependency: error opening service "$(DependentService)"\Linkage" endif set KeyService = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(DependentService) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) set newDependList = {$(DependOn)} GetRegValue $(KeyService) "DependOnService" ServiceList ifint $(RegLastError) == 0 Debug-Output "AddServiceDependency: old DependOnService List "*($(ServiceList), 4) ForListDo *($(ServiceList),4) ifstr(i) $($) != $(DependOn) set newDependList = >($(newDependList), $($)) endif EndForListDo endif GetRegValue $(KeyService) "DependOnGroup" GrpList ifint $(RegLastError) == 0 Debug-Output "AddServiceDependency: old DependOnGroup List "*($(GrpList), 4) ForListDo *($(GrpList),4) set grp = "+"$($) set newDependList = >($(newDependList), $(grp)) EndForListDo endif Debug-Output "OEMNSVRA.INF: AddServiceDependency: new Dependency List "$(newDependList) LibraryProcedure Result, $(!LIBHANDLE), SetupChangeServiceConfig, $(DependentName) $(!SERVICE_NO_CHANGE), $(!SERVICE_NO_CHANGE), $(!SERVICE_NO_CHANGE), "", "", $(newDependList), "", "", "" CloseRegKey $(KeyService) else Debug-Output "AddServiceDependency: failed to open service linkage key"$(DependentService) endif Debug-Output "AddServiceDependency: exit" return $(Status) [RemoveServiceDependency] Debug-Output "RemoveServiceDependency: entry" set Status = STATUS_FAILED Set KeyNull = "" set DependentService = $(!NTN_ServiceBase)\$($0) set DependentName = $($0) set DependOn = $($1) OpenRegKey $(!REG_H_LOCAL) "" $(DependentService)"\Linkage" $(!MAXIMUM_ALLOWED) ServiceKey ifstr(i) $(ServiceKey) != $(KeyNull) GetRegValue $(ServiceKey) "OtherDependencies" ServicesList ifint $(RegLastError) != 0 set ServiceValues = {} else set ServiceValues = *($(ServicesList),4) endif debug-output "RemoveServiceDependency: old OtherDependencies list:"$(ServicesList) set ServiceValues = *($(ServicesList),4) debug-output "ServiceValues: "$(ServiceValues) ifcontains(i) $(DependOn) in $(ServiceValues) set NewServiceValues = {} ForListDo $(ServiceValues) ifstr(i) $($) != $(DependOn) set NewServiceValues = >($(NewServiceValues), $($)) endif EndForListDo debug-output "RemoveServiceDependency: new OtherDependencies list: "$(NewServiceValues) SetRegValue $(ServiceKey) {OtherDependencies, 0,+ $(!REG_VT_MULTI_SZ), $(NewServiceValues)} else endif CloseRegKey $(ServiceKey) set Status = STATUS_SUCCESSFUL else Debug-Output "RemoveServiceDependency: error opening service "$(DependentService)"\Linkage" endif set KeyService = $(KeyNull) OpenRegKey $(!REG_H_LOCAL) "" $(DependentService) $(!MAXIMUM_ALLOWED) KeyService ifstr $(KeyService) != $(KeyNull) set newDependList = {} GetRegValue $(KeyService) "DeleteFlag" DeleteFlagValue ifint $(RegLastError) != 0 GetRegValue $(KeyService) "DependOnService" ServiceList ifint $(RegLastError) == 0 Debug-Output "RemoveServiceDependency: old DependOnService List "*($(ServiceList), 4) ifcontains(i) $(DependOn) in *($(ServiceList),4) ForListDo *($(ServiceList),4) ifstr(i) $($) != $(DependOn) set newDependList = >($(newDependList), $($)) endif EndForListDo GetRegValue $(KeyService) "DependOnGroup" GrpList ifint $(RegLastError) == 0 ForListDo *($(GrpList),4) set grp = "+"$($) set newDependList = >($(newDependList), $(grp)) EndForListDo endif Debug-Output "OEMNSVRA.INF:RemoveServiceDependency: new DependOnService List "$(newDependList) LibraryProcedure Result, $(!LIBHANDLE), + SetupChangeServiceConfig, $(DependentName) + $(!SERVICE_NO_CHANGE), $(!SERVICE_NO_CHANGE), + $(!SERVICE_NO_CHANGE), "", "", + $(newDependList), "", "", "" endif endif endif CloseRegKey $(KeyService) else Debug-Output "RemoveServiceDependency: failed to open service linkage key"$(DependentService) endif Debug-Output "RemoveServiceDependency: exit" return $(Status) [SetLanOnlyMode] Debug-Output "SetLanOnlyMode: entry" set Status = STATUS_FAILED Set KeyNull = "" set RouterParam = $(!NTN_ServiceBase)"\Router\Parameters" set LanOnlyModeValue = $($0) OpenRegKey $(!REG_H_LOCAL) "" $(RouterParam) $(!MAXIMUM_ALLOWED) KeyRtrParam ifstr(i) $(KeyRtrParam) != $(KeyNull) SetRegValue $(KeyRtrParam) {LanOnlyMode, $(NoTitle), $(!REG_VT_DWORD), $(LanOnlyModeValue)} CloseRegKey $(KeyRtrParam) set Status = STATUS_SUCCESSFUL else Debug-Output "SetLanOnlyMode: failed to open Router\parameters key"$(RouterParam) endif Debug-Output "SetLanOnlyMode: exit" return $(Status) [QueryUserQuit] set Status = STATUS_FAILED set UserAction = CANCEL set STF_MB_TEXT = "The changes will not be saved. "+ "Are you sure you want to exit Setup." read-syms ExitWarningDlg$(!STF_LANGUAGE) ui start "ExitWarning" ifstr(i) $(DLGEVENT) == "YES" set Status = STATUS_SUCCESSFUL set UserAction = "OK" else-ifstr(i) $(DLGEVENT) == "NO" set Status = STATUS_SUCCESSFUL set UserAction = "CANCEL" else endif fin_QueryUserQuit = + Return $(Status) $(UserAction) [QueryRasUpgrade] set Status = STATUS_FAILED set UserAction = CANCEL read-syms RasUpgrade$(!STF_LANGUAGE) set Text = $($0)$(Ver)$($1)$(Text1)$(Ver)$($2)$(Text2)$(Text3) set STF_MB_TEXT = $(Text) read-syms ExitWarningDlg$(!STF_LANGUAGE) ui start "RasUpgrade" ifstr(i) $(DLGEVENT) == "YES" set Status = STATUS_SUCCESSFUL set UserAction = "OK" else-ifstr(i) $(DLGEVENT) == "NO" set Status = STATUS_SUCCESSFUL set UserAction = "CANCEL" else endif fin_QueryRasUpgrade = + Return $(Status) $(UserAction) [CP-List] NBFCP = "%SystemRoot%\SYSTEM32\RASNBFCP.DLL" IPCP = "%SystemRoot%\SYSTEM32\RASIPCP.DLL" IPXCP = "%SystemRoot%\SYSTEM32\RASIPXCP.DLL" PAP = "%SystemRoot%\SYSTEM32\RASPAP.DLL" CHAP = "%SystemRoot%\SYSTEM32\RASCHAP.DLL" SPAP = "%SystemRoot%\SYSTEM32\RASSPAP.DLL" CBCP = "%SystemRoot%\SYSTEM32\RASCBCP.DLL" COMPCP = "%SystemRoot%\SYSTEM32\RASCCP.DLL" [Files-RemoveList] RASADMINDLL = $(!STF_WINDOWSSYSPATH)\RASADMIN.DLL RASGTWYDLL = $(!STF_WINDOWSSYSPATH)\RASGTWY.DLL RASGPRXYDLL = $(!STF_WINDOWSSYSPATH)\RASGPRXY.DLL RASSRVEXE = $(!STF_WINDOWSSYSPATH)\RASSRV.EXE RASCTRSDLL = $(!STF_WINDOWSSYSPATH)\RASCTRS.DLL RASCTRSINI = $(!STF_WINDOWSSYSPATH)\RASCTRS.INI RASCTRNMH = $(!STF_WINDOWSSYSPATH)\RASCTRNM.H RASSPRXYEXE = $(!STF_WINDOWSSYSPATH)\RASSPRXY.EXE RASSAUTHDLL = $(!STF_WINDOWSSYSPATH)\RASSAUTH.DLL RASDIALEXE = $(!STF_WINDOWSSYSPATH)\RASDIAL.EXE RASPHONEHLP = $(!STF_WINDOWSSYSPATH)\RASPHONE.HLP RASGLOSSHLP = $(!STF_WINDOWSSYSPATH)\RASGLOSS.HLP RASAPI32DLL = $(!STF_WINDOWSSYSPATH)\RASAPI32.DLL RASCAUTHDLL = $(!STF_WINDOWSSYSPATH)\RASCAUTH.DLL RASADMINHLP = $(!STF_WINDOWSSYSPATH)\RASADMIN.HLP RASMANDLL = $(!STF_WINDOWSSYSPATH)\RASMAN.DLL RASMANEXE = $(!STF_WINDOWSSYSPATH)\RASMAN.EXE RASSERDLL = $(!STF_WINDOWSSYSPATH)\RASSER.DLL RASIPXCPDLL = $(!STF_WINDOWSSYSPATH)\RASIPXCP.DLL RASPPPDLL = $(!STF_WINDOWSSYSPATH)\RASPPP.DLL RASPPPENDLL = $(!STF_WINDOWSSYSPATH)\RASPPPEN.DLL RASPAPDLL = $(!STF_WINDOWSSYSPATH)\RASPAP.DLL RASCHAPDLL = $(!STF_WINDOWSSYSPATH)\RASCHAP.DLL RASSPAPDLL = $(!STF_WINDOWSSYSPATH)\RASSPAP.DLL RASIPCPDLL = $(!STF_WINDOWSSYSPATH)\RASIPCP.DLL RASIPHLPDLL = $(!STF_WINDOWSSYSPATH)\RASIPHLP.DLL RASNBFCPDLL = $(!STF_WINDOWSSYSPATH)\RASNBFCP.DLL RASNBIPCDLL = $(!STF_WINDOWSSYSPATH)\RASNBIPC.DLL RASCCPDLL = $(!STF_WINDOWSSYSPATH)\RASCCP.DLL RASCBCPDLL = $(!STF_WINDOWSSYSPATH)\RASCBCP.DLL ASYNCMACSYS = $(!STF_WINDOWSSYSPATH)\DRIVERS\ASYNCMAC.SYS NDISWANSYS = $(!STF_WINDOWSSYSPATH)\DRIVERS\NDISWAN.SYS RASARPSYS = $(!STF_WINDOWSSYSPATH)\DRIVERS\RASARP.SYS [Source Media Descriptions] 1 = "Windows NT Server CD-ROM", TAGFILE = cdrom_s.40 [Signature] FileType = MICROSOFT_FILE [GetSignature] read-syms Signature return $(FileType) [ProductType] STF_PRODUCT = LanmanNT STF_PLATFORM = I386 [Files-Ras-Admin] 1,RASADMIN.EXE , SIZE=999 , NODELETESOURCE 1,RASSAPI.DLL , SIZE=999 , NODELETESOURCE 1,RASADMIN.CNT , SIZE=999 1,RASADMIN.HLP , SIZE=999 [Files-Ras-Client] 1,RASPHONE.EXE , SIZE=999 , NODELETESOURCE 1,RASSHELL.DLL , SIZE=999 , NODELETESOURCE 1,RASAPI32.DLL , SIZE=999 1,RASCAUTH.DLL , SIZE=999 1,RASCPL.CPL , SIZE=999 1,RASDIAL.EXE , SIZE=999 1,RASGLOSS.CNT , SIZE=999 1,RASGLOSS.HLP , SIZE=999 1,RASMON.EXE , SIZE=999 1,RASPHONE.CNT , SIZE=999 1,RASPHONE.HLP , SIZE=999 1,RASSCRPT.DLL , SIZE=999 [Files-Ras-Common] 1,KMDDSP.TSP , SIZE=20240 1,OEMNSVRA.INF , SIZE=342626 1,RASADHLP.DLL , SIZE=999 1,RASAUTO.DLL , SIZE=999 1,RASAUTOU.EXE , SIZE=999 1,RASCBCP.DLL , SIZE=999 1,RASCCP.DLL , SIZE=999 1,RASCHAP.DLL , SIZE=999 1,RASDLG.DLL , SIZE=999 1,RASIPCP.DLL , SIZE=999 1,RASIPHLP.DLL , SIZE=999 1,RASIPXCP.DLL , SIZE=999 1,RASMAN.DLL , SIZE=999 1,RASMXS.DLL , SIZE=999 1,RASNBFCP.DLL , SIZE=999 1,RASPAP.DLL , SIZE=999 1,RASPPPEN.DLL , SIZE=999 1,RASSER.DLL , SIZE=999 1,RASSPAP.DLL , SIZE=999 1,RASTAPI.DLL , SIZE=999 [Files-Ras-Drivers] 1,ASYNCMAC.SYS , SIZE=999 1,NDISTAPI.SYS , SIZE=999 1,NDISWAN.SYS , SIZE=999 1,RASACD.SYS , SIZE=999 [Files-Ras-Inf] modem = 1,MODEM.INF , SIZE=999 , NODELETESOURCE pad = 1,PAD.INF , SIZE=999 , NODELETESOURCE rasread = 1,RASREAD.TXT , SIZE=999 , NODELETESOURCE switch = 1,SWITCH.INF , SIZE=999 , NODELETESOURCE [Files-Ras-Scp] cis = 1,CIS.SCP , SIZE=999 , NODELETESOURCE pppmenu = 1,PPPMENU.SCP , SIZE=999 , NODELETESOURCE scriptdoc = 1,SCRIPT.DOC , SIZE=999 , NODELETESOURCE slip = 1,SLIP.SCP , SIZE=999 , NODELETESOURCE slipmenu = 1,SLIPMENU.SCP , SIZE=999 , NODELETESOURCE [Files-Ras-Server] 1,RASAUTH.DLL , SIZE=999 1,RASCTRS.DLL , SIZE=999 1,RASGPRXY.DLL , SIZE=999 1,RASGTWY.DLL , SIZE=999 1,RASRAD.DLL , SIZE=999 1,RASSAUTH.DLL , SIZE=999 [Files-Resource] 1,RADIUS.HLP , SIZE=999 , NODELETESOURCE 1,RASCFG.DLL , SIZE=999 , NODELETESOURCE 1,RASFIL32.DLL , SIZE=999 , NODELETESOURCE 1,RASSETUP.CNT , SIZE=999 , NODELETESOURCE 1,RASSETUP.HLP , SIZE=999 , NODELETESOURCE 1,RTRCFG.DLL , SIZE=999 , NODELETESOURCE [Files-Router-Drivers] 1,NWLNKFLT.SYS , SIZE=999 1,NWLNKFWD.SYS , SIZE=999 1,WANARP.SYS , SIZE=999 [Files-Router-Filter-Driver] 1,IPFLTDRV.SYS , SIZE=30224 [Files-Router] 1,ADPTIF.DLL , SIZE=999 1,BTPAGNT.DLL , SIZE=999 1,COPYADMN.CMD , SIZE=999 1,DDMADMIN.DLL , SIZE=999 1,DDMPRXY.EXE , SIZE=999 1,IFADMIN.DLL , SIZE=999 1,INETMIB1.DLL , SIZE=50448 1,IPADMIN.DLL , SIZE=999 1,IPBOOTP.DLL , SIZE=999 1,IPMON.DLL , SIZE=999 1,IPRIP2.DLL , SIZE=999 1,IPRTPRIO.DLL , SIZE=999 1,IPRTRMGR.DLL , SIZE=999 1,IPXADMIN.DLL , SIZE=999 1,IPXMON.DLL , SIZE=999 1,IPXPING.EXE , SIZE=999 1,IPXRIP.DLL , SIZE=999 1,IPXRTMGR.DLL , SIZE=999 1,IPXSAP.DLL , SIZE=999 1,IPXWAN.DLL , SIZE=999 1,KERNROUT.EXE , SIZE=999 1,MIB2UTIL.DLL , SIZE=999 1,MPRADMIN.CNT , SIZE=999 1,MPRADMIN.EXE , SIZE=999 1,MPRADMIN.HLP , SIZE=999 1,MPRAPI.DLL , SIZE=999 1,MPRDDM.DLL , SIZE=999 1,MPRDIM.DLL , SIZE=999 1,MPRFILTR.DLL , SIZE=999 1,MPRMSG.DLL , SIZE=999 1,MPROUTER.EXE , SIZE=999 1,MPRSETUP.EXE , SIZE=999 1,OSPF.DLL , SIZE=999 1,OSPFAGNT.DLL , SIZE=999 1,OSPFMIB.DLL , SIZE=999 1,RASRPC_C.DLL , SIZE=999 1,RASRPC_S.DLL , SIZE=999 1,RIPAGNT.DLL , SIZE=999 1,ROUTEMON.EXE , SIZE=999 1,RTIPXMIB.DLL , SIZE=999 1,RTM.DLL , SIZE=999 1,RTUTILS.DLL , SIZE=999 1,SNMPSFX.DLL , SIZE=14096 [LanguagesSupported] ENG [OptionsTextENG] RAS = "Routing And Remote Access Service" [FileConstantsENG] RasGroup = "Remote Access Service" RasPhone = "Remote Access" RasMon = "Remote Access Monitor" RasAdmin = "Remote Access Admin" ReadMe = "Read Me" RasInternet = "Remote Access and the Internet" RasHelp = "Remote Access Help" AdminGroup = "Administrative Tools" RtrAdmin = "Routing and RAS Admin" ProCaption = "Routing and Remote Access Service Setup" ProCancel = "Cance&l" ProCancelMsg = "Remote Access Service is not correctly installed. "+ "Are you sure you want to cancel copying files?" ProCancelCap = "Routing and Remote Access Service Setup Message" ProText1 = "Copying:" ProText2 = "To:" Error = "Unable to determine proper source disk location; copy cannot be performed." FunctionTitle ="Routing and Remote Access Setup" ProductRASDescription = "Enables users to use Windows NT Server as an IP or IPX router." ProductRASTitle = "Routing And Remote Access Service" ProductRASDisplayName = "Routing And Remote Access Service" ProductRASMANDescription = "Windows NT Remote Access Connection Manager" ProductRASMANTitle = "Remote Access Connection Manager" ProductRASMANDisplayName = "Remote Access Connection Manager" !ProductRASAUTODIALDescription = "Windows NT Remote Access Autodial Manager" !ProductRASAUTODIALDisplayName = "Remote Access Autodial Manager" !ProductRASAUTODIALTitle = "Remote Access Autodial Manager" !ProductNDISWANDescription = "Windows NT Remote Access WAN Wrapper" !ProductNDISWANTitle = "Remote Access WAN Wrapper" !ProductNDISWANDisplayName = "Remote Access WAN Wrapper" ProductRASASYMACDescription = "Windows NT Remote Access AsyMac Adapter Driver" ProductRASASYMACTitle = "Remote Access Mac" ProductRASASYMACDisplayName = "Remote Access Mac" ProductRASSVRDescription = "Windows NT Remote Access NetBios Gateway" ProductRASSVRTitle = "Remote Access Server Service" ProductRASSVRDisplayName = "Remote Access Server" !ProductROUTINGDescription = "Enables users to use Windows NT Server as an IP or IPX router." !ProductROUTINGTitle = "Routing And Remote Access Service" !ProductROUTINGDisplayName = "Routing And Remote Access Service" !ProductRASISNRIPTitle = "Remote Access NWLNKRIP Service" !ProductRASISNRIPDisplayName = "Remote Access NWLNKRIP Service" !ProductRASISNSAPTitle = "Remote Access NWLNKSAP Service" !ProductRASISNSAPDisplayName = "Remote Access NWLNKSAP Service" !ProductRASARPTitle = "Remote Access ARP Service" !ProductRASARPDisplayName = "Remote Access ARP Service" !ProductRASACDDisplayName = "Remote Access Auto Connection Driver" !ProductWANARPDisplayName = "IP WanArp Driver" !ProductIPFLTDisplayName = "IP Filter Driver" !ProductIPXPINGDisplayName = "IPX Ping Service" !ProductNWLNKFWDDisplayName = "NWLink Forwarder" !ProductNWLNKFLTDisplayName = "NWLink Traffic Filter" !ProductNDISTAPIDisplayName = "Microsoft NDIS TAPI driver" [DialogConstantsENG] Help = "&Help" Exit = "E&xit" OK = "OK" HelpContext = "" Continue = "C&ontinue" Cancel = "C&ancel" [ExitWarningDlgENG] DlgType = "MessageBox" STF_MB_TITLE = "Routing and Remote Access Service Setup" STF_MB_TYPE = 3 STF_MB_ICON = 5 STF_MB_DEF = 2 [SetupAbortDlgENG] DlgType = "Info" DlgTemplate = "RESTART" Caption = "Routing and Remote Access Service Setup" DlgText = "Setup for Routing and Remote Access Service failed."$(!LF)$(!LF)+ "Please choose Exit to exit back to the Windows NT System." Windows = "E&xit to &Windows NT" [AbortMessageENG] AbortText = "Aborting Remote Access Setup. Please restart the system "+ "to fix the problem." [ShellCodeErrorMsgENG] DlgType = "MessageBox" STF_MB_TITLE = "Error: "$(FunctionTitle) STF_MB_TEXT = "An error occured running the shell command. "+ "Please restart the system to fix the problem." STF_MB_TYPE = 1 STF_MB_ICON = 3 STF_MB_DEF = 1 [SuccessfulInstallENG] Success = "Routing and Remote Access Service has been successfully installed. "$(!LF)$(!LF)+ "You can use Routing and RAS Admin to add Routing protocols and to change the router configuration. "+ "You can use User Manager to assign Remote Access permissions to dial-in users."$(!LF)+ "You can find these programs in the Administrative Tools (Common) folder." [MsgDlgENG] DlgType = "MessageBox" STF_MB_TYPE = 1 STF_MB_ICON = 2 STF_MB_DEF = 2 [StatusUpdatingRegistryENG] CreatingRas = "Please wait while Routing and Remote Access service is installed..." WritingRasParams = "Writing registry parameters..." WritingRasParamsAdd = "Writing registry parameters...adding binding " WritingRasParamsRemove = "Writing registry parameters...removing binding " RemovingRas = "Removing Routing and Remote Access Service..." RemovingAdapters = "Routing and Remote Access Setup: removing binding " RemovingFiles = "Removing Routing and Remote Access files..." RemovingServices = "Removing Routing and Remote Access Services..." UpdatingRas = "Please wait while Routing and Remote Access service is updated..." [StatusDeterminingConfigENG] ReadingConfig = "Determining current configuration ..." [StatusCopyingResENG] Status = "Copying DLLs and INF files to disk ..." [NonFatalError1ENG] NonFatal = "Setup cannot function properly without a user name." [FatalErrorMemENG] Fatal = "Not enough memory is available. Remote Access requires atleast 2 Meg." [NoConfigLANENG] NoConfigLanRouting = "To configure Routing use RTRADMIN. To install RAS click add and choose Routing and Remote Access Service" [VerExistsENG] Ver = " version " Text1 = " is already installed. " [NetworkConfigErrorENG] Text1 = "Setup encountered an error while determining the "+ "network configuration. Please make sure that "+ "the network is properly configured before attempting "+ "to install Remote Access Service." Text2 = "The Microsoft Windows Workstation and Server Service must be "+ "installed for proper operation of Remote Access Service."$(!LF)$(!LF)+ "To install Workstation or Server Service:"$(!LF)$(!LF)+ "1. Invoke 'Network' control panel applet."$(!LF)+ "2. Choose Add Software and select Workstation or Server from the list." [NoPortsConfiguredENG] NoPortsError =+ "Remote Access is not configured with any ports. "+ "You have an invalid RAS configuration. "+ "Please configure Remote Access Service and add "+ "ports using the Network option in Control Panel "+ "after restarting the system." [QueryInstalledProtocolsErrorENG] Text = "Setup encountered an error while determining the "+ "installed network protocols. Try restarting the "+ "system to correct the problem. Contact your system "+ "administrator, if the problem persists." [RasUpgradeENG] Ver = " ver " Text1 = " exists on the system. Are you sure you want to upgrade to" Text2 = "?. " Text3 = "Selecting YES will result in the new version replacing the old." [InstallLoopbackENG] Message = "RAS Setup has discovered that you have configured one or more "+ "ports to receive calls and your computer does not have a "+ "network adapter installed. Setup will install the MS Loopback "+ "Adapter to enable remote clients to use resources on this computer." Error = "RAS setup encountered an error while invoking the OEMNADLB.INF file "+ "to install the MS Loopback Adapter. You can install the Loopback Adapter "+ "from the Network option in Control Panel after restarting the system. "+ "Remote Clients will not be able to dialin and use resources on this computer "+ "till you install the Loopback Adapter." [NoNetbeuiDlgENG] NoNetbeuiWarning =+ "The NetBEUI protocol is either not installed or not configured "+ "for Remote Access. NetBEUI provides the fastest throughput to "+ "NetBIOS resources when accessed over a Remote Access connection. "+ "If clients will access remote NetBIOS resources, configure RAS "+ "to use NetBEUI. "$(!LF)$(!LF)+ "You can add the NetBEUI protocol to your computer using the "+ "Network option in Control Panel." [NoProtocolsDlgENG] NoProtocolsWarning =+ "Remote Access is not configured with any network protocols. "+ "You have an invalid RAS configuration. "+ "You can configure RAS to support "+ "network protocols using the Network option in Control Panel "+ "after restarting the system." [UpgradeErrorsENG] UpgradeIsdnInfoError = "Remote Access Setup encoutered an error while "+ "updating the ISDN information. Please remove and "+ "reinstall Remote Access to ensure proper operation." [RasErrorsENG] ErrorBadArgs = "OEMNSVRA.INF specified invalid number of arguments "+ "to RASCFG.DLL. Remote Access Setup will terminate now." ErrorNoPorts = "Dial-Up Networking setup failed to detect any installed "+ "ports on this computer. Setup will terminate now." ErrorUnknown = "Dial-Up Networking setup encountered an unknown failure "+ "and will terminate now. Please contact your administrator "+ "to deteremine the cause of the problem." InvalidMode = "Dial-Up Networking setup was invoked with an invalid "+ "RasInstallMode environment variable. It should be set to "+ "either install or configure. The value currently passed to "+ "setup is "$(RasInstallMode)"." UnableToLoadSetupdll = "Dial-Up Networking setup was unable to load setupdll.dll "+ "in the system32 directory. Please make sure this file is "+ "present on your computer. Setup will now exit. " UnableToLoadNcpaCpl = "Dial-Up Networking setup was unable to load ncpa.cpl "+ "in the system32 directory. Please make sure this file is "+ "present on your computer. Setup will now exit. " NoProductType = "Dial-Up Networking setup was unable to determine your "+ "computer product type. Make sure that the following registry "+ "value exists on your computer. "+ "HEKY_LOCAL_MACHINE\System\CurrentControlSet\Control\ProductOptions. "+ "Setup will now exit." UnknownProductType = "Dial-Up Networking setup detected an unsupported product type "$(TempProductType)". "+ "Make sure that the following registry value HEKY_LOCAL_MACHINE\System\CurrentControlSet\Control\ProductOptions\ProductType "+ "is one of the following valid values WinNT, LanManNT or ServerNT. Setup will now exit." RemoveRasFirst = "For this beta release, you must first remove your installation "+ "of Remote Accesss Service and the following MPR components (if installed) - "+ "RIP for IPX, SAP Agent, RIP for Internet and DHCP relay agent "+ "before installing Routing and Remote Access Service." ErrorAddingRtrMgr = "An error occured while adding a Routing Manager. Your configuration is bad. Remove and reinstall to fix the problem." ErrorConfigInterfaces = "An error occured while adding/removing LAN interfaces. Your configuration is bad. Remove and reinstall to fix the problem." ErrorSnmpRunning = "SNMP service is currently running on the server. This prevents setup from copying snmp sub-agent files. Please stop SNMP service before running setup again." ErrorLoadingConfigDll = "Setup can not start due the following missing file(s) in your system32 directory - " No40WkstaInstall = "You can not install this service on a Windows NT 4.0 Workstation product. Please install this service on a Windows NT 4.0 Server product." [Billboard1ENG] Status = "Routing and remote Access Setup is installing the NetBEUI transport..." [Billboard2ENG] Status = "Routing and remote Access Setup is installing the TCP/IP transport..." [Billboard3ENG] Status = "Routing and remote Access Setup is installing NWLINK and related services..."