Note that exim contains tracker-specific configuration
[mirror/dsa-puppet.git] / modules / xinetd / manifests / service.pp
index f7c966a..62349ea 100644 (file)
@@ -1,13 +1,16 @@
 define xinetd::service (
        $id,
        $server,
-       $port,
+       $service,
+       $port='',
        $bind='',
+       $type='',
        $socket_type=stream,
        $protocol=tcp,
-       $flags=IPv6,
+       $flags='',
        $wait=no,
        $user=root,
+       $group='',
        $server_args='',
        $nice=10,
        $instances=100,
@@ -18,41 +21,22 @@ define xinetd::service (
 ) {
        include xinetd
 
-       $noop = $::hostname ? {
-               bizet     => false,
-               franck    => false,
-               gluck     => false,
-               lobos     => false,
-               kassia    => false,
-               klecker   => false,
-               ravel     => false,
-               saens     => false,
-               santoro   => false,
-               schein    => false,
-               steffani  => false,
-               villa     => false,
-               wieck     => false,
-               morricone => false,
-               default   => true
-       }
-
-       case $ensure {
-               present,absent,file: {}
-               default: { fail("Invalid ensure for '$name'") }
-       }
-
-       if $ferm {
-               @ferm::rule { "dsa-xinetd-${name}":
-                       description => "Allow traffic to ${port}",
-                       rule        => "&SERVICE(${protocol}, ${port})"
-               }
-       }
-
        file { "/etc/xinetd.d/${name}":
                ensure  => $ensure,
-               noop    => $noop,
                content => template('xinetd/service.erb'),
                notify  => Service['xinetd'],
                require => Package['xinetd'],
        }
+
+       if $ferm {
+               $fermport = $port ? {
+                       "" => $service,
+                       default => $port
+               }
+
+               ferm::rule { "dsa-xinetd-${name}":
+                       description => "Allow traffic to ${service}",
+                       rule        => "&SERVICE(${protocol}, ${fermport})"
+               }
+       }
 }