metadata.rb 43 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381
  1. name 'dovecot'
  2. maintainer 'Onddo Labs, Sl.'
  3. maintainer_email 'team@onddo.com'
  4. license 'Apache 2.0'
  5. description 'Installs and configures Dovecot.'
  6. long_description IO.read(File.join(File.dirname(__FILE__), 'README.md'))
  7. version '0.1.0'
  8. supports 'centos', '>= 6.0'
  9. supports 'debian', '>= 7.0'
  10. supports 'ubuntu', '>= 12.04'
  11. recipe 'dovecot::default', 'Installs and configures Dovecot.'
  12. recipe 'dovecot::user', 'Creates the dovecot system user.'
  13. recipe 'dovecot::conf_files', 'Generates all the configuration files.'
  14. recipe 'dovecot::packages', 'Installs the required packages.'
  15. recipe 'dovecot::service', 'Configures the Dovecot service.'
  16. attribute 'dovecot/user',
  17. :display_name => 'dovecot user',
  18. :description => 'Dovector system user. Should no be changed.',
  19. :type => 'string',
  20. :required => 'optional',
  21. :default => 'dovecot'
  22. attribute 'dovecot/group',
  23. :display_name => 'dovecot group',
  24. :description => 'Dovector system group. Should no be changed.',
  25. :type => 'string',
  26. :required => 'optional',
  27. :default => 'dovecot'
  28. attribute 'dovecot/lib_path',
  29. :display_name => 'dovecot library path',
  30. :description => 'Dovector library path. Should no be changed.',
  31. :calculated => true,
  32. :type => 'string',
  33. :required => 'optional'
  34. attribute 'dovecot/conf_path',
  35. :display_name => 'dovecot configuration path',
  36. :description => 'Dovector configruration files path. Should no be changed.',
  37. :type => 'string',
  38. :required => 'optional',
  39. :default => '/etc/dovecot'
  40. attribute 'dovecot/conf_files_user',
  41. :display_name => 'dovecot configuration files user',
  42. :description => 'System user owner of configuration files.',
  43. :type => 'string',
  44. :required => 'optional',
  45. :default => 'root'
  46. attribute 'dovecot/conf_files_group',
  47. :display_name => 'dovecot configuration files group',
  48. :description => 'System group owner of configuration files.',
  49. :type => 'string',
  50. :required => 'optional',
  51. :default => 'node["dovecot"]["group"]'
  52. attribute 'dovecot/conf_files_mode',
  53. :display_name => 'dovecot configuration files mode',
  54. :description => 'Configuration files system file mode bits.',
  55. :type => 'string',
  56. :required => 'optional',
  57. :default => '00644'
  58. attribute 'dovecot/conf_files/core',
  59. :display_name => 'dovecot core configuration files',
  60. :description => 'Dovecot core configuration files list.',
  61. :type => 'array',
  62. :required => 'optional',
  63. :default => [
  64. 'conf.d/10-auth.conf',
  65. 'conf.d/10-director.conf',
  66. 'conf.d/10-logging.conf',
  67. 'conf.d/10-mail.conf',
  68. 'conf.d/10-master.conf',
  69. 'conf.d/10-ssl.conf',
  70. 'conf.d/10-tcpwrapper.conf',
  71. 'conf.d/15-lda.conf',
  72. 'conf.d/15-mailboxes.conf',
  73. 'conf.d/90-acl.conf',
  74. 'conf.d/90-plugin.conf',
  75. 'conf.d/90-quota.conf',
  76. 'conf.d/auth-checkpassword.conf.ext',
  77. 'conf.d/auth-deny.conf.ext',
  78. 'conf.d/auth-master.conf.ext',
  79. 'conf.d/auth-passwdfile.conf.ext',
  80. 'conf.d/auth-sql.conf.ext',
  81. 'conf.d/auth-static.conf.ext',
  82. 'conf.d/auth-system.conf.ext',
  83. 'conf.d/auth-vpopmail.conf.ext',
  84. 'dovecot.conf',
  85. 'dovecot-db.conf.ext',
  86. 'dovecot-dict-sql.conf.ext',
  87. 'dovecot-sql.conf.ext',
  88. ]
  89. attribute 'dovecot/conf_files/imap',
  90. :display_name => 'dovecot imap configuration files',
  91. :description => 'Dovecot IMAP configuration files list.',
  92. :type => 'array',
  93. :required => 'optional',
  94. :default => [
  95. 'conf.d/20-imap.conf',
  96. ]
  97. attribute 'dovecot/conf_files/pop3',
  98. :display_name => 'dovecot pop3 configuration files',
  99. :description => 'Dovecot POP3 configuration files list.',
  100. :type => 'array',
  101. :required => 'optional',
  102. :default => [
  103. 'conf.d/20-pop3.conf',
  104. ]
  105. attribute 'dovecot/conf_files/lmtp',
  106. :display_name => 'dovecot lmtp configuration files',
  107. :description => 'Dovecot LMTP configuration files list.',
  108. :type => 'array',
  109. :required => 'optional',
  110. :default => [
  111. 'conf.d/20-lmtp.conf',
  112. ]
  113. attribute 'dovecot/conf_files/sieve',
  114. :display_name => 'dovecot sieve configuration files',
  115. :description => 'Dovecot Sieve configuration files list.',
  116. :type => 'array',
  117. :required => 'optional',
  118. :default => [
  119. 'conf.d/20-managesieve.conf',
  120. 'conf.d/90-sieve.conf',
  121. ]
  122. attribute 'dovecot/conf_files/ldap',
  123. :display_name => 'dovecot ldap configuration files',
  124. :description => 'Dovecot LDAP configuration files list.',
  125. :type => 'array',
  126. :required => 'optional',
  127. :default => [
  128. 'dovecot-ldap.conf.ext',
  129. 'conf.d/auth-ldap.conf.ext',
  130. ]
  131. attribute 'dovecot/auth',
  132. :display_name => 'dovecot auth',
  133. :description => 'Dovecot Authentication Databases as a hash of hashes. Supported authdbs: checkpassword, deny, ldap, master, passwdfile, sql, system and vpopmail.',
  134. :type => 'string',
  135. :required => 'optional',
  136. :default => '{}'
  137. attribute 'dovecot/namespaces',
  138. :display_name => 'dovecot namespaces',
  139. :description => 'Dovecot Namespaces as an array of hashes.',
  140. :type => 'array',
  141. :required => 'optional',
  142. :default => []
  143. attribute 'dovecot/plugins',
  144. :display_name => 'dovecot plugins',
  145. :description => 'Dovecot Plugins configuration as a hash of hashes. Supported plugins: mail_log, acl and quota.',
  146. :type => 'string',
  147. :required => 'optional',
  148. :default => '{
  149. "sieve" => {
  150. "sieve" => "~/.dovecot.sieve",
  151. "sieve_dir" => "~/sieve",
  152. }
  153. }'
  154. attribute 'dovecot/protocolos',
  155. :display_name => 'dovecot protocols',
  156. :description => 'Dovecot Protocols configuration as a hash of hashes. Supported protocols: lda, imap, lmtp, sieve and pop3.',
  157. :type => 'string',
  158. :required => 'optional',
  159. :default => '{}'
  160. attribute 'dovecot/services',
  161. :display_name => 'dovecot services',
  162. :description => 'Dovecot Services configuration as a hash of hashes. Supported services: director, imap-login, pop3-login, lmtp, imap, pop3, auth, auth-worker, dict, tcpwrap, managesieve-login and managesieve.',
  163. :type => 'string',
  164. :required => 'optional',
  165. :default => '{}'
  166. grouping 'dovecot/conf',
  167. :title => 'dovecot conf',
  168. :description => 'Dovecot configuration values'
  169. attribute 'dovecot/conf/mail_plugins',
  170. :display_name => 'dovecot mail plugins',
  171. :description => 'Dovecot default enabled mail_plugins.',
  172. :type => 'array',
  173. :required => 'optional',
  174. :default => []
  175. #
  176. # dovecot.conf
  177. #
  178. attribute 'dovecot/conf/listen',
  179. :display_name => 'listen',
  180. :description => 'A comma separated list of IPs or hosts where to listen in for connections.',
  181. :type => 'string',
  182. :required => 'optional',
  183. :default => 'nil'
  184. attribute 'dovecot/conf/base_dir',
  185. :display_name => 'dovecot base dir',
  186. :description => 'Base directory where to store runtime data.',
  187. :type => 'string',
  188. :required => 'optional',
  189. :default => 'nil'
  190. attribute 'dovecot/conf/instance_name',
  191. :display_name => 'instance name',
  192. :description => 'Name of this instance. Used to prefix all Dovecot processes in ps output.',
  193. :type => 'string',
  194. :required => 'optional',
  195. :default => 'nil'
  196. attribute 'dovecot/conf/login_greeting',
  197. :display_name => 'login greeting',
  198. :description => 'Greeting message for clients.',
  199. :type => 'string',
  200. :required => 'optional',
  201. :default => 'nil'
  202. attribute 'dovecot/conf/login_trusted_networks',
  203. :display_name => 'login trusted networks',
  204. :description => 'Space separated list of trusted network ranges.',
  205. :type => 'string',
  206. :required => 'optional',
  207. :default => 'nil'
  208. attribute 'dovecot/conf/login_access_sockets',
  209. :display_name => 'login access sockets',
  210. :description => 'Space separated list of login access check sockets.',
  211. :type => 'string',
  212. :required => 'optional',
  213. :default => 'nil'
  214. attribute 'dovecot/conf/verbose_proctitle',
  215. :display_name => 'verbose proctitle',
  216. :description => 'Show more verbose process titles (in ps).',
  217. :type => 'string',
  218. :required => 'optional',
  219. :default => 'nil'
  220. attribute 'dovecot/conf/shutdown_clients',
  221. :display_name => 'shutdown clients',
  222. :description => 'Should all processes be killed when Dovecot master process shuts down.',
  223. :type => 'string',
  224. :required => 'optional',
  225. :default => 'nil'
  226. attribute 'dovecot/conf/doveadm_worker_count',
  227. :display_name => 'doveadm worker count',
  228. :description => 'If non-zero, run mail commands via this many connections to doveadm server.',
  229. :type => 'string',
  230. :required => 'optional',
  231. :default => 'nil'
  232. attribute 'dovecot/conf/doveadm_socket_path',
  233. :display_name => 'doveadm socket path',
  234. :description => 'UNIX socket or host:port used for connecting to doveadm server.',
  235. :type => 'string',
  236. :required => 'optional',
  237. :default => 'nil'
  238. attribute 'dovecot/conf/import_environment',
  239. :display_name => 'import environment',
  240. :description => 'Space separated list of environment variables that are preserved on Dovecot startup and his childs.',
  241. :type => 'string',
  242. :required => 'optional',
  243. :default => 'nil'
  244. attribute 'dovecot/conf/dict',
  245. :display_name => 'dict',
  246. :description => 'Dictionary server settings as a hash.',
  247. :type => 'string',
  248. :required => 'optional',
  249. :default => 'nil'
  250. #
  251. # conf.d/10-auth.conf
  252. #
  253. attribute 'dovecot/conf/disable_plaintext_auth',
  254. :display_name => 'disable plaintext auth',
  255. :description => 'Disable LOGIN command and all other plaintext authentications unless SSL/TLS is used.',
  256. :type => 'string',
  257. :required => 'optional',
  258. :default => 'nil'
  259. attribute 'dovecot/conf/auth_cache_size',
  260. :display_name => 'auth cache size',
  261. :description => 'Authentication cache size (e.g. 10M). 0 means it\'s disabled.',
  262. :type => 'string',
  263. :required => 'optional',
  264. :default => 'nil'
  265. attribute 'dovecot/conf/auth_cache_ttl',
  266. :display_name => 'auth cache ttl',
  267. :description => 'Time to live for cached data.',
  268. :type => 'string',
  269. :required => 'optional',
  270. :default => 'nil'
  271. attribute 'dovecot/conf/auth_cache_negative_ttl',
  272. :display_name => 'auth cache negative ttl',
  273. :description => 'TTL for negative hits (user not found, password mismatch).',
  274. :type => 'string',
  275. :required => 'optional',
  276. :default => 'nil'
  277. attribute 'dovecot/conf/auth_realms',
  278. :display_name => 'disable plaintext auth',
  279. :description => 'Space separated list (or array) of realms for SASL authentication mechanisms that need them.',
  280. :type => 'string',
  281. :required => 'optional',
  282. :default => 'nil'
  283. attribute 'dovecot/conf/auth_default_realm',
  284. :display_name => 'auth default realm',
  285. :description => 'Default realm/domain to use if none was specified.',
  286. :type => 'string',
  287. :required => 'optional',
  288. :default => 'nil'
  289. attribute 'dovecot/conf/auth_username_chars',
  290. :display_name => 'auth username chars',
  291. :description => 'List of allowed characters in username.',
  292. :type => 'string',
  293. :required => 'optional',
  294. :default => 'nil'
  295. attribute 'dovecot/conf/auth_username_translation',
  296. :display_name => 'auth username translation',
  297. :description => 'Username character translations before it\'s looked up from databases.',
  298. :type => 'string',
  299. :required => 'optional',
  300. :default => 'nil'
  301. attribute 'dovecot/conf/auth_username_format',
  302. :display_name => 'auth username format',
  303. :description => 'Username formatting before it\'s looked up from databases.',
  304. :type => 'string',
  305. :required => 'optional',
  306. :default => 'nil'
  307. attribute 'dovecot/conf/auth_master_user_separator',
  308. :display_name => 'auth master user separator',
  309. :description => 'If you want to allow master users to log in by specifying the master username within the normal username string, you can specify the separator character here (format: <username><separator><master username>).',
  310. :type => 'string',
  311. :required => 'optional',
  312. :default => 'nil'
  313. attribute 'dovecot/conf/auth_anonymous_username',
  314. :display_name => 'auth anonymous username',
  315. :description => 'Username to use for users logging in with ANONYMOUS SASL mechanism.',
  316. :type => 'string',
  317. :required => 'optional',
  318. :default => 'nil'
  319. attribute 'dovecot/conf/auth_worker_max_count',
  320. :display_name => 'auth worker max count',
  321. :description => 'Maximum number of dovecot-auth worker processes.',
  322. :type => 'string',
  323. :required => 'optional',
  324. :default => 'nil'
  325. attribute 'dovecot/conf/auth_gssapi_hostname',
  326. :display_name => 'auth gssapi hostname',
  327. :description => 'Host name to use in GSSAPI principal names.',
  328. :type => 'string',
  329. :required => 'optional',
  330. :default => 'nil'
  331. attribute 'dovecot/conf/auth_krb5_keytab',
  332. :display_name => 'auth krb5 keytab',
  333. :description => 'Kerberos keytab to use for the GSSAPI mechanism.',
  334. :type => 'string',
  335. :required => 'optional',
  336. :default => 'nil'
  337. attribute 'dovecot/conf/auth_use_winbind',
  338. :display_name => 'auth use winbind',
  339. :description => 'Do NTLM and GSS-SPNEGO authentication using Samba\'s winbind daemon and ntlm_auth helper.',
  340. :type => 'string',
  341. :required => 'optional',
  342. :default => 'nil'
  343. attribute 'dovecot/conf/auth_winbind_helper_path',
  344. :display_name => 'auth winbind helper path',
  345. :description => 'Path for Samba\'s ntlm_auth helper binary.',
  346. :type => 'string',
  347. :required => 'optional',
  348. :default => 'nil'
  349. attribute 'dovecot/conf/auth_failure_delay',
  350. :display_name => 'auth failure delay',
  351. :description => 'Time to delay before replying to failed authentications.',
  352. :type => 'string',
  353. :required => 'optional',
  354. :default => 'nil'
  355. attribute 'dovecot/conf/auth_ssl_require_client_cert',
  356. :display_name => 'auth ssl require client cert',
  357. :description => 'Take the username from client\'s SSL certificate, using X509_NAME_get_text_by_NID() which returns the subject\'s DN\'s CommonName.',
  358. :type => 'string',
  359. :required => 'optional',
  360. :default => 'nil'
  361. attribute 'dovecot/conf/auth_mechanisms',
  362. :display_name => 'auth mechanisms',
  363. :description => 'Space separated list of wanted authentication mechanisms: plain, login, digest-md5, cram-md5, ntlm, rpa, apop, anonymous, gssapi, otp, skey, gss-spnego',
  364. :type => 'string',
  365. :required => 'optional',
  366. :default => '"plain"'
  367. #
  368. # conf.d/10-director.conf
  369. #
  370. attribute 'dovecot/conf/director_servers',
  371. :display_name => 'director servers',
  372. :description => 'List of IPs or hostnames to all director servers, including ourself (as a string or as an array).',
  373. :type => 'string',
  374. :required => 'optional',
  375. :default => 'nil'
  376. attribute 'dovecot/conf/director_mail_servers',
  377. :display_name => 'director mail servers',
  378. :description => 'List of IPs or hostnames to all backend mail servers.',
  379. :type => 'string',
  380. :required => 'optional',
  381. :default => 'nil'
  382. attribute 'dovecot/conf/director_user_expire',
  383. :display_name => 'director_user_expire',
  384. :description => 'How long to redirect users to a specific server after it no longer has any connections.',
  385. :type => 'string',
  386. :required => 'optional',
  387. :default => 'nil'
  388. attribute 'dovecot/conf/director_doveadm_port',
  389. :display_name => 'director doveadm port',
  390. :description => 'TCP/IP port that accepts doveadm connections (instead of director connections).',
  391. :type => 'string',
  392. :required => 'optional',
  393. :default => 'nil'
  394. #
  395. # conf.d/10-logging.conf
  396. #
  397. attribute 'dovecot/conf/log_path',
  398. :display_name => 'path',
  399. :description => 'Log file to use for error messages. "syslog" logs to syslog, /dev/stderr logs to stderr.',
  400. :type => 'string',
  401. :required => 'optional',
  402. :default => 'nil'
  403. attribute 'dovecot/conf/info_log_path',
  404. :display_name => 'info log path',
  405. :description => 'Log file to use for informational messages. Defaults to log_path.',
  406. :type => 'string',
  407. :required => 'optional',
  408. :default => 'nil'
  409. attribute 'dovecot/conf/debug_log_path',
  410. :display_name => 'debug log path',
  411. :description => 'Log file to use for debug messages. Defaults to info_log_path.',
  412. :type => 'string',
  413. :required => 'optional',
  414. :default => 'nil'
  415. attribute 'dovecot/conf/syslog_facility',
  416. :display_name => 'syslog facility',
  417. :description => 'Syslog facility to use if you\'re logging to syslog.',
  418. :type => 'string',
  419. :required => 'optional',
  420. :default => 'nil'
  421. attribute 'dovecot/conf/auth_verbose',
  422. :display_name => 'auth verbose',
  423. :description => 'Log unsuccessful authentication attempts and the reasons why they failed.',
  424. :type => 'string',
  425. :required => 'optional',
  426. :default => 'nil'
  427. attribute 'dovecot/conf/auth_verbose_passwords',
  428. :display_name => 'auth verbose passwords',
  429. :description => 'In case of password mismatches, log the attempted password.',
  430. :type => 'string',
  431. :required => 'optional',
  432. :default => 'nil'
  433. attribute 'dovecot/conf/auth_debug',
  434. :display_name => 'auth debug',
  435. :description => 'Even more verbose logging for debugging purposes.',
  436. :type => 'string',
  437. :required => 'optional',
  438. :default => 'nil'
  439. attribute 'dovecot/conf/auth_debug_passwords',
  440. :display_name => 'auth debug passwords',
  441. :description => 'In case of password mismatches, log the passwords and used scheme so the problem can be debugged.',
  442. :type => 'string',
  443. :required => 'optional',
  444. :default => 'nil'
  445. attribute 'dovecot/conf/mail_debug',
  446. :display_name => 'mail debug',
  447. :description => 'Enable mail process debugging.',
  448. :type => 'string',
  449. :required => 'optional',
  450. :default => 'nil'
  451. attribute 'dovecot/conf/verbose_ssl',
  452. :display_name => 'verbose ssl',
  453. :description => 'Show protocol level SSL errors.',
  454. :type => 'string',
  455. :required => 'optional',
  456. :default => 'nil'
  457. attribute 'dovecot/conf/log_timestamp',
  458. :display_name => 'log timestamp',
  459. :description => 'Prefix for each line written to log file.',
  460. :type => 'string',
  461. :required => 'optional',
  462. :default => 'nil'
  463. attribute 'dovecot/conf/login_log_format_elements',
  464. :display_name => 'login log format elements',
  465. :description => 'Space-separated list (or array) of elements we want to log.',
  466. :type => 'string',
  467. :required => 'optional',
  468. :default => 'nil'
  469. attribute 'dovecot/conf/login_log_format',
  470. :display_name => 'login log format',
  471. :description => 'Login log format.',
  472. :type => 'string',
  473. :required => 'optional',
  474. :default => 'nil'
  475. attribute 'dovecot/conf/mail_log_prefix',
  476. :display_name => 'mail log prefix',
  477. :description => 'Log prefix for mail processes.',
  478. :type => 'string',
  479. :required => 'optional',
  480. :default => 'nil'
  481. attribute 'dovecot/conf/deliver_log_format',
  482. :display_name => 'deliver log format',
  483. :description => 'Format to use for logging mail deliveries.',
  484. :type => 'string',
  485. :required => 'optional',
  486. :default => 'nil'
  487. #
  488. # conf.d/10-mail.conf
  489. #
  490. attribute 'dovecot/conf/mail_location',
  491. :display_name => 'mail location',
  492. :description => 'Location for user\'s mailboxes.',
  493. :type => 'string',
  494. :required => 'optional',
  495. :default => 'nil'
  496. attribute 'dovecot/conf/mail_uid',
  497. :display_name => 'mail uid',
  498. :description => 'System user used to access mails.',
  499. :type => 'string',
  500. :required => 'optional',
  501. :default => 'nil'
  502. attribute 'dovecot/conf/mail_gid',
  503. :display_name => 'mail gid',
  504. :description => 'System group used to access mails.',
  505. :type => 'string',
  506. :required => 'optional',
  507. :default => 'nil'
  508. attribute 'dovecot/conf/mail_privileged_group',
  509. :display_name => 'mail privileged group',
  510. :description => 'Group to enable temporarily for privileged operations.',
  511. :type => 'string',
  512. :required => 'optional',
  513. :default => 'nil'
  514. attribute 'dovecot/conf/mail_access_groups',
  515. :display_name => 'mail access groups',
  516. :description => 'Grant access to these supplementary groups for mail processes.',
  517. :type => 'string',
  518. :required => 'optional',
  519. :default => 'nil'
  520. attribute 'dovecot/conf/mail_full_filesystem_access',
  521. :display_name => 'mail full filesystem access',
  522. :description => 'Allow full filesystem access to clients.',
  523. :type => 'string',
  524. :required => 'optional',
  525. :default => 'nil'
  526. attribute 'dovecot/conf/mmap_disable',
  527. :display_name => 'mmap disable',
  528. :description => 'Don\'t use mmap() at all.',
  529. :type => 'string',
  530. :required => 'optional',
  531. :default => 'nil'
  532. attribute 'dovecot/conf/dotlock_use_excl',
  533. :display_name => 'dotlock use excl',
  534. :description => 'Rely on O_EXCL to work when creating dotlock files.',
  535. :type => 'string',
  536. :required => 'optional',
  537. :default => 'nil'
  538. attribute 'dovecot/conf/mail_fsync',
  539. :display_name => 'mail fsync',
  540. :description => 'When to use fsync() or fdatasync() calls: optimized, always or never',
  541. :type => 'string',
  542. :required => 'optional',
  543. :default => 'nil'
  544. attribute 'dovecot/conf/mail_nfs_storage',
  545. :display_name => 'mail nfs storage',
  546. :description => 'Mail storage exists in NFS.',
  547. :type => 'string',
  548. :required => 'optional',
  549. :default => 'nil'
  550. attribute 'dovecot/conf/mail_nfs_index',
  551. :display_name => 'mail nfs index',
  552. :description => 'Mail index files also exist in NFS.',
  553. :type => 'string',
  554. :required => 'optional',
  555. :default => 'nil'
  556. attribute 'dovecot/conf/lock_method',
  557. :display_name => 'lock method',
  558. :description => 'Locking method for index files: fcntl, flock or dotlock.',
  559. :type => 'string',
  560. :required => 'optional',
  561. :default => 'nil'
  562. attribute 'dovecot/conf/mail_temp_dir',
  563. :display_name => 'mail temp dir',
  564. :description => 'Directory in which LDA/LMTP temporarily stores incoming mails >128 kB.',
  565. :type => 'string',
  566. :required => 'optional',
  567. :default => 'nil'
  568. attribute 'dovecot/conf/first_valid_uid',
  569. :display_name => 'first valid uid',
  570. :description => 'Valid UID range for users, defaults to 500 and above.',
  571. :type => 'string',
  572. :required => 'optional',
  573. :default => 'nil'
  574. attribute 'dovecot/conf/last_valid_uid',
  575. :display_name => 'last valid uid',
  576. :description => 'Valid UID range for users, defaults to 500 and above.',
  577. :type => 'string',
  578. :required => 'optional',
  579. :default => 'nil'
  580. attribute 'dovecot/conf/first_valid_gid',
  581. :display_name => 'first valid gid',
  582. :description => 'Valid GID range for users, defaults to non-root/wheel.',
  583. :type => 'string',
  584. :required => 'optional',
  585. :default => 'nil'
  586. attribute 'dovecot/conf/last_valid_gid',
  587. :display_name => 'last valid gid',
  588. :description => 'Valid GID range for users, defaults to non-root/wheel.',
  589. :type => 'string',
  590. :required => 'optional',
  591. :default => 'nil'
  592. attribute 'dovecot/conf/mail_max_keyword_length',
  593. :display_name => 'mail max keyword length',
  594. :description => 'Maximum allowed length for mail keyword name.',
  595. :type => 'string',
  596. :required => 'optional',
  597. :default => 'nil'
  598. attribute 'dovecot/conf/valid_chroot_dirs',
  599. :display_name => 'valid chroot dirs',
  600. :description => '\':\' separated list of directories under which chrooting is allowed for mail processes.',
  601. :type => 'string',
  602. :required => 'optional',
  603. :default => 'nil'
  604. attribute 'dovecot/conf/mail_chroot',
  605. :display_name => 'mail chroot',
  606. :description => 'Default chroot directory for mail processes.',
  607. :type => 'string',
  608. :required => 'optional',
  609. :default => 'nil'
  610. attribute 'dovecot/conf/auth_socket_path',
  611. :display_name => 'auth socket path',
  612. :description => 'UNIX socket path to master authentication server to find users.',
  613. :type => 'string',
  614. :required => 'optional',
  615. :default => 'nil'
  616. attribute 'dovecot/conf/mail_plugin_dir',
  617. :display_name => 'mail plugin dir',
  618. :description => 'Directory where to look up mail plugins.',
  619. :type => 'string',
  620. :required => 'optional',
  621. :default => 'nil'
  622. attribute 'dovecot/conf/mail_cache_min_mail_count',
  623. :display_name => 'mail cache min mail count',
  624. :description => 'The minimum number of mails in a mailbox before updates are done to cache file.',
  625. :type => 'string',
  626. :required => 'optional',
  627. :default => 'nil'
  628. attribute 'dovecot/conf/mailbox_idle_check_interval',
  629. :display_name => 'mailbox idle check interval',
  630. :description => 'When IDLE command is running, mailbox is checked once in a while to see if there are any new mails or other changes.',
  631. :type => 'string',
  632. :required => 'optional',
  633. :default => 'nil'
  634. attribute 'dovecot/conf/mail_save_crlf',
  635. :display_name => 'mail save crlf',
  636. :description => 'Save mails with CR+LF instead of plain LF.',
  637. :type => 'string',
  638. :required => 'optional',
  639. :default => 'nil'
  640. attribute 'dovecot/conf/maildir_stat_dirs',
  641. :display_name => 'maildir stat dirs',
  642. :description => 'By default LIST command returns all entries in maildir beginning with a dot.',
  643. :type => 'string',
  644. :required => 'optional',
  645. :default => 'nil'
  646. attribute 'dovecot/conf/maildir_copy_with_hardlinks',
  647. :display_name => 'maildir copy with hardlinks',
  648. :description => 'When copying a message, do it with hard links whenever possible.',
  649. :type => 'string',
  650. :required => 'optional',
  651. :default => 'nil'
  652. attribute 'dovecot/conf/maildir_very_dirty_syncs',
  653. :display_name => 'maildir very dirty syncs',
  654. :description => 'Assume Dovecot is the only MUA accessing Maildir.',
  655. :type => 'string',
  656. :required => 'optional',
  657. :default => 'nil'
  658. attribute 'dovecot/conf/mbox_read_locks',
  659. :display_name => 'mbox read locks',
  660. :description => 'Which read locking methods to use for locking mbox: dotlock, dotlock_try, fcntl, flock or lockfyy',
  661. :type => 'string',
  662. :required => 'optional',
  663. :default => 'nil'
  664. attribute 'dovecot/conf/mbox_write_locks',
  665. :display_name => 'mbox write locks',
  666. :description => 'Which write locking methods to use for locking mbox: dotlock, dotlock_try, fcntl, flock or lockfyy',
  667. :type => 'string',
  668. :required => 'optional',
  669. :default => 'nil'
  670. attribute 'dovecot/conf/mbox_lock_timeout',
  671. :display_name => 'mbox lock timeout',
  672. :description => 'Maximum time to wait for lock (all of them) before aborting.',
  673. :type => 'string',
  674. :required => 'optional',
  675. :default => 'nil'
  676. attribute 'dovecot/conf/mbox_dotlock_change_timeout',
  677. :display_name => 'mbox dotlock change timeout',
  678. :description => 'If dotlock exists but the mailbox isn\'t modified in any way, override the lock file after this much time.',
  679. :type => 'string',
  680. :required => 'optional',
  681. :default => 'nil'
  682. attribute 'dovecot/conf/mbox_dirty_syncs',
  683. :display_name => 'mbox dirty syncs',
  684. :description => 'When mbox changes unexpectedly simply read the new mails but still safely fallbacks to re-reading the whole mbox file whenever something in mbox isn\'t how it\'s expected to be.',
  685. :type => 'string',
  686. :required => 'optional',
  687. :default => 'nil'
  688. attribute 'dovecot/conf/mbox_very_dirty_syncs',
  689. :display_name => 'mbox very dirty syncs',
  690. :description => 'Like mbox_dirty_syncs, but don\'t do full syncs even with SELECT, EXAMINE, EXPUNGE or CHECK commands.',
  691. :type => 'string',
  692. :required => 'optional',
  693. :default => 'nil'
  694. attribute 'dovecot/conf/mbox_lazy_writes',
  695. :display_name => 'mbox lazy writes',
  696. :description => 'Delay writing mbox headers until doing a full write sync (EXPUNGE and CHECK commands and when closing the mailbox).',
  697. :type => 'string',
  698. :required => 'optional',
  699. :default => 'nil'
  700. attribute 'dovecot/conf/mbox_min_index_size',
  701. :display_name => 'mbox min index size',
  702. :description => 'If mbox size is smaller than this (e.g. 100k), don\'t write index files.',
  703. :type => 'string',
  704. :required => 'optional',
  705. :default => 'nil'
  706. attribute 'dovecot/conf/mdbox_rotate_size',
  707. :display_name => 'mdbox rotate size',
  708. :description => 'Maximum dbox file size until it\'s rotated.',
  709. :type => 'string',
  710. :required => 'optional',
  711. :default => 'nil'
  712. attribute 'dovecot/conf/mdbox_rotate_interval',
  713. :display_name => 'mdbox rotate interval',
  714. :description => 'Maximum dbox file age until it\'s rotated.',
  715. :type => 'string',
  716. :required => 'optional',
  717. :default => 'nil'
  718. attribute 'dovecot/conf/mdbox_preallocate_space',
  719. :display_name => 'mdbox preallocate space',
  720. :description => 'When creating new mdbox files, immediately preallocate their size to mdbox_rotate_size.',
  721. :type => 'string',
  722. :required => 'optional',
  723. :default => 'nil'
  724. attribute 'dovecot/conf/mail_attachment_min_size',
  725. :display_name => 'mail attachment min size',
  726. :description => 'Attachments smaller than this aren\'t saved externally.',
  727. :type => 'string',
  728. :required => 'optional',
  729. :default => 'nil'
  730. attribute 'dovecot/conf/mail_attachment_fs',
  731. :display_name => 'mail attachment fs',
  732. :description => 'Filesystem backend to use for saving attachments: posix, sis posix or sis-queue posix.',
  733. :type => 'string',
  734. :required => 'optional',
  735. :default => 'nil'
  736. attribute 'dovecot/conf/mail_attachment_hash',
  737. :display_name => 'mail attachment hash',
  738. :description => 'Hash format to use in attachment filenames.',
  739. :type => 'string',
  740. :required => 'optional',
  741. :default => 'nil'
  742. #
  743. # conf.d/10-master.conf
  744. #
  745. attribute 'dovecot/conf/default_process_limit',
  746. :display_name => 'default process limit',
  747. :description => 'Default process limit.',
  748. :type => 'string',
  749. :required => 'optional',
  750. :default => 'nil'
  751. attribute 'dovecot/conf/default_client_limit',
  752. :display_name => 'default client limit',
  753. :description => 'Default client limit.',
  754. :type => 'string',
  755. :required => 'optional',
  756. :default => 'nil'
  757. attribute 'dovecot/conf/default_vsz_limit',
  758. :display_name => 'default vsz limit',
  759. :description => 'Default VSZ (virtual memory size) limit for service processes.',
  760. :type => 'string',
  761. :required => 'optional',
  762. :default => 'nil'
  763. attribute 'dovecot/conf/default_login_user',
  764. :display_name => 'default login user',
  765. :description => 'Login user is internally used by login processes.',
  766. :type => 'string',
  767. :required => 'optional',
  768. :default => 'nil'
  769. attribute 'dovecot/conf/default_internal_user',
  770. :display_name => 'default internal user',
  771. :description => 'Internal user is used by unprivileged processes.',
  772. :type => 'string',
  773. :required => 'optional',
  774. :default => 'nil'
  775. #
  776. # conf.d/10-ssl.conf
  777. #
  778. attribute 'dovecot/conf/ssl',
  779. :display_name => 'ssl',
  780. :description => 'SSL/TLS support: true or false',
  781. :type => 'string',
  782. :required => 'optional',
  783. :default => 'nil'
  784. attribute 'dovecot/conf/ssl_cert',
  785. :display_name => 'ssl cert',
  786. :description => 'PEM encoded X.509 SSL/TLS certificate.',
  787. :calculated => true,
  788. :type => 'string',
  789. :required => 'optional'
  790. attribute 'dovecot/conf/ssl_key',
  791. :display_name => 'ssl key',
  792. :description => 'PEM encoded X.509 SSL/TLS private key.',
  793. :calculated => true,
  794. :type => 'string',
  795. :required => 'optional'
  796. attribute 'dovecot/conf/ssl_key_password',
  797. :display_name => 'ssl key password',
  798. :description => 'If key file is password protected, give the password here.',
  799. :type => 'string',
  800. :required => 'optional',
  801. :default => 'nil'
  802. attribute 'dovecot/conf/ssl_ca',
  803. :display_name => 'ssl ca',
  804. :description => 'PEM encoded trusted certificate authority.',
  805. :type => 'string',
  806. :required => 'optional',
  807. :default => 'nil'
  808. attribute 'dovecot/conf/ssl_verify_client_cert',
  809. :display_name => 'ssl verify client cert',
  810. :description => 'Request client to send a certificate.',
  811. :type => 'string',
  812. :required => 'optional',
  813. :default => 'nil'
  814. attribute 'dovecot/conf/ssl_cert_username_field',
  815. :display_name => 'ssl cert username field',
  816. :description => 'Which field from certificate to use for username.',
  817. :type => 'string',
  818. :required => 'optional',
  819. :default => 'nil'
  820. attribute 'dovecot/conf/ssl_parameters_regenerate',
  821. :display_name => 'ssl parameters regenerate',
  822. :description => 'How often to regenerate the SSL parameters file.',
  823. :type => 'string',
  824. :required => 'optional',
  825. :default => 'nil'
  826. attribute 'dovecot/conf/ssl_cipher_list',
  827. :display_name => 'ssl cipher list',
  828. :description => 'SSL ciphers to use',
  829. :type => 'string',
  830. :required => 'optional',
  831. :default => 'nil'
  832. #
  833. # conf.d/10-tcpwrapper.conf
  834. #
  835. attribute 'dovecot/conf/login_access_sockets',
  836. :display_name => 'login access sockets',
  837. :description => 'login access sockets',
  838. :type => 'string',
  839. :required => 'optional',
  840. :default => 'nil'
  841. #
  842. # conf.d/15-lda.conf
  843. #
  844. attribute 'dovecot/conf/postmaster_address',
  845. :display_name => 'postmaster address',
  846. :description => 'Address to use when sending rejection mails.',
  847. :type => 'string',
  848. :required => 'optional',
  849. :default => 'nil'
  850. attribute 'dovecot/conf/hostname',
  851. :display_name => 'hostname',
  852. :description => 'Hostname to use in various parts of sent mails, eg. in Message-Id.',
  853. :type => 'string',
  854. :required => 'optional',
  855. :default => 'nil'
  856. attribute 'dovecot/conf/quota_full_tempfail',
  857. :display_name => 'quota full tempfail',
  858. :description => 'If user is over quota, return with temporary failure instead of bouncing the mail.',
  859. :type => 'string',
  860. :required => 'optional',
  861. :default => 'nil'
  862. attribute 'dovecot/conf/sendmail_path',
  863. :display_name => 'sendmail path',
  864. :description => 'Binary to use for sending mails.',
  865. :type => 'string',
  866. :required => 'optional',
  867. :default => 'nil'
  868. attribute 'dovecot/conf/submission_host',
  869. :display_name => 'submission host',
  870. :description => 'If non-empty, send mails via this SMTP host[:port] instead of sendmail.',
  871. :type => 'string',
  872. :required => 'optional',
  873. :default => 'nil'
  874. attribute 'dovecot/conf/rejection_subject',
  875. :display_name => 'rejection subject',
  876. :description => 'Subject: header to use for rejection mails.',
  877. :type => 'string',
  878. :required => 'optional',
  879. :default => 'nil'
  880. attribute 'dovecot/conf/rejection_reason',
  881. :display_name => 'rejection reason',
  882. :description => 'Human readable error message for rejection mails.',
  883. :type => 'string',
  884. :required => 'optional',
  885. :default => 'nil'
  886. attribute 'dovecot/conf/recipient_delimiter',
  887. :display_name => 'recipient delimiter',
  888. :description => 'Delimiter character between local-part and detail in email address.',
  889. :type => 'string',
  890. :required => 'optional',
  891. :default => 'nil'
  892. attribute 'dovecot/conf/lda_original_recipient_header',
  893. :display_name => 'lda original recipient header',
  894. :description => 'Header where the original recipient address (SMTP\'s RCPT TO: address) is taken from if not available elsewhere.',
  895. :type => 'string',
  896. :required => 'optional',
  897. :default => 'nil'
  898. attribute 'dovecot/conf/lda_mailbox_autocreate',
  899. :display_name => 'lda mailbox autocreate',
  900. :description => 'Should saving a mail to a nonexistent mailbox automatically create it?',
  901. :type => 'string',
  902. :required => 'optional',
  903. :default => 'nil'
  904. attribute 'dovecot/conf/lda_mailbox_autosubscribe',
  905. :display_name => 'lda mailbox autosubscribe',
  906. :description => 'Should automatically created mailboxes be also automatically subscribed?',
  907. :type => 'string',
  908. :required => 'optional',
  909. :default => 'nil'
  910. #
  911. # conf.d/20-lmtp.conf
  912. #
  913. attribute 'dovecot/conf/lmtp_proxy',
  914. :display_name => 'lmtp proxy',
  915. :description => 'Support proxying to other LMTP/SMTP servers by performing passdb lookups.',
  916. :type => 'string',
  917. :required => 'optional',
  918. :default => 'nil'
  919. attribute 'dovecot/conf/lmtp_save_to_detail_mailbox',
  920. :display_name => 'lmtp save to detail mailbox',
  921. :description => 'When recipient address includes the detail (e.g. user+detail), try to save the mail to the detail mailbox.',
  922. :type => 'string',
  923. :required => 'optional',
  924. :default => 'nil'
  925. #
  926. # dovecot-db.conf.ext
  927. #
  928. attribute 'dovecot/conf/db',
  929. :display_name => 'berkeley db',
  930. :description => 'DB_CONFIG for Berkeley DB as a hash.',
  931. :type => 'string',
  932. :required => 'optional',
  933. :default => 'nil'
  934. #
  935. # conf-dovecot-dict-sql.rb
  936. #
  937. grouping 'dovecot/conf/dict_sql',
  938. :title => 'dict sql config',
  939. :description => 'Dovecot dict sql configuration'
  940. attribute 'dovecot/conf/dict_sql/connect',
  941. :display_name => 'dict sql connect',
  942. :description => 'Dict sql connect configuration as a string or an array.',
  943. :type => 'string',
  944. :required => 'optional',
  945. :default => 'nil'
  946. attribute 'dovecot/conf/dict_sql/maps',
  947. :display_name => 'dict sql maps',
  948. :description => 'Dict sql database tables maps.',
  949. :type => 'string',
  950. :required => 'optional',
  951. :default => 'nil'
  952. #
  953. # dovecot-ldap.conf.ext
  954. #
  955. grouping 'dovecot/conf/ldap',
  956. :title => 'ldap config',
  957. :description => 'Dovecot LDAP Authentication Database configuration'
  958. attribute 'dovecot/conf/ldap/hosts',
  959. :display_name => 'ldap hosts',
  960. :description => 'Space separated list or array of LDAP hosts to use.',
  961. :type => 'string',
  962. :required => 'optional',
  963. :default => 'nil'
  964. attribute 'dovecot/conf/ldap/uris',
  965. :display_name => 'ldap uris',
  966. :description => 'LDAP URIs to use.',
  967. :type => 'string',
  968. :required => 'optional',
  969. :default => 'nil'
  970. attribute 'dovecot/conf/ldap/dn',
  971. :display_name => 'ldap dn',
  972. :description => 'Distinguished Name, the username used to login to the LDAP server.',
  973. :type => 'string',
  974. :required => 'optional',
  975. :default => 'nil'
  976. attribute 'dovecot/conf/ldap/dnpass',
  977. :display_name => 'ldap dnpass',
  978. :description => 'Password for LDAP server, if dn is specified.',
  979. :type => 'string',
  980. :required => 'optional',
  981. :default => 'nil'
  982. attribute 'dovecot/conf/ldap/sasl_bind',
  983. :display_name => 'ldap sasl bind',
  984. :description => 'Use SASL binding instead of the simple binding.',
  985. :type => 'string',
  986. :required => 'optional',
  987. :default => 'nil'
  988. attribute 'dovecot/conf/ldap/sasl_mech',
  989. :display_name => 'ldap sasl mech',
  990. :description => 'SASL mechanism name to use.',
  991. :type => 'string',
  992. :required => 'optional',
  993. :default => 'nil'
  994. attribute 'dovecot/conf/ldap/sasl_realm',
  995. :display_name => 'ldap sasl realm',
  996. :description => 'SASL realm to use.',
  997. :type => 'string',
  998. :required => 'optional',
  999. :default => 'nil'
  1000. attribute 'dovecot/conf/ldap/sasl_authz_id',
  1001. :display_name => 'ldap sasl authz id',
  1002. :description => 'SASL authorization ID, ie. the dnpass is for this "master user", but the dn is still the logged in user.',
  1003. :type => 'string',
  1004. :required => 'optional',
  1005. :default => 'nil'
  1006. attribute 'dovecot/conf/ldap/tls',
  1007. :display_name => 'ldap tls',
  1008. :description => 'Use TLS to connect to the LDAP server.',
  1009. :type => 'string',
  1010. :required => 'optional',
  1011. :default => 'nil'
  1012. attribute 'dovecot/conf/ldap/tls_ca_cert_file',
  1013. :display_name => 'ldap tls ca cert file',
  1014. :description => 'TLS options, currently supported only with OpenLDAP.',
  1015. :type => 'string',
  1016. :required => 'optional',
  1017. :default => 'nil'
  1018. attribute 'dovecot/conf/ldap/tls_ca_cert_file',
  1019. :display_name => 'ldap tls ca cert file',
  1020. :description => 'TLS options, currently supported only with OpenLDAP.',
  1021. :type => 'string',
  1022. :required => 'optional',
  1023. :default => 'nil'
  1024. attribute 'dovecot/conf/ldap/tls_ca_cert_dir',
  1025. :display_name => 'ldap tls ca cert dir',
  1026. :description => 'TLS options, currently supported only with OpenLDAP.',
  1027. :type => 'string',
  1028. :required => 'optional',
  1029. :default => 'nil'
  1030. attribute 'dovecot/conf/ldap/tls_cipher_suite',
  1031. :display_name => 'ldap tls cipher suite',
  1032. :description => 'TLS options, currently supported only with OpenLDAP.',
  1033. :type => 'string',
  1034. :required => 'optional',
  1035. :default => 'nil'
  1036. attribute 'dovecot/conf/ldap/tls_cert_file',
  1037. :display_name => 'ldap tls cert file',
  1038. :description => 'TLS cert/key is used only if LDAP server requires a client certificate.',
  1039. :type => 'string',
  1040. :required => 'optional',
  1041. :default => 'nil'
  1042. attribute 'dovecot/conf/ldap/tls_key_file',
  1043. :display_name => 'ldap tls key file',
  1044. :description => 'TLS cert/key is used only if LDAP server requires a client certificate.',
  1045. :type => 'string',
  1046. :required => 'optional',
  1047. :default => 'nil'
  1048. attribute 'dovecot/conf/ldap/tls_require_cert',
  1049. :display_name => 'ldap tls require cert',
  1050. :description => 'Valid values: never, hard, demand, allow, try',
  1051. :type => 'string',
  1052. :required => 'optional',
  1053. :default => 'nil'
  1054. attribute 'dovecot/conf/ldap/ldaprc_path',
  1055. :display_name => 'ldap ldaprc path',
  1056. :description => 'Use the given ldaprc path.',
  1057. :type => 'string',
  1058. :required => 'optional',
  1059. :default => 'nil'
  1060. attribute 'dovecot/conf/ldap/debug_level',
  1061. :display_name => 'ldap debug level',
  1062. :description => 'LDAP library debug level as specified by LDAP_DEBUG_* in ldap_log.h.',
  1063. :type => 'string',
  1064. :required => 'optional',
  1065. :default => 'nil'
  1066. attribute 'dovecot/conf/ldap/auth_bind',
  1067. :display_name => 'ldap auth bind',
  1068. :description => 'Use authentication binding for verifying password\'s validity.',
  1069. :type => 'string',
  1070. :required => 'optional',
  1071. :default => 'nil'
  1072. attribute 'dovecot/conf/ldap/auth_bind_userdn',
  1073. :display_name => 'ldap auth bind userdn',
  1074. :description => 'If authentication binding is used, you can save one LDAP request per login if user\'s DN can be specified with a common template.',
  1075. :type => 'string',
  1076. :required => 'optional',
  1077. :default => 'nil'
  1078. attribute 'dovecot/conf/ldap/ldap_version',
  1079. :display_name => 'ldap ldap version',
  1080. :description => 'LDAP protocol version to use. Likely 2 or 3.',
  1081. :type => 'string',
  1082. :required => 'optional',
  1083. :default => 'nil'
  1084. attribute 'dovecot/conf/ldap/base',
  1085. :display_name => 'ldap base',
  1086. :description => 'LDAP base. %variables can be used here.',
  1087. :type => 'string',
  1088. :required => 'optional',
  1089. :default => 'nil'
  1090. attribute 'dovecot/conf/ldap/deref',
  1091. :display_name => 'ldap deref',
  1092. :description => 'Dereference: never, searching, finding or always.',
  1093. :type => 'string',
  1094. :required => 'optional',
  1095. :default => 'nil'
  1096. attribute 'dovecot/conf/ldap/scope',
  1097. :display_name => 'ldap scope',
  1098. :description => 'Search scope: base, onelevel or subtree.',
  1099. :type => 'string',
  1100. :required => 'optional',
  1101. :default => 'nil'
  1102. attribute 'dovecot/conf/ldap/user_attrs',
  1103. :display_name => 'ldap user attrs',
  1104. :description => 'User attributes are given in LDAP-name=dovecot-internal-name list.',
  1105. :type => 'string',
  1106. :required => 'optional',
  1107. :default => 'nil'
  1108. attribute 'dovecot/conf/ldap/user_filter',
  1109. :display_name => 'ldap user filter',
  1110. :description => 'Filter for user lookup.',
  1111. :type => 'string',
  1112. :required => 'optional',
  1113. :default => 'nil'
  1114. attribute 'dovecot/conf/ldap/pass_attrs',
  1115. :display_name => 'ldap pass attrs',
  1116. :description => 'Password checking attributes.',
  1117. :type => 'string',
  1118. :required => 'optional',
  1119. :default => 'nil'
  1120. attribute 'dovecot/conf/ldap/pass_filter',
  1121. :display_name => 'ldap pass filter',
  1122. :description => 'Filter for password lookups.',
  1123. :type => 'string',
  1124. :required => 'optional',
  1125. :default => 'nil'
  1126. attribute 'dovecot/conf/ldap/iterate_attrs',
  1127. :display_name => 'ldap iterate attrs',
  1128. :description => 'Attributes to get a list of all users',
  1129. :type => 'string',
  1130. :required => 'optional',
  1131. :default => 'nil'
  1132. attribute 'dovecot/conf/ldap/iterate_filter',
  1133. :display_name => 'ldap iterate filter',
  1134. :description => 'Filter to get a list of all users',
  1135. :type => 'string',
  1136. :required => 'optional',
  1137. :default => 'nil'
  1138. attribute 'dovecot/conf/ldap/default_pass_scheme',
  1139. :display_name => 'ldap default pass scheme',
  1140. :description => 'Default password scheme. "{scheme}" before password overrides this.',
  1141. :type => 'string',
  1142. :required => 'optional',
  1143. :default => 'nil'
  1144. #
  1145. # dovecot-sql.conf.ext
  1146. #
  1147. attribute 'dovecot/conf/sql/driver',
  1148. :display_name => 'sql driver',
  1149. :description => 'Database driver: mysql, pgsql or sqlite.',
  1150. :type => 'string',
  1151. :required => 'optional',
  1152. :default => 'nil'
  1153. attribute 'dovecot/conf/sql/connect',
  1154. :display_name => 'sql connect',
  1155. :description => 'Database connection string or array. This is driver-specific setting.',
  1156. :type => 'string',
  1157. :required => 'optional',
  1158. :default => 'nil'
  1159. attribute 'dovecot/conf/sql/default_pass_scheme',
  1160. :display_name => 'sql default pass scheme',
  1161. :description => 'Default password scheme.',
  1162. :type => 'string',
  1163. :required => 'optional',
  1164. :default => 'nil'
  1165. attribute 'dovecot/conf/sql/password_query',
  1166. :display_name => 'sql password query',
  1167. :description => 'passdb query to retrieve the password.',
  1168. :type => 'string',
  1169. :required => 'optional',
  1170. :default => 'nil'
  1171. attribute 'dovecot/conf/sql/user_query',
  1172. :display_name => 'sql user query',
  1173. :description => 'userdb query to retrieve the user information.',
  1174. :type => 'string',
  1175. :required => 'optional',
  1176. :default => 'nil'
  1177. attribute 'dovecot/conf/sql/iterate_query',
  1178. :display_name => 'sql iterate query',
  1179. :description => 'Query to get a list of all usernames.',
  1180. :type => 'string',
  1181. :required => 'optional',
  1182. :default => 'nil'