summaryrefslogtreecommitdiff
path: root/puppet/modules/tor/manifests/daemon/control.pp
blob: 01726562184aff29ffee2e7e7bd9c463bc2e78b1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# control definition
define tor::daemon::control(
  $port                            = 0,
  $hashed_control_password         = '',
  $cookie_authentication           = 0,
  $cookie_auth_file                = '',
  $cookie_auth_file_group_readable = '',
  $ensure                          = present ) {

  if $cookie_authentication == '0' and $hashed_control_password == '' and $ensure != 'absent' {
    fail('You need to define the tor control password')
  }

  if $cookie_authentication == 0 and ($cookie_auth_file != '' or $cookie_auth_file_group_readable != '') {
    notice('You set a tor cookie authentication option, but do not have cookie_authentication on')
  }

  concat::fragment { '04.control':
    ensure  => $ensure,
    content => template('tor/torrc.control.erb'),
    owner   => 'debian-tor',
    group   => 'debian-tor',
    mode    => '0600',
    order   => 04,
    target  => $tor::daemon::config_file,
  }
}