1. 22 9月, 2015 40 次提交
    • C
      Prep for release 1.2.18.1 · a267bb50
      Cole Robinson 提交于
      a267bb50
    • D
      test driver: don't unlock pool after freeing it · 7d2cf485
      David Mansfield 提交于
       Invalid read of size 4
          at 0x945CA30: __pthread_mutex_unlock_full (in /lib64/libpthread-2.20.so)
          by 0x4F0404B: virMutexUnlock (virthread.c:94)
          by 0x4F7161B: virStoragePoolObjUnlock (storage_conf.c:2603)
          by 0x4FE0476: testStoragePoolUndefine (test_driver.c:4328)
          by 0x4FCF086: virStoragePoolUndefine (libvirt-storage.c:656)
          by 0x15A7F5: cmdPoolUndefine (virsh-pool.c:1721)
          by 0x12F48D: vshCommandRun (vsh.c:1212)
          by 0x132AA7: main (virsh.c:943)
        Address 0xfda56a0 is 16 bytes inside a block of size 104 free'd
          at 0x4C2BA6C: free (vg_replace_malloc.c:473)
          by 0x4EA5C96: virFree (viralloc.c:582)
          by 0x4F70B69: virStoragePoolObjFree (storage_conf.c:412)
          by 0x4F7167B: virStoragePoolObjRemove (storage_conf.c:437)
          by 0x4FE0468: testStoragePoolUndefine (test_driver.c:4323)
          by 0x4FCF086: virStoragePoolUndefine (libvirt-storage.c:656)
          by 0x15A7F5: cmdPoolUndefine (virsh-pool.c:1721)
          by 0x12F48D: vshCommandRun (vsh.c:1212)
          by 0x132AA7: main (virsh.c:943)
      
      (cherry picked from commit 03cf57a3)
      7d2cf485
    • C
      libxl: fix AttachDeviceConfig on hostdev type · e60d286b
      Chunyan Liu 提交于
      After attach-device a <hostdev> with --config, new device doesn't
      show up in dumpxml and in guest.
      
      To fix that, set dev->data.hostdev = NULL after work so that the
      pointer is not freed, since vmdef has the pointer and still need it.
      Signed-off-by: NChunyan Liu <cyliu@suse.com>
      (cherry picked from commit 56945e13)
      e60d286b
    • M
      security_selinux: Take @privileged into account · a4582321
      Michal Privoznik 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1124841
      
      If running in session mode it may happen that we fail to set
      correct SELinux label, but the image may still be readable to
      the qemu process. Take this into account.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit 00e5b967)
      a4582321
    • G
      selinux: fix compile errors · eb8382fa
      Guido Günther 提交于
      Remove unused variable, tag unused parameter and adjust return type.
      
      introduced by 3f48345f
      
      CC     security/libvirt_security_manager_la-security_selinux.lo
      security/security_selinux.c: In function 'virSecuritySELinuxDomainSetDirLabel':
      security/security_selinux.c:2520:5: error: return makes pointer from integer without a cast [-Werror]
      security/security_selinux.c:2514:9: error: unused variable 'ret' [-Werror=unused-variable]
      security/security_selinux.c:2509:59: error: unused parameter 'mgr' [-Werror=unused-parameter]
      
      (cherry picked from commit 4d4c90df)
      eb8382fa
    • M
      security_selinux: Add SetDirLabel support · 82dce087
      Martin Kletzander 提交于
      Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      (cherry picked from commit 3f48345f)
      82dce087
    • M
      security: Add virSecurityDomainSetDirLabel · 5290876d
      Martin Kletzander 提交于
      That function can be used for setting security labels on arbitrary
      directories.
      Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      (cherry picked from commit f65a2a12)
      5290876d
    • M
      security_selinux: Use proper structure to access socket data · 6fb8fbad
      Martin Kletzander 提交于
      In virSecuritySELinuxSetSecurityChardevLabel() we are labelling unix
      socket path, but accessing another structure of the union.  This does
      not pose a problem currently as both paths are at the same offset, but
      this should be fixed for the future.
      Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      (cherry picked from commit 4ac6ce38)
      6fb8fbad
    • M
      security_selinux: Replace SELinuxSCSICallbackData with proper struct · 9a7a6998
      Michal Privoznik 提交于
      We have plenty of callbacks in the driver. Some of these
      callbacks require more than one argument to be passed. For that
      we currently have a data type (struct) per each callback. Well,
      so far for only one - SELinuxSCSICallbackData. But lets turn it
      into more general name so it can be reused in other callbacks too
      instead of each one introducing a new, duplicate data type.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit 276c4091)
      9a7a6998
    • M
      virSecuritySELinuxSetSecurityAllLabel: drop useless virFileIsSharedFSType · ee89fc6e
      Michal Privoznik 提交于
      The check is done in virSecuritySELinuxSetFilecon itself. There's
      no need to check it again.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit 370461d1)
      ee89fc6e
    • M
      virSecurityManager: Track if running as privileged · bb8ebbbc
      Michal Privoznik 提交于
      We may want to do some decisions in drivers based on fact if we
      are running as privileged user or not. Propagate this info there.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit 307fb904)
      bb8ebbbc
    • P
      qemu: hotplug: Properly clean up drive backend if frontend hotplug fails · 66899258
      Peter Krempa 提交于
      Commit 8125113c added code that should remove the disk backend if the
      fronted hotplug failed for any reason. The code had a bug though as it
      used the disk string for unplug rather than the backend alias. Fix the
      code by pre-creating an alias string and using it instead of the disk
      string. In cases where qemu does not support QEMU_CAPS_DEVICE, we ignore
      the unplug of the backend since we can't really create an alias in that
      case.
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1262399
      (cherry picked from commit 64c6695f)
      66899258
    • D
      xen: fix race in refresh of config cache · 9372343f
      Daniel P. Berrange 提交于
      The xenXMConfigCacheRefresh method scans /etc/xen and loads
      all config files it finds. It then scans its internal hash
      table and purges any (previously) loaded config files whose
      refresh timestamp does not match the timestamp recorded at
      the start of xenXMConfigCacheRefresh(). There is unfortunately
      a subtle flaw in this, because if loading the config files
      takes longer than 1 second, some of the config files will
      have a refresh timestamp that is 1 or more seconds different
      (newer) than is checked for. So we immediately purge a bunch
      of valid config files we just loaded.
      
      To avoid this flaw, we must pass the timestamp we record at
      the start of xenXMConfigCacheRefresh() into the
      xenXMConfigCacheAddFile() method, instead of letting the
      latter call time(NULL) again.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      (cherry picked from commit 427067f7)
      9372343f
    • I
      libxl: don't end job for ephemeal domain on start failure · b84e9ef2
      Ian Campbell 提交于
      commit 4b53d0d4 "libxl: don't remove persistent domain on start
      failure" cleans up the vm object and sets it to NULL if the vm is not
      persistent, however at end job vm (now NULL) is dereferenced via the call to
      libxlDomainObjEndJob. Avoid this by skipping "endjob" and going
      straight to "cleanup" in this case.
      Signed-off-by: NIan Campbell <ian.campbell@citrix.com>
      (cherry picked from commit ee7758f0)
      b84e9ef2
    • L
      conf: fix crash when parsing a unordered NUMA <cell/> · 328ad9e6
      Luyao Huang 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1260846
      
      Introduced by 8fedbbdb, if we parse an unordered NUMA cell, will
      get a segfault. This is because of a check for overlapping @cpus
      sets we have there. However, since the array to hold guest NUMA
      cells is allocated upfront and therefore it contains all zeros,
      an out of order cell will break our assumption that cell IDs have
      increasing character. At this point we try to access yet NULL
      bitmap and therefore segfault.
      Signed-off-by: NLuyao Huang <lhuang@redhat.com>
      (cherry picked from commit 83ae3ee3)
      328ad9e6
    • J
      qemu: Check virGetLastError return value for migration finish failure · e5db3c4d
      John Ferlan 提交于
      Commit id '2e7cea24' added a check for an error from Finish instead
      of 'unexpected error'; however, if for some reason there wasn't an
      error, then virGetLastError could return NULL resulting in the
      NULL pointer deref to err->domain.
      
      (cherry picked from commit ea3c5f25)
      e5db3c4d
    • J
      libxl: don't overwrite error from virNetSocketNewConnectTCP() · 0206984a
      Jim Fehlig 提交于
      Remove redundant error reporting in libxlDomainMigrationPerform().
      virNetSocketNewConnectTCP() is perfectly capable of reporting
      sensible errors.
      
      (cherry picked from commit 6ce939c2)
      0206984a
    • P
      domain-conf: escape string for socket attribute · 999a873d
      Pavel Hrdina 提交于
      Commit d091518b tried to escape all strings in produced XML, but missed
      this one.
      Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
      (cherry picked from commit e92e5ba1)
      999a873d
    • M
      src: Check for symbols ordering in ADMIN_SYM_FILES · d7eb40d7
      Michal Privoznik 提交于
      Like we are checking for the correct order in SYM_FILES, we
      should do the same for ADMIN_SYM_FILES.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit a0d2ceb3)
      d7eb40d7
    • M
      src: Cleanup libvirt_admin.syms · e2b6bd50
      Michal Privoznik 提交于
      It's a generated file, so after 'distclean' it should be gone.
      But it isn't yet.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit 28fa50d2)
      e2b6bd50
    • M
      src: Check libvirt_admin.syms for exported symbols · 00cf7e08
      Michal Privoznik 提交于
      We have this check rule in src/Makefile: check-symfile that
      should check if all symbols we wanted to export are exported.
      Moreover, if we are not exporting something more. Do the same
      with libvirt_admin.syms.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit 74f11dd2)
      00cf7e08
    • L
      util: fallback to ioctl(SIOCBRDELBR) if netlink RTM_DELLINK fails · b64d62c6
      Laine Stump 提交于
      commit 09778e09 switched from using ioctl(SIOCBRDELBR) for bridge
      device deletion to using a netlink RTM_DELLINK message, which is the
      more modern way to delete a bridge (and also doesn't require the
      bridge to be ~IFF_UP to succeed). However, although older kernels
      (e.g. 2.6.32, in RHEL6/CentOS6) support deleting *some* link types
      with RTM_NEWLINK, they don't support deleting bridges, and there is no
      compile-time way to figure this out.
      
      This patch moves the body of the SIOCBRDELBR version of
      virNetDevBridgeDelete() into a static function, calls the new function
      from the original, and also calls the new function from the
      RTM_DELLINK version if the RTM_DELLINK message generates an EOPNOTSUPP
      error. Since RTM_DELLINK is done from the subordinate function
      virNetlinkDelLink, which is also called for other purposes (deleting a
      macvtap interface), a function pointer called "fallback" has been
      added to the arglist of virNetlinkDelLink() - if that arg != NULL, the
      provided function will be called when (and only when) RTM_DELLINK
      fails with EOPNOTSUPP.
      
      Resolves:  https://bugzilla.redhat.com/show_bug.cgi?id=1252780 (part 2)
      (cherry picked from commit 97d26e47)
      b64d62c6
    • L
      util: fallback to ioctl(SIOCBRADDBR) if netlink RTM_NEWLINK fails · e6c69718
      Laine Stump 提交于
      commit fc7b23db switched from using ioctl(SIOCBRADDBR) for bridge
      creation to using a netlink RTM_NEWLINK message with IFLA_INFO_KIND =
      "bridge", which is the more modern way to create a bridge. However,
      although older kernels (e.g. 2.6.32, in RHEL6/CentOS6) support
      creating *some* link types with RTM_NEWLINK, they don't support
      creating bridges, and there is no compile-time way to figure this out
      (since the "type" isn't an enum, but rather a character string).
      
      This patch moves the body of the SIOCBRADDBR version of
      virNetDevBridgeCreate() into a static function, calls the new function
      from the original, and also calls the new function from the
      RTM_NEWLINK version if the RTM_NEWLINK message generates an EOPNOTSUPP
      error.
      
      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1252780
      (cherry picked from commit 66dcb409)
      e6c69718
    • J
      libxl: acquire a job when receiving a migrating domain · 14aa9d65
      Jim Fehlig 提交于
      Commit f86ae403 moved acquiring a job from libxlDomainStart()
      to its callers. One spot missed was in libxlDoMigrateReceive().
      Acquire a job in libxlDoMigrateReceive() before calling
      libxlDomainStart().
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      (cherry picked from commit e80b84a7)
      14aa9d65
    • J
      libxl: don't attempt to resume domain when suspend fails · b4fefefc
      Jim Fehlig 提交于
      Failure of libxl_domain_suspend() does not leave the domain in
      a suspended state, so no need to call libxl_domain_resume(),
      which btw will fail with "domain not suspended".
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      (cherry picked from commit 15120b8c)
      b4fefefc
    • J
      libxl: fix ref counting of libxlMigrationDstArgs · 24d194ad
      Jim Fehlig 提交于
      This patch fixes some flawed logic around ref counting the
      libxlMigrationDstArgs object.
      
      First, when adding sockets to the event loop with
      virNetSocketAddIOCallback(), the generic virObjectFreeCallback()
      was registered as a free function, with libxlMigrationDstArgs as
      its parameter. A reference was also taken on
      libxlMigrationDstArgs for each successful call to
      virNetSocketAddIOCallback(). The rational behind this logic was
      that the libxlMigrationDstArgs object had to out-live the socket
      objects. But virNetSocketAddIOCallback() already takes a
      reference on socket objects, ensuring their life until removed
      from the event loop and unref'ed in virNetSocketEventFree(). We
      only need to ensure libxlMigrationDstArgs lives until
      libxlDoMigrateReceive() finishes, which can be done by simply
      unref'ing libxlMigrationDstArgs at the end of
      libxlDoMigrateReceive().
      
      The second flaw was unref'ing the sockets in the failure path of
      libxlMigrateReceive() and at the end of libxlDoMigrateReceive().
      As mentioned above, the sockets are already unref'ed by
      virNetSocketEventFree() when removed from the event loop.
      Attempting to unref the socket a second time resulted in a
      libvirtd crash since the socket was previously unref'ed and
      disposed.
      Signed-off-by: NJim Fehlig <jfehlig@suse.com>
      (cherry picked from commit 44a54eb0)
      24d194ad
    • M
      libvirt_lxc: Claim success for --help · 54032910
      Michal Privoznik 提交于
      So far, if libvirt_lxc binary (usually to be found under
      /usr/libexec/) is run with --help, due to a missing line
      and our usual functions pattern, an 'uknown' error is returned.
      Yeah, the help is printed out, but we should not claim error.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit fb0ef0d5)
      54032910
    • M
      virt-aa-helper: Improve valid_path · acf257de
      Michal Privoznik 提交于
      So, after some movement in virt-aa-helper, I've noticed the
      virt-aa-helper-test failing. I've ran gdb (it took me a while to
      realize how to do that) and this showed up immediately:
      
        Program received signal SIGSEGV, Segmentation fault.
        strlen () at ../sysdeps/x86_64/strlen.S:106
        106     ../sysdeps/x86_64/strlen.S: No such file or directory.
        (gdb) bt
        #0  strlen () at ../sysdeps/x86_64/strlen.S:106
        #1  0x0000555555561a13 in array_starts_with (str=0x5555557ce910 "/tmp/tmp.6nI2Fkv0KL/1.img", arr=0x7fffffffd160, size=-1540438016) at security/virt-aa-helper.c:525
        #2  0x0000555555561d49 in valid_path (path=0x5555557ce910 "/tmp/tmp.6nI2Fkv0KL/1.img", readonly=false) at security/virt-aa-helper.c:617
        #3  0x0000555555562506 in vah_add_path (buf=0x7fffffffd3e0, path=0x5555557cb910 "/tmp/tmp.6nI2Fkv0KL/1.img", perms=0x555555581585 "rw", recursive=false) at security/virt-aa-helper.c:823
        #4  0x0000555555562693 in vah_add_file (buf=0x7fffffffd3e0, path=0x5555557cb910 "/tmp/tmp.6nI2Fkv0KL/1.img", perms=0x555555581585 "rw") at security/virt-aa-helper.c:854
        #5  0x0000555555562918 in add_file_path (disk=0x5555557d4440, path=0x5555557cb910 "/tmp/tmp.6nI2Fkv0KL/1.img", depth=0, opaque=0x7fffffffd3e0) at security/virt-aa-helper.c:931
        #6  0x00007ffff78f18b1 in virDomainDiskDefForeachPath (disk=0x5555557d4440, ignoreOpenFailure=true, iter=0x5555555628a6 <add_file_path>, opaque=0x7fffffffd3e0) at conf/domain_conf.c:23286
        #7  0x0000555555562b5f in get_files (ctl=0x7fffffffd670) at security/virt-aa-helper.c:982
        #8  0x0000555555564100 in vahParseArgv (ctl=0x7fffffffd670, argc=5, argv=0x7fffffffd7e8) at security/virt-aa-helper.c:1277
        #9  0x00005555555643d6 in main (argc=5, argv=0x7fffffffd7e8) at security/virt-aa-helper.c:1332
      
      So I've taken look at valid_path() because it is obviously
      calling array_starts_with() with malformed @size. And here's the
      result: there are two variables to hold the size of three arrays
      and their value is recalculated before each call of
      array_starts_with(). What if we just use three variables,
      initialize them and do not touch them afterwards?
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      (cherry picked from commit 52970dec)
      acf257de
    • L
      qemu: Emit correct audit message for memory hot unplug · affa75e6
      Luyao Huang 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1226234#c3
      
      If the qemu monitor fails to remove the memory from the guest for
      any reason, the auditlog message will incorrectly use the current
      actual memory (via virDomainDefGetMemoryActual) instead of the
      value we were attempting to reduce to. The result is the 'new-mem'
      and 'old-mem' values for the auditlog message would be identical.
      
      This patch creates a local 'newmem' which accounts for the current
      memory size minus the memory which is being removed. NB, for the
      success case this results in the same value that would be returned
      by virDomainDefGetMemoryActual without the need to do the math. This
      follows the existing code which would subtract the size for cur_balloon.
      Signed-off-by: NLuyao Huang <lhuang@redhat.com>
      (cherry picked from commit 8f8031df)
      affa75e6
    • L
      qemu: Emit correct audit message for memory hot plug · fec2c786
      Luyao Huang 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1226234#c3
      
      Prior to this patch, after successfully hot plugging memory
      the audit log indicated that the update failed, e.g.:
      
      type=VIRT_RESOURCE ... old-mem=1024000 new-mem=1548288 \
      exe="/usr/sbin/libvirtd" hostname=? addr=? terminal=pts/2 res=failed
      
      This patch will adjust where virDomainAuditMemory is called to
      ensure the proper 'ret' value is used based on success or failure.
      
      Additionally, the audit message should include the size of the
      memory we were attempting to change to rather than the current
      actual size. On failure to add, the message showed the same value
      for old-mem and new-mem.
      
      In order to do this, introduce a 'newmem' local which will compute
      the new size based on the oldmem size plus the size of memory we
      are about to add. NB: This would be the same as calling the
      virDomainDefGetMemoryActual again on success, but avoids the
      overhead of recalculating. Plus cur_balloon is already adjusted
      by the same value, so this follows that.
      Signed-off-by: NLuyao Huang <lhuang@redhat.com>
      (cherry picked from commit cb1fbda4)
      fec2c786
    • L
      hostdev: skip ACS check when using VFIO for device assignment · 4a03dc50
      Laine Stump 提交于
      The ACS checks are meaningless when using the more modern VFIO driver
      for device assignment since VFIO has its own more complete and exact
      checks, but I didn't realize that when I added support for VFIO. This
      patch eliminates the ACS check when preparing PCI devices for
      assignment if VFIO is being used.
      
      This resolves:
      
        https://bugzilla.redhat.com/show_bug.cgi?id=1256486
      
      (cherry picked from commit 108d591b)
      4a03dc50
    • M
      Start daemon only after filesystems are mounted · 2c1a8f02
      Martin Kletzander 提交于
      When images are on mounted filesystems, there is no guarantee libvirtd
      will start before they are mounted.  Since we want to start after both
      local and remote filesystems are mounted, we need to add both local-fs
      and remote-fs as targets that should precede starting libvirtd service.
      Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      (cherry picked from commit 3418e781)
      2c1a8f02
    • P
      virt-aa-helper: add NVRAM store file for read/write · d598dced
      Peter Kieser 提交于
      This is a cryptographically signed message in MIME format.
      
      Some UEFI firmwares may want to use a non-volatile memory to store some
      variables.
      If AppArmor is enabled, and NVRAM store file is set currently
      virt-aa-helper does
      not add the NVRAM store file to the template. Add this file for
      read/write when
      this functionality is defined in domain XML.
      Signed-off-by: NPeter Kieser <peter@kieser.ca>
      (cherry picked from commit 91fdcefa)
      d598dced
    • L
      qemu: Update blkio.weight value after successful set · 075f66e3
      Luyao Huang 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1253107
      
      Make a call virCgroupGetBlkioWeight to re-read blkio.weight right
      after it is set in order to keep internal data up-to-date.
      Signed-off-by: NLuyao Huang <lhuang@redhat.com>
      (cherry picked from commit bf278821)
      075f66e3
    • V
      Eliminate incorrect and unnecessary check for changed IP address · 77fa0088
      Vasiliy Tolstov 提交于
      Commit aa2cc7 modified a previously unnecessary but innocuous check
      for interface IP address during interface update incorrectly, causing
      all attempted updates (e.g. changing link state) to interfaces of
      type='ethernet' for QEMU to fail.
      
      This patch fixes the issue by completely removing the check for IP
      address, which is pointless since QEMU doesn't support setting
      interface IP addresses from the domain interface XML anyway.
      Signed-off-by: NVasiliy Tolstov <v.tolstov@selfip.ru>
      Signed-off-by: NLaine Stump <laine@laine.org>
      (cherry picked from commit bbc705d1)
      77fa0088
    • I
      virt-aa-helper: allow access to /usr/share/ovmf/ · 4f4812f8
      intrigeri 提交于
      We forbid access to /usr/share/, but (at least on Debian-based systems)
      the Open Virtual Machine Firmware files needed for booting UEFI virtual
      machines in QEMU live in /usr/share/ovmf/. Therefore, we need to add
      that directory to the list of read only paths.
      
      A similar patch was suggested by Jamie Strandboge <jamie@canonical.com>
      on https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1483071.
      
      (cherry picked from commit 2f01cfdf)
      4f4812f8
    • G
      virt-aa-helper: Simplify restriction logic · a8eaab32
      Guido Günther 提交于
      First check overrides, then read only files then restricted access
      itself.
      
      This allows us to mark files for read only access whose parents were
      already restricted for read write.
      
      Based on a proposal by Martin Kletzander
      
      (cherry picked from commit d25a5e08)
      a8eaab32
    • G
      virt-aa-helper: document --probing and --dry-run · e50d8461
      Guido Günther 提交于
      (cherry picked from commit 26c5fa3a)
      e50d8461
    • M
      Add generated libvirt_admin.syms into .gitignore · 51521556
      Martin Kletzander 提交于
      Commit a2c5d16a switched to generating
      libvirt_admin.syms, but forgot to add the generated file into
      .gitignore, hence causing tree pollution post-build.
      Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
      (cherry picked from commit 14d84db8)
      51521556
    • G
      libvirt-admin: Generate symbols file · 83c279a7
      Guido Günther 提交于
      Since we're linking this into libvirtd we need some symbols to be public
      but not part of the public API so mark them as
      LIBVIRT_ADMIN_PRIVATE_<VERSION> as we do with libvirt.
      
      Making all other symbols local makes sure we don't accidentally leak
      unwanted ones.
      
      (cherry picked from commit a2c5d16a)
      83c279a7