# Generated by Chef

##
## ManageSieve specific settings
##

# Service definitions

<% if @services['managesieve-login'].kind_of?(Hash) and @services['managesieve-login'].length > 0 -%>
<%=  DovecotCookbook::Conf.service('managesieve-login', @services['managesieve-login']) %>
<% else -%>
service managesieve-login {
  #inet_listener sieve {
  #  port = 4190
  #}

  #inet_listener sieve_deprecated {
  #  port = 2000
  #}

  # Number of connections to handle before starting a new process. Typically
  # the only useful values are 0 (unlimited) or 1. 1 is more secure, but 0
  # is faster. <doc/wiki/LoginProcess.txt>
  #service_count = 1

  # Number of processes to always keep waiting for more connections.
  #process_min_avail = 0

  # If you set service_count=0, you probably need to grow this.
  #vsz_limit = 64M
}
<% end -%>

<% if @services['managesieve'].kind_of?(Hash) and @services['managesieve'].length > 0 -%>
<%=  DovecotCookbook::Conf.service('managesieve', @services['managesieve']) %>
<% else -%>
service managesieve {
  # Max. number of ManageSieve processes (connections)
  #process_count = 1024
}
<% end -%>

# Service configuration

<% if @protocols['sieve'].kind_of?(Hash) and @protocols['sieve'].length > 0 -%>
<%=  DovecotCookbook::Conf.protocol('sieve', @protocols['sieve']) %>
<% else -%>
protocol sieve {
  # Maximum ManageSieve command line length in bytes. ManageSieve usually does
  # not involve overly long command lines, so this setting will not normally
  # need adjustment 
  #managesieve_max_line_length = 65536

  # Maximum number of ManageSieve connections allowed for a user from each IP
  # address.
  # NOTE: The username is compared case-sensitively.
  #mail_max_userip_connections = 10

  # Space separated list of plugins to load (none known to be useful so far).
  # Do NOT try to load IMAP plugins here.
  #mail_plugins =

  # MANAGESIEVE logout format string:
  #  %i - total number of bytes read from client
  #  %o - total number of bytes sent to client
  #managesieve_logout_format = bytes=%i/%o

  # To fool ManageSieve clients that are focused on CMU's timesieved you can
  # specify the IMPLEMENTATION capability that Dovecot reports to clients.
  # For example: 'Cyrus timsieved v2.2.13' 
  #managesieve_implementation_string = Dovecot Pigeonhole

  # Explicitly specify the SIEVE and NOTIFY capability reported by the server
  # before login. If left unassigned these will be reported dynamically
  # according to what the Sieve interpreter supports by default (after login
  # this may differ depending on the user).
  #managesieve_sieve_capability = 
  #managesieve_notify_capability = 

  # The maximum number of compile errors that are returned to the client upon
  # script upload or script verification.	
  #managesieve_max_compile_errors = 5

  # Refer to 90-sieve.conf for script quota configuration and configuration of 
  # Sieve execution limits. 
}
<% end -%>
