hyperv: Introduce and export 'facility' variable.

In its upstream commit [1] openwsman dropped 'facility' variable
which is documented as:

 * all processes that use the libu must define a "facility" variable somewhere
 * to satisfy this external linkage reference.
 *
 * Such variable will be used as the syslog(3) facility argument.

Well, prior to that commit, openwsman itself declared the
variable (and set it to LOG_DAEMON). Now it's up to us.

Yeah, the variable naming is terrible and also I we are not using
libu directly, but apparently libwsman.so requires it anyway:

  $ objdump -T /usr/lib64/libwsman.so | grep facility
  0000000000000000      D  *UND*  0000000000000000  Base        facility

1: d72c51f21b
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
This commit is contained in:
Michal Privoznik 2024-12-19 11:02:59 +01:00
parent a91b22ffc6
commit 18b8e6d3cc
3 changed files with 20 additions and 0 deletions

View File

@ -28,6 +28,7 @@
#include <wsman-soap.h>
#include <wsman-xml.h>
#include <wsman-xml-binding.h>
#include <u/syslog.h>
#include "internal.h"
#include "virerror.h"
@ -47,6 +48,8 @@
VIR_LOG_INIT("hyperv.hyperv_wmi");
int facility = LOG_DAEMON;
int
hypervGetWmiClassList(hypervPrivate *priv, hypervWmiClassInfo *wmiInfo,
virBuffer *query, hypervObject **wmiClass)

11
src/libvirt_hyperv.syms Normal file
View File

@ -0,0 +1,11 @@
#
# HyperV-specific symbols
#
# hyperv/hyperv_wmi.c
facility;
# Let emacs know we want case-insensitive sorting
# Local Variables:
# sort-fold-case: t
# End:

View File

@ -125,6 +125,12 @@ else
sym_files += 'libvirt_libssh2.syms'
endif
if conf.has('WITH_HYPERV')
used_sym_files += 'libvirt_hyperv.syms'
else
sym_files += 'libvirt_hyperv.syms'
endif
# variables filled by subdirectories
libvirt_libs = []