1. 10 Feb, 2014 2 commits
  2. 07 Feb, 2014 9 commits
  3. 07 Jan, 2014 1 commit
    • Christophe Fergeau's avatar
      Use local GError in spice_convert_newlines() · 41092a33
      Christophe Fergeau authored
      spice_convert_newlines() declares a local 'err' GError but never uses it as
      the function directly uses the 'error' variable passed as an argument.
      Use 'err' throughout the function instead of the 'error' argument as this
      looks like what was intended.
      This fixes this coverity warning:
      
      Error: DEADCODE (CWE-561): [#def144]
      spice-gtk-0.22.9-fb3d/spice-gtk3-0.22.9/gtk/spice-util.c:318: assignment: Assigning: "err" = "NULL".
      spice-gtk-0.22.9-fb3d/spice-gtk3-0.22.9/gtk/spice-util.c:364: null: At condition "err", the value of "err" must be NULL.
      spice-gtk-0.22.9-fb3d/spice-gtk3-0.22.9/gtk/spice-util.c:364: dead_error_condition: The condition "err" cannot be true.
      spice-gtk-0.22.9-fb3d/spice-gtk3-0.22.9/gtk/spice-util.c:365: dead_error_begin: Execution cannot reach this statement "g_propagate_error(error, err);".
      41092a33
  4. 03 Jan, 2014 4 commits
    • Christophe Fergeau's avatar
      controller: Don't call g_type_init() in test with newer glib · f81d6f17
      Christophe Fergeau authored
      g_type_init() is deprecated, calling it on newer glib causes a compile-time
      warning.
      f81d6f17
    • Christophe Fergeau's avatar
      controller: Add missing #ifdef WIN32 in test · b05d1c75
      Christophe Fergeau authored
      The spicec_pid variable is only used in a #ifdef WIN32 block, but it was
      unconditionnally declared/initialized. This causes a gcc warning.
      b05d1c75
    • Christophe Fergeau's avatar
      controller: Avoid out of string bound accesses in test · edc203cd
      Christophe Fergeau authored
      When computing the amount of data to send for static strings, the test
      program is confusing sizeof() which returns the size of the string
      including the trailing '\0' and strlen() which returns the size of the
      string without the trailing '\0'.
      This causes attempts to access one byte past the string.
      This fixes this coverity warning:
      Error: OVERRUN (CWE-119): [#def44]
      spice-gtk-0.20/spice-gtk-0.20/gtk/controller/test.c:258:
      overrun-buffer-arg: Overrunning array ""main,inputs,playback"" of 21 bytes
      by passing it to a function which accesses it at byte offset 21 using
      argument "22UL".
      spice-gtk-0.20/spice-gtk-0.20/gtk/controller/test.c:101:5:
      access_dbuff_in_call: Calling "memcpy(void * restrict, void const *
      restrict, size_t)" indexes array "data" with index "data_size".
      edc203cd
    • Christophe Fergeau's avatar
      cursor: Avoid potential sign extension issue · 2db60b95
      Christophe Fergeau authored
      When doing arithmetic operations on the uint16_t cursor width and height
      with integer constants, the result of the operation will be of type 'int'
      as the integer constant as type 'int'.
      There are 2 places which assign the result of such an operation to
      an (unsigned 64 bit)) size_t variable. This means that if width/height are
      big enough, the int -> size_t conversion would cause a sign extension to
      happen, which is unwanted as we are only manipulating positive values.
      
      This commit explicitly mark the constants with the correct unsigned type.
      This fixes this kind of coverity warnings:
      
      spice-gtk-0.20/spice-gtk-0.20/gtk/channel-cursor.c:388: sign_extension:
      Suspicious implicit sign extension: "hdr->height" with type "unsigned
      short" (16 bits, unsigned) is promoted in "4 * hdr->width * hdr->height" to
      type "int" (32 bits, signed), then sign-extended to type "unsigned long"
      (64 bits, unsigned).  If "4 * hdr->width * hdr->height" is greater than
      0x7FFFFFFF, the upper bits of the result will all be 1.
      2db60b95
  5. 02 Jan, 2014 3 commits
  6. 12 Dec, 2013 1 commit
    • David Jaša's avatar
      Use TLS version 1.0 or better · bf03c1e6
      David Jaša authored
      When creating a TLS socket, both spice-server and spice-gtk currently
      call SSL_CTX_new(TLSv1_method()). The TLSv1_method() function set the
      protocol version to TLS 1.0 exclusively. The correct way to support
      multiple protocol versions is to call SSLv23_method() in spite of its
      scary name. This method will enable all SSL/TLS protocol versions. The
      protocol suite may be further narrowed down by setting respective
      SSL_OP_NO_<version_code> options of SSL context.  This possibility is
      used in this patch in order to block use of SSLv3 that is enabled by
      default in openssl for client sockets as of now but spice has never used
      it.
      bf03c1e6
  7. 09 Dec, 2013 1 commit
  8. 03 Dec, 2013 1 commit
    • Marc-André Lureau's avatar
      gtk: fix giscan warnings, add missing signal doc · 79b83990
      Marc-André Lureau authored
        GISCAN   SpiceClientGLib-2.0.gir
      channel-main.c:633: Warning: SpiceClientGLib: incorrect number of
        parameters in comment block, parameter annotations will be ignored.
      channel-main.c:672: Warning: SpiceClientGLib: incorrect number of
        parameters in comment block, parameter annotations will be ignored.
      channel-main.c:716: Warning: SpiceClientGLib: incorrect number of
        parameters in comment block, parameter annotations will be ignored.
      channel-main.c:757: Warning: SpiceClientGLib: incorrect number of
        parameters in comment block, parameter annotations will be ignored.
      channel-display.c:367: Warning: SpiceClientGLib: incorrect number of
        parameters in comment block, parameter annotations will be ignored.
        GICOMP   SpiceClientGLib-2.0.gir
      
      Pushed unreviewed under trivial rule.
      79b83990
  9. 27 Nov, 2013 3 commits
    • Marc-André Lureau's avatar
      Release v0.22 · 2e3aa297
      Marc-André Lureau authored
      v0.22
      =====
      
      - improve inverted cursor support
      - use system-wide trust certificate store
      - make sasl support work with other method than MD5
      - fix some clipboard crasher, limit clipboard size
      - fix various regressions:
        usbredir, alt-tab on win32, palette crash, agent notification, old
        protocol support, sasl ending crash, gthread coroutine crash, close
        sockets on migration, pulse backend crash
      - fix a few memory leaks
      - build-sys improvements
      2e3aa297
    • Marc-André Lureau's avatar
      build-sys: bump spice-glib version · c48b516f
      Marc-André Lureau authored
      new symbols in spice-glib, bump before release
      c48b516f
    • Marc-André Lureau's avatar
      continuation: fix "fortify" crash · e9c615c1
      Marc-André Lureau authored
      Since 0508f586,  errno.h is included above #undef _FORTIFY_SOURCE.
      
      But it must be placed above system headers to take effect
      
       *** longjmp causes uninitialized stack frame ***:
       /home/jwhite/xfer/spice/bin/spicy terminated
       ======= Backtrace: =========
       /lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x37)[0x7ffff48dc2a7]
       /lib/x86_64-linux-gnu/libc.so.6(+0xef239)[0x7ffff48dc239]
       /lib/x86_64-linux-gnu/libc.so.6(__longjmp_chk+0x33)[0x7ffff48dc1a3]
       /home/jwhite/xfer/spice/lib/libspice-client-glib-2.0.so.8(+0x49761)[0x7ffff78f1761]
       /home/jwhite/xfer/spice/lib/libspice-client-glib-2.0.so.8(+0x499a4)[0x7ffff78f19a4]
       /home/jwhite/xfer/spice/lib/libspice-client-glib-2.0.so.8(+0x1bae7)[0x7ffff78c3ae7]
       /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_dispatch+0x135)[0x7ffff505f355]
       /lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x4a688)[0x7ffff505f688]
       /lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_loop_run+0x72)[0x7ffff505fa82]
       /home/jwhite/xfer/spice/bin/spicy[0x4054aa]
       /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd)[0x7ffff480bead]
       /home/jwhite/xfer/spice/bin/spicy[0x405679]
      e9c615c1
  10. 26 Nov, 2013 1 commit
    • Marc-André Lureau's avatar
      pulse: do not abort on corking no stream · 880fb96e
      Marc-André Lureau authored
      There is no guarantee that a stream actually exist when min-latency
      change is notified.
      
      Check that there is an actual stream before calling cork().  All callers
      where previously checking that stream existed. Add a pre-condition to
      verify argument and spot that error is from spice-gtk itself.
      
      Fixes the following crash:
       #1  0x0000003c12e34105 in abort () at abort.c:92
       #2  0x0000003c2c223180 in pa_stream_is_corked (s=0x0) at
       pulse/stream.c:2536
       #3  0x0000003c2c648cb7 in stream_cork (pulse=<value optimized out>,
       s=0x7fbb38, with_flush=0) at spice-pulse.c:227
       #4  0x0000003c2c649989 in playback_min_latency_changed (object=<value
       optimized out>, pspec=<value optimized out>, data=0x7fbad0) at
       spice-pulse.c:674
      
      https://bugzilla.redhat.com/show_bug.cgi?id=1032785
      880fb96e
  11. 22 Nov, 2013 1 commit
  12. 21 Nov, 2013 1 commit
  13. 20 Nov, 2013 8 commits
  14. 19 Nov, 2013 4 commits