Make libvirt.so include the RPC server code

To avoid static linking libvirtd to the RPC server code, which
then prevents sane introduction of DTrace probes, put it all
in the libvirt.so, and export it

* daemon/Makefile.am: Don't link to RPC libraries
* src/Makefile.am: Link all RPC libraries to libvirt.so
* src/libvirt_private.syms: Export all RPC functions
This commit is contained in:
Daniel P. Berrange 2011-09-30 14:38:39 +01:00
parent 1c3e0eabce
commit 22af84dc52
3 changed files with 99 additions and 3 deletions

View File

@ -111,8 +111,6 @@ libvirtd_LDADD = \
$(POLKIT_LIBS)
libvirtd_LDADD += \
../src/libvirt-net-rpc-server.la \
../src/libvirt-net-rpc.la \
../src/libvirt-qemu.la
if ! WITH_DRIVER_MODULES

View File

@ -610,7 +610,10 @@ libvirt_driver_remote_la_CFLAGS = \
-I@top_srcdir@/src/rpc \
$(AM_CFLAGS)
libvirt_driver_remote_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_remote_la_LIBADD = $(GNUTLS_LIBS) libvirt-net-rpc-client.la libvirt-net-rpc.la
libvirt_driver_remote_la_LIBADD = $(GNUTLS_LIBS) \
libvirt-net-rpc-client.la \
libvirt-net-rpc-server.la \
libvirt-net-rpc.la
if WITH_DRIVER_MODULES
libvirt_driver_remote_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_remote_la_LDFLAGS += -module -avoid-version

View File

@ -1167,6 +1167,101 @@ virFileFclose;
virFileFdopen;
# virnetmessage.h
virNetMessageClear;
virNetMessageEncodeHeader;
virNetMessageEncodePayload;
virNetMessageFree;
virNetMessageNew;
virNetMessageQueuePush;
virNetMessageQueueServe;
virNetMessageSaveError;
# virnetsaslcontext.h
virNetSASLContextCheckIdentity;
virNetSASLContextNewServer;
virNetSASLSessionExtKeySize;
virNetSASLSessionFree;
virNetSASLSessionGetIdentity;
virNetSASLSessionGetKeySize;
virNetSASLSessionListMechanisms;
virNetSASLSessionNewServer;
virNetSASLSessionSecProps;
virNetSASLSessionServerStart;
virNetSASLSessionServerStep;
# virnetserver.h
virNetServerAddProgram;
virNetServerAddService;
virNetServerAddSignalHandler;
virNetServerAutoShutdown;
virNetServerClose;
virNetServerFree;
virNetServerIsPrivileged;
virNetServerNew;
virNetServerQuit;
virNetServerRef;
virNetServerRun;
virNetServerServiceFree;
virNetServerServiceNewTCP;
virNetServerServiceNewUNIX;
virNetServerUpdateServices;
# virnetserverclient.h
virNetServerClientAddFilter;
virNetServerClientClose;
virNetServerClientDelayedClose;
virNetServerClientFree;
virNetServerClientGetAuth;
virNetServerClientGetFD;
virNetServerClientGetLocalIdentity;
virNetServerClientGetPrivateData;
virNetServerClientGetReadonly;
virNetServerClientGetTLSKeySize;
virNetServerClientHasTLSSession;
virNetServerClientImmediateClose;
virNetServerClientIsSecure;
virNetServerClientLocalAddrString;
virNetServerClientRef;
virNetServerClientRemoteAddrString;
virNetServerClientRemoveFilter;
virNetServerClientSendMessage;
virNetServerClientSetCloseHook;
virNetServerClientSetIdentity;
virNetServerClientSetPrivateData;
virNetServerClientSetSASLSession;
# virnetserverprogram.h
virNetServerProgramFree;
virNetServerProgramGetID;
virNetServerProgramGetVersion;
virNetServerProgramMatches;
virNetServerProgramNew;
virNetServerProgramRef;
virNetServerProgramSendReplyError;
virNetServerProgramSendStreamData;
virNetServerProgramSendStreamError;
# virnetsocket.h
virNetSocketDupFD;
virNetSocketFree;
virNetSocketGetFD;
virNetSocketListen;
virNetSocketNewConnectTCP;
virNetSocketNewListenUNIX;
# virnettlscontext.h
virNetTLSContextFree;
virNetTLSContextNewServer;
virNetTLSContextNewServerPath;
# virpidfile.h
virPidFileAcquire;
virPidFileAcquirePath;