Flawfinder version 2.0.10, (C) 2001-2019 David A. Wheeler.
Number of rules (primarily dangerous function names) in C/C++ ruleset: 223
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapconfigwidget.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapconfigwidget.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapconnection.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapconnection.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapcontrol.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapcontrol.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapdefs.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapdn.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapdn.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapobject.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapobject.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapoperation.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapoperation.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapsearch.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapsearch.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapserver.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapserver.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapurl.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapurl.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldif.cpp
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldif.h
Examining data/veyon-4.4.2+repack1/3rdparty/kldap/src/w32-ldap-help.h
Examining data/veyon-4.4.2+repack1/cli/src/main.cpp
Examining data/veyon-4.4.2+repack1/configurator/src/AccessControlPage.cpp
Examining data/veyon-4.4.2+repack1/configurator/src/AccessControlPage.h
Examining data/veyon-4.4.2+repack1/configurator/src/AccessControlRuleEditDialog.cpp
Examining data/veyon-4.4.2+repack1/configurator/src/AccessControlRuleEditDialog.h
Examining data/veyon-4.4.2+repack1/configurator/src/AccessControlRuleListModel.cpp
Examining data/veyon-4.4.2+repack1/configurator/src/AccessControlRuleListModel.h
Examining data/veyon-4.4.2+repack1/configurator/src/AccessControlRulesTestDialog.cpp
Examining data/veyon-4.4.2+repack1/configurator/src/AccessControlRulesTestDialog.h
Examining data/veyon-4.4.2+repack1/configurator/src/GeneralConfigurationPage.cpp
Examining data/veyon-4.4.2+repack1/configurator/src/GeneralConfigurationPage.h
Examining data/veyon-4.4.2+repack1/configurator/src/main.cpp
Examining data/veyon-4.4.2+repack1/configurator/src/MainWindow.cpp
Examining data/veyon-4.4.2+repack1/configurator/src/MainWindow.h
Examining data/veyon-4.4.2+repack1/configurator/src/MasterConfigurationPage.cpp
Examining data/veyon-4.4.2+repack1/configurator/src/MasterConfigurationPage.h
Examining data/veyon-4.4.2+repack1/configurator/src/ServiceConfigurationPage.cpp
Examining data/veyon-4.4.2+repack1/configurator/src/ServiceConfigurationPage.h
Examining data/veyon-4.4.2+repack1/core/include/AboutDialog.h
Examining data/veyon-4.4.2+repack1/core/include/AccessControlProvider.h
Examining data/veyon-4.4.2+repack1/core/include/AccessControlRule.h
Examining data/veyon-4.4.2+repack1/core/include/AuthenticationCredentials.h
Examining data/veyon-4.4.2+repack1/core/include/AuthenticationProxy.h
Examining data/veyon-4.4.2+repack1/core/include/BuiltinFeatures.h
Examining data/veyon-4.4.2+repack1/core/include/CommandLineIO.h
Examining data/veyon-4.4.2+repack1/core/include/CommandLinePluginInterface.h
Examining data/veyon-4.4.2+repack1/core/include/ComputerControlInterface.h
Examining data/veyon-4.4.2+repack1/core/include/Computer.h
Examining data/veyon-4.4.2+repack1/core/include/Configuration/JsonStore.h
Examining data/veyon-4.4.2+repack1/core/include/Configuration/LocalStore.h
Examining data/veyon-4.4.2+repack1/core/include/Configuration/Object.h
Examining data/veyon-4.4.2+repack1/core/include/Configuration/Password.h
Examining data/veyon-4.4.2+repack1/core/include/Configuration/Property.h
Examining data/veyon-4.4.2+repack1/core/include/Configuration/Proxy.h
Examining data/veyon-4.4.2+repack1/core/include/Configuration/Store.h
Examining data/veyon-4.4.2+repack1/core/include/Configuration/UiMapping.h
Examining data/veyon-4.4.2+repack1/core/include/ConfigurationManager.h
Examining data/veyon-4.4.2+repack1/core/include/ConfigurationPage.h
Examining data/veyon-4.4.2+repack1/core/include/ConfigurationPagePluginInterface.h
Examining data/veyon-4.4.2+repack1/core/include/Cotire.h
Examining data/veyon-4.4.2+repack1/core/include/CryptoCore.h
Examining data/veyon-4.4.2+repack1/core/include/DesktopAccessDialog.h
Examining data/veyon-4.4.2+repack1/core/include/EnumHelper.h
Examining data/veyon-4.4.2+repack1/core/include/FeatureControl.h
Examining data/veyon-4.4.2+repack1/core/include/Feature.h
Examining data/veyon-4.4.2+repack1/core/include/FeatureManager.h
Examining data/veyon-4.4.2+repack1/core/include/FeatureMessage.h
Examining data/veyon-4.4.2+repack1/core/include/FeatureProviderInterface.h
Examining data/veyon-4.4.2+repack1/core/include/FeatureWorkerManager.h
Examining data/veyon-4.4.2+repack1/core/include/FileSystemBrowser.h
Examining data/veyon-4.4.2+repack1/core/include/Filesystem.h
Examining data/veyon-4.4.2+repack1/core/include/HashList.h
Examining data/veyon-4.4.2+repack1/core/include/HostAddress.h
Examining data/veyon-4.4.2+repack1/core/include/KeyboardShortcutTrapper.h
Examining data/veyon-4.4.2+repack1/core/include/LockWidget.h
Examining data/veyon-4.4.2+repack1/core/include/Logger.h
Examining data/veyon-4.4.2+repack1/core/include/MessageContext.h
Examining data/veyon-4.4.2+repack1/core/include/MonitoringMode.h
Examining data/veyon-4.4.2+repack1/core/include/NetworkObjectDirectory.h
Examining data/veyon-4.4.2+repack1/core/include/NetworkObjectDirectoryManager.h
Examining data/veyon-4.4.2+repack1/core/include/NetworkObjectDirectoryPluginInterface.h
Examining data/veyon-4.4.2+repack1/core/include/NetworkObject.h
Examining data/veyon-4.4.2+repack1/core/include/NetworkObjectModel.h
Examining data/veyon-4.4.2+repack1/core/include/ObjectManager.h
Examining data/veyon-4.4.2+repack1/core/include/PasswordDialog.h
Examining data/veyon-4.4.2+repack1/core/include/PlatformCoreFunctions.h
Examining data/veyon-4.4.2+repack1/core/include/PlatformFilesystemFunctions.h
Examining data/veyon-4.4.2+repack1/core/include/PlatformInputDeviceFunctions.h
Examining data/veyon-4.4.2+repack1/core/include/PlatformNetworkFunctions.h
Examining data/veyon-4.4.2+repack1/core/include/PlatformPluginInterface.h
Examining data/veyon-4.4.2+repack1/core/include/PlatformPluginManager.h
Examining data/veyon-4.4.2+repack1/core/include/PlatformServiceCore.h
Examining data/veyon-4.4.2+repack1/core/include/PlatformServiceFunctions.h
Examining data/veyon-4.4.2+repack1/core/include/PlatformSessionFunctions.h
Examining data/veyon-4.4.2+repack1/core/include/PlatformUserFunctions.h
Examining data/veyon-4.4.2+repack1/core/include/Plugin.h
Examining data/veyon-4.4.2+repack1/core/include/PluginInterface.h
Examining data/veyon-4.4.2+repack1/core/include/PluginManager.h
Examining data/veyon-4.4.2+repack1/core/include/ProcessHelper.h
Examining data/veyon-4.4.2+repack1/core/include/ProgressWidget.h
Examining data/veyon-4.4.2+repack1/core/include/QtCompat.h
Examining data/veyon-4.4.2+repack1/core/include/RfbVeyonAuth.h
Examining data/veyon-4.4.2+repack1/core/include/Screenshot.h
Examining data/veyon-4.4.2+repack1/core/include/ServiceControl.h
Examining data/veyon-4.4.2+repack1/core/include/SimpleFeatureProvider.h
Examining data/veyon-4.4.2+repack1/core/include/SocketDevice.h
Examining data/veyon-4.4.2+repack1/core/include/SystemTrayIcon.h
Examining data/veyon-4.4.2+repack1/core/include/ToolButton.h
Examining data/veyon-4.4.2+repack1/core/include/TranslationLoader.h
Examining data/veyon-4.4.2+repack1/core/include/UserGroupsBackendInterface.h
Examining data/veyon-4.4.2+repack1/core/include/UserGroupsBackendManager.h
Examining data/veyon-4.4.2+repack1/core/include/VariantArrayMessage.h
Examining data/veyon-4.4.2+repack1/core/include/VariantStream.h
Examining data/veyon-4.4.2+repack1/core/include/VeyonConfiguration.h
Examining data/veyon-4.4.2+repack1/core/include/VeyonConfigurationProperties.h
Examining data/veyon-4.4.2+repack1/core/include/VeyonConnection.h
Examining data/veyon-4.4.2+repack1/core/include/VeyonCore.h
Examining data/veyon-4.4.2+repack1/core/include/VeyonMasterInterface.h
Examining data/veyon-4.4.2+repack1/core/include/VeyonServerInterface.h
Examining data/veyon-4.4.2+repack1/core/include/VeyonServiceControl.h
Examining data/veyon-4.4.2+repack1/core/include/VeyonWorkerInterface.h
Examining data/veyon-4.4.2+repack1/core/include/VncClientProtocol.h
Examining data/veyon-4.4.2+repack1/core/include/VncConnection.h
Examining data/veyon-4.4.2+repack1/core/include/VncEvents.h
Examining data/veyon-4.4.2+repack1/core/include/VncFeatureMessageEvent.h
Examining data/veyon-4.4.2+repack1/core/include/VncServerClient.h
Examining data/veyon-4.4.2+repack1/core/include/VncServerPluginInterface.h
Examining data/veyon-4.4.2+repack1/core/include/VncServerProtocol.h
Examining data/veyon-4.4.2+repack1/core/include/VncView.h
Examining data/veyon-4.4.2+repack1/core/src/AboutDialog.cpp
Examining data/veyon-4.4.2+repack1/core/src/AccessControlProvider.cpp
Examining data/veyon-4.4.2+repack1/core/src/AccessControlRule.cpp
Examining data/veyon-4.4.2+repack1/core/src/AuthenticationCredentials.cpp
Examining data/veyon-4.4.2+repack1/core/src/BuiltinFeatures.cpp
Examining data/veyon-4.4.2+repack1/core/src/CommandLineIO.cpp
Examining data/veyon-4.4.2+repack1/core/src/ComputerControlInterface.cpp
Examining data/veyon-4.4.2+repack1/core/src/Computer.cpp
Examining data/veyon-4.4.2+repack1/core/src/Configuration/JsonStore.cpp
Examining data/veyon-4.4.2+repack1/core/src/Configuration/LocalStore.cpp
Examining data/veyon-4.4.2+repack1/core/src/Configuration/Object.cpp
Examining data/veyon-4.4.2+repack1/core/src/Configuration/Password.cpp
Examining data/veyon-4.4.2+repack1/core/src/Configuration/Proxy.cpp
Examining data/veyon-4.4.2+repack1/core/src/Configuration/UiMapping.cpp
Examining data/veyon-4.4.2+repack1/core/src/Configuration/Property.cpp
Examining data/veyon-4.4.2+repack1/core/src/ConfigurationManager.cpp
Examining data/veyon-4.4.2+repack1/core/src/ConfigurationPage.cpp
Examining data/veyon-4.4.2+repack1/core/src/CryptoCore.cpp
Examining data/veyon-4.4.2+repack1/core/src/d3des.c
Examining data/veyon-4.4.2+repack1/core/src/d3des.h
Examining data/veyon-4.4.2+repack1/core/src/DesktopAccessDialog.cpp
Examining data/veyon-4.4.2+repack1/core/src/FeatureControl.cpp
Examining data/veyon-4.4.2+repack1/core/src/FeatureManager.cpp
Examining data/veyon-4.4.2+repack1/core/src/FeatureMessage.cpp
Examining data/veyon-4.4.2+repack1/core/src/FeatureWorkerManager.cpp
Examining data/veyon-4.4.2+repack1/core/src/FileSystemBrowser.cpp
Examining data/veyon-4.4.2+repack1/core/src/Filesystem.cpp
Examining data/veyon-4.4.2+repack1/core/src/HostAddress.cpp
Examining data/veyon-4.4.2+repack1/core/src/LockWidget.cpp
Examining data/veyon-4.4.2+repack1/core/src/Logger.cpp
Examining data/veyon-4.4.2+repack1/core/src/MonitoringMode.cpp
Examining data/veyon-4.4.2+repack1/core/src/NetworkObject.cpp
Examining data/veyon-4.4.2+repack1/core/src/NetworkObjectDirectory.cpp
Examining data/veyon-4.4.2+repack1/core/src/NetworkObjectDirectoryManager.cpp
Examining data/veyon-4.4.2+repack1/core/src/PasswordDialog.cpp
Examining data/veyon-4.4.2+repack1/core/src/PlatformPluginManager.cpp
Examining data/veyon-4.4.2+repack1/core/src/PlatformServiceCore.cpp
Examining data/veyon-4.4.2+repack1/core/src/PluginManager.cpp
Examining data/veyon-4.4.2+repack1/core/src/ProcessHelper.cpp
Examining data/veyon-4.4.2+repack1/core/src/ProgressWidget.cpp
Examining data/veyon-4.4.2+repack1/core/src/QtCompat.cpp
Examining data/veyon-4.4.2+repack1/core/src/Screenshot.cpp
Examining data/veyon-4.4.2+repack1/core/src/ServiceControl.cpp
Examining data/veyon-4.4.2+repack1/core/src/SimpleFeatureProvider.cpp
Examining data/veyon-4.4.2+repack1/core/src/SystemTrayIcon.cpp
Examining data/veyon-4.4.2+repack1/core/src/ToolButton.cpp
Examining data/veyon-4.4.2+repack1/core/src/TranslationLoader.cpp
Examining data/veyon-4.4.2+repack1/core/src/UserGroupsBackendManager.cpp
Examining data/veyon-4.4.2+repack1/core/src/VariantArrayMessage.cpp
Examining data/veyon-4.4.2+repack1/core/src/VariantStream.cpp
Examining data/veyon-4.4.2+repack1/core/src/VeyonConfiguration.cpp
Examining data/veyon-4.4.2+repack1/core/src/VeyonConnection.cpp
Examining data/veyon-4.4.2+repack1/core/src/VeyonCore.cpp
Examining data/veyon-4.4.2+repack1/core/src/VeyonServiceControl.cpp
Examining data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp
Examining data/veyon-4.4.2+repack1/core/src/VncConnection.cpp
Examining data/veyon-4.4.2+repack1/core/src/VncEvents.cpp
Examining data/veyon-4.4.2+repack1/core/src/VncFeatureMessageEvent.cpp
Examining data/veyon-4.4.2+repack1/core/src/VncServerProtocol.cpp
Examining data/veyon-4.4.2+repack1/core/src/VncView.cpp
Examining data/veyon-4.4.2+repack1/master/src/CheckableItemProxyModel.cpp
Examining data/veyon-4.4.2+repack1/master/src/CheckableItemProxyModel.h
Examining data/veyon-4.4.2+repack1/master/src/ComputerControlListModel.cpp
Examining data/veyon-4.4.2+repack1/master/src/ComputerControlListModel.h
Examining data/veyon-4.4.2+repack1/master/src/ComputerManager.cpp
Examining data/veyon-4.4.2+repack1/master/src/ComputerManager.h
Examining data/veyon-4.4.2+repack1/master/src/ComputerMonitoringWidget.cpp
Examining data/veyon-4.4.2+repack1/master/src/ComputerMonitoringWidget.h
Examining data/veyon-4.4.2+repack1/master/src/ComputerSelectPanel.cpp
Examining data/veyon-4.4.2+repack1/master/src/ComputerSelectPanel.h
Examining data/veyon-4.4.2+repack1/master/src/ComputerSortFilterProxyModel.cpp
Examining data/veyon-4.4.2+repack1/master/src/ComputerSortFilterProxyModel.h
Examining data/veyon-4.4.2+repack1/master/src/DocumentationFigureCreator.cpp
Examining data/veyon-4.4.2+repack1/master/src/DocumentationFigureCreator.h
Examining data/veyon-4.4.2+repack1/master/src/FlexibleListView.cpp
Examining data/veyon-4.4.2+repack1/master/src/FlexibleListView.h
Examining data/veyon-4.4.2+repack1/master/src/kitemmodels_debug.h
Examining data/veyon-4.4.2+repack1/master/src/kitemmodels_export.h
Examining data/veyon-4.4.2+repack1/master/src/KItemModelsIntegration.cpp
Examining data/veyon-4.4.2+repack1/master/src/LocationDialog.cpp
Examining data/veyon-4.4.2+repack1/master/src/LocationDialog.h
Examining data/veyon-4.4.2+repack1/master/src/main.cpp
Examining data/veyon-4.4.2+repack1/master/src/MainToolBar.cpp
Examining data/veyon-4.4.2+repack1/master/src/MainToolBar.h
Examining data/veyon-4.4.2+repack1/master/src/MainWindow.cpp
Examining data/veyon-4.4.2+repack1/master/src/MainWindow.h
Examining data/veyon-4.4.2+repack1/master/src/NetworkObjectFilterProxyModel.cpp
Examining data/veyon-4.4.2+repack1/master/src/NetworkObjectFilterProxyModel.h
Examining data/veyon-4.4.2+repack1/master/src/NetworkObjectOverlayDataModel.cpp
Examining data/veyon-4.4.2+repack1/master/src/NetworkObjectTreeModel.cpp
Examining data/veyon-4.4.2+repack1/master/src/NetworkObjectTreeModel.h
Examining data/veyon-4.4.2+repack1/master/src/RecursiveFilterProxyModel.cpp
Examining data/veyon-4.4.2+repack1/master/src/ScreenshotManagementPanel.cpp
Examining data/veyon-4.4.2+repack1/master/src/ScreenshotManagementPanel.h
Examining data/veyon-4.4.2+repack1/master/src/UserConfig.cpp
Examining data/veyon-4.4.2+repack1/master/src/UserConfig.h
Examining data/veyon-4.4.2+repack1/master/src/VeyonMaster.cpp
Examining data/veyon-4.4.2+repack1/master/src/VeyonMaster.h
Examining data/veyon-4.4.2+repack1/master/src/NetworkObjectOverlayDataModel.h
Examining data/veyon-4.4.2+repack1/master/src/RecursiveFilterProxyModel.h
Examining data/veyon-4.4.2+repack1/plugins/authkeys/AuthKeysConfigurationPage.cpp
Examining data/veyon-4.4.2+repack1/plugins/authkeys/AuthKeysConfigurationPage.h
Examining data/veyon-4.4.2+repack1/plugins/authkeys/AuthKeysManager.cpp
Examining data/veyon-4.4.2+repack1/plugins/authkeys/AuthKeysManager.h
Examining data/veyon-4.4.2+repack1/plugins/authkeys/AuthKeysPlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/authkeys/AuthKeysPlugin.h
Examining data/veyon-4.4.2+repack1/plugins/authkeys/AuthKeysTableModel.cpp
Examining data/veyon-4.4.2+repack1/plugins/authkeys/AuthKeysTableModel.h
Examining data/veyon-4.4.2+repack1/plugins/builtindirectory/BuiltinDirectoryConfiguration.h
Examining data/veyon-4.4.2+repack1/plugins/builtindirectory/BuiltinDirectoryConfigurationPage.cpp
Examining data/veyon-4.4.2+repack1/plugins/builtindirectory/BuiltinDirectoryConfigurationPage.h
Examining data/veyon-4.4.2+repack1/plugins/builtindirectory/BuiltinDirectory.cpp
Examining data/veyon-4.4.2+repack1/plugins/builtindirectory/BuiltinDirectory.h
Examining data/veyon-4.4.2+repack1/plugins/builtindirectory/BuiltinDirectoryPlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/builtindirectory/BuiltinDirectoryPlugin.h
Examining data/veyon-4.4.2+repack1/plugins/config/ConfigCommandLinePlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/config/ConfigCommandLinePlugin.h
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoClient.cpp
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoClient.h
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoConfiguration.h
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoConfigurationPage.cpp
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoConfigurationPage.h
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoFeaturePlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoFeaturePlugin.h
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoServerConnection.cpp
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoServerConnection.h
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoServer.cpp
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoServer.h
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoServerProtocol.cpp
Examining data/veyon-4.4.2+repack1/plugins/demo/DemoServerProtocol.h
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/DesktopServiceObject.cpp
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/DesktopServiceObject.h
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/DesktopServicesConfiguration.h
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/DesktopServicesConfigurationPage.cpp
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/DesktopServicesConfigurationPage.h
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/DesktopServicesFeaturePlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/DesktopServicesFeaturePlugin.h
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/OpenWebsiteDialog.cpp
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/OpenWebsiteDialog.h
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/RunProgramDialog.cpp
Examining data/veyon-4.4.2+repack1/plugins/desktopservices/RunProgramDialog.h
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileReadThread.cpp
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileReadThread.h
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileTransferController.cpp
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileTransferController.h
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileTransferDialog.cpp
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileTransferDialog.h
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileTransferListModel.cpp
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileTransferListModel.h
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileTransferPlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileTransferPlugin.h
Examining data/veyon-4.4.2+repack1/plugins/filetransfer/FileTransferUserConfiguration.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapBrowseDialog.cpp
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapBrowseDialog.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapBrowseModel.cpp
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapBrowseModel.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapClient.cpp
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapClient.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapCommon.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapConfiguration.cpp
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapConfiguration.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapConfigurationPage.cpp
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapConfigurationPage.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapDirectory.cpp
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapDirectory.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapNetworkObjectDirectory.cpp
Examining data/veyon-4.4.2+repack1/plugins/ldap/common/LdapNetworkObjectDirectory.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/kldap/kldap_export.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/kldap/KLdapIntegration.cpp
Examining data/veyon-4.4.2+repack1/plugins/ldap/kldap/klocalizedstring.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/kldap/ldap_debug.h
Examining data/veyon-4.4.2+repack1/plugins/ldap/LdapPlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/ldap/LdapPlugin.h
Examining data/veyon-4.4.2+repack1/plugins/platform/common/LogonHelper.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/common/LogonHelper.h
Examining data/veyon-4.4.2+repack1/plugins/platform/common/PersistentLogonCredentials.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/common/PersistentLogonCredentials.h
Examining data/veyon-4.4.2+repack1/plugins/platform/common/ServiceDataManager.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/common/ServiceDataManager.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/auth-helper/VeyonAuthHelper.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxCoreFunctions.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxDesktopIntegration.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxFilesystemFunctions.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxFilesystemFunctions.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxInputDeviceFunctions.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxInputDeviceFunctions.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxKeyboardInput.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxKeyboardInput.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxKeyboardShortcutTrapper.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxNetworkFunctions.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxNetworkFunctions.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxPlatformConfiguration.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxPlatformConfigurationPage.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxPlatformConfigurationPage.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxPlatformPlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxPlatformPlugin.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxServiceCore.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxServiceCore.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxServiceFunctions.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxServiceFunctions.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxSessionFunctions.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxSessionFunctions.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxUserFunctions.cpp
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxUserFunctions.h
Examining data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxCoreFunctions.cpp
Examining data/veyon-4.4.2+repack1/plugins/powercontrol/PowerControlFeaturePlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/powercontrol/PowerControlFeaturePlugin.h
Examining data/veyon-4.4.2+repack1/plugins/powercontrol/PowerDownTimeInputDialog.cpp
Examining data/veyon-4.4.2+repack1/plugins/powercontrol/PowerDownTimeInputDialog.h
Examining data/veyon-4.4.2+repack1/plugins/remoteaccess/RemoteAccessFeaturePlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/remoteaccess/RemoteAccessFeaturePlugin.h
Examining data/veyon-4.4.2+repack1/plugins/remoteaccess/RemoteAccessWidget.cpp
Examining data/veyon-4.4.2+repack1/plugins/remoteaccess/RemoteAccessWidget.h
Examining data/veyon-4.4.2+repack1/plugins/screenlock/ScreenLockFeaturePlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/screenlock/ScreenLockFeaturePlugin.h
Examining data/veyon-4.4.2+repack1/plugins/screenshot/ScreenshotFeaturePlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/screenshot/ScreenshotFeaturePlugin.h
Examining data/veyon-4.4.2+repack1/plugins/servicecontrol/ServiceControlPlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/servicecontrol/ServiceControlPlugin.h
Examining data/veyon-4.4.2+repack1/plugins/shell/ShellCommandLinePlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/shell/ShellCommandLinePlugin.h
Examining data/veyon-4.4.2+repack1/plugins/systemusergroups/SystemUserGroupsPlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/systemusergroups/SystemUserGroupsPlugin.h
Examining data/veyon-4.4.2+repack1/plugins/testing/TestingCommandLinePlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/testing/TestingCommandLinePlugin.h
Examining data/veyon-4.4.2+repack1/plugins/textmessage/TextMessageDialog.cpp
Examining data/veyon-4.4.2+repack1/plugins/textmessage/TextMessageDialog.h
Examining data/veyon-4.4.2+repack1/plugins/textmessage/TextMessageFeaturePlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/textmessage/TextMessageFeaturePlugin.h
Examining data/veyon-4.4.2+repack1/plugins/usersessioncontrol/UserLoginDialog.cpp
Examining data/veyon-4.4.2+repack1/plugins/usersessioncontrol/UserLoginDialog.h
Examining data/veyon-4.4.2+repack1/plugins/usersessioncontrol/UserSessionControlPlugin.cpp
Examining data/veyon-4.4.2+repack1/plugins/usersessioncontrol/UserSessionControlPlugin.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/external/ExternalVncServerConfiguration.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/external/ExternalVncServerConfigurationWidget.cpp
Examining data/veyon-4.4.2+repack1/plugins/vncserver/external/ExternalVncServerConfigurationWidget.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/external/ExternalVncServer.cpp
Examining data/veyon-4.4.2+repack1/plugins/vncserver/external/ExternalVncServer.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/BuiltinUltraVncServer.cpp
Examining data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/BuiltinUltraVncServer.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/LogoffEventFilter.cpp
Examining data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/LogoffEventFilter.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/UltraVncConfiguration.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/UltraVncConfigurationWidget.cpp
Examining data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/UltraVncConfigurationWidget.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/ultravnc.cpp
Examining data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/vncntlm.cpp
Examining data/veyon-4.4.2+repack1/plugins/vncserver/x11vnc-builtin/BuiltinX11VncServer.cpp
Examining data/veyon-4.4.2+repack1/plugins/vncserver/x11vnc-builtin/BuiltinX11VncServer.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/x11vnc-builtin/X11VncConfiguration.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/x11vnc-builtin/X11VncConfigurationWidget.cpp
Examining data/veyon-4.4.2+repack1/plugins/vncserver/x11vnc-builtin/X11VncConfigurationWidget.h
Examining data/veyon-4.4.2+repack1/plugins/vncserver/x11vnc-builtin/x11vnc-veyon.c
Examining data/veyon-4.4.2+repack1/server/src/ComputerControlClient.cpp
Examining data/veyon-4.4.2+repack1/server/src/ComputerControlClient.h
Examining data/veyon-4.4.2+repack1/server/src/ComputerControlServer.cpp
Examining data/veyon-4.4.2+repack1/server/src/ComputerControlServer.h
Examining data/veyon-4.4.2+repack1/server/src/main.cpp
Examining data/veyon-4.4.2+repack1/server/src/ServerAccessControlManager.cpp
Examining data/veyon-4.4.2+repack1/server/src/ServerAccessControlManager.h
Examining data/veyon-4.4.2+repack1/server/src/ServerAuthenticationManager.cpp
Examining data/veyon-4.4.2+repack1/server/src/ServerAuthenticationManager.h
Examining data/veyon-4.4.2+repack1/server/src/VeyonServerProtocol.cpp
Examining data/veyon-4.4.2+repack1/server/src/VeyonServerProtocol.h
Examining data/veyon-4.4.2+repack1/server/src/VncProxyConnection.cpp
Examining data/veyon-4.4.2+repack1/server/src/VncProxyConnectionFactory.h
Examining data/veyon-4.4.2+repack1/server/src/VncProxyConnection.h
Examining data/veyon-4.4.2+repack1/server/src/VncProxyServer.cpp
Examining data/veyon-4.4.2+repack1/server/src/VncProxyServer.h
Examining data/veyon-4.4.2+repack1/server/src/VncServer.cpp
Examining data/veyon-4.4.2+repack1/server/src/VncServer.h
Examining data/veyon-4.4.2+repack1/service/src/main.cpp
Examining data/veyon-4.4.2+repack1/worker/src/FeatureWorkerManagerConnection.cpp
Examining data/veyon-4.4.2+repack1/worker/src/FeatureWorkerManagerConnection.h
Examining data/veyon-4.4.2+repack1/worker/src/main.cpp
Examining data/veyon-4.4.2+repack1/worker/src/VeyonWorker.cpp
Examining data/veyon-4.4.2+repack1/worker/src/VeyonWorker.h

