]> git.openfabrics.org - ~shefty/rdma-win.git/commitdiff
[WinOF] RC3 updates
authorstansmith <stansmith@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Fri, 10 Oct 2008 15:39:10 +0000 (15:39 +0000)
committerstansmith <stansmith@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Fri, 10 Oct 2008 15:39:10 +0000 (15:39 +0000)
git-svn-id: svn://openib.tc.cornell.edu/gen1@1641 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

branches/WOF2-0/branches/WinOF/WIX/CustomActions.vbs
branches/WOF2-0/branches/WinOF/WIX/README_release.txt
branches/WOF2-0/branches/WinOF/WIX/Release_notes.htm
branches/WOF2-0/branches/WinOF/WIX/wlh/ia64/wof.wxs
branches/WOF2-0/branches/WinOF/WIX/wlh/x64/wof.wxs
branches/WOF2-0/branches/WinOF/WIX/wlh/x86/wof.wxs
branches/WOF2-0/branches/WinOF/WIX/wnet/ia64/wof.wxs
branches/WOF2-0/branches/WinOF/WIX/wnet/x64/wof.wxs
branches/WOF2-0/branches/WinOF/WIX/wnet/x86/wof.wxs
branches/WOF2-0/branches/WinOF/WIX/wxp/x86/wof.wxs

index 7e9c5aae0d2ffb8b29260215390687efef7f9364..caa69b5a9b6135b611377c8bc1a09fd696704ae3 100644 (file)
@@ -109,6 +109,22 @@ Function FileMove(filename,destination)
 End Function\r
 \r
 \r
+Function DriverFileDelete(fso,WshShell,filename)\r
+    Err.clear\r
+    If fso.FileExists(filename) Then\r
+           On Error Resume Next \r
+               ' unlock the driver file by deleting PnPLocked reg entry.\r
+               base = "reg delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\PnpLockdownFiles /v "\r
+               Return = WshShell.Run (base & filename & " /f", 0, true)\r
+           fso.DeleteFile(filename),True\r
+           If (Err And Err.Number <> 70) Then  ' tolerate protection errors\r
+                   ErrMsg ("Could not delete: " & filename)\r
+        End If \r
+    End If\r
+End Function\r
+\r
+\r
+\r
 Function FileMDelete(src,file)\r
     Dim rc,cmd\r
        On Error Resume Next \r
@@ -189,9 +205,9 @@ End Sub
 ' when the driver is uninstalled. Win2K3/x64 files persist, XP & Win2K3/x86\r
 ' the driver files are correctly remove?\r
  \r
-Function RemoveDriverFiles()\r
+Function RemoveDriverFiles(WshShell)\r
     Dim Win, sDRIVERS, sSystem64Folder, sInstalldir, sSYS32, sSYSWOW64\r
-    Dim sSystemFolder, CheckMode, PropArray, dllCache\r
+    Dim sSystemFolder, CheckMode, PropArray, dllCache, fso, sTemp\r
        \r
     ' Function can be called from the Driver{Install/Uninstall} rtns.\r
     ' (properties are different).\r
@@ -208,7 +224,10 @@ Function RemoveDriverFiles()
        sInstalldir = Session.Property("INSTALLDIR") \r
        sSystemFolder = Session.Property("SystemFolder") \r
     End if\r
-           \r
+\r
+    Set WshShell = CreateObject("WScript.Shell")\r
+    Set fso = CreateObject("Scripting.FileSystemObject")\r
+\r
     MTARCH = Architecture \r
 \r
        ' this is screw-ball: on 64-bit systems: SystemFolder == %windir%\SysWOW64\r
@@ -225,91 +244,93 @@ Function RemoveDriverFiles()
     End If\r
     sDRIVERS = sSYS32 & "drivers\"\r
 \r
-    FileDelete(sDRIVERS & "ibbus.sys")\r
+    DriverFileDelete fso,WshShell,sDRIVERS & "ibbus.sys"\r
     FileDelete(sDRIVERS & "ibbus.sy1")\r
-    FileDelete(sDRIVERS & "ibiou.sys")\r
-    FileDelete(sDRIVERS & "mthca.sys")\r
+    DriverFileDelete fso,WshShell,sDRIVERS & "ibiou.sys"\r
+    DriverFileDelete fso,WshShell,sDRIVERS & "mthca.sys"\r
     FileDelete(sDRIVERS & "mthca.sy1")\r
-    FileDelete(sDRIVERS & "mlx4_bus.sys")\r
-    FileDelete(sDRIVERS & "mlx4_hca.sys")\r
+    DriverFileDelete fso,WshShell,sDRIVERS & "mlx4_bus.sys"\r
+    DriverFileDelete fso,WshShell,sDRIVERS & "mlx4_hca.sys"\r
 \r
