From nobody Sun Feb 8 17:37:21 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) client-ip=209.132.183.28; envelope-from=libvir-list-bounces@redhat.com; helo=mx1.redhat.com; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1563897913; cv=none; d=zoho.com; s=zohoarc; b=ACsj/7wN2FCU6tiKUAXnyJvTDMMLph8WRy5eitJ25z1783XJQ/aBoKgyQRMRuE8ZVhRoAsz3dOUudSrXX+xSshDUOH4/bznTrS6XmPzxsw9gFixIqKcKbvjPvtatF0WTg3g3QS2npf8aXBNg1zXKvFgWhLNSqH6L+6aOZ2VzfNo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1563897913; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To:ARC-Authentication-Results; bh=tgsh1zxUqWutkIMZb19bGn94Ojij7hQUrT5veIxnXsA=; b=Z6/J+kxccvJd+yDsnO3gYyYcOQZ8evpOpko/2kKBm8xIOGOLAwJ3hGwbi9q3cxKogKVYryFVWL3OL0alslDY60IpK2bE9IuI0nmnCkc/gYh85LhqLdgtqMoR985ifhiFUmdYEkDlxDQjE/UatOaFvHWAzxw+o0Be4mYoG1pArJA= ARC-Authentication-Results: i=1; mx.zoho.com; spf=pass (zoho.com: domain of redhat.com designates 209.132.183.28 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx.zohomail.com with SMTPS id 1563897913973331.355377138367; Tue, 23 Jul 2019 09:05:13 -0700 (PDT) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id BFC1B3082120; Tue, 23 Jul 2019 16:05:12 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 9206919C6A; Tue, 23 Jul 2019 16:05:12 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 40BEB18045D4; Tue, 23 Jul 2019 16:05:12 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x6NG57pj025137 for ; Tue, 23 Jul 2019 12:05:07 -0400 Received: by smtp.corp.redhat.com (Postfix) id AFEBF5C25A; Tue, 23 Jul 2019 16:05:07 +0000 (UTC) Received: from localhost.localdomain.com (unknown [10.36.112.10]) by smtp.corp.redhat.com (Postfix) with ESMTP id B3F0B5C22D; Tue, 23 Jul 2019 16:05:06 +0000 (UTC) From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= To: libvir-list@redhat.com Date: Tue, 23 Jul 2019 17:02:59 +0100 Message-Id: <20190723160319.18153-22-berrange@redhat.com> In-Reply-To: <20190723160319.18153-1-berrange@redhat.com> References: <20190723160319.18153-1-berrange@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 21/41] network: introduce virtnetworkd daemon X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.42]); Tue, 23 Jul 2019 16:05:13 +0000 (UTC) The virtnetworkd daemon will be responsible for providing the network API driver functionality. The network driver is still loaded by the main libvirtd daemon at this stage, so virtnetworkd must not be running at the same time. Signed-off-by: Daniel P. Berrang=C3=A9 --- .gitignore | 4 ++ libvirt.spec.in | 8 ++++ src/network/Makefile.inc.am | 61 +++++++++++++++++++++++++++++ src/network/virtnetworkd.service.in | 24 ++++++++++++ 4 files changed, 97 insertions(+) create mode 100644 src/network/virtnetworkd.service.in diff --git a/.gitignore b/.gitignore index 162b017c4a..4101bb4564 100644 --- a/.gitignore +++ b/.gitignore @@ -154,6 +154,9 @@ /src/lxc/lxc_monitor_protocol.h /src/lxc/lxc_protocol.[ch] /src/lxc/test_libvirtd_lxc.aug +/src/network/test_virtnetworkd.aug +/src/network/virtnetworkd.aug +/src/network/virtnetworkd.conf /src/qemu/test_libvirtd_qemu.aug /src/remote/*_client_bodies.h /src/remote/*_protocol.[ch] @@ -174,6 +177,7 @@ /src/virt-aa-helper /src/virtlockd /src/virtlogd +/src/virtnetworkd /src/virtproxyd /src/virtsecretd /src/virt-guest-shutdown.target diff --git a/libvirt.spec.in b/libvirt.spec.in index 8b78415761..4569f59a98 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -1612,6 +1612,14 @@ exit 0 %{_libdir}/%{name}/connection-driver/libvirt_driver_interface.so =20 %files daemon-driver-network +%config(noreplace) %{_sysconfdir}/libvirt/virtnetworkd.conf +%{_datadir}/augeas/lenses/virtnetworkd.aug +%{_datadir}/augeas/lenses/tests/test_virtnetworkd.aug +%{_unitdir}/virtnetworkd.service +%{_unitdir}/virtnetworkd.socket +%{_unitdir}/virtnetworkd-ro.socket +%{_unitdir}/virtnetworkd-admin.socket +%attr(0755, root, root) %{_sbindir}/virtnetworkd %dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/ %dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/ %dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart diff --git a/src/network/Makefile.inc.am b/src/network/Makefile.inc.am index 23cf39b6f4..7774049c8e 100644 --- a/src/network/Makefile.inc.am +++ b/src/network/Makefile.inc.am @@ -49,6 +49,67 @@ libvirt_driver_network_impl_la_CFLAGS =3D \ libvirt_driver_network_impl_la_SOURCES =3D $(NETWORK_DRIVER_SOURCES) libvirt_driver_network_impl_la_LIBADD =3D $(DBUS_LIBS) $(LIBXML_LIBS) =20 +sbin_PROGRAMS +=3D virtnetworkd + +nodist_conf_DATA +=3D network/virtnetworkd.conf +augeas_DATA +=3D network/virtnetworkd.aug +augeastest_DATA +=3D network/test_virtnetworkd.aug +CLEANFILES +=3D network/virtnetworkd.aug + +virtnetworkd_SOURCES =3D $(REMOTE_DAEMON_SOURCES) +virtnetworkd_CFLAGS =3D \ + $(REMOTE_DAEMON_CFLAGS) \ + -DDAEMON_NAME=3D"\"virtnetworkd\"" \ + -DMODULE_NAME=3D"\"network\"" \ + $(NULL) +virtnetworkd_LDFLAGS =3D $(REMOTE_DAEMON_LD_FLAGS) +virtnetworkd_LDADD =3D $(REMOTE_DAEMON_LD_ADD) + +SYSTEMD_UNIT_FILES +=3D \ + virtnetworkd.service \ + virtnetworkd.socket \ + virtnetworkd-ro.socket \ + virtnetworkd-admin.socket \ + $(NULL) +SYSTEMD_UNIT_FILES_IN +=3D \ + network/virtnetworkd.service.in \ + $(NULL) + +VIRTNETWORKD_UNIT_VARS =3D \ + $(VIRTD_UNIT_VARS) \ + -e 's|[@]name[@]|Libvirt network|g' \ + -e 's|[@]service[@]|virtnetworkd|g' \ + -e 's|[@]sockprefix[@]|virtnetworkd|g' \ + $(NULL) + +virtnetworkd.service: network/virtnetworkd.service.in $(top_builddir)/conf= ig.status + $(AM_V_GEN)sed $(VIRTNETWORKD_UNIT_VARS) < $< > $@-t && mv $@-t $@ + +virtnetwork%.socket: remote/libvirt%.socket.in $(top_builddir)/config.stat= us + $(AM_V_GEN)sed $(VIRTNETWORKD_UNIT_VARS) < $< > $@-t && mv $@-t $@ + +network/virtnetworkd.conf: remote/libvirtd.conf.in + $(AM_V_GEN)sed \ + -e '/:: CUT ENABLE_IP ::/,/:: END ::/d' \ + -e 's/:: DAEMON_NAME ::/virtnetworkd/' \ + < $^ > $@ + +network/virtnetworkd.aug: remote/libvirtd.aug.in + $(AM_V_GEN)$(SED) \ + -e '/:: CUT ENABLE_IP ::/,/:: END ::/d' \ + -e 's/:: DAEMON_NAME ::/virtnetworkd/' \ + -e 's/:: DAEMON_NAME_UC ::/Virtnetworkd/' \ + $< > $@ + +network/test_virtnetworkd.aug: remote/test_libvirtd.aug.in \ + network/virtnetworkd.conf $(AUG_GENTEST) + $(AM_V_GEN)$(AUG_GENTEST) network/virtnetworkd.conf \ + $(srcdir)/remote/test_libvirtd.aug.in | \ + $(SED) -e '/:: CUT ENABLE_IP ::/,/:: END ::/d' \ + -e 's/:: DAEMON_NAME ::/virtnetworkd/' \ + -e 's/:: DAEMON_NAME_UC ::/Virtnetworkd/' \ + > $@ || rm -f $@ + libexec_PROGRAMS +=3D libvirt_leaseshelper libvirt_leaseshelper_SOURCES =3D $(NETWORK_LEASES_HELPER_SOURCES) libvirt_leaseshelper_LDFLAGS =3D \ diff --git a/src/network/virtnetworkd.service.in b/src/network/virtnetworkd= .service.in new file mode 100644 index 0000000000..4e66d0f28d --- /dev/null +++ b/src/network/virtnetworkd.service.in @@ -0,0 +1,24 @@ +[Unit] +Description=3DVirtualization network daemon +Conflicts=3Dlibvirtd.service +Requires=3Dvirtnetworkd.socket +Requires=3Dvirtnetworkd-ro.socket +Requires=3Dvirtnetworkd-admin.socket +After=3Dnetwork.target +After=3Ddbus.service +After=3Dapparmor.service +After=3Dlocal-fs.target +Documentation=3Dman:libvirtd(8) +Documentation=3Dhttps://libvirt.org + +[Service] +Type=3Dnotify +ExecStart=3D@sbindir@/virtnetworkd --timeout 120 +ExecReload=3D/bin/kill -HUP $MAINPID +Restart=3Don-failure + +[Install] +WantedBy=3Dmulti-user.target +Also=3Dvirtnetworkd.socket +Also=3Dvirtnetworkd-ro.socket +Also=3Dvirtnetworkd-admin.socket --=20 2.21.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list