FINAL RESULTS:

data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.cpp:127:10:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
int Ber::printf(QString format, ...)
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.cpp:232:10:  [4] (buffer) scanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function. If the scanf format is influenceable by an
  attacker, it's exploitable.
int Ber::scanf(QString format, ...)
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.cpp:441:10:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
int Ber::printf(QString format, ...)
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.cpp:448:10:  [4] (buffer) scanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function. If the scanf format is influenceable by an
  attacker, it's exploitable.
int Ber::scanf(QString format, ...)
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.h:118:9:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    int printf(QString format, ...); // Passing by-value since it's used by va_start
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.h:119:9:  [4] (buffer) scanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function. If the scanf format is influenceable by an
  attacker, it's exploitable.
    int scanf(QString format, ...);
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapcontrol.cpp:126:13:  [4] (buffer) scanf:
  The scanf() family's %s operation, without a limit specification, permits
  buffer overflows (CWE-120, CWE-20). Specify a limit to %s, or use a
  different input function. If the scanf format is influenceable by an
  attacker, it's exploitable.
    if (ber.scanf(QStringLiteral("{iO}"), &size, &cookie) == -1) {
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapcontrol.cpp:138:9:  [4] (format) printf:
  If format strings can be influenced by an attacker, they can be exploited
  (CWE-134). Use a constant for the format specification.
    ber.printf(QStringLiteral("{iO}"), pagesize, &cookie);
data/veyon-4.4.2+repack1/core/src/VncConnection.cpp:139:2:  [4] (format) vsnprintf:
  If format strings can be influenced by an attacker, they can be exploited,
  and note that sprintf variations do not always \0-terminate (CWE-134). Use
  a constant for the format specification.
	vsnprintf( message, sizeof(message), format, args );
data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/BuiltinUltraVncServer.cpp:203:17:  [3] (misc) LoadLibrary:
  Ensure that the full path to the library is specified, or current directory
  may be used (CWE-829, CWE-20). Use registry entry or GetWindowsDirectory to
  find library path, if you aren't already.
	auto hUser32 = LoadLibrary( "user32.dll" );
data/veyon-4.4.2+repack1/plugins/vncserver/ultravnc-builtin/BuiltinUltraVncServer.cpp:204:17:  [3] (misc) LoadLibrary:
  Ensure that the full path to the library is specified, or current directory
  may be used (CWE-829, CWE-20). Use registry entry or GetWindowsDirectory to
  find library path, if you aren't already.
	auto hSHCore = LoadLibrary( "SHCore.dll" );
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.cpp:129:5:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    char fmt[2];
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.cpp:234:5:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
    char fmt[2];
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ber.cpp:314:13:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
            char buf[255];
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapoperation.cpp:562:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(berval->bv_val, value->data(), vallen);
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapoperation.cpp:604:9:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
        memcpy(ctrl->ldctl_value.bv_val, value.data(), vallen);
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapoperation.cpp:1030:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(berval->bv_val, value.data(), vallen);
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapoperation.cpp:1059:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(berval->bv_val, value.data(), vallen);
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapoperation.cpp:1087:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(berval->bv_val, data.data(), vallen);
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapoperation.cpp:1123:5:  [2] (buffer) memcpy:
  Does not check for buffer overflows when copying to destination (CWE-120).
  Make sure destination can always hold the source data.
    memcpy(berval->bv_val, data.data(), vallen);
data/veyon-4.4.2+repack1/core/src/Configuration/JsonStore.cpp:82:16:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	if( !jsonFile.open( QFile::ReadOnly ) )
data/veyon-4.4.2+repack1/core/src/Configuration/JsonStore.cpp:135:15:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	if( !outfile.open( QIODevice::WriteOnly | QIODevice::Truncate ) )
data/veyon-4.4.2+repack1/core/src/Configuration/JsonStore.cpp:149:10:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	outfile.open( QFile::WriteOnly | QFile::Append );
data/veyon-4.4.2+repack1/core/src/Configuration/JsonStore.cpp:162:10:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	outfile.open( QIODevice::WriteOnly | QIODevice::Truncate );
data/veyon-4.4.2+repack1/core/src/VncConnection.cpp:137:2:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
	char message[MaxMessageLength];
data/veyon-4.4.2+repack1/core/src/d3des.c:67:23:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
static const unsigned char pc1[56] = {
data/veyon-4.4.2+repack1/core/src/d3des.c:73:23:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
static const unsigned char totrot[16] = {
data/veyon-4.4.2+repack1/core/src/d3des.c:76:23:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
static const unsigned char pc2[48] = {
data/veyon-4.4.2+repack1/core/src/d3des.c:86:11:  [2] (buffer) char:
  Statically-sized arrays can be improperly restricted, leading to potential
  overflows or other issues (CWE-119!/CWE-120). Perform bounds checking, use
  functions that limit length, or ensure that the size is larger than the
  maximum possible length.
	unsigned char pc1m[56], pcr[56];
data/veyon-4.4.2+repack1/plugins/builtindirectory/BuiltinDirectoryPlugin.cpp:331:21:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	else if( inputFile.open( QFile::ReadOnly | QFile::Text ) == false )
data/veyon-4.4.2+repack1/plugins/filetransfer/FileReadThread.cpp:58:26:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	if( QFile( m_fileName ).open( QFile::ReadOnly ) == false )
data/veyon-4.4.2+repack1/plugins/filetransfer/FileReadThread.cpp:65:11:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
		m_file->open( QFile::ReadOnly );
data/veyon-4.4.2+repack1/plugins/platform/common/PersistentLogonCredentials.cpp:48:22:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	if( logonDataBuffer.open( QBuffer::ReadOnly ) == false )
data/veyon-4.4.2+repack1/plugins/platform/common/PersistentLogonCredentials.cpp:66:22:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	if( logonDataBuffer.open( QBuffer::WriteOnly ) == false )
data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxFilesystemFunctions.cpp:160:11:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	int fd = open( file->fileName().toUtf8().constData(), flags, fileMode );
data/veyon-4.4.2+repack1/plugins/platform/linux/LinuxFilesystemFunctions.cpp:184:15:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	return file->open( fd, openMode, QFileDevice::AutoCloseHandle );
data/veyon-4.4.2+repack1/plugins/platform/linux/auth-helper/VeyonAuthHelper.cpp:74:8:  [2] (misc) open:
  Check when opening files - can an attacker redirect it (via symlinks),
  force the opening of special file type (e.g., device files), move things
  around to create a race condition, control its ancestors, or change its
  contents? (CWE-362).
	stdIn.open( 0, QFile::ReadOnly | QFile::Unbuffered );
data/veyon-4.4.2+repack1/3rdparty/kldap/src/ldapoperation.cpp:234:29:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
            interact->len = strlen((const char *)interact->result);
data/veyon-4.4.2+repack1/core/src/VeyonConnection.cpp:176:30:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	int authTypeCount = message.read().toInt();
data/veyon-4.4.2+repack1/core/src/VeyonConnection.cpp:183:72:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		authTypes.append( QVariantHelper<RfbVeyonAuth::Type>::value( message.read() ) );
data/veyon-4.4.2+repack1/core/src/VeyonConnection.cpp:244:51:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
			const auto challenge = challengeReceiveMessage.read().toByteArray();
data/veyon-4.4.2+repack1/core/src/VeyonConnection.cpp:274:86:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		CryptoCore::PublicKey publicKey = CryptoCore::PublicKey::fromPEM( publicKeyMessage.read().toString() );
data/veyon-4.4.2+repack1/core/src/VeyonCore.cpp:368:50:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			if (info.indexOf(operator_call) == pos - (int)strlen(operator_call))
data/veyon-4.4.2+repack1/core/src/VeyonCore.cpp:391:50:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			if (info.indexOf(operator_call) == pos - (int)strlen(operator_call) + 1)
data/veyon-4.4.2+repack1/core/src/VeyonCore.cpp:395:54:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			if (info.indexOf(operator_lessThan) == pos - (int)strlen(operator_lessThan) + 1)
data/veyon-4.4.2+repack1/core/src/VeyonCore.cpp:399:57:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			if (info.indexOf(operator_greaterThan) == pos - (int)strlen(operator_greaterThan) + 1)
data/veyon-4.4.2+repack1/core/src/VeyonCore.cpp:403:30:  [1] (buffer) strlen:
  Does not handle strings that are not \0-terminated; if given one it may
  perform an over-read (it could cause a crash if unprotected) (CWE-126).
			int operatorLength = (int)strlen(operator_lessThanEqual);
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:233:35:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		const auto protocol = m_socket->read( sz_rfbProtocolVersionMsg );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:273:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		m_socket->read( reinterpret_cast<char *>( &securityTypeCount ), sizeof(securityTypeCount) );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:283:43:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		const auto securityTypeList = m_socket->read( securityTypeCount );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:319:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		m_socket->read( reinterpret_cast<char *>( challenge ), CHALLENGESIZE );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:341:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		m_socket->read( reinterpret_cast<char *>( &authResult ), sizeof(authResult) );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:391:36:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
			m_serverInitMessage = m_socket->read( sz_rfbServerInitMsg + nameLength );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:417:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	if( buffer.read( reinterpret_cast<char *>( &message ), sz_rfbFramebufferUpdateMsg ) != sz_rfbFramebufferUpdateMsg )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:429:14:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		if( buffer.read( reinterpret_cast<char *>( &rectHeader ), sz_rfbFramebufferUpdateRectHeader ) != sz_rfbFramebufferUpdateRectHeader )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:530:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	auto message = m_socket->read( size );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:559:14:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
				( buffer.read( sz_rfbXCursorColors ).size() == sz_rfbXCursorColors &&
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:560:14:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
				  buffer.read( 2 * bytesPerRow * height ).size() == static_cast<int>( 2 * bytesPerRow * height ) );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:564:14:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
				( buffer.read( width * height * bytesPerPixel ).size() == static_cast<int>( width * height * bytesPerPixel ) &&
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:565:14:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
				  buffer.read( bytesPerRow * height ).size() == static_cast<int>( bytesPerRow * height ) );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:568:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		return buffer.read( sz_rfbSupportedMessages ).size() == sz_rfbSupportedMessages;
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:573:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		return buffer.read( width ).size() == static_cast<int>( width );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:576:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		return buffer.read( width * height * bytesPerPixel ).size() == static_cast<int>( width * height * bytesPerPixel );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:579:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		return buffer.read( sz_rfbCopyRect ).size() == sz_rfbCopyRect;
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:620:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	if( buffer.read( reinterpret_cast<char *>( &hdr ), sz_rfbRREHeader ) != sz_rfbRREHeader )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:628:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	return buffer.read( totalDataSize ).size() == totalDataSize;
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:637:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	if( buffer.read( reinterpret_cast<char *>( &hdr ), sz_rfbRREHeader ) != sz_rfbRREHeader )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:645:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	return buffer.read( totalDataSize ).size() == totalDataSize;
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:675:15:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
			if( buffer.read( reinterpret_cast<char *>( &subEncoding ), 1 ) != 1 )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:683:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
				if( buffer.read( dataSize ).size() != dataSize )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:692:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
				if( buffer.read( bytesPerPixel ).size() != static_cast<int>( bytesPerPixel ) )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:700:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
				if( buffer.read( bytesPerPixel ).size() != static_cast<int>( bytesPerPixel ) )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:712:15:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
			if( buffer.read( reinterpret_cast<char *>( &nSubrects ), 1 ) != 1 )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:728:15:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
			if( buffer.read( subRectDataSize ).size() != subRectDataSize )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:744:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	if( buffer.read( reinterpret_cast<char *>( &hdr ), sz_rfbZlibHeader ) != sz_rfbZlibHeader )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:751:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	return buffer.read( n ).size() == static_cast<int>( n );
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:760:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	if( buffer.read( reinterpret_cast<char *>( &hdr ), sz_rfbZRLEHeader ) != sz_rfbZRLEHeader )
data/veyon-4.4.2+repack1/core/src/VncClientProtocol.cpp:767:16:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	return buffer.read( n ).size() == static_cast<int>( n );
data/veyon-4.4.2+repack1/core/src/VncServerProtocol.cpp:71:25:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool VncServerProtocol::read()
data/veyon-4.4.2+repack1/core/src/VncServerProtocol.cpp:118:35:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		const auto protocol = m_socket->read( sz_rfbProtocolVersionMsg );
data/veyon-4.4.2+repack1/core/src/VncServerProtocol.cpp:163:17:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		if( m_socket->read( &chosenSecurityType, sizeof(chosenSecurityType) ) != sizeof(chosenSecurityType) ||
data/veyon-4.4.2+repack1/core/src/VncServerProtocol.cpp:205:82:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		const auto chosenAuthType = QVariantHelper<RfbVeyonAuth::Type>::value( message.read() );
data/veyon-4.4.2+repack1/core/src/VncServerProtocol.cpp:222:33:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		const auto username = message.read().toString();
data/veyon-4.4.2+repack1/core/src/VncServerProtocol.cpp:318:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		m_socket->read( sz_rfbClientInitMsg );
data/veyon-4.4.2+repack1/plugins/demo/DemoServer.cpp:153:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		while( m_vncClientProtocol->read() )
data/veyon-4.4.2+repack1/plugins/demo/DemoServerConnection.cpp:73:27:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		while( m_serverProtocol.read() )
data/veyon-4.4.2+repack1/plugins/demo/DemoServerConnection.cpp:111:23:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
					return m_socket->read( totalSize ).size() == totalSize;
data/veyon-4.4.2+repack1/plugins/demo/DemoServerConnection.cpp:131:13:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		m_socket->read( m_rfbClientToServerMessageSizes[messageType] );
data/veyon-4.4.2+repack1/plugins/demo/DemoServerProtocol.cpp:74:22:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		if( Token( message.read().toByteArray() ) == m_demoAccessToken )
data/veyon-4.4.2+repack1/plugins/filetransfer/FileReadThread.cpp:96:31:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
			const auto chunk = m_file->read( chunkSize );
data/veyon-4.4.2+repack1/plugins/platform/common/LogonHelper.cpp:62:35:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		if( PersistentLogonCredentials::read( &username, &password ) )
data/veyon-4.4.2+repack1/plugins/platform/common/PersistentLogonCredentials.cpp:32:34:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
bool PersistentLogonCredentials::read( QString* username, Password* password )
data/veyon-4.4.2+repack1/plugins/platform/common/PersistentLogonCredentials.cpp:40:39:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	auto logonData = ServiceDataManager::read( ServiceDataManager::serviceDataTokenFromEnvironment() );
data/veyon-4.4.2+repack1/plugins/platform/common/PersistentLogonCredentials.cpp:55:21:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	*username = stream.read().toString();
data/veyon-4.4.2+repack1/plugins/platform/common/PersistentLogonCredentials.cpp:56:62:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	*password = VeyonCore::cryptoCore().decryptPassword( stream.read().toString() );
data/veyon-4.4.2+repack1/plugins/platform/common/PersistentLogonCredentials.h:36:14:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	static bool read( QString* username, Password* password );
data/veyon-4.4.2+repack1/plugins/platform/common/ServiceDataManager.cpp:54:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
QByteArray ServiceDataManager::read( const Token& token )
data/veyon-4.4.2+repack1/plugins/platform/common/ServiceDataManager.cpp:79:18:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	return response.read().toByteArray();
data/veyon-4.4.2+repack1/plugins/platform/common/ServiceDataManager.cpp:176:32:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		const auto token = inMessage.read().toByteArray();
data/veyon-4.4.2+repack1/plugins/platform/common/ServiceDataManager.cpp:184:56:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
		const auto command = static_cast<Command>( inMessage.read().toInt() );
data/veyon-4.4.2+repack1/plugins/platform/common/ServiceDataManager.cpp:188:23:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
			m_data = inMessage.read().toByteArray();
data/veyon-4.4.2+repack1/plugins/platform/common/ServiceDataManager.h:57:20:  [1] (buffer) read:
  Check buffer boundaries if used in a loop including recursive loops
  (CWE-120, CWE-20).
	static QByteArray read( const Token& token );

ANALYSIS SUMMARY:

Hits = 102
Lines analyzed = 57719 in approximately 1.30 seconds (44374 lines/second)
Physical Source Lines of Code (SLOC) = 35240
Hits@level = [0]  31 [1]  65 [2]  26 [3]   2 [4]   9 [5]   0
Hits@level+ = [0+] 133 [1+] 102 [2+]  37 [3+]  11 [4+]   9 [5+]   0
Hits/KSLOC@level+ = [0+] 3.77412 [1+] 2.89444 [2+] 1.04994 [3+] 0.312145 [4+] 0.255392 [5+]   0
Dot directories skipped = 2 (--followdotdir overrides)
Suppressed hits = 40 (use --neverignore to show them)
Minimum risk level = 1
Not every hit is necessarily a security vulnerability.
There may be other security vulnerabilities; review your code!
See 'Secure Programming HOWTO'
(https://dwheeler.com/secure-programs) for more information.