-    FileDelete(sDRIVERS & "ipoib.sys")\r
-    FileDelete(sDRIVERS & "ibsrp.sys")\r
-    FileDelete(sDRIVERS & "vnic.sys")\r
-    FileDelete(sDRIVERS & "qlgcvnic.sys")\r
+    DriverFileDelete fso,WshShell,sDRIVERS & "ipoib.sys"\r
+    DriverFileDelete fso,WshShell,sDRIVERS & "ibsrp.sys"\r
+    DriverFileDelete fso,WshShell,sDRIVERS & "vnic.sys"\r
+    DriverFileDelete fso,WshShell,sDRIVERS & "qlgcvnic.sys"\r
     \r
     dllCache = sSystem64Folder & "dllcache\"\r
-    FileDelete(dllCache & "ibal.dll")\r
-    FileDelete(dllCache & "ibald.dll")\r
-    FileDelete(dllCache & "complib.dll")\r
-    FileDelete(dllCache & "complibd.dll")\r
-    FileDelete(dllCache & "mthcau.dll")\r
-    FileDelete(dllCache & "mthcaud.dll")\r
-    FileDelete(dllCache & "mlx4u.dll")\r
-    FileDelete(dllCache & "mlx4ud.dll")\r
-    FileDelete(dllCache & "IbInstaller.dll")\r
-    FileDelete(dllCache & "ibwsd.dll")\r
-    FileDelete(dllCache & "ibsrp.dll")\r
-    FileDelete(dllCache & "ibsrpd.dll")\r
+       If fso.FolderExists(dllCache) Then\r
+       FileDelete(dllCache & "ibal.dll")\r
+       FileDelete(dllCache & "ibald.dll")\r
+       FileDelete(dllCache & "complib.dll")\r
+       FileDelete(dllCache & "complibd.dll")\r
+       FileDelete(dllCache & "mthcau.dll")\r
+       FileDelete(dllCache & "mthcaud.dll")\r
+       FileDelete(dllCache & "mlx4u.dll")\r
+       FileDelete(dllCache & "mlx4ud.dll")\r
+       FileDelete(dllCache & "IbInstaller.dll")\r
+       FileDelete(dllCache & "ibwsd.dll")\r
+       FileDelete(dllCache & "ibsrp.dll")\r
+       FileDelete(dllCache & "ibsrpd.dll")\r
+       End if\r
     \r
-    FileDelete(sSYS32 & "ibal.dll")\r
-    FileDelete(sSYS32 & "ibald.dll")\r
-    FileDelete(sSYS32 & "ibal32.dll")\r
-    FileDelete(sSYS32 & "ibal32d.dll")\r
-    FileDelete(sSYS32 & "complib.dll")\r
-    FileDelete(sSYS32 & "complibd.dll")\r
-    FileDelete(sSYS32 & "cl32.dll")\r
-    FileDelete(sSYS32 & "cl32d.dll")\r
-    FileDelete(sSYS32 & "mthcau.dll")\r
-    FileDelete(sSYS32 & "mthcaud.dll")\r
-    FileDelete(sSYS32 & "mthca32.dll")\r
-    FileDelete(sSYS32 & "mthca32d.dll")\r
-    FileDelete(sSYS32 & "mlx4u.dll")\r
-    FileDelete(sSYS32 & "mlx4ud.dll")\r
-    FileDelete(sSYS32 & "mlx4u32.dll")\r
-    FileDelete(sSYS32 & "mlx4u32d.dll")\r
-    FileDelete(sSYS32 & "ibsrp.dll")\r
-    FileDelete(sSYS32 & "ibsrpd.dll")\r
-    FileDelete(sSYS32 & "IbInstaller.dll")\r
-    FileDelete(sSYS32 & "ibwsd.dll")\r
-    FileDelete(sSYS32 & "ibndprov.dll")\r
-    FileDelete(sSYS32 & "ibndprov32.dll")\r
-    FileDelete(sSYS32 & "ndinstall.exe")\r
-\r
-    If (MTARCH <> "x86") Then\r
-               FileDelete(sSYSWOW64 & "ibal.dll")\r
-               FileDelete(sSYSWOW64 & "ibald.dll")\r
-               FileDelete(sSYSWOW64 & "complib.dll")\r
-               FileDelete(sSYSWOW64 & "complibd.dll")\r
-               FileDelete(sSYSWOW64 & "mthcau.dll")\r
-               FileDelete(sSYSWOW64 & "mthcaud.dll")\r
-               FileDelete(sSYSWOW64 & "mlx4u.dll")\r
-               FileDelete(sSYSWOW64 & "mlx4ud.dll")\r
-               FileDelete(sSYSWOW64 & "ibsrp.dll")\r
-               FileDelete(sSYSWOW64 & "ibsrpd.dll")\r
-               FileDelete(sSYSWOW64 & "IbInstaller.dll")\r
-               FileDelete(sSYSWOW64 & "ibwsd.dll")\r
+    DriverFileDelete fso,WshShell,sSYS32 & "ibal.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "ibald.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "ibal32.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "ibal32d.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "complib.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "complibd.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "cl32.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "cl32d.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "mthcau.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "mthcaud.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "mthca32.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "mthca32d.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "mlx4u.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "mlx4ud.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "mlx4u32.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "mlx4u32d.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "ibsrp.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "ibsrpd.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "IbInstaller.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "ibwsd.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "ibndprov.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "ibndprov32.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "ndinstall.exe"\r
+\r
+       If fso.FolderExists(sSYSWOW64) Then\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "ibal.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "ibald.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "complib.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "complibd.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "mthcau.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "mthcaud.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "mlx4u.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "mlx4ud.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "ibsrp.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "ibsrpd.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "IbInstaller.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "ibwsd.dll"\r
+               DriverFileDelete fso,WshShell,sSYSWOW64 & "ibndprov.dll"\r
        End If\r
 \r
