See <https://ci-builds.apache.org/job/Guacamole/job/guacamole-server-main-coverity/161/display/redirect?page=changes>
Changes: [Mike Jumper] GUACAMOLE-377: Establish public guac_display API for efficient rendering via Guacamole protocol. [Mike Jumper] GUACAMOLE-377: Tighten dirty rects down to the individual pixel, rather than whole 64-pixel lines. [Mike Jumper] GUACAMOLE-377: Update layer list head upon layer removal only if non-empty. [Mike Jumper] GUACAMOLE-377: Do NOT acquire the ops lock before any frame lock. [Mike Jumper] GUACAMOLE-377: Correct logic and lock order around deferred frame flushing (caused deadlock). [Mike Jumper] GUACAMOLE-377: Clarify logic around opaque layers. [Mike Jumper] GUACAMOLE-377: Ensure regions outside last frame bounds are considered dirty. [Mike Jumper] GUACAMOLE-377: Migrate guac_mem_*() assertions to GUAC_ASSERT(). [Mike Jumper] GUACAMOLE-377: Do not render frames while users are joining. [Mike Jumper] GUACAMOLE-377: Flush an automatic frame for mouse changes only if there are no other graphical changes pending. [Mike Jumper] GUACAMOLE-377: Updates to cursor must occur within the boundary of their relevant frame (before "sync"). [Mike Jumper] GUACAMOLE-377: Ensure all layers supporting transparency are properly cleared before receiving data that also supports transparency (including WebP). [Mike Jumper] GUACAMOLE-377: Add ability to "hint" that a drawing operation copied data from another layer. [Mike Jumper] GUACAMOLE-377: Use 2 worker threads per available processor. [Mike Jumper] GUACAMOLE-377: Do not use threaded WebP encoder given that guac_display will already make use of a worker thread pool. [Mike Jumper] GUACAMOLE-377: Migrate VNC support to guac_display API. [Mike Jumper] GUACAMOLE-377: Group all guac_display documentation together under a shared Doxygen topic. [Mike Jumper] GUACAMOLE-377: Migrate RDP to guac_display. [Mike Jumper] GUACAMOLE-377: Replace RDP settings string (rather than reuse storage of unknown size). [Mike Jumper] GUACAMOLE-377: Use FreeRDP's built-in GDI handling of bitmap cache. [Mike Jumper] GUACAMOLE-377: Migrate terminal emulator to guac_display. [Mike Jumper] GUACAMOLE-377: Work around libssh2 usage of strlen() on key data (otherwise encumbering testing of terminal emulator refactor). [Mike Jumper] GUACAMOLE-377: Increase maximum number of streams. [Mike Jumper] GUACAMOLE-377: Ignore directories and files used by Clang compilation database. [Mike Jumper] GUACAMOLE-377: Correct return value confusion in handling of timeout vs. general failure of WaitForMultipleObjects(). [Mike Jumper] GUACAMOLE-377: Prefer GUAC_COMP_OVER to GUAC_COMP_SRC for performance-critical operations (~3x faster). [Mike Jumper] GUACAMOLE-377: Remove all old surface, display, cursor, and rect code from src/common/. [Mike Jumper] GUACAMOLE-377: Ensure frame boundaries are sent even for frames containing no graphics. [Mike Jumper] GUACAMOLE-377: Migrate from timer to thread for pending users. [Mike Jumper] GUACAMOLE-377: Restore heuristic detection of RDP frame boundaries. [Mike Jumper] GUACAMOLE-377: Restore heuristic detection of VNC frame boundaries. [Mike Jumper] GUACAMOLE-377: Allow the pending frame buffer for a guac_display_layer to be external. [Mike Jumper] GUACAMOLE-377: Allow external guac_display buffers to be replaced with NULL if necessary for external cleanup tasks. [Mike Jumper] GUACAMOLE-377: Migrate RDP to direct access of FreeRDP's GDI buffer. [Mike Jumper] GUACAMOLE-377: Migrate VNC to direct access of RFB framebuffer. [Mike Jumper] GUACAMOLE-377: Wrap all VNC message handling within drawing context. [Mike Jumper] GUACAMOLE-377: Remove unnecessary locking of last frame during resize. [Mike Jumper] GUACAMOLE-377: Restore good ol' guac_common_surface and guac_common_cursor for use by terminal. [Mike Jumper] GUACAMOLE-377: Revert migration of terminal emulator to guac_display. [Mike Jumper] GUACAMOLE-377: Make vertical combination more likely by limiting combinations to aligned boundaries. [Mike Jumper] GUACAMOLE-377: Read lock should NOT be acquired at same time as write lock. [Mike Jumper] GUACAMOLE-377: Do NOT combine display operations vertically unless edges match exactly. [Mike Jumper] GUACAMOLE-377: Do not allow "img" instructions to break "rect" and "cfill" pairs. [Mike Jumper] GUACAMOLE-377: Reduce number of worker threads to one per processor. [Mike Jumper] GUACAMOLE-377: Synchronize layer contents only if non-empty. [Mike Jumper] GUACAMOLE-377: Ignore alpha for rectangle operations on opaque layers. [Mike Jumper] GUACAMOLE-377: Add convenient, default render thread implementation for guac_display. [Mike Jumper] GUACAMOLE-377: Migrate RDP to default render thread. [Mike Jumper] GUACAMOLE-377: Migrate VNC to default render loop. [Mike Jumper] GUACAMOLE-377: Remove superfluous bounds check (now part of guac_pool). [Mike Jumper] GUACAMOLE-377: Restore original NULL returns for alloc failures of streams/objects. [Mike Jumper] GUACAMOLE-377: Fix regression causing RDP connections to always reconnect after closing. [Mike Jumper] GUACAMOLE-377: Stream/object sentinel must be assigned BEFORE returning index to pool. ------------------------------------------ [...truncated 221.83 KB...] #8 46.14 rm -f channels/rdpdr/*.o #8 46.14 rm -f channels/rdpdr/*.lo #8 46.15 rm -f channels/rdpsnd/*.o #8 46.16 rm -f channels/rdpsnd/*.lo #8 46.16 rm -f plugins/*.o #8 46.17 rm -f plugins/*.lo #8 46.18 rm -f plugins/guac-common-svc/*.o #8 46.18 rm -f plugins/guac-common-svc/*.lo #8 46.19 rm -f plugins/guacai/*.o #8 46.19 rm -f plugins/guacai/*.lo #8 46.20 rm -f *.lo #8 46.20 make[2]: Leaving directory '/build/guacamole-server/src/protocols/rdp' #8 46.20 Making clean in tests #8 46.21 make[2]: Entering directory '/build/guacamole-server/src/protocols/rdp/tests' #8 46.21 rm -f test_rdp #8 46.21 test -z "_generated_runner.c" || rm -f _generated_runner.c #8 46.22 rm -rf .libs _libs #8 46.22 rm -f *.o #8 46.22 rm -f fs/*.o #8 46.23 test -z "test_rdp.log" || rm -f test_rdp.log #8 46.23 test -z "test_rdp.trs" || rm -f test_rdp.trs #8 46.24 test -z "test-suite.log" || rm -f test-suite.log #8 46.24 rm -f *.lo #8 46.25 make[2]: Leaving directory '/build/guacamole-server/src/protocols/rdp/tests' #8 46.25 make[1]: Leaving directory '/build/guacamole-server/src/protocols/rdp' #8 46.25 Making clean in src/protocols/ssh #8 46.26 make[1]: Entering directory '/build/guacamole-server/src/protocols/ssh' #8 46.26 test -z "libguac-client-ssh.la" || rm -f libguac-client-ssh.la #8 46.27 rm -f ./so_locations #8 46.27 rm -rf .libs _libs #8 46.27 rm -f *.o #8 46.28 rm -f *.lo #8 46.28 make[1]: Leaving directory '/build/guacamole-server/src/protocols/ssh' #8 46.28 Making clean in src/protocols/telnet #8 46.29 make[1]: Entering directory '/build/guacamole-server/src/protocols/telnet' #8 46.29 test -z "libguac-client-telnet.la" || rm -f libguac-client-telnet.la #8 46.30 rm -f ./so_locations #8 46.31 rm -rf .libs _libs #8 46.31 rm -f *.o #8 46.31 rm -f *.lo #8 46.32 make[1]: Leaving directory '/build/guacamole-server/src/protocols/telnet' #8 46.32 Making clean in src/protocols/vnc #8 46.33 make[1]: Entering directory '/build/guacamole-server/src/protocols/vnc' #8 46.33 test -z "libguac-client-vnc.la" || rm -f libguac-client-vnc.la #8 46.34 rm -f ./so_locations #8 46.34 rm -rf .libs _libs #8 46.34 rm -f *.o #8 46.35 rm -f *.lo #8 46.35 make[1]: Leaving directory '/build/guacamole-server/src/protocols/vnc' #8 46.35 Making clean in src/guacd #8 46.36 make[1]: Entering directory '/build/guacamole-server/src/guacd' #8 46.36 test -z " " || rm -f #8 46.36 rm -rf .libs _libs #8 46.37 rm -f guacd #8 46.37 rm -f *.o #8 46.38 rm -f *.lo #8 46.38 make[1]: Leaving directory '/build/guacamole-server/src/guacd' #8 46.38 Making clean in src/guacenc #8 46.39 make[1]: Entering directory '/build/guacamole-server/src/guacenc' #8 46.39 rm -f guacenc #8 46.40 rm -rf .libs _libs #8 46.40 rm -f *.o #8 46.41 rm -f *.lo #8 46.42 make[1]: Leaving directory '/build/guacamole-server/src/guacenc' #8 46.42 Making clean in src/guaclog #8 46.43 make[1]: Entering directory '/build/guacamole-server/src/guaclog' #8 46.43 rm -f guaclog #8 46.44 rm -rf .libs _libs #8 46.44 rm -f *.o #8 46.45 rm -f *.lo #8 46.46 make[1]: Leaving directory '/build/guacamole-server/src/guaclog' #8 46.46 make[1]: Entering directory '/build/guacamole-server' #8 46.46 rm -rf .libs _libs #8 46.46 rm -f *.lo #8 46.47 make[1]: Leaving directory '/build/guacamole-server' #8 46.47 + cov-build --dir cov-int make #8 46.48 Coverity Build Capture (64-bit) version 2023.12.2 on Linux 5.15.0-119-generic x86_64 #8 46.48 Internal version numbers: 78329b8295 p-2023.12-push-50 #8 46.48 #8 46.65 #8 46.69 make all-recursive #8 46.69 make[1]: Entering directory '/build/guacamole-server' #8 46.70 Making all in src/libguac #8 46.71 make[2]: Entering directory '/build/guacamole-server/src/libguac' #8 46.73 Making all in . #8 46.74 make[3]: Entering directory '/build/guacamole-server/src/libguac' #8 46.74 CC libguac_la-argv.lo #8 64.04 CC libguac_la-audio.lo #8 65.68 CC libguac_la-client.lo #8 68.14 CC libguac_la-display.lo #8 69.74 CC libguac_la-display-builtin-cursors.lo #8 70.77 CC libguac_la-display-cursor.lo #8 72.41 CC libguac_la-display-flush.lo #8 74.54 CC libguac_la-display-layer.lo #8 76.46 CC libguac_la-display-layer-list.lo #8 78.33 CC libguac_la-display-plan.lo #8 80.40 CC libguac_la-display-plan-combine.lo #8 82.05 CC libguac_la-display-plan-rect.lo #8 83.50 CC libguac_la-display-plan-search.lo #8 85.10 CC libguac_la-display-render-thread.lo #8 86.52 CC libguac_la-display-worker.lo #8 88.31 CC libguac_la-encode-jpeg.lo #8 90.06 CC libguac_la-encode-png.lo #8 91.89 CC libguac_la-error.lo #8 93.19 CC libguac_la-fifo.lo #8 94.53 CC libguac_la-fips.lo #8 95.86 CC libguac_la-flag.lo #8 97.07 CC libguac_la-hash.lo #8 98.17 CC libguac_la-id.lo #8 99.19 CC libguac_la-mem.lo #8 100.5 CC libguac_la-rwlock.lo #8 101.7 CC libguac_la-palette.lo #8 103.3 CC libguac_la-parser.lo #8 105.0 CC libguac_la-pool.lo #8 106.4 CC libguac_la-protocol.lo #8 110.0 CC libguac_la-raw_encoder.lo #8 111.6 CC libguac_la-recording.lo #8 113.1 CC libguac_la-rect.lo #8 114.1 CC libguac_la-socket.lo #8 116.0 CC libguac_la-socket-broadcast.lo #8 117.5 CC libguac_la-socket-fd.lo #8 119.1 CC libguac_la-socket-nest.lo #8 120.5 CC libguac_la-socket-tee.lo #8 121.8 CC libguac_la-string.lo #8 122.9 CC libguac_la-tcp.lo #8 124.3 CC libguac_la-timestamp.lo #8 125.3 CC libguac_la-unicode.lo #8 126.4 CC libguac_la-user.lo #8 128.3 CC libguac_la-user-handlers.lo #8 130.5 CC libguac_la-user-handshake.lo #8 132.3 CC libguac_la-wait-fd.lo #8 133.2 CC libguac_la-wol.lo #8 134.6 CC libguac_la-encode-webp.lo #8 136.6 CC libguac_la-socket-ssl.lo #8 139.8 CCLD libguac.la #8 142.2 make[3]: Leaving directory '/build/guacamole-server/src/libguac' #8 142.2 Making all in tests #8 142.2 make[3]: Entering directory '/build/guacamole-server/src/libguac/tests' #8 142.2 make[3]: Nothing to be done for 'all'. #8 142.2 make[3]: Leaving directory '/build/guacamole-server/src/libguac/tests' #8 142.2 make[2]: Leaving directory '/build/guacamole-server/src/libguac' #8 142.2 Making all in src/common #8 142.2 make[2]: Entering directory '/build/guacamole-server/src/common' #8 142.3 Making all in . #8 142.3 make[3]: Entering directory '/build/guacamole-server/src/common' #8 142.3 CC libguac_common_la-io.lo #8 143.3 CC libguac_common_la-blank_cursor.lo #8 144.6 CC libguac_common_la-clipboard.lo #8 146.3 CC libguac_common_la-cursor.lo #8 148.0 CC libguac_common_la-dot_cursor.lo #8 149.2 CC libguac_common_la-ibar_cursor.lo #8 150.7 CC libguac_common_la-iconv.lo #8 151.9 CC libguac_common_la-json.lo #8 153.5 CC libguac_common_la-list.lo #8 154.8 CC libguac_common_la-pointer_cursor.lo #8 156.2 CC libguac_common_la-rect.lo #8 157.2 CC libguac_common_la-string.lo #8 158.4 CC libguac_common_la-surface.lo #8 161.7 CCLD libguac_common.la #8 162.1 make[3]: Leaving directory '/build/guacamole-server/src/common' #8 162.1 Making all in tests #8 162.2 make[3]: Entering directory '/build/guacamole-server/src/common/tests' #8 162.2 make[3]: Nothing to be done for 'all'. #8 162.2 make[3]: Leaving directory '/build/guacamole-server/src/common/tests' #8 162.2 make[2]: Leaving directory '/build/guacamole-server/src/common' #8 162.2 Making all in src/common-ssh #8 162.2 make[2]: Entering directory '/build/guacamole-server/src/common-ssh' #8 162.2 Making all in . #8 162.2 make[3]: Entering directory '/build/guacamole-server/src/common-ssh' #8 162.2 CC libguac_common_ssh_la-buffer.lo #8 163.7 CC libguac_common_ssh_la-sftp.lo #8 166.0 CC libguac_common_ssh_la-ssh.lo #8 169.6 CC libguac_common_ssh_la-key.lo #8 172.9 CC libguac_common_ssh_la-user.lo #8 174.4 CCLD libguac_common_ssh.la #8 174.9 make[3]: Leaving directory '/build/guacamole-server/src/common-ssh' #8 174.9 Making all in tests #8 174.9 make[3]: Entering directory '/build/guacamole-server/src/common-ssh/tests' #8 174.9 make[3]: Nothing to be done for 'all'. #8 174.9 make[3]: Leaving directory '/build/guacamole-server/src/common-ssh/tests' #8 174.9 make[2]: Leaving directory '/build/guacamole-server/src/common-ssh' #8 174.9 Making all in src/terminal #8 174.9 make[2]: Entering directory '/build/guacamole-server/src/terminal' #8 174.9 CC libguac_terminal_la-buffer.lo #8 177.1 CC libguac_terminal_la-char-mappings.lo #8 178.0 CC libguac_terminal_la-color-scheme.lo #8 179.9 CC libguac_terminal_la-common.lo #8 181.2 CC libguac_terminal_la-display.lo #8 185.8 CC libguac_terminal_la-named-colors.lo #8 187.3 CC libguac_terminal_la-palette.lo #8 188.3 CC libguac_terminal_la-scrollbar.lo #8 190.0 CC libguac_terminal_la-select.lo #8 193.3 CC libguac_terminal_la-terminal.lo #8 198.9 CC libguac_terminal_la-terminal-handlers.lo #8 200.6 terminal-handlers.c: In function 'guac_terminal_parse_numeric_param': #8 200.6 terminal-handlers.c:145:5: error: 'errno' undeclared (first use in this function) #8 200.6 errno = 0; #8 200.6 ^~~~~ #8 200.6 terminal-handlers.c:145:5: note: 'errno' is defined in header '<errno.h>'; did you forget to '#include <errno.h>'? #8 200.6 terminal-handlers.c:37:1: #8 200.6 +#include <errno.h> #8 200.6 #8 200.6 terminal-handlers.c:145:5: #8 200.6 errno = 0; #8 200.6 ^~~~~ #8 200.6 terminal-handlers.c:145:5: note: each undeclared identifier is reported only once for each function it appears in #8 200.7 make[2]: *** [Makefile:681: libguac_terminal_la-terminal-handlers.lo] Error 1 #8 200.7 make[2]: Leaving directory '/build/guacamole-server/src/terminal' #8 200.7 make[1]: *** [Makefile:541: all-recursive] Error 1 #8 200.7 make[1]: Leaving directory '/build/guacamole-server' #8 200.7 make: *** [Makefile:461: all] Error 2 #8 200.9 [WARNING] Build command make exited with code 2. Please verify that the build completed successfully. #8 200.9 Emitted 153 C/C++ compilation units (100%) successfully #8 200.9 [WARNING] Recoverable errors were encountered during 1 of these C/C++ compilation units. #8 200.9 #8 200.9 153 C/C++ compilation units (100%) are ready for analysis #8 200.9 For more details, please look at: #8 200.9 /build/guacamole-server/cov-int/build-log.txt #8 ERROR: process "/bin/sh -c /bin/bash -e -x /build/build.sh" did not complete successfully: exit code: 2 ------ > [4/4] RUN /bin/bash -e -x /build/build.sh: 200.7 make[1]: *** [Makefile:541: all-recursive] Error 1 200.7 make[1]: Leaving directory '/build/guacamole-server' 200.7 make: *** [Makefile:461: all] Error 2 200.9 [WARNING] Build command make exited with code 2. Please verify that the build completed successfully. 200.9 Emitted 153 C/C++ compilation units (100%) successfully 200.9 [WARNING] Recoverable errors were encountered during 1 of these C/C++ compilation units. 200.9 200.9 153 C/C++ compilation units (100%) are ready for analysis 200.9 For more details, please look at: 200.9 /build/guacamole-server/cov-int/build-log.txt ------ [33m4 warnings found (use docker --debug to expand): [0m - LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format (line 7) - SecretsUsedInArgOrEnv: Do not use ARG or ENV instructions for sensitive data (ARG "COVERITY_TOKEN") (line 3) - LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format (line 4) - SecretsUsedInArgOrEnv: Do not use ARG or ENV instructions for sensitive data (ENV "COVERITY_TOKEN") (line 4) Dockerfile:11 -------------------- 9 | COPY . /build/ 10 | RUN /bin/bash -e -x /build/install-deps.sh 11 | >>> RUN /bin/bash -e -x /build/build.sh 12 | -------------------- ERROR: failed to solve: process "/bin/sh -c /bin/bash -e -x /build/build.sh" did not complete successfully: exit code: 2 + docker rmi --force guac-jenkins-guacamole-guacamole-server-main-coverity-161 Error response from daemon: No such image: guac-jenkins-guacamole-guacamole-server-main-coverity-161:latest Build step 'Execute shell' marked build as failure --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
