libvirt/examples
Lai Jiangshan b65f37a4a1 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>
2011-05-11 12:41:14 -06:00
..
apparmor Improve the apparmor example 2010-04-06 23:01:24 +02:00
domain-events libvirt,logging: cleanup VIR_XXX0() 2011-05-11 12:41:14 -06:00
dominfo maint: avoid space-tab 2010-12-21 13:21:25 -07:00
domsuspend maint: avoid space-tab 2010-12-21 13:21:25 -07:00
hellolibvirt Fix build in separate build directory 2009-10-01 16:55:09 +02:00
openauth Add openauth example to demonstrate a custom auth callback 2010-07-13 13:50:27 +02:00
python Remove bogus check for Xen in example program 2010-11-29 15:17:00 +00:00
systemtap Include socket address in client probe data 2010-10-22 12:00:45 +01:00
xml nwfilter: let qemu's after-migration packet pass 2010-04-27 14:50:35 -04:00