summaryrefslogtreecommitdiff
path: root/manifests/xdmcpserver.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/xdmcpserver.pp')
-rw-r--r--manifests/xdmcpserver.pp40
1 files changed, 40 insertions, 0 deletions
diff --git a/manifests/xdmcpserver.pp b/manifests/xdmcpserver.pp
new file mode 100644
index 0000000..2206b42
--- /dev/null
+++ b/manifests/xdmcpserver.pp
@@ -0,0 +1,40 @@
+# @summary XDMCP Server configuration
+#
+# The authentication key is a 56 bit DES key specified in hex as 0xnnnnnnnnnnnnnn. Alternatively
+# it can be a word and the first 7 characters are used as the key.
+#
+# @param enabled
+# True if XDMCP connections should be allowed
+# @param port
+# UDP/IP port to listen for connections on
+# @param listen_address
+# Host/address to listen for XDMCP connections (use all addresses if not present)
+# @param key
+# Authentication key to use for XDM-AUTHENTICATION-1 or blank to not
+# use authentication (stored in keys.conf)
+# @param hostname
+# Hostname to report to XDMCP clients (defaults to system hostname if unset)
+class lightdm::xdmcpserver (
+ Boolean $enabled = true,
+ # getent services xdmcp
+ Stdlib::Port $port = 177,
+ Optional[String] $listen_address = undef,
+ Optional[String] $key = undef,
+ Optional[String] $hostname = undef,
+) {
+ $conf = {
+ 'enabled' => $enabled,
+ 'port' => $port,
+ 'listen-address' => $listen_address,
+ 'key' => $key,
+ 'hostname' => $hostname,
+ }
+
+ concat::fragment { 'lightdm - config - xdmcpserver':
+ target => $lightdm::config::filename,
+ order => $lightdm::conf::seat_fragment_min + 1,
+ content => {
+ sections => { 'XDMCPServer' => $conf },
+ },
+ }
+}