-    FileDelete(Win & "lastgood\system32\ibwsd.dll")\r
-    FileDelete(Win & "lastgood\SysWOW64\ibwsd.dll")\r
-    FileDelete(Win & "lastgood\SysWOW64\mthcau.dll")\r
-    FileDelete(Win & "lastgood\SysWOW64\mthcaud.dll")\r
-    FileDelete(Win & "lastgood\system32\mthcau.dll")\r
-    FileDelete(Win & "lastgood\system32\mthcaud.dll")\r
-    FileDelete(Win & "lastgood\system32\drivers\mthcau.dll")\r
-    FileDelete(Win & "lastgood\system32\drivers\mthcaud.dll")\r
-    FileDelete(Win & "lastgood\system32\drivers\mthca.sys")\r
+       If fso.FolderExists(Win & "lastgood" ) Then\r
+       FileDelete(Win & "lastgood\system32\ibwsd.dll")\r
+       FileDelete(Win & "lastgood\SysWOW64\ibwsd.dll")\r
+       FileDelete(Win & "lastgood\SysWOW64\mthcau.dll")\r
+       FileDelete(Win & "lastgood\SysWOW64\mthcaud.dll")\r
+       FileDelete(Win & "lastgood\system32\mthcau.dll")\r
+       FileDelete(Win & "lastgood\system32\mthcaud.dll")\r
+       FileDelete(Win & "lastgood\system32\drivers\mthcau.dll")\r
+       FileDelete(Win & "lastgood\system32\drivers\mthcaud.dll")\r
+       FileDelete(Win & "lastgood\system32\drivers\mthca.sys")\r
+       End If\r
 \r
     FileDelete(Win & "winverbs.lib")\r
-    FileDelete(sDRIVERS & "winverbs.sys")\r
-    FileDelete(sSYS32 & "winverbs.dll")\r
-    FileDelete(sSYS32 & "winverbsd.dll")\r
+    DriverFileDelete fso,WshShell,sDRIVERS & "winverbs.sys"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "winverbs.dll"\r
+    DriverFileDelete fso,WshShell,sSYS32 & "winverbsd.dll"\r
     \r
     ' delete opensm files\r
-    Dim fso\r
-    Dim sTemp\r
-    Set fso = CreateObject("Scripting.FileSystemObject")\r
     sTemp = fso.GetSpecialFolder(0) & "\temp\"\r
     ' remove files from %SystemRoot%\temp\r
     FileDelete(sTemp & "guid2lid")\r
@@ -319,7 +340,6 @@ Function RemoveDriverFiles()
     \r
     ' Delete oem*.inf and oem*.pnf files\r
     dim  InfFiles, PnfFiles, IFILES, PFILES\r
-    Set WshShell = CreateObject("WScript.Shell")\r
     Set infFilesExec = WshShell.Exec ("cmd.exe /c for /f  %i in ('findstr /m Mellanox %WINDIR%\inf\oem*.*') do @echo %i")\r
     ' Display error number and description if applicable\r
     If Err Then ShowError\r
@@ -551,7 +571,7 @@ End Function
 \r
 ' Function to add registry DWORD val.\r
 Function AddRegDWORDValue(strKeyPath, strValueName, dwValue)\r
-    const HKEY_LOCAL_MACHINE = &H80000002\r
+    Const HKEY_LOCAL_MACHINE = &H80000002\r
     strComputer = "."\r
  \r
     Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_ \r
@@ -569,7 +589,7 @@ End Function
 ' Function to add registry Expanded string val.\r
 \r
 Function AddRegExpandValue(strKeyPath, strValueName, dwValue)\r
-    const HKEY_LOCAL_MACHINE = &H80000002\r
+    Const HKEY_LOCAL_MACHINE = &H80000002\r
     strComputer = "."\r
  \r
     Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_ \r
@@ -588,7 +608,7 @@ End Function
 ' Function to add registry string val.\r
 \r
 Function AddRegStringValue(strKeyPath, strValueName, dwValue)\r
