]> xenbits.xensource.com Git - libvirt.git/commit
libvirt,logging: cleanup VIR_XXX0()
authorLai Jiangshan <laijs@cn.fujitsu.com>
Mon, 9 May 2011 09:24:09 +0000 (17:24 +0800)
committerEric Blake <eblake@redhat.com>
Wed, 11 May 2011 18:41:14 +0000 (12:41 -0600)
commitb65f37a4a1feae6bc808d8ae8a8ff662bc146f66
tree25fdc23c13c5015010c233979f944dc0444421fa
parent0e5a7ace8a69b7f2e2d4cb16b3eafcc126fd0ff1
libvirt,logging: cleanup VIR_XXX0()

These VIR_XXXX0 APIs make us confused, use the non-0-suffix APIs instead.

How do these coversions works? The magic is using the gcc extension of ##.
When __VA_ARGS__ is empty, "##" will swallow the "," in "fmt," to
avoid compile error.

example: origin after CPP
high_level_api("%d", a_int) low_level_api("%d", a_int)
high_level_api("a  string") low_level_api("a  string")

About 400 conversions.

8 special conversions:
VIR_XXXX0("") -> VIR_XXXX("msg") (avoid empty format) 2 conversions
VIR_XXXX0(string_literal_with_%) -> VIR_XXXX(%->%%) 0 conversions
VIR_XXXX0(non_string_literal) -> VIR_XXXX("%s", non_string_literal)
  (for security) 6 conversions

Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
60 files changed:
cfg.mk
daemon/libvirtd.c
daemon/remote.c
daemon/stream.c
examples/domain-events/events-c/event-test.c
src/cpu/cpu_x86.c
src/esx/esx_driver.c
src/esx/esx_vi.c
src/libvirt.c
src/libxl/libxl_driver.c
src/lxc/lxc_conf.c
src/lxc/lxc_container.c
src/lxc/lxc_controller.c
src/lxc/lxc_driver.c
src/network/bridge_driver.c
src/node_device/node_device_hal.c
src/node_device/node_device_linux_sysfs.c
src/node_device/node_device_udev.c
src/nwfilter/nwfilter_ebiptables_driver.c
src/openvz/openvz_driver.c
src/phyp/phyp_driver.c
src/qemu/qemu_audit.c
src/qemu/qemu_capabilities.c
src/qemu/qemu_cgroup.c
src/qemu/qemu_conf.c
src/qemu/qemu_domain.c
src/qemu/qemu_driver.c
src/qemu/qemu_hotplug.c
src/qemu/qemu_migration.c
src/qemu/qemu_monitor.c
src/qemu/qemu_monitor_json.c
src/qemu/qemu_monitor_text.c
src/qemu/qemu_process.c
src/remote/remote_driver.c
src/secret/secret_driver.c
src/storage/storage_backend_logical.c
src/test/test_driver.c
src/uml/uml_conf.c
src/uml/uml_driver.c
src/util/bridge.c
src/util/cgroup.c
src/util/command.c
src/util/event.c
src/util/event_poll.c
src/util/hash.c
src/util/json.c
src/util/logging.c
src/util/logging.h
src/util/pci.c
src/util/util.c
src/util/virtaudit.c
src/vbox/vbox_driver.c
src/vbox/vbox_tmpl.c
src/vmx/vmx.c
src/xen/xen_driver.c
src/xen/xen_hypervisor.c
src/xen/xen_inotify.c
src/xen/xend_internal.c
src/xen/xs_internal.c
src/xenxs/xen_sxpr.c