tdf#84553 Detect and warn of Windows Antivirus.
Change-Id: I7731cb316306c153ad14bb3d27f39600a44ed9ee Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87811 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
This commit is contained in:
committed by
Mike Kaganski
parent
1d7b1a1505
commit
c16969b9bc
19
antivirusDetection.vbs
Executable file
19
antivirusDetection.vbs
Executable file
@@ -0,0 +1,19 @@
|
|||||||
|
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\SecurityCenter2")
|
||||||
|
Set installedAntiviruses = objWMIService.ExecQuery("Select * from AntivirusProduct")
|
||||||
|
'Iterates through all the antivirus software,retrieved by the WMI query,present on the system and prints only the ones that are active
|
||||||
|
'this is done by checking the 12th bit of the productState property of the antivirus
|
||||||
|
'if 12th bit is on then it means that the antivirus is in active state
|
||||||
|
'if 12th bit is off then it is inactive.
|
||||||
|
'see http://neophob.com/2010/03/wmi-query-windows-securitycenter2/
|
||||||
|
count=0
|
||||||
|
list=""
|
||||||
|
For Each antivirus in installedAntiviruses
|
||||||
|
If antivirus.productState And &h01000 Then 'checking the state of the 12th bit of productState property of the antivirus
|
||||||
|
count=count+1
|
||||||
|
list=list & VBNewLine & VBtab & "*" & antivirus.displayName
|
||||||
|
End if
|
||||||
|
Next
|
||||||
|
If count = 0 Then
|
||||||
|
Wscript.StdOut.Write "NOT_FOUND"
|
||||||
|
Else Wscript.Echo list
|
||||||
|
End if
|
15
configure.ac
15
configure.ac
@@ -12973,6 +12973,21 @@ fi
|
|||||||
|
|
||||||
AC_SUBST(ENABLE_FORMULA_LOGGER)
|
AC_SUBST(ENABLE_FORMULA_LOGGER)
|
||||||
|
|
||||||
|
dnl ===================================================================
|
||||||
|
dnl Checking for active Antivirus software.
|
||||||
|
dnl ===================================================================
|
||||||
|
|
||||||
|
if test $_os = WINNT ; then
|
||||||
|
AC_MSG_CHECKING([for active Antivirus software])
|
||||||
|
ANTIVIRUS_LIST=`cscript.exe //Nologo $SRC_ROOT/antivirusDetection.vbs`
|
||||||
|
if [ [ "$ANTIVIRUS_LIST" != "NOT_FOUND" ] ]; then
|
||||||
|
AC_MSG_RESULT([found])
|
||||||
|
add_warning "To speed up builds and avoid failures in unit tests, it is highly recommended that you exclude the build directories associated with LibreOffice in the following Antivirus software: $ANTIVIRUS_LIST"
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT([not found])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
dnl ===================================================================
|
dnl ===================================================================
|
||||||
dnl Setting up the environment.
|
dnl Setting up the environment.
|
||||||
dnl ===================================================================
|
dnl ===================================================================
|
||||||
|
Reference in New Issue
Block a user