Subject: v2 [PATCH 3/5] doc: Add documentation for WSDD service.

From: Simon Streit <[email-masked]>
Date: Fri, 8 Apr 2022 20:21:29 +0200

---
 doc/guix.texi | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 66 insertions(+)

diff --git a/doc/guix.texi b/doc/guix.texi
index 70f78c601a..fa3c7d8b51 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -29913,6 +29913,72 @@ Manually enable the @code{winbindd} daemon.
 @end table
 @end deftp
 
+@cindex wsdd
+@subsubheading Web Service Discovery Daemon
+
+Web Service Discovery Daemon implements the WSD protocoll.  It is a
+drop-in replacement for host discovery that lack support for the SMBv1
+protocol.
+
+@defvr{Scheme Variable} wsdd-service-type
+
+Service type for the Web Service Discoery host daemon.  The value for
+this service type is a @code{wsdd-configuration} record.  The details
+for the @code{wsdd-configuration} record type are given below.
+@end defvr
+
+@deftp{Data Type} wsdd-configuration This data type represents the
+configuration for the wsdd service.
+
+@table @asis
+
+@item @code{package} (default: @code{wsdd})
+The wsdd package to use.
+
+@item @code{ipv4only?} (default: @code{#f})
+Only listen to ipv4 addresses.
+
+@item @code{ipv6only} (default: @code{#f})
+Only listen to ipv6 addresses.  Please note: Activating both options is
+not possible, since there would be no ip versions to listen to.
+
+@item @code{chroot} (default: @code{#f})
+Chroot into a sperate directory to prevent access to other directories.
+This is to increase security in case there is a vulnerability in
+@command{wsdd}.
+
+@item @code{hoplimit} (default: @code{1})
+Limit to the level of hops for multicast packets.  The default is
+@var{1} which should prevent packets from leaving the local network.
+
+@item @code{interface} (default: @code{'()})
+Limit to the given list of interfaces to listen to.  By default wsdd
+will listen to all interfaces.  Except the loopback interface is never
+used.
+
+@item @code{uuid-device} (default: @code{#f})
+The WSD protocol requires a device to have a UUID.  Set this to manually
+assign the service a UUID.
+
+@item @code{domain} (default: @code{#f})
+Notify this host is a member of an Active Directory.
+
+@item @code{hostname} (default: @code{#f})
+Manually set the hostname rather than letting @command{wsdd} inherit
+this host's hostname.
+
+@item @code{preserve-case?} (default: @code{#f})
+By default @command{wsdd} will convert the hostname in workgroup to all
+uppercase.  The opposite is true for hostnames in domains.  Setting this
+parameter will preserve case.
+
+@item @code{workgroup} (default: @var{"WORKGROUP"})
+Change the name of the workgroup.  By default @command{wsdd} reports
+this host being member of a workgroup.
+
+@end table
+@end deftp
+
 @node Continuous Integration
 @subsection Continuous Integration
 
-- 
2.34.0