Eric Blake
54456cc0fd
storage: avoid mishandling backing store > 2GB
...
Detected by Coverity. The code was doing math on shifted unsigned
char (which promotes to int), then promoting that to unsigned long
during assignment to size. On 64-bit platforms, this risks sign
extending values of size > 2GiB. Bug present since commit
489fd3 (v0.6.0).
I'm not sure if a specially-crafted bogus qcow2 image could
exploit this, although it's probably not possible, since we
were already checking for the computed results being within
range of our fixed-size buffer.
* src/util/storage_file.c (qcowXGetBackingStore): Avoid sign
extension.
2011-06-08 05:18:46 -06:00
..
2010-03-16 20:15:32 +01:00
2010-03-16 20:15:32 +01:00
2011-05-05 13:47:40 -06:00
2011-02-24 12:04:06 +00:00
2011-05-11 15:20:33 -06:00
2011-02-17 13:36:22 -05:00
2011-05-05 13:48:19 -06:00
2011-05-05 13:48:19 -06:00
2011-05-11 12:41:14 -06:00
2011-03-17 16:45:06 -06:00
2011-06-07 14:06:11 -04:00
2011-06-07 14:06:11 -04:00
2011-05-05 13:47:40 -06:00
2010-09-23 10:37:10 +02:00
2011-04-28 10:44:57 -04:00
2010-10-22 12:07:02 +01:00
2011-06-07 14:06:11 -04:00
2010-03-09 19:22:28 +01:00
2011-05-11 12:41:14 -06:00
2011-03-07 14:16:13 +00:00
2011-05-11 12:41:14 -06:00
2010-10-26 10:23:03 +02:00
2010-11-16 21:13:29 -05:00
2011-02-24 12:04:06 +00:00
2011-05-11 12:41:14 -06:00
2011-04-27 15:32:30 +02:00
2011-04-28 14:48:26 +08:00
2011-03-22 21:12:36 +08:00
2011-04-17 07:22:23 +02:00
2010-03-09 19:22:28 +01:00
2011-05-10 08:39:56 +02:00
2010-06-02 21:35:22 -04:00
2011-05-13 12:44:49 +02:00
2011-04-17 07:22:23 +02:00
2010-12-23 15:54:32 -05:00
2011-05-11 12:41:14 -06:00
2011-05-09 14:02:13 +02:00
2011-05-24 12:34:43 -06:00
2011-05-11 13:28:50 -06:00
2011-05-18 08:15:08 -06:00
2011-05-18 08:15:08 -06:00
2011-02-11 12:32:17 -07:00
2011-04-25 10:20:18 -06:00
2011-04-17 07:22:23 +02:00
2011-02-24 12:04:06 +00:00
2011-06-07 14:06:11 -04:00
2010-07-26 18:43:04 +02:00
2010-05-06 14:35:38 -06:00
2010-03-09 19:22:28 +01:00
2010-02-19 11:52:04 +01:00
2010-03-09 19:22:28 +01:00
2011-05-27 15:31:33 +02:00
2011-04-05 09:14:59 +02:00
2011-04-18 19:05:15 +02:00
2010-03-09 19:22:28 +01:00
2011-06-08 05:18:46 -06:00
2011-02-24 12:04:06 +00:00
2011-05-31 14:17:21 +01:00
2011-05-31 12:14:55 +01:00
2011-02-24 12:04:06 +00:00
2011-01-03 14:45:00 -07:00
2011-04-25 08:53:09 -06:00
2011-04-25 08:53:09 -06:00
2011-04-25 08:53:09 -06:00
2011-04-25 08:53:09 -06:00
2010-06-10 06:05:31 -06:00
2011-04-25 08:53:09 -06:00
2011-06-07 14:06:11 -04:00
2011-06-07 14:06:11 -04:00
2010-11-09 15:48:48 -05:00
2010-05-25 17:09:18 +01:00
2011-05-26 11:17:55 -06:00
2011-02-24 12:04:06 +00:00
2011-04-17 07:22:23 +02:00
2011-06-02 10:54:00 +01:00
2011-05-13 10:32:52 -04:00
2011-01-13 15:10:40 -07:00