We have an end user used MS-Access database which connects to a Visual Fox Pro directory of .dbf files via linked tables and an ODBC DSN. This worked fine until Symantec Endpoint Protection installed a couple of updates, and now when a select set of machines attempt to connect to it we receive an ODBC failed error.
We know this because uninstalling Symantec Endpoint Protection causes the database to work again.
We have the following specs:
SEP:
- Managed Symantec Endpoint Protection, managed from Symantec Endpoint Protection Small Business Edition.
Symantec.cloud - Cloud Agent 2.03.70.2614
Symantec.cloud - Endpoint Protection - NIS-21.5.0.19
32-Bit ODBC Driver:
Microsoft Visual FoxPro Driver - 6.01.8629.01 - VFPODBC.DLL - 12/7/1999
This driver has been shoehorned into Windows 7 (since it's unsupported) with registry keys. I am already aware that I have to install the driver using C:\Windows\SysWOW64\odbcad32.exe, on 64-bit machines. The driver already works as long as SEP is not installed.
MS-Access:
There are several versions of MS-Access on which the problem is occurring, between 2007 and Office 365, so this leads me to believe it has to do with ODBC and SEP...and also the fact that when you uninstall SEP you end up with a working database; disabling the firewall in SEP however doesn't resolve the issue.
Machines:
Most of the machines with this issue are Lenovo ThinkCentere M73, but it is not exclusive to this type of machine, we also have some users with Dell OptiPlexes with the same issue (not that I think this is relevant).
We've already talked to SEP support, and the first thing they thought of was that it's an issue with SEP managing the firewall; we made a group to put the machine in, which allowed us to turn the firewall off inside the SEP interface, giving us the option to do so for 15 minutes or more. This did not resolve the issue.
I also ran an ODBC trace and attempted to access some of the Visual Fox Pro linked tables from the end user Microsoft Access database; and it resulted in a log file.
Here are the results of the trace from ODBC:
Secured.mdw 8d0-bcc ENTER SQLAllocEnv
HENV * 0x002521A4
Secured.mdw 8d0-bcc EXIT SQLAllocEnv with return code 0 (SQL_SUCCESS)
HENV * 0x002521A4 ( 0x03907130)
Secured.mdw 8d0-bcc ENTER SQLAllocConnect
HENV 0x03907130
HDBC * 0x002520D0
Secured.mdw 8d0-bcc EXIT SQLAllocConnect with return code 0 (SQL_SUCCESS)
HENV 0x03907130
HDBC * 0x002520D0 ( 0x03955AE8)
Secured.mdw 8d0-bcc ENTER SQLSetConnectOptionW
HDBC 0x03955AE8
SQLINTEGER 103 <SQL_LOGIN_TIMEOUT>
SQLPOINTER 20
Secured.mdw 8d0-bcc EXIT SQLSetConnectOptionW with return code 0 (SQL_SUCCESS)
HDBC 0x03955AE8
SQLINTEGER 103 <SQL_LOGIN_TIMEOUT>
SQLPOINTER 20
Secured.mdw 8d0-bcc ENTER SQLSetConnectAttrW
SQLHDBC 0x03955AE8
SQLINTEGER 30002 <unknown>
SQLPOINTER [Unknown attribute 30002]
SQLINTEGER -3
Secured.mdw 8d0-bcc EXIT SQLSetConnectAttrW with return code 0 (SQL_SUCCESS)
SQLHDBC 0x03955AE8
SQLINTEGER 30002 <unknown>
SQLPOINTER [Unknown attribute 30002]
SQLINTEGER -3
Secured.mdw 8d0-bcc ENTER SQLDriverConnectW
HDBC 0x03955AE8
HWND 0x0004031C
WCHAR * 0x6D768B34 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x6D768B34
SWORD -3
SWORD * 0x00000000
UWORD 3 <SQL_DRIVER_COMPLETE_REQUIRED>
Secured.mdw 8d0-bcc EXIT SQLDriverConnectW with return code -1 (SQL_ERROR)
HDBC 0x03955AE8
HWND 0x0004031C
WCHAR * 0x6D768B34 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x6D768B34
SWORD -3
SWORD * 0x00000000
UWORD 3 <SQL_DRIVER_COMPLETE_REQUIRED>
DIAG [IM003] Specified driver could not be loaded due to system error 0: The operation completed successfully. (Microsoft Visual FoxPro Driver, C:\Windows\system32\vfpodbc.dll). (160)
Secured.mdw 8d0-bcc ENTER SQLErrorW
HENV 0x03907130
HDBC 0x03955AE8
HSTMT 0x00000000
WCHAR * 0x0025206C
SDWORD * 0x00252034
WCHAR * 0x05F5A788
SWORD 4095
SWORD * 0x00252028
Secured.mdw 8d0-bcc EXIT SQLErrorW with return code 0 (SQL_SUCCESS)
HENV 0x03907130
HDBC 0x03955AE8
HSTMT 0x00000000
WCHAR * 0x0025206C [ 5] "IM003"
SDWORD * 0x00252034 (160)
WCHAR * 0x05F5A788 [ 165] "Specified driver could not be loaded due to system error 0: The operation completed successfully. (Microsoft Visual FoxPro Driver, C:\Windows\system32\vfpodbc.dll)."
SWORD 4095
SWORD * 0x00252028 (165)
Secured.mdw 8d0-bcc ENTER SQLErrorW
HENV 0x03907130
HDBC 0x03955AE8
HSTMT 0x00000000
WCHAR * 0x0025206C
SDWORD * 0x00252034
WCHAR * 0x05F5A8E8
SWORD 3919
SWORD * 0x00252028
Secured.mdw 8d0-bcc EXIT SQLErrorW with return code 100 (SQL_NO_DATA_FOUND)
HENV 0x03907130
HDBC 0x03955AE8
HSTMT 0x00000000
WCHAR * 0x0025206C
SDWORD * 0x00252034
WCHAR * 0x05F5A8E8
SWORD 3919
SWORD * 0x00252028
Secured.mdw 8d0-bcc ENTER SQLFreeConnect
HDBC 0x03955AE8
Secured.mdw 8d0-bcc EXIT SQLFreeConnect with return code 0 (SQL_SUCCESS)
HDBC 0x03955AE8
Secured.mdw 8d0-bcc ENTER SQLFreeEnv
HENV 0x03907130
Secured.mdw 8d0-bcc EXIT SQLFreeEnv with return code 0 (SQL_SUCCESS)
HENV 0x03907130
Is there any reason why this wouldn't work on a couple of machines, but not all of them?

