~ubuntu-branches/ubuntu/quantal/libvirt/quantal

« back to all changes in this revision

Viewing changes to debian/patches/lp1039678.patch

  • Committer: Package Import Robot
  • Author(s): Marc Deslauriers
  • Date: 2012-09-26 11:49:45 UTC
  • mfrom: (221.1.2 quantal)
  • Revision ID: package-import@ubuntu.com-20120926114945-qfxa3lw60vn8cw4p
Tags: 0.9.13-0ubuntu11
* SECURITY UPDATE: denial of service via invalid RPC command
  - debian/patches/CVE-2012-3445.patch: make sure nparams isn't set to
    zero in daemon/remote.c.
  - CVE-2012-3445

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Origin: http://libvirt.org/git/?p=libvirt.git;a=commitdiff;h=3cdb3b4e#patch1
 
2
 http://libvirt.org/git/?p=libvirt.git;a=commitdiff;h=d59e1033#patch1
 
3
Description: In vshSnapshotListCollect() vshCalloc was called with swapped
 
4
 nmemb and size argument. This caused division by zero in xalloc_oversized as
 
5
 the macro doesn't expect size to be zero. Also, fill the domain argument that
 
6
 is sent to the remote side.
 
7
Bug-Ubuntu: https://launchpad.net/bugs/1039678
 
8
 
 
9
Index: libvirt-0.9.13/tools/virsh.c
 
10
===================================================================
 
11
--- libvirt-0.9.13.orig/tools/virsh.c   2012-08-21 13:54:12.000000000 -0500
 
12
+++ libvirt-0.9.13/tools/virsh.c        2012-08-21 13:56:20.000000000 -0500
 
13
@@ -17202,8 +17202,8 @@
 
14
     if (count >= 0) {
 
15
         /* When mixing --from and --tree, we also want a copy of from
 
16
          * in the list, but with no parent for that one entry.  */
 
17
-        snaplist->snaps = vshCalloc(ctl, sizeof(*snaplist->snaps),
 
18
-                                    count + (tree && from));
 
19
+        snaplist->snaps = vshCalloc(ctl, count + (tree && from),
 
20
+                                    sizeof(*snaplist->snaps));
 
21
         snaplist->nsnaps = count;
 
22
         for (i = 0; i < count; i++)
 
23
             snaplist->snaps[i].snap = snaps[i];
 
24
Index: libvirt-0.9.13/src/remote/remote_driver.c
 
25
===================================================================
 
26
--- libvirt-0.9.13.orig/src/remote/remote_driver.c      2012-06-25 02:06:18.000000000 -0500
 
27
+++ libvirt-0.9.13/src/remote/remote_driver.c   2012-08-21 13:57:20.000000000 -0500
 
28
@@ -4888,6 +4888,7 @@
 
29
 
 
30
     remoteDriverLock(priv);
 
31
 
 
32
+    make_nonnull_domain(&args.dom, dom);
 
33
     args.need_results = !!snapshots;
 
34
     args.flags = flags;
 
35