DeployAnywhere confused by a driver whose “Provider” contains a forward-slash

I need a solution

We were automatically provisioning a system using Symantec ITMS Deployment Solution. The DriverManager64.exe (part of DeployAnywhere) task failed on the client system with the following error:

SMPPackage.cpp@772: Error in downloading file from HTTP.source :http://itms/Altiris/PackageShare/pkggroup_guid/DriversDB/BayHubTech/o2flash.exe and dest :C:DS_SOISymantecDeploymentDriversDBBayHubTecho2flash.exe. The COM error = HTTP error occurred
[… many similar lines …]

On the ITMS server, I explored C:Program FilesAltirisDeploymentDriversDB and found that the BayHubTech subdirectory was a unique case:

DriversDBAdaptec.cda1000.4.20.38
DriversDBAdaptec.cda1000.4.20.38drivers.manifest.txt
DriversDBAdaptec.cda1000.4.20.38CDA1000.inf
[… other files …]

*versus*

DriversDBBayHubTech
DriversDBBayHubTechO2Micro.O2FJ2RDR.2.2.2.1076
DriversDBBayHubTechO2Micro.O2FJ2RDR.2.2.2.1076drivers.manifest.txt
DriversDBBayHubTechO2Micro.O2FJ2RDR.2.2.2.1076o2fj2x64.inf
[… other files …]

Notice how the BayHubTech subdirectory contains a further directory structure (“O2Micro”). None of the other drivers in this folder contained additional “layers” of directories — only BayHubTech. I determined that this driver is Dell’s O2 Micro OZ777xxx/OZ621XX memory card reader Driver, and upon further inspection I saw that the INF file contains (after variable substitution) the following line:

Provider = “BayHubTech/O2Micro”

I suspect that the forward-slash in this directive is being incorrectly interpreted in two different ways: it causes the ITMS DeployAnywhere DriversDB to create an extra layer of subdirectories, and it causes the DeployAnywhere client to stop parsing the name after “BayHubTech.” Furthermore, it is impossible to delete the impacted driver from the ITMS Driver Management interface; instead, the following lines appear on the server-side logs:

Altiris.Deployment.Web.DeployAnyWhereDriverDB: ArgumentsList:/del=”BayHubTech/O2Micro.O2FJ2RDR.2.2.2.1060″ /ddb=”D:AltirisDeploymentDriversDB”
Altiris.Deployment.Web.DeployAnyWhereDriverDB: Delete Drivername passed:BayHubTech/O2Micro.O2FJ2RDR.2.2.2.1060
Altiris.Deployment.Web.DeployAnyWhereDriverDB: Delete Driver Database return code is :11
Altiris.Deployment.Web.DeployAnyWhereDriverDB: Incorrect parameter(s) provided.

Can this behavior be fixed? I have needed to resort to recreating drivers.manifest.txt (as suggested in this forum discussion) in order to clear the bad driver.

0

Related:

  • No Related Posts

Leave a Reply