1. 20 2月, 2019 1 次提交
    • E
      domain: Fix unknown flags diagnosis in virDomainGetXMLDesc · 27c8fd74
      Eric Blake 提交于
      Many drivers had a comment that they did not validate the incoming
      'flags' to virDomainGetXMLDesc() because they were relying on
      virDomainDefFormat() to do it instead. This used to be the case
      (at least since 461e0f1a and friends in 0.9.4 added unknown flag
      checking in general), but regressed in commit 0ecd6851 (1.2.12),
      when all of the drivers were changed to pass 'flags' through the
      new helper virDomainDefFormatConvertXMLFlags(). Since this helper
      silently ignores unknown flags, we need to implement flag checking
      in each driver instead.
      
      Annoyingly, this means that any new flag values added will silently
      be ignored when targeting an older libvirt, rather than our usual
      practice of loudly diagnosing an unsupported flag.  Add comments
      in domain_conf.[ch] to remind us to be extra vigilant about the
      impact when adding flags (a new flag to add data is safe if the
      older server omitting the requested data doesn't break things in
      the newer client; a new flag to suppress data rather than enhancing
      the existing VIR_DOMAIN_XML_SECURE may form a data leak or even a
      security hole).
      
      In the qemu driver, there are multiple callers all funnelling to
      qemuDomainDefFormatBufInternal(); many of them already validated
      flags (and often only a subset of the full set of possible flags),
      but for ease of maintenance, we can also check flags at the common
      helper function.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
      27c8fd74
  2. 19 2月, 2019 1 次提交
  3. 18 2月, 2019 3 次提交
  4. 15 2月, 2019 7 次提交
  5. 13 2月, 2019 2 次提交
  6. 12 2月, 2019 3 次提交
  7. 07 2月, 2019 1 次提交
  8. 04 2月, 2019 3 次提交
  9. 31 1月, 2019 2 次提交
  10. 28 1月, 2019 1 次提交
    • M
      lib: Use more of VIR_STEAL_PTR() · 5772885d
      Michal Privoznik 提交于
      We have this very handy macro called VIR_STEAL_PTR() which steals
      one pointer into the other and sets the other to NULL. The
      following coccinelle patch was used to create this commit:
      
        @ rule1 @
        identifier a, b;
        @@
      
        - b = a;
          ...
        - a = NULL;
        + VIR_STEAL_PTR(b, a);
      
      Some places were clean up afterwards to make syntax-check happy
      (e.g. some curly braces were removed where the body become a one
      liner).
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      Reviewed-by: NErik Skultety <eskultet@redhat.com>
      5772885d
  11. 25 1月, 2019 3 次提交
  12. 24 1月, 2019 1 次提交
    • M
      domain_conf: Free egl render node in virDomainGraphicsDefFree · ca768886
      Michal Privoznik 提交于
       13 bytes in 1 blocks are definitely lost in loss record 44 of 179
          at 0x4C2EE6F: malloc (vg_replace_malloc.c:299)
          by 0x9514A69: strdup (in /lib64/libc-2.27.so)
          by 0x5E60C0B: virStrdup (virstring.c:956)
          by 0x54C856F: virHostGetDRMRenderNode (qemuxml2argvmock.c:190)
          by 0x57CB4E3: qemuProcessGraphicsSetupRenderNode (qemu_process.c:4860)
          by 0x57CB571: qemuProcessSetupGraphics (qemu_process.c:4881)
          by 0x57CE01B: qemuProcessPrepareDomain (qemu_process.c:6040)
          by 0x57D102E: qemuProcessCreatePretendCmd (qemu_process.c:6975)
          by 0x114C1C: testCompareXMLToArgv (qemuxml2argvtest.c:611)
          by 0x134B90: virTestRun (testutils.c:174)
          by 0x123478: mymain (qemuxml2argvtest.c:1697)
          by 0x136BFA: virTestMain (testutils.c:1112)
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      Reviewed-by: NErik Skultety <eskultet@redhat.com>
      ca768886
  13. 22 1月, 2019 2 次提交
  14. 02 1月, 2019 3 次提交
  15. 14 12月, 2018 1 次提交
    • D
      Remove all Author(s): lines from source file headers · 60046283
      Daniel P. Berrangé 提交于
      In many files there are header comments that contain an Author:
      statement, supposedly reflecting who originally wrote the code.
      In a large collaborative project like libvirt, any non-trivial
      file will have been modified by a large number of different
      contributors. IOW, the Author: comments are quickly out of date,
      omitting people who have made significant contribitions.
      
      In some places Author: lines have been added despite the person
      merely being responsible for creating the file by moving existing
      code out of another file. IOW, the Author: lines give an incorrect
      record of authorship.
      
      With this all in mind, the comments are useless as a means to identify
      who to talk to about code in a particular file. Contributors will always
      be better off using 'git log' and 'git blame' if they need to  find the
      author of a particular bit of code.
      
      This commit thus deletes all Author: comments from the source and adds
      a rule to prevent them reappearing.
      
      The Copyright headers are similarly misleading and inaccurate, however,
      we cannot delete these as they have legal meaning, despite being largely
      inaccurate. In addition only the copyright holder is permitted to change
      their respective copyright statement.
      Reviewed-by: NErik Skultety <eskultet@redhat.com>
      Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
      60046283
  16. 13 12月, 2018 2 次提交
  17. 12 12月, 2018 2 次提交
    • E
      conf: domain: gfx: Iterate over graphics devices when doing validation · dd45c271
      Erik Skultety 提交于
      The QEMU validation code for graphics has been in place for a while, but
      because it is only executed from virDomainDeviceInfoIterateInternal, it
      was never run, since the iterator expects the device to have boot info
      which graphics don't have. The unfortunate side effect of this whole mess
      was that a few capabilities were missing from the test suite (as commit
      d8266ebe demonstrated with graphics-spice-invalid-egl-headless test),
      which in turn meant that a few graphics tests which expected a failure
      happily accepted any failure the test runtime returned which made them
      succeed. The impact of this was that we then allowed to start a domain
      with multiple OpenGL-enabled graphics devices.
      
      This patch enables iteration over graphics devices. Unsurprisingly,
      a few tests started to fail as a result, so fix those too.
      Signed-off-by: NErik Skultety <eskultet@redhat.com>
      Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
      dd45c271
    • E
      conf: domain: Introduce virDomainDeviceIterateFlags · 88d24aac
      Erik Skultety 提交于
      Validation of domain devices is accomplished via a generic device
      iterator which takes a callback, iterates over all kinds of supported
      device types and invokes the callback on every single device. However,
      there might be cases when we need to alter the behaviour of the
      iteration (most notably skip or include a group of devices). Therefore,
      this patch introduces iterator flags.
      Signed-off-by: NErik Skultety <eskultet@redhat.com>
      Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
      88d24aac
  18. 11 12月, 2018 1 次提交
  19. 06 12月, 2018 1 次提交