-const HKEY_LOCAL_MACHINE = &H80000002\r
+Const HKEY_LOCAL_MACHINE = &H80000002\r
 strComputer = "."\r
  \r
 Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_ \r
@@ -717,11 +737,13 @@ End Sub
 ' For installer error codes see\r
 '  http://msdn2.microsoft.com/en-us/library/aa368542(VS.85).aspx \r
 \r
-const ERROR_INSTALL_SOURCE_ABSENT = 1612  ' missing files to install,\r
+Const ERROR_INSTALL_SOURCE_ABSENT = 1612  ' missing files to install,\r
                                               ' invalid feature selection.\r
-const ERROR_INSTALL_FAILURE       = 1603  ' fatal error during installation\r
-const ERROR_FUNCTION_FAILED       = 1627  ' function failed during execution   \r
-const ERROR_SUCCESS_REBOOT_REQUIRED = 3010 ' restart required\r
+Const ERROR_INSTALL_FAILURE       = 1603  ' fatal error during installation\r
+Const ERROR_FUNCTION_FAILED       = 1627  ' function failed during execution   \r
+Const ERROR_SUCCESS_REBOOT_REQUIRED = 3010 ' restart required\r
+\r
+Const DPINST_ERR = &H80000000\r
 \r
 \r
 ''''''''''' Device Driver Install ''''''''''''\r
@@ -859,7 +881,7 @@ Function DriverInstall()
         ' Display error number and description if applicable\r
         If Return <> 0 Then\r
             msgbox "mlx4_hca Install Err(" & Return & ") " & cmd\r
-                       remove_INF_file WshShell,dpinst,"mlx4_"\r
+                       remove_INF_file WshShell,devmanEXE,"mlx4_"\r
             DriverInstall=ERROR_INSTALL_FAILURE\r
             Exit Function\r
         End if\r
@@ -897,7 +919,7 @@ Function DriverInstall()
 \r
                If DrvInstalled <> true Then\r
             msgbox "InfiniHost(mthca) Install Err(" & Return & ") " & cmd\r
-                       remove_INF_file WshShell,dpinst,"mthca"\r
+                       remove_INF_file WshShell,devmanEXE,"mthca"\r
             DriverInstall=ERROR_INSTALL_FAILURE\r
             Exit Function\r
                End if\r
@@ -970,6 +992,7 @@ End Function
 ' Find IBA devices using Devcon\r
 \r
 Function Find_IBA_Devices(WshShell,sInstalldir) \r
+       Dim dev\r
 \r
        Set ibaDevicesExec = WshShell.Exec ("cmd.exe /c cd " & sInstalldir & "IBcore & devman.exe findall * | FIND ""IBA""")\r
        ibaDevices = split(ibaDevicesExec.StdOut.ReadAll, vbCrLF)\r
@@ -977,8 +1000,8 @@ Function Find_IBA_Devices(WshShell,sInstalldir)
        ' Getting the array Size\r
        dim arrSize\r
        arrSize = 0\r
-       for each deviceCan in ibaDevices\r
-               if (Instr(deviceCan,"IBA\") = 1) Then\r
+       for each dev in ibaDevices\r
+               if (Instr(dev,"IBA\") = 1) Then\r
                        arrSize = arrSize + 1\r
                End if\r
        next\r
@@ -986,9 +1009,9 @@ Function Find_IBA_Devices(WshShell,sInstalldir)
        dim ibaDev()\r
        Redim ibaDev(arrSize - 1)\r
        index = 0\r
-       for each deviceCan in ibaDevices\r
-               if (Instr(deviceCan,"IBA\") = 1) Then\r
-                       ibaDev(index) = deviceCan\r
+       for each dev in ibaDevices\r
+               if (Instr(dev,"IBA\") = 1) Then\r
+                       ibaDev(index) = dev\r
                        index = index + 1\r
                End if\r
        next\r
@@ -1002,33 +1025,59 @@ End Function
 ' were created for IPoIB.\r
 \r
 Function Find_IPOIB_LAC()\r
-               Set WshShell = CreateObject("WScript.Shell")\r
-\r
-        If (Session.Property("VersionNT") <> 501) Then\r
-            ' Win2K3 style\r
-            cmd = "cmd.exe /c reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network /f ""IBA\IPOIB"" /s /d | FIND ""Connection"" "\r
-        Else\r
-            ' XP style\r
-            cmd = "reg.exe query HKLM\SYSTEM\CurrentControlSet\Control\Network /s | FIND ""}\Connection"" " \r
-        End if\r
+       Dim WinOS,cmd,base,dev\r
 \r
-        Set ibaDevicesExec = WshShell.Exec ("cmd.exe /C " & cmd)\r
+       Set WshShell = CreateObject("WScript.Shell")\r
+       base = "cmd.exe /c reg query HKLM\SYSTEM\CurrentControlSet\Control\Network"\r
+       WinOS = Session.Property("VersionNT")\r
+\r
+       If (WinOS <> 501) Then\r
+               ' Win2K3 style\r
+               cmd = base & " /f ""IBA\IPOIB"" /s /d | FIND ""Connection"" "\r
+       Else\r
+               ' XP style\r
+               cmd = base & " /s | FIND ""}\Connection"" " \r
+       End if\r
+\r
+       Set ibaDevicesExec = WshShell.Exec ("cmd.exe /C " & cmd)\r
 \r
        ibaDevices = split(ibaDevicesExec.StdOut.ReadAll, vbCrLF)\r
 \r
        ' determine the array Size\r
        dim arrSize\r
        arrSize = 0\r
-       for each deviceCan in ibaDevices\r
+       for each dev in ibaDevices\r
                arrSize = arrSize + 1\r
        next\r
        'Creating array of Local Area Connections based on IPoIB\r
        dim ibaDev()\r
        Redim ibaDev(arrSize - 1)\r
        index = 0\r
-       for each deviceCan in ibaDevices\r
-               ibaDev(index) = deviceCan\r
-               index = index + 1\r
+\r
+       For each dev in ibaDevices\r
+               If dev = "" Then\r
+               ElseIf WinOS <> 501 then\r
+                       ' ibaDev(index) = dev\r
+                       delstr = Left(dev,Len(dev)-Len("\Connection"))\r
+                       ibaDev(index) = delstr\r
+                       index = index + 1\r
+               Else\r
+                       ' XP reg.exe format sucks, unable to filter IBA\IPOIB, so we do\r
+                       ' it here....sigh.\r
+                       Set rex = WshShell.Exec ("cmd.exe /C reg.exe query " & dev & _\r
+                                                                       " /v PnpInstanceID | FIND ""IBA\IPOIB"" ")\r
+                   resp = split(rex.StdOut.ReadAll, vbCrLF)\r
+                   For each re in resp\r
+'                              msgbox "XP dev " & dev\r
+'                              msgbox "XP re " & re\r
+                           if Instr(re,"IPOIB") Then\r
+                               delstr = Left(dev,Len(dev)-Len("\Connection"))\r
+                                   ibaDev(index) = delstr\r
+                                   index = index + 1\r
+                    Exit For\r
+                           End If\r
+                       next\r
+               End if\r
        next\r
        Find_IPOIB_LAC=ibaDev\r
 \r
@@ -1084,7 +1133,7 @@ End Function
 \r
 ' Remove QLogic VNIC instances\r
 \r
-Sub Uninstall_VNIC(WshShell,devices,sInstalldir)\r
+Sub Uninstall_VNIC(fso,WshShell,devices,sInstalldir)\r
 \r
        Dim devman,devmanRMAT,devmanDAAT,Return,device,dt,sDRIVERS\r
 \r
@@ -1112,13 +1161,13 @@ Sub Uninstall_VNIC(WshShell,devices,sInstalldir)
        remove_INF_file WshShell,devman,"qlgcvnic.sys"\r
 \r
        sDRIVERS = Session.Property("WindowsFolder") & "system32\drivers\"\r
-       FileDelete sDRIVERS & "vnic.sys"\r
-       FileDelete sDRIVERS & "qlgcvnic.sys"\r
+       DriverFileDelete fso,WshShell,sDRIVERS & "vnic.sys"\r
+       DriverFileDelete fso,WshShell,sDRIVERS & "qlgcvnic.sys"\r
 \r
 End Sub\r
 \r
 \r
-Sub Uninstall_SRP(WshShell,devices,sInstalldir)\r
+Sub Uninstall_SRP(fso,WshShell,devices,sInstalldir)\r
 \r
        Dim devman,devmanRMAT,devmanDAAT,Return,device,sDRIVERS\r
 \r
@@ -1157,7 +1206,7 @@ Sub Uninstall_SRP(WshShell,devices,sInstalldir)
        remove_INF_file WshShell,devman,"ibsrp.sys"\r
 \r
        sDRIVERS = Session.Property("WindowsFolder") & "system32\drivers\"\r
-       FileDelete sDRIVERS & "ibsrp.sys"\r
+       DriverFileDelete fso,WshShell,sDRIVERS & "ibsrp.sys"\r
 \r
 End Sub\r
 \r
@@ -1187,9 +1236,9 @@ Function Uninstall_IB_Devices(sInstalldir,sVersionNT,sRemove)
 \r
        devices = Find_IBA_Devices(WshShell,sInstalldir)\r
 \r
-       Uninstall_SRP WshShell,devices,sInstalldir\r
+       Uninstall_SRP fso,WshShell,devices,sInstalldir\r
 \r
-       Uninstall_VNIC WshShell,devices,sInstalldir\r
+       Uninstall_VNIC fso,WshShell,devices,sInstalldir\r
 \r
        ' remove any lingering IB I/O Units\r
        For each devTarget in devices\r
@@ -1289,35 +1338,57 @@ Sub DriverUninstall()
        DeleteRegKey "System\CurrentControlSet\Services\mlx4_bus"\r
        DeleteRegKey "System\CurrentControlSet\Services\mlx4_hca"\r
        DeleteRegKey "System\CurrentControlSet\Services\ipoib"\r
-       DeleteRegKey "System\CurrentControlSet\Services\srp"\r
+       DeleteRegKey "System\CurrentControlSet\Services\ibiou"\r
+       DeleteRegKey "System\CurrentControlSet\Services\ibsrp"\r
        DeleteRegKey "System\CurrentControlSet\Services\qlgcvnic"\r
-       DeleteRegKey "System\CurrentControlSet\Services\vnic"\r
+       DeleteRegKey "System\CurrentControlSet\Services\winverbs"\r
 \r
        ' Mthca\r
        DeleteRegValue "SYSTEM\CurrentControlSet\Control\CoDeviceInstallers" ,_\r
                                        "{58517E00-D3CF-40c9-A679-CEE5752F4491}"\r
+\r
        DeleteRegKey "SYSTEM\CurrentControlSet\Control\Class\{58517E00-D3CF-40C9-A679-CEE5752F4491}" \r
 \r
        ' Connectx (mlx4)\r
        DeleteRegValue "SYSTEM\CurrentControlSet\Control\CoDeviceInstallers" ,_\r
                                         "{31B0B28A-26FF-4dca-A6FA-E767C7DFBA20}"      \r
+\r
        DeleteRegKey "SYSTEM\CurrentControlSet\Control\Class\{31B0B28A-26FF-4dca-A6FA-E767C7DFBA20}"\r
+\r
        DeleteRegKey "SYSTEM\CurrentControlSet\Control\Class\{714995B2-CD65-4a47-BCFE-95AC73A0D780}"\r
        \r
+       ' In livefish mode, the above does not always work - just in case.\r
+       ' remove reg entries for ConnectX, mthca, ibbus, mlx4 & ipoib\r
+       nukem = Array(_\r
+                       "Control\Class\{58517E00-D3CF-40C9-A679-CEE5752F4491}",_\r
+                       "Control\Class\{31B0B28A-26FF-4dca-A6FA-E767C7DFBA20}",_\r
+                       "Control\Class\{714995B2-CD65-4a47-BCFE-95AC73A0D780}",_\r
+                       "Services\ibbus",_\r
+                       "Services\mthca",_\r
+                       "Services\mlx4_bus",_\r
+                       "Services\mlx4_hca",_\r
+                       "Services\ipoib",_\r
+                       "Services\EventLog\System\ipoib",_\r
+                       "Services\ibiou",_\r
+                       "Services\qlgcvnic",_\r
+                       "Services\ibsrp",_\r
+                       "Services\winverbs" )\r
+\r
+       base = "reg.exe delete HKLM\SYSTEM\CurrentControlSet\" \r
+\r
        ' in livefish mode the delete didn't suceed, delete it in another way\r
-       Return = WshShell.Run ("reg.exe delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{58517E00-D3CF-40C9-A679-CEE5752F4491} /f", 0, true)\r
-       If Err Then ShowError\r
+    For each ID in nukem\r
+               If ID <> "" Then\r
+                       Return = WshShell.Run (base & ID & " /f", 0, true)\r
+               End if\r
+       Next\r
 \r
-       ' ConnectX\r
-       Return = WshShell.Run ("reg.exe delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{31B0B28A-26FF-4dca-A6FA-E767C7DFBA20} /f", 0, true)\r
-       Return = WshShell.Run ("reg.exe delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{714995B2-CD65-4a47-BCFE-95AC73A0D780} /f", 0, true)\r
-       \r
-       ' mthca, ibbus, mlx4 & ipoib\r
-       Return = WshShell.Run ("reg.exe delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ibbus /f", 0, true)\r
-       Return = WshShell.Run ("reg.exe delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\mthca /f", 0, true)\r
-       Return = WshShell.Run ("reg.exe delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\mlx4_bus /f", 0, true)      \r
-       Return = WshShell.Run ("reg.exe delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\mlx4_hca /f", 0, true)\r
-       Return = WshShell.Run ("reg.exe delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ipoib /f", 0, true)\r
+       Return = WshShell.Run (base & "Control\Wdf\Kmdf\kmdflibrary\versions\1\driverservices /v mlx4_bus /f", 0, true)\r
+\r
+' Not yet\r
+'      Return = WshShell.Run ("reg.exe delete HKLM\Software\Microsoft\Windows\currentVersion\DIFx\DriverStore\WinVerbs_* /f", 0, true)\r
+'      Return = WshShell.Run ("reg.exe delete HKLM\Software\Microsoft\Windows\currentVersion\DIFx\DriverStore\ipoib_* /f", 0, true)\r
+'\r
 \r
        ' remove all Local Area Connection which were constructed for IPoIB\r
        ' create a list of IBA\IPOIB Local Area Connections via 'reg query'\r
@@ -1332,7 +1403,7 @@ Sub DriverUninstall()
        Next\r
 \r
        ' remove driver installed files\r
-       RemoveDriverFiles\r
+       RemoveDriverFiles WshShell\r
        \r
        Session.Property("REBOOT") = "FORCE"      \r
        err.clear \r
@@ -1532,7 +1603,7 @@ Function ChkInstallAndReboot()
     status = 0\r
     \r
     Set WshShell = CreateObject("WScript.Shell")\r
-    Return = WshShell.Run ("reg.exe query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ibbus /v ImagePath", 0, true)\r
+    Return = WshShell.Run ("reg.exe query HKLM\SYSTEM\CurrentControlSet\Services\ibbus /v ImagePath", 0, true)\r
     If (Return = 0) And (Err.Number = 0) Then\r
        Status = Status + 1\r
     End if\r
@@ -1770,12 +1841,12 @@ Function InstallChanged
        If (Not IsNull(sRemove)) AND (sRemove <> "") Then\r
 \r
                If Instr(sRemove,"fSRP") Then\r
-                       Uninstall_SRP WshShell,Null,sInstalldir\r
+                       Uninstall_SRP fso,WshShell,Null,sInstalldir\r
                        NeedReboot = NeedReboot + 1\r
                End If\r
 \r
                If Instr(sRemove,"fVNIC") Then\r
-                       Uninstall_VNIC WshShell,Null,sInstalldir\r
+                       Uninstall_VNIC fso,WshShell,Null,sInstalldir\r
                        NeedReboot = NeedReboot + 1\r
                End If\r
        End If\r
index cd6dbfb02f164d4eac11052d717274aa33bed79a..459f4fdfc0b848becbb1cf79cdef389b7ee3b914 100644 (file)
@@ -1,5 +1,5 @@
 \r
-[9-24-08] WinOF 2.0 (RC2) release\r
+[10-08-08] WinOF 2.0 (RC2) release\r
 \r
 Downloads available at http://www.openfabrics.org/downloads/WinOF/v2.0_rc2\r
 \r
@@ -8,7 +8,7 @@ WinOF 2.0 Summary Changes
 -------------------------\r
 \r
 1) WinOF 2.0 release based on openib-windows svn source revision\r
-   (branches\WOF2-0 svn.1620).\r
+   (branches\WOF2-0 svn.1638).\r
 \r
    Last WinOF release (1.1) based on svn 1177.\r
 \r
index 1d89ffa2e43c13fe6f749028d54188af52c82c68..06733c23fffa10a07ac62fb1f346839c29348cbc 100644 (file)
@@ -92,7 +92,7 @@ src=openfabrics.gif></h1>
 <h1 align=center style='text-align:center'><a name="1.1_Release_Notes">2.0 Release Notes</a></h1>\r
 \r
 <h3 align=center style='text-align:center'>\r
-<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%m/%d/%Y" startspan -->09/24/2008<!--webbot bot="Timestamp" endspan i-checksum="12590" --></h3>\r
+<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%m/%d/%Y" startspan -->10/08/2008<!--webbot bot="Timestamp" endspan i-checksum="12621" --></h3>\r
 \r
 <div class=MsoNormal align=center style='text-align:center'>\r
 \r
@@ -145,7 +145,7 @@ InfiniBand fabric.</span></p>
 <p class=MsoPlainText><span style='font-size:12.0pt;font-family:"Times New Roman"'>&nbsp;Binary\r
 files generated from the OpenIB-windows developers subversion (svn) source tree </span>\r
 'svn://openib.tc.cornell.edu'<span style='font-size:12.0pt;font-family:"Times New Roman"'> \r
-(branches\WOF2-0 svn revision <font color="#FF0000">1620</font>)\r
+(branches\WOF2-0 svn revision <font color="#FF0000">1638</font>)\r
 are packaged into a <a href="http://www.dalun.com/wix/default.htm">WIX 2.0 \r
 (Windows Installer Xml)</a> single file install package referred to as the \r
 Windows OpenFabrics&nbsp;(WinOF) release 2.0.<br>\r
@@ -750,7 +750,7 @@ the file version; the 4th field is the svn revision number.</li>
        <li>WinOF 1.1 is based on openib-windows <b><u>\r
        (svn revision 1177 branches\WOF1-1).<br>\r
 &nbsp;</u></b></li>\r
-       <li>WinOF 2.0 is based on<b> (<u>svn.1620 branches\WOF2-0</u>)</b></li>\r
+       <li>WinOF 2.0 is based on<b> (<u>svn.1638 branches\WOF2-0</u>)</b></li>\r
 </ul>\r
 <p><a href="#1.1_Release_Notes"><font color="#000000">&lt;Return-to-Top&gt;</font></a></p>\r
 <p>&nbsp;</p>\r
index 3d0336538abe48c2970bec0bd9273b49f8487838..761885890d7faf3898f16bc268ffa23a3ed0f447 100644 (file)
@@ -3,7 +3,7 @@
    WinOF (Windows OpenFabrics) for IA64/IPF Itanium on Windows Server 2008\r
 -->\r
 <Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">\r
-  <Product Name="Windows Open Fabrics InfiniBand v2.0 (RC2) ia64"\r
+  <Product Name="Windows Open Fabrics InfiniBand v2.0 (RC3) ia64"\r
     Id="3A6A276E-A636-48e8-8624-9A0DE3F2A15E"\r
     UpgradeCode='E38964D6-359D-4E38-9BBF-8C79D84DF6CF' \r
     Version="2.0.0"\r
index 2f6fd4311a6a87c524b183d5119597920c395dab..e87696984aec24a820375670c08825bc071d5d1d 100644 (file)
@@ -3,7 +3,7 @@
    WinOF (Windows OpenFabrics) for x64 Windows Server 2008 or Vista\r
 -->\r
 <Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">\r
-  <Product Name="Windows Open Fabrics InfiniBand v2.0 (RC2) x64"\r
+  <Product Name="Windows Open Fabrics InfiniBand v2.0 (RC3) x64"\r
     Id="3A6A276E-A636-48e8-8624-9A0DE3F2A15E"\r
     UpgradeCode='E38964D6-359D-4E38-9BBF-8C79D84DF6CF' \r
     Version="2.0.0"\r
index a382da0bc35a04451ce035b603a57d0ab6a45675..d0d85e283318b75484b7f8de83a130e8cdc7d517 100644 (file)
@@ -4,7 +4,7 @@
 -->\r
 <Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">\r
 \r
-  <Product Name="Windows OpenFabrics InfiniBand v2.0 (RC2) x86"\r
+  <Product Name="Windows OpenFabrics InfiniBand v2.0 (RC3) x86"\r
    Id="3A6A276E-A636-48e8-8624-9A0DE3F2A15E"\r
    UpgradeCode='E38964D6-359D-4E38-9BBF-8C79D84DF6CF'\r
    Version="2.0.0"\r
index 46c63dbebfe938cbc9d567ab45d2392c9f7e4fb5..c1ba6db50e7d743c5c4e80061e4a806ea2415f74 100644 (file)
@@ -3,7 +3,7 @@
    WinOF for IA64/IPF Itanium on Windows Server 2003\r
 -->\r
 <Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">\r
-  <Product Name="Windows Open Fabrics InfiniBand v2.0 (RC2) ia64"\r
+  <Product Name="Windows Open Fabrics InfiniBand v2.0 (RC3) ia64"\r
     Id="3A6A276E-A636-48e8-8624-9A0DE3F2A15E"\r
     UpgradeCode='E38964D6-359D-4E38-9BBF-8C79D84DF6CF' \r
     Version="2.0.0"\r
index 6d914c55024d879dfe8f3e488cf14115c213e2b9..9f9ff54d353ba739b07fdda58ef7333feb8a8a52 100644 (file)
@@ -3,7 +3,7 @@
    WinOF for x64 Windows Server 2003 or XP64\r
 -->\r
 <Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">\r
-  <Product Name="Windows Open Fabrics InfiniBand v2.0 (RC2) x64"\r
+  <Product Name="Windows Open Fabrics InfiniBand v2.0 (RC3) x64"\r
     Id="3A6A276E-A636-48e8-8624-9A0DE3F2A15E"\r
     UpgradeCode='E38964D6-359D-4E38-9BBF-8C79D84DF6CF' \r
     Version="2.0.0"\r
index d139e52be1e2238b0c6b84c74cf7e0145a0ac2a0..7185fd433d05ea7e390fdde8eb42b2acb990c384 100644 (file)
@@ -4,7 +4,7 @@
 -->\r
 <Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">\r
 \r
-  <Product Name="Windows OpenFabrics InfiniBand v2.0 (RC2) x86"\r
+  <Product Name="Windows OpenFabrics InfiniBand v2.0 (RC3) x86"\r
    Id="3A6A276E-A636-48e8-8624-9A0DE3F2A15E"\r
    UpgradeCode='E38964D6-359D-4E38-9BBF-8C79D84DF6CF'\r
    Version="2.0.0"\r
index 517de2be27dc440969b22e44e3dde86c537d3c1b..f1d678197f51ca1eb2fb4ae970dd7827dcc1e463 100644 (file)
@@ -4,7 +4,7 @@
 -->\r
 <Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">\r
 \r
-  <Product Name="Windows OpenFabrics InfiniBand v2.0 (RC2) x86 XP"\r
+  <Product Name="Windows OpenFabrics InfiniBand v2.0 (RC3) x86 XP"\r
    Id="3A6A276E-A636-48e8-8624-9A0DE3F2A15E"\r
    UpgradeCode='E38964D6-359D-4E38-9BBF-8C79D84DF6CF'\r
    Version="2.0.0"\r