- 08 7月, 2011 6 次提交
-
-
由 Eric Blake 提交于
Most APIs use 'unsigned int flags'; but a few stragglers were using a signed value. In particular, the vir*GetXMLDesc APIs were split-brain, with inconsistent choice of types. Although it is an API break to use 'int' instead of 'unsigned int', it is ABI compatible (pre-compiled apps will have no difference in behavior), and generally apps can be recompiled without any issue (only rare apps that compiled with extremely high warning levels, or which pass libvirt API around as typed function pointers, would have to make any code changes to deal with the change). The migrate APIs use 'unsigned long flags', which can't be changed, due to ABI constraints. This patch intentionally touches only the public API, to prove the claim that most existing code (including driver callbacks and virsh) still compiles just fine in spite of the type change. * include/libvirt/libvirt.h.in (virConnectOpenAuth) (virDomainCoreDump, virDomainGetXMLDesc, virNetworkGetXMLDesc) (virNWFilterGetXMLDesc): Use unsigned int for flags. (virDomainHasCurrentSnapshot): Use consistent spelling. * src/libvirt.c (virConnectOpenAuth, virDomainCoreDump) (virDomainGetXMLDesc, virNetworkGetXMLDesc) (virNWFilterGetXMLDesc, do_open): Update accordingly.
-
由 Eric Blake 提交于
Debugging decimal flags is a pain. * src/libvirt.c: Always print flags in hex.
-
由 Eric Blake 提交于
Destroy has a rather negative English connotation. Try to reduce the impact, so newbies aren't as scared to use it. * tools/virsh.c: Tweak all destroy documentation. * tools/virsh.pod: Likewise.
-
由 Eric Blake 提交于
Gnulib finally learned how to do pthread_sigmask on mingw. * .gnulib: Update to latest, for pthread_sigmask. * bootstrap.conf (gnulib_modules): Add pthread_sigmask. * configure.ac (AC_CHECK_FUNCS): Drop redundant check. * src/rpc/virnetclient.c (virNetClientSetTLSSession) (virNetClientIOEventLoop): Make code unconditional. * src/util/command.c (virFork): Likewise. * tools/virsh.c (doMigrate, cmdMigrate): Likewise.
-
由 Eric Blake 提交于
Gnulib documents that mingw vsnprintf is broken (it returns -1 on out-of-space, instead of the count of what would have been printed); but while we were using the snprintf wrapper, we had not yet been using the vsnprintf wrapper. Meanwhile, mingw (but not mingw64) has a replacement snprintf that fixes return values, but still lacks %1$s support; so in that case, gnulib didn't replace snprintf, but libintl then went ahead and installed a version that supported %1$s but not return values. Gnulib has since been fixed to guarantee that the snprintf module will always guarantee the constraints needed by libintl. Also, we want to guarantee that strdup sets errno on failure. * .gnulib: Update to latest, for vsnprintf fix. * bootstrap.conf (gnulib_modules): Add vsnprintf, strdup-posix. Reported by Matthias Bolte.
-
由 Jim Fehlig 提交于
-
- 07 7月, 2011 7 次提交
-
-
由 Matthias Bolte 提交于
-
由 Laine Stump 提交于
Otherwise this will leak an fd each time one of these functions is called.
-
由 Laine Stump 提交于
This brings it in line with the recommendations in HACKING.
-
由 Minoru Usui 提交于
* Trim each element and delete null entry of sysinfo by virSkipSpacesBackwards(). Signed-off-by: NMinoru Usui <usui@mxm.nes.nec.co.jp>
-
由 Eric Blake 提交于
The next patch wants to adjust an end pointer to trim trailing spaces but without modifying the underlying string, but a more generally useful ability to trim trailing spaces in place is also worth providing. * src/util/util.h (virTrimSpaces, virSkipSpacesBackwards): New prototypes. * src/util/util.c (virTrimSpaces, virSkipSpacesBackwards): New functions. * src/libvirt_private.syms (util.h): Export new functions. Inspired by a patch by Minoru Usui.
-
由 Eric Blake 提交于
Most clients of virSkipSpaces don't want to omit backslashes. Also, open-coding the list of spaces is not as nice as using c_isspace. * src/util/util.c (virSkipSpaces): Use c_isspace. (virSkipSpacesAndBackslash): New function. * src/util/util.h (virSkipSpacesAndBackslash): New prototype. * src/xen/xend_internal.c (sexpr_to_xend_topology): Update caller. * src/libvirt_private.syms (util.h): Export new function.
-
由 Eric Blake 提交于
No change in wording. One spacing change in a <pre>, noticed because of odd XML formatting online; the rest is in free-flowing text to make it easier to see nesting levels in the document. * docs/formatdomain.html.in: Adjust spacing. Break long lines.
-
- 06 7月, 2011 11 次提交
-
-
由 Matthias Bolte 提交于
Move stat and mkdir to virFileMakePathHelper. Also use the stat result to detect whether the existing path is a directory and set errno accordingly if it's not.
-
由 Matthias Bolte 提交于
Commit 693eac38 was incomplete here.
-
由 Daniel P. Berrange 提交于
When no <seclabel> is present in the XML, the virDomainSeclabelDef struct is left as all zeros. Unfortunately, this means it gets setup as type=dynamic, with relabel=no, which is an illegal combination. Change the 'bool relabel' attribute in virDomainSeclabelDef to the inverse 'bool norelabel' so that the default initialization is sensible * src/conf/domain_conf.c, src/conf/domain_conf.h, src/security/security_apparmor.c, src/security/security_selinux.c: Replace 'relabel' with 'norelabel'
-
由 Matthias Bolte 提交于
Some callers expected virFileMakePath to set errno, some expected it to return an errno value. Unify this to return 0 on success and -1 on error. Set errno to report detailed error information. Also optimize virFileMakePath if stat fails with an errno different from ENOENT.
-
由 Matthias Bolte 提交于
-
由 Jean-Baptiste Rouault 提交于
This patch adds #if HAVE_SASL where needed in libvirtd.h
-
由 Guannan Ren 提交于
add a new API pciDeviceReAttachInit() in pci.c to initialize state values for nodedev reattach Initialize three state value of device driver to 1. This is just for a new call to qemudNodeDeviceReAttach()
-
由 Laine Stump 提交于
domain.rng, network.rng, and interface.rng already use a few of the same types (or in some cases *should* but don't), and an upcoming code change will have them sharing even more. To prepare for that, this patch takes those common data type definitions and moves them into basictypes.rng. This may break some rule about the need to RNG files to be autonomous or something, but I saw that storageencryption.rng is used in this way, so I figured it must not be completely against the law...
-
由 Laine Stump 提交于
-
由 Laine Stump 提交于
Although most functions with flags check to verify no application is passing in flag bits that are currently undefined, for some reason this function wasn't.
-
由 Laine Stump 提交于
* Change all flags args from int to unsigned int * Allow passing flags in virDomainObjParseFile (and propogate those flags all the way down the call chain). Previously the flags were hardcoded (to VIR_DOMAIN_XML_INTERNAL_STATUS) several layers down the chain. Pass that value in at the one place that is currently calling virDomainObjParseFile.
-
- 05 7月, 2011 3 次提交
-
-
由 Matthias Bolte 提交于
Reported by Ruben Kerkhof.
-
由 Matthias Bolte 提交于
virFileMakePath returns an errno value on error, that will never be negative. An virFileMakePath error would have been ignored here, instead of being reported correctly.
-
由 Matthias Bolte 提交于
The struct A {} A; construct triggers a linker error on OSX about duplicate symbols. This also differs from the common struct style. Switch to common style to fix this. Reported by Justin Clift.
-
- 04 7月, 2011 13 次提交
-
-
由 Daniel P. Berrange 提交于
The domain XML documentation is missing information about the <seclabel> element used by security drivers * formatdomain.html.in: Document <seclabel>
-
由 Daniel P. Berrange 提交于
Add a new attribute to the <seclabel> XML to allow resource relabelling to be enabled with static label usage. <seclabel model='selinux' type='static' relabel='yes'> <label>system_u:system_r:svirt_t:s0:c392,c662</label> </seclabel> * docs/schemas/domain.rng: Add relabel attribute * src/conf/domain_conf.c, src/conf/domain_conf.h: Parse the 'relabel' attribute * src/qemu/qemu_process.c: Unconditionally clear out the 'imagelabel' attribute * src/security/security_apparmor.c: Skip based on 'relabel' attribute instead of label type * src/security/security_selinux.c: Skip based on 'relabel' attribute instead of label type and fill in <imagelabel> attribute if relabel is enabled.
-
由 Daniel P. Berrange 提交于
Normally the dynamic labelling mode will always use a base label of 'svirt_t' for VMs. Introduce a <baselabel> field in the <seclabel> XML to allow this base label to be changed eg <seclabel type='dynamic' model='selinux'> <baselabel>system_u:object_r:virt_t:s0</baselabel> </seclabel> * docs/schemas/domain.rng: Add <baselabel> * src/conf/domain_conf.c, src/conf/domain_conf.h: Parsing of base label * src/qemu/qemu_process.c: Don't reset 'model' attribute if a base label is specified * src/security/security_apparmor.c: Refuse to support base label * src/security/security_selinux.c: Use 'baselabel' when generating label, if available
-
由 Osier Yang 提交于
virStorageBackendCreateRaw: createRawFile already reported the exact error. Before the fix: error: Failed to create vol vol-create.img error: cannot create path '/var/lib/libvirt/images/vol-create.img': Unknown error 18446744073709551597 After the fix: error: Failed to create vol vol-create.img error: cannot fill file '/var/lib/libvirt/images/vol-create.img': No space left on device
-
由 Daniel Veillard 提交于
* configure.ac docs/news.html.in libvirt.spec.in: update for the new release * po/*.po*: updated and regenerated localizations
-
由 Wen Congyang 提交于
cmd is not initialized to NULL, but we try to freed it if we meet some error.
-
由 Eric Blake 提交于
Coverity detected that we could crash on bogus input. Meanwhile, strtok_r is rather heavy compared to strchr. * src/storage/storage_backend_iscsi.c (virStorageBackendIQNFound): Check for parse failure, and use lighter-weight functions.
-
由 Eric Blake 提交于
* src/vmware/vmware_driver.c (vmwareDomainReboot): Check error before dereferencing memory.
-
由 Eric Blake 提交于
Detected by Coverity. qemuDomainEventQueue requires a non-NULL pointer; most callers silently drop the event if we encountered and OOM situation trying to create the event. * src/qemu/qemu_migration.c (qemuMigrationFinish): Check for OOM.
-
由 Eric Blake 提交于
Coverity noted that most clients reacted to failure to hash; but in a best-effort kill loop, we can ignore failure. * src/util/cgroup.c (virCgroupKillInternal): Ignore hash failure.
-
由 Eric Blake 提交于
Coverity noted that 4 out of 5 calls to virNetClientStreamRaiseError checked the return value. This case expects a particular value, so warn if our expectations went wrong due to some bug elsewhere. * src/rpc/virnetclient.c (virNetClientCallDispatchStream): Warn on unexpected scenario.
-
由 Eric Blake 提交于
Coverity warns if the majority of callers check a function for errors, but a few don't; but in qemu_audit and qemu_domain, the choice to not check for failures was safe. In qemu_command, the failure to generate a uuid can only occur on a bad pointer. * src/qemu/qemu_audit.c (qemuAuditCgroup): Ignore failure to get cgroup controller. * src/qemu/qemu_domain.c (qemuDomainObjEnterMonitor) (qemuDomainObjEnterMonitorWithDriver): Ignore failure to get timestamp. * src/qemu/qemu_command.c (qemuParseCommandLine): Check for error.
-
由 Eric Blake 提交于
Detected by Coverity. The leak is on an error path, but I'm not sure whether that path is likely to be triggered in practice. * src/rpc/virnetserverservice.c (virNetServerServiceAccept): Plug leak.
-