1. 14 11月, 2016 5 次提交
    • M
      qemuDomainAttachNetDevice: Avoid @originalError leak · ca1ac664
      Michal Privoznik 提交于
      Coverity identified that this variable might be leaked. And it's
      right. If an error occurred and we have to roll back the control
      jumps to try_remove label where we save the current error (see
      0e82fa4c for more info). However, inside the code a jump onto
      other label is possible thus leaking the error object.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      ca1ac664
    • E
      admin: Use the newly introduced close callback handling helpers · e555ed6f
      Erik Skultety 提交于
      Use the newly introduced close callback helpers to make the code look just a
      bit cleaner and more importantly, to fix the following memleak regarding a
      dangling virAdmConnect object reference caused by assigning NULL to the close
      callback data once the catch-disconnect routine used the callback followed
      by a comparison of NULL to the originally defined close callback (which at that
      moment had already been NULL'd by remoteAdminClientCloseFunc) in
      virAdmConnectCloseCallbackUnregister.
      
      717 (88 direct, 629 indirect) bytes in 1 blocks are definitely lost record
       110 of 141
          at 0x4C2A988: calloc (vg_replace_malloc.c:711)
          by 0x530696F: virAllocVar (viralloc.c:560)
          by 0x53689E6: virObjectNew (virobject.c:193)
          by 0x5368B5E: virObjectLockableNew (virobject.c:219)
          by 0x4E3E7EE: virAdmConnectNew (datatypes.c:900)
          by 0x4E398BB: virAdmConnectOpen (libvirt-admin.c:220)
          by 0x10D3E3: vshAdmConnect (virt-admin.c:161)
          by 0x10D624: vshAdmReconnect (virt-admin.c:215)
          by 0x10DB0A: cmdConnect (virt-admin.c:353)
          by 0x11288F: vshCommandRun (vsh.c:1313)
          by 0x10FDB6: main (virt-admin.c:1439)
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1357358Signed-off-by: NErik Skultety <eskultet@redhat.com>
      e555ed6f
    • E
      datatypes: Introduce some admin-related close callback handling helpers · 7cea74a3
      Erik Skultety 提交于
      Well, there were three different spots where closeCallback->freeCallback was
      called, not looking the same --> potential for bugs - and there indeed is a bug
      with refcounting of the @conn object. So this patch partially follows the path
      set by commit 24dbb69f by introducing some close callback helpers both to
      replace all the spots where we call clean the close callback data with a
      dedicated function and to be able to fix the refcounting bug causing a memleak.
      Signed-off-by: NErik Skultety <eskultet@redhat.com>
      7cea74a3
    • E
      admin: Remove unnecessary @conn object locking · d46a1e5d
      Erik Skultety 提交于
      The only place we change the @conn object is actually virAdmConnectOpen
      routine, thus at the moment we don't really need to lock it, given the fact that
      what we're trying to do here is to change the closeCallback object which is a
      lockable object itself, so that should be enough to avoid races.
      Signed-off-by: NErik Skultety <eskultet@redhat.com>
      d46a1e5d
    • E
      vsh: Drop conditional error reporting in vshErrorHandler · b98b3b74
      Erik Skultety 提交于
      First, since commit 834c5720 the error reporting within the vshErrorHandler
      doesn't work because there was a lot of renaming going on (dull mechanical
      renaming without much thinking about it, yep - shame on me) and so the original
      env variable VIRSH_DEBUG got renamed to VSH_DEBUG which we don't support nor
      document anywhere. Second, by specifying this env variable, the last libvirt
      error gets reported twice despite the fact we say the error reporting should be
      deferred until the command finishes, and last but not least the vintage code's
      logic is a bit 'odd', since the error would get reported iff the env variable
      is set, even if the value should be equal to our DEFAULT value in which case it
      doesn't make sense that we behave differently when an env variable is set to
      some value and when there's no env variable at all but we use the same value
      automatically as default.
      Signed-off-by: NErik Skultety <eskultet@redhat.com>
      b98b3b74
  2. 13 11月, 2016 1 次提交
  3. 12 11月, 2016 1 次提交
  4. 11 11月, 2016 27 次提交
  5. 10 11月, 2016 6 次提交