spice/server
Christophe Fergeau 4f8db6fac3 worker: Fix potential sprintf overflow
If worker->qxl->id is bigger than 0x7ffffff (in other words, it's a
negative signed int) then
printf(worker_str, "display[%d]", worker->qxl->id);
will need:

"display[]" -> 9 bytes
%d -> 11 bytes

The trailing \0 will thus overflow our 20 bytes destination.
As QXLInstance::id should be an unsigned int, this commit changes the
format string to use %u. This also switches to snprintf.

Signed-off-by: Christophe Fergeau <cfergeau@redhat.com>
Acked-by: Frediano Ziglio <fziglio@redhat.com>
2019-03-21 11:14:53 +00:00
..
tests test-stream-device: Remove interface before next loop 2019-03-19 13:59:04 +00:00
.gitignore gitignore: Reuse top-level gitignore 2016-12-14 19:09:21 +00:00
agent-msg-filter.c agent-msg-filter: Simplify code 2019-02-12 21:02:44 +00:00
agent-msg-filter.h agent-msg-filter: Add some comments to AgentMsgFilter structure 2019-02-11 15:15:59 +00:00
cache-item.h Unify header guards 2017-03-30 18:17:20 +01:00
cache-item.tmpl.c red-pipe-item: Use GLib memory functions 2017-10-11 12:52:17 +01:00
char-device.c Remove support for 64 bit pointers on protocol 2019-03-18 12:42:32 +00:00
char-device.h char-device: separate functions to get write buffer for client and server 2018-11-08 08:08:28 +00:00
common-graphics-channel.c Update usage of GObject private structures 2019-02-08 11:49:15 +00:00
common-graphics-channel.h common-graphics-channel: Move "qxl" property to DisplayChannel 2017-09-07 06:42:01 +01:00
cursor-channel-client.c Update usage of GObject private structures 2019-02-08 11:49:15 +00:00
cursor-channel-client.h Use standard "Red" namespace 2017-10-21 08:47:02 +01:00
cursor-channel.c Move channel registration to constructed vfunc 2019-03-15 09:01:28 +00:00
cursor-channel.h Use standard "Red" namespace 2017-10-21 08:47:02 +01:00
dcc-private.h Rename StreamAgent to VideoStreamAgent 2017-11-30 11:51:09 -06:00
dcc-send.c Remove support for 64 bit pointers on protocol 2019-03-18 12:42:32 +00:00
dcc.c dcc: Add debug log when setting compression 2018-11-26 13:03:00 +00:00
dcc.h Use "base" as pipe item base field name 2018-06-18 13:40:51 +01:00
dispatcher.c dispatcher: Use NULL for pointer check 2019-03-20 16:29:23 +00:00
dispatcher.h Add possibly missing headers for pthread.h 2018-06-26 10:54:01 +01:00
display-channel-private.h display-channel: Store full RedSurfaceCmd, not just QXLReleaseInfoExt 2018-12-06 13:04:00 +00:00
display-channel.c Move channel registration to constructed vfunc 2019-03-15 09:01:28 +00:00
display-channel.h display-channel: Remove unused includes 2019-01-30 15:44:47 +00:00
display-limits.h Receive the GraphicsDeviceInfo message from the streaming agent 2019-01-29 15:46:54 +01:00
event-loop.c event-loop: Port to Windows 2019-01-31 11:06:37 +00:00
glib-compat.h Use verify instead of G_STATIC_ASSERT 2017-12-01 22:49:46 +00:00
glz-encode-match.tmpl.c server: rename _tmpl files 2015-11-26 13:33:36 +00:00
glz-encode.tmpl.c glz: Inline GET_{r,g,b} macros 2018-06-27 16:46:52 +01:00
glz-encoder-dict.c glz-encoder-dict: Remove a warning compiling with CentOS 7 2018-07-11 10:22:36 +01:00
glz-encoder-dict.h Make various functions static 2017-04-05 12:39:20 +02:00
glz-encoder-priv.h Unify header guards 2017-03-30 18:17:20 +01:00
glz-encoder.c glz-encoder: Avoid double byte swap sending image magic 2018-06-05 14:13:27 +01:00
glz-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
gstreamer-encoder.c Use proper format strings for spice_log 2019-03-05 13:55:47 +00:00
image-cache.c Use constant variables for image operations 2017-11-08 15:23:49 +00:00
image-cache.h Unify header guards 2017-03-30 18:17:20 +01:00
image-encoders.c image-encoders: Initialize Zlib lazily 2019-01-30 13:07:32 +00:00
image-encoders.h Add possibly missing headers for pthread.h 2018-06-26 10:54:01 +01:00
inputs-channel-client.c Update usage of GObject private structures 2019-02-08 11:49:15 +00:00
inputs-channel-client.h Use standard "Red" namespace 2017-10-21 08:47:02 +01:00
inputs-channel.c Reuse SPICE_UPCAST instead of SPICE_CONTAINEROF where possible 2019-01-17 16:34:23 +00:00
inputs-channel.h inputs-channel: Move spice_server_kbd_leds to InputsChannel 2017-12-19 16:29:41 +00:00
jpeg-encoder.c jpeg-encoder: Remove JPEG_IMAGE_TYPE_RGB24 2018-06-26 18:06:50 +01:00
jpeg-encoder.h jpeg-encoder: Remove JPEG_IMAGE_TYPE_RGB24 2018-06-26 18:06:50 +01:00
lz4-encoder.c red-replay-qxl: Remove useless end of line 2018-11-16 10:17:32 +00:00
lz4-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
main-channel-client.c Use proper format strings for spice_log 2019-03-05 13:55:47 +00:00
main-channel-client.h Use standard "Red" namespace 2017-10-21 08:47:02 +01:00
main-channel.c Replace spice_printerr() use with red_channel_{debug, warning} 2018-06-28 13:21:46 +01:00
main-channel.h Use standard "Red" namespace 2017-10-21 08:47:02 +01:00
main-dispatcher.c main-dispatcher: Use reds as opaque for dispatcher 2019-03-20 20:40:03 +00:00
main-dispatcher.h Remove core parameter from main_dispatcher_new 2019-02-12 22:34:52 +00:00
Makefile.am Use new common demarshallers.h 2018-10-15 13:39:10 +01:00
memslot.c Use proper format strings for spice_log 2019-03-05 13:55:47 +00:00
memslot.h memslot: Remove error parameter from memslot_get_virt 2018-07-03 12:23:54 +01:00
meson.build meson: Use gnu_symbol_visibility keyword introduced in meson 0.48 2019-02-13 17:00:02 +00:00
migration-protocol.h Unify header guards 2017-03-30 18:17:20 +01:00
mjpeg-encoder.c Use proper format strings for spice_log 2019-03-05 13:55:47 +00:00
net-utils.c windows: Do not include headers not available on Windows 2019-01-31 10:48:34 +00:00
net-utils.h reds-stream: Introduce reds_stream_get_no_delay() helper 2017-03-31 12:22:52 +02:00
pixmap-cache.c pixmap-cache: Use GLib memory functions 2017-10-11 12:52:17 +01:00
pixmap-cache.h Unify header guards 2017-03-30 18:17:20 +01:00
red-channel-capabilities.c Remove common/mem.h includes 2017-11-21 08:27:09 +00:00
red-channel-capabilities.h Unify header guards 2017-03-30 18:17:20 +01:00
red-channel-client.c Update usage of GObject private structures 2019-02-08 11:49:15 +00:00
red-channel-client.h Reuse SPICE_DECLARE_TYPE macro 2017-11-21 08:38:44 +00:00
red-channel.c Use proper format strings for spice_log 2019-03-05 13:55:47 +00:00
red-channel.h Use new common demarshallers.h 2018-10-15 13:39:10 +01:00
red-client.c Use proper format strings for spice_log 2019-03-05 13:55:47 +00:00
red-client.h Reuse SPICE_DECLARE_TYPE macro 2017-11-21 08:38:44 +00:00
red-common.h build: Remove unneeded spice_common.h includes 2018-07-06 07:06:34 +01:00
red-parse-qxl.c qxl: Release QXL resources in red_put_surface_cmd 2018-12-06 13:04:03 +00:00
red-parse-qxl.h qxl: Release QXL resources in red_put_surface_cmd 2018-12-06 13:04:03 +00:00
red-pipe-item.c red-pipe-item: Use GLib memory functions 2017-10-11 12:52:17 +01:00
red-pipe-item.h red-pipe-item: Removed some not necessary headers inclusions 2019-02-23 05:12:59 +00:00
red-qxl.c windows: Do not include headers not available on Windows 2019-01-31 10:48:34 +00:00
red-qxl.h Send the graphics device info to the vd_agent 2019-01-29 15:46:28 +01:00
red-record-qxl.c red-replay-qxl: Remove useless end of line 2018-11-16 10:17:32 +00:00
red-record-qxl.h red-record-qxl: Change license header to LGPLv2+ 2018-07-05 10:15:17 +02:00
red-replay-qxl.c Use proper format strings for spice_log 2019-03-05 13:55:47 +00:00
red-stream-device.c Move channel registration to constructed vfunc 2019-03-15 09:01:28 +00:00
red-stream-device.h red-stream-device: Constify stream_device_get_device_display_info result 2019-02-04 19:44:12 +00:00
red-stream.c ssl: Dump OpenSSL error stack on errors 2019-02-07 09:55:11 +00:00
red-stream.h red-stream: Propagate RedStreamSslStatus type 2018-10-09 12:52:48 +01:00
red-worker.c worker: Fix potential sprintf overflow 2019-03-21 11:14:53 +00:00
red-worker.h red-worker: Remove obsolete type definition 2019-01-23 21:22:37 +00:00
reds-private.h Send the graphics device info to the vd_agent 2019-01-29 15:46:28 +01:00
reds.c reds: Check we don't register a channel twice in reds_register_channel 2019-03-20 10:43:17 +00:00
reds.h reds: Factor out a function to marshal VDAgentGraphicsDeviceInfo message 2019-02-12 21:24:54 +00:00
smartcard-channel-client.c smartcard-channel-client: Update usage of GObject private structures 2019-02-11 13:07:59 +00:00
smartcard-channel-client.h Use standard "Red" namespace 2017-10-21 08:47:02 +01:00
smartcard.c Remove support for 64 bit pointers on protocol 2019-03-18 12:42:32 +00:00
smartcard.h Reuse SPICE_DECLARE_TYPE macro 2017-11-21 08:38:44 +00:00
sound.c windows: Do not include headers not available on Windows 2019-01-31 10:48:34 +00:00
sound.h Change playback_compression to bool type 2017-04-07 15:08:43 -05:00
spice-audio.h Split spice.h 2014-11-27 14:27:18 +01:00
spice-bitmap-utils.c Attempt to create bitmap debug directory 2017-04-07 16:45:54 +01:00
spice-bitmap-utils.h Use verify instead of G_STATIC_ASSERT 2017-12-01 22:49:46 +00:00
spice-bitmap-utils.tmpl.c server: rename _tmpl files 2015-11-26 13:33:36 +00:00
spice-char.h Constify spice_server_char_device_recognized_subtypes 2016-06-29 08:09:03 +01:00
spice-core.h windows: Do not include headers not available on Windows 2019-01-31 10:48:34 +00:00
spice-experimental.h Unify header guards 2017-03-30 18:17:20 +01:00
spice-input.h Split spice.h 2014-11-27 14:27:18 +01:00
spice-migration.h server: Use SPICE_GNUC_DEPRECATED to avoid a dependency on glib.h 2016-08-12 09:47:40 +01:00
spice-qxl.h QXL interface: improve the spice_qxl_set_device_info documentation 2019-01-28 19:35:53 +00:00
spice-replay.h Unify header guards 2017-03-30 18:17:20 +01:00
spice-server-enums.c.tmpl build: Rename spice-server-enums.tmpl.[ch] to spice-server-enums.[ch].tmpl 2018-03-07 10:04:04 -03:00
spice-server-enums.h.tmpl build: Rename spice-server-enums.tmpl.[ch] to spice-server-enums.[ch].tmpl 2018-03-07 10:04:04 -03:00
spice-server.h Convert RedChannelClient hierarchy to GObject 2016-10-07 14:46:37 -05:00
spice-server.syms QXL interface: add a function to identify monitors in the guest 2019-01-26 09:40:10 +00:00
spice-version.h.in build-sys: generate spice-version.h 2014-11-27 14:27:33 +01:00
spice.h Make red-replay-qxl.h a public header 2016-11-10 06:37:15 +00:00
spicevmc.c char-device: Make send_tokens_to_client() optional 2019-02-08 17:25:46 +01:00
stat-file.c stat-file: Exit earlier to reduce indentation 2018-06-25 13:12:04 +01:00
stat-file.h Unify header guards 2017-03-30 18:17:20 +01:00
stat.h Unify header guards 2017-03-30 18:17:20 +01:00
stream-channel.c Trace streaming device data using recorder 2019-01-23 14:51:01 +00:00
stream-channel.h Make stream-channel.h self-contained 2017-10-30 12:01:24 +01:00
sw-canvas.c remove sw-canvas.h 2016-05-09 12:45:37 +01:00
tree.c tree: Use GLib memory functions 2017-10-11 12:52:17 +01:00
tree.h Unify header guards 2017-03-30 18:17:20 +01:00
utils.c ssl: Dump OpenSSL error stack on errors 2019-02-07 09:55:11 +00:00
utils.h ssl: Dump OpenSSL error stack on errors 2019-02-07 09:55:11 +00:00
video-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00
video-stream.c video-stream: prevent crash on stream reattach 2019-03-18 10:41:46 +00:00
video-stream.h Use "base" as pipe item base field name 2018-06-18 13:40:51 +01:00
zlib-encoder.c Replace remaining spice_printerr() with g_warning() 2018-06-28 13:21:48 +01:00
zlib-encoder.h Unify header guards 2017-03-30 18:17:20 +01:00