Task #424 - freerdp-3.5.1-2.fc41/scan-results.err
back to task #424download
Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/ainput/client/ainput_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/ainput/server/ainput_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/ainput/server/ainput_main.c: scope_hint: In function ‘ainput_server_close’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/ainput/server/ainput_main.c:352:20: warning[-Wanalyzer-use-after-free]: use after ‘ainput_server_context_free’ of ‘context’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/ainput/server/ainput_main.c:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/ainput/server/ainput_main.c:350:9: note: in expansion of macro ‘WINPR_ASSERT’ # 350| WINPR_ASSERT(ainput); # 351| # 352|-> if (!ainput->externalThread && ainput->thread) # 353| { # 354| SetEvent(ainput->stopEvent); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/ainput/server/ainput_main.c: scope_hint: In function ‘ainput_server_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/ainput/server/ainput_main.c:417:16: warning[-Wanalyzer-malloc-leak]: leak of ‘ainput’ # 415| if (!ainput->buffer) # 416| goto fail; # 417|-> return &ainput->context; # 418| fail: # 419| WINPR_PRAGMA_DIAG_PUSH Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/ainput/server/ainput_main.c:435:1: warning[-Wanalyzer-malloc-leak]: leak of ‘ainput’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/ainput/server/ainput_main.c:350:9: note: in expansion of macro ‘WINPR_ASSERT’ # 433| } # 434| free(ainput); # 435|-> } # 436| # 437| static UINT ainput_process_message(ainput_server* ainput) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/client/alsa/audin_alsa.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/client/audin_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/client/oss/audin_oss.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/client/pulse/audin_pulse.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:550:22: warning[-Wanalyzer-malloc-leak]: leak of ‘audin_server_packet_new(*(audin_server *)context.log, 26, 2)’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:614:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:615:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:615:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:547:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:568:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:573:24: note: in expansion of macro ‘ERROR_INVALID_PARAMETER’ # 548| # 549| /* Allocate what we need plus header bytes */ # 550|-> wStream* s = Stream_New(NULL, size + SNDIN_HEADER_SIZE); # 551| if (!s) # 552| { Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c: scope_hint: In function ‘audin_server_packet_send’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:550:22: warning[-Wanalyzer-malloc-leak]: leak of ‘audin_server_packet_new(*(audin_server *)context.log, 4, 1)’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:598:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:547:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:568:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/synch.h:32: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:573:24: note: in expansion of macro ‘ERROR_INVALID_PARAMETER’ # 548| # 549| /* Allocate what we need plus header bytes */ # 550|-> wStream* s = Stream_New(NULL, size + SNDIN_HEADER_SIZE); # 551| if (!s) # 552| { Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:550:22: warning[-Wanalyzer-malloc-leak]: leak of ‘audin_server_packet_new(*(audin_server *)context.log, 4, 7)’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:693:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:694:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:694:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:547:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:568:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:573:24: note: in expansion of macro ‘ERROR_INVALID_PARAMETER’ # 548| # 549| /* Allocate what we need plus header bytes */ # 550|-> wStream* s = Stream_New(NULL, size + SNDIN_HEADER_SIZE); # 551| if (!s) # 552| { Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c: scope_hint: In function ‘audin_server_send_open’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:550:22: warning[-Wanalyzer-malloc-leak]: leak of ‘audin_server_packet_new(*(audin_server *)context.log, 48, 3)’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:642:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:643:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:643:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:547:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ # 548| # 549| /* Allocate what we need plus header bytes */ # 550|-> wStream* s = Stream_New(NULL, size + SNDIN_HEADER_SIZE); # 551| if (!s) # 552| { Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c: scope_hint: In function ‘audin_server_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/server/audin.c:851:16: warning[-Wanalyzer-malloc-leak]: leak of ‘audin’ # 849| audin->context.OpenReply = audin_server_open_reply_default; # 850| # 851|-> return &audin->context; # 852| } # 853| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/client/addin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/client/addin.c: scope_hint: In function ‘freerdp_channels_find_static_entry_in_table’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/client/addin.c:57:32: warning[-Wpedantic]: ISO C forbids conversion of function pointer to object pointer type # 57 | return (void*)pEntry->entry; # | ^ # 55| if (strcmp(pEntry->name, identifier) == 0) # 56| { # 57|-> return (void*)pEntry->entry; # 58| } # 59| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/client/addin.c: scope_hint: In function ‘freerdp_channels_list_dynamic_addins’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/client/addin.c:248:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileUTF8(pszSearchPath, & FindData)’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/client/addin.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/client/addin.c:223:9: note: in expansion of macro ‘CopyMemory’ # 246| } # 247| # 248|-> if (hFind == INVALID_HANDLE_VALUE) # 249| return ppAddins; # 250| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/client/generic_dynvc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/client/cliprdr_format.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/client/cliprdr_format.c: scope_hint: In function ‘cliprdr_filter_format_list’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/client/cliprdr_format.c:59:39: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/client/cliprdr_format.c:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/client/cliprdr_format.c:45:9: note: in expansion of macro ‘WINPR_ASSERT’ # 57| const CLIPRDR_FORMAT* format = &list->formats[x]; # 58| CLIPRDR_FORMAT* cur = &filtered.formats[x]; # 59|-> cur->formatId = format->formatId; # 60| if (format->formatName) # 61| cur->formatName = _strdup(format->formatName); Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/client/cliprdr_format.c:77:47: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/client/cliprdr_format.c:45:9: note: in expansion of macro ‘WINPR_ASSERT’ # 75| strcmp(format->formatName, type_FileContents) == 0) # 76| { # 77|-> cur->formatId = format->formatId; # 78| cur->formatName = _strdup(format->formatName); # 79| wpos++; Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/client/cliprdr_format.c:94:47: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/client/cliprdr_format.c:45:9: note: in expansion of macro ‘WINPR_ASSERT’ # 92| strcmp(format->formatName, type_FileContents) != 0)) # 93| { # 94|-> cur->formatId = format->formatId; # 95| if (format->formatName) # 96| cur->formatName = _strdup(format->formatName); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/client/cliprdr_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/cliprdr_common.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/server/cliprdr_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/server/cliprdr_main.c: scope_hint: In function ‘cliprdr_server_start’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/server/cliprdr_main.c:1388:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(0, 1, 0, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/server/cliprdr_main.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/server/cliprdr_main.c:1374:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/server/cliprdr_main.c:1377:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/server/cliprdr_main.c:1388:36: note: in expansion of macro ‘CreateEvent’ # 1386| } # 1387| # 1388|-> if (!(cliprdr->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL))) # 1389| { # 1390| WLog_ERR(TAG, "CreateEvent failed!"); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/server/cliprdr_main.c:1394:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &cliprdr_server_thread, context, 0, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/server/cliprdr_main.c:1374:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/cliprdr/server/cliprdr_main.c:1377:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1392| } # 1393| # 1394|-> if (!(cliprdr->Thread = CreateThread(NULL, 0, cliprdr_server_thread, (void*)context, 0, NULL))) # 1395| { # 1396| WLog_ERR(TAG, "CreateThread failed!"); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/client/disp_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.c:614:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.c:601:17: note: in expansion of macro ‘WLog_ERR’ # 612| WINPR_PRAGMA_DIAG_PUSH # 613| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 614|-> disp_server_context_free(context); # 615| WINPR_PRAGMA_DIAG_POP # 616| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.c: scope_hint: In function ‘disp_server_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.c:614:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘disp_server_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/channels/disp.h:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/server/disp.h:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.h:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.c:593:17: note: in expansion of macro ‘WLog_ERR’ # 612| WINPR_PRAGMA_DIAG_PUSH # 613| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 614|-> disp_server_context_free(context); # 615| WINPR_PRAGMA_DIAG_POP # 616| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.c: scope_hint: In function ‘disp_server_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.c:624:20: warning[-Wanalyzer-use-after-free]: use after ‘disp_server_context_free’ of ‘context’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/disp/server/disp_main.c:593:17: note: in expansion of macro ‘WLog_ERR’ # 622| return; # 623| # 624|-> if (context->priv) # 625| { # 626| disp_server_close(context); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drdynvc/client/drdynvc_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drdynvc/client/drdynvc_main.c:112:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'listener' # 110| # 111| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of listener # 112|-> return CHANNEL_RC_OK; # 113| } # 114| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drdynvc/client/drdynvc_main.c: scope_hint: In function ‘dvcman_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drdynvc/client/drdynvc_main.c:341:16: warning[-Wanalyzer-malloc-leak]: leak of ‘dvcman’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drdynvc/client/drdynvc_main.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drdynvc/client/drdynvc_main.c:307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drdynvc/client/drdynvc_main.c:311:9: note: in expansion of macro ‘WINPR_ASSERT’ # 339| obj = ArrayList_Object(dvcman->plugins); # 340| obj->fnObjectFree = dvcman_plugin_terminate; # 341|-> return &dvcman->iface; # 342| fail: # 343| dvcman_free(plugin, &dvcman->iface); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drdynvc/client/drdynvc_main.c:574:1: warning[-Wanalyzer-malloc-leak]: leak of ‘dvcman’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drdynvc/client/drdynvc_main.c:564:9: note: in expansion of macro ‘WINPR_ASSERT’ # 572| StreamPool_Free(dvcman->pool); # 573| free(dvcman); # 574|-> } # 575| # 576| /** Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c: scope_hint: In function ‘drive_file_set_fullpath’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:100:28: warning[-Wanalyzer-malloc-leak]: leak of ‘drive_file_combine_fullpath(*file.basepath, Stream_ConstPointer(input), (long unsigned int)(stream_read_u32_le(input, 1) >> 1))’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:41: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:749:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:749:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:749:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘drive_file_set_fullpath’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c: scope_hint: In function ‘drive_file_set_fullpath’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:751:25: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:751:25: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:722:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:37: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:110:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:67:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:36: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:150:24: note: in expansion of macro ‘TRUE’ # 98| size_t length = 0; # 99| # 100|-> if (!base_path || (!path && (PathWCharLength > 0))) # 101| goto fail; # 102| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c: scope_hint: In function ‘drive_file_query_information’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_file.c:558:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileW(*file.fullpath, 0, 4, 0, 3, 128, 0)’ # 556| hFile = CreateFileW(file->fullpath, 0, FILE_SHARE_DELETE, NULL, OPEN_EXISTING, # 557| FILE_ATTRIBUTE_NORMAL, NULL); # 558|-> if (hFile != INVALID_HANDLE_VALUE) # 559| { # 560| status = GetFileInformationByHandle(hFile, &fileInformation); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_main.c: scope_hint: In function ‘drive_process_irp_create’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_main.c:161:16: warning[-Wunused-but-set-variable]: variable ‘allocationSize’ set but not used # 161 | UINT64 allocationSize = 0; # | ^~~~~~~~~~~~~~ # 159| UINT32 CreateOptions = 0; # 160| UINT32 PathLength = 0; # 161|-> UINT64 allocationSize = 0; # 162| const WCHAR* path = NULL; # 163| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_main.c: scope_hint: In function ‘drive_process_irp_silent_ignore’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/drive/client/drive_main.c:582:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used # 582 | UINT32 FsInformationClass = 0; # | ^~~~~~~~~~~~~~~~~~ # 580| static UINT drive_process_irp_silent_ignore(DRIVE_DEVICE* drive, IRP* irp) # 581| { # 582|-> UINT32 FsInformationClass = 0; # 583| # 584| if (!drive || !irp || !irp->output || !irp->Complete) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/echo/server/echo_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/encomsp/client/encomsp_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/encomsp/server/encomsp_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/geometry/client/geometry_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/geometry/client/geometry_main.c:265:11: warning[unix.Malloc]: Potential leak of memory pointed to by 'mappedGeometry' # 263| { # 264| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert ownership mappedGeometry # 265|-> return ERROR_INVALID_DATA; # 266| } # 267| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/location/client/location_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/location/server/location_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/location/server/location_main.c: scope_hint: In function ‘location_server_close’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/location/server/location_main.c:476:22: warning[-Wanalyzer-use-after-free]: use after ‘location_server_context_free’ of ‘context’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/location/server/location_main.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/location/server/location_main.c:474:9: note: in expansion of macro ‘WINPR_ASSERT’ # 474| WINPR_ASSERT(location); # 475| # 476|-> if (!location->externalThread && location->thread) # 477| { # 478| SetEvent(location->stopEvent); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/location/server/location_main.c: scope_hint: In function ‘location_server_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/location/server/location_main.c:614:16: warning[-Wanalyzer-malloc-leak]: leak of ‘location’ # 612| goto fail; # 613| # 614|-> return &location->context; # 615| fail: # 616| WINPR_PRAGMA_DIAG_PUSH Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/location/server/location_main.c:634:1: warning[-Wanalyzer-malloc-leak]: leak of ‘location’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/location/server/location_main.c:474:9: note: in expansion of macro ‘WINPR_ASSERT’ # 632| # 633| free(location); # 634|-> } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/parallel/client/parallel_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/parallel/client/parallel_main.c: scope_hint: In function ‘parallel_process_irp_read’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/parallel/client/parallel_main.c:152:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used # 152 | UINT64 Offset = 0; # | ^~~~~~ # 150| { # 151| UINT32 Length = 0; # 152|-> UINT64 Offset = 0; # 153| ssize_t status = 0; # 154| BYTE* buffer = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/parallel/client/parallel_main.c: scope_hint: In function ‘parallel_process_irp_write’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/parallel/client/parallel_main.c:212:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used # 212 | UINT64 Offset = 0; # | ^~~~~~ # 210| UINT32 len = 0; # 211| UINT32 Length = 0; # 212|-> UINT64 Offset = 0; # 213| ssize_t status = 0; # 214| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/cups/printer_cups.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/cups/printer_cups.c: scope_hint: In function ‘printer_cups_new_printer’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/cups/printer_cups.c:273:1: warning[-Wanalyzer-malloc-leak]: leak of ‘cups_printer’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/cups/printer_cups.c:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/cups/printer_cups.c:257:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/cups/printer_cups.c:267:17: note: in expansion of macro ‘WINPR_ASSERT’ # 271| free(printer->driver); # 272| free(printer); # 273|-> } # 274| # 275| static void printer_cups_add_ref_printer(rdpPrinter* printer) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/cups/printer_cups.c:332:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cups_printer’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/cups/printer_cups.c:331:9: note: in expansion of macro ‘WINPR_ASSERT’ # 330| # 331| WINPR_ASSERT(cups_printer->printer.backend->AddRef); # 332|-> cups_printer->printer.backend->AddRef(cups_printer->printer.backend); # 333| # 334| return &cups_printer->printer; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c: scope_hint: In function ‘printer_write_setting’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:120:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileA(GetCombinedPath(path, name), 1073741824, 0, 0, 2, 128, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/channels/rdpdr.h:36: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:39: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:32:9: note: in definition of macro ‘FREERDP_ENTRY_POINT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:31: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:1130:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:1140:17: note: in expansion of macro ‘WINPR_ASSERT’ # 118| free(abs); # 119| # 120|-> if (file == INVALID_HANDLE_VALUE) # 121| return FALSE; # 122| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c: scope_hint: In function ‘printer_read_setting’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:175:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileA(GetCombinedPath(path, name), 2147483648, 0, 0, 3, 128, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:957:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:958:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:958:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:31: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:973:9: note: in expansion of macro ‘sprintf_s’ # 173| free(abs); # 174| # 175|-> if (file == INVALID_HANDLE_VALUE) # 176| return FALSE; # 177| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c: scope_hint: In function ‘printer_process_irp_write’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:507:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used # 507 | UINT64 Offset = 0; # | ^~~~~~ # 505| { # 506| UINT32 Length = 0; # 507|-> UINT64 Offset = 0; # 508| rdpPrintJob* printjob = NULL; # 509| UINT error = CHANNEL_RC_OK; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c: scope_hint: In function ‘printer_DeviceServiceEntry’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/printer/client/printer_main.c:1106:13: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(*(RDPDR_PRINTER *)pEntryPoints_58(D)->device.DriverName)’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:32:9: note: in definition of macro ‘FREERDP_ENTRY_POINT’ # 1104| } # 1105| # 1106|-> if (!driver && default_backend) # 1107| { # 1108| const char* backend = Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rail/client/client_rails.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rail/client/rail_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rail/client/rail_orders.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rail/rail_common.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rail/server/rail_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rail/server/rail_main.c: scope_hint: In function ‘rail_server_start’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rail/server/rail_main.c:1446:21: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(0, 1, 0, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:32: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rail/server/rail_main.c:21: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rail/server/rail_main.c:1442:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rail/server/rail_main.c:1444:36: note: in expansion of macro ‘CreateEvent’ # 1444| context->priv->stopEvent = CreateEvent(NULL, TRUE, FALSE, NULL); # 1445| # 1446|-> if (!context->priv->stopEvent) # 1447| { # 1448| WLog_ERR(TAG, "CreateEvent failed!"); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdp2tcp/client/rdp2tcp_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/client/devman.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/client/irp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/client/rdpdr_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/client/rdpdr_main.c: scope_hint: In function ‘dummy_irp_response’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/client/rdpdr_main.c:1473:16: warning[-Wunused-but-set-variable]: variable ‘FileId’ set but not used # 1473 | UINT32 FileId = 0; # | ^~~~~~ # 1471| wStream* output = NULL; # 1472| UINT32 DeviceId = 0; # 1473|-> UINT32 FileId = 0; # 1474| UINT32 CompletionId = 0; # 1475| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_close_file’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:229:39: warning[-Wanalyzer-malloc-leak]: leak of ‘irp’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_close_file’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3186:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3187:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3188:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3188:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3188:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:183:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2297:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2300:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:673:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:674:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:205:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:206:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:207:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:207:9: note: in expansion of macro ‘WINPR_ASSERT’ # 227| (ULONG)length, &written); # 228| Stream_Free(s, TRUE); # 229|-> return status ? CHANNEL_RC_OK : ERROR_INTERNAL_ERROR; # 230| } # 231| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:426:16: warning[-Wunused-but-set-variable]: variable ‘ioCode1’ set but not used # 426 | UINT32 ioCode1 = 0; # | ^~~~~~~ # 424| const RDPDR_CAPABILITY_HEADER* header) # 425| { # 426|-> UINT32 ioCode1 = 0; # 427| UINT32 extraFlags1 = 0; # 428| UINT32 extendedPdu = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:427:16: warning[-Wunused-but-set-variable]: variable ‘extraFlags1’ set but not used # 427 | UINT32 extraFlags1 = 0; # | ^~~~~~~~~~~ # 425| { # 426| UINT32 ioCode1 = 0; # 427|-> UINT32 extraFlags1 = 0; # 428| UINT32 extendedPdu = 0; # 429| UINT16 VersionMajor = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_read_general_capability_set’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:431:16: warning[-Wunused-but-set-variable]: variable ‘SpecialTypeDeviceCap’ set but not used # 431 | UINT32 SpecialTypeDeviceCap = 0; # | ^~~~~~~~~~~~~~~~~~~~ # 429| UINT16 VersionMajor = 0; # 430| UINT16 VersionMinor = 0; # 431|-> UINT32 SpecialTypeDeviceCap = 0; # 432| WINPR_ASSERT(context); # 433| WINPR_ASSERT(context->priv); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1166:16: warning[-Wunused-but-set-variable]: variable ‘DesiredAccess’ set but not used # 1166 | UINT32 DesiredAccess = 0; # | ^~~~~~~~~~~~~ # 1164| { # 1165| const WCHAR* path = NULL; # 1166|-> UINT32 DesiredAccess = 0; # 1167| UINT32 AllocationSize = 0; # 1168| UINT32 FileAttributes = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1167:16: warning[-Wunused-but-set-variable]: variable ‘AllocationSize’ set but not used # 1167 | UINT32 AllocationSize = 0; # | ^~~~~~~~~~~~~~ # 1165| const WCHAR* path = NULL; # 1166| UINT32 DesiredAccess = 0; # 1167|-> UINT32 AllocationSize = 0; # 1168| UINT32 FileAttributes = 0; # 1169| UINT32 SharedAccess = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1168:16: warning[-Wunused-but-set-variable]: variable ‘FileAttributes’ set but not used # 1168 | UINT32 FileAttributes = 0; # | ^~~~~~~~~~~~~~ # 1166| UINT32 DesiredAccess = 0; # 1167| UINT32 AllocationSize = 0; # 1168|-> UINT32 FileAttributes = 0; # 1169| UINT32 SharedAccess = 0; # 1170| UINT32 CreateDisposition = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1169:16: warning[-Wunused-but-set-variable]: variable ‘SharedAccess’ set but not used # 1169 | UINT32 SharedAccess = 0; # | ^~~~~~~~~~~~ # 1167| UINT32 AllocationSize = 0; # 1168| UINT32 FileAttributes = 0; # 1169|-> UINT32 SharedAccess = 0; # 1170| UINT32 CreateDisposition = 0; # 1171| UINT32 CreateOptions = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1170:16: warning[-Wunused-but-set-variable]: variable ‘CreateDisposition’ set but not used # 1170 | UINT32 CreateDisposition = 0; # | ^~~~~~~~~~~~~~~~~ # 1168| UINT32 FileAttributes = 0; # 1169| UINT32 SharedAccess = 0; # 1170|-> UINT32 CreateDisposition = 0; # 1171| UINT32 CreateOptions = 0; # 1172| UINT32 PathLength = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_create_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1171:16: warning[-Wunused-but-set-variable]: variable ‘CreateOptions’ set but not used # 1171 | UINT32 CreateOptions = 0; # | ^~~~~~~~~~~~~ # 1169| UINT32 SharedAccess = 0; # 1170| UINT32 CreateDisposition = 0; # 1171|-> UINT32 CreateOptions = 0; # 1172| UINT32 PathLength = 0; # 1173| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1220:16: warning[-Wunused-but-set-variable]: variable ‘Length’ set but not used # 1220 | UINT32 Length = 0; # | ^~~~~~ # 1218| UINT32 CompletionId) # 1219| { # 1220|-> UINT32 Length = 0; # 1221| UINT64 Offset = 0; # 1222| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_read_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1221:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used # 1221 | UINT64 Offset = 0; # | ^~~~~~ # 1219| { # 1220| UINT32 Length = 0; # 1221|-> UINT64 Offset = 0; # 1222| # 1223| WINPR_ASSERT(context); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_write_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1244:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used # 1244 | UINT64 Offset = 0; # | ^~~~~~ # 1242| { # 1243| UINT32 Length = 0; # 1244|-> UINT64 Offset = 0; # 1245| # 1246| WINPR_ASSERT(context); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1272:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferLength’ set but not used # 1272 | UINT32 OutputBufferLength = 0; # | ^~~~~~~~~~~~~~~~~~ # 1270| UINT32 CompletionId) # 1271| { # 1272|-> UINT32 OutputBufferLength = 0; # 1273| UINT32 InputBufferLength = 0; # 1274| UINT32 IoControlCode = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_device_control_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1274:16: warning[-Wunused-but-set-variable]: variable ‘IoControlCode’ set but not used # 1274 | UINT32 IoControlCode = 0; # | ^~~~~~~~~~~~~ # 1272| UINT32 OutputBufferLength = 0; # 1273| UINT32 InputBufferLength = 0; # 1274|-> UINT32 IoControlCode = 0; # 1275| # 1276| WINPR_ASSERT(context); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_query_volume_information_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1304:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used # 1304 | UINT32 FsInformationClass = 0; # | ^~~~~~~~~~~~~~~~~~ # 1302| UINT32 CompletionId) # 1303| { # 1304|-> UINT32 FsInformationClass = 0; # 1305| UINT32 Length = 0; # 1306| Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: At top level freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1328:13: warning[-Wunused-function]: ‘rdpdr_server_receive_io_set_volume_information_request’ defined but not used # 1328 | static UINT rdpdr_server_receive_io_set_volume_information_request(RdpdrServerContext* context, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 1326| } # 1327| # 1328|-> static UINT rdpdr_server_receive_io_set_volume_information_request(RdpdrServerContext* context, # 1329| wStream* s, UINT32 DeviceId, # 1330| UINT32 FileId, Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_set_volume_information_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1333:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used # 1333 | UINT32 FsInformationClass = 0; # | ^~~~~~~~~~~~~~~~~~ # 1331| UINT32 CompletionId) # 1332| { # 1333|-> UINT32 FsInformationClass = 0; # 1334| UINT32 Length = 0; # 1335| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_query_information_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1363:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used # 1363 | UINT32 FsInformationClass = 0; # | ^~~~~~~~~~~~~~~~~~ # 1361| UINT32 FileId, UINT32 CompletionId) # 1362| { # 1363|-> UINT32 FsInformationClass = 0; # 1364| UINT32 Length = 0; # 1365| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_set_information_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1393:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used # 1393 | UINT32 FsInformationClass = 0; # | ^~~~~~~~~~~~~~~~~~ # 1391| UINT32 CompletionId) # 1392| { # 1393|-> UINT32 FsInformationClass = 0; # 1394| UINT32 Length = 0; # 1395| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1423:14: warning[-Wunused-but-set-variable]: variable ‘InitialQuery’ set but not used # 1423 | BYTE InitialQuery = 0; # | ^~~~~~~~~~~~ # 1421| UINT32 CompletionId) # 1422| { # 1423|-> BYTE InitialQuery = 0; # 1424| UINT32 FsInformationClass = 0; # 1425| UINT32 PathLength = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_query_directory_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1424:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used # 1424 | UINT32 FsInformationClass = 0; # | ^~~~~~~~~~~~~~~~~~ # 1422| { # 1423| BYTE InitialQuery = 0; # 1424|-> UINT32 FsInformationClass = 0; # 1425| UINT32 PathLength = 0; # 1426| const WCHAR* Path = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1455:14: warning[-Wunused-but-set-variable]: variable ‘WatchTree’ set but not used # 1455 | BYTE WatchTree = 0; # | ^~~~~~~~~ # 1453| UINT32 FileId, UINT32 CompletionId) # 1454| { # 1455|-> BYTE WatchTree = 0; # 1456| UINT32 CompletionFilter = 0; # 1457| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_change_directory_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1456:16: warning[-Wunused-but-set-variable]: variable ‘CompletionFilter’ set but not used # 1456 | UINT32 CompletionFilter = 0; # | ^~~~~~~~~~~~~~~~ # 1454| { # 1455| BYTE WatchTree = 0; # 1456|-> UINT32 CompletionFilter = 0; # 1457| # 1458| WINPR_ASSERT(context); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1505:16: warning[-Wunused-but-set-variable]: variable ‘Operation’ set but not used # 1505 | UINT32 Operation = 0; # | ^~~~~~~~~ # 1503| UINT32 CompletionId) # 1504| { # 1505|-> UINT32 Operation = 0; # 1506| UINT32 Lock = 0; # 1507| UINT32 NumLocks = 0; Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1520:2: warning[deadcode.DeadStores]: Value stored to 'Lock' is never read # 1518| Stream_Seek(s, 20); /* Padding */ # 1519| # 1520|-> Lock &= 0x01; /* Only byte 0 is of importance */ # 1521| # 1522| for (UINT32 x = 0; x < NumLocks; x++) Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1524:24: warning[-Wunused-but-set-variable]: variable ‘Length’ set but not used # 1524 | UINT64 Length = 0; # | ^~~~~~ # 1522| for (UINT32 x = 0; x < NumLocks; x++) # 1523| { # 1524|-> UINT64 Length = 0; # 1525| UINT64 Offset = 0; # 1526| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_lock_control_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:1525:24: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used # 1525 | UINT64 Offset = 0; # | ^~~~~~ # 1523| { # 1524| UINT64 Length = 0; # 1525|-> UINT64 Offset = 0; # 1526| # 1527| if (!Stream_CheckAndLogRequiredLengthWLog(context->priv->log, s, 16)) Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_create_directory_callback1’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2537:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used # 2537 | UINT8 information = 0; # | ^~~~~~~~~~~ # 2535| { # 2536| UINT32 fileId = 0; # 2537|-> UINT8 information = 0; # 2538| WINPR_ASSERT(context); # 2539| WINPR_ASSERT(context->priv); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_delete_directory_callback1’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2658:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used # 2658 | UINT8 information = 0; # | ^~~~~~~~~~~ # 2656| { # 2657| UINT32 fileId = 0; # 2658|-> UINT8 information = 0; # 2659| WINPR_ASSERT(context); # 2660| WINPR_ASSERT(context->priv); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_open_file_callback’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2920:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used # 2920 | UINT8 information = 0; # | ^~~~~~~~~~~ # 2918| { # 2919| UINT32 fileId = 0; # 2920|-> UINT8 information = 0; # 2921| WINPR_ASSERT(context); # 2922| WINPR_ASSERT(context->priv); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3060:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'irp' # 3058| /* Send a request to open the directory. */ # 3059| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): rdpdr_server_enqueue_irp owns irp # 3060|-> return rdpdr_server_send_device_read_request(context, deviceId, fileId, irp->CompletionId, # 3061| length, offset); # 3062| } Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3137:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'irp' # 3135| /* Send a request to open the directory. */ # 3136| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): rdpdr_server_enqueue_irp owns irp # 3137|-> return rdpdr_server_send_device_write_request(context, deviceId, fileId, irp->CompletionId, # 3138| buffer, length, offset); # 3139| } Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3211:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'irp' # 3209| /* Send a request to open the directory. */ # 3210| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): rdpdr_server_enqueue_irp owns irp # 3211|-> return rdpdr_server_send_device_close_request(context, deviceId, fileId, irp->CompletionId); # 3212| } # 3213| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_delete_file_callback1’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3253:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used # 3253 | UINT8 information = 0; # | ^~~~~~~~~~~ # 3251| { # 3252| UINT32 fileId = 0; # 3253|-> UINT8 information = 0; # 3254| WINPR_ASSERT(context); # 3255| WINPR_ASSERT(context->priv); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_rename_file_callback2’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3369:16: warning[-Wunused-but-set-variable]: variable ‘length’ set but not used # 3369 | UINT32 length = 0; # | ^~~~~~ # 3367| UINT32 completionId, UINT32 ioStatus) # 3368| { # 3369|-> UINT32 length = 0; # 3370| WINPR_ASSERT(context); # 3371| WINPR_ASSERT(context->priv); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_rename_file_callback1’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3412:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used # 3412 | UINT8 information = 0; # | ^~~~~~~~~~~ # 3410| { # 3411| UINT32 fileId = 0; # 3412|-> UINT8 information = 0; # 3413| WINPR_ASSERT(context); # 3414| WINPR_ASSERT(context->priv); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3491:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'irp' # 3489| /* Send a request to open the file. */ # 3490| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): rdpdr_server_enqueue_irp owns irp # 3491|-> return rdpdr_server_send_device_create_request(context, deviceId, irp->CompletionId, # 3492| irp->PathName, FILE_READ_DATA | SYNCHRONIZE, # 3493| FILE_SYNCHRONOUS_IO_NONALERT, FILE_OPEN); Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3571:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘rdpdr_server_context_free’ # 3569| WINPR_PRAGMA_DIAG_PUSH # 3570| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 3571|-> rdpdr_server_context_free(context); # 3572| WINPR_PRAGMA_DIAG_POP # 3573| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3581:9: warning[-Wanalyzer-use-after-free]: use after ‘rdpdr_server_context_free’ of ‘context’ # 3579| return; # 3580| # 3581|-> rdpdr_server_private_free(context->priv); # 3582| free(context); # 3583| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_enumerator_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_enumerator_main.c: scope_hint: In function ‘enumerator_server_close’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_enumerator_main.c:469:24: warning[-Wanalyzer-use-after-free]: use after ‘cam_dev_enum_server_context_free’ of ‘context’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_enumerator_main.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_enumerator_main.c:467:9: note: in expansion of macro ‘WINPR_ASSERT’ # 467| WINPR_ASSERT(enumerator); # 468| # 469|-> if (!enumerator->externalThread && enumerator->thread) # 470| { # 471| SetEvent(enumerator->stopEvent); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_enumerator_main.c: scope_hint: In function ‘cam_dev_enum_server_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_enumerator_main.c:591:16: warning[-Wanalyzer-malloc-leak]: leak of ‘enumerator’ # 589| goto fail; # 590| # 591|-> return &enumerator->context; # 592| fail: # 593| WINPR_PRAGMA_DIAG_PUSH Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_enumerator_main.c:611:1: warning[-Wanalyzer-malloc-leak]: leak of ‘enumerator’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_enumerator_main.c:467:9: note: in expansion of macro ‘WINPR_ASSERT’ # 609| # 610| free(enumerator); # 611|-> } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_main.c: scope_hint: In function ‘device_server_close’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_main.c:621:20: warning[-Wanalyzer-use-after-free]: use after ‘camera_device_server_context_free’ of ‘context’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_main.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_main.c:619:9: note: in expansion of macro ‘WINPR_ASSERT’ # 619| WINPR_ASSERT(device); # 620| # 621|-> if (!device->externalThread && device->thread) # 622| { # 623| SetEvent(device->stopEvent); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_main.c: scope_hint: In function ‘camera_device_server_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_main.c:944:16: warning[-Wanalyzer-malloc-leak]: leak of ‘device’ # 942| goto fail; # 943| # 944|-> return &device->context; # 945| fail: # 946| WINPR_PRAGMA_DIAG_PUSH Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_main.c:966:1: warning[-Wanalyzer-malloc-leak]: leak of ‘device’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpecam/server/camera_device_main.c:619:9: note: in expansion of macro ‘WINPR_ASSERT’ # 964| # 965| free(device); # 966|-> } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c: scope_hint: At top level freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c:526:13: warning[-Wunused-function]: ‘rdpei_print_contact_flags’ defined but not used # 526 | static void rdpei_print_contact_flags(UINT32 contactFlags) # | ^~~~~~~~~~~~~~~~~~~~~~~~~ # 524| } # 525| # 526|-> static void rdpei_print_contact_flags(UINT32 contactFlags) # 527| { # 528| if (contactFlags & RDPINPUT_CONTACT_FLAG_DOWN) Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c: scope_hint: In function ‘rdpei_recv_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c:788:16: warning[-Wunused-but-set-variable]: variable ‘pduLength’ set but not used # 788 | UINT32 pduLength = 0; # | ^~~~~~~~~ # 786| { # 787| UINT16 eventId = 0; # 788|-> UINT32 pduLength = 0; # 789| UINT error = 0; # 790| Error: CPPCHECK_WARNING (CWE-664): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c:1044: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called. # 1042| { # 1043| UINT rc = 0; # 1044|-> va_list ap = { 0 }; # 1045| rc = rdpei_touch_process(context, externalId, # 1046| RDPINPUT_CONTACT_FLAG_DOWN | RDPINPUT_CONTACT_FLAG_INRANGE | Error: CPPCHECK_WARNING (CWE-664): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c:1048: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called. # 1046| RDPINPUT_CONTACT_FLAG_DOWN | RDPINPUT_CONTACT_FLAG_INRANGE | # 1047| RDPINPUT_CONTACT_FLAG_INCONTACT, # 1048|-> x, y, contactId, 0, ap); # 1049| return rc; # 1050| } Error: CPPCHECK_WARNING (CWE-664): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c:1061: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called. # 1059| { # 1060| UINT rc = 0; # 1061|-> va_list ap = { 0 }; # 1062| rc = rdpei_touch_process(context, externalId, # 1063| RDPINPUT_CONTACT_FLAG_UPDATE | RDPINPUT_CONTACT_FLAG_INRANGE | Error: CPPCHECK_WARNING (CWE-664): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c:1065: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called. # 1063| RDPINPUT_CONTACT_FLAG_UPDATE | RDPINPUT_CONTACT_FLAG_INRANGE | # 1064| RDPINPUT_CONTACT_FLAG_INCONTACT, # 1065|-> x, y, contactId, 0, ap); # 1066| return rc; # 1067| } Error: CPPCHECK_WARNING (CWE-664): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c:1078: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called. # 1076| { # 1077| UINT error = 0; # 1078|-> va_list ap = { 0 }; # 1079| error = rdpei_touch_process(context, externalId, # 1080| RDPINPUT_CONTACT_FLAG_UPDATE | RDPINPUT_CONTACT_FLAG_INRANGE | Error: CPPCHECK_WARNING (CWE-664): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c:1082: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called. # 1080| RDPINPUT_CONTACT_FLAG_UPDATE | RDPINPUT_CONTACT_FLAG_INRANGE | # 1081| RDPINPUT_CONTACT_FLAG_INCONTACT, # 1082|-> x, y, contactId, 0, ap); # 1083| if (error != CHANNEL_RC_OK) # 1084| return error; Error: CPPCHECK_WARNING (CWE-664): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c:1099: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called. # 1097| { # 1098| UINT rc = 0; # 1099|-> va_list ap = { 0 }; # 1100| rc = rdpei_touch_process(context, externalId, # 1101| RDPINPUT_CONTACT_FLAG_UP | RDPINPUT_CONTACT_FLAG_CANCELED, x, y, Error: CPPCHECK_WARNING (CWE-664): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/client/rdpei_main.c:1102: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called. # 1100| rc = rdpei_touch_process(context, externalId, # 1101| RDPINPUT_CONTACT_FLAG_UP | RDPINPUT_CONTACT_FLAG_CANCELED, x, y, # 1102|-> contactId, 0, ap); # 1103| return rc; # 1104| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/rdpei_common.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpei/server/rdpei_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c: scope_hint: In function ‘read_cap_set’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:166:12: warning[-Wanalyzer-malloc-leak]: leak of ‘capsSetV1’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:460:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:293:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:231:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:232:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:235:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:748:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:266:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:266:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:266:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:267:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:267:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:268:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:268:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:184:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:185:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:185:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:186:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:186:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:202:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:128:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:128:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:128:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:129:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:129:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:130:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:130:9: note: in expansion of macro ‘Stream_Read_UINT32’ # 164| capsSet->size = size; # 165| # 166|-> if (!ArrayList_Append(capsSets, capsSet)) # 167| { # 168| WLog_ERR(TAG, "Failed to append caps set to arraylist"); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:174:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'capsSet' # 172| # 173| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ArrayList_Append owns capsSet # 174|-> return TRUE; # 175| } # 176| Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c: scope_hint: In function ‘mouse_cursor_server_close’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:426:26: warning[-Wanalyzer-use-after-free]: use after ‘mouse_cursor_server_context_free’ of ‘context’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:424:9: note: in expansion of macro ‘WINPR_ASSERT’ # 424| WINPR_ASSERT(mouse_cursor); # 425| # 426|-> if (!mouse_cursor->externalThread && mouse_cursor->thread) # 427| { # 428| SetEvent(mouse_cursor->stopEvent); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c: scope_hint: In function ‘mouse_cursor_server_send_sc_mouseptr_update’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:491:13: warning[-Wanalyzer-malloc-leak]: leak of ‘mouse_cursor_server_packet_new(update_size, 3, &*mouseptrUpdate.header)’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ # 489| # 490| /* Allocate what we need plus header bytes */ # 491|-> s = Stream_New(NULL, size + RDPEMSC_HEADER_SIZE); # 492| if (!s) # 493| { Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c: scope_hint: In function ‘mouse_cursor_server_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:707:16: warning[-Wanalyzer-malloc-leak]: leak of ‘mouse_cursor’ # 705| goto fail; # 706| # 707|-> return &mouse_cursor->context; # 708| fail: # 709| WINPR_PRAGMA_DIAG_PUSH Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:727:1: warning[-Wanalyzer-malloc-leak]: leak of ‘mouse_cursor’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpemsc/server/mouse_cursor_main.c:424:9: note: in expansion of macro ‘WINPR_ASSERT’ # 725| # 726| free(mouse_cursor); # 727|-> } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/client/rdpgfx_codec.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING (CWE-562): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/client/rdpgfx_codec.c:149: error[autoVariables]: Address of local auto-variable assigned to a function parameter. # 147| h264.length = (UINT32)Stream_GetRemainingLength(s); # 148| Stream_Free(s, FALSE); # 149|-> cmd->extra = (void*)&h264; # 150| # 151| if (context) Error: CPPCHECK_WARNING (CWE-562): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/client/rdpgfx_codec.c:237: error[autoVariables]: Address of local auto-variable assigned to a function parameter. # 235| h264.bitstream[0].length = Stream_GetRemainingLength(s); # 236| # 237|-> cmd->extra = (void*)&h264; # 238| # 239| if (context) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/client/rdpgfx_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/client/rdpgfx_main.c:626:13: warning[-Wunused-function]: ‘rdpgfx_load_cache_import_offer’ defined but not used # 626 | static UINT rdpgfx_load_cache_import_offer(RDPGFX_PLUGIN* gfx, RDPGFX_CACHE_IMPORT_OFFER_PDU* offer) # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 624| * @return 0 on success, otherwise a Win32 error code # 625| */ # 626|-> static UINT rdpgfx_load_cache_import_offer(RDPGFX_PLUGIN* gfx, RDPGFX_CACHE_IMPORT_OFFER_PDU* offer) # 627| { # 628| int count = 0; Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/client/rdpgfx_main.c:776:17: warning[deadcode.DeadStores]: Value stored to 'gfx' during its initialization is never read # 774| GENERIC_CHANNEL_CALLBACK* callback = NULL; # 775| WINPR_ASSERT(context); # 776|-> RDPGFX_PLUGIN* gfx = (RDPGFX_PLUGIN*)context->handle; # 777| # 778| if (!context || !pdu) Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/client/rdpgfx_main.c: scope_hint: In function ‘rdpgfx_client_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/client/rdpgfx_main.c:2389:13: warning[-Wanalyzer-use-after-free]: use after ‘rdpgfx_client_context_free’ of ‘context’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/client/rdpgfx_main.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/client/rdpgfx_main.c:2199:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2387| return; # 2388| # 2389|-> gfx = (RDPGFX_PLUGIN*)context->handle; # 2390| # 2391| free_surfaces(context, gfx->SurfaceTable); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/rdpgfx_common.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpgfx/server/rdpgfx_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/alsa/rdpsnd_alsa.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/fake/rdpsnd_fake.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/oss/rdpsnd_oss.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/pulse/rdpsnd_pulse.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:290:20: warning[-Wanalyzer-malloc-leak]: leak of ‘audio_formats_new((long unsigned int)stream_read_u16_le(s, 1))’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:40: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:38: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:689:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:690:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:690:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:691:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:692:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:782:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:788:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:788:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:788:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:790:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:790:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:264:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:277:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:277:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:278:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:278:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:279:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:279:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ # 288| rdpsnd->ServerFormats = audio_formats_new(wNumberOfFormats); # 289| # 290|-> if (!rdpsnd->ServerFormats) # 291| return CHANNEL_RC_NO_MEMORY; # 292| Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:303:2: warning[deadcode.DeadStores]: Value stored to 'ret' is never read # 301| # 302| WINPR_ASSERT(rdpsnd->device); # 303|-> ret = IFCALLRESULT(CHANNEL_RC_OK, rdpsnd->device->ServerFormatAnnounce, rdpsnd->device, # 304| rdpsnd->ServerFormats, rdpsnd->NumberOfServerFormats); # 305| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_wave2_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:697:16: warning[-Wunused-but-set-variable]: variable ‘dwAudioTimeStamp’ set but not used # 697 | UINT32 dwAudioTimeStamp = 0; # | ^~~~~~~~~~~~~~~~ # 695| UINT16 wFormatNo = 0; # 696| AUDIO_FORMAT* format = NULL; # 697|-> UINT32 dwAudioTimeStamp = 0; # 698| # 699| if (!Stream_CheckAndLogRequiredLength(TAG, s, 12)) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1832:66: warning[-Wanalyzer-malloc-leak]: leak of ‘allocatePlugin()’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:32:9: note: in definition of macro ‘FREERDP_ENTRY_POINT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1800:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1801:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1829:17: note: in expansion of macro ‘WINPR_ASSERT’ # 1830| rdpsnd->rdpcontext = pEntryPoints->GetRdpContext(pEntryPoints); # 1831| # 1832|-> if (!freerdp_settings_get_bool(rdpsnd->rdpcontext->settings, # 1833| FreeRDP_SynchronousDynamicChannels)) # 1834| rdpsnd->async = TRUE; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1841:37: warning[-Wanalyzer-malloc-leak]: leak of ‘allocatePlugin()’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:32:9: note: in definition of macro ‘FREERDP_ENTRY_POINT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1800:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1801:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1829:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1838:17: note: in expansion of macro ‘WINPR_ASSERT’ # 1839| rdpsnd->channelEntryPoints.pExtendedData = cnv.ev; # 1840| # 1841|-> error = pEntryPoints->RegisterPlugin(pEntryPoints, RDPSND_CHANNEL_NAME, iface); # 1842| } # 1843| else Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c:181:16: warning[-Wunused-but-set-variable]: variable ‘udpPort’ set but not used # 181 | UINT16 udpPort = 0; # | ^~~~~~~ # 179| { # 180| UINT16 num_known_format = 0; # 181|-> UINT16 udpPort = 0; # 182| BYTE lastblock = 0; # 183| UINT error = CHANNEL_RC_OK; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_server_recv_formats’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c:182:14: warning[-Wunused-but-set-variable]: variable ‘lastblock’ set but not used # 182 | BYTE lastblock = 0; # | ^~~~~~~~~ # 180| UINT16 num_known_format = 0; # 181| UINT16 udpPort = 0; # 182|-> BYTE lastblock = 0; # 183| UINT error = CHANNEL_RC_OK; # 184| Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_server_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c:1076:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘rdpsnd_server_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c:1049:17: note: in expansion of macro ‘WLog_ERR’ # 1074| WINPR_PRAGMA_DIAG_PUSH # 1075| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1076|-> rdpsnd_server_context_free(context); # 1077| WINPR_PRAGMA_DIAG_POP # 1078| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_server_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c:1096:20: warning[-Wanalyzer-use-after-free]: use after ‘rdpsnd_server_context_free’ of ‘context’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/server/rdpsnd_main.c:1049:17: note: in expansion of macro ‘WLog_ERR’ # 1094| return; # 1095| # 1096|-> if (context->priv) # 1097| { # 1098| rdpsnd_server_stop(context); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/remdesk/client/remdesk_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-704): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/remdesk/client/remdesk_main.c: scope_hint: In function ‘remdesk_send_ctl_authenticate_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/remdesk/client/remdesk_main.c:371:32: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 369| WINPR_ASSERT(settings); # 370| # 371|-> pdu.raConnectionString = # 372| freerdp_settings_get_string(settings, FreeRDP_RemoteAssistanceRCTicket); # 373| raConnectionStringW = ConvertUtf8ToWCharAlloc(pdu.raConnectionString, &cbRaConnectionStringW); Error: COMPILER_WARNING (CWE-704): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/remdesk/client/remdesk_main.c: scope_hint: In function ‘remdesk_send_ctl_remote_control_desktop_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/remdesk/client/remdesk_main.c:432:32: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 430| WINPR_ASSERT(settings); # 431| # 432|-> pdu.raConnectionString = # 433| freerdp_settings_get_string(settings, FreeRDP_RemoteAssistanceRCTicket); # 434| raConnectionStringW = ConvertUtf8ToWCharAlloc(pdu.raConnectionString, &length); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/remdesk/server/remdesk_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/remdesk/server/remdesk_main.c: scope_hint: In function ‘remdesk_server_thread’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/remdesk/server/remdesk_main.c:548:43: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, 4096)’ # 546| } # 547| # 548|-> if (WTSVirtualChannelQuery(context->priv->ChannelHandle, WTSVirtualEventHandle, &buffer, # 549| &BytesReturned) == TRUE) # 550| { Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c: scope_hint: In function ‘serial_process_irp_create’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:174:12: warning[-Wanalyzer-malloc-leak]: leak of ‘*serial.hComm’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:31: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:132:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:132:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:132:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘serial_process_irp_create’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c: scope_hint: In function ‘serial_process_irp_create’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘serial_process_irp_create’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c: scope_hint: In function ‘serial_process_irp_create’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:135:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:135:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:136:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:136:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘serial_process_irp_create’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c: scope_hint: In function ‘serial_process_irp_create’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:138:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:138:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:160:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/comm.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:32: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:170:13: note: in expansion of macro ‘CreateFile’ # 172| NULL); /* TemplateFile */ # 173| # 174|-> if (!serial->hComm || (serial->hComm == INVALID_HANDLE_VALUE)) # 175| { # 176| WLog_Print(serial->log, WLOG_WARN, "CreateFile failure: %s last-error: 0x%08" PRIX32 "", Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c: scope_hint: In function ‘serial_process_irp_read’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:235:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used # 235 | UINT64 Offset = 0; # | ^~~~~~ # 233| { # 234| UINT32 Length = 0; # 235|-> UINT64 Offset = 0; # 236| BYTE* buffer = NULL; # 237| DWORD nbRead = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c: scope_hint: In function ‘serial_process_irp_write’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:296:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used # 296 | UINT64 Offset = 0; # | ^~~~~~ # 294| { # 295| UINT32 Length = 0; # 296|-> UINT64 Offset = 0; # 297| DWORD nbWritten = 0; # 298| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c: scope_hint: In function ‘create_irp_thread’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:643:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &irp_thread_func, data, 0, 0)’ # 641| irpThread = CreateThread(NULL, 0, irp_thread_func, (void*)data, 0, NULL); # 642| # 643|-> if (irpThread == INVALID_HANDLE_VALUE) # 644| { # 645| WLog_Print(serial->log, WLOG_WARN, "Could not allocate a new IRP thread."); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/serial/client/serial_main.c:651:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &irp_thread_func, data, 0, 0)’ # 649| key = irp->CompletionId + 1ull; # 650| # 651|-> if (!ListDictionary_Add(serial->IrpThreads, (void*)key, irpThread)) # 652| { # 653| WLog_ERR(TAG, "ListDictionary_Add failed!"); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/smartcard/client/smartcard_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c: scope_hint: In function ‘telemetry_process_message’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c:150:14: warning[-Wunused-but-set-variable]: variable ‘Length’ set but not used # 150 | BYTE Length = 0; # | ^~~~~~ # 148| ULONG BytesReturned = 0; # 149| BYTE MessageId = 0; # 150|-> BYTE Length = 0; # 151| wStream* s = NULL; # 152| Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c: scope_hint: In function ‘telemetry_server_close’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c:345:23: warning[-Wanalyzer-use-after-free]: use after ‘telemetry_server_context_free’ of ‘context’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c:343:9: note: in expansion of macro ‘WINPR_ASSERT’ # 343| WINPR_ASSERT(telemetry); # 344| # 345|-> if (!telemetry->externalThread && telemetry->thread) # 346| { # 347| SetEvent(telemetry->stopEvent); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c: scope_hint: In function ‘telemetry_server_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c:422:16: warning[-Wanalyzer-malloc-leak]: leak of ‘telemetry’ # 420| goto fail; # 421| # 422|-> return &telemetry->context; # 423| fail: # 424| WINPR_PRAGMA_DIAG_PUSH Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c:442:1: warning[-Wanalyzer-malloc-leak]: leak of ‘telemetry’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/telemetry/server/telemetry_main.c:343:9: note: in expansion of macro ‘WINPR_ASSERT’ # 440| # 441| free(telemetry); # 442|-> } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urbdrc_process_register_request_callback’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c:125:16: warning[-Wunused-but-set-variable]: variable ‘NumRequestCompletion’ set but not used # 125 | UINT32 NumRequestCompletion = 0; # | ^~~~~~~~~~~~~~~~~~~~ # 123| IUDEVMAN* udevman) # 124| { # 125|-> UINT32 NumRequestCompletion = 0; # 126| UINT32 RequestCompletion = 0; # 127| URBDRC_PLUGIN* urbdrc = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c:321:16: warning[-Wunused-but-set-variable]: variable ‘IoControlCode’ set but not used # 321 | UINT32 IoControlCode = 0; # | ^~~~~~~~~~~~~ # 319| { # 320| wStream* out = NULL; # 321|-> UINT32 IoControlCode = 0; # 322| UINT32 InterfaceId = 0; # 323| UINT32 InputBufferSize = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urbdrc_process_internal_io_control’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c:324:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferSize’ set but not used # 324 | UINT32 OutputBufferSize = 0; # | ^~~~~~~~~~~~~~~~ # 322| UINT32 InterfaceId = 0; # 323| UINT32 InputBufferSize = 0; # 324|-> UINT32 OutputBufferSize = 0; # 325| UINT32 RequestId = 0; # 326| UINT32 frames = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c:542:16: warning[-Wunused-but-set-variable]: variable ‘ConfigurationHandle’ set but not used # 542 | UINT32 ConfigurationHandle = 0; # | ^~~~~~~~~~~~~~~~~~~ # 540| UINT32 out_size = 0; # 541| UINT32 InterfaceId = 0; # 542|-> UINT32 ConfigurationHandle = 0; # 543| UINT32 OutputBufferSize = 0; # 544| BYTE InterfaceNumber = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_select_interface’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c:543:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferSize’ set but not used # 543 | UINT32 OutputBufferSize = 0; # | ^~~~~~~~~~~~~~~~ # 541| UINT32 InterfaceId = 0; # 542| UINT32 ConfigurationHandle = 0; # 543|-> UINT32 OutputBufferSize = 0; # 544| BYTE InterfaceNumber = 0; # 545| wStream* out = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_control_vendor_or_class_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c:1041:16: warning[-Wunused-but-set-variable]: variable ‘Padding’ set but not used # 1041 | UINT16 Padding = 0; # | ^~~~~~~ # 1039| UINT16 Value = 0; # 1040| UINT16 Index = 0; # 1041|-> UINT16 Padding = 0; # 1042| wStream* out = NULL; # 1043| URBDRC_PLUGIN* urbdrc = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_pipe_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c:1213:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferSize’ set but not used # 1213 | UINT32 OutputBufferSize = 0; # | ^~~~~~~~~~~~~~~~ # 1211| UINT32 PipeHandle = 0; # 1212| UINT32 EndpointAddress = 0; # 1213|-> UINT32 OutputBufferSize = 0; # 1214| UINT32 usbd_status = 0; # 1215| wStream* out = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_get_current_frame_number’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c:1294:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferSize’ set but not used # 1294 | UINT32 OutputBufferSize = 0; # | ^~~~~~~~~~~~~~~~ # 1292| UINT32 out_size = 0; # 1293| UINT32 InterfaceId = 0; # 1294|-> UINT32 OutputBufferSize = 0; # 1295| UINT32 dummy_frames = 0; # 1296| wStream* out = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c:1572:16: warning[-Wunused-but-set-variable]: variable ‘CbTsUrb’ set but not used # 1572 | UINT32 CbTsUrb = 0; # | ^~~~~~~ # 1570| int transferDir) # 1571| { # 1572|-> UINT32 CbTsUrb = 0; # 1573| UINT16 Size = 0; # 1574| UINT16 URB_Function = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urbdrc_process_transfer_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/data_transfer.c:1573:16: warning[-Wunused-but-set-variable]: variable ‘Size’ set but not used # 1573 | UINT16 Size = 0; # | ^~~~ # 1571| { # 1572| UINT32 CbTsUrb = 0; # 1573|-> UINT16 Size = 0; # 1574| UINT16 URB_Function = 0; # 1575| UINT32 RequestId = 0; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘libusb_udev_isoch_transfer’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:218:51: warning[-Wanalyzer-malloc-leak]: leak of ‘async_transfer_user_data_new(idev, MessageId, 48, (long unsigned int)BufferSize, Buffer, outSize + 1024, NoAck, cb, callback)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ # 216| return NULL; # 217| # 218|-> user_data->data = Stream_New(NULL, offset + BufferSize + packetSize); # 219| # 220| if (!user_data->data) Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘func_iso_callback’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:284:49: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:716:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘func_iso_callback’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘func_iso_callback’ <built-in>: note: argument 2 of ‘__builtin_memmove’ must be non-null # 282| # 283| if (data != packetBuffer) # 284|-> memmove(data, packetBuffer, act_len); # 285| # 286| index += act_len; Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘libusb_udev_complete_msconfig_setup’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:626:61: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘t_MsPipe’ # 624| { # 625| MsPipe = MsInterface->MsPipes[pnum]; # 626|-> t_MsPipe->MaximumPacketSize = MsPipe->MaximumPacketSize; # 627| t_MsPipe->MaximumTransferSize = MsPipe->MaximumTransferSize; # 628| t_MsPipe->PipeFlags = MsPipe->PipeFlags; Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:633:63: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘t_MsPipe’ # 631| { # 632| t_MsPipe->MaximumPacketSize = 0; # 633|-> t_MsPipe->MaximumTransferSize = 0xffffffff; # 634| t_MsPipe->PipeFlags = 0; # 635| } Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:642:41: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘t_MsPipes’ # 640| t_MsPipe->PipeType = 0; # 641| t_MsPipe->InitCompleted = 0; # 642|-> t_MsPipes[pnum] = t_MsPipe; # 643| } # 644| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘udev_init’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:1522:9: warning[-Wanalyzer-malloc-leak]: leak of ‘pdev’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:1683:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:1527:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:1531:9: note: in expansion of macro ‘BASIC_STATE_FUNC_REGISTER’ # 1520| libusb_close(udev->hub_handle); # 1521| free(udev->devDescriptor); # 1522|-> free(idev); # 1523| } # 1524| Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘udev_new_by_id’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:1816:32: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevice.c:1800:9: note: in expansion of macro ‘WLog_Print’ # 1814| LIBUSB_DEVICE_DESCRIPTOR* descriptor = udev_new_descript(urbdrc, dev); # 1815| # 1816|-> if ((descriptor->idVendor == idVendor) && (descriptor->idProduct == idProduct)) # 1817| { # 1818| array[num] = (PUDEVICE)udev_init(urbdrc, ctx, dev, libusb_get_bus_number(dev), Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevman.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevman.c:695:34: warning[-Wanalyzer-malloc-leak]: leak of ‘idpair’ # 693| else # 694| { # 695|-> idpair = calloc(1, sizeof(VID_PID_PAIR)); # 696| if (!idpair) # 697| return CHANNEL_RC_NO_MEMORY; Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevman.c:712:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'idpair' # 710| # 711| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ArrayList_Append owns idpair # 712|-> return CHANNEL_RC_OK; # 713| } # 714| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/urbdrc_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/urbdrc_main.c: scope_hint: In function ‘urbdrc_exchange_capabilities’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/urbdrc_main.c:386:16: warning[-Wunused-but-set-variable]: variable ‘InterfaceId’ set but not used # 386 | UINT32 InterfaceId = 0; # | ^~~~~~~~~~~ # 384| UINT32 MessageId = 0; # 385| UINT32 FunctionId = 0; # 386|-> UINT32 InterfaceId = 0; # 387| UINT error = CHANNEL_RC_OK; # 388| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c: scope_hint: In function ‘msusb_mspipes_read’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:99:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c: scope_hint: In function ‘msusb_mspipes_read’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.h:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:155:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:155:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:155:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:156:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:156:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:157:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:157:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:158:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:158:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:160:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:160:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c: scope_hint: In function ‘msusb_mspipes_read’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:79:17: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:79:17: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:79:17: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:81:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:81:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:82:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:82:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c: scope_hint: In function ‘msusb_mspipes_read’ # 97| free(MsPipes[pnum]); # 98| # 99|-> free(MsPipes); # 100| return NULL; # 101| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c: scope_hint: In function ‘msusb_msconfig_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/common/msusb.c:294:16: warning[-Wanalyzer-malloc-leak]: leak of ‘msusb_msconfig_new()’ # 292| MSUSB_CONFIG_DESCRIPTOR* msusb_msconfig_new(void) # 293| { # 294|-> return (MSUSB_CONFIG_DESCRIPTOR*)calloc(1, sizeof(MSUSB_CONFIG_DESCRIPTOR)); # 295| } # 296| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:927:4: warning[unix.Malloc]: Potential leak of memory pointed to by 'frame' # 925| # 926| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): Queue_Enqueue owns frame # 927|-> WLog_DBG(TAG, "scheduling frame in %" PRIu32 " ms", (frame->publishTime - startTime)); # 928| } # 929| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c: scope_hint: In function ‘video_VideoData’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:932:1: warning[-Wanalyzer-malloc-leak]: leak of ‘frame’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:812:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:813:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:813:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:816:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:294:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:295:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:295:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:296:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:296:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:739:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c: scope_hint: In function ‘video_VideoData’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:203:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/video/client/video_main.c:927:25: note: in expansion of macro ‘WLog_DBG’ # 930| # 931| return CHANNEL_RC_OK; # 932|-> } # 933| # 934| static UINT video_data_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, wStream* s) Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_connection_dialog.cpp:88:7: warning[deadcode.DeadStores]: Value stored to 'rc' during its initialization is never read # 86| va_list ap; # 87| va_start(ap, fmt); # 88|-> auto rc = show(MSG_ERROR, fmt, ap); # 89| va_end(ap); # 90| return setTimer(); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_connection_dialog.cpp: scope_hint: In member function ‘bool SDLConnectionDialog::showError(const char*, ...)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_connection_dialog.cpp:88:14: warning[-Wunused-variable]: unused variable ‘rc’ # 88 | auto rc = show(MSG_ERROR, fmt, ap); # | ^~ # 86| va_list ap; # 87| va_start(ap, fmt); # 88|-> auto rc = show(MSG_ERROR, fmt, ap); # 89| va_end(ap); # 90| return setTimer(); Error: COMPILER_WARNING (CWE-195): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_connection_dialog.cpp: scope_hint: In member function ‘std::string SDLConnectionDialog::print(const char*, __va_list_tag*)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_connection_dialog.cpp:464:38: warning[-Wsign-compare]: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} # 464 | } while ((size > 0) && (size > res.size())); # | ~~~~~^~~~~~~~~~~~ # 462| va_end(copy); # 463| # 464|-> } while ((size > 0) && (size > res.size())); # 465| # 466| return res; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_dialogs.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_input_widgets.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_input_widgets.cpp:151: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 149| { # 150| if (!clear_window(_renderer)) # 151|-> throw; # 152| # 153| if (!update(_renderer)) Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_input_widgets.cpp:154: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 152| # 153| if (!update(_renderer)) # 154|-> throw; # 155| # 156| if (!_buttons.update(_renderer)) Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_input_widgets.cpp:157: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 155| # 156| if (!_buttons.update(_renderer)) # 157|-> throw; # 158| # 159| SDL_Event event = {}; Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_input_widgets.cpp:179: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 177| { # 178| if (!cur->remove_str(_renderer, 1)) # 179|-> throw; # 180| } # 181| } Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_input_widgets.cpp:220: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 218| { # 219| if (!cur->append_str(_renderer, event.text.text)) # 220|-> throw; # 221| } # 222| } Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_input_widgets.cpp:230: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 228| { # 229| if (!cur.set_mouseover(_renderer, false)) # 230|-> throw; # 231| } # 232| if (TextInputIndex >= 0) Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_input_widgets.cpp:236: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 234| auto& cur = _list[static_cast<size_t>(TextInputIndex)]; # 235| if (!cur.set_mouseover(_renderer, true)) # 236|-> throw; # 237| } # 238| Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_input_widgets.cpp:279: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 277| { # 278| if (!cur.set_highlight(_renderer, false)) # 279|-> throw; # 280| } # 281| auto cur = get(CurrentActiveTextInput); Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_input_widgets.cpp:285: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 283| { # 284| if (!cur->set_highlight(_renderer, true)) # 285|-> throw; # 286| } # 287| Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_selectlist.cpp:67: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 65| { # 66| if (!clear_window(_renderer)) # 67|-> throw; # 68| # 69| if (!update_text()) Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_selectlist.cpp:70: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 68| # 69| if (!update_text()) # 70|-> throw; # 71| # 72| if (!_buttons.update(_renderer)) Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_selectlist.cpp:73: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 71| # 72| if (!_buttons.update(_renderer)) # 73|-> throw; # 74| # 75| SDL_Event event = { 0 }; Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_selectlist.cpp:119: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 117| auto& cur = _list[TextInputIndex]; # 118| if (!cur.set_mouseover(_renderer, true)) # 119|-> throw; # 120| } # 121| Error: CPPCHECK_WARNING (CWE-480): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/dialogs/sdl_selectlist.cpp:155: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object # 153| auto& cur = _list[CurrentActiveTextInput]; # 154| if (!cur.set_highlight(_renderer, true)) # 155|-> throw; # 156| } # 157| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_channels.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_disp.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_freerdp.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_freerdp.cpp:1145:7: warning[deadcode.DeadStores]: Value stored to 'context' during its initialization is never read # 1143| return; # 1144| # 1145|-> auto context = get_context(instance->context); # 1146| } # 1147| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_freerdp.cpp: scope_hint: In function ‘void sdl_post_final_disconnect(freerdp*)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_freerdp.cpp:1145:14: warning[-Wunused-variable]: unused variable ‘context’ # 1145 | auto context = get_context(instance->context); # | ^~~~~~~ # 1143| return; # 1144| # 1145|-> auto context = get_context(instance->context); # 1146| } # 1147| Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_freerdp.cpp:1649:2: warning[deadcode.DeadStores]: Value stored to 'rc' is never read # 1647| return -1; # 1648| # 1649|-> rc = sdl_run(sdl); # 1650| # 1651| if (freerdp_client_stop(context) != 0) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_kbd.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_kbd.cpp:415:20: warning[-Wunused-function]: ‘const char* sdl_scancode_name(Uint32)’ defined but not used # 415 | static const char* sdl_scancode_name(Uint32 scancode) # | ^~~~~~~~~~~~~~~~~ # 413| } # 414| # 415|-> static const char* sdl_scancode_name(Uint32 scancode) # 416| { # 417| for (const auto& cur : map) Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_kbd.cpp:437:20: warning[-Wunused-function]: ‘const char* sdl_rdp_scancode_name(UINT32)’ defined but not used # 437 | static const char* sdl_rdp_scancode_name(UINT32 scancode) # | ^~~~~~~~~~~~~~~~~~~~~ # 435| } # 436| # 437|-> static const char* sdl_rdp_scancode_name(UINT32 scancode) # 438| { # 439| for (const auto& cur : map) Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_kbd.cpp:448:15: warning[-Wunused-function]: ‘UINT32 sdl_rdp_scancode_val(const char*)’ defined but not used # 448 | static UINT32 sdl_rdp_scancode_val(const char* scancodeName) # | ^~~~~~~~~~~~~~~~~~~~ # 446| } # 447| # 448|-> static UINT32 sdl_rdp_scancode_val(const char* scancodeName) # 449| { # 450| for (const auto& cur : map) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_monitor.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_monitor.cpp: scope_hint: At global scope freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_monitor.cpp:80:13: warning[-Wunused-function]: ‘BOOL sdl_is_monitor_id_active(SdlContext*, UINT32)’ defined but not used # 80 | static BOOL sdl_is_monitor_id_active(SdlContext* sdl, UINT32 id) # | ^~~~~~~~~~~~~~~~~~~~~~~~ # 78| } # 79| # 80|-> static BOOL sdl_is_monitor_id_active(SdlContext* sdl, UINT32 id) # 81| { # 82| const rdpSettings* settings = nullptr; Error: COMPILER_WARNING (CWE-195): freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_monitor.cpp: scope_hint: In function ‘BOOL sdl_detect_monitors(SdlContext*, UINT32*, UINT32*)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_monitor.cpp:330:30: warning[-Wsign-compare]: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ # 330 | for (size_t x = 0; x < numDisplays; x++) # | ~~^~~~~~~~~~~~~ # 328| return FALSE; # 329| # 330|-> for (size_t x = 0; x < numDisplays; x++) # 331| { # 332| if (!freerdp_settings_set_pointer_array(settings, FreeRDP_MonitorIds, x, &x)) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_pointer.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/SDL/sdl_touch.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/Wayland/wlf_channels.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/Wayland/wlf_cliprdr.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/Wayland/wlf_disp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/client/Wayland/wlf_disp.c:289:6: warning[-Wunused-function]: ‘wlf_disp_sendLayout’ defined but not used # 289 | UINT wlf_disp_sendLayout(DispClientContext* disp, const rdpMonitor* monitors, size_t nmonitors) # | ^~~~~~~~~~~~~~~~~~~ # 287| } # 288| # 289|-> UINT wlf_disp_sendLayout(DispClientContext* disp, const rdpMonitor* monitors, size_t nmonitors) # 290| { # 291| UINT ret = CHANNEL_RC_OK; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/Wayland/wlf_input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/Wayland/wlfreerdp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_channels.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-704): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c: scope_hint: In function ‘xf_handle_pipe’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1298:44: warning[-Wdiscarded-qualifiers]: passing argument 1 of ‘freerdp_add_signal_cleanup_handler’ discards ‘const’ qualifier from pointer target type freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:77: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/utils/signal.h:44:67: note: expected ‘void *’ but argument is of type ‘const char *’ # 1296| return 0; # 1297| } # 1298|-> freerdp_add_signal_cleanup_handler(pipe, cleanup_pipe); # 1299| # 1300| xf_process_pipe(context, pipe); Error: COMPILER_WARNING (CWE-704): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1302:44: warning[-Wdiscarded-qualifiers]: passing argument 1 of ‘freerdp_del_signal_cleanup_handler’ discards ‘const’ qualifier from pointer target type freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/utils/signal.h:56:67: note: expected ‘void *’ but argument is of type ‘const char *’ # 1300| xf_process_pipe(context, pipe); # 1301| # 1302|-> freerdp_del_signal_cleanup_handler(pipe, cleanup_pipe); # 1303| unlink(pipe); # 1304| return 0; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c: scope_hint: In function ‘xf_setup_x11’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1857:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateMutexA(0, 0, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1101:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1105:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1108:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1823:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:204:29: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1850:17: note: in expansion of macro ‘WLog_INFO’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1855:22: note: in expansion of macro ‘CreateMutex’ # 1855| xfc->mutex = CreateMutex(NULL, FALSE, NULL); # 1856| # 1857|-> if (!xfc->mutex) # 1858| { # 1859| WLog_ERR(TAG, "Could not create mutex!"); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1888:25: warning[-Wanalyzer-malloc-leak]: leak of ‘calloc(nitems, 8)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1101:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1105:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1108:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1823:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:204:29: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1850:17: note: in expansion of macro ‘WLog_INFO’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:33: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1887:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1887:25: note: in expansion of macro ‘WINPR_ASSERT’ # 1886| xfc->supportedAtoms = calloc(xfc->supportedAtomCount, sizeof(Atom)); # 1887| WINPR_ASSERT(xfc->supportedAtoms); # 1888|-> memcpy(xfc->supportedAtoms, data, nitems * sizeof(Atom)); # 1889| } # 1890| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1933:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileDescriptorEventA(0, 0, 0, *xfc.xfds, 1)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1101:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1105:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1108:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1823:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:204:29: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1850:17: note: in expansion of macro ‘WLog_INFO’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1931:25: note: in expansion of macro ‘CreateFileDescriptorEvent’ # 1931| xfc->x11event = CreateFileDescriptorEvent(NULL, FALSE, FALSE, xfc->xfds, WINPR_FD_READ); # 1932| # 1933|-> if (!xfc->x11event) # 1934| { # 1935| WLog_ERR(TAG, "Could not create xfds event"); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1943:12: warning[-Wanalyzer-malloc-leak]: leak of ‘calloc(16, 20)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1101:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1105:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1108:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1823:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:204:29: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_client.c:1850:17: note: in expansion of macro ‘WLog_INFO’ # 1941| xfc->vscreen.monitors = calloc(16, sizeof(MONITOR_INFO)); # 1942| # 1943|-> if (!xfc->vscreen.monitors) # 1944| goto fail; # 1945| return TRUE; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c: scope_hint: In function ‘xf_cliprdr_server_format_data_response’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:195:31: warning[-Wanalyzer-malloc-leak]: leak of ‘xf_cached_data_new_copy(data, (long unsigned int)size)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:35: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2015:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2016:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2016:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2019:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2022:9: note: in expansion of macro ‘WINPR_ASSERT’ # 193| } # 194| # 195|-> xfCachedData* cache = xf_cached_data_new(copy, data_length); # 196| if (!cache) # 197| free(copy); Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c: scope_hint: In function ‘xf_clipboard_free_server_formats’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:204:22: warning[-Wanalyzer-use-after-free]: use after ‘xf_clipboard_free’ of ‘clipboard’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2244:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:203:9: note: in expansion of macro ‘WINPR_ASSERT’ # 202| { # 203| WINPR_ASSERT(clipboard); # 204|-> if (clipboard->serverFormats) # 205| { # 206| for (size_t i = 0; i < clipboard->numServerFormats; i++) Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:863:2: warning[deadcode.DeadStores]: Value stored to 'srcFormatId' is never read # 861| } # 862| # 863|-> srcFormatId = 0; # 864| # 865| switch (format->formatToRequest) Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:1462:5: warning[unix.Malloc]: Potential leak of memory pointed to by 'cached_data' # 1460| # 1461| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 1462|-> xf_cliprdr_provide_data(clipboard, respond, cached_data->data, # 1463| cached_data->data_length); # 1464| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c: scope_hint: In function ‘xf_cliprdr_server_format_data_response’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2168:69: warning[-Wanalyzer-malloc-leak]: leak of ‘xf_cached_data_new(pDstData, DstSize)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2015:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2016:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2016:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2019:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2022:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2166| return CHANNEL_RC_OK; # 2167| } # 2168|-> if (!HashTable_Insert(clipboard->cachedData, (void*)(UINT_PTR)dstFormatId, cached_data)) # 2169| { # 2170| WLog_WARN(TAG, "Failed to cache clipboard data"); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2182:35: warning[unix.Malloc]: Potential leak of memory pointed to by 'cached_data' # 2180| // clipboard->cachedData owns cached_data # 2181| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc # 2182|-> xfCachedData* cached_raw_data = xf_cached_data_new_copy(data, size); # 2183| if (!cached_raw_data) # 2184| WLog_WARN(TAG, "Failed to allocate cache entry"); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_cliprdr.c:2198:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'cached_raw_data' # 2196| // clipboard->cachedRawData owns cached_raw_data # 2197| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 2198|-> xf_cliprdr_provide_data(clipboard, clipboard->respond, pDstData, DstSize); # 2199| { # 2200| union Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_disp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_event.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c: scope_hint: In function ‘xf_floatbar_new_button’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:283:22: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘button’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:277:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:278:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:279:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:280:9: note: in expansion of macro ‘WINPR_ASSERT’ # 281| # 282| button = (xfFloatbarButton*)calloc(1, sizeof(xfFloatbarButton)); # 283|-> button->type = type; # 284| # 285| switch (type) Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c: scope_hint: In function ‘xf_floatbar_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:368:9: warning[-Wanalyzer-mismatching-deallocation]: ‘floatbar’ should have been deallocated with ‘free’ but was deallocated with ‘xf_floatbar_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:324:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:325:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:326:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:326:9: note: in expansion of macro ‘WINPR_ASSERT’ # 366| WINPR_PRAGMA_DIAG_PUSH # 367| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 368|-> xf_floatbar_free(floatbar); # 369| WINPR_PRAGMA_DIAG_POP # 370| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c: scope_hint: In function ‘xf_floatbar_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:906:22: warning[-Wanalyzer-use-after-free]: use after ‘xf_floatbar_free’ of ‘floatbar’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:324:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:325:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:326:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_floatbar.c:326:9: note: in expansion of macro ‘WINPR_ASSERT’ # 904| return; # 905| # 906|-> free(floatbar->title); # 907| xfc = floatbar->xfc; # 908| WINPR_ASSERT(xfc); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_gfx.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_graphics.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_keyboard.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_monitor.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_rail.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_rail.c:970:4: warning[deadcode.DeadStores]: Value stored to 'direction' is never read # 968| # 969| case RAIL_WMSZ_KEYMOVE: # 970|-> direction = _NET_WM_MOVERESIZE_MOVE_KEYBOARD; # 971| x = localMoveSize->posX; # 972| y = localMoveSize->posY; Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_rail.c:977:4: warning[deadcode.DeadStores]: Value stored to 'direction' is never read # 975| # 976| case RAIL_WMSZ_KEYSIZE: # 977|-> direction = _NET_WM_MOVERESIZE_SIZE_KEYBOARD; # 978| x = localMoveSize->posX; # 979| y = localMoveSize->posY; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_video.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-686): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:143:44: warning[-Wanalyzer-va-arg-type-mismatch]: ‘va_arg’ expected ‘int’ but received ‘Atom’ {aka ‘long unsigned int’} for variadic argument 2 of ‘argp’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:997:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:998:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:998:9: note: in expansion of macro ‘WINPR_ASSERT’ # 141| for (size_t i = 0; i < numArgs; i++) # 142| { # 143|-> xevent.xclient.data.l[i] = va_arg(argp, int); # 144| } # 145| Error: GCC_ANALYZER_WARNING (CWE-686): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c: scope_hint: In function ‘xf_SendClientEvent’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:143:44: warning[-Wanalyzer-va-arg-type-mismatch]: ‘va_arg’ expected ‘int’ but received ‘long unsigned int’ for variadic argument 2 of ‘argp’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:37: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:997:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:998:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:998:9: note: in expansion of macro ‘WINPR_ASSERT’ # 141| for (size_t i = 0; i < numArgs; i++) # 142| { # 143|-> xevent.xclient.data.l[i] = va_arg(argp, int); # 144| } # 145| Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c: scope_hint: In function ‘xf_SetWindowRects’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:1074:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘xrects’ # 1072| for (int i = 0; i < nrects; i++) # 1073| { # 1074|-> xrects[i].x = rects[i].left; # 1075| xrects[i].y = rects[i].top; # 1076| xrects[i].width = rects[i].right - rects[i].left; Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c: scope_hint: In function ‘xf_SetWindowVisibilityRects’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/X11/xf_window.c:1099:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘xrects’ # 1097| for (int i = 0; i < nrects; i++) # 1098| { # 1099|-> xrects[i].x = rects[i].left; # 1100| xrects[i].y = rects[i].top; # 1101| xrects[i].width = rects[i].right - rects[i].left; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client.c:976:4: warning[deadcode.DeadStores]: Value stored to 'end' is never read # 974| *end = 0; # 975| else # 976|-> end = strchr(p, '\0'); # 977| # 978| return p; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:563:37: warning[unix.Malloc]: Potential leak of memory pointed to by 'clip_data_entry' # 561| // HashTable_Insert owns clip_data_entry # 562| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 563|-> file_context->current_clip_data_id = clip_data_entry->clip_data_id; # 564| # 565| return CHANNEL_RC_OK; Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:944:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'fuse_request' # 942| // file_context->request_table owns fuse_request # 943| // NOLINTBEGIN(clang-analyzer-unix.Malloc) # 944|-> DEBUG_CLIPRDR( # 945| file_context->log, # 946| "Requested file range (%zu Bytes at offset %lu) for file \"%s\" with stream id %u", Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:1651:13: warning[-Wunused-function]: ‘cliprdr_file_server_content_changed_and_update’ defined but not used # 1651 | static BOOL cliprdr_file_server_content_changed_and_update(CliprdrFileContext* file, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 1649| } # 1650| # 1651|-> static BOOL cliprdr_file_server_content_changed_and_update(CliprdrFileContext* file, # 1652| const void* data, size_t size) # 1653| { Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:1825:36: warning[unix.Malloc]: Potential leak of memory pointed to by 'fuse_file' # 1823| # 1824| // NOLINTBEGIN(clang-analyzer-unix.Malloc) HashTable_Insert owns fuse_file # 1825|-> for (UINT32 i = 0; i < n_files; ++i) # 1826| { # 1827| const FILEDESCRIPTORW* file = &files[i]; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c: scope_hint: In function ‘cliprdr_file_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2063:17: warning[-Wanalyzer-use-after-free]: use after ‘cliprdr_file_context_free’ of ‘file’ # 2061| # 2062| #if defined(WITH_FUSE) # 2063|-> if (file->inode_table) # 2064| { # 2065| clear_no_cdi_entry(file); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c: scope_hint: In function ‘is_directory’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2191:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileW(ConvertUtf8ToWCharAlloc(path, 0), 0, 4, 0, 3, 128, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:42: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2151:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2133:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2134:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2134:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2189| free(wpath); # 2190| # 2191|-> if (hFile == INVALID_HANDLE_VALUE) # 2192| return FALSE; # 2193| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c: scope_hint: In function ‘add_directory’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2217:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileW(ConvertUtf8ToWCharAlloc(GetCombinedPath(path, "*"), 0), &FindFileData)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2151:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2133:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2134:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2134:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2215| free(wpath); # 2216| # 2217|-> if (hFind == INVALID_HANDLE_VALUE) # 2218| return FALSE; # 2219| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2454:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2403:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2409:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2452| WINPR_PRAGMA_DIAG_PUSH # 2453| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2454|-> cliprdr_file_context_free(file); # 2455| WINPR_PRAGMA_DIAG_POP # 2456| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c: scope_hint: In function ‘cliprdr_file_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2454:9: warning[-Wanalyzer-mismatching-deallocation]: ‘file’ should have been deallocated with ‘free’ but was deallocated with ‘cliprdr_file_context_free’ # 2452| WINPR_PRAGMA_DIAG_PUSH # 2453| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2454|-> cliprdr_file_context_free(file); # 2455| WINPR_PRAGMA_DIAG_POP # 2456| return NULL; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c: scope_hint: In function ‘cliprdr_file_context_update_client_data’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2509:60: warning[-Wanalyzer-malloc-leak]: leak of ‘cliprdr_local_stream_new(file, lockId, data, size)’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2491:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:1662:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2473:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2475:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2306:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2263:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2507| { # 2508| stream = cliprdr_local_stream_new(file, lockId, data, size); # 2509|-> rc = HashTable_Insert(file->local_streams, &stream->lockId, stream); # 2510| if (!rc) # 2511| cliprdr_local_stream_free(stream); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/client_cliprdr_file.c:2515:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'stream' # 2513| // HashTable_Insert owns stream # 2514| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 2515|-> HashTable_Unlock(file->local_streams); # 2516| return rc; # 2517| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:4442:42: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull' # 4440| { # 4441| if (!freerdp_settings_set_pointer_len(settings, FreeRDP_LoadBalanceInfo, arg->Value, # 4442|-> strlen(arg->Value))) # 4443| return COMMAND_LINE_ERROR; # 4444| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c: scope_hint: In function ‘argv_append’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5337:12: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:1931:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:1932:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:1932:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:1931:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:1932:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:1932:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5362:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5363:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5363:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5364:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5364:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5326:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5327:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5327:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5326:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5327:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5327:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5326:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5327:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5327:9: note: in expansion of macro ‘WINPR_ASSERT’ # 5335| int nargc = *pargc + 1; # 5336| char** tmp = realloc(*pargv, nargc * sizeof(char*)); # 5337|-> if (!tmp) # 5338| return FALSE; # 5339| Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5541:19: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 5541 | entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # | ^ # 5539| PVIRTUALCHANNELENTRY entry = NULL; # 5540| PVIRTUALCHANNELENTRYEX entryEx = NULL; # 5541|-> entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # 5542| name, NULL, NULL, FREERDP_ADDIN_CHANNEL_STATIC | FREERDP_ADDIN_CHANNEL_ENTRYEX); # 5543| Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c: scope_hint: In function ‘freerdp_client_load_static_channel_addin’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/cmdline.c:5541:43: warning[-Wpedantic]: ISO C forbids conversion of function pointer to object pointer type # 5541 | entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # | ^ # 5539| PVIRTUALCHANNELENTRY entry = NULL; # 5540| PVIRTUALCHANNELENTRYEX entryEx = NULL; # 5541|-> entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # 5542| name, NULL, NULL, FREERDP_ADDIN_CHANNEL_STATIC | FREERDP_ADDIN_CHANNEL_ENTRYEX); # 5543| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c: scope_hint: In function ‘freerdp_client_rdp_file_new_ex’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c:2631:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_client_rdp_file_new_ex(0)’ # 2629| rdpFile* file = (rdpFile*)calloc(1, sizeof(rdpFile)); # 2630| # 2631|-> if (!file) # 2632| return NULL; # 2633| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c:2647:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_client_rdp_file_new_ex(0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:32: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/client.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c:2636:9: note: in expansion of macro ‘FillMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c: scope_hint: In function ‘freerdp_client_rdp_file_new_ex’ # 2645| goto fail; # 2646| # 2647|-> if (!freerdp_client_add_option(file, "freerdp")) # 2648| goto fail; # 2649| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c:2654:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c:2636:9: note: in expansion of macro ‘FillMemory’ # 2652| WINPR_PRAGMA_DIAG_PUSH # 2653| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2654|-> freerdp_client_rdp_file_free(file); # 2655| WINPR_PRAGMA_DIAG_POP # 2656| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c:2654:9: warning[-Wanalyzer-mismatching-deallocation]: ‘file’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_client_rdp_file_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c:2636:9: note: in expansion of macro ‘FillMemory’ # 2652| WINPR_PRAGMA_DIAG_PUSH # 2653| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2654|-> freerdp_client_rdp_file_free(file); # 2655| WINPR_PRAGMA_DIAG_POP # 2656| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c: scope_hint: In function ‘freerdp_client_rdp_file_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c:2662:25: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_client_rdp_file_free’ of ‘file’ freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/file.c:2636:9: note: in expansion of macro ‘FillMemory’ # 2660| if (file) # 2661| { # 2662|-> if (file->lineCount) # 2663| { # 2664| for (size_t i = 0; i < file->lineCount; i++) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/man/generate_argument_docbook.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/client/common/smartcard_cli.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c: scope_hint: In function ‘bitmap_cache_save_persistent’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:287:21: warning[-Wanalyzer-use-after-free]: use after ‘bitmap_cache_free’ of ‘bitmapCache’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:354:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:357:9: note: in expansion of macro ‘WINPR_ASSERT’ # 285| static int bitmap_cache_save_persistent(rdpBitmapCache* bitmapCache) # 286| { # 287|-> rdpContext* context = bitmapCache->context; # 288| rdpSettings* settings = context->settings; # 289| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:391:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:354:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:357:9: note: in expansion of macro ‘WINPR_ASSERT’ # 389| WINPR_PRAGMA_DIAG_PUSH # 390| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 391|-> bitmap_cache_free(bitmapCache); # 392| WINPR_PRAGMA_DIAG_POP # 393| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c: scope_hint: In function ‘bitmap_cache_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:391:9: warning[-Wanalyzer-mismatching-deallocation]: ‘bitmapCache’ should have been deallocated with ‘free’ but was deallocated with ‘bitmap_cache_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:354:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:357:9: note: in expansion of macro ‘WINPR_ASSERT’ # 389| WINPR_PRAGMA_DIAG_PUSH # 390| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 391|-> bitmap_cache_free(bitmapCache); # 392| WINPR_PRAGMA_DIAG_POP # 393| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c: scope_hint: In function ‘free_bitmap_update’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:474:54: warning[-Wanalyzer-use-after-free]: use after ‘free_bitmap_update’ of ‘pointer’ # 472| return; # 473| # 474|-> free_bitmap_data(pointer->rectangles, pointer->number); # 475| free(pointer); # 476| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c: scope_hint: In function ‘copy_bitmap_update’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:495:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_bitmap_update’ # 493| WINPR_PRAGMA_DIAG_PUSH # 494| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 495|-> free_bitmap_update(context, dst); # 496| WINPR_PRAGMA_DIAG_POP # 497| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c: scope_hint: In function ‘copy_cache_bitmap_order’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:523:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_bitmap_order’ # 521| WINPR_PRAGMA_DIAG_PUSH # 522| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 523|-> free_cache_bitmap_order(context, dst); # 524| WINPR_PRAGMA_DIAG_POP # 525| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c: scope_hint: In function ‘free_cache_bitmap_order’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:531:27: warning[-Wanalyzer-use-after-free]: use after ‘free_cache_bitmap_order’ of ‘order’ # 529| { # 530| if (order) # 531|-> free(order->bitmapDataStream); # 532| # 533| free(order); Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c: scope_hint: In function ‘copy_cache_bitmap_v2_order’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:560:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_bitmap_v2_order’ # 558| WINPR_PRAGMA_DIAG_PUSH # 559| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 560|-> free_cache_bitmap_v2_order(context, dst); # 561| WINPR_PRAGMA_DIAG_POP # 562| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c: scope_hint: In function ‘free_cache_bitmap_v2_order’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:568:27: warning[-Wanalyzer-use-after-free]: use after ‘free_cache_bitmap_v2_order’ of ‘order’ # 566| { # 567| if (order) # 568|-> free(order->bitmapDataStream); # 569| # 570| free(order); Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c: scope_hint: In function ‘copy_cache_bitmap_v3_order’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/bitmap.c:597:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_bitmap_v3_order’ # 595| WINPR_PRAGMA_DIAG_PUSH # 596| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 597|-> free_cache_bitmap_v3_order(context, dst); # 598| WINPR_PRAGMA_DIAG_POP # 599| return NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/brush.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/brush.c:275:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/brush.c:251:9: note: in expansion of macro ‘WINPR_ASSERT’ # 273| WINPR_PRAGMA_DIAG_PUSH # 274| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 275|-> brush_cache_free(brushCache); # 276| WINPR_PRAGMA_DIAG_POP # 277| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/brush.c: scope_hint: In function ‘brush_cache_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/brush.c:275:9: warning[-Wanalyzer-mismatching-deallocation]: ‘brushCache’ should have been deallocated with ‘free’ but was deallocated with ‘brush_cache_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/brush.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/brush.c:251:9: note: in expansion of macro ‘WINPR_ASSERT’ # 273| WINPR_PRAGMA_DIAG_PUSH # 274| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 275|-> brush_cache_free(brushCache); # 276| WINPR_PRAGMA_DIAG_POP # 277| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/brush.c: scope_hint: In function ‘brush_cache_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/brush.c:284:31: warning[-Wanalyzer-use-after-free]: use after ‘brush_cache_free’ of ‘brushCache’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/brush.c:251:9: note: in expansion of macro ‘WINPR_ASSERT’ # 282| if (brushCache) # 283| { # 284|-> if (brushCache->entries) # 285| { # 286| for (size_t i = 0; i < brushCache->maxEntries; i++) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c:78:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c:32:9: note: in expansion of macro ‘WINPR_ASSERT’ # 76| WINPR_PRAGMA_DIAG_PUSH # 77| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 78|-> cache_free(cache); # 79| WINPR_PRAGMA_DIAG_POP # 80| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c: scope_hint: In function ‘cache_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c:78:9: warning[-Wanalyzer-mismatching-deallocation]: ‘cache’ should have been deallocated with ‘free’ but was deallocated with ‘cache_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c:32:9: note: in expansion of macro ‘WINPR_ASSERT’ # 76| WINPR_PRAGMA_DIAG_PUSH # 77| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 78|-> cache_free(cache); # 79| WINPR_PRAGMA_DIAG_POP # 80| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c: scope_hint: In function ‘cache_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c:87:17: warning[-Wanalyzer-use-after-free]: use after ‘cache_free’ of ‘cache’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c:32:9: note: in expansion of macro ‘WINPR_ASSERT’ # 85| if (cache != NULL) # 86| { # 87|-> glyph_cache_free(cache->glyph); # 88| brush_cache_free(cache->brush); # 89| pointer_cache_free(cache->pointer); Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c: scope_hint: In function ‘copy_cache_color_table_order’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c:111:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_color_table_order’ # 109| WINPR_PRAGMA_DIAG_PUSH # 110| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 111|-> free_cache_color_table_order(context, dst); # 112| WINPR_PRAGMA_DIAG_POP # 113| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c: scope_hint: In function ‘copy_surface_bits_command’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/cache.c:142:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_surface_bits_command’ # 140| WINPR_PRAGMA_DIAG_PUSH # 141| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 142|-> free_surface_bits_command(context, dst); # 143| WINPR_PRAGMA_DIAG_POP # 144| return NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/glyph.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c:83:7: warning[-Wunused-function]: ‘nine_grid_cache_get’ defined but not used # 83 | void* nine_grid_cache_get(rdpNineGridCache* nine_grid, UINT32 index) # | ^~~~~~~~~~~~~~~~~~~ # 81| } # 82| # 83|-> void* nine_grid_cache_get(rdpNineGridCache* nine_grid, UINT32 index) # 84| { # 85| void* entry = NULL; Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c:104:6: warning[-Wunused-function]: ‘nine_grid_cache_put’ defined but not used # 104 | void nine_grid_cache_put(rdpNineGridCache* nine_grid, UINT32 index, void* entry) # | ^~~~~~~~~~~~~~~~~~~ # 102| } # 103| # 104|-> void nine_grid_cache_put(rdpNineGridCache* nine_grid, UINT32 index, void* entry) # 105| { # 106| if (index >= nine_grid->maxEntries) Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c: scope_hint: In function ‘nine_grid_cache_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c:150:9: warning[-Wanalyzer-mismatching-deallocation]: ‘nine_grid’ should have been deallocated with ‘free’ but was deallocated with ‘nine_grid_cache_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/update.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c:121:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c:124:9: note: in expansion of macro ‘WINPR_ASSERT’ # 148| WINPR_PRAGMA_DIAG_PUSH # 149| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 150|-> nine_grid_cache_free(nine_grid); # 151| WINPR_PRAGMA_DIAG_POP # 152| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c: scope_hint: In function ‘nine_grid_cache_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c:159:30: warning[-Wanalyzer-use-after-free]: use after ‘nine_grid_cache_free’ of ‘nine_grid’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c:121:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/nine_grid.c:124:9: note: in expansion of macro ‘WINPR_ASSERT’ # 157| if (nine_grid != NULL) # 158| { # 159|-> if (nine_grid->entries != NULL) # 160| { # 161| for (size_t i = 0; i < nine_grid->maxEntries; i++) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/offscreen.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/offscreen.c: scope_hint: In function ‘offscreen_cache_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/offscreen.c:222:9: warning[-Wanalyzer-mismatching-deallocation]: ‘offscreenCache’ should have been deallocated with ‘free’ but was deallocated with ‘offscreen_cache_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/offscreen.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/offscreen.c:194:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/offscreen.c:197:9: note: in expansion of macro ‘WINPR_ASSERT’ # 220| WINPR_PRAGMA_DIAG_PUSH # 221| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 222|-> offscreen_cache_free(offscreenCache); # 223| WINPR_PRAGMA_DIAG_POP # 224| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/offscreen.c: scope_hint: In function ‘offscreen_cache_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/offscreen.c:231:35: warning[-Wanalyzer-use-after-free]: use after ‘offscreen_cache_free’ of ‘offscreenCache’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/offscreen.c:194:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/offscreen.c:197:9: note: in expansion of macro ‘WINPR_ASSERT’ # 229| if (offscreenCache) # 230| { # 231|-> if (offscreenCache->entries) # 232| { # 233| for (size_t i = 0; i < offscreenCache->maxEntries; i++) Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/palette.c:52:7: warning[-Wunused-function]: ‘palette_cache_get’ defined but not used # 52 | void* palette_cache_get(rdpPaletteCache* paletteCache, UINT32 index) # | ^~~~~~~~~~~~~~~~~ # 50| } # 51| # 52|-> void* palette_cache_get(rdpPaletteCache* paletteCache, UINT32 index) # 53| { # 54| void* entry = NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/palette.c: scope_hint: In function ‘copy_palette_update’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/palette.c:139:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_palette_update’ # 137| WINPR_PRAGMA_DIAG_PUSH # 138| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 139|-> free_palette_update(context, dst); # 140| WINPR_PRAGMA_DIAG_POP # 141| return NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/persistent.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/cache/pointer.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/audio.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/audio.c:256:13: warning[-Wunused-function]: ‘audio_format_valid’ defined but not used # 256 | static BOOL audio_format_valid(const AUDIO_FORMAT* format) # | ^~~~~~~~~~~~~~~~~~ # 254| } # 255| # 256|-> static BOOL audio_format_valid(const AUDIO_FORMAT* format) # 257| { # 258| if (!format) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/audio.c: scope_hint: In function ‘audio_formats_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/audio.c:277:16: warning[-Wanalyzer-malloc-leak]: leak of ‘audio_formats_new(1)’ # 275| AUDIO_FORMAT* audio_formats_new(size_t count) # 276| { # 277|-> return calloc(count, sizeof(AUDIO_FORMAT)); # 278| } # 279| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/bitmap.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/bulk.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/bulk.c: scope_hint: In function ‘bulk_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/bulk.c:374:9: warning[-Wanalyzer-mismatching-deallocation]: ‘bulk’ should have been deallocated with ‘free’ but was deallocated with ‘bulk_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/bulk.c:21: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/bulk.c:342:9: note: in expansion of macro ‘WINPR_ASSERT’ # 372| WINPR_PRAGMA_DIAG_PUSH # 373| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 374|-> bulk_free(bulk); # 375| WINPR_PRAGMA_DIAG_POP # 376| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/bulk.c: scope_hint: In function ‘bulk_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/bulk.c:384:9: warning[-Wanalyzer-use-after-free]: use after ‘bulk_free’ of ‘bulk’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/bulk.c:342:9: note: in expansion of macro ‘WINPR_ASSERT’ # 382| return; # 383| # 384|-> mppc_context_free(bulk->mppcSend); # 385| mppc_context_free(bulk->mppcRecv); # 386| ncrush_context_free(bulk->ncrushRecv); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/clear.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/clear.c: scope_hint: In function ‘clear_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/clear.c:1180:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_aligned_calloc(1, 850496, 32)’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘clear_context_free’ # 1178| WINPR_PRAGMA_DIAG_PUSH # 1179| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1180|-> clear_context_free(clear); # 1181| WINPR_PRAGMA_DIAG_POP # 1182| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/clear.c: scope_hint: In function ‘clear_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/clear.c:1190:9: warning[-Wanalyzer-use-after-free]: use after ‘clear_context_free’ of ‘clear’ # 1188| return; # 1189| # 1190|-> nsc_context_free(clear->nsc); # 1191| winpr_aligned_free(clear->TempBuffer); # 1192| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/color.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/color.c: scope_hint: In function ‘FreeRDPSplitColor’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/color.c:1430:63: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘palette’ # 1428| { # 1429| tmp = palette->palette[color]; # 1430|-> FreeRDPSplitColor(tmp, palette->format, _r, _g, _b, _a, NULL); # 1431| } # 1432| else Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/dsp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/h264.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/h264.c: scope_hint: In function ‘avc444_ensure_buffer’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/h264.c:435:90: warning[-Wanalyzer-malloc-leak]: leak of ‘*((BYTE * (*)[3])<unknown>)[0]’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/bitstream.h:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/h264.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/h264.c:405:9: note: in expansion of macro ‘WINPR_ASSERT’ # 433| return FALSE; # 434| ppYUVDstData[x] = tmp1; # 435|-> BYTE* tmp2 = winpr_aligned_recalloc(ppOldYUVDstData[x], piDstSize[x], 1, 16); # 436| if (!tmp2) # 437| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/h264.c: scope_hint: In function ‘h264_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/h264.c:696:9: warning[-Wanalyzer-mismatching-deallocation]: ‘h264’ should have been deallocated with ‘free’ but was deallocated with ‘h264_context_free’ # 694| WINPR_PRAGMA_DIAG_PUSH # 695| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 696|-> h264_context_free(h264); # 697| WINPR_PRAGMA_DIAG_POP # 698| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/h264.c: scope_hint: In function ‘h264_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/h264.c:705:25: warning[-Wanalyzer-use-after-free]: use after ‘h264_context_free’ of ‘h264’ # 703| if (h264) # 704| { # 705|-> if (h264->subsystem) # 706| h264->subsystem->Uninit(h264); # 707| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/interleaved.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/interleaved.c:149:20: warning[-Wunused-function]: ‘rle_code_str_buffer’ defined but not used # 149 | static const char* rle_code_str_buffer(UINT32 code, char* buffer, size_t size) # | ^~~~~~~~~~~~~~~~~~~ # 147| } # 148| # 149|-> static const char* rle_code_str_buffer(UINT32 code, char* buffer, size_t size) # 150| { # 151| const char* str = rle_code_str(code); Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/interleaved.c: scope_hint: In function ‘bitmap_interleaved_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/interleaved.c:740:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_aligned_recalloc(0, 1, 24, 32)’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘bitmap_interleaved_context_free’ # 738| WINPR_PRAGMA_DIAG_PUSH # 739| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 740|-> bitmap_interleaved_context_free(interleaved); # 741| WINPR_PRAGMA_DIAG_POP # 742| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/interleaved.c: scope_hint: In function ‘bitmap_interleaved_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/interleaved.c:750:39: warning[-Wanalyzer-use-after-free]: use after ‘bitmap_interleaved_context_free’ of ‘interleaved’ # 748| return; # 749| # 750|-> winpr_aligned_free(interleaved->TempBuffer); # 751| Stream_Free(interleaved->bts, TRUE); # 752| winpr_aligned_free(interleaved); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/mppc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/ncrush.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c: scope_hint: In function ‘nsc_context_initialize’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:292:44: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_recalloc(*context_53(D)->priv.PlaneBuffers[i], plength, 1, 32)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/codec/nsc.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:31: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:240:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:116:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSizeWLog’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:242:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthWLog’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:248:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:248:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:248:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:248:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:248:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:248:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:252:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:252:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:260:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:260:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:716:17: note: in expansion of macro ‘WINPR_ASSERT’ # 290| if (plength > context->priv->PlaneBuffersLength) # 291| { # 292|-> for (size_t i = 0; i < 4; i++) # 293| { # 294| void* tmp = (BYTE*)winpr_aligned_recalloc(context->priv->PlaneBuffers[i], plength, Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c: scope_hint: In function ‘nsc_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:375:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_aligned_calloc(1, 120, 32)’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘nsc_context_free’ # 373| WINPR_PRAGMA_DIAG_PUSH # 374| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 375|-> nsc_context_free(context); # 376| WINPR_PRAGMA_DIAG_POP # 377| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c: scope_hint: In function ‘nsc_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc.c:385:20: warning[-Wanalyzer-use-after-free]: use after ‘nsc_context_free’ of ‘context’ # 383| return; # 384| # 385|-> if (context->priv) # 386| { # 387| for (size_t i = 0; i < 5; i++) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc_encode.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc_encode.c: scope_hint: In function ‘nsc_context_initialize_encode’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc_encode.c:71:41: warning[-Wanalyzer-malloc-leak]: leak of ‘*context_47(D)->priv.PlaneBuffers[i]’ # 69| if (length > context->priv->PlaneBuffersLength) # 70| { # 71|-> for (int i = 0; i < 5; i++) # 72| { # 73| BYTE* tmp = (BYTE*)winpr_aligned_recalloc(context->priv->PlaneBuffers[i], length, Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/nsc_encode.c:415:15: warning[-Wunused-function]: ‘nsc_compute_byte_count’ defined but not used # 415 | static UINT32 nsc_compute_byte_count(NSC_CONTEXT* context, UINT32* ByteCount, UINT32 width, # | ^~~~~~~~~~~~~~~~~~~~~~ # 413| } # 414| # 415|-> static UINT32 nsc_compute_byte_count(NSC_CONTEXT* context, UINT32* ByteCount, UINT32 width, # 416| UINT32 height) # 417| { Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/planar.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/planar.c: scope_hint: In function ‘freerdp_bitmap_planar_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/planar.c:1752:17: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_aligned_calloc(1, 176, 32)’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘freerdp_bitmap_planar_context_free’ # 1750| WINPR_PRAGMA_DIAG_PUSH # 1751| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1752|-> freerdp_bitmap_planar_context_free(context); # 1753| WINPR_PRAGMA_DIAG_POP # 1754| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/planar.c: scope_hint: In function ‘freerdp_bitmap_planar_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/planar.c:1765:35: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_bitmap_planar_context_free’ of ‘context’ # 1763| return; # 1764| # 1765|-> winpr_aligned_free(context->pTempData); # 1766| winpr_aligned_free(context->planesBuffer); # 1767| winpr_aligned_free(context->deltaPlanesBuffer); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c: scope_hint: In function ‘progressive_context_new_ex’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c:2612:12: warning[-Wanalyzer-malloc-leak]: leak of ‘progressive_context_new_ex(Compressor, 0)’ # 2610| (PROGRESSIVE_CONTEXT*)winpr_aligned_calloc(1, sizeof(PROGRESSIVE_CONTEXT), 32); # 2611| # 2612|-> if (!progressive) # 2613| return NULL; # 2614| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c:2639:35: warning[-Wanalyzer-malloc-leak]: leak of ‘progressive_context_new_ex(Compressor, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c:2638:17: note: in expansion of macro ‘WINPR_ASSERT’ # 2637| wObject* obj = HashTable_ValueObject(progressive->SurfaceContexts); # 2638| WINPR_ASSERT(obj); # 2639|-> obj->fnObjectFree = progressive_surface_context_free; # 2640| } # 2641| return progressive; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c:2645:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_aligned_calloc(1, 1059208, 32)’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘progressive_context_free’ # 2643| WINPR_PRAGMA_DIAG_PUSH # 2644| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2645|-> progressive_context_free(progressive); # 2646| WINPR_PRAGMA_DIAG_POP # 2647| return NULL; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c: scope_hint: In function ‘progressive_context_new_ex’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c:2655:9: warning[-Wanalyzer-malloc-leak]: leak of ‘progressive_context_new_ex(Compressor, 0)’ # 2653| return; # 2654| # 2655|-> Stream_Free(progressive->buffer, TRUE); # 2656| Stream_Free(progressive->rects, TRUE); # 2657| rfx_context_free(progressive->rfx_context); Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c: scope_hint: In function ‘progressive_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c:2655:9: warning[-Wanalyzer-use-after-free]: use after ‘progressive_context_free’ of ‘progressive’ # 2653| return; # 2654| # 2655|-> Stream_Free(progressive->buffer, TRUE); # 2656| Stream_Free(progressive->rects, TRUE); # 2657| rfx_context_free(progressive->rfx_context); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c: scope_hint: In function ‘region16_copy_band_with_union’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:260:16: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:260:16: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 258| const RECTANGLE_16** srcPtr, RECTANGLE_16** dstPtr) # 259| { # 260|-> UINT16 refY = src->top; # 261| const RECTANGLE_16* startOverlap = NULL; # 262| const RECTANGLE_16* endOverlap = NULL; Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:291:43: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:291:43: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 289| { # 290| /* items before unionRect */ # 291|-> while ((src < end) && (src->top == refY) && (src->right < unionRect->left)) # 292| { # 293| dst->top = newTop; Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:291:65: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:291:65: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 289| { # 290| /* items before unionRect */ # 291|-> while ((src < end) && (src->top == refY) && (src->right < unionRect->left)) # 292| { # 293| dst->top = newTop; Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:296:40: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:296:40: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 294| dst->bottom = newBottom; # 295| dst->right = src->right; # 296|-> dst->left = src->left; # 297| src++; # 298| dst++; Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:306:40: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:306:40: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 304| endOverlap = unionRect; # 305| # 306|-> if ((src < end) && (src->top == refY) && (src->left < unionRect->left)) # 307| startOverlap = src; # 308| Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:306:62: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:306:62: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 304| endOverlap = unionRect; # 305| # 306|-> if ((src < end) && (src->top == refY) && (src->left < unionRect->left)) # 307| startOverlap = src; # 308| Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:309:43: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:309:43: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 307| startOverlap = src; # 308| # 309|-> while ((src < end) && (src->top == refY) && (src->right < unionRect->right)) # 310| { # 311| src++; Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:309:65: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:309:65: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 307| startOverlap = src; # 308| # 309|-> while ((src < end) && (src->top == refY) && (src->right < unionRect->right)) # 310| { # 311| src++; Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:329:35: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:329:35: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 327| # 328| /* treat remaining items on the same band */ # 329|-> while ((src < end) && (src->top == refY)) # 330| { # 331| dst->top = newTop; Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:333:33: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:333:33: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 331| dst->top = newTop; # 332| dst->bottom = newBottom; # 333|-> dst->right = src->right; # 334| dst->left = src->left; # 335| src++; Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:334:32: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:334:32: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 332| dst->bottom = newBottom; # 333| dst->right = src->right; # 334|-> dst->left = src->left; # 335| src++; # 336| dst++; Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c: scope_hint: In function ‘rectangle_contained_in_band’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:390:16: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:390:16: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 388| const RECTANGLE_16* rect) # 389| { # 390|-> UINT16 refY = band->top; # 391| # 392| if ((band->top > rect->top) || (rect->bottom > band->bottom)) Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:392:60: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:392:60: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 390| UINT16 refY = band->top; # 391| # 392|-> if ((band->top > rect->top) || (rect->bottom > band->bottom)) # 393| return FALSE; # 394| Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:398:40: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:398:40: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 396| * that is after rect->left we're sure that the result is False. # 397| */ # 398|-> while ((band < endPtr) && (band->top == refY) && (band->left <= rect->left)) # 399| { # 400| if (rect->right <= band->right) Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:398:63: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:398:63: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 396| * that is after rect->left we're sure that the result is False. # 397| */ # 398|-> while ((band < endPtr) && (band->top == refY) && (band->left <= rect->left)) # 399| { # 400| if (rect->right <= band->right) Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:400:40: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:400:40: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 398| while ((band < endPtr) && (band->top == refY) && (band->left <= rect->left)) # 399| { # 400|-> if (rect->right <= band->right) # 401| return TRUE; # 402| Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c: scope_hint: In function ‘region16_union_rect’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:551:33: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:551:33: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 549| while (currentBand < endSrcRect) # 550| { # 551|-> if ((currentBand->bottom <= rect->top) || (rect->bottom <= currentBand->top) || # 552| rectangle_contained_in_band(currentBand, endSrcRect, rect)) # 553| { Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:551:87: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:551:87: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 549| while (currentBand < endSrcRect) # 550| { # 551|-> if ((currentBand->bottom <= rect->top) || (rect->bottom <= currentBand->top) || # 552| rectangle_contained_in_band(currentBand, endSrcRect, rect)) # 553| { Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:568:100: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:568:100: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 566| +----+ # 567| */ # 568|-> region16_copy_band_with_union(dstRect, currentBand, endSrcRect, currentBand->top, # 569| currentBand->bottom, NULL, &usedRects, &nextBand, # 570| &dstRect); Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:609:55: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:609:55: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 607| # 608| /* do the merge zone (all cases) */ # 609|-> if (rect->bottom < currentBand->bottom) # 610| mergeBottom = rect->bottom; # 611| Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:616:55: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:616:55: note: read of 2 bytes from after the end of ‘empty_region’ # └──────────────────────────┘ # ^ # 614| # 615| /* test if we need a bottom split, case 1 and 4 */ # 616|-> if (rect->bottom < currentBand->bottom) # 617| { # 618| region16_copy_band_with_union(dstRect, currentBand, endSrcRect, mergeBottom, Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:623:38: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ # 621| } # 622| # 623|-> topInterBand = currentBand->bottom; # 624| } # 625| Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c: scope_hint: In function ‘region16_intersect_rect’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:801:17: warning[-Wuse-after-free]: pointer ‘newItems_66’ may be used after ‘realloc’ # 801 | free(newItems); # | ^~~~~~~~~~~~~~ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:797:21: note: call to ‘realloc’ here # 797 | dst->data = realloc(newItems, newItems->size); # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 799| if (!dst->data) # 800| { # 801|-> free(newItems); # 802| return FALSE; # 803| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c: scope_hint: In function ‘rfx_allocate_tiles’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:809:13: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_recalloc(*message.tiles, count, 8, 32)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:2141:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1632:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1633:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1633:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1634:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1634:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1635:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1635:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1636:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1636:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1637:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1637:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1562:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1673:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1674:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1579:22: note: in definition of macro ‘TILE_NO’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1608:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings.h:32: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:35: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:32:22: note: in definition of macro ‘MAX’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:806:9: note: in expansion of macro ‘WINPR_ASSERT’ # 807| # 808| RFX_TILE** tmpTiles = winpr_aligned_recalloc(message->tiles, count, sizeof(RFX_TILE*), 32); # 809|-> if (!tmpTiles && (count != 0)) # 810| return FALSE; # 811| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c: scope_hint: In function ‘rfx_message_free.part.0’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1426:18: warning[-Wanalyzer-malloc-leak]: leak of ‘*message.tiles’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:806:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1424| const BOOL freeArray = message->freeArray; # 1425| const RFX_MESSAGE empty = { 0 }; # 1426|-> *message = empty; # 1427| # 1428| if (!freeArray) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c: scope_hint: In function ‘rfx_encode_message’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1648:36: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_calloc(1, 64, 32)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:2141:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1632:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1633:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1633:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1634:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1634:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1635:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1635:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1636:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1636:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1637:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1637:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ # 1646| rfx_update_context_properties(context); # 1647| # 1648|-> message->frameIdx = context->frameIdx++; # 1649| # 1650| if (!context->numQuant) Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c: scope_hint: In function ‘rfx_encode_message’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1783:60: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘workParam’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:2141:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1632:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1633:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1633:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1634:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1634:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1635:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1635:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1636:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1636:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1637:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1637:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1562:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1673:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1674:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1579:22: note: in definition of macro ‘TILE_NO’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1608:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1583:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1586:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx.c:1608:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1781| if (context->priv->UseThreads) # 1782| { # 1783|-> workParam->context = context; # 1784| workParam->tile = tile; # 1785| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx_dwt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx_rlgr.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/rfx_sse2.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/xcrush.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/yuv.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/zgfx.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/zgfx.c:380:14: warning[-Wunused-function]: ‘aligned_zgfx_malloc’ defined but not used # 380 | static BYTE* aligned_zgfx_malloc(size_t size) # | ^~~~~~~~~~~~~~~~~~~ # 378| * out of bounds read. # 379| */ # 380|-> static BYTE* aligned_zgfx_malloc(size_t size) # 381| { # 382| return malloc(size + 64); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/addin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/addin.c: scope_hint: In function ‘freerdp_load_dynamic_addin’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/addin.c:241:17: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 241 | entry = (PVIRTUALCHANNELENTRY)GetProcAddress(library, pszEntryName); # | ^ # 239| goto fail; # 240| # 241|-> entry = (PVIRTUALCHANNELENTRY)GetProcAddress(library, pszEntryName); # 242| fail: # 243| free(pszRelativeFilePath); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c: scope_hint: In function ‘update_password’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:131:18: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_assistance_file_free’ of ‘file’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:130:9: note: in expansion of macro ‘WINPR_ASSERT’ # 129| { # 130| WINPR_ASSERT(file); # 131|-> free(file->password); # 132| file->password = NULL; # 133| if (!password) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c: scope_hint: In function ‘append_address_to_list’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:260:12: warning[-Wanalyzer-malloc-leak]: leak of ‘copy’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:141:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:729:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:597:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:598:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:598:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c: scope_hint: In function ‘append_address_to_list’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:488:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:488:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:203:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:706:9: note: in expansion of macro ‘WLog_DBG’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:488:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ # 258| # 259| const BOOL rc = ArrayList_Append(MachineAddresses, copy); # 260|-> if (!rc) # 261| free(copy); # 262| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ArrayList_Append takes ownership of copy Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:263:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'copy' # 261| free(copy); # 262| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ArrayList_Append takes ownership of copy # 263|-> return rc; # 264| } # 265| Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c: scope_hint: In function ‘freerdp_assistance_parse_attr_uint32’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:501:9: warning[-Wanalyzer-null-argument]: use of NULL ‘copt’ where non-null expected freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:141:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:729:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:597:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:598:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:598:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c: scope_hint: In function ‘freerdp_assistance_parse_attr_uint32’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:488:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ <built-in>: note: argument 2 of ‘__builtin_strncpy’ must be non-null # 499| } # 500| # 501|-> strncpy(buffer, copt, size); # 502| errno = 0; # 503| unsigned long val = strtoul(buffer, NULL, 0); Error: COMPILER_WARNING (CWE-704): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c: scope_hint: In function ‘freerdp_assistance_populate_settings_from_assistance_file’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:1345:29: warning[-Wpointer-to-int-cast]: cast from pointer to integer of different size # 1343| return FALSE; # 1344| # 1345|-> const UINT32 port = (UINT32)ArrayList_GetItem(file->MachinePorts, 0); # 1346| if (!freerdp_settings_set_uint32(settings, FreeRDP_ServerPort, port)) # 1347| return FALSE; Error: COMPILER_WARNING (CWE-704): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:1354:37: warning[-Wpointer-to-int-cast]: cast from pointer to integer of different size # 1352| for (size_t x = 0; x < ports; x++) # 1353| { # 1354|-> const UINT32 port = (UINT32)ArrayList_GetItem(file->MachinePorts, x); # 1355| if (!freerdp_settings_set_pointer_array(settings, FreeRDP_TargetNetPorts, x, &port)) # 1356| return FALSE; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c: scope_hint: In function ‘freerdp_assistance_file_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:1402:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ # 1400| WINPR_PRAGMA_DIAG_PUSH # 1401| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1402|-> freerdp_assistance_file_free(file); # 1403| WINPR_PRAGMA_DIAG_POP # 1404| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:1402:9: warning[-Wanalyzer-mismatching-deallocation]: ‘file’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_assistance_file_free’ # 1400| WINPR_PRAGMA_DIAG_PUSH # 1401| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1402|-> freerdp_assistance_file_free(file); # 1403| WINPR_PRAGMA_DIAG_POP # 1404| return NULL; Error: COMPILER_WARNING (CWE-704): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c: scope_hint: In function ‘freerdp_assistance_print_file’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/assistance.c:1454:32: warning[-Wpointer-to-int-cast]: cast from pointer to integer of different size # 1452| const char* addr = ArrayList_GetItem(file->MachineAddresses, x); # 1453| if (x < ArrayList_Count(file->MachinePorts)) # 1454|-> port = (UINT32)ArrayList_GetItem(file->MachinePorts, x); # 1455| if (x < ArrayList_Count(file->MachineUris)) # 1456| uri = ArrayList_GetItem(file->MachineUris, x); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:31: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_device_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:317:22: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_device_new(*device.Type, count, & args)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:317:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ # 315| # 316| device.base = NULL; # 317|-> WINPR_ASSERT(args || (count == 0)); # 318| # 319| switch (Type) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:416:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:317:9: note: in expansion of macro ‘WINPR_ASSERT’ # 414| # 415| fail: # 416|-> freerdp_device_free(device.base); # 417| return NULL; # 418| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:416:9: warning[-Wanalyzer-mismatching-deallocation]: ‘<unknown>’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_device_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:317:9: note: in expansion of macro ‘WINPR_ASSERT’ # 414| # 415| fail: # 416|-> freerdp_device_free(device.base); # 417| return NULL; # 418| } Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_device_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:437:23: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_device_free’ of ‘device’ # 435| cnv.dev = device; # 436| # 437|-> switch (device->Type) # 438| { # 439| case RDPDR_DTYP_PRINT: Error: GCC_ANALYZER_WARNING (CWE-457): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:437:23: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*device.Type’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:317:9: note: in expansion of macro ‘WINPR_ASSERT’ # 435| cnv.dev = device; # 436| # 437|-> switch (device->Type) # 438| { # 439| case RDPDR_DTYP_PRINT: Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_device_clone’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:492:19: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_device_clone(data)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:317:9: note: in expansion of macro ‘WINPR_ASSERT’ # 490| return NULL; # 491| # 492|-> if (device->Name) # 493| { # 494| count = 1; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_settings_set_pointer_array’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:820:21: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_addin_argv_clone(data)’ # 818| if (!args) # 819| return NULL; # 820|-> cnv.c = args->argv; # 821| return freerdp_addin_argv_new(args->argc, cnv.cc); # 822| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_server_license_issuers_copy’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:939:40: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(*<unknown>)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:932:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:933:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:918:9: note: in expansion of macro ‘WINPR_ASSERT’ # 937| return FALSE; # 938| # 939|-> for (UINT32 x = 0; x < count; x++) # 940| { # 941| char* issuer = _strdup(issuers[x]); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:1284:6: warning[unix.Malloc]: Potential leak of memory pointed to by 'copy' # 1282| // freerdp_settings_set_pointer takes ownership of copy # 1283| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 1284|-> if (lenId < 0) # 1285| return TRUE; # 1286| return freerdp_settings_set_uint32(settings, (FreeRDP_Settings_Keys_UInt32)lenId, len); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_settings_set_pointer_len_’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:1284:12: warning[-Wanalyzer-malloc-leak]: leak of ‘copy’ # 1282| // freerdp_settings_set_pointer takes ownership of copy # 1283| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 1284|-> if (lenId < 0) # 1285| return TRUE; # 1286| return freerdp_settings_set_uint32(settings, (FreeRDP_Settings_Keys_UInt32)lenId, len); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:1286:16: warning[-Wanalyzer-malloc-leak]: leak of ‘copy’ # 1284| if (lenId < 0) # 1285| return TRUE; # 1286|-> return freerdp_settings_set_uint32(settings, (FreeRDP_Settings_Keys_UInt32)lenId, len); # 1287| } # 1288| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_settings_set_pointer_array’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings.c:1678:40: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(data)’ # 1676| free(settings->TargetNetAddresses[offset]); # 1677| settings->TargetNetAddresses[offset] = _strdup((const char*)data); # 1678|-> return settings->TargetNetAddresses[offset] != NULL; # 1679| case FreeRDP_TargetNetPorts: # 1680| maxOffset = freerdp_settings_get_uint32(settings, FreeRDP_TargetNetAddressCount); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings_getters.c: scope_hint: In function ‘freerdp_settings_set_int16’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings_getters.c:1583:11: warning[-Wunused-but-set-variable]: variable ‘cnv’ set but not used # 1583 | } cnv; # | ^~~ # 1581| INT16 c; # 1582| const INT16 cc; # 1583|-> } cnv; # 1584| WINPR_ASSERT(settings); # 1585| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings_getters.c: scope_hint: In function ‘freerdp_settings_set_int64’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/common/settings_getters.c:2621:11: warning[-Wunused-but-set-variable]: variable ‘cnv’ set but not used # 2621 | } cnv; # | ^~~ # 2619| INT64 c; # 2620| const INT64 cc; # 2621|-> } cnv; # 2622| WINPR_ASSERT(settings); # 2623| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c: scope_hint: In function ‘aad_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c:810:9: warning[-Wanalyzer-mismatching-deallocation]: ‘aad’ should have been deallocated with ‘free’ but was deallocated with ‘aad_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/crypto/crypto.h:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c:791:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c:792:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c:792:9: note: in expansion of macro ‘WINPR_ASSERT’ # 808| WINPR_PRAGMA_DIAG_PUSH # 809| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 810|-> aad_free(aad); # 811| WINPR_PRAGMA_DIAG_POP # 812| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c: scope_hint: In function ‘aad_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c:820:17: warning[-Wanalyzer-use-after-free]: use after ‘aad_free’ of ‘aad’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c:791:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c:792:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/aad.c:792:9: note: in expansion of macro ‘WINPR_ASSERT’ # 818| return; # 819| # 820|-> free(aad->hostname); # 821| free(aad->scope); # 822| free(aad->nonce); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/activation.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/activation.c:269:3: warning[core.uninitialized.Assign]: Assigned value is garbage or undefined # 267| for (UINT32 index = 0; index < info->keyCount; index++) # 268| { # 269|-> const UINT32 key1 = (UINT32)info->keyList[index]; # 270| const UINT32 key2 = (UINT32)(info->keyList[index] >> 32); # 271| Stream_Write_UINT32(s, key1); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/activation.c:368:2: warning[deadcode.DeadStores]: Value stored to 'keyCount' is never read # 366| keyCount -= info.numEntriesCache3; # 367| info.numEntriesCache4 = MIN(keyCount, info.totalEntriesCache4); # 368|-> keyCount -= info.numEntriesCache4; # 369| # 370| info.totalEntriesCache0 = info.numEntriesCache0; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/autodetect.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/autodetect.c:432:13: warning[-Wunused-function]: ‘autodetect_send_netchar_sync’ defined but not used # 432 | static BOOL autodetect_send_netchar_sync(rdpAutoDetect* autodetect, RDP_TRANSPORT_TYPE transport, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 430| } # 431| # 432|-> static BOOL autodetect_send_netchar_sync(rdpAutoDetect* autodetect, RDP_TRANSPORT_TYPE transport, # 433| UINT16 sequenceNumber) # 434| { Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING (CWE-758): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c:1943: error[shiftTooManyBitsSigned]: Shifting signed 32-bit value by 31 bits is undefined behaviour # 1941| */ # 1942| WINPR_ASSERT(cellInfo); # 1943|-> info = (cellInfo->numEntries | (cellInfo->persistent << 31)); # 1944| Stream_Write_UINT32(s, info); # 1945| } Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c: scope_hint: At top level freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c:2356:13: warning[-Wunused-function]: ‘rdp_write_draw_gdiplus_cache_capability_set’ defined but not used # 2356 | static BOOL rdp_write_draw_gdiplus_cache_capability_set(wStream* s, const rdpSettings* settings) # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 2354| */ # 2355| # 2356|-> static BOOL rdp_write_draw_gdiplus_cache_capability_set(wStream* s, const rdpSettings* settings) # 2357| { # 2358| WINPR_ASSERT(settings); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c:3048:40: warning[-Wunused-but-set-variable]: variable ‘rfxPropsLength’ set but not used # 3048 | UINT32 rfxPropsLength = 0; # | ^~~~~~~~~~~~~~ # 3046| { # 3047| UINT32 rfxCapsLength = 0; # 3048|-> UINT32 rfxPropsLength = 0; # 3049| UINT32 captureFlags = 0; # 3050| guidRemoteFx = TRUE; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c:3068:48: warning[-Wunused-but-set-variable]: variable ‘icapLen’ set but not used # 3068 | UINT16 icapLen = 0; # | ^~~~~~~ # 3066| UINT16 capsetType = 0; # 3067| UINT16 numIcaps = 0; # 3068|-> UINT16 icapLen = 0; # 3069| /* TS_RFX_CAPS */ # 3070| if (!Stream_CheckAndLogRequiredLength(TAG, sub, 21)) Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c:3106:54: warning[-Wunused-but-set-variable]: variable ‘codecFlags’ set but not used # 3106 | BYTE codecFlags = 0; # | ^~~~~~~~~~ # 3104| UINT16 version = 0; # 3105| UINT16 tileSize = 0; # 3106|-> BYTE codecFlags = 0; # 3107| BYTE colConvBits = 0; # 3108| BYTE transformBits = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c: scope_hint: In function ‘rdp_read_bitmap_codecs_capability_set’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c:3109:54: warning[-Wunused-but-set-variable]: variable ‘entropyBits’ set but not used # 3109 | BYTE entropyBits = 0; # | ^~~~~~~~~~~ # 3107| BYTE colConvBits = 0; # 3108| BYTE transformBits = 0; # 3109|-> BYTE entropyBits = 0; # 3110| /* TS_RFX_ICAP */ # 3111| if (!Stream_CheckAndLogRequiredLength(TAG, sub, 8)) Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c:3938:3: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull' # 3936| if (!tmp && (size > 0)) # 3937| return FALSE; # 3938|-> memcpy(tmp, Stream_Buffer(sub), size); # 3939| settings->ReceivedCapabilityData[type] = tmp; # 3940| } Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c: scope_hint: In function ‘rdp_recv_demand_active’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/capabilities.c:4308:16: warning[-Wunused-but-set-variable]: variable ‘SessionId’ set but not used # 4308 | UINT32 SessionId = 0; # | ^~~~~~~~~ # 4306| return FALSE; # 4307| # 4308|-> UINT32 SessionId = 0; # 4309| Stream_Read_UINT32(s, SessionId); /* SessionId */ # 4310| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/channels.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c: scope_hint: In function ‘transport_bio_named_read’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:221:25: warning[-Wanalyzer-out-of-bounds]: stack-based buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/tcp.h:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:20: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:221:25: note: read of 8 bytes from after the end of ‘chunks’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:221:25: note: valid subscripts for ‘chunks’ are ‘[0]’ to ‘[1]’ # └──────────────────────────┘ # ^ # 219| for (int i = 0; i < nchunks; i++) # 220| { # 221|-> memcpy(buf, chunks[i].data, chunks[i].size); # 222| buf += chunks[i].size; # 223| } Error: GCC_ANALYZER_WARNING (CWE-126): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:221:46: warning[-Wanalyzer-out-of-bounds]: stack-based buffer over-read freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:221:46: note: read of 8 bytes from after the end of ‘chunks’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:221:46: note: valid subscripts for ‘chunks’ are ‘[0]’ to ‘[1]’ # └────────────────────────────────┘ # ^ # 219| for (int i = 0; i < nchunks; i++) # 220| { # 221|-> memcpy(buf, chunks[i].data, chunks[i].size); # 222| buf += chunks[i].size; # 223| } Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c: scope_hint: In function ‘createChildSessionTransport’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:472:13: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 472 | (WinStationCreateChildSessionTransportFn)GetProcAddress( # | ^ # 470| # 471| WinStationCreateChildSessionTransportFn createChildSessionFn = # 472|-> (WinStationCreateChildSessionTransportFn)GetProcAddress( # 473| hModule, "WinStationCreateChildSessionTransport"); # 474| if (!createChildSessionFn) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c: scope_hint: In function ‘createChildSessionTransport’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:509:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileW(&pipePath, 3221225472, 0, 0, 3, 1073741824, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/childsession.c:441:9: note: in expansion of macro ‘WINPR_ASSERT’ # 507| HANDLE f = CreateFileW(pipePath, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, # 508| FILE_FLAG_OVERLAPPED, NULL); # 509|-> if (f == INVALID_HANDLE_VALUE) # 510| { # 511| WLog_ERR(TAG, "error when connecting to local named pipe"); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/client.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/client.c: scope_hint: In function ‘freerdp_channels_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/client.c:163:9: warning[-Wanalyzer-mismatching-deallocation]: ‘channels’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_channels_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/client.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/client.c:143:9: note: in expansion of macro ‘InitOnceExecuteOnce’ # 161| WINPR_PRAGMA_DIAG_PUSH # 162| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 163|-> freerdp_channels_free(channels); # 164| WINPR_PRAGMA_DIAG_POP # 165| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/client.c: scope_hint: In function ‘freerdp_channels_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/client.c:175:21: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_channels_free’ of ‘channels’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/client.c:143:9: note: in expansion of macro ‘InitOnceExecuteOnce’ # 173| DeleteCriticalSection(&channels->channelsLock); # 174| # 175|-> if (channels->queue) # 176| { # 177| MessageQueue_Free(channels->queue); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/codecs.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/connection.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/credssp_auth.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/credssp_auth.c:463:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 461| * line, still, authentication succeeded */ # 462| WINPR_ASSERT(auth->table->QueryContextAttributes); # 463|-> status = # 464| auth->table->QueryContextAttributes(&auth->context, SECPKG_ATTR_SIZES, &auth->sizes); # 465| WLog_DBG(TAG, "Context sizes: cbMaxSignature=%d, cbSecurityTrailer=%d", Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/credssp_auth.c: scope_hint: In function ‘auth_resolve_sspi_table’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/credssp_auth.c:817:45: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 817 | InitSecurityInterface_ptr = (INIT_SECURITY_INTERFACE)GetProcAddress(hSSPI, proc_name); # | ^ # 815| WLog_INFO(TAG, "Using SSPI Module: %s", module_name); # 816| # 817|-> InitSecurityInterface_ptr = (INIT_SECURITY_INTERFACE)GetProcAddress(hSSPI, proc_name); # 818| # 819| free(sspi_module); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/fastpath.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/freerdp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/freerdp.c: scope_hint: In function ‘freerdp_get_build_config’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/freerdp.c:721:13: warning[-Woverlength-strings]: string length ‘4788’ is greater than the length ‘4095’ ISO C99 compilers are required to support # 721 | "Target architecture: " FREERDP_TARGET_ARCH "\n"; # | ^~~~~~~~~~~~~~~~~~~~~~~ # 719| "CFLAGS: " FREERDP_CFLAGS "\n" # 720| "Compiler: " FREERDP_COMPILER_ID ", " FREERDP_COMPILER_VERSION "\n" # 721|-> "Target architecture: " FREERDP_TARGET_ARCH "\n"; # 722| return build_config; # 723| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/arm.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING (CWE-664): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:348: error[va_end_missing]: va_list 'ap' was opened but not closed by va_end(). # 346| va_list ap; # 347| va_start(ap, Pragma); # 348|-> return list_append(context, Pragma, ap); # 349| } # 350| Error: CPPCHECK_WARNING (CWE-664): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:359: error[va_end_missing]: va_list 'ap' was opened but not closed by va_end(). # 357| va_list ap; # 358| va_start(ap, Pragma); # 359|-> return list_append(context, Pragma, ap); # 360| } # 361| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_recv’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1452:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1466:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1466:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:716:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_recv’ /usr/include/openssl/ssl.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/tls.h:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.h:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:40: included_from: Included from here. # 1450| return response; # 1451| out_error: # 1452|-> http_response_free(response); # 1453| return NULL; # 1454| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1452:9: warning[-Wanalyzer-mismatching-deallocation]: ‘http_response_new()’ should have been deallocated with ‘free’ but was deallocated with ‘http_response_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1466:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1466:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:716:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_recv’ # 1450| return response; # 1451| out_error: # 1452|-> http_response_free(response); # 1453| return NULL; # 1454| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1480:12: warning[-Wanalyzer-malloc-leak]: leak of ‘http_response_new()’ # 1478| HttpResponse* response = (HttpResponse*)calloc(1, sizeof(HttpResponse)); # 1479| # 1480|-> if (!response) # 1481| return NULL; # 1482| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1504:36: warning[-Wanalyzer-malloc-leak]: leak of ‘http_response_new()’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1466:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1466:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1502| goto fail; # 1503| # 1504|-> response->TransferEncoding = TransferEncodingIdentity; # 1505| return response; # 1506| fail: Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1509:9: warning[-Wanalyzer-mismatching-deallocation]: ‘response’ should have been deallocated with ‘free’ but was deallocated with ‘http_response_free’ # 1507| WINPR_PRAGMA_DIAG_PUSH # 1508| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1509|-> http_response_free(response); # 1510| WINPR_PRAGMA_DIAG_POP # 1511| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1519:22: warning[-Wanalyzer-use-after-free]: use after ‘http_response_free’ of ‘response’ # 1517| return; # 1518| # 1519|-> free(response->lines); # 1520| ListDictionary_Free(response->Authenticates); # 1521| ListDictionary_Free(response->SetCookie); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/ncacn_http.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rdg.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rdg.c: scope_hint: In function ‘rdg_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rdg.c:2297:9: warning[-Wanalyzer-mismatching-deallocation]: ‘rdg’ should have been deallocated with ‘free’ but was deallocated with ‘rdg_free’ # 2295| WINPR_PRAGMA_DIAG_PUSH # 2296| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2297|-> rdg_free(rdg); # 2298| WINPR_PRAGMA_DIAG_POP # 2299| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rdg.c: scope_hint: In function ‘rdg_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rdg.c:2307:9: warning[-Wanalyzer-use-after-free]: use after ‘rdg_free’ of ‘rdg’ # 2305| return; # 2306| # 2307|-> freerdp_tls_free(rdg->tlsOut); # 2308| freerdp_tls_free(rdg->tlsIn); # 2309| http_context_free(rdg->http); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:66:14: warning[deadcode.DeadStores]: Value stored to 'str' during its initialization is never read # 64| static const char* client_in_state_str(CLIENT_IN_CHANNEL_STATE state) # 65| { # 66|-> const char* str = "CLIENT_IN_CHANNEL_STATE_UNKNOWN"; # 67| # 68| switch (state) Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:103:14: warning[deadcode.DeadStores]: Value stored to 'str' during its initialization is never read # 101| static const char* client_out_state_str(CLIENT_OUT_CHANNEL_STATE state) # 102| { # 103|-> const char* str = "CLIENT_OUT_CHANNEL_STATE_UNKNOWN"; # 104| # 105| switch (state) Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:152:14: warning[deadcode.DeadStores]: Value stored to 'str' during its initialization is never read # 150| const char* rpc_vc_state_str(VIRTUAL_CONNECTION_STATE state) # 151| { # 152|-> const char* str = "VIRTUAL_CONNECTION_STATE_UNKNOWN"; # 153| # 154| switch (state) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_out_channel_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:503:13: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_out_channel_new(rpc, &*connection.Cookie)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:674:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:564:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:565:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:565:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:615:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:616:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:616:9: note: in expansion of macro ‘WINPR_ASSERT’ # 501| UINT32 timeout = 0; # 502| # 503|-> if (!client || !channel || !inout || !client->context || !client->context->settings) # 504| return -1; # 505| Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_channel_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:597:9: warning[-Wanalyzer-use-after-free]: use after ‘rpc_channel_free’ of ‘channel’ # 595| return; # 596| # 597|-> credssp_auth_free(channel->auth); # 598| http_context_free(channel->http); # 599| freerdp_tls_free(channel->tls); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_out_channel_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:641:16: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_out_channel_new(rpc, &*connection.Cookie)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:674:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:564:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:565:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:565:9: note: in expansion of macro ‘WINPR_ASSERT’ # 639| } # 640| # 641|-> return outChannel; # 642| } # 643| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_virtual_connection_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:669:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:674:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:564:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:565:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:565:9: note: in expansion of macro ‘WINPR_ASSERT’ # 667| if (connection->NonDefaultOutChannel) # 668| rpc_channel_free(&connection->NonDefaultOutChannel->common); # 669|-> free(connection); # 670| } # 671| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:962:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:919:9: note: in expansion of macro ‘WINPR_ASSERT’ # 960| WINPR_PRAGMA_DIAG_PUSH # 961| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 962|-> rpc_free(rpc); # 963| WINPR_PRAGMA_DIAG_POP # 964| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:962:9: warning[-Wanalyzer-mismatching-deallocation]: ‘rpc’ should have been deallocated with ‘free’ but was deallocated with ‘rpc_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:919:9: note: in expansion of macro ‘WINPR_ASSERT’ # 960| WINPR_PRAGMA_DIAG_PUSH # 961| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 962|-> rpc_free(rpc); # 963| WINPR_PRAGMA_DIAG_POP # 964| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:971:17: warning[-Wanalyzer-use-after-free]: use after ‘rpc_free’ of ‘rpc’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc.c:919:9: note: in expansion of macro ‘WINPR_ASSERT’ # 969| if (rpc) # 970| { # 971|-> rpc_client_free(rpc->client); # 972| credssp_auth_free(rpc->auth); # 973| rpc_virtual_connection_free(rpc->VirtualConnection); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c: scope_hint: In function ‘rpc_send_bind_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:274:34: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_client_call_new(bind_pdu.header.call_id, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:188:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:192:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:32: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:236:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:249:9: note: in expansion of macro ‘CopyMemory’ # 272| goto fail; # 273| # 274|-> if (!ArrayList_Append(rpc->client->ClientCallList, clientCall)) # 275| { # 276| rpc_client_call_free(clientCall); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c: scope_hint: In function ‘rpc_send_rpc_auth_3_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:430:12: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_client_call_new(auth_3_pdu.header.call_id, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:387:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:390:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:393:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:203:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_bind.c:395:9: note: in expansion of macro ‘WLog_DBG’ # 428| clientCall = rpc_client_call_new(auth_3_pdu.header.call_id, 0); # 429| # 430|-> if (ArrayList_Append(rpc->client->ClientCallList, clientCall)) # 431| { # 432| Stream_SealLength(buffer); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c:48:14: warning[deadcode.DeadStores]: Value stored to 'str' during its initialization is never read # 46| static const char* rpc_client_state_str(RPC_CLIENT_STATE state) # 47| { # 48|-> const char* str = "RPC_CLIENT_STATE_UNKNOWN"; # 49| # 50| switch (state) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c: scope_hint: In function ‘rpc_client_call_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c:954:12: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_client_call_new(*rpc.CallId, (unsigned int)opnum)’ # 952| clientCall = (RpcClientCall*)calloc(1, sizeof(RpcClientCall)); # 953| # 954|-> if (!clientCall) # 955| return NULL; # 956| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c:959:27: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_client_call_new(*rpc.CallId, (unsigned int)opnum)’ # 957| clientCall->CallId = CallId; # 958| clientCall->OpNum = OpNum; # 959|-> clientCall->State = RPC_CLIENT_CALL_STATE_SEND_PDUS; # 960| return clientCall; # 961| } Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c: scope_hint: In function ‘rpc_in_channel_send_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c:990:27: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’ # 988| # 989| clientCall = rpc_client_call_find_by_id(inChannel->common.client, header.call_id); # 990|-> clientCall->State = RPC_CLIENT_CALL_STATE_DISPATCHED; # 991| # 992| /* Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c: scope_hint: In function ‘rpc_client_write_call’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c:1065:34: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_client_call_new(*rpc.CallId, (unsigned int)opnum)’ # 1063| goto fail; # 1064| # 1065|-> if (!ArrayList_Append(rpc->client->ClientCallList, clientCall)) # 1066| { # 1067| rpc_client_call_free(clientCall); Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c:1067:17: warning[-Wanalyzer-mismatching-deallocation]: ‘rpc_client_call_new(*rpc.CallId, (unsigned int)opnum)’ should have been deallocated with ‘free’ but was deallocated with ‘rpc_client_call_free’ # 1065| if (!ArrayList_Append(rpc->client->ClientCallList, clientCall)) # 1066| { # 1067|-> rpc_client_call_free(clientCall); # 1068| goto fail; # 1069| } Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c:1072:6: warning[unix.Malloc]: Potential leak of memory pointed to by 'clientCall' # 1070| # 1071| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ArrayList_Append takes ownership of clientCall # 1072|-> if (request_pdu.opnum == TsProxySetupReceivePipeOpnum) # 1073| rpc->PipeCallId = request_pdu.header.call_id; # 1074| Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c: scope_hint: In function ‘rpc_client_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c:1197:9: warning[-Wanalyzer-mismatching-deallocation]: ‘client’ should have been deallocated with ‘free’ but was deallocated with ‘rpc_client_free’ # 1195| WINPR_PRAGMA_DIAG_PUSH # 1196| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1197|-> rpc_client_free(client); # 1198| WINPR_PRAGMA_DIAG_POP # 1199| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c: scope_hint: In function ‘rpc_client_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rpc_client.c:1207:20: warning[-Wanalyzer-use-after-free]: use after ‘rpc_client_free’ of ‘client’ # 1205| return; # 1206| # 1207|-> free(client->host); # 1208| # 1209| if (client->ReceiveFragment) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rts.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/rts_signature.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c: scope_hint: In function ‘tsg_ndr_read_tsg_caps’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c:505:16: warning[-Wunused-but-set-variable]: variable ‘count’ set but not used # 505 | UINT32 count = 0; # | ^~~~~ # 503| { # 504| UINT32 capabilityType = 0; # 505|-> UINT32 count = 0; # 506| WINPR_ASSERT(caps); # 507| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c:692:16: warning[-Wunused-but-set-variable]: variable ‘MaxOffsetValue’ set but not used # 692 | UINT32 MaxOffsetValue = 0; # | ^~~~~~~~~~~~~~ # 690| UINT32 ResponseDataPtr = 0; # 691| UINT32 MaxSizeValue = 0; # 692|-> UINT32 MaxOffsetValue = 0; # 693| UINT32 idleTimeout = 0; # 694| UINT32 reserved = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c:693:16: warning[-Wunused-but-set-variable]: variable ‘idleTimeout’ set but not used # 693 | UINT32 idleTimeout = 0; # | ^~~~~~~~~~~ # 691| UINT32 MaxSizeValue = 0; # 692| UINT32 MaxOffsetValue = 0; # 693|-> UINT32 idleTimeout = 0; # 694| UINT32 reserved = 0; # 695| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c: scope_hint: In function ‘tsg_ndr_read_packet_response’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c:694:16: warning[-Wunused-but-set-variable]: variable ‘reserved’ set but not used # 694 | UINT32 reserved = 0; # | ^~~~~~~~ # 692| UINT32 MaxOffsetValue = 0; # 693| UINT32 idleTimeout = 0; # 694|-> UINT32 reserved = 0; # 695| # 696| WINPR_ASSERT(response); Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c:1528:16: warning[-Wunused-but-set-variable]: variable ‘MsgId’ set but not used # 1528 | UINT32 MsgId = 0; # | ^~~~~ # 1526| UINT32 PacketQuarResponsePtr = 0; # 1527| UINT32 MessageSwitchValue = 0; # 1528|-> UINT32 MsgId = 0; # 1529| UINT32 MsgType = 0; # 1530| UINT32 IsMessagePresent = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c:1529:16: warning[-Wunused-but-set-variable]: variable ‘MsgType’ set but not used # 1529 | UINT32 MsgType = 0; # | ^~~~~~~ # 1527| UINT32 MessageSwitchValue = 0; # 1528| UINT32 MsgId = 0; # 1529|-> UINT32 MsgType = 0; # 1530| UINT32 IsMessagePresent = 0; # 1531| Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c: scope_hint: In function ‘tsg_ndr_read_caps_response’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/tsg.c:1530:16: warning[-Wunused-but-set-variable]: variable ‘IsMessagePresent’ set but not used # 1530 | UINT32 IsMessagePresent = 0; # | ^~~~~~~~~~~~~~~~ # 1528| UINT32 MsgId = 0; # 1529| UINT32 MsgType = 0; # 1530|-> UINT32 IsMessagePresent = 0; # 1531| # 1532| WINPR_ASSERT(context); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/websocket.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:841:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:722:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:723:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:723:9: note: in expansion of macro ‘WINPR_ASSERT’ # 839| WINPR_PRAGMA_DIAG_PUSH # 840| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 841|-> wst_free(wst); # 842| WINPR_PRAGMA_DIAG_POP # 843| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c: scope_hint: In function ‘wst_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:841:9: warning[-Wanalyzer-mismatching-deallocation]: ‘wst’ should have been deallocated with ‘free’ but was deallocated with ‘wst_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:722:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:723:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:723:9: note: in expansion of macro ‘WINPR_ASSERT’ # 839| WINPR_PRAGMA_DIAG_PUSH # 840| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 841|-> wst_free(wst); # 842| WINPR_PRAGMA_DIAG_POP # 843| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c: scope_hint: In function ‘wst_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:851:9: warning[-Wanalyzer-use-after-free]: use after ‘wst_free’ of ‘wst’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:722:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:723:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/wst.c:723:9: note: in expansion of macro ‘WINPR_ASSERT’ # 849| return; # 850| # 851|-> freerdp_tls_free(wst->tls); # 852| http_context_free(wst->http); # 853| credssp_auth_free(wst->auth); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gcc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gcc.c: scope_hint: In function ‘gcc_read_client_core_data’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gcc.c:1192:24: warning[-Wunused-but-set-variable]: variable ‘clientProductIdLen’ set but not used # 1192 | UINT16 clientProductIdLen = 0; # | ^~~~~~~~~~~~~~~~~~ # 1190| do # 1191| { # 1192|-> UINT16 clientProductIdLen = 0; # 1193| if (blockLength < 2) # 1194| break; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gcc.c: scope_hint: In function ‘gcc_read_server_network_data’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gcc.c:1898:16: warning[-Wunused-but-set-variable]: variable ‘MCSChannelId’ set but not used # 1898 | UINT16 MCSChannelId = 0; # | ^~~~~~~~~~~~ # 1896| { # 1897| UINT16 channelId = 0; # 1898|-> UINT16 MCSChannelId = 0; # 1899| UINT16 channelCount = 0; # 1900| UINT32 parsedChannelCount = 0; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/heartbeat.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/heartbeat.c: scope_hint: In function ‘rdp_recv_heartbeat_packet’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/heartbeat.c:28:14: warning[-Wunused-but-set-variable]: variable ‘reserved’ set but not used # 28 | BYTE reserved = 0; # | ^~~~~~~~ # 26| state_run_t rdp_recv_heartbeat_packet(rdpRdp* rdp, wStream* s) # 27| { # 28|-> BYTE reserved = 0; # 29| BYTE period = 0; # 30| BYTE count1 = 0; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/info.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: scope_hint: In function ‘license_answer_license_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:494:51: warning[-Wanalyzer-malloc-leak]: leak of ‘loadCalFile(*license_29(D)->rdp.settings, *_1->settings.ClientHostname, & license_size)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2382:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2383:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2384:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:605:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:478:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/settings.h:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:615:9: note: in expansion of macro ‘sprintf_s’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/string.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:628:9: note: in expansion of macro ‘_fseeki64’ # 492| # 493| for (size_t i = 0; i < sizeof(hash); i++, hashStr += 2) # 494|-> sprintf_s(hashStr, 3, "%.2x", hash[i]); # 495| # 496| ret = TRUE; Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:800:6: warning[-Wunused-function]: ‘license_read_server_upgrade_license’ defined but not used # 800 | BOOL license_read_server_upgrade_license(rdpLicense* license, wStream* s) # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 798| } # 799| # 800|-> BOOL license_read_server_upgrade_license(rdpLicense* license, wStream* s) # 801| { # 802| WINPR_ASSERT(license); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: scope_hint: In function ‘license_read_binary_blob_data’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1478:9: warning[-Wanalyzer-malloc-leak]: leak of ‘*blob.data’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2614:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1494:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1499:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1499:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1499:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1500:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1500:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:716:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: scope_hint: In function ‘license_read_binary_blob_data’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1445:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1447:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1476| return FALSE; # 1477| } # 1478|-> memcpy(blob->data, data, blob->length); /* blobData */ # 1479| return TRUE; # 1480| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: scope_hint: In function ‘license_scope_list_resize’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1703:26: warning[-Wanalyzer-malloc-leak]: leak of ‘tmp’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2836:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2837:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2853:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2854:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2854:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2855:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2855:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2856:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2744:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2807:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2808:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2808:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2809:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2809:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2810:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2810:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2807:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2808:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2808:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2809:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2809:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2810:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2810:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1445:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1447:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1445:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1447:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:205:29: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1465:17: note: in expansion of macro ‘WLog_WARN’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:152:17: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:205:29: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1465:17: note: in expansion of macro ‘WLog_WARN’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1467:24: note: in expansion of macro ‘TRUE’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1670:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ # 1701| } # 1702| # 1703|-> scopeList->count = count; # 1704| return TRUE; # 1705| } Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: scope_hint: In function ‘license_read_platform_challenge_packet’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1956:16: warning[-Wunused-but-set-variable]: variable ‘ConnectFlags’ set but not used # 1956 | UINT32 ConnectFlags = 0; # | ^~~~~~~~~~~~ # 1954| { # 1955| BYTE macData[LICENSING_ENCRYPTION_KEY_LENGTH] = { 0 }; # 1956|-> UINT32 ConnectFlags = 0; # 1957| # 1958| WINPR_ASSERT(license); Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: scope_hint: At top level freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2556:6: warning[-Wunused-function]: ‘license_read_platform_challenge_response’ defined but not used # 2556 | BOOL license_read_platform_challenge_response(rdpLicense* license, wStream* s) # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 2554| } # 2555| # 2556|-> BOOL license_read_platform_challenge_response(rdpLicense* license, wStream* s) # 2557| { # 2558| UINT16 wVersion = 0; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2709:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2657:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: scope_hint: In function ‘license_new’ # 2707| WINPR_PRAGMA_DIAG_PUSH # 2708| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2709|-> license_free(license); # 2710| WINPR_PRAGMA_DIAG_POP # 2711| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: scope_hint: In function ‘license_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2709:9: warning[-Wanalyzer-mismatching-deallocation]: ‘license’ should have been deallocated with ‘free’ but was deallocated with ‘license_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2657:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2707| WINPR_PRAGMA_DIAG_PUSH # 2708| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2709|-> license_free(license); # 2710| WINPR_PRAGMA_DIAG_POP # 2711| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: scope_hint: In function ‘license_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2723:17: warning[-Wanalyzer-use-after-free]: use after ‘license_free’ of ‘license’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2657:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2721| if (license) # 2722| { # 2723|-> freerdp_certificate_free(license->certificate); # 2724| license_free_product_info(license->ProductInfo); # 2725| license_free_binary_blob(license->ErrorInfo); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/listener.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/listener.c: scope_hint: In function ‘freerdp_listener_open’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/listener.c:221:47: warning[-Wanalyzer-malloc-leak]: leak of ‘WSACreateEvent()’ # 219| listener->events[listener->num_sockfds] = WSACreateEvent(); # 220| # 221|-> if (!listener->events[listener->num_sockfds]) # 222| { # 223| listener->num_sockfds = 0; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/listener.c: scope_hint: In function ‘freerdp_listener_open_local’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/listener.c:300:30: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileDescriptorEventA(0, 0, 0, sockfd, 1)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/log.h:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/listener.c:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/listener.c:289:18: note: in expansion of macro ‘CreateFileDescriptorEvent’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/listener.c:289:18: note: in expansion of macro ‘CreateFileDescriptorEvent’ # 298| listener->sockfds[listener->num_sockfds] = sockfd; # 299| listener->events[listener->num_sockfds] = hevent; # 300|-> listener->num_sockfds++; # 301| WLog_INFO(TAG, "Listening on socket %s.", addr.sun_path); # 302| return TRUE; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/listener.c: scope_hint: In function ‘freerdp_listener_open_from_socket’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/listener.c:325:39: warning[-Wanalyzer-malloc-leak]: leak of ‘WSACreateEvent()’ # 323| listener->events[listener->num_sockfds] = WSACreateEvent(); # 324| # 325|-> if (!listener->events[listener->num_sockfds]) # 326| return FALSE; # 327| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/mcs.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_BitmapUpdate’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:132:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_bitmap_update(context, bitmap)’ # 130| return FALSE; # 131| # 132|-> up = update_cast(context->update); # 133| return MessageQueue_Post(up->queue, (void*)context, MakeMessageId(Update, BitmapUpdate), # 134| (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_Palette’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:150:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_palette_update(context, palette)’ # 148| return FALSE; # 149| # 150|-> up = update_cast(context->update); # 151| return MessageQueue_Post(up->queue, (void*)context, MakeMessageId(Update, Palette), # 152| (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_SurfaceBits’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:280:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_surface_bits_command(context, surfaceBitsCommand)’ # 278| return FALSE; # 279| # 280|-> up = update_cast(context->update); # 281| return MessageQueue_Post(up->queue, (void*)context, MakeMessageId(Update, SurfaceBits), # 282| (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_CacheBitmap’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:831:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_cache_bitmap_order(context, cacheBitmapOrder)’ # 829| return FALSE; # 830| # 831|-> up = update_cast(context->update); # 832| return MessageQueue_Post(up->queue, (void*)context, MakeMessageId(SecondaryUpdate, CacheBitmap), # 833| (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_CacheBitmapV2’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:850:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_cache_bitmap_v2_order(context, cacheBitmapV2Order)’ # 848| return FALSE; # 849| # 850|-> up = update_cast(context->update); # 851| return MessageQueue_Post(up->queue, (void*)context, # 852| MakeMessageId(SecondaryUpdate, CacheBitmapV2), (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_CacheBitmapV3’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:869:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_cache_bitmap_v3_order(context, cacheBitmapV3Order)’ # 867| return FALSE; # 868| # 869|-> up = update_cast(context->update); # 870| return MessageQueue_Post(up->queue, (void*)context, # 871| MakeMessageId(SecondaryUpdate, CacheBitmapV3), (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_CacheColorTable’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:888:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_cache_color_table_order(context, cacheColorTableOrder)’ # 886| return FALSE; # 887| # 888|-> up = update_cast(context->update); # 889| return MessageQueue_Post(up->queue, (void*)context, # 890| MakeMessageId(SecondaryUpdate, CacheColorTable), (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_CacheBrush’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:943:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_cache_brush_order(context, cacheBrushOrder)’ # 941| return FALSE; # 942| # 943|-> up = update_cast(context->update); # 944| return MessageQueue_Post(up->queue, (void*)context, MakeMessageId(SecondaryUpdate, CacheBrush), # 945| (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerPosition’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1585:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_pointer_position_update(context, pointerPosition)’ # 1583| return FALSE; # 1584| # 1585|-> up = update_cast(context->update); # 1586| return MessageQueue_Post(up->queue, (void*)context, # 1587| MakeMessageId(PointerUpdate, PointerPosition), (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerSystem’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1604:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_pointer_system_update(context, pointerSystem)’ # 1602| return FALSE; # 1603| # 1604|-> up = update_cast(context->update); # 1605| return MessageQueue_Post(up->queue, (void*)context, MakeMessageId(PointerUpdate, PointerSystem), # 1606| (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerColor’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1623:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_pointer_color_update(context, pointerColor)’ # 1621| return FALSE; # 1622| # 1623|-> up = update_cast(context->update); # 1624| return MessageQueue_Post(up->queue, (void*)context, MakeMessageId(PointerUpdate, PointerColor), # 1625| (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerLarge’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1641:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_pointer_large_update(context, pointer)’ # 1639| return FALSE; # 1640| # 1641|-> up = update_cast(context->update); # 1642| return MessageQueue_Post(up->queue, (void*)context, MakeMessageId(PointerUpdate, PointerLarge), # 1643| (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerNew’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1659:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_pointer_new_update(context, pointerNew)’ # 1657| return FALSE; # 1658| # 1659|-> up = update_cast(context->update); # 1660| return MessageQueue_Post(up->queue, (void*)context, MakeMessageId(PointerUpdate, PointerNew), # 1661| (void*)wParam, NULL); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerCached’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1678:14: warning[-Wanalyzer-malloc-leak]: leak of ‘copy_pointer_cached_update(context, pointerCached)’ # 1676| return FALSE; # 1677| # 1678|-> up = update_cast(context->update); # 1679| return MessageQueue_Post(up->queue, (void*)context, MakeMessageId(PointerUpdate, PointerCached), # 1680| (void*)wParam, NULL); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/multitransport.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nego.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c: scope_hint: In function ‘nla_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1998:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1959:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1960:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1960:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1963:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1996| WINPR_PRAGMA_DIAG_PUSH # 1997| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1998|-> nla_free(nla); # 1999| WINPR_PRAGMA_DIAG_POP # 2000| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1998:9: warning[-Wanalyzer-mismatching-deallocation]: ‘nla’ should have been deallocated with ‘free’ but was deallocated with ‘nla_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1959:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1960:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1960:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1963:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1996| WINPR_PRAGMA_DIAG_PUSH # 1997| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1998|-> nla_free(nla); # 1999| WINPR_PRAGMA_DIAG_POP # 2000| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c: scope_hint: In function ‘nla_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:2013:9: warning[-Wanalyzer-use-after-free]: use after ‘nla_free’ of ‘nla’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1959:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1960:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1960:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.c:1963:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2011| return; # 2012| # 2013|-> smartcardCertInfo_Free(nla->smartcardCert); # 2014| nla_buffer_free(nla); # 2015| sspi_SecBufferFree(&nla->tsCredentials); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/orders.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/peer.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/peer.c:1133:7: warning[deadcode.DeadStores]: Value stored to 'ret' is never read # 1131| { # 1132| if (!rdp_server_transition_to_state(rdp, CONNECTION_STATE_ACTIVE)) # 1133|-> ret = STATE_RUN_FAILED; # 1134| update_reset_state(rdp->update); # 1135| ret = STATE_RUN_CONTINUE; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/proxy.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/proxy.c:328:14: warning[deadcode.DeadStores]: Value stored to 'protocol' during its initialization is never read # 326| { # 327| BOOL rc = FALSE; # 328|-> const char* protocol = ""; # 329| UINT16 port = 0; # 330| char* p = NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c: scope_hint: In function ‘rdp_read_header’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:525:14: warning[-Wunused-but-set-variable]: variable ‘byte’ set but not used # 525 | BYTE byte = 0; # | ^~~~ # 523| { # 524| BYTE li = 0; # 525|-> BYTE byte = 0; # 526| BYTE code = 0; # 527| BYTE choice = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c: scope_hint: In function ‘rdp_recv_server_set_keyboard_indicators_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:954:16: warning[-Wunused-but-set-variable]: variable ‘unitId’ set but not used # 954 | UINT16 unitId = 0; # | ^~~~~~ # 952| static BOOL rdp_recv_server_set_keyboard_indicators_pdu(rdpRdp* rdp, wStream* s) # 953| { # 954|-> UINT16 unitId = 0; # 955| UINT16 ledFlags = 0; # 956| Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c: scope_hint: In function ‘rdp_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:2365:9: warning[-Wanalyzer-mismatching-deallocation]: ‘rdp’ should have been deallocated with ‘free’ but was deallocated with ‘rdp_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:2238:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:2245:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2363| WINPR_PRAGMA_DIAG_PUSH # 2364| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2365|-> rdp_free(rdp); # 2366| WINPR_PRAGMA_DIAG_POP # 2367| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c: scope_hint: In function ‘rdp_free_rc4_decrypt_keys’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:2632:9: warning[-Wanalyzer-use-after-free]: use after ‘rdp_free’ of ‘rdp’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:2238:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:2245:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:2372:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.c:2631:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2630| { # 2631| WINPR_ASSERT(rdp); # 2632|-> winpr_RC4_Free(rdp->rc4_decrypt_key); # 2633| rdp->rc4_decrypt_key = NULL; # 2634| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdstls.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/redirection.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/redirection.c: scope_hint: In function ‘rdp_recv_server_redirection_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/redirection.c:810:24: warning[-Wunused-but-set-variable]: variable ‘targetNetAddressesLength’ set but not used # 810 | UINT32 targetNetAddressesLength = 0; # | ^~~~~~~~~~~~~~~~~~~~~~~~ # 808| if (redirection->flags & LB_TARGET_NET_ADDRESSES) # 809| { # 810|-> UINT32 targetNetAddressesLength = 0; # 811| # 812| if (!Stream_CheckAndLogRequiredLength(TAG, s, 8)) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/security.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c: scope_hint: In function ‘wts_read_drdynvc_pdu’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:331:40: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘dvc’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:275:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:276:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:284:9: note: in expansion of macro ‘Stream_Read_UINT8’ # 329| # 330| case DATA_FIRST_PDU: # 331|-> if (dvc->dvc_open_state != DVC_OPEN_STATE_SUCCEEDED) # 332| { # 333| WLog_ERR(TAG, Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:343:40: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘dvc’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:275:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:276:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:284:9: note: in expansion of macro ‘Stream_Read_UINT8’ # 341| # 342| case DATA_PDU: # 343|-> if (dvc->dvc_open_state != DVC_OPEN_STATE_SUCCEEDED) # 344| { # 345| WLog_ERR(TAG, Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:943:9: warning[-Wanalyzer-mismatching-deallocation]: ‘channel_new(HashTable_GetItemValue(g_ServerHandles, (const void *)(long unsigned int)SessionId), client, 0, 0, 1, (long unsigned int)freerdp_settings_get_uint32(*client_41->context.settings, 2881), pVirtualName)’ should have been deallocated with ‘free’ but was deallocated with ‘server_channel_common_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c: scope_hint: In function ‘FreeRDP_WTSVirtualChannelOpenEx’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1386:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1240:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1241:9: note: in expansion of macro ‘WINPR_ASSERT’ # 941| static void channel_free(rdpPeerChannel* channel) # 942| { # 943|-> server_channel_common_free(channel); # 944| } # 945| Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1561:3: warning[deadcode.DeadStores]: Value stored to 'ret' is never read # 1559| CopyMemory(buffer, Buffer, length); # 1560| totalWritten = Length; # 1561|-> ret = wts_queue_send_item(channel, buffer, length); # 1562| } # 1563| else if (!channel->vcm->drdynvc_channel || (channel->vcm->drdynvc_state != DRDYNVC_STATE_READY)) Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1919:9: warning[-Wanalyzer-use-after-free]: use after ‘server_channel_common_free’ of ‘channel’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c: scope_hint: In function ‘server_channel_common_free’ # 1917| if (!channel) # 1918| return; # 1919|-> MessageQueue_Free(channel->queue); # 1920| Stream_Free(channel->receiveData, TRUE); # 1921| DeleteCriticalSection(&channel->writeLock); Error: GCC_ANALYZER_WARNING (CWE-457): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c: scope_hint: In function ‘server_channel_common_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1919:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*channel.queue’ # 1917| if (!channel) # 1918| return; # 1919|-> MessageQueue_Free(channel->queue); # 1920| Stream_Free(channel->receiveData, TRUE); # 1921| DeleteCriticalSection(&channel->writeLock); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c: scope_hint: In function ‘server_channel_common_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1930:12: warning[-Wanalyzer-malloc-leak]: leak of ‘server_channel_common_new(client, (int)index, ChannelId, chunkSize, & queueCallbacks, name)’ # 1928| { # 1929| rdpPeerChannel* channel = (rdpPeerChannel*)calloc(1, sizeof(rdpPeerChannel)); # 1930|-> if (!channel) # 1931| return NULL; # 1932| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1933:35: warning[-Wanalyzer-malloc-leak]: leak of ‘server_channel_common_new(client, (int)index, ChannelId, chunkSize, & queueCallbacks, name)’ # 1931| return NULL; # 1932| # 1933|-> InitializeCriticalSection(&channel->writeLock); # 1934| # 1935| channel->receiveData = Stream_New(NULL, chunkSize); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1946:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ # 1944| channel->client = client; # 1945| channel->channelId = channelId; # 1946|-> strncpy(channel->channelName, name, ARRAYSIZE(channel->channelName) - 1); # 1947| return channel; # 1948| fail: Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/server.c:1951:9: warning[-Wanalyzer-mismatching-deallocation]: ‘channel’ should have been deallocated with ‘free’ but was deallocated with ‘server_channel_common_free’ # 1949| WINPR_PRAGMA_DIAG_PUSH # 1950| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1951|-> server_channel_common_free(channel); # 1952| WINPR_PRAGMA_DIAG_POP # 1953| return NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/settings.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/smartcardlogon.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/streamdump.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/surface.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/tcp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/tcp.c:106:13: warning[-Wunused-function]: ‘transport_bio_simple_callback’ defined but not used # 106 | static long transport_bio_simple_callback(BIO* bio, int mode, const char* argp, int argi, long argl, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 104| static int transport_bio_simple_uninit(BIO* bio); # 105| # 106|-> static long transport_bio_simple_callback(BIO* bio, int mode, const char* argp, int argi, long argl, # 107| long ret) # 108| { Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/tcp.c:465:13: warning[-Wunused-function]: ‘transport_bio_buffered_callback’ defined but not used # 465 | static long transport_bio_buffered_callback(BIO* bio, int mode, const char* argp, int argi, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 463| } WINPR_BIO_BUFFERED_SOCKET; # 464| # 465|-> static long transport_bio_buffered_callback(BIO* bio, int mode, const char* argp, int argi, # 466| long argl, long ret) # 467| { Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/timezone.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/tpdu.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/tpkt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:329:60: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 329 | BIO_callback_ctrl(tls->bio, BIO_CTRL_SET_CALLBACK, (bio_info_cb*)(void*)transport_ssl_cb); # | ^ # 327| # 328| transport->frontBio = tls->bio; # 329|-> BIO_callback_ctrl(tls->bio, BIO_CTRL_SET_CALLBACK, (bio_info_cb*)(void*)transport_ssl_cb); # 330| SSL_set_app_data(tls->ssl, transport); # 331| Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c: scope_hint: In function ‘transport_default_connect_tls’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:329:74: warning[-Wpedantic]: ISO C forbids conversion of function pointer to object pointer type # 329 | BIO_callback_ctrl(tls->bio, BIO_CTRL_SET_CALLBACK, (bio_info_cb*)(void*)transport_ssl_cb); # | ^ # 327| # 328| transport->frontBio = tls->bio; # 329|-> BIO_callback_ctrl(tls->bio, BIO_CTRL_SET_CALLBACK, (bio_info_cb*)(void*)transport_ssl_cb); # 330| SSL_set_app_data(tls->ssl, transport); # 331| Error: GCC_ANALYZER_WARNING (CWE-457): freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings_types_private.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c: scope_hint: In function ‘transport_disconnect’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:1505:49: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*transport.io.TransportDisconnect’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:103:11: note: in definition of macro ‘IFCALLRESULT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:1554:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:103:11: note: in definition of macro ‘IFCALLRESULT’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:103:11: note: in definition of macro ‘IFCALLRESULT’ # 1503| if (!transport) # 1504| return FALSE; # 1505|-> return IFCALLRESULT(FALSE, transport->io.TransportDisconnect, transport); # 1506| } # 1507| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:1617:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:1554:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:1587:37: note: in expansion of macro ‘CreateEvent’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:1587:37: note: in expansion of macro ‘CreateEvent’ # 1615| WINPR_PRAGMA_DIAG_PUSH # 1616| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1617|-> transport_free(transport); # 1618| WINPR_PRAGMA_DIAG_POP # 1619| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c: scope_hint: In function ‘transport_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:1617:9: warning[-Wanalyzer-mismatching-deallocation]: ‘transport’ should have been deallocated with ‘free’ but was deallocated with ‘transport_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/transport.c:1554:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1615| WINPR_PRAGMA_DIAG_PUSH # 1616| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1617|-> transport_free(transport); # 1618| WINPR_PRAGMA_DIAG_POP # 1619| return NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/update.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/update.c: scope_hint: In function ‘update_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/update.c:3275:54: warning[-Wanalyzer-use-after-free]: use after ‘update_free’ of ‘update’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/update.c:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/update.c:3203:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/update.c:3204:9: note: in expansion of macro ‘WINPR_ASSERT’ # 3273| { # 3274| rdp_update_internal* up = update_cast(update); # 3275|-> rdp_altsec_update_internal* altsec = altsec_update_cast(update->altsec); # 3276| OFFSCREEN_DELETE_LIST* deleteList = &(altsec->create_offscreen_bitmap.deleteList); # 3277| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/utils.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/window.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/base64.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-131): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c: scope_hint: In function ‘ber_read_unicode_octet_string’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:460:15: warning[-Wanalyzer-allocation-size]: allocated buffer size is not a multiple of the pointee's size freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:127:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/crypto/ber.h:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:129:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:132:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:132:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:132:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:36:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:37:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:37:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:39:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:42:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:42:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:42:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/ber.c:457:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ # 458| return FALSE; # 459| # 460|-> ret = calloc(1, length + 2); # 461| if (!ret) # 462| return FALSE; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/cert_common.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:993:13: warning[-Wunused-function]: ‘certificate_write_server_x509_certificate_chain’ defined but not used # 993 | static BOOL certificate_write_server_x509_certificate_chain(const rdpCertificate* certificate, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 991| } # 992| # 993|-> static BOOL certificate_write_server_x509_certificate_chain(const rdpCertificate* certificate, # 994| wStream* s) # 995| { Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c: scope_hint: In function ‘freerdp_certificate_clone’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1154:9: warning[-Wanalyzer-mismatching-deallocation]: ‘freerdp_certificate_new()’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:31: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1123:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1124:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1124:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1152| out_fail: # 1153| # 1154|-> freerdp_certificate_free(_certificate); # 1155| return NULL; # 1156| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c: scope_hint: In function ‘freerdp_certificate_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1165:16: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new()’ # 1163| rdpCertificate* freerdp_certificate_new(void) # 1164| { # 1165|-> return (rdpCertificate*)calloc(1, sizeof(rdpCertificate)); # 1166| } # 1167| Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c: scope_hint: In function ‘certificate_free_int’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1172:17: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_certificate_free’ of ‘cert’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1170:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1170| WINPR_ASSERT(cert); # 1171| # 1172|-> if (cert->x509) # 1173| X509_free(cert->x509); # 1174| if (cert->chain) Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c: scope_hint: In function ‘freerdp_certificate_new_from_der’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1263:9: warning[-Wanalyzer-mismatching-deallocation]: ‘freerdp_certificate_new()’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_free’ # 1261| return cert; # 1262| fail: # 1263|-> freerdp_certificate_free(cert); # 1264| return NULL; # 1265| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c: scope_hint: In function ‘freerdp_certificate_new_from_x509’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1272:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_x509(x509_utils_from_pem(file, strlen(file), isFile), 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1269:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1270| # 1271| rdpCertificate* cert = freerdp_certificate_new(); # 1272|-> if (!cert) # 1273| return NULL; # 1274| Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1288:9: warning[-Wanalyzer-mismatching-deallocation]: ‘freerdp_certificate_new()’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1269:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1286| return cert; # 1287| fail: # 1288|-> freerdp_certificate_free(cert); # 1289| return NULL; # 1290| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c: scope_hint: In function ‘bio_read_pem’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1424:16: warning[-Wanalyzer-malloc-leak]: leak of ‘tmp’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1388:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1389:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1389:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1406:25: note: in expansion of macro ‘WLog_ERR’ # 1422| rc = TRUE; # 1423| fail: # 1424|-> return rc; # 1425| } # 1426| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c: scope_hint: In function ‘freerdp_certificate_new_from_x509’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1686:31: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_x509(x509_utils_from_pem(file, strlen(file), isFile), 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1269:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1199:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate.c:1685:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1684| { # 1685| WINPR_ASSERT(cert); # 1686|-> return is_rsa_key(cert->x509); # 1687| } # 1688| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_data.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_data.c: scope_hint: In function ‘freerdp_certificate_data_new_nocopy’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_data.c:131:9: warning[-Wanalyzer-mismatching-deallocation]: ‘certdata’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_data_free’ # 129| return certdata; # 130| fail: # 131|-> freerdp_certificate_data_free(certdata); # 132| return NULL; # 133| } Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_data.c: scope_hint: In function ‘freerdp_certificate_data_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_data.c:176:18: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_certificate_data_free’ of ‘data’ # 174| return; # 175| # 176|-> free(data->hostname); # 177| freerdp_certificate_free(data->cert); # 178| free(data->cached_subject); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_store.c: scope_hint: In function ‘freerdp_certificate_store_load_data’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_store.c:137:16: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_store_load_data(store, freerdp_certificate_data_get_host(data), (int)freerdp_certificate_data_get_port(data))’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_store.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_store.c:135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_store.c:199:9: note: in expansion of macro ‘WINPR_ASSERT’ # 135| WINPR_ASSERT(store); # 136| # 137|-> path = freerdp_certificate_store_get_cert_path(store, host, port); # 138| if (!path) # 139| goto fail; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_store.c: scope_hint: In function ‘freerdp_certificate_store_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_store.c:169:9: warning[-Wanalyzer-mismatching-deallocation]: ‘store’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_store_free’ # 167| WINPR_PRAGMA_DIAG_PUSH # 168| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 169|-> freerdp_certificate_store_free(store); # 170| WINPR_PRAGMA_DIAG_POP # 171| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_store.c: scope_hint: In function ‘freerdp_certificate_store_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/certificate_store.c:179:19: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_certificate_store_free’ of ‘store’ # 177| return; # 178| # 179|-> free(store->certs_path); # 180| free(store->server_path); # 181| free(store); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/crypto.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/er.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/per.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/per.c:476:13: warning[-Wunused-function]: ‘per_write_string’ defined but not used # 476 | static void per_write_string(wStream* s, BYTE* str, int length) # | ^~~~~~~~~~~~~~~~ # 474| */ # 475| # 476|-> static void per_write_string(wStream* s, BYTE* str, int length) # 477| { # 478| for (int i = 0; i < length; i++) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c: scope_hint: In function ‘freerdp_key_new_from_pem’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c:236:9: warning[-Wanalyzer-mismatching-deallocation]: ‘freerdp_key_new()’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_key_free’ # 234| return key; # 235| fail: # 236|-> freerdp_key_free(key); # 237| return NULL; # 238| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c: scope_hint: In function ‘freerdp_key_new_from_file’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c:254:9: warning[-Wanalyzer-mismatching-deallocation]: ‘freerdp_key_new()’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_key_free’ # 252| return key; # 253| fail: # 254|-> freerdp_key_free(key); # 255| return NULL; # 256| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c: scope_hint: In function ‘freerdp_key_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c:260:16: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_key_new()’ # 258| rdpPrivateKey* freerdp_key_new(void) # 259| { # 260|-> return calloc(1, sizeof(rdpPrivateKey)); # 261| } # 262| Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c: scope_hint: In function ‘freerdp_key_clone’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c:299:9: warning[-Wanalyzer-mismatching-deallocation]: ‘_key’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_key_free’ # 297| WINPR_PRAGMA_DIAG_PUSH # 298| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 299|-> freerdp_key_free(_key); # 300| WINPR_PRAGMA_DIAG_POP # 301| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c: scope_hint: In function ‘freerdp_key_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/privatekey.c:309:9: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_key_free’ of ‘key’ # 307| return; # 308| # 309|-> EVP_PKEY_free(key->evp); # 310| if (key->PrivateExponent) # 311| memset(key->PrivateExponent, 0, key->PrivateExponentLength); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/tls.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/tls.c:538:37: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 538 | fkt_t fkt = (fkt_t)(void*)fp; # | ^ # 536| * the argument is not really of type bio_info_cb* and must be cast # 537| * to the required type */ # 538|-> fkt_t fkt = (fkt_t)(void*)fp; # 539| SSL_set_info_callback(tls->ssl, fkt); # 540| status = 1; Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/tls.c: scope_hint: In function ‘bio_rdp_tls_callback_ctrl’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/tls.c:538:44: warning[-Wpedantic]: ISO C forbids conversion of function pointer to object pointer type # 538 | fkt_t fkt = (fkt_t)(void*)fp; # | ^ # 536| * the argument is not really of type bio_info_cb* and must be cast # 537| * to the required type */ # 538|-> fkt_t fkt = (fkt_t)(void*)fp; # 539| SSL_set_info_callback(tls->ssl, fkt); # 540| status = 1; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/x509_utils.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/crypto/x509_utils.c:583:14: warning[-Wunused-function]: ‘x509_utils_get_pem’ defined but not used # 583 | static BYTE* x509_utils_get_pem(const X509* xcert, const STACK_OF(X509) * chain, size_t* plength) # | ^~~~~~~~~~~~~~~~~~ # 581| } # 582| # 583|-> static BYTE* x509_utils_get_pem(const X509* xcert, const STACK_OF(X509) * chain, size_t* plength) # 584| { # 585| BIO* bio = NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘scard_copy_strings’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:154:17: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘tmp’ where non-null expected freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:148:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:149:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:149:9: note: in expansion of macro ‘WINPR_ASSERT’ <built-in>: note: argument 1 of ‘__builtin_memcpy’ must be non-null # 152| { # 153| void* tmp = malloc(srcSize); # 154|-> memcpy(tmp, src, srcSize); # 155| ArrayList_Append(ctx->strings, tmp); # 156| *((void**)dst) = tmp; Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:429:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'ctx' # 427| scard_context_free(ctx); # 428| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of ctx # 429|-> return status; # 430| } # 431| Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:485:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 483| LPDWORD pcchGroups) # 484| { # 485|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 486| # 487| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:507:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 505| LPDWORD pcchGroups) # 506| { # 507|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 508| # 509| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:609:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 607| DWORD cguidInterfaceCount, CHAR* mszCards, LPDWORD pcchCards) # 608| { # 609|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 610| # 611| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardListCardsA { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:634:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 632| DWORD cguidInterfaceCount, WCHAR* mszCards, LPDWORD pcchCards) # 633| { # 634|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 635| # 636| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardListCardsW { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:659:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 657| LPGUID pguidInterfaces, LPDWORD pcguidInterfaces) # 658| { # 659|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 660| # 661| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardListInterfacesA { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:682:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 680| LPGUID pguidInterfaces, LPDWORD pcguidInterfaces) # 681| { # 682|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 683| # 684| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardListInterfacesW { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:704:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 702| LPCSTR szCard, LPGUID pguidProviderId) # 703| { # 704|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 705| # 706| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardGetProviderIdA { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:725:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 723| LPCWSTR szCard, LPGUID pguidProviderId) # 724| { # 725|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 726| # 727| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardGetProviderIdW { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:748:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 746| LPDWORD pcchProvider) # 747| { # 748|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 749| # 750| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:773:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 771| LPDWORD pcchProvider) # 772| { # 773|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 774| # 775| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:796:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 794| SCARDCONTEXT hContext, LPCSTR szGroupName) # 795| { # 796|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 797| # 798| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:816:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 814| SCARDCONTEXT hContext, LPCWSTR szGroupName) # 815| { # 816|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 817| # 818| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:836:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 834| SCARDCONTEXT hContext, LPCSTR szGroupName) # 835| { # 836|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 837| # 838| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:856:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 854| SCARDCONTEXT hContext, LPCWSTR szGroupName) # 855| { # 856|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 857| # 858| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:880:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 878| # 879| if (status == SCARD_S_SUCCESS) # 880|-> status = scard_reader_name_valid_a(smartcard, hContext, szReaderName); # 881| # 882| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardIntroduceReaderA { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:904:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 902| # 903| if (status == SCARD_S_SUCCESS) # 904|-> status = scard_reader_name_valid_w(smartcard, hContext, szReaderName); # 905| # 906| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardIntroduceReaderW { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:927:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 925| # 926| if (status == SCARD_S_SUCCESS) # 927|-> status = scard_reader_name_valid_a(smartcard, hContext, szReaderName); # 928| # 929| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardForgetReaderA { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:948:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 946| # 947| if (status == SCARD_S_SUCCESS) # 948|-> status = scard_reader_name_valid_w(smartcard, hContext, szReaderName); # 949| # 950| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardForgetReaderW { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:970:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 968| # 969| if (status == SCARD_S_SUCCESS) # 970|-> status = scard_reader_name_valid_a(smartcard, hContext, szReaderName); # 971| # 972| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:994:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 992| # 993| if (status == SCARD_S_SUCCESS) # 994|-> status = scard_reader_name_valid_w(smartcard, hContext, szReaderName); # 995| # 996| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1018:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 1016| # 1017| if (status == SCARD_S_SUCCESS) # 1018|-> status = scard_reader_name_valid_a(smartcard, hContext, szReaderName); # 1019| # 1020| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1042:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 1040| # 1041| if (status == SCARD_S_SUCCESS) # 1042|-> status = scard_reader_name_valid_w(smartcard, hContext, szReaderName); # 1043| # 1044| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1065:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1063| LPCBYTE pbAtrMask, DWORD cbAtrLen) # 1064| { # 1065|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1066| # 1067| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1094:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1092| LPCBYTE pbAtrMask, DWORD cbAtrLen) # 1093| { # 1094|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1095| # 1096| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1121:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1119| DWORD dwProviderId, LPCSTR szProvider) # 1120| { # 1121|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1122| # 1123| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1144:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1142| DWORD dwProviderId, LPCWSTR szProvider) # 1143| { # 1144|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1145| # 1146| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1166:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1164| SCARDCONTEXT hContext, LPCSTR szCardName) # 1165| { # 1166|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1167| # 1168| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardForgetCardTypeA { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1186:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1184| SCARDCONTEXT hContext, LPCWSTR szCardName) # 1185| { # 1186|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1187| # 1188| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardForgetCardTypeW { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1258:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1256| DWORD cReaders) # 1257| { # 1258|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1259| # 1260| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardLocateCardsA { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1281:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1279| DWORD cReaders) # 1280| { # 1281|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1282| # 1283| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardLocateCardsW { hContext: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1305:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1303| DWORD cReaders) # 1304| { # 1305|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1306| # 1307| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1330:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1328| DWORD cReaders) # 1329| { # 1330|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1331| # 1332| WLog_Print(smartcard->log, smartcard->log_default_level, Error: COMPILER_WARNING (CWE-704): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘Emulate_SCardGetStatusChangeA’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1367:68: warning[-Wdiscarded-qualifiers]: passing argument 1 of ‘freerdp_settings_get_pointer_writable’ discards ‘const’ qualifier from pointer target type freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:32: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings.h:548:78: note: expected ‘rdpSettings *’ {aka ‘struct rdp_settings *’} but argument is of type ‘const rdpSettings *’ {aka ‘const struct rdp_settings *’} # 1365| # 1366| freerdp* inst = # 1367|-> freerdp_settings_get_pointer_writable(smartcard->settings, FreeRDP_instance); # 1368| WINPR_ASSERT(inst); # 1369| Error: COMPILER_WARNING (CWE-704): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘Emulate_SCardGetStatusChangeW’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:1450:68: warning[-Wdiscarded-qualifiers]: passing argument 1 of ‘freerdp_settings_get_pointer_writable’ discards ‘const’ qualifier from pointer target type freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/settings.h:548:78: note: expected ‘rdpSettings *’ {aka ‘struct rdp_settings *’} but argument is of type ‘const rdpSettings *’ {aka ‘const struct rdp_settings *’} # 1448| # 1449| freerdp* inst = # 1450|-> freerdp_settings_get_pointer_writable(smartcard->settings, FreeRDP_instance); # 1451| WINPR_ASSERT(inst); # 1452| Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2048:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 2046| DWORD dwAttrId, LPBYTE pbAttr, LPDWORD pcbAttrLen) # 2047| { # 2048|-> LONG status = scard_handle_valid(smartcard, hCard); # 2049| # 2050| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardGetAttrib { hCard: %p", Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2070:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 2068| DWORD dwAttrId, LPCBYTE pbAttr, DWORD cbAttrLen) # 2069| { # 2070|-> LONG status = scard_handle_valid(smartcard, hCard); # 2071| # 2072| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardSetAttrib { hCard: %p", Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘insert_data’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2303:12: warning[-Wanalyzer-malloc-leak]: leak of ‘item’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2279:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2280:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2280:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2301| } # 2302| # 2303|-> if (item->freshness > FreshnessCounter) # 2304| return SCARD_W_CACHE_ITEM_STALE; # 2305| item->freshness = FreshnessCounter; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2307:9: warning[-Wanalyzer-malloc-leak]: leak of ‘item’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2279:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2280:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2280:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2305| item->freshness = FreshnessCounter; # 2306| item->size = DataLen; # 2307|-> memcpy(item->data, Data, DataLen); # 2308| # 2309| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of item Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2310:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'item' # 2308| # 2309| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of item # 2310|-> return SCARD_S_SUCCESS; # 2311| } # 2312| Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2495:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 2493| # 2494| if (status == SCARD_S_SUCCESS) # 2495|-> status = scard_reader_name_valid_a(smartcard, hContext, szReaderName); # 2496| # 2497| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2521:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 2519| # 2520| if (status == SCARD_S_SUCCESS) # 2521|-> status = scard_reader_name_valid_w(smartcard, hContext, szReaderName); # 2522| # 2523| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2544:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 2542| LPSTR mszReaders, LPDWORD pcchReaders) # 2543| { # 2544|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 2545| # 2546| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2568:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 2566| LPWSTR mszReaders, LPDWORD pcchReaders) # 2567| { # 2568|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 2569| # 2570| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2590:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 2588| DWORD dwEvent) # 2589| { # 2590|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 2591| # 2592| WINPR_UNUSED(dwEvent); Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘Emulate_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2687:9: warning[-Wanalyzer-mismatching-deallocation]: ‘smartcard’ should have been deallocated with ‘free’ but was deallocated with ‘Emulate_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2634:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2685| WINPR_PRAGMA_DIAG_PUSH # 2686| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2687|-> Emulate_Free(smartcard); # 2688| WINPR_PRAGMA_DIAG_POP # 2689| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘Emulate_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2697:9: warning[-Wanalyzer-use-after-free]: use after ‘Emulate_Free’ of ‘context’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:2634:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2695| return; # 2696| # 2697|-> HashTable_Free(context->handles); # 2698| HashTable_Free(context->contexts); # 2699| free(context); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_virtual_gids.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_virtual_gids.c: scope_hint: In function ‘vgids_ef_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_virtual_gids.c:275:16: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘ef’ # 273| vgidsEF* ef = calloc(1, sizeof(vgidsEF)); # 274| # 275|-> ef->id = id; # 276| ef->data = Stream_New(NULL, 1024); # 277| if (!ef->data) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_virtual_gids.c: scope_hint: In function ‘vgids_init’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_virtual_gids.c:284:14: warning[-Wanalyzer-malloc-leak]: leak of ‘vgids_ef_new(ctx, 40960)’ # 282| Stream_SetLength(ef->data, 0); # 283| # 284|-> if (!ArrayList_Append(ctx->files, ef)) # 285| { # 286| WLog_ERR(TAG, "Failed to add new ef to file list"); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_virtual_gids.c:334:16: warning[-Wanalyzer-malloc-leak]: leak of ‘vgids_ef_new(ctx, 40978)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_virtual_gids.c: scope_hint: In function ‘vgids_init’ # 332| { # 333| /* Write DO to end of file: 2-Byte ID, 1-Byte Len, Data */ # 334|-> return vgids_write_tlv(ef->data, doID, data, dataSize); # 335| } # 336| Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_virtual_gids.c:1571:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'cardidEF' # 1569| // of cardidEF, commonEF, masterEF # 1570| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 1571|-> free(kxc); # 1572| free(keymap); # 1573| free(fsTable); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_virtual_gids.c:1571:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'commonEF' # 1569| // of cardidEF, commonEF, masterEF # 1570| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 1571|-> free(kxc); # 1572| free(keymap); # 1573| free(fsTable); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_virtual_gids.c:1571:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'masterEF' # 1569| // of cardidEF, commonEF, masterEF # 1570| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 1571|-> free(kxc); # 1572| free(keymap); # 1573| free(fsTable); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/bitmap.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/clipping.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/dc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gdi.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gdi.c: scope_hint: In function ‘gdi_init_ex’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gdi.c:1376:12: warning[-Wanalyzer-malloc-leak]: leak of ‘*context.cache’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gdi.c:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gdi.c:1339:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gdi.c:1342:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gdi.c:1343:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gdi.c:1204:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gdi.c:1205:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gdi.c:1206:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1374| goto fail; # 1375| # 1376|-> if (!(context->cache = cache_new(context))) # 1377| goto fail; # 1378| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c: scope_hint: In function ‘gdi_ImportCacheEntry’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c:1413:43: warning[-Wanalyzer-malloc-leak]: leak of ‘gdi_GfxCacheEntryNew(*importCacheEntry.key64, (unsigned int)*importCacheEntry.width, (unsigned int)*importCacheEntry.height, 537135240)’ # 1411| if ((cacheEntry->width > 0) && (cacheEntry->height > 0)) # 1412| { # 1413|-> cacheEntry->data = (BYTE*)calloc(cacheEntry->height, cacheEntry->scanline); # 1414| # 1415| if (!cacheEntry->data) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c: scope_hint: In function ‘gdi_SurfaceToCache’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c:1413:43: warning[-Wanalyzer-malloc-leak]: leak of ‘gdi_GfxCacheEntryNew(*surfaceToCache.cacheKey, (unsigned int)((int)((const RECTANGLE_16 *)((char *)surfaceToCache + 2))[2].right - (int)((const RECTANGLE_16 *)((char *)surfaceToCache + 2))[2].left), (unsigned int)((int)((const RECTANGLE_16 *)((char *)surfaceToCache + 2))[2].bottom - (int)((const RECTANGLE_16 *)((char *)surfaceToCache + 2))[2].top), *<unknown>.format)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c:1439:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1411| if ((cacheEntry->width > 0) && (cacheEntry->height > 0)) # 1412| { # 1413|-> cacheEntry->data = (BYTE*)calloc(cacheEntry->height, cacheEntry->scanline); # 1414| # 1415| if (!cacheEntry->data) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c: scope_hint: In function ‘gdi_CacheImportReply’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c:1576:37: warning[-Wanalyzer-malloc-leak]: leak of ‘gdi_GfxCacheEntryNew((long unsigned int)cacheSlot, 0, 0, 537135240)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c:1564:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c: scope_hint: In function ‘gdi_CacheImportReply’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ # 1574| return ERROR_INTERNAL_ERROR; # 1575| # 1576|-> WINPR_ASSERT(context->SetCacheSlotData); # 1577| error = context->SetCacheSlotData(context, cacheSlot, (void*)cacheEntry); # 1578| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c: scope_hint: In function ‘gdi_ImportCacheEntry’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/gfx.c:1607:88: warning[-Wanalyzer-malloc-leak]: leak of ‘gdi_GfxCacheEntryNew(*importCacheEntry.key64, (unsigned int)*importCacheEntry.width, (unsigned int)*importCacheEntry.height, 537135240)’ # 1605| # 1606| if (!freerdp_image_copy(cacheEntry->data, cacheEntry->format, cacheEntry->scanline, 0, 0, # 1607|-> cacheEntry->width, cacheEntry->height, importCacheEntry->data, # 1608| PIXEL_FORMAT_BGRX32, 0, 0, 0, NULL, FREERDP_FLIP_NONE)) # 1609| goto fail; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/graphics.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/graphics.c:172:4: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 170| } # 171| # 172|-> status = 1; # 173| } # 174| else if (codecId == RDP_CODEC_ID_NSCODEC) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/line.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/region.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/shape.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/shape.c:169:33: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected <built-in>: note: argument 2 of ‘__builtin_memcpy’ must be non-null # 167| { # 168| BYTE* dstp = gdi_get_bitmap_pointer(hdc, nXDest, nYDest + y); # 169|-> memcpy(dstp, srcp, 1ull * nWidth * formatSize); # 170| } # 171| Error: GCC_ANALYZER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/shape.c: scope_hint: In function ‘gdi_FillRect’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/shape.c:169:33: warning[-Wanalyzer-overlapping-buffers]: overlapping buffers passed as arguments to ‘memcpy’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/shape.c:25: included_from: Included from here. /usr/include/string.h:43:14: note: the behavior of ‘memcpy’ is undefined for overlapping buffers # 167| { # 168| BYTE* dstp = gdi_get_bitmap_pointer(hdc, nXDest, nYDest + y); # 169|-> memcpy(dstp, srcp, 1ull * nWidth * formatSize); # 170| } # 171| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/gdi/video.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/locale/keyboard.c:258:12: warning[-Wunused-function]: ‘freerdp_keyboard_init_apple’ defined but not used # 258 | static int freerdp_keyboard_init_apple(DWORD* keyboardLayoutId, DWORD* x11_keycode_to_rdp_scancode, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ # 256| } # 257| # 258|-> static int freerdp_keyboard_init_apple(DWORD* keyboardLayoutId, DWORD* x11_keycode_to_rdp_scancode, # 259| size_t count) # 260| { Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/locale/locale.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/locale/xkb_layout_ids.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/primitives/prim_YCoCg_opt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/primitives/prim_YUV.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/primitives/prim_YUV_ssse3.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/primitives/prim_add_opt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/primitives/prim_alphaComp_opt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/primitives/prim_andor_opt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/primitives/prim_set_opt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/primitives/prim_shift_opt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/primitives/primitives.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/cliprdr_utils.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/encoded_types.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/http.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/passphrase.c: scope_hint: In function ‘freerdp_passphrase_read’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/passphrase.c:174:9: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘fout’ where non-null expected <built-in>: note: argument 2 of ‘__builtin_fputs’ must be non-null # 172| goto error; # 173| # 174|-> fprintf(fout, "%s", prompt); # 175| fflush(fout); # 176| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/pcap.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/pcap.c: scope_hint: In function ‘pcap_read_header’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/pcap.c:58:16: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/pcap.c:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/pcap.c:200:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/pcap.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/pcap.c:228:17: note: in expansion of macro ‘_fseeki64’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/pcap.c:55:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/pcap.c:56:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/pcap.c:56:9: note: in expansion of macro ‘WINPR_ASSERT’ # 56| WINPR_ASSERT(header); # 57| # 58|-> return fread(header, sizeof(pcap_header), 1, pcap->fp) == 1; # 59| } # 60| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/rdpdr_utils.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:132:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'pContext' # 130| # 131| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of pContext # 132|-> smartcard_scard_context_native_to_redir(&(ret.hContext), hContext); # 133| # 134| status = smartcard_pack_establish_context_return(out, &ret); Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c: scope_hint: In function ‘smartcard_GetStatusChangeA_Call’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:915:25: warning[-Wanalyzer-null-argument]: use of NULL ‘rgReaderStates’ where non-null expected freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:896:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:897:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:897:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:898:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:898:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:917:34: note: in expansion of macro ‘wrap’ <built-in>: note: argument 1 of ‘__builtin_memcpy’ must be non-null # 913| { # 914| if (call->cReaders > 0) # 915|-> memcpy(rgReaderStates, call->rgReaderStates, # 916| call->cReaders * sizeof(SCARD_READERSTATEA)); # 917| ret.ReturnCode = wrap(smartcard, SCardGetStatusChangeA, operation->hContext, Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c: scope_hint: In function ‘smartcard_GetStatusChangeW_Call’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:977:25: warning[-Wanalyzer-null-argument]: use of NULL ‘rgReaderStates’ where non-null expected freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:958:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:959:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:959:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:960:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:960:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:980:42: note: in expansion of macro ‘wrap’ <built-in>: note: argument 1 of ‘__builtin_memcpy’ must be non-null # 975| { # 976| if (call->cReaders > 0) # 977|-> memcpy(rgReaderStates, call->rgReaderStates, # 978| call->cReaders * sizeof(SCARD_READERSTATEW)); # 979| { Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c: scope_hint: In function ‘smartcard_call_context_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:1900:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:1831:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1898| WINPR_PRAGMA_DIAG_PUSH # 1899| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1900|-> smartcard_call_context_free(ctx); # 1901| WINPR_PRAGMA_DIAG_POP # 1902| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:1900:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ctx’ should have been deallocated with ‘free’ but was deallocated with ‘smartcard_call_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:1831:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1898| WINPR_PRAGMA_DIAG_PUSH # 1899| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1900|-> smartcard_call_context_free(ctx); # 1901| WINPR_PRAGMA_DIAG_POP # 1902| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c: scope_hint: In function ‘smartcard_call_context_signal_stop’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:2012:17: warning[-Wanalyzer-use-after-free]: use after ‘smartcard_call_context_free’ of ‘ctx’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:1831:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:2011:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2010| { # 2011| WINPR_ASSERT(ctx); # 2012|-> if (!ctx->stopEvent) # 2013| return TRUE; # 2014| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_operations.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_operations.c: scope_hint: In function ‘smartcard_irp_device_control_decode’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_operations.c:553:16: warning[-Wunused-but-set-variable]: variable ‘outputBufferLength’ set but not used # 553 | UINT32 outputBufferLength = 0; # | ^~~~~~~~~~~~~~~~~~ # 551| UINT32 offset = 0; # 552| UINT32 ioControlCode = 0; # 553|-> UINT32 outputBufferLength = 0; # 554| UINT32 inputBufferLength = 0; # 555| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_pack.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING (CWE-457): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_pack.c:391: warning[uninitvar]: Uninitialized variable: buffer # 389| } # 390| # 391|-> return buffer; # 392| } # 393| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_button.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c: scope_hint: In function ‘rdtk_font_parse_descriptor_buffer’ freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c:174:37: warning[-Wanalyzer-malloc-leak]: leak of ‘rdtk_font_load_descriptor_file(filename, & size)’ freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c:584:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c:151:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c:152:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c:152:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c:164:9: note: in expansion of macro ‘_fseeki64’ freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_font.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ # 172| } # 173| # 174|-> uint8_t* buffer = (uint8_t*)malloc(fileSize.s + 2); # 175| # 176| if (!buffer) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_nine_patch.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/rdtk/librdtk/rdtk_text_field.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/dsp.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/dsp.c: scope_hint: In function ‘freerdp_dsp_supports_format’ freerdp-3.5.1-build/FreeRDP-3.5.1/redhat-linux-build/winpr/include/winpr/wtypes.h:40:27: warning[-Wpedantic]: a label can only be part of a statement and a declaration is not a statement # 40 | #define WINPR_FALLTHROUGH __attribute__((fallthrough)); # | ^~~~~~~~~~~~~ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/dsp.c:1394:25: note: in expansion of macro ‘WINPR_FALLTHROUGH’ # 1394 | WINPR_FALLTHROUGH # | ^~~~~~~~~~~~~~~~~ # 38| #define WINPR_FALLTHROUGH __attribute__((fallthrough)); # 39| #elif defined(__GNUC__) && (__GNUC__ >= 7) # 40|-> #define WINPR_FALLTHROUGH __attribute__((fallthrough)); # 41| #else # 42| #define WINPR_FALLTHROUGH Error: GCC_ANALYZER_WARNING (CWE-775): freerdp-3.5.1-build/FreeRDP-3.5.1/redhat-linux-build/winpr/include/winpr/wtypes.h:209:15: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipe_fd[0]’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:487:24: note: in expansion of macro ‘FALSE’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:487:24: note: in expansion of macro ‘FALSE’ # 207| # 208| #ifndef FALSE # 209|-> #define FALSE 0 # 210| #endif # 211| Error: GCC_ANALYZER_WARNING (CWE-775): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/string.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:31: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c: scope_hint: In function ‘CreatePipe’ freerdp-3.5.1-build/FreeRDP-3.5.1/redhat-linux-build/winpr/include/winpr/wtypes.h:209:15: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipe_fd[1]’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:487:24: note: in expansion of macro ‘FALSE’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:487:24: note: in expansion of macro ‘FALSE’ # 207| # 208| #ifndef FALSE # 209|-> #define FALSE 0 # 210| #endif # 211| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/string.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:31: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevman.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevman.c: scope_hint: In function ‘urbdrc_udevman_register_devices’ freerdp-3.5.1-build/FreeRDP-3.5.1/redhat-linux-build/winpr/include/winpr/wtypes.h:209:15: warning[-Wanalyzer-malloc-leak]: leak of ‘idpair’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevman.c:685:32: note: in expansion of macro ‘FALSE’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/urbdrc/client/libusb/libusb_udevman.c:685:32: note: in expansion of macro ‘FALSE’ # 207| # 208| #ifndef FALSE # 209|-> #define FALSE 0 # 210| #endif # 211| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c: scope_hint: In function ‘pf_channel_rdpdr_server_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/redhat-linux-build/winpr/include/winpr/wtypes.h:209:15: warning[-Wanalyzer-malloc-leak]: leak of ‘rdpdr’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c:1794:24: note: in expansion of macro ‘FALSE’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c:1789:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c:1790:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c:1796:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c:1794:24: note: in expansion of macro ‘FALSE’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c:1794:24: note: in expansion of macro ‘FALSE’ # 207| # 208| #ifndef FALSE # 209|-> #define FALSE 0 # 210| #endif # 211| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:417:12: warning[unix.Malloc]: Potential leak of memory pointed to by 'dynChannel' # 415| # 416| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert owns dynChannel # 417|-> return channelTracker_flushCurrent(tracker, firstPacket, lastPacket, FALSE); # 418| } # 419| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c: scope_hint: In function ‘DynvcTrackerPeekFn’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:417:40: warning[-Wanalyzer-malloc-leak]: leak of ‘DynamicChannelContext_new(*<unknown>.log, *<unknown>.ps, *<unknown>.pointer, (unsigned int)dynChannelId)’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:19: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:245:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:249:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:256:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/dvc.h:56: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/channels/drdynvc.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:21: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:701:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c: scope_hint: In function ‘DynvcTrackerPeekFn’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:269:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:269:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:269:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:206:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:212:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:212:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:212:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:722:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c: scope_hint: In function ‘DynvcTrackerPeekFn’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:138:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_drdynvc.c:403:33: note: in expansion of macro ‘WLog_Print’ # 415| # 416| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert owns dynChannel # 417|-> return channelTracker_flushCurrent(tracker, firstPacket, lastPacket, FALSE); # 418| } # 419| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c:1748:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'rdpdr' # 1746| goto fail; # 1747| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of rdpdr # 1748|-> return TRUE; # 1749| fail: # 1750| pf_channel_rdpdr_client_context_free(&rdpdr->common.base); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/channels/pf_channel_rdpdr.c:1822:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'rdpdr' # 1820| # 1821| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of rdpdr # 1822|-> return TRUE; # 1823| fail: # 1824| pf_channel_rdpdr_server_context_free(&rdpdr->common.base); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/cli/freerdp_proxy.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/cli/freerdp_proxy.c:100:8: warning[deadcode.DeadStores]: Value stored to 'config_path' during its initialization is never read # 98| { # 99| proxyConfig* config = NULL; # 100|-> char* config_path = "config.ini"; # 101| int status = -1; # 102| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/modules/bitmap-filter/bitmap-filter.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/modules/bitmap-filter/bitmap-filter.cpp:293:13: warning[-Wunused-function]: ‘BOOL filter_forward_empty_offer(const char*, proxyDynChannelInterceptData*, size_t, UINT32)’ defined but not used # 293 | static BOOL filter_forward_empty_offer(const char* sessionID, proxyDynChannelInterceptData* data, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~ # 291| } # 292| # 293|-> static BOOL filter_forward_empty_offer(const char* sessionID, proxyDynChannelInterceptData* data, # 294| size_t startPosition, UINT32 channelId) # 295| { Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/modules/demo/demo.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c: scope_hint: In function ‘channelTracker_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c:88:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ret’ should have been deallocated with ‘free’ but was deallocated with ‘channelTracker_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c:18: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c:72:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c:72:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c:45:9: note: in expansion of macro ‘WINPR_ASSERT’ # 86| WINPR_PRAGMA_DIAG_PUSH # 87| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 88|-> channelTracker_free(ret); # 89| WINPR_PRAGMA_DIAG_POP # 90| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c: scope_hint: In function ‘channelTracker_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c:163:9: warning[-Wanalyzer-use-after-free]: use after ‘channelTracker_free’ of ‘t’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c:72:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c:72:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_channel.c:45:9: note: in expansion of macro ‘WINPR_ASSERT’ # 161| return; # 162| # 163|-> Stream_Free(t->currentPacket, TRUE); # 164| free(t); # 165| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c: scope_hint: At top level freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:193:13: warning[-Wunused-function]: ‘freerdp_client_load_static_channel_addin’ defined but not used # 193 | static BOOL freerdp_client_load_static_channel_addin(rdpChannels* channels, rdpSettings* settings, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 191| } # 192| # 193|-> static BOOL freerdp_client_load_static_channel_addin(rdpChannels* channels, rdpSettings* settings, # 194| const char* name, void* data) # 195| { Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:198:19: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 198 | entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # | ^ # 196| PVIRTUALCHANNELENTRY entry = NULL; # 197| PVIRTUALCHANNELENTRYEX entryEx = NULL; # 198|-> entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # 199| name, NULL, NULL, FREERDP_ADDIN_CHANNEL_STATIC | FREERDP_ADDIN_CHANNEL_ENTRYEX); # 200| Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c: scope_hint: In function ‘freerdp_client_load_static_channel_addin’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:198:43: warning[-Wpedantic]: ISO C forbids conversion of function pointer to object pointer type # 198 | entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # | ^ # 196| PVIRTUALCHANNELENTRY entry = NULL; # 197| PVIRTUALCHANNELENTRYEX entryEx = NULL; # 198|-> entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # 199| name, NULL, NULL, FREERDP_ADDIN_CHANNEL_STATIC | FREERDP_ADDIN_CHANNEL_ENTRYEX); # 200| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c: scope_hint: In function ‘pf_client_verify_X509_certificate’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:951:25: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(hostname)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:931:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:932:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:932:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:933:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:933:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:934:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:934:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_client.c:937:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:629:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:629:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:630:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:630:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:631:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ # 949| if (hostname) # 950| pc->remote_hostname = _strdup(hostname); # 951|-> pc->remote_port = port; # 952| pc->remote_flags = flags; # 953| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_config.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/server/proxy/proxy_server.h:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c: scope_hint: In function ‘StaticChannelContext_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:90:19: warning[-Wanalyzer-use-after-free]: use after ‘StaticChannelContext_free’ of ‘ctx’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:79:21: note: in definition of macro ‘IFCALL’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:79:21: note: in definition of macro ‘IFCALL’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:79:21: note: in definition of macro ‘IFCALL’ # 88| return; # 89| # 90|-> IFCALL(ctx->contextDtor, ctx->context); # 91| # 92| free(ctx->channel_name); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c: scope_hint: In function ‘client_to_proxy_context_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:183:22: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/server/proxy/proxy_modules_api.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/server/proxy/proxy_config.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/server/proxy/proxy_server.h:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:109:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:110:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:110:9: note: in expansion of macro ‘WINPR_ASSERT’ # 181| if (context->vcm && (context->vcm != INVALID_HANDLE_VALUE)) # 182| WTSCloseServer((HANDLE)context->vcm); # 183|-> context->vcm = NULL; # 184| } # 185| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:334:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:308:36: note: in expansion of macro ‘CreateEvent’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:308:36: note: in expansion of macro ‘CreateEvent’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:311:41: note: in expansion of macro ‘CreateEvent’ # 332| WINPR_PRAGMA_DIAG_PUSH # 333| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 334|-> proxy_data_free(pdata); # 335| WINPR_PRAGMA_DIAG_POP # 336| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c: scope_hint: In function ‘proxy_data_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:334:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pdata’ should have been deallocated with ‘free’ but was deallocated with ‘proxy_data_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/print.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:308:36: note: in expansion of macro ‘CreateEvent’ # 332| WINPR_PRAGMA_DIAG_PUSH # 333| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 334|-> proxy_data_free(pdata); # 335| WINPR_PRAGMA_DIAG_POP # 336| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c: scope_hint: In function ‘proxy_data_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:362:18: warning[-Wanalyzer-use-after-free]: use after ‘proxy_data_free’ of ‘pdata’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_context.c:308:36: note: in expansion of macro ‘CreateEvent’ # 360| return; # 361| # 362|-> if (pdata->abort_event) # 363| CloseHandle(pdata->abort_event); # 364| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_modules.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_modules.c: scope_hint: In function ‘pf_modules_load_module’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_modules.c:496:23: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 496 | pEntryPoint = (proxyModuleEntryPoint)GetProcAddress(handle, MODULE_ENTRY_POINT); # | ^ # 494| } # 495| # 496|-> pEntryPoint = (proxyModuleEntryPoint)GetProcAddress(handle, MODULE_ENTRY_POINT); # 497| if (!pEntryPoint) # 498| { Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:474:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_key_new_from_pem(*server_25->config.PrivateKeyPEM)’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:451:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:458:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:464:9: note: in expansion of macro ‘WINPR_ASSERT’ # 472| return FALSE; # 473| # 474|-> if (!freerdp_settings_set_pointer_len(settings, FreeRDP_RdpServerRsaKey, key, 1)) # 475| return FALSE; # 476| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:481:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_pem(*server_25->config.CertificatePEM)’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:451:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:458:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:464:9: note: in expansion of macro ‘WINPR_ASSERT’ # 479| return FALSE; # 480| # 481|-> if (!freerdp_settings_set_pointer_len(settings, FreeRDP_RdpServerCertificate, cert, 1)) # 482| return FALSE; # 483| Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c: scope_hint: In function ‘pf_server_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:964:9: warning[-Wanalyzer-mismatching-deallocation]: ‘server’ should have been deallocated with ‘free’ but was deallocated with ‘pf_server_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:915:9: note: in expansion of macro ‘WINPR_ASSERT’ # 962| WINPR_PRAGMA_DIAG_PUSH # 963| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 964|-> pf_server_free(server); # 965| WINPR_PRAGMA_DIAG_POP # 966| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c: scope_hint: In function ‘pf_server_stop.part.0’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:1031:9: warning[-Wanalyzer-use-after-free]: use after ‘pf_server_free’ of ‘server’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:915:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1029| # 1030| /* signal main thread to stop and wait for the thread to exit */ # 1031|-> SetEvent(server->stopEvent); # 1032| } # 1033| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_update.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/X11/x11_shadow.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/X11/x11_shadow.c:589:13: warning[-Wunused-function]: ‘x11_shadow_validate_region’ defined but not used # 589 | static void x11_shadow_validate_region(x11ShadowSubsystem* subsystem, int x, int y, int width, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~ # 587| } # 588| # 589|-> static void x11_shadow_validate_region(x11ShadowSubsystem* subsystem, int x, int y, int width, # 590| int height) # 591| { Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/X11/x11_shadow.c:609:12: warning[-Wunused-function]: ‘x11_shadow_blend_cursor’ defined but not used # 609 | static int x11_shadow_blend_cursor(x11ShadowSubsystem* subsystem) # | ^~~~~~~~~~~~~~~~~~~~~~~ # 607| } # 608| # 609|-> static int x11_shadow_blend_cursor(x11ShadowSubsystem* subsystem) # 610| { # 611| UINT32 nXSrc = 0; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_audin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_capture.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_capture.c: scope_hint: In function ‘shadow_capture_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_capture.c:296:17: warning[-Wanalyzer-mismatching-deallocation]: ‘capture’ should have been deallocated with ‘free’ but was deallocated with ‘shadow_capture_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/server/shadow.h:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_surface.h:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_capture.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_capture.c:283:9: note: in expansion of macro ‘WINPR_ASSERT’ # 294| WINPR_PRAGMA_DIAG_PUSH # 295| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 296|-> shadow_capture_free(capture); # 297| WINPR_PRAGMA_DIAG_POP # 298| return NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c: scope_hint: In function ‘shadow_client_send_surface_gfx’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1211:33: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, 1024)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1790:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1791:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1858:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1858:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1860:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1860:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1209:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1209:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1211:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_client.c:1212:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ # 1209| WINPR_ASSERT(s); # 1210| # 1211|-> WINPR_ASSERT(cmd.left <= UINT16_MAX); # 1212| WINPR_ASSERT(cmd.top <= UINT16_MAX); # 1213| WINPR_ASSERT(cmd.right <= UINT16_MAX); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_encomsp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_encomsp.c: scope_hint: In function ‘shadow_client_encomsp_init’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_encomsp.c:109:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘encomsp_server_context_new(*client.vcm)’ # 107| encomsp = client->encomsp = encomsp_server_context_new(client->vcm); # 108| # 109|-> encomsp->rdpcontext = &client->context; # 110| # 111| encomsp->custom = (void*)client; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_lobby.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_mcevent.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_remdesk.c: scope_hint: In function ‘shadow_client_remdesk_init’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_remdesk.c:32:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘remdesk_server_context_new(*client.vcm)’ # 30| # 31| remdesk = client->remdesk = remdesk_server_context_new(client->vcm); # 32|-> remdesk->rdpcontext = &client->context; # 33| # 34| remdesk->custom = (void*)client; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_screen.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_screen.c: scope_hint: In function ‘shadow_screen_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_screen.c:90:9: warning[-Wanalyzer-mismatching-deallocation]: ‘screen’ should have been deallocated with ‘free’ but was deallocated with ‘shadow_screen_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_screen.c:21: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_screen.c:30:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_screen.c:31:9: note: in expansion of macro ‘WINPR_ASSERT’ # 88| WINPR_PRAGMA_DIAG_PUSH # 89| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 90|-> shadow_screen_free(screen); # 91| WINPR_PRAGMA_DIAG_POP # 92| Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_screen.c: scope_hint: In function ‘shadow_screen_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_screen.c:105:19: warning[-Wanalyzer-use-after-free]: use after ‘shadow_screen_free’ of ‘screen’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_screen.c:30:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_screen.c:31:9: note: in expansion of macro ‘WINPR_ASSERT’ # 103| region16_uninit(&(screen->invalidRegion)); # 104| # 105|-> if (screen->primary) # 106| { # 107| shadow_surface_free(screen->primary); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c: scope_hint: In function ‘shadow_server_init_certificate’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c:889:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_key_new_from_file(*server.PrivateKeyFile)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/server/shadow.h:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow.h:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c:41: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c:850:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c:884:9: note: in expansion of macro ‘WINPR_ASSERT’ # 887| if (!key) # 888| goto out_fail; # 889|-> if (!freerdp_settings_set_pointer_len(settings, FreeRDP_RdpServerRsaKey, key, 1)) # 890| goto out_fail; # 891| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c:896:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_file(*server.CertificateFile)’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c:850:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c:884:9: note: in expansion of macro ‘WINPR_ASSERT’ # 894| goto out_fail; # 895| # 896|-> if (!freerdp_settings_set_pointer_len(settings, FreeRDP_RdpServerCertificate, cert, 1)) # 897| goto out_fail; # 898| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c:899:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_file(*server.CertificateFile)’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c:850:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_server.c:884:9: note: in expansion of macro ‘WINPR_ASSERT’ # 897| goto out_fail; # 898| # 899|-> if (!freerdp_certificate_is_rdp_security_compatible(cert)) # 900| { # 901| if (!freerdp_settings_set_bool(settings, FreeRDP_UseRdpSecurityLayer, FALSE)) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow_subsystem.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-1341): freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-clipboard.c: scope_hint: In function ‘UwacClipboardDataGet’ freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-clipboard.c:272:9: warning[-Wanalyzer-fd-double-close]: double ‘close’ of file descriptor ‘pipefd[1]’ # 270| # 271| close(pipefd[0]); # 272|-> close(pipefd[1]); # 273| # 274| if (alloc > 0) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c:317:14: warning[-Wunused-function]: ‘display_bind’ defined but not used # 317 | static void* display_bind(UwacDisplay* display, uint32_t name, const struct wl_interface* interface, # | ^~~~~~~~~~~~ # 315| } # 316| # 317|-> static void* display_bind(UwacDisplay* display, uint32_t name, const struct wl_interface* interface, # 318| uint32_t version) # 319| { Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c: scope_hint: At top level freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c:334:13: warning[-Wunused-function]: ‘UwacDisplayUnwatchFd’ defined but not used # 334 | static void UwacDisplayUnwatchFd(UwacDisplay* display, int fd) # | ^~~~~~~~~~~~~~~~~~~~ # 332| } # 333| # 334|-> static void UwacDisplayUnwatchFd(UwacDisplay* display, int fd) # 335| { # 336| epoll_ctl(display->epoll_fd, EPOLL_CTL_DEL, fd, NULL); Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c: scope_hint: In function ‘UwacOpenDisplay’ freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c:405:76: warning[-Wformat=]: ISO C does not support the ‘%m’ gnu_printf format # 405 | fprintf(stderr, "failed to connect to Wayland display %s: %m\n", name); # | ^ # 403| if (ret->display == NULL) # 404| { # 405|-> fprintf(stderr, "failed to connect to Wayland display %s: %m\n", name); # 406| *err = UWAC_ERROR_UNABLE_TO_CONNECT; # 407| goto out_free; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c: scope_hint: In function ‘registry_handle_global’ freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-utils.h:29:9: warning[-Wpedantic]: ISO C forbids braced-groups within expressions # 29 | ({ \ # | ^ freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c:156:50: note: in expansion of macro ‘min’ # 156 | min(TARGET_COMPOSITOR_INTERFACE, version)); # | ^~~ # 27| # 28| #define min(a, b) \ # 29|-> ({ \ # 30| __typeof__(a) _a = (a); \ # 31| __typeof__(b) _b = (b); \ Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c: scope_hint: In function ‘display_dispatch_events’ freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-utils.h:36:9: warning[-Wpedantic]: ISO C forbids braced-groups within expressions # 36 | ({ \ # | ^ freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-display.c:346:32: note: in expansion of macro ‘container_of’ # 346 | UwacDisplay* display = container_of(task, UwacDisplay, dispatch_fd_task); # | ^~~~~~~~~~~~ # 34| # 35| #define container_of(ptr, type, member) \ # 36|-> ({ \ # 37| __typeof__(((type*)0)->member)* __mptr = (ptr); \ # 38| (type*)((char*)__mptr - offsetof(type, member)); \ Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/uwac/libuwac/uwac-window.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c: scope_hint: In function ‘license_answer_license_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2413:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2382:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2383:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2384:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:605:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:478:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:615:9: note: in expansion of macro ‘sprintf_s’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:628:9: note: in expansion of macro ‘_fseeki64’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2397:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1254:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1209:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2413:17: note: in expansion of macro ‘WINPR_ASSERT’ # 36| do \ # 37| { \ # 38|-> if (!(cond)) \ # 39| winpr_int_assert(#cond, __FILE__, __func__, __LINE__); \ # 40| } while (0) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nego.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nego.c: scope_hint: In function ‘nego_send_negotiation_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, 512)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nego.c:1073:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nego.c:1073:9: note: in expansion of macro ‘WINPR_ASSERT’ # 36| do \ # 37| { \ # 38|-> if (!(cond)) \ # 39| winpr_int_assert(#cond, __FILE__, __func__, __LINE__); \ # 40| } while (0) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_DVCPluginEntry’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘allocatePlugin()’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1829:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/addin.h:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:46: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/api.h:32:9: note: in definition of macro ‘FREERDP_ENTRY_POINT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1800:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1801:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpsnd/client/rdpsnd_main.c:1829:17: note: in expansion of macro ‘WINPR_ASSERT’ # 36| do \ # 37| { \ # 38|-> if (!(cond)) \ # 39| winpr_int_assert(#cond, __FILE__, __func__, __LINE__); \ # 40| } while (0) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘license_new_binary_blob(1)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2413:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2382:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2383:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2384:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:605:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:478:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:615:9: note: in expansion of macro ‘sprintf_s’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:628:9: note: in expansion of macro ‘_fseeki64’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2397:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1254:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1209:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:1212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/license.c:2413:17: note: in expansion of macro ‘WINPR_ASSERT’ # 36| do \ # 37| { \ # 38|-> if (!(cond)) \ # 39| winpr_int_assert(#cond, __FILE__, __func__, __LINE__); \ # 40| } while (0) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:35: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c: scope_hint: In function ‘pf_server_initialize_peer_connection’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘proxy_data_new()’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:464:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:451:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:458:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/proxy/pf_server.c:464:9: note: in expansion of macro ‘WINPR_ASSERT’ # 36| do \ # 37| { \ # 38|-> if (!(cond)) \ # 39| winpr_int_assert(#cond, __FILE__, __func__, __LINE__); \ # 40| } while (0) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/server/shadow.h:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow.c:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow.c: scope_hint: In function ‘main’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘shadow_server_new()’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow.c:114:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/server/shadow/shadow.c:114:9: note: in expansion of macro ‘WINPR_ASSERT’ # 36| do \ # 37| { \ # 38|-> if (!(cond)) \ # 39| winpr_int_assert(#cond, __FILE__, __func__, __LINE__); \ # 40| } while (0) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_compute.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_compute.c: scope_hint: In function ‘ntlm_compute_message_integrity_check’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_HMAC_New()’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_compute.c:847:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_compute.c:847:9: note: in expansion of macro ‘WINPR_ASSERT’ # 36| do \ # 37| { \ # 38|-> if (!(cond)) \ # 39| winpr_int_assert(#cond, __FILE__, __func__, __LINE__); \ # 40| } while (0) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_calloc(1, 1059208, 32)’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c:2638:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/progressive.c:2638:17: note: in expansion of macro ‘WINPR_ASSERT’ # 36| do \ # 37| { \ # 38|-> if (!(cond)) \ # 39| winpr_int_assert(#cond, __FILE__, __func__, __LINE__); \ # 40| } while (0) Error: COMPILER_WARNING (CWE-252): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/debug.c:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/debug.c: scope_hint: In function ‘winpr_backtrace_symbols_fd’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:38:16: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ # 38 | #define _write write freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/debug.c:187:25: note: in expansion of macro ‘_write’ # 187 | _write(fd, lines[i], (unsigned)strnlen(lines[i], UINT32_MAX)); # | ^~~~~~ # 36| # 37| #ifndef _write # 38|-> #define _write write # 39| #endif # 40| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:32: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/nla.h:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/rdp.h:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_WindowIcon’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:119:49: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1319:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1308:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1319:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1319:9: note: in expansion of macro ‘CopyMemory’ # 117| #endif /* (__GNUC__ > 4) || ... */ # 118| # 119|-> #define CopyMemory(Destination, Source, Length) memcpy((Destination), (Source), (Length)) # 120| #define MoveMemory(Destination, Source, Length) memmove((Destination), (Source), (Length)) # 121| #define FillMemory(Destination, Length, Fill) memset((Destination), (Fill), (Length)) Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c: scope_hint: In function ‘update_message_MonitoredDesktop’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:119:49: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘calloc((long unsigned int)((unsigned int*)&<unknown>)[1], 4)’ where non-null expected freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1539:17: note: in expansion of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1524:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1533:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/message.c:1539:17: note: in expansion of macro ‘CopyMemory’ <built-in>: note: argument 1 of ‘__builtin_memcpy’ must be non-null # 117| #endif /* (__GNUC__ > 4) || ... */ # 118| # 119|-> #define CopyMemory(Destination, Source, Length) memcpy((Destination), (Source), (Length)) # 120| #define MoveMemory(Destination, Source, Length) memmove((Destination), (Source), (Length)) # 121| #define FillMemory(Destination, Length, Fill) memset((Destination), (Fill), (Length)) Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/stream.c:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/stream.c: scope_hint: In function ‘Stream_EnsureCapacity’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:119:49: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘new_buf’ where non-null expected freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/stream.c:67:25: note: in expansion of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/stream.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/stream.c:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:748:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/stream.c: scope_hint: In function ‘Stream_EnsureCapacity’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/stream.c:46:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/stream.c:67:25: note: in expansion of macro ‘CopyMemory’ <built-in>: note: argument 1 of ‘__builtin_memcpy’ must be non-null # 117| #endif /* (__GNUC__ > 4) || ... */ # 118| # 119|-> #define CopyMemory(Destination, Source, Length) memcpy((Destination), (Source), (Length)) # 120| #define MoveMemory(Destination, Source, Length) memmove((Destination), (Source), (Length)) # 121| #define FillMemory(Destination, Length, Fill) memset((Destination), (Fill), (Length)) Error: GCC_ANALYZER_WARNING (CWE-457): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/memory.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c: scope_hint: In function ‘region16_simplify_bands’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:120:49: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘endBand’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:459:33: note: in expansion of macro ‘MoveMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c: scope_hint: In function ‘region16_simplify_bands’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/codec/region.c:459:33: note: in expansion of macro ‘MoveMemory’ # 118| # 119| #define CopyMemory(Destination, Source, Length) memcpy((Destination), (Source), (Length)) # 120|-> #define MoveMemory(Destination, Source, Length) memmove((Destination), (Source), (Length)) # 121| #define FillMemory(Destination, Length, Fill) memset((Destination), (Fill), (Length)) # 122| #define ZeroMemory(Destination, Length) memset((Destination), 0, (Length)) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/security.h:33: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/handle.h:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/synch.h:33: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c: scope_hint: In function ‘smartcard_EstablishContext_Call’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/nt.h:30:29: warning[-Wanalyzer-malloc-leak]: leak of ‘pContext’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/nt.h:63:26: note: in expansion of macro ‘STATUS_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:105:32: note: in expansion of macro ‘STATUS_NO_MEMORY’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/nt.h:63:26: note: in expansion of macro ‘STATUS_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/utils/smartcard_call.c:105:32: note: in expansion of macro ‘STATUS_NO_MEMORY’ # 28| #define STATUS_CAST(t, val) static_cast<t>(val) # 29| #else # 30|-> #define STATUS_CAST(t, val) (t)(val) # 31| #endif # 32| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/client/audin_main.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘audin_channel_write_and_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:539:32: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, 5)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/client/audin_main.c:323:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/client/audin_main.c:324:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/client/audin_main.c:324:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/addin.h:24: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/audin/client/audin_main.c:35: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ # 537| { # 538| WINPR_ASSERT(_s); # 539|-> WINPR_ASSERT(_s->pointer); # 540| WINPR_ASSERT(Stream_GetRemainingCapacity(_s) >= 1); # 541| *_s->pointer++ = (_v); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpdr_server_send_device_query_directory_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:32: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, <unknown> + 64)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2827:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2828:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2829:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2829:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2830:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:113:48: note: in definition of macro ‘Stream_CheckAndLogRequiredLengthOfSizeWLog’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2844:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthWLog’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2847:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2847:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2847:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:183:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2394:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2395:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2397:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ # 554| { # 555| WINPR_ASSERT(_s); # 556|-> WINPR_ASSERT(_s->pointer); # 557| WINPR_ASSERT(Stream_GetRemainingCapacity(_s) >= 2); # 558| *_s->pointer++ = (_v)&0xFF; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpdr_server_send_device_create_request’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:32: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, pathLength + 256)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3302:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3303:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3304:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:3304:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2488:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:183:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2250:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2251:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2253:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ # 554| { # 555| WINPR_ASSERT(_s); # 556|-> WINPR_ASSERT(_s->pointer); # 557| WINPR_ASSERT(Stream_GetRemainingCapacity(_s) >= 2); # 558| *_s->pointer++ = (_v)&0xFF; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:717:26: warning[-Wanalyzer-malloc-leak]: leak of ‘http_response_new()’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_recv’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1466:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c:1466:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:716:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_recv’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ # 715| { # 716| WINPR_ASSERT(_s); # 717|-> return _s->pointer; # 718| } # 719| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_delete_directory’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:140:20: warning[-Wanalyzer-malloc-leak]: leak of ‘irp’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2264:17: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_delete_directory’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2707:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2708:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2709:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2709:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2709:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2488:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:183:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2250:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2251:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2253:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2253:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:140:40: note: in definition of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/channels/rdpdr/server/rdpdr_main.c:2264:17: note: in expansion of macro ‘WLog_Print’ # 138| do \ # 139| { \ # 140|-> if (WLog_IsLevelActive(_log, _log_level)) \ # 141| { \ # 142| WLog_Print_unchecked(_log, _log_level, ##__VA_ARGS__); \ Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘Emulate_SCardEstablishContext’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:140:21: warning[-Wanalyzer-malloc-leak]: leak of ‘scard_context_new()’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:406:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:399:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:216:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:227:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:228:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:228:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:244:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:245:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:245:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:117:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/libfreerdp/emu/scard/smartcard_emulate.c:406:9: note: in expansion of macro ‘WLog_Print’ # 138| do \ # 139| { \ # 140|-> if (WLog_IsLevelActive(_log, _log_level)) \ # 141| { \ # 142| WLog_Print_unchecked(_log, _log_level, ##__VA_ARGS__); \ Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/debug.h:31: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/semaphore.c:21: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:150:21: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateSemaphoreW(lpSemaphoreAttributes, lInitialCount, lMaximumCount, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/semaphore.c:147:17: note: in expansion of macro ‘WLog_ERR’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/semaphore.c:147:17: note: in expansion of macro ‘WLog_ERR’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/semaphore.c:147:17: note: in expansion of macro ‘WLog_ERR’ # 148| { \ # 149| static wLog* _log_cached_ptr = NULL; \ # 150|-> if (!_log_cached_ptr) \ # 151| _log_cached_ptr = WLog_Get(_tag); \ # 152| WLog_Print(_log_cached_ptr, _log_level, __VA_ARGS__); \ Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/clipboard.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING (CWE-562): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/clipboard.c:478: error[returnDanglingLifetime]: Returning pointer to local variable 'DstSize' that will be invalid when returning. # 476| } # 477| # 478|-> return pDstData; # 479| } # 480| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic.c: scope_hint: In function ‘clipboard_synthesize_html_format’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic.c:482:17: warning[-Wanalyzer-malloc-leak]: leak of ‘calloc(1, (long unsigned int)(SrcSize + 1))’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/clipboard.h:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic.c:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic.c:468:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic.c:469:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic.c:469:9: note: in expansion of macro ‘WINPR_ASSERT’ # 480| if (!pSrcData.pv) # 481| goto fail; # 482|-> memcpy(pSrcData.pv, pData, SrcSize); # 483| # 484| if (SrcSize > 2) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘make_synthetic_file’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:83:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileW(local_name, & fd)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘make_synthetic_file’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:36: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:573:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:390:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:364:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:365:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:365:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:366:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:366:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:347:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:312:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:79:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ # 81| # 82| hFind = FindFirstFileW(local_name, &fd); # 83|-> if (INVALID_HANDLE_VALUE == hFind) # 84| { # 85| WLog_ERR(TAG, "FindFirstFile failed (%" PRIu32 ")", GetLastError()); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘do_add_directory_contents_to_list’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:248:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileW(namebuf, & FindData)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘do_add_directory_contents_to_list’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:573:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:390:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:364:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:365:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:365:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:366:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:366:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:347:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:312:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:79:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:288:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:289:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:289:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:290:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:290:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:291:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:291:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:240:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:242:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:242:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:244:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:244:9: note: in expansion of macro ‘WINPR_ASSERT’ # 246| WIN32_FIND_DATAW FindData = { 0 }; # 247| HANDLE hFind = FindFirstFileW(namebuf, &FindData); # 248|-> if (INVALID_HANDLE_VALUE == hFind) # 249| { # 250| WLog_ERR(TAG, "FindFirstFile failed (%" PRIu32 ")", GetLastError()); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘add_file_to_list’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:319:12: warning[-Wanalyzer-malloc-leak]: leak of ‘make_synthetic_file(local_name, remote_name)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘add_file_to_list’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:573:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:390:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:364:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:365:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:365:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:366:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:366:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:347:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:312:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:79:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:288:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:289:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:289:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:290:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:290:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:291:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:291:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:240:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:242:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:242:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:244:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:244:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:208:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:209:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:209:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:175:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:175:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:312:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:79:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:288:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:289:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:289:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:290:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:290:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:291:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:291:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:240:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:242:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:242:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:244:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:244:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:208:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:209:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:209:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:175:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:175:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:312:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:79:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ # 317| file = make_synthetic_file(local_name, remote_name); # 318| # 319|-> if (!file) # 320| return FALSE; # 321| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:328:36: warning[-Wanalyzer-malloc-leak]: leak of ‘make_synthetic_file(local_name, remote_name)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘add_file_to_list’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:573:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:390:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:364:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:365:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:365:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:366:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:366:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:347:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:312:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:313:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:314:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:315:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:79:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ # 326| } # 327| # 328|-> if (file->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) # 329| { # 330| /* Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:621:14: warning[-Wunused-function]: ‘convert_nautilus_clipboard_to_filedescriptors’ defined but not used # 621 | static void* convert_nautilus_clipboard_to_filedescriptors(wClipboard* clipboard, UINT32 formatId, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 619| } # 620| # 621|-> static void* convert_nautilus_clipboard_to_filedescriptors(wClipboard* clipboard, UINT32 formatId, # 622| const void* data, UINT32* pSize) # 623| { Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/clipboard/synthetic_file.c:888:14: warning[-Wunused-function]: ‘convert_filedescriptors_to_nautilus_clipboard’ defined but not used # 888 | static void* convert_filedescriptors_to_nautilus_clipboard(wClipboard* clipboard, UINT32 formatId, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 886| # 887| /* Prepend header of nautilus based filemanager's format to file list*/ # 888|-> static void* convert_filedescriptors_to_nautilus_clipboard(wClipboard* clipboard, UINT32 formatId, # 889| const void* data, UINT32* pSize) # 890| { Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c: scope_hint: In function ‘DefineCommDevice’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:968:33: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(lpDeviceName)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:40: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:949:28: note: in expansion of macro ‘_tcsdup’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:949:28: note: in expansion of macro ‘_tcsdup’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:957:28: note: in expansion of macro ‘_tcsdup’ # 966| for (; i < COMM_DEVICE_MAX; i++) # 967| { # 968|-> if (_CommDevices[i] != NULL) # 969| { # 970| if (_tcscmp(_CommDevices[i]->name, storedDeviceName) == 0) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:968:33: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(lpTargetPath)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:949:28: note: in expansion of macro ‘_tcsdup’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:957:28: note: in expansion of macro ‘_tcsdup’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:957:28: note: in expansion of macro ‘_tcsdup’ # 966| for (; i < COMM_DEVICE_MAX; i++) # 967| { # 968|-> if (_CommDevices[i] != NULL) # 969| { # 970| if (_tcscmp(_CommDevices[i]->name, storedDeviceName) == 0) Error: GCC_ANALYZER_WARNING (CWE-775): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c: scope_hint: In function ‘CommCreateFileA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:1348:9: warning[-Wanalyzer-fd-leak]: leak of file descriptor freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:1075:13: note: in expansion of macro ‘_tcslen’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:1081:9: note: in expansion of macro ‘_tcscpy’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:33: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c: scope_hint: In function ‘CommCreateFileA’ # 1346| WINPR_PRAGMA_DIAG_PUSH # 1347| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1348|-> CloseHandle(pComm); # 1349| WINPR_PRAGMA_DIAG_POP # 1350| return INVALID_HANDLE_VALUE; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:1348:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pComm’ should have been deallocated with ‘free’ but was deallocated with ‘CloseHandle’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:1075:13: note: in expansion of macro ‘_tcslen’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c:1081:9: note: in expansion of macro ‘_tcscpy’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/comm/comm.c: scope_hint: In function ‘CommCreateFileA’ # 1346| WINPR_PRAGMA_DIAG_PUSH # 1347| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1348|-> CloseHandle(pComm); # 1349| WINPR_PRAGMA_DIAG_POP # 1350| return INVALID_HANDLE_VALUE; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c:80:23: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_malloc(num * size, alignment, offset)’ # 78| # 79| /* alignment must be a power of 2 */ # 80|-> if (alignment % 2 == 1) # 81| return NULL; # 82| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c: scope_hint: In function ‘winpr_aligned_offset_malloc’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c:80:23: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_malloc(size, alignment, offset)’ # 78| # 79| /* alignment must be a power of 2 */ # 80|-> if (alignment % 2 == 1) # 81| return NULL; # 82| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c: scope_hint: In function ‘winpr_aligned_offset_realloc’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c:80:23: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_realloc(memblock, size, alignment, 0)’ # 78| # 79| /* alignment must be a power of 2 */ # 80|-> if (alignment % 2 == 1) # 81| return NULL; # 82| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c:141:17: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_realloc(memblock, size, alignment, 0)’ # 139| pMem = WINPR_ALIGNED_MEM_STRUCT_FROM_PTR(memblock); # 140| # 141|-> if (pMem->sig != WINPR_ALIGNED_MEM_SIGNATURE) # 142| { # 143| WLog_ERR(TAG, Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c: scope_hint: In function ‘winpr_aligned_offset_recalloc’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c:182:31: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_recalloc(memblock, num, size, alignment, 0)’ # 180| if (!memblock) # 181| { # 182|-> newMemblock = winpr_aligned_offset_malloc(size * num, alignment, offset); # 183| # 184| if (newMemblock) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c: scope_hint: In function ‘winpr_aligned_recalloc’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c:182:31: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_recalloc(0, count, size, alignment)’ # 180| if (!memblock) # 181| { # 182|-> newMemblock = winpr_aligned_offset_malloc(size * num, alignment, offset); # 183| # 184| if (newMemblock) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c: scope_hint: In function ‘winpr_aligned_offset_recalloc’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c:195:17: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_recalloc(memblock, num, size, alignment, 0)’ # 193| pMem = WINPR_ALIGNED_MEM_STRUCT_FROM_PTR(memblock); # 194| # 195|-> if (pMem->sig != WINPR_ALIGNED_MEM_SIGNATURE) # 196| { # 197| WLog_ERR(TAG, Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c: scope_hint: In function ‘winpr_aligned_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/alignment.c:251:17: warning[-Wanalyzer-use-after-free]: use after ‘winpr_aligned_free’ of ‘memblock’ # 249| pMem = WINPR_ALIGNED_MEM_STRUCT_FROM_PTR(memblock); # 250| # 251|-> if (pMem->sig != WINPR_ALIGNED_MEM_SIGNATURE) # 252| { # 253| WLog_ERR(TAG, "_aligned_free: memory block was not allocated by _aligned_malloc!"); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crt/unicode.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/cipher.c: scope_hint: In function ‘winpr_RC4_New_Internal’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/cipher.c:115:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ctx’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_RC4_Free’ # 113| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 114| # 115|-> winpr_RC4_Free(ctx); # 116| WINPR_PRAGMA_DIAG_POP # 117| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/cipher.c: scope_hint: In function ‘winpr_RC4_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/cipher.c:158:9: warning[-Wanalyzer-use-after-free]: use after ‘winpr_RC4_Free’ of ‘ctx’ # 156| winpr_int_rc4_free(ctx->ictx); # 157| #elif defined(WITH_OPENSSL) # 158|-> EVP_CIPHER_CTX_free(ctx->ctx); # 159| #endif # 160| free(ctx); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_HMAC_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:180:12: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_HMAC_New()’ # 178| { # 179| WINPR_HMAC_CTX* ctx = (WINPR_HMAC_CTX*)calloc(1, sizeof(WINPR_HMAC_CTX)); # 180|-> if (!ctx) # 181| return NULL; # 182| #if defined(WITH_OPENSSL) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:199:12: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_HMAC_New()’ # 197| ctx->xhmac = EVP_MAC_CTX_new(emac); # 198| EVP_MAC_free(emac); # 199|-> if (!ctx->xhmac) # 200| goto fail; # 201| #endif Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:210:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ctx’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_HMAC_Free’ # 208| WINPR_PRAGMA_DIAG_PUSH # 209| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 210|-> winpr_HMAC_Free(ctx); # 211| WINPR_PRAGMA_DIAG_POP # 212| return NULL; Error: COMPILER_WARNING (CWE-704): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_HMAC_Init’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:239:83: warning[-Wdiscarded-qualifiers]: passing argument 2 of ‘OSSL_PARAM_construct_utf8_string’ discards ‘const’ qualifier from pointer target type /usr/include/openssl/evp.h:32: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:29: included_from: Included from here. /usr/include/openssl/params.h:88:68: note: expected ‘char *’ but argument is of type ‘const char *’ # 237| # 238| const char* param_name = OSSL_MAC_PARAM_DIGEST; # 239|-> const OSSL_PARAM param[] = { OSSL_PARAM_construct_utf8_string(param_name, hash, 0), # 240| OSSL_PARAM_construct_end() }; # 241| Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_HMAC_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:380:9: warning[-Wanalyzer-use-after-free]: use after ‘winpr_HMAC_Free’ of ‘ctx’ # 378| #if defined(WITH_OPENSSL) # 379| #if OPENSSL_VERSION_NUMBER >= 0x30000000L # 380|-> EVP_MAC_CTX_free(ctx->xhmac); # 381| #else # 382| HMAC_CTX* hmac = ctx->hmac; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_HMAC’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:426:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_HMAC_New()’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_HMAC_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:217:9: note: in expansion of macro ‘WINPR_ASSERT’ # 424| result = TRUE; # 425| out: # 426|-> winpr_HMAC_Free(ctx); # 427| return result; # 428| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_Digest_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:455:12: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_Digest_New()’ # 453| { # 454| WINPR_DIGEST_CTX* ctx = calloc(1, sizeof(WINPR_DIGEST_CTX)); # 455|-> if (!ctx) # 456| return NULL; # 457| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:465:12: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_Digest_New()’ # 463| ctx->mdctx = EVP_MD_CTX_new(); # 464| #endif # 465|-> if (!ctx->mdctx) # 466| goto fail; # 467| Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:481:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ctx’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_Digest_Free’ # 479| WINPR_PRAGMA_DIAG_PUSH # 480| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 481|-> winpr_Digest_Free(ctx); # 482| WINPR_PRAGMA_DIAG_POP # 483| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_Digest_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:714:16: warning[-Wanalyzer-use-after-free]: use after ‘winpr_Digest_Free’ of ‘ctx’ # 712| return; # 713| #if defined(WITH_OPENSSL) # 714|-> if (ctx->mdctx) # 715| { # 716| #if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \ Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_Digest_Allow_FIPS’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:755:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_Digest_New()’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_Digest_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:532:9: note: in expansion of macro ‘WINPR_ASSERT’ # 753| result = TRUE; # 754| out: # 755|-> winpr_Digest_Free(ctx); # 756| return result; # 757| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_Digest’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:778:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_Digest_New()’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_Digest_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:559:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/crypto/hash.c:489:9: note: in expansion of macro ‘WINPR_ASSERT’ # 776| result = TRUE; # 777| out: # 778|-> winpr_Digest_Free(ctx); # 779| return result; # 780| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/dsparse/dsparse.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/environment/environment.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/file.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/file.c: scope_hint: In function ‘GetFileHandleForFileDescriptor’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/file.c:1460:12: warning[-Wanalyzer-malloc-leak]: leak of ‘fp’ # 1458| # 1459| pFile = FileHandle_New(fp); # 1460|-> if (!pFile) # 1461| return INVALID_HANDLE_VALUE; # 1462| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c: scope_hint: In function ‘GetFileAttributesA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:523:12: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:996:24: note: in expansion of macro ‘INVALID_HANDLE_VALUE’ # 521| HANDLE hFind = NULL; # 522| # 523|-> if ((hFind = FindFirstFileA(lpFileName, &findFileData)) == INVALID_HANDLE_VALUE) # 524| return INVALID_FILE_ATTRIBUTES; # 525| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:526:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:996:24: note: in expansion of macro ‘INVALID_HANDLE_VALUE’ # 524| return INVALID_FILE_ATTRIBUTES; # 525| # 526|-> FindClose(hFind); # 527| return findFileData.dwFileAttributes; # 528| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:526:9: warning[-Wanalyzer-mismatching-deallocation]: ‘FindFirstFileA(lpFileName, & findFileData)’ should have been deallocated with ‘free’ but was deallocated with ‘FindClose’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:996:24: note: in expansion of macro ‘INVALID_HANDLE_VALUE’ # 524| return INVALID_FILE_ATTRIBUTES; # 525| # 526|-> FindClose(hFind); # 527| return findFileData.dwFileAttributes; # 528| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c: scope_hint: In function ‘file_search_new’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:930:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ # 928| WINPR_PRAGMA_DIAG_PUSH # 929| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 930|-> FindClose(pFileSearch); # 931| WINPR_PRAGMA_DIAG_POP # 932| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:930:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pFileSearch’ should have been deallocated with ‘free’ but was deallocated with ‘FindClose’ # 928| WINPR_PRAGMA_DIAG_PUSH # 929| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 930|-> FindClose(pFileSearch); # 931| WINPR_PRAGMA_DIAG_POP # 932| return NULL; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c: scope_hint: In function ‘FindFirstFileA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:993:13: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileA(ConvertWCharToUtf8Alloc(lpFileName, 0), fd)’ # 991| HANDLE FindFirstFileA(LPCSTR lpFileName, LPWIN32_FIND_DATAA lpFindFileData) # 992| { # 993|-> if (!lpFindFileData || !lpFileName) # 994| { # 995| SetLastError(ERROR_BAD_ARGUMENTS); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:993:13: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileA(lpFileName, & findFileData)’ # 991| HANDLE FindFirstFileA(LPCSTR lpFileName, LPWIN32_FIND_DATAA lpFindFileData) # 992| { # 993|-> if (!lpFindFileData || !lpFileName) # 994| { # 995| SetLastError(ERROR_BAD_ARGUMENTS); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c: scope_hint: In function ‘FindFirstFileA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:1025:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ # 1023| # 1024| fail: # 1025|-> FindClose(pFileSearch); # 1026| return INVALID_HANDLE_VALUE; # 1027| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:1025:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pFileSearch’ should have been deallocated with ‘free’ but was deallocated with ‘FindClose’ # 1023| # 1024| fail: # 1025|-> FindClose(pFileSearch); # 1026| return INVALID_HANDLE_VALUE; # 1027| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c: scope_hint: In function ‘FindFirstFileW’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:1079:12: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:996:24: note: in expansion of macro ‘INVALID_HANDLE_VALUE’ # 1077| free(utfFileName); # 1078| # 1079|-> if (h != INVALID_HANDLE_VALUE) # 1080| { # 1081| if (!ConvertFindDataAToW(fd, lpFindFileData)) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:1084:25: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:996:24: note: in expansion of macro ‘INVALID_HANDLE_VALUE’ # 1082| { # 1083| SetLastError(ERROR_NOT_ENOUGH_MEMORY); # 1084|-> FindClose(h); # 1085| h = INVALID_HANDLE_VALUE; # 1086| goto out; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:1084:25: warning[-Wanalyzer-mismatching-deallocation]: ‘FindFirstFileA(ConvertWCharToUtf8Alloc(lpFileName, 0), fd)’ should have been deallocated with ‘free’ but was deallocated with ‘FindClose’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:996:24: note: in expansion of macro ‘INVALID_HANDLE_VALUE’ # 1082| { # 1083| SetLastError(ERROR_NOT_ENOUGH_MEMORY); # 1084|-> FindClose(h); # 1085| h = INVALID_HANDLE_VALUE; # 1086| goto out; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:1212:25: warning[-Wanalyzer-use-after-free]: use after ‘FindClose’ of ‘hFindFile’ # 1210| #endif # 1211| # 1212|-> free(pFileSearch->lpPath); # 1213| free(pFileSearch->lpPattern); # 1214| Error: GCC_ANALYZER_WARNING (CWE-457): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c: scope_hint: In function ‘FindClose’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/generic.c:1212:25: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(WIN32_FILE_SEARCH *)hFindFile.lpPath’ # 1210| #endif # 1211| # 1212|-> free(pFileSearch->lpPath); # 1213| free(pFileSearch->lpPattern); # 1214| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/namedPipeClient.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/namedPipeClient.c: scope_hint: In function ‘NamedPipeClientCreateFileA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/namedPipeClient.c:201:18: warning[-Wanalyzer-fd-use-without-check]: ‘connect’ on possibly invalid file descriptor ‘-1’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/namedPipeClient.c: scope_hint: In function ‘NamedPipeClientCreateFileA’ # 199| s.sun_family = AF_UNIX; # 200| sprintf_s(s.sun_path, ARRAYSIZE(s.sun_path), "%s", pNamedPipe->lpFilePath); # 201|-> status = connect(pNamedPipe->clientfd, (struct sockaddr*)&s, sizeof(struct sockaddr_un)); # 202| pNamedPipe->common.ops = &ops; # 203| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/file/pattern.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/handle/handle.h:141:19: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateSemaphoreW(lpSemaphoreAttributes, lInitialCount, lMaximumCount, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/semaphore.c: scope_hint: In function ‘CreateSemaphoreW’ # 139| # 140| hdl->Type = _type; # 141|-> hdl->Mode = _mode; # 142| } # 143| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/input/scancode.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/io/device.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-122): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/library/library.c: scope_hint: In function ‘GetModuleFileNameA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/library/library.c:297:39: warning[-Wanalyzer-out-of-bounds]: heap-based buffer overflow freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/library/library.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:119:82: note: in definition of macro ‘CopyMemory’ # 295| # 296| CopyMemory(lpFilename, buffer, nSize - 1); # 297|-> lpFilename[nSize - 1] = '\0'; # 298| SetLastError(ERROR_INSUFFICIENT_BUFFER); # 299| return nSize; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c:746:5: warning[deadcode.DeadStores]: Value stored to 'rv' is never read # 744| { # 745| WINPR_ASSERT(provider->p11->C_CloseSession); # 746|-> rv = provider->p11->C_CloseSession(currentSession); # 747| currentSession = (CK_SESSION_HANDLE)NULL; # 748| } Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c:806:3: warning[deadcode.DeadStores]: Value stored to 'rv' is never read # 804| cleanup_FindObjects: # 805| WINPR_ASSERT(provider->p11->C_FindObjectsFinal); # 806|-> rv = provider->p11->C_FindObjectsFinal(currentSession); # 807| # 808| if (keyName) Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c: scope_hint: In function ‘NCryptOpenP11StorageProviderEx’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c:1272:39: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 1272 | c_get_function_list = (c_get_function_list_t)GetProcAddress(library, "C_GetFunctionList"); # | ^ # 1270| } # 1271| # 1272|-> c_get_function_list = (c_get_function_list_t)GetProcAddress(library, "C_GetFunctionList"); # 1273| if (!c_get_function_list) # 1274| { Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/path/path.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/path/path.c: scope_hint: In function ‘winpr_RemoveDirectory_RecursiveW’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/path/path.c:1141:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileW(path_slash, & findFileData)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/path/include/PathCchAppend.c:11:9: note: in expansion of macro ‘PATH_CCH_APPEND’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/path/path.c:341: included_from: Included from here. # 1139| dir = FindFirstFileW(path_slash, &findFileData); # 1140| # 1141|-> if (dir == INVALID_HANDLE_VALUE) # 1142| goto fail; # 1143| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/path/shell.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:717:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'baseSocket' # 715| # 716| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ArrayList_Append takes ownership of baseSocket # 717|-> ArrayList_Unlock(g_NamedPipeServerSockets); # 718| return pNamedPipe; # 719| out: Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c: scope_hint: In function ‘CreateNamedPipeA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:717:9: warning[-Wanalyzer-malloc-leak]: leak of ‘baseSocket’ # 715| # 716| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ArrayList_Append takes ownership of baseSocket # 717|-> ArrayList_Unlock(g_NamedPipeServerSockets); # 718| return pNamedPipe; # 719| out: Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:725:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/handle/handle.h: scope_hint: In function ‘CreateNamedPipeA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c: scope_hint: In function ‘CreateNamedPipeA’ # 723| close(serverfd); # 724| # 725|-> ArrayList_Unlock(g_NamedPipeServerSockets); # 726| return INVALID_HANDLE_VALUE; # 727| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:725:9: warning[-Wanalyzer-malloc-leak]: leak of ‘pNamedPipe’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:37: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/handle/handle.h: scope_hint: In function ‘CreateNamedPipeA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c: scope_hint: In function ‘CreateNamedPipeA’ # 723| close(serverfd); # 724| # 725|-> ArrayList_Unlock(g_NamedPipeServerSockets); # 726| return INVALID_HANDLE_VALUE; # 727| } Error: GCC_ANALYZER_WARNING (CWE-775): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c: scope_hint: In function ‘ConnectNamedPipe’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pipe/pipe.c:762:20: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘*(WINPR_NAMED_PIPE *)hNamedPipe.serverfd’ # 760| status = accept(pNamedPipe->serverfd, (struct sockaddr*)&s, &length); # 761| # 762|-> if (status < 0) # 763| { # 764| WLog_ERR(TAG, "ConnectNamedPipe: accept error"); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/pool.c: scope_hint: In function ‘InitializeThreadpool’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/pool.c:138:22: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &thread_pool_work_func, pool, 0, 0)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/pool.h:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/pool.c:23: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/pool.c:122:38: note: in expansion of macro ‘CreateEvent’ # 136| } # 137| # 138|-> if (!ArrayList_Append(pool->Threads, thread)) # 139| { # 140| CloseHandle(thread); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/pool.c: scope_hint: In function ‘winpr_SetThreadpoolThreadMinimum’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/pool.c:228:22: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &thread_pool_work_func, ptpp, 0, 0)’ # 226| } # 227| # 228|-> if (!ArrayList_Append(ptpp->Threads, thread)) # 229| { # 230| CloseHandle(thread); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/work.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/work.c: scope_hint: In function ‘winpr_SubmitThreadpoolWork’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/work.c:156:1: warning[-Wanalyzer-malloc-leak]: leak of ‘callbackInstance’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/work.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/work.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/work.c:144:9: note: in expansion of macro ‘WINPR_ASSERT’ # 154| } # 155| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): Queue_Enqueue takes ownership of callbackInstance # 156|-> } # 157| # 158| BOOL winpr_TrySubmitThreadpoolCallback(PTP_SIMPLE_CALLBACK pfns, PVOID pv, Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/pool/work.c:156:1: warning[unix.Malloc]: Potential leak of memory pointed to by 'callbackInstance' # 154| } # 155| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): Queue_Enqueue takes ownership of callbackInstance # 156|-> } # 157| # 158| BOOL winpr_TrySubmitThreadpoolCallback(PTP_SIMPLE_CALLBACK pfns, PVOID pv, Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/registry/registry.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/registry/registry_reg.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/rpc/rpc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/shell/shell.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:1747:3: warning[unix.Malloc]: Potential leak of memory pointed to by 'pCard' # 1745| # 1746| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ListDictionary_Add takes ownership of pCard # 1747|-> PCSC_WaitForCardAccess(hContext, pCard->hSharedContext, shared); # 1748| } # 1749| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c: scope_hint: In function ‘PCSC_SCardWriteCacheA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:2904:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:39: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:2747:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:2748:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:2748:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2902| free(id); # 2903| # 2904|-> if (!rc) # 2905| { # 2906| pcsc_cache_item_free(data); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:2911:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'data' # 2909| # 2910| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert owns data # 2911|-> return SCARD_S_SUCCESS; # 2912| } # 2913| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c: scope_hint: In function ‘PCSC_SCardWriteCacheW’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:2950:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:2747:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:2748:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:2748:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2948| free(id); # 2949| # 2950|-> if (!rc) # 2951| { # 2952| pcsc_cache_item_free(data); Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/smartcard/smartcard_pcsc.c:2957:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'data' # 2955| # 2956| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert owns data # 2957|-> return SCARD_S_SUCCESS; # 2958| } # 2959| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Kerberos/kerberos.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Kerberos/krb5glue_mit.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm.c:622:3: warning[deadcode.DeadStores]: Value stored to 'channel_bindings' is never read # 620| { # 621| input_buffer = sspi_FindSecBuffer(pInput, SECBUFFER_TOKEN); # 622|-> channel_bindings = sspi_FindSecBuffer(pInput, SECBUFFER_CHANNEL_BINDINGS); # 623| } # 624| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_av_pairs.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_av_pairs.c:52:20: warning[-Wunused-function]: ‘get_av_pair_string’ defined but not used # 52 | static const char* get_av_pair_string(UINT16 pair) # | ^~~~~~~~~~~~~~~~~~ # 50| } # 51| # 52|-> static const char* get_av_pair_string(UINT16 pair) # 53| { # 54| switch (pair) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_compute.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c: scope_hint: In function ‘ntlm_read_AuthenticateMessage’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1078:74: warning[-Wanalyzer-malloc-leak]: leak of ‘*credentials.identity.User’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/asn1.h:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/sspi_gss.h:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/sspi.h:90: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm.h:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:926:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:927:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:927:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:930:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:246:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:247:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:247:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:249:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:437:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:438:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:439:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:253:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:253:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:408:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:409:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:409:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:410:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:410:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:412:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:203:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:424:9: note: in expansion of macro ‘WLog_DBG’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:119:72: note: in definition of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c: scope_hint: In function ‘ntlm_read_AuthenticateMessage’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:119:72: note: in definition of macro ‘CopyMemory’ # 1076| # 1077| CopyMemory(credentials->identity.User, message->UserName.Buffer, message->UserName.Len); # 1078|-> credentials->identity.UserLength = message->UserName.Len / 2; # 1079| } # 1080| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1090:78: warning[-Wanalyzer-malloc-leak]: leak of ‘*credentials.identity.Domain’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:926:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:927:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:927:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:930:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:246:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:247:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:247:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:249:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:437:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:438:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:439:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:253:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:253:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:408:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:409:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:409:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:410:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:410:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:412:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:203:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:424:9: note: in expansion of macro ‘WLog_DBG’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:119:72: note: in definition of macro ‘CopyMemory’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/NTLM/ntlm_message.c: scope_hint: In function ‘ntlm_read_AuthenticateMessage’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:119:72: note: in definition of macro ‘CopyMemory’ # 1088| CopyMemory(credentials->identity.Domain, message->DomainName.Buffer, # 1089| message->DomainName.Len); # 1090|-> credentials->identity.DomainLength = message->DomainName.Len / 2; # 1091| } # 1092| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Negotiate/negotiate.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Negotiate/negotiate.c:833:4: warning[core.NonNullParamChecker]: Null pointer passed to 2nd parameter expecting 'nonnull' # 831| { # 832| /* Store the mech token in the output buffer */ # 833|-> CopyMemory(&output_token.mechToken, output_buffer, sizeof(SecBuffer)); # 834| # 835| mech_input_buffers[0] = input_token.mechToken; Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Schannel/schannel.c: scope_hint: In function ‘schannel_AcquireCredentialsHandleW.part.0’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Schannel/schannel.c:139:45: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘credentials’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Schannel/schannel.c: scope_hint: In function ‘schannel_AcquireCredentialsHandleW.part.0’ # 137| SCHANNEL_CRED* cred = NULL; # 138| credentials = schannel_CredentialsNew(); # 139|-> credentials->fCredentialUse = fCredentialUse; # 140| cred = (SCHANNEL_CRED*)pAuthData; # 141| Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Schannel/schannel.c: scope_hint: In function ‘schannel_AcquireCredentialsHandleW’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Schannel/schannel.c:154:45: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘credentials’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Schannel/schannel.c: scope_hint: In function ‘schannel_AcquireCredentialsHandleW’ # 152| { # 153| credentials = schannel_CredentialsNew(); # 154|-> credentials->fCredentialUse = fCredentialUse; # 155| sspi_SecureHandleSetLowerPointer(phCredential, (void*)credentials); # 156| sspi_SecureHandleSetUpperPointer(phCredential, (void*)SCHANNEL_PACKAGE_NAME); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/Schannel/schannel_openssl.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/sspi_gss.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/sspi_winpr.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/sspi_winpr.c:339:2: warning[core.NonNullParamChecker]: Null pointer passed to 2nd parameter expecting 'nonnull' # 337| if (!*dst) # 338| return FALSE; # 339|-> memcpy(*dst, what, len * sizeof(WCHAR)); # 340| *dstLen = len; # 341| return TRUE; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/sspi_winpr.c: scope_hint: In function ‘sspi_ContextBufferFree’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspi/sspi_winpr.c:1067:1: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ # 1065| } # 1066| } # 1067|-> } # 1068| # 1069| /** Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/sspicli/sspicli.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/barrier.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:211:18: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(lpEventAttributes, bManualReset, bInitialState, name)’ # 209| return FALSE; # 210| # 211|-> if (event->bAttached) # 212| { # 213| // don't close attached file descriptor Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c: scope_hint: In function ‘CreateEventA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:211:18: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(lpEventAttributes, manual, initial, lpName)’ # 209| return FALSE; # 210| # 211|-> if (event->bAttached) # 212| { # 213| // don't close attached file descriptor Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c: scope_hint: In function ‘CreateEventW’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:211:18: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventW(lpEventAttributes, manual, initial, lpName)’ # 209| return FALSE; # 210| # 211|-> if (event->bAttached) # 212| { # 213| // don't close attached file descriptor Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:278:20: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventW(lpEventAttributes, manual, initial, lpName)’ # 276| { # 277| name = ConvertWCharToUtf8Alloc(lpName, NULL); # 278|-> if (!name) # 279| return NULL; # 280| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:283:9: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventW(lpEventAttributes, manual, initial, lpName)’ # 281| # 282| handle = CreateEventA(lpEventAttributes, bManualReset, bInitialState, name); # 283|-> free(name); # 284| return handle; # 285| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:295:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(lpEventAttributes, bManualReset, bInitialState, name)’ # 293| WLog_WARN(TAG, "[%s] does not support lpEventAttributes", lpName); # 294| # 295|-> if (!event) # 296| return NULL; # 297| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c: scope_hint: In function ‘CreateEventA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:295:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(lpEventAttributes, manual, initial, lpName)’ # 293| WLog_WARN(TAG, "[%s] does not support lpEventAttributes", lpName); # 294| # 295|-> if (!event) # 296| return NULL; # 297| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:314:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(lpEventAttributes, bManualReset, bInitialState, name)’ # 312| goto fail; # 313| # 314|-> if (bInitialState) # 315| { # 316| if (!SetEvent(event)) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:314:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(lpEventAttributes, manual, initial, lpName)’ # 312| goto fail; # 313| # 314|-> if (bInitialState) # 315| { # 316| if (!SetEvent(event)) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c: scope_hint: In function ‘CreateFileDescriptorEventW’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:448:16: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileDescriptorEventW(lpEventAttributes, bManualReset, bInitialState, FileDescriptor, mode)’ # 446| } # 447| # 448|-> return handle; # 449| #else # 450| return NULL; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/event.c:448:16: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileDescriptorEventW(lpEventAttributes, bManualReset, bInitialState, (int)(long int)pObject, 1)’ # 446| } # 447| # 448|-> return handle; # 449| #else # 450| return NULL; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/mutex.c: scope_hint: In function ‘CreateMutexW’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/mutex.c:130:20: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateMutexW(lpMutexAttributes, initial, lpName)’ # 128| { # 129| name = ConvertWCharToUtf8Alloc(lpName, NULL); # 130|-> if (!name) # 131| return NULL; # 132| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/mutex.c:135:9: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateMutexW(lpMutexAttributes, initial, lpName)’ # 133| # 134| handle = CreateMutexA(lpMutexAttributes, bInitialOwner, name); # 135|-> free(name); # 136| return handle; # 137| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/mutex.c:165:16: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateMutexA(lpMutexAttributes, bInitialOwner, name)’ # 163| } # 164| # 165|-> return handle; # 166| } # 167| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/mutex.c: scope_hint: In function ‘CreateMutexA’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/mutex.c:165:16: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateMutexA(lpMutexAttributes, initial, lpName)’ # 163| } # 164| # 165|-> return handle; # 166| } # 167| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/pollset.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/semaphore.c: scope_hint: In function ‘CreateSemaphoreW’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/semaphore.c:136:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateSemaphoreW(lpSemaphoreAttributes, lInitialCount, lMaximumCount, 0)’ # 134| semaphore = (WINPR_SEMAPHORE*)calloc(1, sizeof(WINPR_SEMAPHORE)); # 135| # 136|-> if (!semaphore) # 137| return NULL; # 138| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/sleep.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/timer.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/synch/wait.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/thread/apc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/thread/argv.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/thread/process.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/thread/thread.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/thread/thread.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/thread/thread.c: scope_hint: In function ‘thread_launcher’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/thread/thread.c:521:65: warning[-Wpedantic]: ISO C forbids conversion of function pointer to object pointer type # 521 | WLog_ERR(TAG, "Thread function argument is %p", (void*)fkt); # | ^ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:134:35: note: in definition of macro ‘WLog_Print_unchecked’ # 134 | __VA_ARGS__); \ # | ^~~~~~~~~~~ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:152:17: note: in expansion of macro ‘WLog_Print’ # 152 | WLog_Print(_log_cached_ptr, _log_level, __VA_ARGS__); \ # | ^~~~~~~~~~ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ # 206 | #define WLog_ERR(tag, ...) WLog_Print_tag(tag, WLOG_ERROR, __VA_ARGS__) # | ^~~~~~~~~~~~~~ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/thread/thread.c:521:17: note: in expansion of macro ‘WLog_ERR’ # 521 | WLog_ERR(TAG, "Thread function argument is %p", (void*)fkt); # | ^~~~~~~~ # 519| if (!(fkt = thread->lpStartAddress)) # 520| { # 521|-> WLog_ERR(TAG, "Thread function argument is %p", (void*)fkt); # 522| goto exit; # 523| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/timezone/timezone.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/asn1/asn1.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/cmdline.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/cmdline.c: scope_hint: In function ‘CommandLineParseCommaSeparatedValuesEx’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/cmdline.c:724:9: warning[-Wanalyzer-null-argument]: use of NULL ‘unquoted’ where non-null expected <built-in>: note: argument 2 of ‘__builtin_memcpy’ must be non-null # 722| # 723| str = &((char*)p)[prefix]; # 724|-> memcpy(str, unquoted, len); # 725| # 726| if (name) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c: scope_hint: In function ‘ArrayList_Lock_Conditional’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:122:22: warning[-Wanalyzer-use-after-free]: use after ‘ArrayList_Free’ of ‘arrayList’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:522:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:200:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:201:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:201:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:257:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:121:9: note: in expansion of macro ‘WINPR_ASSERT’ # 120| { # 121| WINPR_ASSERT(arrayList); # 122|-> if (arrayList->synchronized) # 123| EnterCriticalSection(&arrayList->lock); # 124| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c: scope_hint: In function ‘ArrayList_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:590:9: warning[-Wanalyzer-mismatching-deallocation]: ‘arrayList’ should have been deallocated with ‘free’ but was deallocated with ‘ArrayList_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:522:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:200:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:201:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ArrayList.c:201:9: note: in expansion of macro ‘WINPR_ASSERT’ # 588| WINPR_PRAGMA_DIAG_PUSH # 589| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 590|-> ArrayList_Free(arrayList); # 591| WINPR_PRAGMA_DIAG_POP # 592| return NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/BitStream.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/BufferPool.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/BufferPool.c: scope_hint: In function ‘BufferPool_Lock’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/BufferPool.c:57:17: warning[-Wanalyzer-use-after-free]: use after ‘BufferPool_Free’ of ‘pool’ # 55| return FALSE; # 56| # 57|-> if (pool->synchronized) # 58| EnterCriticalSection(&pool->lock); # 59| return TRUE; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/BufferPool.c: scope_hint: In function ‘BufferPool_Take’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/BufferPool.c:338:17: warning[-Wanalyzer-mismatching-deallocation]: ‘buffer’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_aligned_free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/BufferPool.c:22: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:120:83: note: in definition of macro ‘MoveMemory’ # 336| out_error: # 337| if (pool->alignment) # 338|-> winpr_aligned_free(buffer); # 339| else # 340| free(buffer); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/BufferPool.c:528:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ # 526| WINPR_PRAGMA_DIAG_PUSH # 527| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 528|-> BufferPool_Free(pool); # 529| WINPR_PRAGMA_DIAG_POP # 530| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/BufferPool.c: scope_hint: In function ‘BufferPool_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/BufferPool.c:528:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pool’ should have been deallocated with ‘free’ but was deallocated with ‘BufferPool_Free’ # 526| WINPR_PRAGMA_DIAG_PUSH # 527| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 528|-> BufferPool_Free(pool); # 529| WINPR_PRAGMA_DIAG_POP # 530| return NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/CountdownEvent.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/CountdownEvent.c: scope_hint: In function ‘CountdownEvent_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/CountdownEvent.c:195:9: warning[-Wanalyzer-mismatching-deallocation]: ‘countdown’ should have been deallocated with ‘free’ but was deallocated with ‘CountdownEvent_Free’ # 193| WINPR_PRAGMA_DIAG_PUSH # 194| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 195|-> CountdownEvent_Free(countdown); # 196| WINPR_PRAGMA_DIAG_POP # 197| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/CountdownEvent.c: scope_hint: In function ‘CountdownEvent_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/CountdownEvent.c:206:9: warning[-Wanalyzer-use-after-free]: use after ‘CountdownEvent_Free’ of ‘countdown’ # 204| # 205| DeleteCriticalSection(&countdown->lock); # 206|-> CloseHandle(countdown->event); # 207| # 208| free(countdown); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/HashTable.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/HashTable.c: scope_hint: In function ‘HashTable_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/HashTable.c:786:9: warning[-Wanalyzer-mismatching-deallocation]: ‘table’ should have been deallocated with ‘free’ but was deallocated with ‘HashTable_Free’ # 784| WINPR_PRAGMA_DIAG_PUSH # 785| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 786|-> HashTable_Free(table); # 787| WINPR_PRAGMA_DIAG_POP # 788| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/HashTable.c: scope_hint: In function ‘HashTable_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/HashTable.c:799:18: warning[-Wanalyzer-use-after-free]: use after ‘HashTable_Free’ of ‘table’ # 797| return; # 798| # 799|-> if (table->bucketArray) # 800| { # 801| for (size_t index = 0; index < table->numOfBuckets; index++) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/LinkedList.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ListDictionary.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ListDictionary.c: scope_hint: In function ‘ListDictionary_GetKeys’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ListDictionary.c:174:40: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘pKeys’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ListDictionary.c:21: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/ListDictionary.c:133:9: note: in expansion of macro ‘WINPR_ASSERT’ # 172| while (item) # 173| { # 174|-> pKeys[index++] = (ULONG_PTR)item->key; # 175| item = item->next; # 176| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/MessageQueue.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/MessageQueue.c: scope_hint: In function ‘MessageQueue_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/MessageQueue.c:263:9: warning[-Wanalyzer-mismatching-deallocation]: ‘queue’ should have been deallocated with ‘free’ but was deallocated with ‘MessageQueue_Free’ # 261| WINPR_PRAGMA_DIAG_PUSH # 262| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 263|-> MessageQueue_Free(queue); # 264| WINPR_PRAGMA_DIAG_POP # 265| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/MessageQueue.c: scope_hint: In function ‘MessageQueue_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/MessageQueue.c:273:18: warning[-Wanalyzer-use-after-free]: use after ‘MessageQueue_Free’ of ‘queue’ # 271| return; # 272| # 273|-> if (queue->event) # 274| MessageQueue_Clear(queue); # 275| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/PubSub.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/PubSub.c: scope_hint: In function ‘PubSub_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/PubSub.c:251:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pubSub’ should have been deallocated with ‘free’ but was deallocated with ‘PubSub_Free’ # 249| WINPR_PRAGMA_DIAG_PUSH # 250| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 251|-> PubSub_Free(pubSub); # 252| WINPR_PRAGMA_DIAG_POP # 253| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/PubSub.c: scope_hint: In function ‘PubSub_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/PubSub.c:260:27: warning[-Wanalyzer-use-after-free]: use after ‘PubSub_Free’ of ‘pubSub’ # 258| if (pubSub) # 259| { # 260|-> if (pubSub->synchronized) # 261| DeleteCriticalSection(&pubSub->lock); # 262| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/Queue.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/Queue.c: scope_hint: In function ‘Queue_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/Queue.c:327:9: warning[-Wanalyzer-mismatching-deallocation]: ‘queue’ should have been deallocated with ‘free’ but was deallocated with ‘Queue_Free’ # 325| WINPR_PRAGMA_DIAG_PUSH # 326| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 327|-> Queue_Free(queue); # 328| WINPR_PRAGMA_DIAG_POP # 329| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/Queue.c: scope_hint: In function ‘Queue_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/Queue.c:337:18: warning[-Wanalyzer-use-after-free]: use after ‘Queue_Free’ of ‘queue’ # 335| return; # 336| # 337|-> if (queue->haveLock) # 338| { # 339| Queue_Clear(queue); Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/Stack.c: scope_hint: In function ‘Stack_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/Stack.c:237:9: warning[-Wanalyzer-mismatching-deallocation]: ‘stack’ should have been deallocated with ‘free’ but was deallocated with ‘Stack_Free’ # 235| WINPR_PRAGMA_DIAG_PUSH # 236| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 237|-> Stack_Free(stack); # 238| WINPR_PRAGMA_DIAG_POP # 239| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/Stack.c: scope_hint: In function ‘Stack_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/Stack.c:246:26: warning[-Wanalyzer-use-after-free]: use after ‘Stack_Free’ of ‘stack’ # 244| if (stack) # 245| { # 246|-> if (stack->synchronized) # 247| DeleteCriticalSection(&stack->lock); # 248| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c: scope_hint: In function ‘StreamPool_Lock’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c:51:17: warning[-Wanalyzer-use-after-free]: use after ‘StreamPool_Free’ of ‘pool’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c:25: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c:73:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c:50:9: note: in expansion of macro ‘WINPR_ASSERT’ # 49| { # 50| WINPR_ASSERT(pool); # 51|-> if (pool->synchronized) # 52| EnterCriticalSection(&pool->lock); # 53| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c:376:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c:73:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c:73:9: note: in expansion of macro ‘WINPR_ASSERT’ # 374| WINPR_PRAGMA_DIAG_PUSH # 375| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 376|-> StreamPool_Free(pool); # 377| WINPR_PRAGMA_DIAG_POP # 378| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c: scope_hint: In function ‘StreamPool_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c:376:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pool’ should have been deallocated with ‘free’ but was deallocated with ‘StreamPool_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/collections/StreamPool.c:73:9: note: in expansion of macro ‘WINPR_ASSERT’ # 374| WINPR_PRAGMA_DIAG_PUSH # 375| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 376|-> StreamPool_Free(pool); # 377| WINPR_PRAGMA_DIAG_POP # 378| return NULL; Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/image.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-843): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/image.c: scope_hint: In function ‘winpr_convert_to_jpeg’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/image.c:630:50: warning[-Wincompatible-pointer-types]: passing argument 2 of ‘jpeg_write_scanlines’ from incompatible pointer type freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/image.c:38: included_from: Included from here. /usr/include/jpeglib.h:1009:52: note: expected ‘JSAMPARRAY’ {aka ‘unsigned char **’} but argument is of type ‘const JSAMPLE **’ {aka ‘const unsigned char **’} # 628| const JDIMENSION offset = x * stride; # 629| const JSAMPLE* coffset = &cdata[offset]; # 630|-> if (jpeg_write_scanlines(&cinfo, &coffset, 1) != 1) # 631| goto fail; # 632| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c: scope_hint: In function ‘IniFile_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:332:16: warning[-Wanalyzer-malloc-leak]: leak of ‘IniFile_New()’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:21: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:330:9: note: in expansion of macro ‘WINPR_ASSERT’ # 330| WINPR_ASSERT(ini); # 331| # 332|-> if (ini->nSections + count >= ini->cSections) # 333| { # 334| const size_t new_size = ini->cSections + count + 1024; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c: scope_hint: In function ‘IniFile_SetFilename’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:499:17: warning[-Wanalyzer-use-after-free]: use after ‘IniFile_Free’ of ‘ini’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:330:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:498:9: note: in expansion of macro ‘WINPR_ASSERT’ # 497| { # 498| WINPR_ASSERT(ini); # 499|-> free(ini->filename); # 500| ini->filename = NULL; # 501| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c: scope_hint: In function ‘IniFile_New’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:810:12: warning[-Wanalyzer-malloc-leak]: leak of ‘IniFile_New()’ # 808| void IniFile_Free(wIniFile* ini) # 809| { # 810|-> if (!ini) # 811| return; # 812| Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:838:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ini’ should have been deallocated with ‘free’ but was deallocated with ‘IniFile_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:330:9: note: in expansion of macro ‘WINPR_ASSERT’ # 836| WINPR_PRAGMA_DIAG_PUSH # 837| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 838|-> IniFile_Free(ini); # 839| WINPR_PRAGMA_DIAG_POP # 840| return NULL; Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c: scope_hint: In function ‘IniFile_Clone’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:860:17: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:330:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:498:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:91:9: note: in expansion of macro ‘WINPR_ASSERT’ <built-in>: note: argument 1 of ‘__builtin_memcpy’ must be non-null # 858| if (!IniFile_BufferResize(copy, ini->buffersize)) # 859| goto fail; # 860|-> memcpy(copy->buffer, ini->buffer, copy->buffersize); # 861| } # 862| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:887:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:330:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:498:9: note: in expansion of macro ‘WINPR_ASSERT’ # 885| # 886| fail: # 887|-> IniFile_Free(copy); # 888| return NULL; # 889| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:887:9: warning[-Wanalyzer-mismatching-deallocation]: ‘IniFile_New()’ should have been deallocated with ‘free’ but was deallocated with ‘IniFile_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:330:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ini.c:498:9: note: in expansion of macro ‘WINPR_ASSERT’ # 885| # 886| fail: # 887|-> IniFile_Free(copy); # 888| return NULL; # 889| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/print.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/sam.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/sam.c:77:6: warning[core.NonNullParamChecker]: Null pointer passed to 2nd parameter expecting 'nonnull' # 75| if (a->DomainLength != b->DomainLength) # 76| return FALSE; # 77|-> if (strncmp(a->User, b->User, a->UserLength) != 0) # 78| return FALSE; # 79| if (strncmp(a->Domain, b->Domain, a->DomainLength) != 0) Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/sam.c: scope_hint: In function ‘SamAreEntriesEqual’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/sam.c:77:13: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/sam.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/sam.c:132:9: note: in expansion of macro ‘_fseeki64’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/sam.c:24: included_from: Included from here. /usr/include/string.h:159:12: note: argument 2 of ‘strncmp’ must be non-null # 75| if (a->DomainLength != b->DomainLength) # 76| return FALSE; # 77|-> if (strncmp(a->User, b->User, a->UserLength) != 0) # 78| return FALSE; # 79| if (strncmp(a->Domain, b->Domain, a->DomainLength) != 0) Error: CLANG_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/sam.c:79:6: warning[core.NonNullParamChecker]: Null pointer passed to 2nd parameter expecting 'nonnull' # 77| if (strncmp(a->User, b->User, a->UserLength) != 0) # 78| return FALSE; # 79|-> if (strncmp(a->Domain, b->Domain, a->DomainLength) != 0) # 80| return FALSE; # 81| return TRUE; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/sam.c: scope_hint: In function ‘SamFreeEntry’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/sam.c:255:17: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ # 253| free(entry->Domain); # 254| # 255|-> free(entry); # 256| } # 257| } Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/ssl.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/stream.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/unwind/debug.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/Appender.c: scope_hint: In function ‘WLog_Appender_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/Appender.c:29:21: warning[-Wanalyzer-use-after-free]: use after ‘WLog_Appender_Free’ of ‘appender’ # 27| return; # 28| # 29|-> if (appender->Layout) # 30| { # 31| WLog_Layout_Free(log, appender->Layout); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/BinaryAppender.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/BinaryAppender.c: scope_hint: In function ‘WLog_BinaryAppender_WriteMessage’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/BinaryAppender.c:142:9: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, MessageLength)’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/BinaryAppender.c:29: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/BinaryAppender.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ # 140| return FALSE; # 141| # 142|-> Stream_Write_UINT32(s, (UINT32)MessageLength); # 143| # 144| Stream_Write_UINT32(s, message->Type); Error: CPPCHECK_WARNING (CWE-562): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/CallbackAppender.c:50: error[autoVariables]: Address of local auto-variable assigned to a function parameter. # 48| return FALSE; # 49| # 50|-> message->PrefixString = prefix; # 51| WLog_Layout_GetMessagePrefix(log, appender->Layout, message); # 52| Error: CPPCHECK_WARNING (CWE-562): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/CallbackAppender.c:70: error[autoVariables]: Address of local auto-variable assigned to a function parameter. # 68| return FALSE; # 69| # 70|-> message->PrefixString = prefix; # 71| WLog_Layout_GetMessagePrefix(log, appender->Layout, message); # 72| Error: CPPCHECK_WARNING (CWE-562): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/CallbackAppender.c:89: error[autoVariables]: Address of local auto-variable assigned to a function parameter. # 87| return FALSE; # 88| # 89|-> message->PrefixString = prefix; # 90| WLog_Layout_GetMessagePrefix(log, appender->Layout, message); # 91| Error: CPPCHECK_WARNING (CWE-562): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/CallbackAppender.c:108: error[autoVariables]: Address of local auto-variable assigned to a function parameter. # 106| return FALSE; # 107| # 108|-> message->PrefixString = prefix; # 109| WLog_Layout_GetMessagePrefix(log, appender->Layout, message); # 110| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/ConsoleAppender.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING (CWE-562): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/ConsoleAppender.c:62: error[autoVariables]: Address of local auto-variable assigned to a function parameter. # 60| consoleAppender = (wLogConsoleAppender*)appender; # 61| # 62|-> message->PrefixString = prefix; # 63| WLog_Layout_GetMessagePrefix(log, appender->Layout, message); # 64| Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/FileAppender.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING (CWE-562): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/FileAppender.c:144: error[autoVariables]: Address of local auto-variable assigned to a function parameter. # 142| return FALSE; # 143| # 144|-> message->PrefixString = prefix; # 145| WLog_Layout_GetMessagePrefix(log, appender->Layout, message); # 146| fprintf(fp, "%s%s\n", message->PrefixString, message->TextString); Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/Layout.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/PacketMessage.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/UdpAppender.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING (CWE-562): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/UdpAppender.c:100: error[autoVariables]: Address of local auto-variable assigned to a function parameter. # 98| # 99| udpAppender = (wLogUdpAppender*)appender; # 100|-> message->PrefixString = prefix; # 101| WLog_Layout_GetMessagePrefix(log, appender->Layout, message); # 102| _sendto(udpAppender->sock, message->PrefixString, (int)strnlen(message->PrefixString, INT_MAX), Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-457): freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c: scope_hint: In function ‘WLog_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c:915:25: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*log.Name’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c:27: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c:104:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/crt.h:28: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c:26: included_from: Included from here. freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/include/winpr/winpr.h:78:59: note: in definition of macro ‘WINPR_NORETURN’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c:98:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c:104:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c: scope_hint: In function ‘WLog_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c: scope_hint: In function ‘WLog_Free’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/utils/wlog/wlog.c:98:9: note: in expansion of macro ‘WINPR_ASSERT’ # 913| } # 914| # 915|-> free(log->Name); # 916| free(log->Names[0]); # 917| free(log->Names); Error: COMPILER_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/wtsapi/wtsapi.c: scope_hint: In function ‘LoadAndInitialize’ freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/libwinpr/wtsapi/wtsapi.c:704:23: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 704 | pInitWtsApi = (INIT_WTSAPI_FN)GetProcAddress(g_WtsApiModule, "InitWtsApi"); # | ^ # 702| return FALSE; # 703| # 704|-> pInitWtsApi = (INIT_WTSAPI_FN)GetProcAddress(g_WtsApiModule, "InitWtsApi"); # 705| # 706| if (!pInitWtsApi) Error: CPPCHECK_WARNING: freerdp-3.5.1-build/FreeRDP-3.5.1/winpr/tools/hash-cli/hash.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.