Task #866 - freerdp-3.4.0-1.fc40/scan-results.err
back to task #866download
Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/ainput/server/ainput_main.c: scope_hint: In function ‘ainput_server_close’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/ainput/server/ainput_main.c:352:20: warning[-Wanalyzer-use-after-free]: use after ‘ainput_server_context_free’ of ‘context’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/ainput/server/ainput_main.c:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/ainput/server/ainput_main.c: scope_hint: In function ‘ainput_server_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/ainput/server/ainput_main.c:435:1: warning[-Wanalyzer-malloc-leak]: leak of ‘ainput’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:614:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:615:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:615:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:547:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:568:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:598:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:547:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:568:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c: scope_hint: In function ‘audin_server_packet_send’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:693:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:694:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:694:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:547:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:568:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:569:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/synch.h:32: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c: scope_hint: In function ‘audin_server_send_open’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:642:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:643:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:643:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c:547:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/audin/server/audin.c: scope_hint: In function ‘audin_server_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/client/addin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/channels/client/addin.c: scope_hint: In function ‘freerdp_channels_find_static_entry_in_table’ freerdp-3.4.0-build/FreeRDP-3.4.0/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: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/channels/client/generic_dynvc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/cliprdr/client/cliprdr_format.c: scope_hint: In function ‘cliprdr_filter_format_list’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/cliprdr/client/cliprdr_format.c:59:39: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/cliprdr/client/cliprdr_format.c:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/cliprdr/client/cliprdr_format.c:77:47: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/cliprdr/client/cliprdr_format.c:94:47: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/cliprdr/cliprdr_common.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/channels/cliprdr/server/cliprdr_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/disp/server/disp_main.c:614:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/disp/server/disp_main.c: scope_hint: In function ‘disp_server_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/include/freerdp/api.h:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/channels/disp.h:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/server/disp.h:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/disp/server/disp_main.h:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/disp/server/disp_main.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/disp/server/disp_main.c: scope_hint: In function ‘disp_server_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/disp/server/disp_main.c:624:20: warning[-Wanalyzer-use-after-free]: use after ‘disp_server_context_free’ of ‘context’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/drdynvc/client/drdynvc_main.c: scope_hint: In function ‘dvcman_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drdynvc/client/drdynvc_main.c:341:16: warning[-Wanalyzer-malloc-leak]: leak of ‘dvcman’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drdynvc/client/drdynvc_main.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drdynvc/client/drdynvc_main.c:307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/drdynvc/client/drdynvc_main.c:572:1: warning[-Wanalyzer-malloc-leak]: leak of ‘dvcman’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drdynvc/client/drdynvc_main.c:562:9: note: in expansion of macro ‘WINPR_ASSERT’ # 570| StreamPool_Free(dvcman->pool); # 571| free(dvcman); # 572|-> } # 573| # 574| /** Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c: scope_hint: In function ‘drive_file_set_fullpath’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c:41: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c:749:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c:749:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c:749:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘drive_file_set_fullpath’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c: scope_hint: In function ‘drive_file_set_fullpath’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c:751:25: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c:751:25: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:722:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c:37: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c:110:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c:67:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_file.c:36: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_main.c: scope_hint: In function ‘drive_process_irp_create’ freerdp-3.4.0-build/FreeRDP-3.4.0/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-843): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_main.c: scope_hint: In function ‘drive_process_irp_query_volume_information’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_main.c:514:60: warning[-Wincompatible-pointer-types]: passing argument 1 of ‘wcslen’ from incompatible pointer type # 514 | const size_t diskTypeLen = (wcslen(diskType) + 1) * sizeof(WCHAR); # | ^~~~~~~~ # | | # | const WCHAR * {aka const short unsigned int *} freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/string.h:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:31: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_main.c:31: included_from: Included from here. /usr/include/wchar.h:247:38: note: expected ‘const wchar_t *’ {aka ‘const int *’} but argument is of type ‘const WCHAR *’ {aka ‘const short unsigned int *’} # 247 | extern size_t wcslen (const wchar_t *__s) __THROW __attribute_pure__; # | ~~~~~~~~~~~~~~~^~~ # 512| const WCHAR* diskType = # 513| InitializeConstWCharFromUtf8("FAT32", LabelBuffer, ARRAYSIZE(LabelBuffer)); # 514|-> const size_t diskTypeLen = (wcslen(diskType) + 1) * sizeof(WCHAR); # 515| const size_t length = 12ul + diskTypeLen; # 516| Stream_Write_UINT32(output, length); /* Length */ Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/drive/client/drive_main.c: scope_hint: In function ‘drive_process_irp_silent_ignore’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/location/client/location_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/client/location_main.c: scope_hint: In function ‘location_send_client_ready_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/client/location_main.c:114:50: warning[-Wpointer-sign]: pointer targets in passing argument 2 of ‘Stream_StaticInit’ differ in signedness # 114 | wStream* s = Stream_StaticInit(&sbuffer, buffer, sizeof(buffer)); # | ^~~~~~ # | | # | char * freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/client/location_main.c:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:97:64: note: expected ‘BYTE *’ {aka ‘unsigned char *’} but argument is of type ‘char *’ # 97 | WINPR_API wStream* Stream_StaticInit(wStream* s, BYTE* buffer, size_t size); # | ~~~~~~^~~~~~ # 112| wStream sbuffer = { 0 }; # 113| char buffer[32] = { 0 }; # 114|-> wStream* s = Stream_StaticInit(&sbuffer, buffer, sizeof(buffer)); # 115| WINPR_ASSERT(s); # 116| Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/client/location_main.c: scope_hint: In function ‘location_send_base_location3d’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/client/location_main.c:214:50: warning[-Wpointer-sign]: pointer targets in passing argument 2 of ‘Stream_StaticInit’ differ in signedness # 214 | wStream* s = Stream_StaticInit(&sbuffer, buffer, sizeof(buffer)); # | ^~~~~~ # | | # | char * freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:97:64: note: expected ‘BYTE *’ {aka ‘unsigned char *’} but argument is of type ‘char *’ # 97 | WINPR_API wStream* Stream_StaticInit(wStream* s, BYTE* buffer, size_t size); # | ~~~~~~^~~~~~ # 212| wStream sbuffer = { 0 }; # 213| char buffer[32] = { 0 }; # 214|-> wStream* s = Stream_StaticInit(&sbuffer, buffer, sizeof(buffer)); # 215| WINPR_ASSERT(s); # 216| WINPR_ASSERT(channel); Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/client/location_main.c: scope_hint: In function ‘location_send_location2d_delta’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/client/location_main.c:245:50: warning[-Wpointer-sign]: pointer targets in passing argument 2 of ‘Stream_StaticInit’ differ in signedness # 245 | wStream* s = Stream_StaticInit(&sbuffer, buffer, sizeof(buffer)); # | ^~~~~~ # | | # | char * freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:97:64: note: expected ‘BYTE *’ {aka ‘unsigned char *’} but argument is of type ‘char *’ # 97 | WINPR_API wStream* Stream_StaticInit(wStream* s, BYTE* buffer, size_t size); # | ~~~~~~^~~~~~ # 243| wStream sbuffer = { 0 }; # 244| char buffer[32] = { 0 }; # 245|-> wStream* s = Stream_StaticInit(&sbuffer, buffer, sizeof(buffer)); # 246| WINPR_ASSERT(s); # 247| Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/client/location_main.c: scope_hint: In function ‘location_send_location3d_delta’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/client/location_main.c:275:50: warning[-Wpointer-sign]: pointer targets in passing argument 2 of ‘Stream_StaticInit’ differ in signedness # 275 | wStream* s = Stream_StaticInit(&sbuffer, buffer, sizeof(buffer)); # | ^~~~~~ # | | # | char * freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:97:64: note: expected ‘BYTE *’ {aka ‘unsigned char *’} but argument is of type ‘char *’ # 97 | WINPR_API wStream* Stream_StaticInit(wStream* s, BYTE* buffer, size_t size); # | ~~~~~~^~~~~~ # 273| wStream sbuffer = { 0 }; # 274| char buffer[32] = { 0 }; # 275|-> wStream* s = Stream_StaticInit(&sbuffer, buffer, sizeof(buffer)); # 276| WINPR_ASSERT(s); # 277| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/location/server/location_main.c: scope_hint: In function ‘location_server_close’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/server/location_main.c:476:22: warning[-Wanalyzer-use-after-free]: use after ‘location_server_context_free’ of ‘context’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/location/server/location_main.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/location/server/location_main.c: scope_hint: In function ‘location_server_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/location/server/location_main.c:634:1: warning[-Wanalyzer-malloc-leak]: leak of ‘location’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/parallel/client/parallel_main.c: scope_hint: In function ‘parallel_process_irp_read’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/parallel/client/parallel_main.c:145:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used # 145 | UINT64 Offset = 0; # | ^~~~~~ # 143| { # 144| UINT32 Length = 0; # 145|-> UINT64 Offset = 0; # 146| ssize_t status = 0; # 147| BYTE* buffer = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/parallel/client/parallel_main.c: scope_hint: In function ‘parallel_process_irp_write’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/parallel/client/parallel_main.c:201:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used # 201 | UINT64 Offset = 0; # | ^~~~~~ # 199| UINT32 len = 0; # 200| UINT32 Length = 0; # 201|-> UINT64 Offset = 0; # 202| ssize_t status = 0; # 203| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/printer/client/cups/printer_cups.c: scope_hint: In function ‘printer_cups_new_printer’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/printer/client/cups/printer_cups.c:273:1: warning[-Wanalyzer-malloc-leak]: leak of ‘cups_printer’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/printer/client/cups/printer_cups.c:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/printer/client/cups/printer_cups.c:257:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/printer/client/cups/printer_cups.c:332:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cups_printer’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/printer/client/printer_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/printer/client/printer_main.c: scope_hint: In function ‘printer_process_irp_write’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/printer/client/printer_main.c: scope_hint: In function ‘printer_DeviceServiceEntry’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/printer/client/printer_main.c:1106:13: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(*(RDPDR_PRINTER *)pEntryPoints_58(D)->device.DriverName)’ freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/channels/rdpdr.h:36: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/printer/client/printer_main.c:39: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rail/client/client_rails.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rail/client/client_rails.c: scope_hint: In function ‘client_rail_server_start_cmd’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rail/client/client_rails.c:90:49: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 90 | exec.RemoteApplicationArguments = RemoteApplicationFile; # | ^ # 88| } # 89| else if (RemoteApplicationFile) # 90|-> exec.RemoteApplicationArguments = RemoteApplicationFile; # 91| else # 92| exec.RemoteApplicationArguments = RemoteApplicationCmdLine; Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rail/client/client_rails.c:92:49: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 92 | exec.RemoteApplicationArguments = RemoteApplicationCmdLine; # | ^ # 90| exec.RemoteApplicationArguments = RemoteApplicationFile; # 91| else # 92|-> exec.RemoteApplicationArguments = RemoteApplicationCmdLine; # 93| exec.RemoteApplicationProgram = # 94| freerdp_settings_get_string(settings, FreeRDP_RemoteApplicationProgram); Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rail/client/client_rails.c:93:39: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 93 | exec.RemoteApplicationProgram = # | ^ # 91| else # 92| exec.RemoteApplicationArguments = RemoteApplicationCmdLine; # 93|-> exec.RemoteApplicationProgram = # 94| freerdp_settings_get_string(settings, FreeRDP_RemoteApplicationProgram); # 95| exec.RemoteApplicationWorkingDir = Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rail/client/client_rails.c:95:42: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 95 | exec.RemoteApplicationWorkingDir = # | ^ # 93| exec.RemoteApplicationProgram = # 94| freerdp_settings_get_string(settings, FreeRDP_RemoteApplicationProgram); # 95|-> exec.RemoteApplicationWorkingDir = # 96| freerdp_settings_get_string(settings, FreeRDP_ShellWorkingDirectory); # 97| return context->ClientExecute(context, &exec); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rail/server/rail_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/client/devman.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/client/irp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/client/rdpdr_main.c: scope_hint: In function ‘dummy_irp_response’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/client/rdpdr_main.c:1471:16: warning[-Wunused-but-set-variable]: variable ‘FileId’ set but not used # 1471 | UINT32 FileId = 0; # | ^~~~~~ # 1469| wStream* output = NULL; # 1470| UINT32 DeviceId = 0; # 1471|-> UINT32 FileId = 0; # 1472| UINT32 CompletionId = 0; # 1473| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_close_file’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:229:39: warning[-Wanalyzer-malloc-leak]: leak of ‘irp’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_close_file’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3177:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3178:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3179:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3179:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3179:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:183:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2294:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2295:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2297:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:673:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:674:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:205:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:206:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:207:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_read_general_capability_set’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_create_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_read_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_write_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_device_control_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_query_volume_information_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: At top level freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_set_volume_information_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_query_information_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_set_information_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_query_directory_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_change_directory_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_lock_control_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_create_directory_callback1’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2528:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used # 2528 | UINT8 information = 0; # | ^~~~~~~~~~~ # 2526| { # 2527| UINT32 fileId = 0; # 2528|-> UINT8 information = 0; # 2529| WINPR_ASSERT(context); # 2530| WINPR_ASSERT(context->priv); Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_delete_directory_callback1’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2649:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used # 2649 | UINT8 information = 0; # | ^~~~~~~~~~~ # 2647| { # 2648| UINT32 fileId = 0; # 2649|-> UINT8 information = 0; # 2650| WINPR_ASSERT(context); # 2651| WINPR_ASSERT(context->priv); Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_open_file_callback’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2911:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used # 2911 | UINT8 information = 0; # | ^~~~~~~~~~~ # 2909| { # 2910| UINT32 fileId = 0; # 2911|-> UINT8 information = 0; # 2912| WINPR_ASSERT(context); # 2913| WINPR_ASSERT(context->priv); Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3051:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'irp' # 3049| /* Send a request to open the directory. */ # 3050| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): rdpdr_server_enqueue_irp owns irp # 3051|-> return rdpdr_server_send_device_read_request(context, deviceId, fileId, irp->CompletionId, # 3052| length, offset); # 3053| } Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3128:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'irp' # 3126| /* Send a request to open the directory. */ # 3127| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): rdpdr_server_enqueue_irp owns irp # 3128|-> return rdpdr_server_send_device_write_request(context, deviceId, fileId, irp->CompletionId, # 3129| buffer, length, offset); # 3130| } Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3202:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'irp' # 3200| /* Send a request to open the directory. */ # 3201| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): rdpdr_server_enqueue_irp owns irp # 3202|-> return rdpdr_server_send_device_close_request(context, deviceId, fileId, irp->CompletionId); # 3203| } # 3204| Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_delete_file_callback1’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3244:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used # 3244 | UINT8 information = 0; # | ^~~~~~~~~~~ # 3242| { # 3243| UINT32 fileId = 0; # 3244|-> UINT8 information = 0; # 3245| WINPR_ASSERT(context); # 3246| WINPR_ASSERT(context->priv); Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_rename_file_callback2’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3360:16: warning[-Wunused-but-set-variable]: variable ‘length’ set but not used # 3360 | UINT32 length = 0; # | ^~~~~~ # 3358| UINT32 completionId, UINT32 ioStatus) # 3359| { # 3360|-> UINT32 length = 0; # 3361| WINPR_ASSERT(context); # 3362| WINPR_ASSERT(context->priv); Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_rename_file_callback1’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3403:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used # 3403 | UINT8 information = 0; # | ^~~~~~~~~~~ # 3401| { # 3402| UINT32 fileId = 0; # 3403|-> UINT8 information = 0; # 3404| WINPR_ASSERT(context); # 3405| WINPR_ASSERT(context->priv); Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3482:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'irp' # 3480| /* Send a request to open the file. */ # 3481| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): rdpdr_server_enqueue_irp owns irp # 3482|-> return rdpdr_server_send_device_create_request(context, deviceId, irp->CompletionId, # 3483| irp->PathName, FILE_READ_DATA | SYNCHRONIZE, # 3484| FILE_SYNCHRONOUS_IO_NONALERT, FILE_OPEN); Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3562:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘rdpdr_server_context_free’ # 3560| WINPR_PRAGMA_DIAG_PUSH # 3561| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 3562|-> rdpdr_server_context_free(context); # 3563| WINPR_PRAGMA_DIAG_POP # 3564| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3572:9: warning[-Wanalyzer-use-after-free]: use after ‘rdpdr_server_context_free’ of ‘context’ # 3570| return; # 3571| # 3572|-> rdpdr_server_private_free(context->priv); # 3573| free(context); # 3574| } Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpecam/server/camera_device_enumerator_main.c: scope_hint: In function ‘enumerator_server_close’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpecam/server/camera_device_enumerator_main.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpecam/server/camera_device_enumerator_main.c: scope_hint: In function ‘cam_dev_enum_server_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpecam/server/camera_device_enumerator_main.c:611:1: warning[-Wanalyzer-malloc-leak]: leak of ‘enumerator’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpecam/server/camera_device_main.c: scope_hint: In function ‘device_server_close’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpecam/server/camera_device_main.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpecam/server/camera_device_main.c: scope_hint: In function ‘camera_device_server_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpecam/server/camera_device_main.c:966:1: warning[-Wanalyzer-malloc-leak]: leak of ‘device’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpei/client/rdpei_main.c: scope_hint: At top level freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpei/client/rdpei_main.c: scope_hint: In function ‘rdpei_recv_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpei/rdpei_common.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c: scope_hint: In function ‘read_cap_set’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:166:12: warning[-Wanalyzer-malloc-leak]: leak of ‘capsSetV1’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:460:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:293:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:231:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:232:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:235:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:748:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:266:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:266:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:266:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:267:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:267:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:268:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:268:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:184:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:185:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:185:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:186:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:186:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:202:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:128:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:128:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:128:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:129:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:129:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:130:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c: scope_hint: In function ‘mouse_cursor_server_close’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c: scope_hint: In function ‘mouse_cursor_server_send_sc_mouseptr_update’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c: scope_hint: In function ‘mouse_cursor_server_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpemsc/server/mouse_cursor_main.c:727:1: warning[-Wanalyzer-malloc-leak]: leak of ‘mouse_cursor’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpgfx/client/rdpgfx_main.c: scope_hint: In function ‘rdpgfx_client_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpgfx/client/rdpgfx_main.c:2388:13: warning[-Wanalyzer-use-after-free]: use after ‘rdpgfx_client_context_free’ of ‘context’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpgfx/client/rdpgfx_main.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpgfx/client/rdpgfx_main.c:2198:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2386| return; # 2387| # 2388|-> gfx = (RDPGFX_PLUGIN*)context->handle; # 2389| # 2390| free_surfaces(context, gfx->SurfaceTable); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpgfx/rdpgfx_common.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/pulse/rdpsnd_pulse.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/pulse/rdpsnd_pulse.c:754:3: warning[unix.Malloc]: Potential leak of memory pointed to by 'pulse' # 752| if (pa_threaded_mainloop_start(pulse->mainloop) < 0) # 753| { # 754|-> pa_threaded_mainloop_unlock(pulse->mainloop); # 755| return FALSE; # 756| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/pulse/rdpsnd_pulse.c: scope_hint: In function ‘pulse_freerdp_rdpsnd_client_subsystem_entry’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/pulse/rdpsnd_pulse.c:754:17: warning[-Wanalyzer-malloc-leak]: leak of ‘pulse’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/pulse/rdpsnd_pulse.c:32: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/pulse/rdpsnd_pulse.c:714:9: note: in expansion of macro ‘WINPR_ASSERT’ # 752| if (pa_threaded_mainloop_start(pulse->mainloop) < 0) # 753| { # 754|-> pa_threaded_mainloop_unlock(pulse->mainloop); # 755| return FALSE; # 756| } Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:175:12: warning[-Wanalyzer-malloc-leak]: leak of ‘audio_formats_new((long unsigned int)*rdpsnd.NumberOfServerFormats)’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:40: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:38: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:689:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:690:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:690:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:691:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:692:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:782:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:788:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:788:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:788:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:790:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:790:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:264:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:277:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:277:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:278:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:278:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:279:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:279:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_select_supported_audio_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:302:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/addin.h:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:46: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/api.h:103:11: note: in definition of macro ‘IFCALLRESULT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:165:9: note: in expansion of macro ‘WINPR_ASSERT’ # 173| rdpsnd->ClientFormats = audio_formats_new(rdpsnd->NumberOfServerFormats); # 174| # 175|-> if (!rdpsnd->ClientFormats || !rdpsnd->device) # 176| return; # 177| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:689:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:690:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:690:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:691:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:692:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:782:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:788:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:788:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:788:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:790:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:790:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:264:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:277:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:277:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:278:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:278:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:279:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:279:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpsnd_recv_server_audio_formats_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_wave2_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:1832:66: warning[-Wanalyzer-malloc-leak]: leak of ‘allocatePlugin()’ freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/api.h:32:9: note: in definition of macro ‘FREERDP_ENTRY_POINT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:1800:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:1801:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:1841:37: warning[-Wanalyzer-malloc-leak]: leak of ‘allocatePlugin()’ freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/api.h:32:9: note: in definition of macro ‘FREERDP_ENTRY_POINT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:1800:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:1801:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:1829:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/server/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_server_recv_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/server/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_server_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/server/rdpsnd_main.c:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/server/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_server_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/server/rdpsnd_main.c:1096:20: warning[-Wanalyzer-use-after-free]: use after ‘rdpsnd_server_context_free’ of ‘context’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/remdesk/client/remdesk_main.c: scope_hint: In function ‘remdesk_generate_expert_blob’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/remdesk/client/remdesk_main.c:96:14: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 94| } # 95| # 96|-> name = freerdp_settings_get_string(settings, FreeRDP_Username); # 97| # 98| if (!name) Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/remdesk/client/remdesk_main.c: scope_hint: In function ‘remdesk_send_ctl_authenticate_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/remdesk/client/remdesk_main.c: scope_hint: In function ‘remdesk_send_ctl_remote_control_desktop_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/remdesk/server/remdesk_main.c: scope_hint: In function ‘remdesk_server_thread’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/serial/client/serial_main.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/serial/client/serial_main.c: scope_hint: In function ‘serial_process_irp_read’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/serial/client/serial_main.c: scope_hint: In function ‘serial_process_irp_write’ freerdp-3.4.0-build/FreeRDP-3.4.0/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: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/telemetry/server/telemetry_main.c: scope_hint: In function ‘telemetry_process_message’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/telemetry/server/telemetry_main.c: scope_hint: In function ‘telemetry_server_close’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/telemetry/server/telemetry_main.c:345:23: warning[-Wanalyzer-use-after-free]: use after ‘telemetry_server_context_free’ of ‘context’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/telemetry/server/telemetry_main.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/telemetry/server/telemetry_main.c: scope_hint: In function ‘telemetry_server_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/telemetry/server/telemetry_main.c:442:1: warning[-Wanalyzer-malloc-leak]: leak of ‘telemetry’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urbdrc_process_register_request_callback’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urbdrc_process_internal_io_control’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_select_interface’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_control_vendor_or_class_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1038:16: warning[-Wunused-but-set-variable]: variable ‘Padding’ set but not used # 1038 | UINT16 Padding = 0; # | ^~~~~~~ # 1036| UINT16 Value = 0; # 1037| UINT16 Index = 0; # 1038|-> UINT16 Padding = 0; # 1039| wStream* out = NULL; # 1040| URBDRC_PLUGIN* urbdrc = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_pipe_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1210:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferSize’ set but not used # 1210 | UINT32 OutputBufferSize = 0; # | ^~~~~~~~~~~~~~~~ # 1208| UINT32 PipeHandle = 0; # 1209| UINT32 EndpointAddress = 0; # 1210|-> UINT32 OutputBufferSize = 0; # 1211| UINT32 usbd_status = 0; # 1212| wStream* out = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_get_current_frame_number’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1291:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferSize’ set but not used # 1291 | UINT32 OutputBufferSize = 0; # | ^~~~~~~~~~~~~~~~ # 1289| UINT32 out_size = 0; # 1290| UINT32 InterfaceId = 0; # 1291|-> UINT32 OutputBufferSize = 0; # 1292| UINT32 dummy_frames = 0; # 1293| wStream* out = NULL; Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1569:16: warning[-Wunused-but-set-variable]: variable ‘CbTsUrb’ set but not used # 1569 | UINT32 CbTsUrb = 0; # | ^~~~~~~ # 1567| int transferDir) # 1568| { # 1569|-> UINT32 CbTsUrb = 0; # 1570| UINT16 Size = 0; # 1571| UINT16 URB_Function = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urbdrc_process_transfer_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1570:16: warning[-Wunused-but-set-variable]: variable ‘Size’ set but not used # 1570 | UINT16 Size = 0; # | ^~~~ # 1568| { # 1569| UINT32 CbTsUrb = 0; # 1570|-> UINT16 Size = 0; # 1571| UINT16 URB_Function = 0; # 1572| UINT32 RequestId = 0; Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘libusb_udev_isoch_transfer’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevice.c:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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-476): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘libusb_udev_complete_msconfig_setup’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘udev_init’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevice.c:1522:9: warning[-Wanalyzer-malloc-leak]: leak of ‘pdev’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevice.c:1683:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevice.c:1527:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevice.c: scope_hint: In function ‘udev_new_by_id’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevice.c:1816:32: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/urbdrc_main.c: scope_hint: In function ‘urbdrc_exchange_capabilities’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c: scope_hint: In function ‘msusb_mspipes_read’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:99:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c: scope_hint: In function ‘msusb_mspipes_read’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.h:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:155:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:155:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:155:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:156:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:156:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:157:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:157:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:158:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:158:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:160:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:160:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c: scope_hint: In function ‘msusb_mspipes_read’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:79:17: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:79:17: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:79:17: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:81:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:81:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:82:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c:82:17: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/msusb.c: scope_hint: In function ‘msusb_msconfig_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c: scope_hint: In function ‘video_VideoData’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:932:1: warning[-Wanalyzer-malloc-leak]: leak of ‘frame’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:812:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:813:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:813:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:816:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:294:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:295:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:295:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:296:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:296:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:739:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/video/client/video_main.c: scope_hint: In function ‘video_VideoData’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:203:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/SDL/dialogs/sdl_connection_dialog.cpp: scope_hint: In member function ‘bool SDLConnectionDialog::showError(const char*, ...)’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/SDL/dialogs/sdl_connection_dialog.cpp: scope_hint: In member function ‘std::string SDLConnectionDialog::print(const char*, __va_list_tag*)’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/SDL/dialogs/sdl_connection_dialog.cpp:463:38: warning[-Wsign-compare]: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} # 463 | } while ((size > 0) && (size > res.size())); # | ~~~~~^~~~~~~~~~~~ # 461| va_end(copy); # 462| # 463|-> } while ((size > 0) && (size > res.size())); # 464| # 465| return res; Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/SDL/sdl_channels.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/SDL/sdl_disp.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/SDL/sdl_freerdp.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/SDL/sdl_freerdp.cpp: scope_hint: In function ‘void sdl_post_final_disconnect(freerdp*)’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/SDL/sdl_monitor.cpp: scope_hint: At global scope freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/SDL/sdl_monitor.cpp: scope_hint: In function ‘BOOL sdl_detect_monitors(SdlContext*, UINT32*, UINT32*)’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/SDL/sdl_monitor.cpp:321:30: warning[-Wsign-compare]: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘const int’ # 321 | for (size_t x = 0; x < numDisplays; x++) # | ~~^~~~~~~~~~~~~ # 319| return FALSE; # 320| # 321|-> for (size_t x = 0; x < numDisplays; x++) # 322| { # 323| if (!freerdp_settings_set_pointer_array(settings, FreeRDP_MonitorIds, x, &x)) Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/SDL/sdl_pointer.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/SDL/sdl_touch.cpp: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlf_channels.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlf_cliprdr.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlf_cliprdr.c: scope_hint: In function ‘wlf_cliprdr_transfer_data’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlf_cliprdr.c:528:38: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 526| if (wlf_mime_is_html(mime)) # 527| { # 528|-> request.responseMime = mime_html; # 529| request.responseFormat = wlf_get_server_format_id(clipboard, type_HtmlFormat); # 530| } Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlf_cliprdr.c:533:38: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 531| else if (wlf_mime_is_file(mime)) # 532| { # 533|-> request.responseMime = mime; # 534| request.responseFormat = wlf_get_server_format_id(clipboard, type_FileGroupDescriptorW); # 535| } Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlf_cliprdr.c:543:38: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 541| else if (wlf_mime_is_image(mime)) # 542| { # 543|-> request.responseMime = mime; # 544| if (strcmp(mime, mime_tiff) == 0) # 545| request.responseFormat = CF_TIFF; Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlf_cliprdr.c: scope_hint: In function ‘wlf_cliprdr_server_format_data_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlf_cliprdr.c:785:79: warning[-Wpointer-sign]: pointer targets in passing argument 2 of ‘cliprdr_file_context_update_client_data’ differ in signedness # 785 | if (!cliprdr_file_context_update_client_data(clipboard->file, data, size)) # | ^~~~ # | | # | BYTE * {aka unsigned char *} freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlf_cliprdr.c:35: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/client/client_cliprdr_file.h:87:78: note: expected ‘const char *’ but argument is of type ‘BYTE *’ {aka ‘unsigned char *’} # 87 | const char* data, size_t count); # | ~~~~~~~~~~~~^~~~ # 783| if (fileFormatId == formatId) # 784| { # 785|-> if (!cliprdr_file_context_update_client_data(clipboard->file, data, size)) # 786| goto fail; # 787| } Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/Wayland/wlf_input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlfreerdp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlfreerdp.c: scope_hint: In function ‘wl_post_connect’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/Wayland/wlfreerdp.c:244:23: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 242| const char* wtitle = freerdp_settings_get_string(settings, FreeRDP_WindowTitle); # 243| if (wtitle) # 244|-> title = wtitle; # 245| # 246| if (!gdi_init(instance, PIXEL_FORMAT_BGRA32)) Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_channels.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c: scope_hint: In function ‘xf_handle_pipe’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:77: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c: scope_hint: In function ‘xf_setup_x11’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1888:25: warning[-Wanalyzer-malloc-leak]: leak of ‘calloc(nitems, 8)’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1101:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1105:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1108:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1823:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:204:29: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1850:17: note: in expansion of macro ‘WLog_INFO’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:33: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1887:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1943:12: warning[-Wanalyzer-malloc-leak]: leak of ‘calloc(16, 20)’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1101:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1105:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1108:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_client.c:1823:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:204:29: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:189:24: warning[-Wanalyzer-malloc-leak]: leak of ‘xf_cached_data_new_copy(data, size)’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:35: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2011:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2012:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2012:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2015:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2018:9: note: in expansion of macro ‘WINPR_ASSERT’ # 187| if (data_length > 0) # 188| { # 189|-> copy = malloc(data_length); # 190| if (!copy) # 191| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c: scope_hint: In function ‘xf_clipboard_free_server_formats’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:204:22: warning[-Wanalyzer-use-after-free]: use after ‘xf_clipboard_free’ of ‘clipboard’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2239:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2240:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:859:2: warning[deadcode.DeadStores]: Value stored to 'srcFormatId' is never read # 857| } # 858| # 859|-> srcFormatId = 0; # 860| # 861| switch (format->formatToRequest) Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:1458:5: warning[unix.Malloc]: Potential leak of memory pointed to by 'cached_data' # 1456| # 1457| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 1458|-> xf_cliprdr_provide_data(clipboard, respond, cached_data->data, # 1459| cached_data->data_length); # 1460| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c: scope_hint: In function ‘xf_cliprdr_server_format_data_response’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2164:69: warning[-Wanalyzer-malloc-leak]: leak of ‘xf_cached_data_new(pDstData, DstSize)’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2011:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2012:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2012:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2015:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2018:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2162| return CHANNEL_RC_OK; # 2163| } # 2164|-> if (!HashTable_Insert(clipboard->cachedData, (void*)(UINT_PTR)dstFormatId, cached_data)) # 2165| { # 2166| WLog_WARN(TAG, "Failed to cache clipboard data"); Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2178:35: warning[unix.Malloc]: Potential leak of memory pointed to by 'cached_data' # 2176| // clipboard->cachedData owns cached_data # 2177| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc # 2178|-> xfCachedData* cached_raw_data = xf_cached_data_new_copy(data, size); # 2179| if (!cached_raw_data) # 2180| WLog_WARN(TAG, "Failed to allocate cache entry"); Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c: scope_hint: In function ‘xf_cliprdr_server_format_data_response’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2178:73: warning[-Wdiscarded-qualifiers]: passing argument 1 of ‘xf_cached_data_new_copy’ discards ‘const’ qualifier from pointer target type freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:184:52: note: expected ‘BYTE *’ {aka ‘unsigned char *’} but argument is of type ‘const BYTE *’ {aka ‘const unsigned char *’} # 2176| // clipboard->cachedData owns cached_data # 2177| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc # 2178|-> xfCachedData* cached_raw_data = xf_cached_data_new_copy(data, size); # 2179| if (!cached_raw_data) # 2180| WLog_WARN(TAG, "Failed to allocate cache entry"); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2183:80: warning[-Wanalyzer-malloc-leak]: leak of ‘xf_cached_data_new_copy(data, size)’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2011:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2012:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2012:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2015:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2018:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2181| else # 2182| { # 2183|-> if (!HashTable_Insert(clipboard->cachedRawData, (void*)(UINT_PTR)srcFormatId, # 2184| cached_raw_data)) # 2185| { Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_cliprdr.c:2194:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'cached_raw_data' # 2192| // clipboard->cachedRawData owns cached_raw_data # 2193| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 2194|-> xf_cliprdr_provide_data(clipboard, clipboard->respond, pDstData, DstSize); # 2195| { # 2196| union Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_disp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_event.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-697): freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_event.c: scope_hint: In function ‘xf_event_action_script_init’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_event.c:207:21: warning[-Waddress]: the address of ‘buffer’ will always evaluate as ‘true’ # 207 | if (!buffer || !ArrayList_Append(xfc->xevents, buffer)) # | ^ # 205| strtok_s(buffer, "\n", &context); # 206| # 207|-> if (!buffer || !ArrayList_Append(xfc->xevents, buffer)) # 208| { # 209| pclose(actionScript); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c: scope_hint: In function ‘xf_floatbar_new_button’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:283:22: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘button’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:277:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:278:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:279:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c: scope_hint: In function ‘xf_floatbar_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:324:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:325:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:326:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c: scope_hint: In function ‘xf_floatbar_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:906:22: warning[-Wanalyzer-use-after-free]: use after ‘xf_floatbar_free’ of ‘floatbar’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:324:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:325:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_floatbar.c:326:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_gfx.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_graphics.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_keyboard.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-697): freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_keyboard.c: scope_hint: In function ‘xf_keyboard_action_script_init’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_keyboard.c:123:21: warning[-Waddress]: the address of ‘buffer’ will always evaluate as ‘true’ # 123 | if (!buffer || !ArrayList_Append(xfc->keyCombinations, buffer)) # | ^ # 121| strtok_s(buffer, "\n", &context); # 122| # 123|-> if (!buffer || !ArrayList_Append(xfc->keyCombinations, buffer)) # 124| { # 125| ArrayList_Free(xfc->keyCombinations); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_monitor.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_rail.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_video.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c:996:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c:997:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c:997: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.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c: scope_hint: In function ‘xf_SendClientEvent’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c:37: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c:996:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c:997:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c:997: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.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c: scope_hint: In function ‘xf_SetWindowRects’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c:1073:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘xrects’ # 1071| for (int i = 0; i < nrects; i++) # 1072| { # 1073|-> xrects[i].x = rects[i].left; # 1074| xrects[i].y = rects[i].top; # 1075| xrects[i].width = rects[i].right - rects[i].left; Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c: scope_hint: In function ‘xf_SetWindowVisibilityRects’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/X11/xf_window.c:1098:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘xrects’ # 1096| for (int i = 0; i < nrects; i++) # 1097| { # 1098|-> xrects[i].x = rects[i].left; # 1099| xrects[i].y = rects[i].top; # 1100| xrects[i].width = rects[i].right - rects[i].left; Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:564:37: warning[unix.Malloc]: Potential leak of memory pointed to by 'clip_data_entry' # 562| // HashTable_Insert owns clip_data_entry # 563| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 564|-> file_context->current_clip_data_id = clip_data_entry->clip_data_id; # 565| # 566| return CHANNEL_RC_OK; Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:946:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'fuse_request' # 944| // file_context->request_table owns fuse_request # 945| // NOLINTBEGIN(clang-analyzer-unix.Malloc) # 946|-> DEBUG_CLIPRDR( # 947| file_context->log, # 948| "Requested file range (%zu Bytes at offset %lu) for file \"%s\" with stream id %u", Error: COMPILER_WARNING (CWE-1164): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:1653:13: warning[-Wunused-function]: ‘cliprdr_file_server_content_changed_and_update’ defined but not used # 1653 | static BOOL cliprdr_file_server_content_changed_and_update(CliprdrFileContext* file, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 1651| } # 1652| # 1653|-> static BOOL cliprdr_file_server_content_changed_and_update(CliprdrFileContext* file, # 1654| const void* data, size_t size) # 1655| { Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:1827:36: warning[unix.Malloc]: Potential leak of memory pointed to by 'fuse_file' # 1825| # 1826| // NOLINTBEGIN(clang-analyzer-unix.Malloc) HashTable_Insert owns fuse_file # 1827|-> for (UINT32 i = 0; i < n_files; ++i) # 1828| { # 1829| FILEDESCRIPTORW* file = &files[i]; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c: scope_hint: In function ‘cliprdr_file_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2064:17: warning[-Wanalyzer-use-after-free]: use after ‘cliprdr_file_context_free’ of ‘file’ # 2062| # 2063| #if defined(WITH_FUSE) # 2064|-> if (file->inode_table) # 2065| { # 2066| clear_no_cdi_entry(file); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c: scope_hint: In function ‘append_entry’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2174:12: warning[-Wanalyzer-malloc-leak]: leak of ‘tmp’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:42: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2485:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:1664:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2467:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2469:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2264:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2152:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2134:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2134:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2134:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2134:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2136:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2172| { # 2173| CliprdrLocalFile* tmp = realloc(stream->files, sizeof(CliprdrLocalFile) * (stream->count + 1)); # 2174|-> if (!tmp) # 2175| return FALSE; # 2176| stream->files = tmp; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2448:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2404:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2410:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2446| WINPR_PRAGMA_DIAG_PUSH # 2447| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2448|-> cliprdr_file_context_free(file); # 2449| WINPR_PRAGMA_DIAG_POP # 2450| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c: scope_hint: In function ‘cliprdr_file_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2448:9: warning[-Wanalyzer-mismatching-deallocation]: ‘file’ should have been deallocated with ‘free’ but was deallocated with ‘cliprdr_file_context_free’ # 2446| WINPR_PRAGMA_DIAG_PUSH # 2447| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2448|-> cliprdr_file_context_free(file); # 2449| WINPR_PRAGMA_DIAG_POP # 2450| return NULL; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c: scope_hint: In function ‘cliprdr_file_context_update_client_data’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2503:60: warning[-Wanalyzer-malloc-leak]: leak of ‘cliprdr_local_stream_new(file, lockId, data, size)’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2485:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:1664:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2467:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2469:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2264:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2501| { # 2502| stream = cliprdr_local_stream_new(file, lockId, data, size); # 2503|-> rc = HashTable_Insert(file->local_streams, &stream->lockId, stream); # 2504| if (!rc) # 2505| cliprdr_local_stream_free(stream); Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/client_cliprdr_file.c:2509:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'stream' # 2507| // HashTable_Insert owns stream # 2508| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 2509|-> HashTable_Unlock(file->local_streams); # 2510| return rc; # 2511| } Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:4422:42: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull' # 4420| { # 4421| if (!freerdp_settings_set_pointer_len(settings, FreeRDP_LoadBalanceInfo, arg->Value, # 4422|-> strlen(arg->Value))) # 4423| return COMMAND_LINE_ERROR; # 4424| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5317:12: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:1917:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:1918:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:1918:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:1917:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:1918:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:1918:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5342:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5343:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5343:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5344:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5344:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5306:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5306:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5306:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5307:9: note: in expansion of macro ‘WINPR_ASSERT’ # 5315| int nargc = *pargc + 1; # 5316| char** tmp = realloc(*pargv, nargc * sizeof(char*)); # 5317|-> if (!tmp) # 5318| return FALSE; # 5319| Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c: scope_hint: In function ‘argv_append’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5320:21: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 5320 | tmp[*pargc] = what; # | ^ # 5318| return FALSE; # 5319| # 5320|-> tmp[*pargc] = what; # 5321| *pargv = tmp; # 5322| *pargc = nargc; Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5521:19: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 5521 | entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # | ^ # 5519| PVIRTUALCHANNELENTRY entry = NULL; # 5520| PVIRTUALCHANNELENTRYEX entryEx = NULL; # 5521|-> entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # 5522| name, NULL, NULL, FREERDP_ADDIN_CHANNEL_STATIC | FREERDP_ADDIN_CHANNEL_ENTRYEX); # 5523| Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c: scope_hint: In function ‘freerdp_client_load_static_channel_addin’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/cmdline.c:5521:43: warning[-Wpedantic]: ISO C forbids conversion of function pointer to object pointer type # 5521 | entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # | ^ # 5519| PVIRTUALCHANNELENTRY entry = NULL; # 5520| PVIRTUALCHANNELENTRYEX entryEx = NULL; # 5521|-> entryEx = (PVIRTUALCHANNELENTRYEX)(void*)freerdp_load_channel_addin_entry( # 5522| name, NULL, NULL, FREERDP_ADDIN_CHANNEL_STATIC | FREERDP_ADDIN_CHANNEL_ENTRYEX); # 5523| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-843): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c: scope_hint: In function ‘freerdp_client_populate_settings_from_rdp_file’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:2303:85: warning[-Wincompatible-pointer-types]: passing argument 3 of ‘freerdp_client_add_dynamic_channel’ from incompatible pointer type freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:31: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/client/cmdline.h:96:74: note: expected ‘const char **’ but argument is of type ‘char **’ # 2301| size_t count = 0; # 2302| char** str = CommandLineParseCommaSeparatedValuesEx(LOCATION_CHANNEL_NAME, NULL, &count); # 2303|-> const BOOL rc = freerdp_client_add_dynamic_channel(settings, count, str); # 2304| free(str); # 2305| if (!rc) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c: scope_hint: In function ‘freerdp_client_rdp_file_new_ex’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:2625:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_client_rdp_file_new_ex(0)’ # 2623| rdpFile* file = (rdpFile*)calloc(1, sizeof(rdpFile)); # 2624| # 2625|-> if (!file) # 2626| return NULL; # 2627| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:2641:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_client_rdp_file_new_ex(0)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:32: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/client.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:2630:9: note: in expansion of macro ‘FillMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c: scope_hint: In function ‘freerdp_client_rdp_file_new_ex’ # 2639| goto fail; # 2640| # 2641|-> if (!freerdp_client_add_option(file, "freerdp")) # 2642| goto fail; # 2643| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:2648:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:2630:9: note: in expansion of macro ‘FillMemory’ # 2646| WINPR_PRAGMA_DIAG_PUSH # 2647| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2648|-> freerdp_client_rdp_file_free(file); # 2649| WINPR_PRAGMA_DIAG_POP # 2650| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:2648:9: warning[-Wanalyzer-mismatching-deallocation]: ‘file’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_client_rdp_file_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:2630:9: note: in expansion of macro ‘FillMemory’ # 2646| WINPR_PRAGMA_DIAG_PUSH # 2647| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2648|-> freerdp_client_rdp_file_free(file); # 2649| WINPR_PRAGMA_DIAG_POP # 2650| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c: scope_hint: In function ‘freerdp_client_rdp_file_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:2656:25: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_client_rdp_file_free’ of ‘file’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/file.c:2630:9: note: in expansion of macro ‘FillMemory’ # 2654| if (file) # 2655| { # 2656|-> if (file->lineCount) # 2657| { # 2658| for (size_t i = 0; i < file->lineCount; i++) Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/man/generate_argument_docbook.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/man/generate_argument_docbook.c:19:2: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull' # 17| free(*buffer); # 18| } # 19|-> memset(&tmp[*size], '\0', increment); # 20| *size = nsize; # 21| *buffer = tmp; Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/man/generate_argument_docbook.c: scope_hint: In function ‘resize’ freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/man/generate_argument_docbook.c:19:9: warning[-Wanalyzer-null-argument]: use of NULL ‘tmp’ where non-null expected <built-in>: note: argument 1 of ‘__builtin_memset’ must be non-null # 17| free(*buffer); # 18| } # 19|-> memset(&tmp[*size], '\0', increment); # 20| *size = nsize; # 21| *buffer = tmp; Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/client/common/smartcard_cli.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c: scope_hint: In function ‘bitmap_cache_save_persistent’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c:287:21: warning[-Wanalyzer-use-after-free]: use after ‘bitmap_cache_free’ of ‘bitmapCache’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c:354:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c:391:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c:354:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c: scope_hint: In function ‘bitmap_cache_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c:354:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c: scope_hint: In function ‘free_bitmap_update’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c: scope_hint: In function ‘copy_bitmap_update’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c: scope_hint: In function ‘copy_cache_bitmap_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c: scope_hint: In function ‘free_cache_bitmap_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c: scope_hint: In function ‘copy_cache_bitmap_v2_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c: scope_hint: In function ‘free_cache_bitmap_v2_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/bitmap.c: scope_hint: In function ‘copy_cache_bitmap_v3_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/brush.c:275:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/brush.c: scope_hint: In function ‘brush_cache_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/brush.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/brush.c: scope_hint: In function ‘brush_cache_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/brush.c:284:31: warning[-Wanalyzer-use-after-free]: use after ‘brush_cache_free’ of ‘brushCache’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/cache.c:78:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/cache.c: scope_hint: In function ‘cache_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/cache.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/cache.c: scope_hint: In function ‘cache_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/cache.c:87:17: warning[-Wanalyzer-use-after-free]: use after ‘cache_free’ of ‘cache’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/cache.c: scope_hint: In function ‘copy_cache_color_table_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/cache.c: scope_hint: In function ‘copy_surface_bits_command’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/nine_grid.c: scope_hint: In function ‘nine_grid_cache_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/update.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/nine_grid.c:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/nine_grid.c:121:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/nine_grid.c: scope_hint: In function ‘nine_grid_cache_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/nine_grid.c:159:30: warning[-Wanalyzer-use-after-free]: use after ‘nine_grid_cache_free’ of ‘nine_grid’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/nine_grid.c:121:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/offscreen.c: scope_hint: In function ‘offscreen_cache_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/offscreen.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/offscreen.c:194:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/offscreen.c: scope_hint: In function ‘offscreen_cache_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/offscreen.c:231:35: warning[-Wanalyzer-use-after-free]: use after ‘offscreen_cache_free’ of ‘offscreenCache’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/offscreen.c:194:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/palette.c: scope_hint: In function ‘copy_palette_update’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/persistent.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/cache/pointer.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/audio.c: scope_hint: In function ‘audio_formats_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/bitmap.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/bulk.c: scope_hint: In function ‘bulk_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/bulk.c:21: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/bulk.c: scope_hint: In function ‘bulk_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/bulk.c:384:9: warning[-Wanalyzer-use-after-free]: use after ‘bulk_free’ of ‘bulk’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/clear.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/clear.c: scope_hint: In function ‘clear_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/clear.c:1181:9: warning[-Wanalyzer-use-after-free]: use after ‘clear_context_free’ of ‘clear’ # 1179| return; # 1180| # 1181|-> nsc_context_free(clear->nsc); # 1182| winpr_aligned_free(clear->TempBuffer); # 1183| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/color.c: scope_hint: In function ‘FreeRDPSplitColor’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/color.c:1427:63: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘palette’ # 1425| { # 1426| tmp = palette->palette[color]; # 1427|-> FreeRDPSplitColor(tmp, palette->format, _r, _g, _b, _a, NULL); # 1428| } # 1429| else Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/dsp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/h264.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/h264.c: scope_hint: In function ‘h264_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/h264.c: scope_hint: In function ‘h264_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/interleaved.c: scope_hint: In function ‘bitmap_interleaved_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/interleaved.c:747:39: warning[-Wanalyzer-use-after-free]: use after ‘bitmap_interleaved_context_free’ of ‘interleaved’ # 745| return; # 746| # 747|-> winpr_aligned_free(interleaved->TempBuffer); # 748| Stream_Free(interleaved->bts, TRUE); # 749| winpr_aligned_free(interleaved); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/mppc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/ncrush.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/nsc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/nsc.c: scope_hint: In function ‘nsc_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/nsc.c:375:20: warning[-Wanalyzer-use-after-free]: use after ‘nsc_context_free’ of ‘context’ # 373| return; # 374| # 375|-> if (context->priv) # 376| { # 377| for (size_t i = 0; i < 5; i++) Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/nsc_encode.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-1164): freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/planar.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/planar.c: scope_hint: In function ‘freerdp_bitmap_planar_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/planar.c:1736:35: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_bitmap_planar_context_free’ of ‘context’ # 1734| return; # 1735| # 1736|-> winpr_aligned_free(context->pTempData); # 1737| winpr_aligned_free(context->planesBuffer); # 1738| winpr_aligned_free(context->deltaPlanesBuffer); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/progressive.c: scope_hint: In function ‘progressive_context_new_ex’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/progressive.c:2603:12: warning[-Wanalyzer-malloc-leak]: leak of ‘progressive_context_new_ex(Compressor, 0)’ # 2601| (PROGRESSIVE_CONTEXT*)winpr_aligned_calloc(1, sizeof(PROGRESSIVE_CONTEXT), 32); # 2602| # 2603|-> if (!progressive) # 2604| return NULL; # 2605| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/progressive.c:2630:35: warning[-Wanalyzer-malloc-leak]: leak of ‘progressive_context_new_ex(Compressor, 0)’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/progressive.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/progressive.c:2629:17: note: in expansion of macro ‘WINPR_ASSERT’ # 2628| wObject* obj = HashTable_ValueObject(progressive->SurfaceContexts); # 2629| WINPR_ASSERT(obj); # 2630|-> obj->fnObjectFree = progressive_surface_context_free; # 2631| } # 2632| return progressive; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/progressive.c: scope_hint: In function ‘progressive_context_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/progressive.c:2643:9: warning[-Wanalyzer-use-after-free]: use after ‘progressive_context_free’ of ‘progressive’ # 2641| return; # 2642| # 2643|-> Stream_Free(progressive->buffer, TRUE); # 2644| Stream_Free(progressive->rects, TRUE); # 2645| rfx_context_free(progressive->rfx_context); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c: scope_hint: In function ‘region16_copy_band_with_union’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:260:16: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:291:43: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:291:65: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:296:40: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:306:40: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:306:62: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:309:43: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:309:65: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:329:35: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:333:33: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:334:32: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c: scope_hint: In function ‘rectangle_contained_in_band’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:390:16: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:392:60: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:398:40: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:398:63: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:400:40: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c: scope_hint: In function ‘region16_union_rect’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:551:33: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:551:87: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:568:100: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:609:55: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:616:55: warning[-Wanalyzer-out-of-bounds]: buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:730:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:731:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:181:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ # 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: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c: scope_hint: In function ‘region16_intersect_rect’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:801:17: warning[-Wuse-after-free]: pointer ‘newItems_66’ may be used after ‘realloc’ # 801 | free(newItems); # | ^~~~~~~~~~~~~~ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-843): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c: scope_hint: In function ‘rfx_message_get_tiles’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1371:23: warning[-Wincompatible-pointer-types]: returning ‘RFX_TILE **’ from a function with incompatible return type ‘const RFX_TILE **’ # 1369| if (numTiles) # 1370| *numTiles = message->numTiles; # 1371|-> return message->tiles; # 1372| } # 1373| Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c: scope_hint: In function ‘rfx_encode_message’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1780:60: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘workParam’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:2138:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1629:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1630:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1630:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1631:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1631:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1632:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1632:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1633:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1633:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1634:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1634:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1559:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1670:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1671:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1576:22: note: in definition of macro ‘TILE_NO’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1605:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1580:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1583:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx.c:1605:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1778| if (context->priv->UseThreads) # 1779| { # 1780|-> workParam->context = context; # 1781| workParam->tile = tile; # 1782| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx_dwt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx_rlgr.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/rfx_sse2.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/xcrush.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/yuv.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/zgfx.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/addin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/addin.c: scope_hint: In function ‘freerdp_load_dynamic_addin’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c: scope_hint: In function ‘update_password’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:131:18: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_assistance_file_free’ of ‘file’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c: scope_hint: In function ‘append_address_to_list’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:260:12: warning[-Wanalyzer-malloc-leak]: leak of ‘copy’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:141:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:729:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:597:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:598:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:598:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c: scope_hint: In function ‘append_address_to_list’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:488:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:488:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:203:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:706:9: note: in expansion of macro ‘WLog_DBG’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:488:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c: scope_hint: In function ‘freerdp_assistance_parse_attr_uint32’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:501:9: warning[-Wanalyzer-null-argument]: use of NULL ‘copt’ where non-null expected freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:141:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:729:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:597:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:598:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:598:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:599:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:600:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c: scope_hint: In function ‘freerdp_assistance_parse_attr_uint32’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:620:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:621:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:622:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:623:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:519:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:520:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:521:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:525:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:526:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:488:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:414:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:416:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:425:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c:426:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c: scope_hint: In function ‘freerdp_assistance_populate_settings_from_assistance_file’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c: scope_hint: In function ‘freerdp_assistance_file_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/common/assistance.c: scope_hint: In function ‘freerdp_assistance_print_file’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:31: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_device_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:317:22: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_device_new(*device.Type, count, & args)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:317:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:416:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_device_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:436:23: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_device_free’ of ‘device’ # 434| return; # 435| # 436|-> switch (device->Type) # 437| { # 438| case RDPDR_DTYP_PRINT: Error: GCC_ANALYZER_WARNING (CWE-457): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:436:23: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*device.Type’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:317:9: note: in expansion of macro ‘WINPR_ASSERT’ # 434| return; # 435| # 436|-> switch (device->Type) # 437| { # 438| case RDPDR_DTYP_PRINT: Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_device_clone’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:491:19: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_device_clone(data)’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:317:9: note: in expansion of macro ‘WINPR_ASSERT’ # 489| return NULL; # 490| # 491|-> if (device->Name) # 492| { # 493| count = 1; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_settings_set_pointer_array’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:819:21: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_addin_argv_clone(data)’ # 817| if (!args) # 818| return NULL; # 819|-> cnv.c = args->argv; # 820| return freerdp_addin_argv_new(args->argc, cnv.cc); # 821| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_server_license_issuers_copy’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:938:40: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(*<unknown>)’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:931:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:932:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:917:9: note: in expansion of macro ‘WINPR_ASSERT’ # 936| return FALSE; # 937| # 938|-> for (UINT32 x = 0; x < count; x++) # 939| { # 940| char* issuer = _strdup(issuers[x]); Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:1281:6: warning[unix.Malloc]: Potential leak of memory pointed to by 'copy' # 1279| // freerdp_settings_set_pointer takes ownership of copy # 1280| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 1281|-> if (lenId < 0) # 1282| return TRUE; # 1283| return freerdp_settings_set_uint32(settings, (FreeRDP_Settings_Keys_UInt32)lenId, len); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_settings_set_pointer_len_’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:1281:12: warning[-Wanalyzer-malloc-leak]: leak of ‘copy’ # 1279| // freerdp_settings_set_pointer takes ownership of copy # 1280| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc) # 1281|-> if (lenId < 0) # 1282| return TRUE; # 1283| return freerdp_settings_set_uint32(settings, (FreeRDP_Settings_Keys_UInt32)lenId, len); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:1283:16: warning[-Wanalyzer-malloc-leak]: leak of ‘copy’ # 1281| if (lenId < 0) # 1282| return TRUE; # 1283|-> return freerdp_settings_set_uint32(settings, (FreeRDP_Settings_Keys_UInt32)lenId, len); # 1284| } # 1285| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c: scope_hint: In function ‘freerdp_settings_set_pointer_array’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings.c:1675:40: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(data)’ # 1673| free(settings->TargetNetAddresses[offset]); # 1674| settings->TargetNetAddresses[offset] = _strdup((const char*)data); # 1675|-> return settings->TargetNetAddresses[offset] != NULL; # 1676| case FreeRDP_TargetNetPorts: # 1677| maxOffset = freerdp_settings_get_uint32(settings, FreeRDP_TargetNetAddressCount); Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings_getters.c: scope_hint: In function ‘freerdp_settings_set_int16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings_getters.c:1576:11: warning[-Wunused-but-set-variable]: variable ‘cnv’ set but not used # 1576 | } cnv; # | ^~~ # 1574| INT16 c; # 1575| const INT16 cc; # 1576|-> } cnv; # 1577| WINPR_ASSERT(settings); # 1578| Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings_getters.c: scope_hint: In function ‘freerdp_settings_set_int64’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/common/settings_getters.c:2614:11: warning[-Wunused-but-set-variable]: variable ‘cnv’ set but not used # 2614 | } cnv; # | ^~~ # 2612| INT64 c; # 2613| const INT64 cc; # 2614|-> } cnv; # 2615| WINPR_ASSERT(settings); # 2616| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c: scope_hint: In function ‘bn_to_base64_url’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c:723:52: warning[-Wpointer-sign]: pointer targets in passing argument 1 of ‘crypto_base64url_encode’ differ in signedness # 723 | char* b64 = (char*)crypto_base64url_encode(bn, len); # | ^~ # | | # | char * freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/crypto/crypto.h:47:63: note: expected ‘const BYTE *’ {aka ‘const unsigned char *’} but argument is of type ‘char *’ # 47 | FREERDP_API char* crypto_base64url_encode(const BYTE* data, size_t length); # | ~~~~~~~~~~~~^~~~ # 721| return NULL; # 722| # 723|-> char* b64 = (char*)crypto_base64url_encode(bn, len); # 724| free(bn); # 725| Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c: scope_hint: In function ‘aad_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/crypto/crypto.h:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c:791:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c:792:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c: scope_hint: In function ‘aad_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c:820:17: warning[-Wanalyzer-use-after-free]: use after ‘aad_free’ of ‘aad’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c:791:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/aad.c:792:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/activation.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c:1942: error[shiftTooManyBitsSigned]: Shifting signed 32-bit value by 31 bits is undefined behaviour # 1940| */ # 1941| WINPR_ASSERT(cellInfo); # 1942|-> info = (cellInfo->numEntries | (cellInfo->persistent << 31)); # 1943| Stream_Write_UINT32(s, info); # 1944| } Error: COMPILER_WARNING (CWE-1164): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c: scope_hint: At top level freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c:2355:13: warning[-Wunused-function]: ‘rdp_write_draw_gdiplus_cache_capability_set’ defined but not used # 2355 | static BOOL rdp_write_draw_gdiplus_cache_capability_set(wStream* s, const rdpSettings* settings) # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 2353| */ # 2354| # 2355|-> static BOOL rdp_write_draw_gdiplus_cache_capability_set(wStream* s, const rdpSettings* settings) # 2356| { # 2357| WINPR_ASSERT(settings); Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c:3047:40: warning[-Wunused-but-set-variable]: variable ‘rfxPropsLength’ set but not used # 3047 | UINT32 rfxPropsLength = 0; # | ^~~~~~~~~~~~~~ # 3045| { # 3046| UINT32 rfxCapsLength = 0; # 3047|-> UINT32 rfxPropsLength = 0; # 3048| UINT32 captureFlags = 0; # 3049| guidRemoteFx = TRUE; Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c:3067:48: warning[-Wunused-but-set-variable]: variable ‘icapLen’ set but not used # 3067 | UINT16 icapLen = 0; # | ^~~~~~~ # 3065| UINT16 capsetType = 0; # 3066| UINT16 numIcaps = 0; # 3067|-> UINT16 icapLen = 0; # 3068| /* TS_RFX_CAPS */ # 3069| if (!Stream_CheckAndLogRequiredLength(TAG, sub, 21)) Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c:3105:54: warning[-Wunused-but-set-variable]: variable ‘codecFlags’ set but not used # 3105 | BYTE codecFlags = 0; # | ^~~~~~~~~~ # 3103| UINT16 version = 0; # 3104| UINT16 tileSize = 0; # 3105|-> BYTE codecFlags = 0; # 3106| BYTE colConvBits = 0; # 3107| BYTE transformBits = 0; Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c: scope_hint: In function ‘rdp_read_bitmap_codecs_capability_set’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c:3108:54: warning[-Wunused-but-set-variable]: variable ‘entropyBits’ set but not used # 3108 | BYTE entropyBits = 0; # | ^~~~~~~~~~~ # 3106| BYTE colConvBits = 0; # 3107| BYTE transformBits = 0; # 3108|-> BYTE entropyBits = 0; # 3109| /* TS_RFX_ICAP */ # 3110| if (!Stream_CheckAndLogRequiredLength(TAG, sub, 8)) Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c:3937:3: warning[core.NonNullParamChecker]: Null pointer passed to 1st parameter expecting 'nonnull' # 3935| if (!tmp && (size > 0)) # 3936| return FALSE; # 3937|-> memcpy(tmp, Stream_Buffer(sub), size); # 3938| settings->ReceivedCapabilityData[type] = tmp; # 3939| } Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c: scope_hint: In function ‘rdp_recv_demand_active’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/capabilities.c:4307:16: warning[-Wunused-but-set-variable]: variable ‘SessionId’ set but not used # 4307 | UINT32 SessionId = 0; # | ^~~~~~~~~ # 4305| return FALSE; # 4306| # 4307|-> UINT32 SessionId = 0; # 4308| Stream_Read_UINT32(s, SessionId); /* SessionId */ # 4309| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/channels.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c: scope_hint: In function ‘transport_bio_named_read’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:221:25: warning[-Wanalyzer-out-of-bounds]: stack-based buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/tcp.h:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:20: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:221:25: note: read of 8 bytes from after the end of ‘chunks’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:221:46: warning[-Wanalyzer-out-of-bounds]: stack-based buffer over-read freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:136:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c:221:46: note: read of 8 bytes from after the end of ‘chunks’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/childsession.c: scope_hint: In function ‘createChildSessionTransport’ freerdp-3.4.0-build/FreeRDP-3.4.0/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: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/client.c: scope_hint: In function ‘freerdp_channels_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/client.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/client.c: scope_hint: In function ‘freerdp_channels_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/client.c:175:21: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_channels_free’ of ‘channels’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/codecs.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/connection.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/credssp_auth.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/credssp_auth.c: scope_hint: In function ‘auth_resolve_sspi_table’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/credssp_auth.c:816:45: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 816 | InitSecurityInterface_ptr = (INIT_SECURITY_INTERFACE)GetProcAddress(hSSPI, proc_name); # | ^ # 814| WLog_INFO(TAG, "Using SSPI Module: %s", module_name); # 815| # 816|-> InitSecurityInterface_ptr = (INIT_SECURITY_INTERFACE)GetProcAddress(hSSPI, proc_name); # 817| # 818| free(sspi_module); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/fastpath.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/freerdp.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/freerdp.c: scope_hint: In function ‘freerdp_get_build_config’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/arm.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:347: error[va_end_missing]: va_list 'ap' was opened but not closed by va_end(). # 345| va_list ap; # 346| va_start(ap, Pragma); # 347|-> return list_append(context, Pragma, ap); # 348| } # 349| Error: CPPCHECK_WARNING (CWE-664): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:358: error[va_end_missing]: va_list 'ap' was opened but not closed by va_end(). # 356| va_list ap; # 357| va_start(ap, Pragma); # 358|-> return list_append(context, Pragma, ap); # 359| } # 360| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_recv’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1447:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1461:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1461:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:716:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/tls.h:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.h:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:40: included_from: Included from here. # 1445| return response; # 1446| out_error: # 1447|-> http_response_free(response); # 1448| return NULL; # 1449| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1447:9: warning[-Wanalyzer-mismatching-deallocation]: ‘http_response_new()’ should have been deallocated with ‘free’ but was deallocated with ‘http_response_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1461:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1461:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:716:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_recv’ # 1445| return response; # 1446| out_error: # 1447|-> http_response_free(response); # 1448| return NULL; # 1449| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1475:12: warning[-Wanalyzer-malloc-leak]: leak of ‘http_response_new()’ # 1473| HttpResponse* response = (HttpResponse*)calloc(1, sizeof(HttpResponse)); # 1474| # 1475|-> if (!response) # 1476| return NULL; # 1477| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1499:36: warning[-Wanalyzer-malloc-leak]: leak of ‘http_response_new()’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1461:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1461:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1497| goto fail; # 1498| # 1499|-> response->TransferEncoding = TransferEncodingIdentity; # 1500| return response; # 1501| fail: Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1504:9: warning[-Wanalyzer-mismatching-deallocation]: ‘response’ should have been deallocated with ‘free’ but was deallocated with ‘http_response_free’ # 1502| WINPR_PRAGMA_DIAG_PUSH # 1503| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1504|-> http_response_free(response); # 1505| WINPR_PRAGMA_DIAG_POP # 1506| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1514:22: warning[-Wanalyzer-use-after-free]: use after ‘http_response_free’ of ‘response’ # 1512| return; # 1513| # 1514|-> free(response->lines); # 1515| ListDictionary_Free(response->Authenticates); # 1516| ListDictionary_Free(response->SetCookie); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rdg.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rdg.c: scope_hint: In function ‘rdg_establish_data_connection’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rdg.c:1477:25: warning[-Wuse-after-free]: pointer ‘response_56’ may be used after ‘http_response_free’ # 1477 | http_response_log_error_status(rdg->log, WLOG_WARN, response); # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rdg.c:1433:9: note: call to ‘http_response_free’ here # 1433 | http_response_free(response); # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 1475| return TRUE; # 1476| default: # 1477|-> http_response_log_error_status(rdg->log, WLOG_WARN, response); # 1478| return FALSE; # 1479| } Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rdg.c: scope_hint: In function ‘rdg_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rdg.c:2270:9: warning[-Wanalyzer-mismatching-deallocation]: ‘rdg’ should have been deallocated with ‘free’ but was deallocated with ‘rdg_free’ # 2268| WINPR_PRAGMA_DIAG_PUSH # 2269| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2270|-> rdg_free(rdg); # 2271| WINPR_PRAGMA_DIAG_POP # 2272| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rdg.c: scope_hint: In function ‘rdg_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rdg.c:2280:9: warning[-Wanalyzer-use-after-free]: use after ‘rdg_free’ of ‘rdg’ # 2278| return; # 2279| # 2280|-> freerdp_tls_free(rdg->tlsOut); # 2281| freerdp_tls_free(rdg->tlsIn); # 2282| http_context_free(rdg->http); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_out_channel_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:503:13: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_out_channel_new(rpc, &*connection.Cookie)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:674:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:564:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:565:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:565:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:615:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:616:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_channel_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_out_channel_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:641:16: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_out_channel_new(rpc, &*connection.Cookie)’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:674:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:564:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:565:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_virtual_connection_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:669:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:674:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:564:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:565:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:962:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c: scope_hint: In function ‘rpc_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc.c:971:17: warning[-Wanalyzer-use-after-free]: use after ‘rpc_free’ of ‘rpc’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_bind.c: scope_hint: In function ‘rpc_send_bind_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_bind.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_bind.c:188:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_bind.c:192:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:32: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_bind.c:236:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_bind.c: scope_hint: In function ‘rpc_send_rpc_auth_3_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_bind.c:387:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_bind.c:390:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_bind.c:393:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:203:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_client.c: scope_hint: In function ‘rpc_client_call_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_client.c: scope_hint: In function ‘rpc_in_channel_send_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_client.c: scope_hint: In function ‘rpc_client_write_call’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_client.c: scope_hint: In function ‘rpc_client_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rpc_client.c: scope_hint: In function ‘rpc_client_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/rts.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/tsg.c: scope_hint: In function ‘tsg_ndr_read_tsg_caps’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/tsg.c: scope_hint: In function ‘tsg_ndr_read_packet_response’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/tsg.c: scope_hint: In function ‘tsg_ndr_read_caps_response’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/websocket.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:839:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:720:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:721:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:721:9: note: in expansion of macro ‘WINPR_ASSERT’ # 837| WINPR_PRAGMA_DIAG_PUSH # 838| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 839|-> wst_free(wst); # 840| WINPR_PRAGMA_DIAG_POP # 841| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c: scope_hint: In function ‘wst_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:839:9: warning[-Wanalyzer-mismatching-deallocation]: ‘wst’ should have been deallocated with ‘free’ but was deallocated with ‘wst_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:720:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:721:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:721:9: note: in expansion of macro ‘WINPR_ASSERT’ # 837| WINPR_PRAGMA_DIAG_PUSH # 838| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 839|-> wst_free(wst); # 840| WINPR_PRAGMA_DIAG_POP # 841| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c: scope_hint: In function ‘wst_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:849:9: warning[-Wanalyzer-use-after-free]: use after ‘wst_free’ of ‘wst’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:720:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:721:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/wst.c:721:9: note: in expansion of macro ‘WINPR_ASSERT’ # 847| return; # 848| # 849|-> freerdp_tls_free(wst->tls); # 850| http_context_free(wst->http); # 851| credssp_auth_free(wst->auth); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gcc.c: scope_hint: In function ‘gcc_read_client_core_data’ freerdp-3.4.0-build/FreeRDP-3.4.0/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-704): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gcc.c: scope_hint: In function ‘gcc_write_server_security_data’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gcc.c:1782:39: warning[-Wdiscarded-qualifiers]: passing argument 1 of ‘gcc_update_server_random’ discards ‘const’ qualifier from pointer target type freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gcc.c:1750:51: note: expected ‘rdpSettings *’ {aka ‘struct rdp_settings *’} but argument is of type ‘const rdpSettings *’ {aka ‘const struct rdp_settings *’} # 1780| if (settings->EncryptionMethods == ENCRYPTION_METHOD_NONE) # 1781| return TRUE; # 1782|-> if (!gcc_update_server_random(settings)) # 1783| return FALSE; # 1784| Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gcc.c: scope_hint: In function ‘gcc_read_server_network_data’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gcc.c:1897:16: warning[-Wunused-but-set-variable]: variable ‘MCSChannelId’ set but not used # 1897 | UINT16 MCSChannelId = 0; # | ^~~~~~~~~~~~ # 1895| { # 1896| UINT16 channelId = 0; # 1897|-> UINT16 MCSChannelId = 0; # 1898| UINT16 channelCount = 0; # 1899| UINT32 parsedChannelCount = 0; Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/heartbeat.c: scope_hint: In function ‘rdp_recv_heartbeat_packet’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/info.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: In function ‘license_answer_license_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2382:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2383:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2384:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:605:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:478:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/settings.h:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:615:9: note: in expansion of macro ‘sprintf_s’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/string.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: In function ‘license_read_binary_blob_data’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1479:9: warning[-Wanalyzer-malloc-leak]: leak of ‘*blob.data’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2614:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1495:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1500:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1500:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1500:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1501:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1501:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:716:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: In function ‘license_read_binary_blob_data’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1447:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1447:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1448:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1477| return FALSE; # 1478| } # 1479|-> memcpy(blob->data, data, blob->length); /* blobData */ # 1480| return TRUE; # 1481| } Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: In function ‘license_scope_list_resize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1704:26: warning[-Wanalyzer-malloc-leak]: leak of ‘tmp’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2829:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2830:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2846:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2847:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2847:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2848:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2848:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2849:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2744:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:415:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2807:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2808:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2808:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2809:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2809:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2810:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2810:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2807:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2808:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2808:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2809:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2809:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2810:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2810:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1447:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1447:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1448:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1446:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1447:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1447:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1448:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:205:29: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1466:17: note: in expansion of macro ‘WLog_WARN’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:152:17: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:205:29: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1466:17: note: in expansion of macro ‘WLog_WARN’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1468:24: note: in expansion of macro ‘TRUE’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1671:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ # 1702| } # 1703| # 1704|-> scopeList->count = count; # 1705| return TRUE; # 1706| } Error: COMPILER_WARNING (CWE-563): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: In function ‘license_read_platform_challenge_packet’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: At top level freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2709:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2657:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: In function ‘license_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: In function ‘license_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2723:17: warning[-Wanalyzer-use-after-free]: use after ‘license_free’ of ‘license’ freerdp-3.4.0-build/FreeRDP-3.4.0/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: COMPILER_WARNING (CWE-843): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: In function ‘license_set_string’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2813:14: warning[-Wincompatible-pointer-types]: assignment to ‘WCHAR *’ {aka ‘short unsigned int *’} from incompatible pointer type ‘BYTE *’ {aka ‘unsigned char *’} # 2811| # 2812| size_t len = 0; # 2813|-> *dst = (BYTE*)ConvertUtf8ToWCharAlloc(value, &len); # 2814| if (!*dst || (len > UINT32_MAX / sizeof(WCHAR))) # 2815| { Error: COMPILER_WARNING (CWE-843): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: In function ‘license_server_configure’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2855:63: warning[-Wincompatible-pointer-types]: passing argument 3 of ‘license_set_string’ from incompatible pointer type freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2805:77: note: expected ‘WCHAR **’ {aka ‘short unsigned int **’} but argument is of type ‘BYTE **’ {aka ‘unsigned char **’} # 2853| # 2854| license->ProductInfo->dwVersion = ProductVersion; # 2855|-> if (!license_set_string("pbCompanyName", CompanyName, &license->ProductInfo->pbCompanyName, # 2856| &license->ProductInfo->cbCompanyName)) # 2857| return FALSE; Error: COMPILER_WARNING (CWE-843): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2859:61: warning[-Wincompatible-pointer-types]: passing argument 3 of ‘license_set_string’ from incompatible pointer type freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2805:77: note: expected ‘WCHAR **’ {aka ‘short unsigned int **’} but argument is of type ‘BYTE **’ {aka ‘unsigned char **’} # 2857| return FALSE; # 2858| # 2859|-> if (!license_set_string("pbProductId", ProductName, &license->ProductInfo->pbProductId, # 2860| &license->ProductInfo->cbProductId)) # 2861| return FALSE; Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/listener.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_BitmapUpdate’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_Palette’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_SurfaceBits’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_CacheBitmap’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_CacheBitmapV2’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_CacheBitmapV3’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_CacheColorTable’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_CacheBrush’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerPosition’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerSystem’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerColor’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerLarge’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerNew’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_PointerCached’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/multitransport.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nego.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c: scope_hint: In function ‘nla_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1993:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1954:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1955:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1955:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1958:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1991| WINPR_PRAGMA_DIAG_PUSH # 1992| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1993|-> nla_free(nla); # 1994| WINPR_PRAGMA_DIAG_POP # 1995| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1993:9: warning[-Wanalyzer-mismatching-deallocation]: ‘nla’ should have been deallocated with ‘free’ but was deallocated with ‘nla_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1954:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1955:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1955:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1958:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1991| WINPR_PRAGMA_DIAG_PUSH # 1992| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 1993|-> nla_free(nla); # 1994| WINPR_PRAGMA_DIAG_POP # 1995| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c: scope_hint: In function ‘nla_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:2008:9: warning[-Wanalyzer-use-after-free]: use after ‘nla_free’ of ‘nla’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1954:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1955:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1955:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.c:1958:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2006| return; # 2007| # 2008|-> smartcardCertInfo_Free(nla->smartcardCert); # 2009| nla_buffer_free(nla); # 2010| sspi_SecBufferFree(&nla->tsCredentials); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_bitmap_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2238:9: warning[-Wanalyzer-mismatching-deallocation]: ‘cache_bitmap’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_bitmap_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_bitmap_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4281:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_bitmap_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:193:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:194:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3927:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3927:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3928:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3928:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3953:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_bitmap_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2189:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ # 2236| WINPR_PRAGMA_DIAG_PUSH # 2237| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2238|-> free_cache_bitmap_order(update->context, cache_bitmap); # 2239| WINPR_PRAGMA_DIAG_POP # 2240| return NULL; Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_color_table_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2607:9: warning[-Wanalyzer-mismatching-deallocation]: ‘cache_color_table’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_color_table_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_color_table_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4281:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_color_table_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:193:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:194:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3927:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3927:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3928:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3928:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3953:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2583:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ # 2605| WINPR_PRAGMA_DIAG_PUSH # 2606| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2607|-> free_cache_color_table_order(update->context, cache_color_table); # 2608| WINPR_PRAGMA_DIAG_POP # 2609| return NULL; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_brush_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2974:16: warning[-Wanalyzer-malloc-leak]: leak of ‘cache_brush’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_brush_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4281:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_brush_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:193:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:194:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3927:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3927:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3928:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3928:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3953:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_read_cache_brush_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2905:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2908:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2908:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2908:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2909:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2909:9: note: in expansion of macro ‘Stream_Read_UINT8’ # 2972| } # 2973| # 2974|-> return cache_brush; # 2975| fail: # 2976| free_cache_brush_order(update->context, cache_brush); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/peer.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/proxy.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.c: scope_hint: In function ‘rdp_read_header’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.c: scope_hint: In function ‘rdp_recv_server_set_keyboard_indicators_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.c: scope_hint: In function ‘rdp_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.c:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.c:2238:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.c: scope_hint: In function ‘rdp_free_rc4_decrypt_keys’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.c:2632:9: warning[-Wanalyzer-use-after-free]: use after ‘rdp_free’ of ‘rdp’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.c:2238:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.c:2245:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.c:2372:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdstls.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/redirection.c: scope_hint: In function ‘rdp_recv_server_redirection_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/security.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c: scope_hint: In function ‘wts_read_drdynvc_pdu’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:331:40: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘dvc’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:275:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:276:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:343:40: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘dvc’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:275:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:276:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c: scope_hint: In function ‘FreeRDP_WTSVirtualChannelOpenEx’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:1386:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:1240:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:1241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c:1919:9: warning[-Wanalyzer-use-after-free]: use after ‘server_channel_common_free’ of ‘channel’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c: scope_hint: In function ‘server_channel_common_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/server.c: scope_hint: In function ‘server_channel_common_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/settings.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/smartcardlogon.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/streamdump.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/surface.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/timezone.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/tpdu.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/tpkt.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/transport.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/transport.c: scope_hint: In function ‘transport_default_connect_tls’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/include/freerdp/settings_types_private.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/transport.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/transport.c: scope_hint: In function ‘transport_disconnect’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/transport.c:1505:49: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*transport.io.TransportDisconnect’ freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/api.h:103:11: note: in definition of macro ‘IFCALLRESULT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/transport.c:1554:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/api.h:103:11: note: in definition of macro ‘IFCALLRESULT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/transport.c: scope_hint: In function ‘transport_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.c: scope_hint: In function ‘update_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.c:3273:54: warning[-Wanalyzer-use-after-free]: use after ‘update_free’ of ‘update’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.c:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.c:3201:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.c:3202:9: note: in expansion of macro ‘WINPR_ASSERT’ # 3271| { # 3272| rdp_update_internal* up = update_cast(update); # 3273|-> rdp_altsec_update_internal* altsec = altsec_update_cast(update->altsec); # 3274| OFFSCREEN_DELETE_LIST* deleteList = &(altsec->create_offscreen_bitmap.deleteList); # 3275| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/utils.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/window.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/base64.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c: scope_hint: In function ‘ber_read_unicode_octet_string’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:460:15: warning[-Wanalyzer-allocation-size]: allocated buffer size is not a multiple of the pointee's size freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:127:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/crypto/ber.h:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:129:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:132:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:132:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:132:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:36:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:37:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:37:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:39:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:42:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:42:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/ber.c:42:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/cert_common.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c: scope_hint: In function ‘freerdp_certificate_clone’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:31: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1123:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1124:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c: scope_hint: In function ‘freerdp_certificate_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c: scope_hint: In function ‘certificate_free_int’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1172:17: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_certificate_free’ of ‘cert’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c: scope_hint: In function ‘freerdp_certificate_new_from_der’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c: scope_hint: In function ‘freerdp_certificate_new_from_x509’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c: scope_hint: In function ‘bio_read_pem’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1424:16: warning[-Wanalyzer-malloc-leak]: leak of ‘tmp’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1388:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1389:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1389:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c: scope_hint: In function ‘freerdp_certificate_new_from_x509’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1684:31: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_x509(x509_utils_from_pem(file, strlen(file), isFile), 0)’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1269:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1199:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate.c:1683:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1682| { # 1683| WINPR_ASSERT(cert); # 1684|-> return is_rsa_key(cert->x509); # 1685| } # 1686| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate_data.c: scope_hint: In function ‘freerdp_certificate_data_new_nocopy’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate_data.c:122:9: warning[-Wanalyzer-mismatching-deallocation]: ‘certdata’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_data_free’ # 120| return certdata; # 121| fail: # 122|-> freerdp_certificate_data_free(certdata); # 123| return NULL; # 124| } Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate_data.c: scope_hint: In function ‘freerdp_certificate_data_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate_data.c:167:18: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_certificate_data_free’ of ‘data’ # 165| return; # 166| # 167|-> free(data->hostname); # 168| freerdp_certificate_free(data->cert); # 169| free(data->cached_subject); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate_store.c: scope_hint: In function ‘freerdp_certificate_store_load_data’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate_store.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate_store.c:135:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate_store.c: scope_hint: In function ‘freerdp_certificate_store_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/certificate_store.c: scope_hint: In function ‘freerdp_certificate_store_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/crypto.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/er.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/privatekey.c: scope_hint: In function ‘freerdp_key_new_from_pem’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/privatekey.c: scope_hint: In function ‘freerdp_key_new_from_file’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/privatekey.c: scope_hint: In function ‘freerdp_key_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/privatekey.c: scope_hint: In function ‘freerdp_key_clone’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/privatekey.c: scope_hint: In function ‘freerdp_key_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/tls.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/crypto/tls.c: scope_hint: In function ‘bio_rdp_tls_callback_ctrl’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘scard_status_transition’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:124:42: warning[-Wdiscarded-qualifiers]: assignment discards ‘const’ qualifier from pointer target type # 124 | reader->szReader = g_ReaderNameA; # | ^ # 122| { # 123| SCARD_READERSTATEA* reader = &context->readerStateA[0]; # 124|-> reader->szReader = g_ReaderNameA; # 125| reader->dwEventState = SCARD_STATE_PRESENT; # 126| reader->cbAtr = sizeof(ATR); Error: GCC_ANALYZER_WARNING (CWE-688): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘scard_copy_strings’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:153:17: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘tmp’ where non-null expected freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:147:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:148:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:148:9: note: in expansion of macro ‘WINPR_ASSERT’ <built-in>: note: argument 1 of ‘__builtin_memcpy’ must be non-null # 151| { # 152| void* tmp = malloc(srcSize); # 153|-> memcpy(tmp, src, srcSize); # 154| ArrayList_Append(ctx->strings, tmp); # 155| *((void**)dst) = tmp; Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:428:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'ctx' # 426| scard_context_free(ctx); # 427| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of ctx # 428|-> return status; # 429| } # 430| Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:484:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 482| LPDWORD pcchGroups) # 483| { # 484|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 485| # 486| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:506:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 504| LPDWORD pcchGroups) # 505| { # 506|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 507| # 508| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:608:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 606| DWORD cguidInterfaceCount, CHAR* mszCards, LPDWORD pcchCards) # 607| { # 608|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 609| # 610| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardListCardsA { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:633:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 631| DWORD cguidInterfaceCount, WCHAR* mszCards, LPDWORD pcchCards) # 632| { # 633|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 634| # 635| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardListCardsW { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:658:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 656| LPGUID pguidInterfaces, LPDWORD pcguidInterfaces) # 657| { # 658|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 659| # 660| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardListInterfacesA { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:681:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 679| LPGUID pguidInterfaces, LPDWORD pcguidInterfaces) # 680| { # 681|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 682| # 683| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardListInterfacesW { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:703:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 701| LPCSTR szCard, LPGUID pguidProviderId) # 702| { # 703|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 704| # 705| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardGetProviderIdA { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:724:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 722| LPCWSTR szCard, LPGUID pguidProviderId) # 723| { # 724|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 725| # 726| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardGetProviderIdW { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:747:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 745| LPDWORD pcchProvider) # 746| { # 747|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 748| # 749| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:772:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 770| LPDWORD pcchProvider) # 771| { # 772|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 773| # 774| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:795:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 793| SCARDCONTEXT hContext, LPCSTR szGroupName) # 794| { # 795|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 796| # 797| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:815:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 813| SCARDCONTEXT hContext, LPCWSTR szGroupName) # 814| { # 815|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 816| # 817| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:835:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 833| SCARDCONTEXT hContext, LPCSTR szGroupName) # 834| { # 835|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 836| # 837| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:855:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 853| SCARDCONTEXT hContext, LPCWSTR szGroupName) # 854| { # 855|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 856| # 857| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:879:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 877| # 878| if (status == SCARD_S_SUCCESS) # 879|-> status = scard_reader_name_valid_a(smartcard, hContext, szReaderName); # 880| # 881| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardIntroduceReaderA { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:903:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 901| # 902| if (status == SCARD_S_SUCCESS) # 903|-> status = scard_reader_name_valid_w(smartcard, hContext, szReaderName); # 904| # 905| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardIntroduceReaderW { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:926:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 924| # 925| if (status == SCARD_S_SUCCESS) # 926|-> status = scard_reader_name_valid_a(smartcard, hContext, szReaderName); # 927| # 928| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardForgetReaderA { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:947:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 945| # 946| if (status == SCARD_S_SUCCESS) # 947|-> status = scard_reader_name_valid_w(smartcard, hContext, szReaderName); # 948| # 949| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardForgetReaderW { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:969:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 967| # 968| if (status == SCARD_S_SUCCESS) # 969|-> status = scard_reader_name_valid_a(smartcard, hContext, szReaderName); # 970| # 971| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:993:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 991| # 992| if (status == SCARD_S_SUCCESS) # 993|-> status = scard_reader_name_valid_w(smartcard, hContext, szReaderName); # 994| # 995| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1017:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 1015| # 1016| if (status == SCARD_S_SUCCESS) # 1017|-> status = scard_reader_name_valid_a(smartcard, hContext, szReaderName); # 1018| # 1019| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1041:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 1039| # 1040| if (status == SCARD_S_SUCCESS) # 1041|-> status = scard_reader_name_valid_w(smartcard, hContext, szReaderName); # 1042| # 1043| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1064:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1062| LPCBYTE pbAtrMask, DWORD cbAtrLen) # 1063| { # 1064|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1065| # 1066| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1093:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1091| LPCBYTE pbAtrMask, DWORD cbAtrLen) # 1092| { # 1093|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1094| # 1095| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1120:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1118| DWORD dwProviderId, LPCSTR szProvider) # 1119| { # 1120|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1121| # 1122| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1143:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1141| DWORD dwProviderId, LPCWSTR szProvider) # 1142| { # 1143|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1144| # 1145| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1165:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1163| SCARDCONTEXT hContext, LPCSTR szCardName) # 1164| { # 1165|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1166| # 1167| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardForgetCardTypeA { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1185:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1183| SCARDCONTEXT hContext, LPCWSTR szCardName) # 1184| { # 1185|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1186| # 1187| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardForgetCardTypeW { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1257:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1255| DWORD cReaders) # 1256| { # 1257|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1258| # 1259| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardLocateCardsA { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1280:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1278| DWORD cReaders) # 1279| { # 1280|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1281| # 1282| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardLocateCardsW { hContext: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1304:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1302| DWORD cReaders) # 1303| { # 1304|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1305| # 1306| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:1329:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 1327| DWORD cReaders) # 1328| { # 1329|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 1330| # 1331| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2029:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 2027| DWORD dwAttrId, LPBYTE pbAttr, LPDWORD pcbAttrLen) # 2028| { # 2029|-> LONG status = scard_handle_valid(smartcard, hCard); # 2030| # 2031| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardGetAttrib { hCard: %p", Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2051:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 2049| DWORD dwAttrId, LPCBYTE pbAttr, DWORD cbAttrLen) # 2050| { # 2051|-> LONG status = scard_handle_valid(smartcard, hCard); # 2052| # 2053| WLog_Print(smartcard->log, smartcard->log_default_level, "SCardSetAttrib { hCard: %p", Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘insert_data’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2284:12: warning[-Wanalyzer-malloc-leak]: leak of ‘item’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2260:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2261:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2261:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2282| } # 2283| # 2284|-> if (item->freshness > FreshnessCounter) # 2285| return SCARD_W_CACHE_ITEM_STALE; # 2286| item->freshness = FreshnessCounter; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2288:9: warning[-Wanalyzer-malloc-leak]: leak of ‘item’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2260:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2261:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2261:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2286| item->freshness = FreshnessCounter; # 2287| item->size = DataLen; # 2288|-> memcpy(item->data, Data, DataLen); # 2289| # 2290| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of item Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2291:2: warning[unix.Malloc]: Potential leak of memory pointed to by 'item' # 2289| # 2290| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of item # 2291|-> return SCARD_S_SUCCESS; # 2292| } # 2293| Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2476:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 2474| # 2475| if (status == SCARD_S_SUCCESS) # 2476|-> status = scard_reader_name_valid_a(smartcard, hContext, szReaderName); # 2477| # 2478| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2502:3: warning[deadcode.DeadStores]: Value stored to 'status' is never read # 2500| # 2501| if (status == SCARD_S_SUCCESS) # 2502|-> status = scard_reader_name_valid_w(smartcard, hContext, szReaderName); # 2503| # 2504| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2525:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 2523| LPSTR mszReaders, LPDWORD pcchReaders) # 2524| { # 2525|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 2526| # 2527| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2549:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 2547| LPWSTR mszReaders, LPDWORD pcchReaders) # 2548| { # 2549|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 2550| # 2551| WLog_Print(smartcard->log, smartcard->log_default_level, Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2571:7: warning[deadcode.DeadStores]: Value stored to 'status' during its initialization is never read # 2569| DWORD dwEvent) # 2570| { # 2571|-> LONG status = Emulate_SCardIsValidContext(smartcard, hContext); # 2572| # 2573| WINPR_UNUSED(dwEvent); Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘Emulate_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2668:9: warning[-Wanalyzer-mismatching-deallocation]: ‘smartcard’ should have been deallocated with ‘free’ but was deallocated with ‘Emulate_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2615:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2666| WINPR_PRAGMA_DIAG_PUSH # 2667| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 2668|-> Emulate_Free(smartcard); # 2669| WINPR_PRAGMA_DIAG_POP # 2670| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘Emulate_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2678:9: warning[-Wanalyzer-use-after-free]: use after ‘Emulate_Free’ of ‘context’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:2615:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2676| return; # 2677| # 2678|-> HashTable_Free(context->handles); # 2679| HashTable_Free(context->contexts); # 2680| free(context); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_virtual_gids.c: scope_hint: In function ‘vgids_ef_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_virtual_gids.c: scope_hint: In function ‘vgids_init’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:284:14: warning[-Wanalyzer-malloc-leak]: leak of ‘vgids_ef_new(ctx, 40976)’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_virtual_gids.c: scope_hint: In function ‘vgids_init’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:564:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:565:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:566:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:629:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:629:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:630:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:630:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:631:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_virtual_gids.c: scope_hint: In function ‘vgids_init’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_virtual_gids.c: scope_hint: In function ‘vgids_init’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:206:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:302:17: note: in expansion of macro ‘WLog_ERR’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_virtual_gids.c: scope_hint: In function ‘vgids_init’ # 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.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:334:16: warning[-Wanalyzer-malloc-leak]: leak of ‘vgids_ef_new(ctx, 40978)’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/bitmap.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/clipping.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/dc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gdi.c: scope_hint: In function ‘gdi_init_ex’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gdi.c:1376:12: warning[-Wanalyzer-malloc-leak]: leak of ‘*context.cache’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gdi.c:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gdi.c:1339:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gdi.c:1342:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gdi.c:1343:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gdi.c:1204:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gdi.c:1205:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gfx.c: scope_hint: In function ‘gdi_ImportCacheEntry’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gfx.c: scope_hint: In function ‘gdi_SurfaceToCache’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gfx.c: scope_hint: In function ‘gdi_CacheImportReply’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gfx.c:1576:37: warning[-Wanalyzer-malloc-leak]: leak of ‘gdi_GfxCacheEntryNew((long unsigned int)cacheSlot, 0, 0, 537135240)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gfx.c:1564:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gfx.c: scope_hint: In function ‘gdi_CacheImportReply’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/gfx.c: scope_hint: In function ‘gdi_ImportCacheEntry’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/graphics.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/line.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/region.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/shape.c: scope_hint: In function ‘gdi_FillRect’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/gdi/shape.c:169:33: warning[-Wanalyzer-overlapping-buffers]: overlapping buffers passed as arguments to ‘memcpy’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/locale/locale.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/primitives/prim_YUV.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/primitives/primitives.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/cliprdr_utils.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/encoded_types.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/passphrase.c: scope_hint: In function ‘freerdp_passphrase_read’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/pcap.c: scope_hint: In function ‘pcap_read_header’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/pcap.c:58:16: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/pcap.c:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/pcap.c:200:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/pcap.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/pcap.c:228:17: note: in expansion of macro ‘_fseeki64’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/pcap.c:55:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/pcap.c:56:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/rdpdr_utils.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c: scope_hint: In function ‘smartcard_GetStatusChangeA_Call’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:915:25: warning[-Wanalyzer-null-argument]: use of NULL ‘rgReaderStates’ where non-null expected freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:896:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:897:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:897:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:898:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:898:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c: scope_hint: In function ‘smartcard_GetStatusChangeW_Call’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:977:25: warning[-Wanalyzer-null-argument]: use of NULL ‘rgReaderStates’ where non-null expected freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:958:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:959:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:959:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:960:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:960:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:1900:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c: scope_hint: In function ‘smartcard_call_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c: scope_hint: In function ‘smartcard_call_context_signal_stop’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:2012:17: warning[-Wanalyzer-use-after-free]: use after ‘smartcard_call_context_free’ of ‘ctx’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:1831:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_operations.c: scope_hint: In function ‘smartcard_irp_device_control_decode’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_pack.c:391: warning[uninitvar]: Uninitialized variable: buffer # 389| } # 390| # 391|-> return buffer; # 392| } # 393| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/rdtk/librdtk/rdtk_button.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/rdtk/librdtk/rdtk_font.c: scope_hint: In function ‘rdtk_font_parse_descriptor_buffer’ freerdp-3.4.0-build/FreeRDP-3.4.0/rdtk/librdtk/rdtk_font.c:174:37: warning[-Wanalyzer-malloc-leak]: leak of ‘rdtk_font_load_descriptor_file(filename, & size)’ freerdp-3.4.0-build/FreeRDP-3.4.0/rdtk/librdtk/rdtk_font.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/rdtk/librdtk/rdtk_font.c:584:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/rdtk/librdtk/rdtk_font.c:151:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/rdtk/librdtk/rdtk_font.c:152:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/rdtk/librdtk/rdtk_font.c:152:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/rdtk/librdtk/rdtk_font.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/rdtk/librdtk/rdtk_font.c:164:9: note: in expansion of macro ‘_fseeki64’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/dsp.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/dsp.c: scope_hint: In function ‘freerdp_dsp_supports_format’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/redhat-linux-build/winpr/include/winpr/wtypes.h:209:15: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipe_fd[0]’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pipe/pipe.c:487:24: note: in expansion of macro ‘FALSE’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/string.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:31: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pipe/pipe.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pipe/pipe.c: scope_hint: In function ‘CreatePipe’ freerdp-3.4.0-build/FreeRDP-3.4.0/redhat-linux-build/winpr/include/winpr/wtypes.h:209:15: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘pipe_fd[1]’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pipe/pipe.c:487:24: note: in expansion of macro ‘FALSE’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/string.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:31: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevman.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevman.c: scope_hint: In function ‘urbdrc_udevman_register_devices’ freerdp-3.4.0-build/FreeRDP-3.4.0/redhat-linux-build/winpr/include/winpr/wtypes.h:209:15: warning[-Wanalyzer-malloc-leak]: leak of ‘idpair’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/libusb/libusb_udevman.c:685:32: note: in expansion of macro ‘FALSE’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_rdpdr.c:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_rdpdr.c: scope_hint: In function ‘pf_channel_rdpdr_server_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/redhat-linux-build/winpr/include/winpr/wtypes.h:209:15: warning[-Wanalyzer-malloc-leak]: leak of ‘rdpdr’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_rdpdr.c:1794:24: note: in expansion of macro ‘FALSE’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_rdpdr.c:1789:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_rdpdr.c:1790:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_rdpdr.c:1796:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_rdpdr.c:1794:24: note: in expansion of macro ‘FALSE’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c: scope_hint: In function ‘DynvcTrackerPeekFn’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:19: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:245:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:249:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:256:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/dvc.h:56: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/channels/drdynvc.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:21: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:701:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c: scope_hint: In function ‘DynvcTrackerPeekFn’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:269:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:269:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:269:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:206:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:212:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:212:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:212:25: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:722:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c: scope_hint: In function ‘DynvcTrackerPeekFn’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/channels/pf_channel_drdynvc.c:138:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/pf_channel.c: scope_hint: In function ‘channelTracker_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/pf_channel.c:18: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_channel.c:72:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_channel.c:72:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/pf_channel.c: scope_hint: In function ‘channelTracker_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_channel.c:163:9: warning[-Wanalyzer-use-after-free]: use after ‘channelTracker_free’ of ‘t’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_channel.c:72:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_channel.c:72:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c: scope_hint: At top level freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c: scope_hint: In function ‘freerdp_client_load_static_channel_addin’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c: scope_hint: In function ‘pf_client_verify_X509_certificate’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c:951:25: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(hostname)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c:931:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c:932:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c:932:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c:933:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c:933:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c:934:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c:934:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_client.c:937:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:629:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:629:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:630:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:630:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:631:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/pf_config.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/include/freerdp/server/proxy/proxy_server.h:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_context.c:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_context.c: scope_hint: In function ‘StaticChannelContext_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_context.c:90:19: warning[-Wanalyzer-use-after-free]: use after ‘StaticChannelContext_free’ of ‘ctx’ freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/api.h:79:21: note: in definition of macro ‘IFCALL’ freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/api.h:79:21: note: in definition of macro ‘IFCALL’ freerdp-3.4.0-build/FreeRDP-3.4.0/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-762): freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_context.c: scope_hint: In function ‘proxy_data_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/print.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_context.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/pf_context.c: scope_hint: In function ‘proxy_data_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_context.c:362:18: warning[-Wanalyzer-use-after-free]: use after ‘proxy_data_free’ of ‘pdata’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/pf_input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_modules.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_modules.c: scope_hint: In function ‘pf_modules_load_module’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:471:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_key_new_from_pem(*server_25->config.PrivateKeyPEM)’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:448:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:455:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:461:9: note: in expansion of macro ‘WINPR_ASSERT’ # 469| return FALSE; # 470| # 471|-> if (!freerdp_settings_set_pointer_len(settings, FreeRDP_RdpServerRsaKey, key, 1)) # 472| return FALSE; # 473| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:478:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_pem(*server_25->config.CertificatePEM)’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:448:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:455:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:461:9: note: in expansion of macro ‘WINPR_ASSERT’ # 476| return FALSE; # 477| # 478|-> if (!freerdp_settings_set_pointer_len(settings, FreeRDP_RdpServerCertificate, cert, 1)) # 479| return FALSE; # 480| Error: GCC_ANALYZER_WARNING (CWE-762): freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c: scope_hint: In function ‘pf_server_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:961:9: warning[-Wanalyzer-mismatching-deallocation]: ‘server’ should have been deallocated with ‘free’ but was deallocated with ‘pf_server_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:912:9: note: in expansion of macro ‘WINPR_ASSERT’ # 959| WINPR_PRAGMA_DIAG_PUSH # 960| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 961|-> pf_server_free(server); # 962| WINPR_PRAGMA_DIAG_POP # 963| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c: scope_hint: In function ‘pf_server_stop.part.0’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:1028:9: warning[-Wanalyzer-use-after-free]: use after ‘pf_server_free’ of ‘server’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:912:9: note: in expansion of macro ‘WINPR_ASSERT’ # 1026| # 1027| /* signal main thread to stop and wait for the thread to exit */ # 1028|-> SetEvent(server->stopEvent); # 1029| } # 1030| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_update.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_audin.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_capture.c: scope_hint: In function ‘shadow_capture_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/server/shadow.h:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_surface.h:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_capture.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-843): freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c: scope_hint: In function ‘shadow_client_context_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:255:42: warning[-Wincompatible-pointer-types]: passing argument 1 of ‘WTSOpenServerA’ from incompatible pointer type freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/dvc.h:56: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/channels/drdynvc.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:33: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wtsapi.h:1006:54: note: expected ‘LPSTR’ {aka ‘char *’} but argument is of type ‘rdpContext *’ {aka ‘struct rdp_context *’} # 253| # 254| region16_init(&(client->invalidRegion)); # 255|-> client->vcm = WTSOpenServerA(peer->context); # 256| # 257| if (!client->vcm || client->vcm == INVALID_HANDLE_VALUE) Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c: scope_hint: In function ‘shadow_client_send_surface_gfx’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1211:33: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, 1024)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1791:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1792:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1859:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1859:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1861:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1861:25: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1209:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1209:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1211:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_client.c:1212:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_encomsp.c: scope_hint: In function ‘shadow_client_encomsp_init’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_lobby.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_remdesk.c: scope_hint: In function ‘shadow_client_remdesk_init’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_screen.c: scope_hint: In function ‘shadow_screen_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_screen.c:21: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_screen.c:30:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_screen.c: scope_hint: In function ‘shadow_screen_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_screen.c:105:19: warning[-Wanalyzer-use-after-free]: use after ‘shadow_screen_free’ of ‘screen’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_screen.c:30:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_server.c: scope_hint: In function ‘shadow_server_init_certificate’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_server.c:889:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_key_new_from_file(*server.PrivateKeyFile)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/server/shadow.h:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow.h:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_server.c:41: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_server.c:850:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_server.c:896:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_file(*server.CertificateFile)’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_server.c:850:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_server.c:899:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_file(*server.CertificateFile)’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow_server.c:850:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/uwac/libuwac/uwac-clipboard.c: scope_hint: In function ‘UwacClipboardDataGet’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/uwac/libuwac/uwac-display.c: scope_hint: At top level freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/uwac/libuwac/uwac-display.c: scope_hint: In function ‘UwacOpenDisplay’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/uwac/libuwac/uwac-input.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/uwac/libuwac/uwac-display.c:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/uwac/libuwac/uwac-display.c: scope_hint: In function ‘registry_handle_global’ freerdp-3.4.0-build/FreeRDP-3.4.0/uwac/libuwac/uwac-utils.h:29:9: warning[-Wpedantic]: ISO C forbids braced-groups within expressions # 29 | ({ \ # | ^ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/uwac/libuwac/uwac-display.c: scope_hint: In function ‘display_dispatch_events’ freerdp-3.4.0-build/FreeRDP-3.4.0/uwac/libuwac/uwac-utils.h:36:9: warning[-Wpedantic]: ISO C forbids braced-groups within expressions # 36 | ({ \ # | ^ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c: scope_hint: In function ‘license_answer_license_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2413:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2382:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2383:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2384:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:605:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:478:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:615:9: note: in expansion of macro ‘sprintf_s’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:628:9: note: in expansion of macro ‘_fseeki64’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2397:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1255:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1213:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1213:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nego.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nego.c: scope_hint: In function ‘nego_send_negotiation_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, 512)’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nego.c:1073:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_DVCPluginEntry’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘allocatePlugin()’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:1829:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/api.h:32:9: note: in definition of macro ‘FREERDP_ENTRY_POINT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:1800:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpsnd/client/rdpsnd_main.c:1801:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘license_new_binary_blob(1)’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2413:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2382:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2383:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2384:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:605:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:606:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:607:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:478:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:615:9: note: in expansion of macro ‘sprintf_s’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:628:9: note: in expansion of macro ‘_fseeki64’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:2397:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1255:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1213:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/license.c:1213:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:35: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c: scope_hint: In function ‘pf_server_initialize_peer_connection’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘proxy_data_new()’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:461:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:448:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:455:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/proxy/pf_server.c:461: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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/server/shadow.h:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow.c:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow.c: scope_hint: In function ‘main’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘shadow_server_new()’ freerdp-3.4.0-build/FreeRDP-3.4.0/server/shadow/shadow.c:114:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_compute.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_compute.c: scope_hint: In function ‘ntlm_compute_message_integrity_check’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:20: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_HMAC_New()’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_compute.c:847:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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: COMPILER_WARNING (CWE-252): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/debug.c:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/debug.c: scope_hint: In function ‘winpr_backtrace_symbols_fd’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:32: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/freerdp.h:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/nla.h:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/rdp.h:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_WindowIcon’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:119:49: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c:1319:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c:1308:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c:1319:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c: scope_hint: In function ‘update_message_MonitoredDesktop’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c:1539:17: note: in expansion of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c:1524:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/message.c:1533:9: note: in expansion of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/stream.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/stream.c: scope_hint: In function ‘Stream_EnsureCapacity’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:119:49: warning[-Wanalyzer-possible-null-argument]: use of possibly-NULL ‘new_buf’ where non-null expected freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/stream.c:67:25: note: in expansion of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/stream.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/stream.c:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:748:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/stream.c: scope_hint: In function ‘Stream_EnsureCapacity’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/stream.c:46:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/memory.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:23: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c: scope_hint: In function ‘region16_simplify_bands’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:120:49: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘endBand’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:459:33: note: in expansion of macro ‘MoveMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:504:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:505:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:88:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c:89:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/codec/region.c: scope_hint: In function ‘region16_simplify_bands’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/security.h:33: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/handle.h:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/synch.h:33: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:34: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c: scope_hint: In function ‘smartcard_EstablishContext_Call’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/nt.h:30:29: warning[-Wanalyzer-malloc-leak]: leak of ‘pContext’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/nt.h:63:26: note: in expansion of macro ‘STATUS_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/utils/smartcard_call.c:105:32: note: in expansion of macro ‘STATUS_NO_MEMORY’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/nt.h:63:26: note: in expansion of macro ‘STATUS_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/urbdrc/common/urbdrc_helpers.h:32: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘urb_control_transfer’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:129:18: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, (long unsigned int)out_size)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1584:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1587:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1587:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1587:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1588:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1588:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1589:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1589:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1590:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:1590:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:656:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:660:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:660:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:661:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:661:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:679:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:682:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:682:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:682:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:683:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:683:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:684:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:684:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:685:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:685:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:686:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:686:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:687:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:687:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/urbdrc/client/data_transfer.c:707:22: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ # 127| WINPR_ASSERT(s); # 128| WINPR_ASSERT(Stream_GetRemainingCapacity(s) >= _offset); # 129|-> s->pointer += (_offset); # 130| } # 131| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/settings_types_private.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/settings.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘update_recv_secondary_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:150:63: warning[-Wanalyzer-malloc-leak]: leak of ‘update_read_cache_brush_order(update, s, (int)stream_read_u16_le(s, 1))’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_recv_secondary_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4281:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4284:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_recv_secondary_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:193:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:194:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3926:9: note: in expansion of macro ‘Stream_Read_INT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3927:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3927:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3928:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3928:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:3953:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/update.h:130:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c: scope_hint: In function ‘update_recv_secondary_order’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2905:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2908:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2908:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2908:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2909:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2909:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2915:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2915:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2915:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2916:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2916:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2919:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2919:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2920:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:147:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:148:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:2920:9: note: in expansion of macro ‘Stream_Read_UINT8’ freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/settings_types_private.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/api.h:103:11: note: in definition of macro ‘IFCALLRESULT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/orders.c:4060:46: note: in expansion of macro ‘IFCALLRESULT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ # 148| WINPR_ASSERT(Stream_GetRemainingLength(_s) >= sizeof(UINT8)); # 149| # 150|-> const UINT8 v = WINPR_STREAM_CAST(UINT8, *(_s)->pointer); # 151| if (seek) # 152| Stream_Seek(_s, sizeof(UINT8)); Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/client/audin_main.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘audin_channel_write_and_free’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:539:32: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, 5)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/client/audin_main.c:323:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/client/audin_main.c:324:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/client/audin_main.c:324:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:34: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/types.h:139: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/addin.h:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/audin/client/audin_main.c:35: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/include/freerdp/freerdp.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpdr_server_send_device_query_directory_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:32: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, <unknown> + 64)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2818:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2819:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2820:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2820:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2821:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:113:48: note: in definition of macro ‘Stream_CheckAndLogRequiredLengthOfSizeWLog’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2835:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthWLog’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2838:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2838:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2838:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:183:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2391:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2392:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2394:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:538:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:539:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:540:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h: scope_hint: In function ‘rdpdr_server_send_device_create_request’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:32: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, pathLength + 256)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3293:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3294:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3295:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:3295:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:183:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2250:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2251:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2253:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:555:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:556:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:557:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:717:26: warning[-Wanalyzer-malloc-leak]: leak of ‘http_response_new()’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_recv’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1461:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c:1461:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:716:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/core/gateway/http.c: scope_hint: In function ‘http_response_recv’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_open_file’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:140:20: warning[-Wanalyzer-malloc-leak]: leak of ‘irp’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2264:17: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_open_file’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2942:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2943:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2944:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2944:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2944:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2479:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:182:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:183:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2250:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2251:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2253:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/channels/rdpdr/server/rdpdr_main.c:2253:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:140:40: note: in definition of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:24: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c: scope_hint: In function ‘Emulate_SCardEstablishContext’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:140:21: warning[-Wanalyzer-malloc-leak]: leak of ‘scard_context_new()’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:405:9: note: in expansion of macro ‘WLog_Print’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:398:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:215:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:226:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:227:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:227:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:243:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:244:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:244:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:116:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/libfreerdp/emu/scard/smartcard_emulate.c:405: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: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic.c:406:34: warning: dereferencing ‘void *’ pointer # 404| # 405| if (dst) # 406|-> memmove(dst, &dst[sizeof(WINPR_BITMAP_FILE_HEADER)], # 407| size - sizeof(WINPR_BITMAP_FILE_HEADER)); # 408| return dst; Error: COMPILER_WARNING (CWE-468): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic.c: scope_hint: In function ‘clipboard_synthesize_image_format_to_bmp’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic.c:406:34: warning[-Wpointer-arith]: pointer of type ‘void *’ used in arithmetic # 406 | memmove(dst, &dst[sizeof(WINPR_BITMAP_FILE_HEADER)], # | ^ # 404| # 405| if (dst) # 406|-> memmove(dst, &dst[sizeof(WINPR_BITMAP_FILE_HEADER)], # 407| size - sizeof(WINPR_BITMAP_FILE_HEADER)); # 408| return dst; Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic.c: scope_hint: In function ‘clipboard_synthesize_html_format’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic.c:482:17: warning[-Wanalyzer-malloc-leak]: leak of ‘calloc(1, (long unsigned int)(SrcSize + 1))’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/clipboard.h:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic.c:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic.c:468:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic.c:469:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-843): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘add_directory_contents_to_list’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:279:33: warning[-Wincompatible-pointer-types]: initialization of ‘const WCHAR *’ {aka ‘const short unsigned int *’} from incompatible pointer type ‘char *’ # 277| { # 278| BOOL result = FALSE; # 279|-> const WCHAR* wildcard = "/\0*\0\0\0"; # 280| const size_t wildcardLen = 3; # 281| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘add_file_to_list’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:313:12: warning[-Wanalyzer-malloc-leak]: leak of ‘make_synthetic_file(local_name, remote_name)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘add_file_to_list’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:36: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:563:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:567:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:384:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:358:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:359:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:359:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:360:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:360:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:341:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:306:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:308:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:308:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:309:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:309:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:79:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:282:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:283:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:283:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:284:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:284:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:285:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:285:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:240:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:242:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:242:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:244:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:244:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:208:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:209:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:209:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:175:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:175:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:306:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:308:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:308:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:309:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:309:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:79:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:282:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:283:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:283:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:284:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:284:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:285:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:285:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:240:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:241:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:242:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:242:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:243:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:244:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:244:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:208:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:209:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:209:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:210:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:211:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:212:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:175:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:175:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:176:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:306:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:308:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:308:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:309:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:309:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:79:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ # 311| file = make_synthetic_file(local_name, remote_name); # 312| # 313|-> if (!file) # 314| return FALSE; # 315| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:322:36: warning[-Wanalyzer-malloc-leak]: leak of ‘make_synthetic_file(local_name, remote_name)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: In function ‘add_file_to_list’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:563:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:567:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:384:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:358:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:359:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:359:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:360:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:360:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:341:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:306:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:307:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:308:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:308:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:309:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:309:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:79:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:80:9: note: in expansion of macro ‘WINPR_ASSERT’ # 320| } # 321| # 322|-> if (file->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) # 323| { # 324| /* Error: COMPILER_WARNING (CWE-1164): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:615:14: warning[-Wunused-function]: ‘convert_nautilus_clipboard_to_filedescriptors’ defined but not used # 615 | static void* convert_nautilus_clipboard_to_filedescriptors(wClipboard* clipboard, UINT32 formatId, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 613| } # 614| # 615|-> static void* convert_nautilus_clipboard_to_filedescriptors(wClipboard* clipboard, UINT32 formatId, # 616| const void* data, UINT32* pSize) # 617| { Error: COMPILER_WARNING (CWE-1164): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c: scope_hint: At top level freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/clipboard/synthetic_file.c:882:14: warning[-Wunused-function]: ‘convert_filedescriptors_to_nautilus_clipboard’ defined but not used # 882 | static void* convert_filedescriptors_to_nautilus_clipboard(wClipboard* clipboard, UINT32 formatId, # | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # 880| # 881| /* Prepend header of nautilus based filemanager's format to file list*/ # 882|-> static void* convert_filedescriptors_to_nautilus_clipboard(wClipboard* clipboard, UINT32 formatId, # 883| const void* data, UINT32* pSize) # 884| { Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/comm/comm.c:968:33: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(lpDeviceName)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/comm/comm.c:949:28: note: in expansion of macro ‘_tcsdup’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/comm/comm.c:949:28: note: in expansion of macro ‘_tcsdup’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/comm/comm.c: scope_hint: In function ‘DefineCommDevice’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/comm/comm.c:968:33: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(lpTargetPath)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/comm/comm.c:40: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/comm/comm.c:949:28: note: in expansion of macro ‘_tcsdup’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/comm/comm.c:957:28: note: in expansion of macro ‘_tcsdup’ freerdp-3.4.0-build/FreeRDP-3.4.0/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: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crt/alignment.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/cipher.c: scope_hint: In function ‘winpr_RC4_New_Internal’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/cipher.c: scope_hint: In function ‘winpr_RC4_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_HMAC_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_HMAC_Init’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_HMAC_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_HMAC’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/hash.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_Digest_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_Digest_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_Digest_Allow_FIPS’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/hash.c: scope_hint: In function ‘winpr_Digest’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/crypto/hash.c:559:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/dsparse/dsparse.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/environment/environment.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/file/file.c: scope_hint: In function ‘GetFileHandleForFileDescriptor’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/file/file.c:1449:12: warning[-Wanalyzer-malloc-leak]: leak of ‘fp’ # 1447| # 1448| pFile = FileHandle_New(fp); # 1449|-> if (!pFile) # 1450| return INVALID_HANDLE_VALUE; # 1451| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/file/generic.c: scope_hint: In function ‘file_search_new’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/file/generic.c:1205:12: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ # 1203| * Disable this return to stop confusing the analyzer. */ # 1204| #ifndef __clang_analyzer__ # 1205|-> if (!is_valid_file_search_handle(hFindFile)) # 1206| return FALSE; # 1207| #endif Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/file/generic.c:1205:12: warning[-Wanalyzer-malloc-leak]: leak of ‘pFileSearch’ # 1203| * Disable this return to stop confusing the analyzer. */ # 1204| #ifndef __clang_analyzer__ # 1205|-> if (!is_valid_file_search_handle(hFindFile)) # 1206| return FALSE; # 1207| #endif Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/file/namedPipeClient.c: scope_hint: In function ‘NamedPipeClientCreateFileA’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/file/namedPipeClient.c:201:18: warning[-Wanalyzer-fd-use-without-check]: ‘connect’ on possibly invalid file descriptor ‘-1’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/file/pattern.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/input/scancode.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/library/library.c: scope_hint: In function ‘GetModuleFileNameA’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/library/library.c:298:39: warning[-Wanalyzer-out-of-bounds]: heap-based buffer overflow freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:31: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/library/library.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/library/library.c:278:17: note: in expansion of macro ‘sprintf_s’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:119:82: note: in definition of macro ‘CopyMemory’ # 296| # 297| CopyMemory(lpFilename, buffer, nSize - 1); # 298|-> lpFilename[nSize - 1] = '\0'; # 299| SetLastError(ERROR_INSUFFICIENT_BUFFER); # 300| return nSize; Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c:745:5: warning[deadcode.DeadStores]: Value stored to 'rv' is never read # 743| { # 744| WINPR_ASSERT(provider->p11->C_CloseSession); # 745|-> rv = provider->p11->C_CloseSession(currentSession); # 746| currentSession = (CK_SESSION_HANDLE)NULL; # 747| } Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c:805:3: warning[deadcode.DeadStores]: Value stored to 'rv' is never read # 803| cleanup_FindObjects: # 804| WINPR_ASSERT(provider->p11->C_FindObjectsFinal); # 805|-> rv = provider->p11->C_FindObjectsFinal(currentSession); # 806| # 807| if (keyName) Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c: scope_hint: In function ‘NCryptOpenP11StorageProviderEx’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/ncrypt/ncrypt_pkcs11.c:1275:39: warning[-Wpedantic]: ISO C forbids conversion of object pointer to function pointer type # 1275 | c_get_function_list = (c_get_function_list_t)GetProcAddress(library, "C_GetFunctionList"); # | ^ # 1273| } # 1274| # 1275|-> c_get_function_list = (c_get_function_list_t)GetProcAddress(library, "C_GetFunctionList"); # 1276| if (!c_get_function_list) # 1277| { Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/path/path.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/path/shell.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pipe/pipe.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pipe/pipe.c: scope_hint: In function ‘CreateNamedPipeA’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pipe/pipe.c:725:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/handle/handle.h: scope_hint: In function ‘CreateNamedPipeA’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pipe/pipe.c:725:9: warning[-Wanalyzer-malloc-leak]: leak of ‘pNamedPipe’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pipe/pipe.c:37: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/handle/handle.h: scope_hint: In function ‘CreateNamedPipeA’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pipe/pipe.c: scope_hint: In function ‘ConnectNamedPipe’ freerdp-3.4.0-build/FreeRDP-3.4.0/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: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pool/work.c: scope_hint: In function ‘winpr_SubmitThreadpoolWork’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pool/work.c:156:1: warning[-Wanalyzer-malloc-leak]: leak of ‘callbackInstance’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pool/work.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/pool/work.c:143:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/registry/registry.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/rpc/rpc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/shell/shell.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-843): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c: scope_hint: In function ‘PCSC_SCardListReadersW’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:996:66: warning[-Wincompatible-pointer-types]: passing argument 3 of ‘PCSC_SCardListReaders_Internal’ from incompatible pointer type freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:875:57: note: expected ‘LPSTR’ {aka ‘char *’} but argument is of type ‘CHAR **’ {aka ‘char **’} # 994| # 995| status = # 996|-> PCSC_SCardListReaders_Internal(hContext, mszGroupsA, (LPSTR*)&mszReadersA, pcchReaders); # 997| if (status == SCARD_S_SUCCESS) # 998| { Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:1741:3: warning[unix.Malloc]: Potential leak of memory pointed to by 'pCard' # 1739| # 1740| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ListDictionary_Add takes ownership of pCard # 1741|-> PCSC_WaitForCardAccess(hContext, pCard->hSharedContext, shared); # 1742| } # 1743| Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c: scope_hint: In function ‘PCSC_SCardReadCacheA’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2773:16: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:39: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2738:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2739:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2739:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2771| char* id = card_id_and_name_a(CardIdentifier, LookupName); # 2772| # 2773|-> data = HashTable_GetItemValue(ctx->cache, id); # 2774| free(id); # 2775| if (!data) Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c: scope_hint: In function ‘PCSC_SCardReadCacheW’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2816:16: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’ # 2814| char* id = card_id_and_name_w(CardIdentifier, LookupName); # 2815| # 2816|-> data = HashTable_GetItemValue(ctx->cache, id); # 2817| free(id); # 2818| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c: scope_hint: In function ‘PCSC_SCardWriteCacheA’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2889:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2738:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2739:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2739:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2887| free(id); # 2888| # 2889|-> if (!rc) # 2890| { # 2891| pcsc_cache_item_free(data); Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2896:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'data' # 2894| # 2895| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert owns data # 2896|-> return SCARD_S_SUCCESS; # 2897| } # 2898| Error: GCC_ANALYZER_WARNING (CWE-401): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c: scope_hint: In function ‘PCSC_SCardWriteCacheW’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2935:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2738:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2739:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2739:9: note: in expansion of macro ‘WINPR_ASSERT’ # 2933| free(id); # 2934| # 2935|-> if (!rc) # 2936| { # 2937| pcsc_cache_item_free(data); Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2942:9: warning[unix.Malloc]: Potential leak of memory pointed to by 'data' # 2940| # 2941| // NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert owns data # 2942|-> return SCARD_S_SUCCESS; # 2943| } # 2944| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Kerberos/kerberos.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Kerberos/kerberos.c: scope_hint: In function ‘kerberos_EncryptMessage’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1545:34: warning[-Wpointer-sign]: pointer targets in assignment from ‘BYTE *’ {aka ‘unsigned char *’} to ‘char *’ differ in signedness # 1545 | encrypt_iov[2].data.data = header + 16; # | ^ # 1543| /* Set up the iov array in sig_buffer */ # 1544| header = sig_buffer->pvBuffer; # 1545|-> encrypt_iov[2].data.data = header + 16; # 1546| encrypt_iov[3].data.data = (BYTE*)encrypt_iov[2].data.data + encrypt_iov[2].data.length; # 1547| encrypt_iov[4].data.data = (BYTE*)encrypt_iov[3].data.data + encrypt_iov[3].data.length; Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1546:34: warning[-Wpointer-sign]: pointer targets in assignment from ‘BYTE *’ {aka ‘unsigned char *’} to ‘char *’ differ in signedness # 1546 | encrypt_iov[3].data.data = (BYTE*)encrypt_iov[2].data.data + encrypt_iov[2].data.length; # | ^ # 1544| header = sig_buffer->pvBuffer; # 1545| encrypt_iov[2].data.data = header + 16; # 1546|-> encrypt_iov[3].data.data = (BYTE*)encrypt_iov[2].data.data + encrypt_iov[2].data.length; # 1547| encrypt_iov[4].data.data = (BYTE*)encrypt_iov[3].data.data + encrypt_iov[3].data.length; # 1548| encrypt_iov[0].data.data = (BYTE*)encrypt_iov[4].data.data + encrypt_iov[4].data.length; Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1547:34: warning[-Wpointer-sign]: pointer targets in assignment from ‘BYTE *’ {aka ‘unsigned char *’} to ‘char *’ differ in signedness # 1547 | encrypt_iov[4].data.data = (BYTE*)encrypt_iov[3].data.data + encrypt_iov[3].data.length; # | ^ # 1545| encrypt_iov[2].data.data = header + 16; # 1546| encrypt_iov[3].data.data = (BYTE*)encrypt_iov[2].data.data + encrypt_iov[2].data.length; # 1547|-> encrypt_iov[4].data.data = (BYTE*)encrypt_iov[3].data.data + encrypt_iov[3].data.length; # 1548| encrypt_iov[0].data.data = (BYTE*)encrypt_iov[4].data.data + encrypt_iov[4].data.length; # 1549| encrypt_iov[1].data.data = data_buffer->pvBuffer; Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1548:34: warning[-Wpointer-sign]: pointer targets in assignment from ‘BYTE *’ {aka ‘unsigned char *’} to ‘char *’ differ in signedness # 1548 | encrypt_iov[0].data.data = (BYTE*)encrypt_iov[4].data.data + encrypt_iov[4].data.length; # | ^ # 1546| encrypt_iov[3].data.data = (BYTE*)encrypt_iov[2].data.data + encrypt_iov[2].data.length; # 1547| encrypt_iov[4].data.data = (BYTE*)encrypt_iov[3].data.data + encrypt_iov[3].data.length; # 1548|-> encrypt_iov[0].data.data = (BYTE*)encrypt_iov[4].data.data + encrypt_iov[4].data.length; # 1549| encrypt_iov[1].data.data = data_buffer->pvBuffer; # 1550| Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Kerberos/kerberos.c: scope_hint: In function ‘kerberos_DecryptMessage’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1655:26: warning[-Wpointer-sign]: pointer targets in assignment from ‘BYTE *’ {aka ‘unsigned char *’} to ‘char *’ differ in signedness # 1655 | iov[3].data.data = (BYTE*)iov[2].data.data + iov[2].data.length; # | ^ # 1653| iov[1].data.data = data_buffer->pvBuffer; # 1654| iov[2].data.data = header + 16 + ec; # 1655|-> iov[3].data.data = (BYTE*)iov[2].data.data + iov[2].data.length; # 1656| iov[4].data.data = (BYTE*)iov[3].data.data + iov[3].data.length; # 1657| Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1656:26: warning[-Wpointer-sign]: pointer targets in assignment from ‘BYTE *’ {aka ‘unsigned char *’} to ‘char *’ differ in signedness # 1656 | iov[4].data.data = (BYTE*)iov[3].data.data + iov[3].data.length; # | ^ # 1654| iov[2].data.data = header + 16 + ec; # 1655| iov[3].data.data = (BYTE*)iov[2].data.data + iov[2].data.length; # 1656|-> iov[4].data.data = (BYTE*)iov[3].data.data + iov[3].data.length; # 1657| # 1658| if (krb_log_exec(krb5glue_decrypt_iov, context->ctx, key, usage, iov, ARRAYSIZE(iov))) Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c: scope_hint: In function ‘ntlm_read_AuthenticateMessage’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1078:74: warning[-Wanalyzer-malloc-leak]: leak of ‘*credentials.identity.User’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/asn1.h:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/sspi_gss.h:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/sspi.h:90: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm.h:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:22: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:926:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:927:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:927:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:930:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:246:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:247:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:247:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:249:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:437:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:438:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:439:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:253:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:253:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:408:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:409:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:409:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:410:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:410:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:412:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:203:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:424:9: note: in expansion of macro ‘WLog_DBG’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:119:72: note: in definition of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c: scope_hint: In function ‘ntlm_read_AuthenticateMessage’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1090:78: warning[-Wanalyzer-malloc-leak]: leak of ‘*credentials.identity.Domain’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:926:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:927:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:927:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:930:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:246:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:247:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:247:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:249:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:437:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:438:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:439:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:253:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:253:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:298:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:299:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:301:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:306:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:169:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:170:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:307:9: note: in expansion of macro ‘Stream_Read_UINT16’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:308:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:408:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:409:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:409:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:410:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:410:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:103:9: note: in expansion of macro ‘Stream_CheckAndLogRequiredLengthOfSize’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:412:14: note: in expansion of macro ‘Stream_CheckAndLogRequiredLength’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:217:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:218:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:127:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:128:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:415:9: note: in expansion of macro ‘Stream_Read_UINT32’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:203:28: note: in expansion of macro ‘WLog_Print_tag’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:424:9: note: in expansion of macro ‘WLog_DBG’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:333:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:334:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:756:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:757:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:62:39: note: in definition of macro ‘WINPR_STREAM_CAST’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:119:72: note: in definition of macro ‘CopyMemory’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c: scope_hint: In function ‘ntlm_read_AuthenticateMessage’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Negotiate/negotiate.c:677:5: warning[core.NonNullParamChecker]: Null pointer passed to 2nd parameter expecting 'nonnull' # 675| { # 676| /* Use the output buffer to store the optimistic token */ # 677|-> CopyMemory(&output_token.mechToken, output_buffer, sizeof(SecBuffer)); # 678| # 679| if (bindings_buffer) Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Negotiate/negotiate.c:825:4: warning[core.NonNullParamChecker]: Null pointer passed to 2nd parameter expecting 'nonnull' # 823| { # 824| /* Store the mech token in the output buffer */ # 825|-> CopyMemory(&output_token.mechToken, output_buffer, sizeof(SecBuffer)); # 826| # 827| mech_input_buffers[0] = input_token.mechToken; Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Negotiate/negotiate.c:1130:4: warning[core.NonNullParamChecker]: Null pointer passed to 2nd parameter expecting 'nonnull' # 1128| # 1129| /* Use the output buffer to store the optimistic token */ # 1130|-> CopyMemory(&output_token.mechToken, output_buffer, sizeof(SecBuffer)); # 1131| # 1132| status = context->mech->pkg->table->AcceptSecurityContext( Error: GCC_ANALYZER_WARNING (CWE-476): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Schannel/schannel.c: scope_hint: In function ‘schannel_AcquireCredentialsHandleW.part.0’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Schannel/schannel.c:139:45: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘credentials’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Schannel/schannel.c: scope_hint: In function ‘schannel_AcquireCredentialsHandleW’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/Schannel/schannel.c:154:45: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘credentials’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspi/sspi_winpr.c: scope_hint: In function ‘sspi_ContextBufferFree’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/sspicli/sspicli.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/synch/barrier.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/synch/event.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/synch/pollset.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/synch/sleep.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/synch/timer.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/synch/wait.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/thread/apc.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/thread/argv.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/thread/process.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/thread/thread.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/thread/thread.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/thread/thread.c: scope_hint: In function ‘thread_launcher’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/wlog.h:134:35: note: in definition of macro ‘WLog_Print_unchecked’ # 134 | __VA_ARGS__); \ # | ^~~~~~~~~~~ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/timezone/timezone.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/cmdline.c: scope_hint: In function ‘CommandLineParseCommaSeparatedValuesEx’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c: scope_hint: In function ‘ArrayList_Lock_Conditional’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c:122:22: warning[-Wanalyzer-use-after-free]: use after ‘ArrayList_Free’ of ‘arrayList’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c:522:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c:200:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c:201:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c:201:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c:257:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c: scope_hint: In function ‘ArrayList_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c:522:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c:200:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ArrayList.c:201:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/BufferPool.c: scope_hint: In function ‘BufferPool_Lock’ freerdp-3.4.0-build/FreeRDP-3.4.0/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-401): freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/BufferPool.c: scope_hint: In function ‘BufferPool_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/CountdownEvent.c: scope_hint: In function ‘CountdownEvent_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/CountdownEvent.c:189:9: warning[-Wanalyzer-mismatching-deallocation]: ‘countdown’ should have been deallocated with ‘free’ but was deallocated with ‘CountdownEvent_Free’ # 187| WINPR_PRAGMA_DIAG_PUSH # 188| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 189|-> CountdownEvent_Free(countdown); # 190| WINPR_PRAGMA_DIAG_POP # 191| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/CountdownEvent.c: scope_hint: In function ‘CountdownEvent_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/CountdownEvent.c:200:9: warning[-Wanalyzer-use-after-free]: use after ‘CountdownEvent_Free’ of ‘countdown’ # 198| # 199| DeleteCriticalSection(&countdown->lock); # 200|-> CloseHandle(countdown->event); # 201| # 202| free(countdown); Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/HashTable.c: scope_hint: In function ‘HashTable_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/HashTable.c:785:9: warning[-Wanalyzer-mismatching-deallocation]: ‘table’ should have been deallocated with ‘free’ but was deallocated with ‘HashTable_Free’ # 783| WINPR_PRAGMA_DIAG_PUSH # 784| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 785|-> HashTable_Free(table); # 786| WINPR_PRAGMA_DIAG_POP # 787| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/HashTable.c: scope_hint: In function ‘HashTable_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/HashTable.c:798:18: warning[-Wanalyzer-use-after-free]: use after ‘HashTable_Free’ of ‘table’ # 796| return; # 797| # 798|-> if (table->bucketArray) # 799| { # 800| for (size_t index = 0; index < table->numOfBuckets; index++) Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ListDictionary.c: scope_hint: In function ‘ListDictionary_GetKeys’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ListDictionary.c:174:40: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘pKeys’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/ListDictionary.c:21: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/MessageQueue.c: scope_hint: In function ‘MessageQueue_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/MessageQueue.c: scope_hint: In function ‘MessageQueue_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/PubSub.c: scope_hint: In function ‘PubSub_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/PubSub.c:250:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pubSub’ should have been deallocated with ‘free’ but was deallocated with ‘PubSub_Free’ # 248| WINPR_PRAGMA_DIAG_PUSH # 249| WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC # 250|-> PubSub_Free(pubSub); # 251| WINPR_PRAGMA_DIAG_POP # 252| return NULL; Error: GCC_ANALYZER_WARNING (CWE-416): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/PubSub.c: scope_hint: In function ‘PubSub_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/PubSub.c:259:27: warning[-Wanalyzer-use-after-free]: use after ‘PubSub_Free’ of ‘pubSub’ # 257| if (pubSub) # 258| { # 259|-> if (pubSub->synchronized) # 260| DeleteCriticalSection(&pubSub->lock); # 261| Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/Queue.c: scope_hint: In function ‘Queue_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/Queue.c: scope_hint: In function ‘Queue_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/Stack.c: scope_hint: In function ‘Stack_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/Stack.c: scope_hint: In function ‘Stack_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/StreamPool.c: scope_hint: In function ‘StreamPool_Lock’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/StreamPool.c:51:17: warning[-Wanalyzer-use-after-free]: use after ‘StreamPool_Free’ of ‘pool’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/collections.h:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/StreamPool.c:25: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/StreamPool.c:73:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/StreamPool.c:376:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/StreamPool.c:73:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/collections/StreamPool.c: scope_hint: In function ‘StreamPool_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c: scope_hint: In function ‘winpr_image_read’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:493:73: warning[-Wpointer-sign]: pointer targets in passing argument 2 of ‘winpr_image_read_buffer’ differ in signedness # 493 | status = winpr_image_read_buffer(image, buffer, (size_t)pos); # | ^~~~~~ # | | # | char * freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:30: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/image.h:105:74: note: expected ‘const BYTE *’ {aka ‘const unsigned char *’} but argument is of type ‘char *’ # 105 | WINPR_API int winpr_image_read_buffer(wImage* image, const BYTE* buffer, size_t size); # | ~~~~~~~~~~~~^~~~~~ # 491| if (r == (size_t)pos) # 492| { # 493|-> status = winpr_image_read_buffer(image, buffer, (size_t)pos); # 494| } # 495| } Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c: scope_hint: In function ‘winpr_convert_to_jpeg’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:632:42: warning[-Wdiscarded-qualifiers]: initialization discards ‘const’ qualifier from pointer target type # 630| { # 631| const JDIMENSION offset = x * stride; # 632|-> const JSAMPROW coffset = &cdata[offset]; # 633| if (jpeg_write_scanlines(&cinfo, &coffset, 1) != 1) # 634| goto fail; Error: COMPILER_WARNING (CWE-704): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:633:50: warning[-Wdiscarded-qualifiers]: passing argument 2 of ‘jpeg_write_scanlines’ discards ‘const’ qualifier from pointer target type freerdp-3.4.0-build/FreeRDP-3.4.0/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 ‘JSAMPLE * const*’ {aka ‘unsigned char * const*’} # 631| const JDIMENSION offset = x * stride; # 632| const JSAMPROW coffset = &cdata[offset]; # 633|-> if (jpeg_write_scanlines(&cinfo, &coffset, 1) != 1) # 634| goto fail; # 635| } Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c: scope_hint: In function ‘winpr_convert_from_jpeg’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:665:30: warning[-Wpointer-sign]: pointer targets in passing argument 2 of ‘jpeg_mem_src’ differ in signedness # 665 | jpeg_mem_src(&cinfo, comp_data, comp_data_bytes); # | ^~~~~~~~~ # | | # | const char * /usr/include/jpeglib.h:977:48: note: expected ‘const unsigned char *’ but argument is of type ‘const char *’ # 977 | const unsigned char *inbuffer, unsigned long insize); # | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ # 663| cinfo.err = jpeg_std_error(&jerr); # 664| jpeg_create_decompress(&cinfo); # 665|-> jpeg_mem_src(&cinfo, comp_data, comp_data_bytes); # 666| # 667| if (jpeg_read_header(&cinfo, 1) != JPEG_HEADER_OK) Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:686:40: warning[-Wpointer-sign]: pointer targets in initialization of ‘JSAMPROW’ {aka ‘unsigned char *’} from ‘char *’ differ in signedness # 686 | JSAMPROW row = &decomp_data[cinfo.output_scanline * stride]; # | ^ # 684| while (cinfo.output_scanline < cinfo.image_height) # 685| { # 686|-> JSAMPROW row = &decomp_data[cinfo.output_scanline * stride]; # 687| if (jpeg_read_scanlines(&cinfo, &row, 1) != 1) # 688| goto fail; Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c: scope_hint: In function ‘winpr_convert_from_webp’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:754:39: warning[-Wpointer-sign]: pointer targets in passing argument 1 of ‘WebPDecodeBGRA’ differ in signedness # 754 | uint8_t* dst = WebPDecodeBGRA(comp_data, comp_data_bytes, width, height); # | ^~~~~~~~~ # | | # | const char * freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:44: included_from: Included from here. /usr/include/webp/decode.h:68:20: note: expected ‘const uint8_t *’ {aka ‘const unsigned char *’} but argument is of type ‘const char *’ # 68 | const uint8_t* data, size_t data_size, int* width, int* height); # | ~~~~~~~~~~~~~~~^~~~ # 752| #else # 753| # 754|-> uint8_t* dst = WebPDecodeBGRA(comp_data, comp_data_bytes, width, height); # 755| if (!dst) # 756| return -1; Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:754:67: warning[-Wpointer-sign]: pointer targets in passing argument 3 of ‘WebPDecodeBGRA’ differ in signedness # 754 | uint8_t* dst = WebPDecodeBGRA(comp_data, comp_data_bytes, width, height); # | ^~~~~ # | | # | UINT32 * {aka unsigned int *} /usr/include/webp/decode.h:68:49: note: expected ‘int *’ but argument is of type ‘UINT32 *’ {aka ‘unsigned int *’} # 68 | const uint8_t* data, size_t data_size, int* width, int* height); # | ~~~~~^~~~~ # 752| #else # 753| # 754|-> uint8_t* dst = WebPDecodeBGRA(comp_data, comp_data_bytes, width, height); # 755| if (!dst) # 756| return -1; Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:754:74: warning[-Wpointer-sign]: pointer targets in passing argument 4 of ‘WebPDecodeBGRA’ differ in signedness # 754 | uint8_t* dst = WebPDecodeBGRA(comp_data, comp_data_bytes, width, height); # | ^~~~~~ # | | # | UINT32 * {aka unsigned int *} /usr/include/webp/decode.h:68:61: note: expected ‘int *’ but argument is of type ‘UINT32 *’ {aka ‘unsigned int *’} # 68 | const uint8_t* data, size_t data_size, int* width, int* height); # | ~~~~~^~~~~~ # 752| #else # 753| # 754|-> uint8_t* dst = WebPDecodeBGRA(comp_data, comp_data_bytes, width, height); # 755| if (!dst) # 756| return -1; Error: COMPILER_WARNING (CWE-681): freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/image.c:759:24: warning[-Wpointer-sign]: pointer targets in assignment from ‘uint8_t *’ {aka ‘unsigned char *’} to ‘char *’ differ in signedness # 759 | *ppdecomp_data = dst; # | ^ # 757| # 758| *bpp = 32; # 759|-> *ppdecomp_data = dst; # 760| return (*width) * (*height) * 4; # 761| #endif Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c: scope_hint: In function ‘IniFile_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c:332:16: warning[-Wanalyzer-malloc-leak]: leak of ‘IniFile_New()’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c:21: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c: scope_hint: In function ‘IniFile_SetFilename’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c:499:17: warning[-Wanalyzer-use-after-free]: use after ‘IniFile_Free’ of ‘ini’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c:330:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c: scope_hint: In function ‘IniFile_New’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c: scope_hint: In function ‘IniFile_Clone’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c:860:17: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c:330:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c:498:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c:887:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c:330:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ini.c:330:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/print.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/sam.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CLANG_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/sam.c: scope_hint: In function ‘SamAreEntriesEqual’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/sam.c:77:13: warning[-Wanalyzer-null-argument]: use of NULL where non-null expected freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/sam.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/sam.c:132:9: note: in expansion of macro ‘_fseeki64’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/sam.c: scope_hint: In function ‘SamFreeEntry’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/ssl.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/stream.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches. Error: CPPCHECK_WARNING: freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/Appender.c: scope_hint: In function ‘WLog_Appender_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/BinaryAppender.c: scope_hint: In function ‘WLog_BinaryAppender_WriteMessage’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/BinaryAppender.c:142:9: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, MessageLength)’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/BinaryAppender.c:29: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/BinaryAppender.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:597:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:595:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/stream.h:596:17: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/assert.h:38:23: note: in definition of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/wlog.c: scope_hint: In function ‘WLog_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/wlog.c:915:25: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*log.Name’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/wlog.c:27: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/wlog.c:104:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/crt.h:28: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/wlog.c:26: included_from: Included from here. freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/include/winpr/winpr.h:78:59: note: in definition of macro ‘WINPR_NORETURN’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/wlog.c:98:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/wlog.c:104:9: note: in expansion of macro ‘WINPR_ASSERT’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/wlog.c: scope_hint: In function ‘WLog_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/utils/wlog/wlog.c: scope_hint: In function ‘WLog_Free’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/libwinpr/wtsapi/wtsapi.c: scope_hint: In function ‘LoadAndInitialize’ freerdp-3.4.0-build/FreeRDP-3.4.0/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.4.0-build/FreeRDP-3.4.0/winpr/tools/hash-cli/hash.c: information[normalCheckLevelMaxBranches]: Limiting analysis of branches. Use --check-level=exhaustive to analyze all branches.