Minor changes
Showing
15 changed files
with
96 additions
and
63 deletions
... | @@ -102,15 +102,23 @@ libmu_auth module. It is declared as follows: | ... | @@ -102,15 +102,23 @@ libmu_auth module. It is declared as follows: |
102 | 102 | ||
103 | @smallexample | 103 | @smallexample |
104 | @group | 104 | @group |
105 | struct mu_auth_module @{ | 105 | struct mu_auth_module |
106 | char *name; /* Module name */ | 106 | @{ |
107 | struct argp *argp; /* Corresponding argp structure */ | 107 | /* Module name */ |
108 | mu_auth_fp authenticate; /* Authentication function ... */ | 108 | char *name; |
109 | void *authenticate_data; /* ... and its specific data */ | 109 | /* Pointers to functions for each mode */ |
110 | mu_auth_fp auth_by_name; /* Get user info by user name */ | 110 | mu_auth_fp handler[MU_AUTH_MODE_COUNT]; |
111 | void *auth_by_name_data; /* ... and its specific data */ | 111 | /* Corresponding data pointers */ |
112 | mu_auth_fp auth_by_uid; /* Get user info by user id */ | 112 | void *data[MU_AUTH_MODE_COUNT]; |
113 | void *auth_by_uid_data; /* ... and its specific data */ | 113 | |
114 | /* Describes command line options for that module */ | ||
115 | struct mu_option *opt; | ||
116 | /* Configuration parameters for that module */ | ||
117 | struct mu_cfg_param *cfg; | ||
118 | /* Configuration section parser */ | ||
119 | mu_cfg_section_fp parser; | ||
120 | /* Function to commit the changes */ | ||
121 | mu_cli_capa_commit_fp commit; | ||
114 | @}; | 122 | @}; |
115 | @end group | 123 | @end group |
116 | @end smallexample | 124 | @end smallexample |
... | @@ -271,8 +279,6 @@ main (int argc, char **argv) | ... | @@ -271,8 +279,6 @@ main (int argc, char **argv) |
271 | state = STATE_NONAUTH; /* Starting state in non-auth. */ | 279 | state = STATE_NONAUTH; /* Starting state in non-auth. */ |
272 | 280 | ||
273 | MU_AUTH_REGISTER_ALL_MODULES (); | 281 | MU_AUTH_REGISTER_ALL_MODULES (); |
274 | mu_argp_parse (&argp, &argc, &argv, 0, imap4d_capa, | ||
275 | NULL, &daemon_param); | ||
276 | @dots{} | 282 | @dots{} |
277 | @end group | 283 | @end group |
278 | @end smallexample | 284 | @end smallexample | ... | ... |
... | @@ -7435,18 +7435,12 @@ Enable support for mailers. | ... | @@ -7435,18 +7435,12 @@ Enable support for mailers. |
7435 | Link in the support for Sieve mail filtering language. | 7435 | Link in the support for Sieve mail filtering language. |
7436 | @item dbm | 7436 | @item dbm |
7437 | Link in the support for DBM databases (libmu_dbm library). | 7437 | Link in the support for DBM databases (libmu_dbm library). |
7438 | @item compat | ||
7439 | Provide a compatibility layer for Mailutils 2.x. | ||
7440 | @item auth | 7438 | @item auth |
7441 | Link in the Mailutils authentication library. | 7439 | Link in the Mailutils authentication library. |
7442 | @item guile | 7440 | @item guile |
7443 | Provide Guile language bindings. | 7441 | Provide Guile language bindings. |
7444 | @item python | 7442 | @item python |
7445 | Provide Python language bindings. | 7443 | Provide Python language bindings. |
7446 | @item cfg | ||
7447 | Link in the Mailutils configuration library. | ||
7448 | @item argp | ||
7449 | Link in the library for command line parsing. | ||
7450 | @end table | 7444 | @end table |
7451 | 7445 | ||
7452 | @node mailutils query | 7446 | @node mailutils query | ... | ... |
... | @@ -364,7 +364,9 @@ static struct mu_cfg_param imap4d_srv_param[] = { | ... | @@ -364,7 +364,9 @@ static struct mu_cfg_param imap4d_srv_param[] = { |
364 | #ifdef WITH_TLS | 364 | #ifdef WITH_TLS |
365 | { "tls", mu_cfg_callback, | 365 | { "tls", mu_cfg_callback, |
366 | NULL, mu_offsetof (struct imap4d_srv_config, tls_mode), cb_tls, | 366 | NULL, mu_offsetof (struct imap4d_srv_config, tls_mode), cb_tls, |
367 | N_("Kind of TLS encryption to use for this server") }, | 367 | N_("Kind of TLS encryption to use for this server"), |
368 | /* TRANSLATORS: translate only arg:, the rest are keywords */ | ||
369 | N_("arg: false|true|ondemand|stls|requred|connection") }, | ||
368 | #endif | 370 | #endif |
369 | { NULL } | 371 | { NULL } |
370 | }; | 372 | }; |
... | @@ -396,33 +398,38 @@ static struct mu_cfg_param imap4d_cfg_param[] = { | ... | @@ -396,33 +398,38 @@ static struct mu_cfg_param imap4d_cfg_param[] = { |
396 | N_("Set shared namespace.") }, | 398 | N_("Set shared namespace.") }, |
397 | { "other-mailbox-mode", mu_cfg_callback, &mailbox_mode[NS_OTHER], 0, | 399 | { "other-mailbox-mode", mu_cfg_callback, &mailbox_mode[NS_OTHER], 0, |
398 | cb_mailbox_mode, | 400 | cb_mailbox_mode, |
399 | N_("File mode for mailboxes in other namespace.") }, | 401 | N_("File mode for mailboxes in other namespace."), |
402 | N_("mode: g(+|=)[wr]+,o(+|=)[wr]+") }, | ||
400 | { "shared-mailbox-mode", mu_cfg_callback, &mailbox_mode[NS_SHARED], 0, | 403 | { "shared-mailbox-mode", mu_cfg_callback, &mailbox_mode[NS_SHARED], 0, |
401 | cb_mailbox_mode, | 404 | cb_mailbox_mode, |
402 | N_("File mode for mailboxes in shared namespace.") }, | 405 | N_("File mode for mailboxes in shared namespace."), |
406 | N_("mode: g(+|=)[wr]+,o(+|=)[wr]+") }, | ||
403 | { "login-disabled", mu_c_bool, &login_disabled, 0, NULL, | 407 | { "login-disabled", mu_c_bool, &login_disabled, 0, NULL, |
404 | N_("Disable LOGIN command.") }, | 408 | N_("Disable LOGIN command.") }, |
405 | { "create-home-dir", mu_c_bool, &create_home_dir, 0, NULL, | 409 | { "create-home-dir", mu_c_bool, &create_home_dir, 0, NULL, |
406 | N_("If true, create non-existing user home directories.") }, | 410 | N_("If true, create non-existing user home directories.") }, |
407 | { "home-dir-mode", mu_cfg_callback, NULL, 0, cb_mode, | 411 | { "home-dir-mode", mu_cfg_callback, NULL, 0, cb_mode, |
408 | N_("File mode for creating user home directories (octal)."), | 412 | N_("File mode for creating user home directories."), |
409 | N_("mode") }, | 413 | N_("mode: octal") }, |
410 | { "retain-groups", mu_cfg_callback, &user_retain_groups, 0, cb_group, | 414 | { "retain-groups", mu_cfg_callback, &user_retain_groups, 0, cb_group, |
411 | N_("Retain these supplementary groups when switching to user privileges"), | 415 | N_("Retain these supplementary groups when switching to user privileges"), |
412 | N_("groups: list of string") }, | 416 | N_("groups: list of string") }, |
413 | #ifdef WITH_TLS | 417 | #ifdef WITH_TLS |
414 | { "tls", mu_cfg_callback, &tls_mode, 0, cb_tls, | 418 | { "tls", mu_cfg_callback, &tls_mode, 0, cb_tls, |
415 | N_("Kind of TLS encryption to use") }, | 419 | N_("Kind of TLS encryption to use"), |
420 | /* TRANSLATORS: translate only arg:, the rest are keywords */ | ||
421 | N_("arg: false|true|ondemand|stls|requred|connection") }, | ||
416 | { "tls-required", mu_cfg_callback, &tls_mode, 0, cb_tls_required, | 422 | { "tls-required", mu_cfg_callback, &tls_mode, 0, cb_tls_required, |
417 | N_("Always require STLS before entering authentication phase.\n" | 423 | N_("Always require STLS before entering authentication phase.\n" |
418 | "Deprecated, use \"tls required\" instead.") }, | 424 | "Deprecated, use \"tls required\" instead."), |
425 | N_("arg: bool") }, | ||
419 | #endif | 426 | #endif |
420 | { "preauth", mu_cfg_callback, NULL, 0, cb_preauth, | 427 | { "preauth", mu_cfg_callback, NULL, 0, cb_preauth, |
421 | N_("Configure PREAUTH mode. MODE is one of:\n" | 428 | N_("Configure PREAUTH mode. <value> is one of:\n" |
422 | " prog:///<full-program-name: string>\n" | 429 | " prog:///<full-program-name: string>\n" |
423 | " ident[://:<port: string-or-number>]\n" | 430 | " ident[://:<port: string-or-number>]\n" |
424 | " stdio"), | 431 | " stdio"), |
425 | N_("mode") }, | 432 | N_("mode: value") }, |
426 | { "preauth-only", mu_c_bool, &preauth_only, 0, NULL, | 433 | { "preauth-only", mu_c_bool, &preauth_only, 0, NULL, |
427 | N_("Use only preauth mode. If unable to setup it, disconnect " | 434 | N_("Use only preauth mode. If unable to setup it, disconnect " |
428 | "immediately.") }, | 435 | "immediately.") }, | ... | ... |
... | @@ -221,15 +221,16 @@ static struct mu_cfg_param acl_param[] = { | ... | @@ -221,15 +221,16 @@ static struct mu_cfg_param acl_param[] = { |
221 | N_("addr: IP") }, | 221 | N_("addr: IP") }, |
222 | { "exec", mu_cfg_callback, NULL, 0, cb_exec, | 222 | { "exec", mu_cfg_callback, NULL, 0, cb_exec, |
223 | N_("Execute supplied program if a connection from this IP address is " | 223 | N_("Execute supplied program if a connection from this IP address is " |
224 | "requested. Arguments are:\n" | 224 | "requested.\n\n" |
225 | " <addr: IP> <program: string>\n" | 225 | "The following macros are expanded in <program> before executing:\n" |
226 | "Following macros are expanded in <program> before executing:\n" | ||
227 | " address - Source IP address\n" | 226 | " address - Source IP address\n" |
228 | " port - Source port number\n") }, | 227 | " port - Source port number\n"), |
228 | N_("addr: IP> <program: string") }, | ||
229 | { "ifexec", mu_cfg_callback, NULL, 0, cb_ifexec, | 229 | { "ifexec", mu_cfg_callback, NULL, 0, cb_ifexec, |
230 | N_("If a connection from this IP address is requested, execute supplied " | 230 | N_("If a connection from this IP address is requested, execute supplied " |
231 | "program and allow or deny the connection depending on its exit code. " | 231 | "program and allow or deny the connection depending on its exit code. " |
232 | "See `exec' for a description of its arguments.") }, | 232 | "See `exec' for a description of its arguments."), |
233 | N_("addr: IP> <program: string") }, | ||
233 | { NULL } | 234 | { NULL } |
234 | }; | 235 | }; |
235 | 236 | ... | ... |
... | @@ -79,12 +79,14 @@ static struct mu_cfg_param logging_cfg[] = { | ... | @@ -79,12 +79,14 @@ static struct mu_cfg_param logging_cfg[] = { |
79 | { "severity", mu_cfg_callback, NULL, 0, cb_severity, | 79 | { "severity", mu_cfg_callback, NULL, 0, cb_severity, |
80 | N_("Output only messages with a severity equal to or greater than " | 80 | N_("Output only messages with a severity equal to or greater than " |
81 | "this one."), | 81 | "this one."), |
82 | N_("arg: string")}, | 82 | /* TRANSLATORS: Translate only arg:, rest are keywords */ |
83 | N_("arg: debug|info|notice|warning|error|crit|alert|emerg")}, | ||
83 | { "facility", mu_cfg_callback, NULL, 0, cb_facility, | 84 | { "facility", mu_cfg_callback, NULL, 0, cb_facility, |
84 | N_("Set syslog facility. Arg is one of the following: user, daemon, " | 85 | N_("Set syslog facility. Arg is one of the following: user, daemon, " |
85 | "auth, authpriv, mail, cron, local0 through local7 (case-insensitive), " | 86 | "auth, authpriv, mail, cron, local0 through local7 (case-insensitive), " |
86 | "or a facility number."), | 87 | "or a facility number."), |
87 | N_("arg: string") }, | 88 | /* TRANSLATORS: Translate only arg: and <number>, rest are keywords */ |
89 | N_("arg: auth|authpriv|mail|local0-local7|<number>") }, | ||
88 | { "session-id", mu_c_bool, &mu_log_session_id, 0, NULL, | 90 | { "session-id", mu_c_bool, &mu_log_session_id, 0, NULL, |
89 | N_("Log session ID") }, | 91 | N_("Log session ID") }, |
90 | { "tag", mu_c_string, &mu_log_tag, 0, NULL, | 92 | { "tag", mu_c_string, &mu_log_tag, 0, NULL, | ... | ... |
... | @@ -895,8 +895,9 @@ static struct mu_cfg_param dot_server_cfg_param[] = { | ... | @@ -895,8 +895,9 @@ static struct mu_cfg_param dot_server_cfg_param[] = { |
895 | N_("Maximum number of children processes to run simultaneously.") }, | 895 | N_("Maximum number of children processes to run simultaneously.") }, |
896 | { "mode", mu_cfg_callback, | 896 | { "mode", mu_cfg_callback, |
897 | NULL, mu_offsetof (struct _mu_m_server,mode), _cb_daemon_mode, | 897 | NULL, mu_offsetof (struct _mu_m_server,mode), _cb_daemon_mode, |
898 | N_("Set daemon mode (either inetd (or interactive) or daemon)."), | 898 | N_("Set operation mode."), |
899 | N_("mode") }, | 899 | /* TRANSLATORS: Words to the right of : are keywords. */ |
900 | N_("mode: inetd|interactive|daemom") }, | ||
900 | { "foreground", mu_c_bool, | 901 | { "foreground", mu_c_bool, |
901 | NULL, mu_offsetof (struct _mu_m_server, foreground), NULL, | 902 | NULL, mu_offsetof (struct _mu_m_server, foreground), NULL, |
902 | N_("Run in foreground.") }, | 903 | N_("Run in foreground.") }, |
... | @@ -906,7 +907,8 @@ static struct mu_cfg_param dot_server_cfg_param[] = { | ... | @@ -906,7 +907,8 @@ static struct mu_cfg_param dot_server_cfg_param[] = { |
906 | N_("file") }, | 907 | N_("file") }, |
907 | { "port", mu_cfg_callback, | 908 | { "port", mu_cfg_callback, |
908 | NULL, mu_offsetof (struct _mu_m_server, hints), _cb_port, | 909 | NULL, mu_offsetof (struct _mu_m_server, hints), _cb_port, |
909 | N_("Default port number.") }, | 910 | N_("Default port number."), |
911 | N_("arg: port number or service name") }, | ||
910 | { "timeout", mu_c_time, | 912 | { "timeout", mu_c_time, |
911 | NULL, mu_offsetof (struct _mu_m_server,timeout), NULL, | 913 | NULL, mu_offsetof (struct _mu_m_server,timeout), NULL, |
912 | N_("Set idle timeout.") }, | 914 | N_("Set idle timeout.") }, |
... | @@ -953,7 +955,8 @@ _cb_backlog (void *data, mu_config_value_t *val) | ... | @@ -953,7 +955,8 @@ _cb_backlog (void *data, mu_config_value_t *val) |
953 | static struct mu_cfg_param server_tcp_param[] = { | 955 | static struct mu_cfg_param server_tcp_param[] = { |
954 | { "backlog", mu_cfg_callback, | 956 | { "backlog", mu_cfg_callback, |
955 | NULL, mu_offsetof (struct mu_srv_config, tcpsrv), _cb_backlog, | 957 | NULL, mu_offsetof (struct mu_srv_config, tcpsrv), _cb_backlog, |
956 | N_("Size of the queue of pending connections") }, | 958 | N_("Size of the queue of pending connections"), |
959 | N_("number") }, | ||
957 | { NULL } | 960 | { NULL } |
958 | }; | 961 | }; |
959 | 962 | ... | ... |
... | @@ -106,7 +106,7 @@ static struct mu_cfg_param mu_ldap_param[] = { | ... | @@ -106,7 +106,7 @@ static struct mu_cfg_param mu_ldap_param[] = { |
106 | "where <name> is one of the following: name, passwd, uid, gid, " | 106 | "where <name> is one of the following: name, passwd, uid, gid, " |
107 | "gecos, dir, shell, mailbox, quota, and <attr> is the name of " | 107 | "gecos, dir, shell, mailbox, quota, and <attr> is the name of " |
108 | "the corresponding LDAP attribute."), | 108 | "the corresponding LDAP attribute."), |
109 | N_("map") }, | 109 | N_("map: definition") }, |
110 | { "getpwnam", mu_c_string, &ldap_param.getpwnam_filter, 0, NULL, | 110 | { "getpwnam", mu_c_string, &ldap_param.getpwnam_filter, 0, NULL, |
111 | N_("LDAP filter to use for getpwnam requests."), | 111 | N_("LDAP filter to use for getpwnam requests."), |
112 | N_("filter") }, | 112 | N_("filter") }, | ... | ... |
... | @@ -191,7 +191,8 @@ static struct mu_cfg_param mu_radius_param[] = { | ... | @@ -191,7 +191,8 @@ static struct mu_cfg_param mu_radius_param[] = { |
191 | N_("Radius request for getpwuid."), | 191 | N_("Radius request for getpwuid."), |
192 | N_("request: string") }, | 192 | N_("request: string") }, |
193 | { "directory", mu_cfg_callback, NULL, 0, cb_config_dir, | 193 | { "directory", mu_cfg_callback, NULL, 0, cb_config_dir, |
194 | N_("Set radius configuration directory.") }, | 194 | N_("Set radius configuration directory."), |
195 | N_("dir: string") }, | ||
195 | { NULL } | 196 | { NULL } |
196 | }; | 197 | }; |
197 | 198 | ... | ... |
... | @@ -103,6 +103,7 @@ static struct mu_cfg_param mu_sql_param[] = { | ... | @@ -103,6 +103,7 @@ static struct mu_cfg_param mu_sql_param[] = { |
103 | { "interface", mu_cfg_callback, &mu_sql_module_config.interface, 0, | 103 | { "interface", mu_cfg_callback, &mu_sql_module_config.interface, 0, |
104 | cb_interface, | 104 | cb_interface, |
105 | N_("Set SQL interface to use."), | 105 | N_("Set SQL interface to use."), |
106 | /* TRANSLATORS: Words to the right of : are keywords - do not translate */ | ||
106 | N_("iface: mysql|odbc|postgres") }, | 107 | N_("iface: mysql|odbc|postgres") }, |
107 | { "getpwnam", mu_c_string, &mu_sql_module_config.getpwnam_query, 0, NULL, | 108 | { "getpwnam", mu_c_string, &mu_sql_module_config.getpwnam_query, 0, NULL, |
108 | N_("SQL query to use for getpwnam requests."), | 109 | N_("SQL query to use for getpwnam requests."), |
... | @@ -124,8 +125,9 @@ static struct mu_cfg_param mu_sql_param[] = { | ... | @@ -124,8 +125,9 @@ static struct mu_cfg_param mu_sql_param[] = { |
124 | { "db", mu_c_string, &mu_sql_module_config.db, 0, NULL, | 125 | { "db", mu_c_string, &mu_sql_module_config.db, 0, NULL, |
125 | N_("Database name.") }, | 126 | N_("Database name.") }, |
126 | { "password-type", mu_cfg_callback, NULL, 0, cb_password_type, | 127 | { "password-type", mu_cfg_callback, NULL, 0, cb_password_type, |
127 | N_("Type of password returned by getpass query (one of: plain, hash, " | 128 | N_("Type of password returned by getpass query."), |
128 | "scrambled).") }, | 129 | /* TRANSLATORS: Words to the right of : are keywords - do not translate */ |
130 | N_("arg: plain|hash|scrambled") }, | ||
129 | { "positional", mu_c_bool, &mu_sql_module_config.positional, 0, NULL, | 131 | { "positional", mu_c_bool, &mu_sql_module_config.positional, 0, NULL, |
130 | N_("Use positional (v1.0 compatible) field interface.") }, | 132 | N_("Use positional (v1.0 compatible) field interface.") }, |
131 | { "field-map", mu_cfg_callback, NULL, 0, cb_field_map, | 133 | { "field-map", mu_cfg_callback, NULL, 0, cb_field_map, |
... | @@ -136,7 +138,7 @@ static struct mu_cfg_param mu_sql_param[] = { | ... | @@ -136,7 +138,7 @@ static struct mu_cfg_param mu_sql_param[] = { |
136 | "where <name> is one of the following: name, passwd, uid, gid, " | 138 | "where <name> is one of the following: name, passwd, uid, gid, " |
137 | "gecos, dir, shell, mailbox, quota, and <column> is the name of " | 139 | "gecos, dir, shell, mailbox, quota, and <column> is the name of " |
138 | "the corresponding SQL column."), | 140 | "the corresponding SQL column."), |
139 | N_("map") }, | 141 | N_("map: definition") }, |
140 | { NULL } | 142 | { NULL } |
141 | }; | 143 | }; |
142 | 144 | ... | ... |
... | @@ -142,21 +142,23 @@ cb_library_path_prefix (void *data, mu_config_value_t *val) | ... | @@ -142,21 +142,23 @@ cb_library_path_prefix (void *data, mu_config_value_t *val) |
142 | 142 | ||
143 | static struct mu_cfg_param mu_sieve_param[] = { | 143 | static struct mu_cfg_param mu_sieve_param[] = { |
144 | { "clear-library-path", mu_cfg_callback, NULL, 0, cb_clear_library_path, | 144 | { "clear-library-path", mu_cfg_callback, NULL, 0, cb_clear_library_path, |
145 | N_("Clear library search path.") }, | 145 | N_("Clear library search path."), |
146 | N_("arg: directory list") }, | ||
146 | { "clear-include-path", mu_cfg_callback, NULL, 0, cb_clear_include_path, | 147 | { "clear-include-path", mu_cfg_callback, NULL, 0, cb_clear_include_path, |
147 | N_("Clear include search path.") }, | 148 | N_("Clear include search path."), |
149 | N_("arg: directory list") }, | ||
148 | { "library-path", mu_cfg_callback, NULL, 0, cb_library_path, | 150 | { "library-path", mu_cfg_callback, NULL, 0, cb_library_path, |
149 | N_("Add directories to the library search path. Argument is a " | 151 | N_("Add directories to the library search path. Argument is a " |
150 | "colon-separated list of directories."), | 152 | "colon-separated list of directories."), |
151 | N_("list") }, | 153 | N_("arg: directory list") }, |
152 | { "library-path-prefix", mu_cfg_callback, NULL, 0, cb_library_path_prefix, | 154 | { "library-path-prefix", mu_cfg_callback, NULL, 0, cb_library_path_prefix, |
153 | N_("Add directories to the beginning of the library search path. " | 155 | N_("Add directories to the beginning of the library search path. " |
154 | "Argument is a colon-separated list of directories."), | 156 | "Argument is a colon-separated list of directories."), |
155 | N_("list") }, | 157 | N_("arg: directory list") }, |
156 | { "include-path", mu_cfg_callback, NULL, 0, cb_include_path, | 158 | { "include-path", mu_cfg_callback, NULL, 0, cb_include_path, |
157 | N_("Add directories to the include search path. Argument is a " | 159 | N_("Add directories to the include search path. Argument is a " |
158 | "colon-separated list of directories."), | 160 | "colon-separated list of directories."), |
159 | N_("list") }, | 161 | N_("arg: directory list") }, |
160 | { NULL } | 162 | { NULL } |
161 | }; | 163 | }; |
162 | 164 | ... | ... |
... | @@ -372,9 +372,12 @@ cb_script_pattern (void *data, mu_config_value_t *val) | ... | @@ -372,9 +372,12 @@ cb_script_pattern (void *data, mu_config_value_t *val) |
372 | 372 | ||
373 | struct mu_cfg_param filter_cfg_param[] = { | 373 | struct mu_cfg_param filter_cfg_param[] = { |
374 | { "language", mu_cfg_callback, NULL, 0, cb_script_language, | 374 | { "language", mu_cfg_callback, NULL, 0, cb_script_language, |
375 | N_("Set script language.") }, | 375 | N_("Set script language."), |
376 | /* TRANSLATORS: words to the right of : are keywords - do not translate */ | ||
377 | N_("arg: python|guile") }, | ||
376 | { "pattern", mu_cfg_callback, NULL, 0, cb_script_pattern, | 378 | { "pattern", mu_cfg_callback, NULL, 0, cb_script_pattern, |
377 | N_("Set script pattern.") }, | 379 | N_("Set script pattern."), |
380 | N_("arg: glob") }, | ||
378 | { NULL } | 381 | { NULL } |
379 | }; | 382 | }; |
380 | 383 | ||
... | @@ -419,7 +422,8 @@ cb_listen (void *data, mu_config_value_t *val) | ... | @@ -419,7 +422,8 @@ cb_listen (void *data, mu_config_value_t *val) |
419 | struct mu_cfg_param maidag_cfg_param[] = { | 422 | struct mu_cfg_param maidag_cfg_param[] = { |
420 | { "delivery-mode", mu_cfg_callback, NULL, 0, cb_delivery_mode, | 423 | { "delivery-mode", mu_cfg_callback, NULL, 0, cb_delivery_mode, |
421 | N_("Set delivery mode"), | 424 | N_("Set delivery mode"), |
422 | N_("mode: {mda | url | lmtp}") }, | 425 | /* TRANSLATORS: words to the right of : are keywords - do not translate */ |
426 | N_("mode: mda|url|lmtp") }, | ||
423 | { "exit-multiple-delivery-success", mu_c_bool, &multiple_delivery, 0, NULL, | 427 | { "exit-multiple-delivery-success", mu_c_bool, &multiple_delivery, 0, NULL, |
424 | N_("In case of multiple delivery, exit with code 0 if at least one " | 428 | N_("In case of multiple delivery, exit with code 0 if at least one " |
425 | "delivery succeeded.") }, | 429 | "delivery succeeded.") }, |
... | @@ -447,9 +451,11 @@ struct mu_cfg_param maidag_cfg_param[] = { | ... | @@ -447,9 +451,11 @@ struct mu_cfg_param maidag_cfg_param[] = { |
447 | " g - guile stack traces\n" | 451 | " g - guile stack traces\n" |
448 | " t - sieve trace (MU_SIEVE_DEBUG_TRACE)\n" | 452 | " t - sieve trace (MU_SIEVE_DEBUG_TRACE)\n" |
449 | " i - sieve instructions trace (MU_SIEVE_DEBUG_INSTR)\n" | 453 | " i - sieve instructions trace (MU_SIEVE_DEBUG_INSTR)\n" |
450 | " l - sieve action logs\n") }, | 454 | " l - sieve action logs\n"), |
455 | N_("arg: string") }, | ||
451 | { "stderr", mu_cfg_callback, NULL, 0, cb_stderr, | 456 | { "stderr", mu_cfg_callback, NULL, 0, cb_stderr, |
452 | N_("Log to stderr instead of syslog.") }, | 457 | N_("Log to stderr instead of syslog."), |
458 | N_("arg: bool") }, | ||
453 | { "forward-file", mu_c_string, &forward_file, 0, NULL, | 459 | { "forward-file", mu_c_string, &forward_file, 0, NULL, |
454 | N_("Process forward file.") }, | 460 | N_("Process forward file.") }, |
455 | { "forward-file-checks", mu_cfg_callback, NULL, 0, cb_forward_file_checks, | 461 | { "forward-file-checks", mu_cfg_callback, NULL, 0, cb_forward_file_checks, |
... | @@ -467,7 +473,7 @@ struct mu_cfg_param maidag_cfg_param[] = { | ... | @@ -467,7 +473,7 @@ struct mu_cfg_param maidag_cfg_param[] = { |
467 | "mandatory)\n" | 473 | "mandatory)\n" |
468 | " file://<socket-file-name>\n" | 474 | " file://<socket-file-name>\n" |
469 | "or socket://<socket-file-name>"), | 475 | "or socket://<socket-file-name>"), |
470 | N_("url") }, | 476 | N_("url: string") }, |
471 | { "reuse-address", mu_c_bool, &reuse_lmtp_address, 0, NULL, | 477 | { "reuse-address", mu_c_bool, &reuse_lmtp_address, 0, NULL, |
472 | N_("Reuse existing address (LMTP mode). Default is \"yes\".") }, | 478 | N_("Reuse existing address (LMTP mode). Default is \"yes\".") }, |
473 | { "filter", mu_cfg_section, NULL, 0, NULL, | 479 | { "filter", mu_cfg_section, NULL, 0, NULL, | ... | ... |
... | @@ -130,7 +130,7 @@ cb_debug (void *data, mu_config_value_t *val) | ... | @@ -130,7 +130,7 @@ cb_debug (void *data, mu_config_value_t *val) |
130 | struct mu_cfg_param mimeview_cfg_param[] = { | 130 | struct mu_cfg_param mimeview_cfg_param[] = { |
131 | { "debug", mu_cfg_callback, NULL, 0, cb_debug, | 131 | { "debug", mu_cfg_callback, NULL, 0, cb_debug, |
132 | N_("Set debug verbosity level."), | 132 | N_("Set debug verbosity level."), |
133 | N_("flags") }, | 133 | N_("flags: string") }, |
134 | { "mimetypes", mu_c_string, &mimetypes_config, 0, NULL, | 134 | { "mimetypes", mu_c_string, &mimetypes_config, 0, NULL, |
135 | N_("Use this mime.types file."), | 135 | N_("Use this mime.types file."), |
136 | N_("file") }, | 136 | N_("file") }, | ... | ... |
... | @@ -365,7 +365,8 @@ struct mu_cfg_param movemail_cfg_param[] = { | ... | @@ -365,7 +365,8 @@ struct mu_cfg_param movemail_cfg_param[] = { |
365 | " delete - delete this one and to the next message\n" | 365 | " delete - delete this one and to the next message\n" |
366 | " count - count this message as processed\n" | 366 | " count - count this message as processed\n" |
367 | "Each keyword can be prefixed with \"no\" to reverse its meaning\n" | 367 | "Each keyword can be prefixed with \"no\" to reverse its meaning\n" |
368 | "Setting onerror=abort reverts to the default behavior.") }, | 368 | "Setting onerror=abort reverts to the default behavior."), |
369 | N_("arg: list") }, | ||
369 | { NULL } | 370 | { NULL } |
370 | }; | 371 | }; |
371 | 372 | ... | ... |
... | @@ -234,7 +234,9 @@ static struct mu_cfg_param pop3d_srv_param[] = { | ... | @@ -234,7 +234,9 @@ static struct mu_cfg_param pop3d_srv_param[] = { |
234 | #ifdef WITH_TLS | 234 | #ifdef WITH_TLS |
235 | { "tls", mu_cfg_callback, | 235 | { "tls", mu_cfg_callback, |
236 | NULL, mu_offsetof (struct pop3d_srv_config, tls_mode), cb_tls, | 236 | NULL, mu_offsetof (struct pop3d_srv_config, tls_mode), cb_tls, |
237 | N_("Kind of TLS encryption to use for this server") }, | 237 | N_("Kind of TLS encryption to use for this server"), |
238 | /* TRANSLATORS: words to the right of : are keywords - do not translate */ | ||
239 | N_("arg: false|true|ondemand|stls|requred|connection") }, | ||
238 | #endif | 240 | #endif |
239 | { NULL } | 241 | { NULL } |
240 | }; | 242 | }; |
... | @@ -252,7 +254,8 @@ static struct mu_cfg_param pop3d_cfg_param[] = { | ... | @@ -252,7 +254,8 @@ static struct mu_cfg_param pop3d_cfg_param[] = { |
252 | { "apop-database-file", mu_c_string, &apop_database_name, 0, NULL, | 254 | { "apop-database-file", mu_c_string, &apop_database_name, 0, NULL, |
253 | N_("set APOP database file name or URL") }, | 255 | N_("set APOP database file name or URL") }, |
254 | { "apop-database-owner", mu_cfg_callback, NULL, 0, cb_apop_database_owner, | 256 | { "apop-database-owner", mu_cfg_callback, NULL, 0, cb_apop_database_owner, |
255 | N_("Name or UID of the APOP database owner") }, | 257 | N_("Name or UID of the APOP database owner"), |
258 | N_("arg: string") }, | ||
256 | { "apop-database-safety", mu_cfg_callback, NULL, 0, cb_apop_safety_checks, | 259 | { "apop-database-safety", mu_cfg_callback, NULL, 0, cb_apop_safety_checks, |
257 | N_("Configure safety checks for APOP database files. Argument is a list or " | 260 | N_("Configure safety checks for APOP database files. Argument is a list or " |
258 | "sequence of check names optionally prefixed with '+' to enable or " | 261 | "sequence of check names optionally prefixed with '+' to enable or " |
... | @@ -271,10 +274,13 @@ static struct mu_cfg_param pop3d_cfg_param[] = { | ... | @@ -271,10 +274,13 @@ static struct mu_cfg_param pop3d_cfg_param[] = { |
271 | 274 | ||
272 | #ifdef WITH_TLS | 275 | #ifdef WITH_TLS |
273 | { "tls", mu_cfg_callback, &tls_mode, 0, cb_tls, | 276 | { "tls", mu_cfg_callback, &tls_mode, 0, cb_tls, |
274 | N_("Kind of TLS encryption to use") }, | 277 | N_("Kind of TLS encryption to use"), |
278 | /* TRANSLATORS: words to the right of : are keywords - do not translate */ | ||
279 | N_("arg: false|true|ondemand|stls|requred|connection") }, | ||
275 | { "tls-required", mu_cfg_callback, &tls_mode, 0, cb_tls_required, | 280 | { "tls-required", mu_cfg_callback, &tls_mode, 0, cb_tls_required, |
276 | N_("Always require STLS before entering authentication phase.\n" | 281 | N_("Always require STLS before entering authentication phase.\n" |
277 | "Deprecated, use \"tls required\" instead.") }, | 282 | "Deprecated, use \"tls required\" instead."), |
283 | N_("arg: bool") }, | ||
278 | #endif | 284 | #endif |
279 | #ifdef ENABLE_LOGIN_DELAY | 285 | #ifdef ENABLE_LOGIN_DELAY |
280 | { "login-delay", mu_c_time, &login_delay, 0, NULL, | 286 | { "login-delay", mu_c_time, &login_delay, 0, NULL, |
... | @@ -284,11 +290,11 @@ static struct mu_cfg_param pop3d_cfg_param[] = { | ... | @@ -284,11 +290,11 @@ static struct mu_cfg_param pop3d_cfg_param[] = { |
284 | #endif | 290 | #endif |
285 | { "bulletin-source", mu_cfg_callback, NULL, 0, cb_bulletin_source, | 291 | { "bulletin-source", mu_cfg_callback, NULL, 0, cb_bulletin_source, |
286 | N_("Get bulletins from the specified mailbox."), | 292 | N_("Get bulletins from the specified mailbox."), |
287 | N_("url") }, | 293 | N_("url: string") }, |
288 | #ifdef ENABLE_DBM | 294 | #ifdef ENABLE_DBM |
289 | { "bulletin-db", mu_cfg_callback, NULL, 0, cb_bulletin_db, | 295 | { "bulletin-db", mu_cfg_callback, NULL, 0, cb_bulletin_db, |
290 | N_("Set the bulletin database file name."), | 296 | N_("Set the bulletin database file name."), |
291 | N_("file") }, | 297 | N_("file: string") }, |
292 | #endif | 298 | #endif |
293 | { "output-buffer-size", mu_c_size, &pop3d_output_bufsize, 0, NULL, | 299 | { "output-buffer-size", mu_c_size, &pop3d_output_bufsize, 0, NULL, |
294 | N_("Size of the output buffer.") }, | 300 | N_("Size of the output buffer.") }, | ... | ... |
... | @@ -222,13 +222,15 @@ static struct mu_cfg_param sieve_cfg_param[] = { | ... | @@ -222,13 +222,15 @@ static struct mu_cfg_param sieve_cfg_param[] = { |
222 | " T - mailutils traces (sieve.trace9)\n" | 222 | " T - mailutils traces (sieve.trace9)\n" |
223 | " P - network protocols (sieve.prot)\n" | 223 | " P - network protocols (sieve.prot)\n" |
224 | " t - sieve trace (MU_SIEVE_DEBUG_TRACE)\n" | 224 | " t - sieve trace (MU_SIEVE_DEBUG_TRACE)\n" |
225 | " i - sieve instructions trace (MU_SIEVE_DEBUG_INSTR).") }, | 225 | " i - sieve instructions trace (MU_SIEVE_DEBUG_INSTR)."), |
226 | N_("arg: string") }, | ||
226 | { "verbose", mu_c_bool, &verbose, 0, NULL, | 227 | { "verbose", mu_c_bool, &verbose, 0, NULL, |
227 | N_("Log all executed actions.") }, | 228 | N_("Log all executed actions.") }, |
228 | { "line-info", mu_c_bool, &sieve_print_locus, 0, NULL, | 229 | { "line-info", mu_c_bool, &sieve_print_locus, 0, NULL, |
229 | N_("Print source locations along with action logs (default).") }, | 230 | N_("Print source locations along with action logs (default).") }, |
230 | { "email", mu_cfg_callback, NULL, 0, cb_email, | 231 | { "email", mu_cfg_callback, NULL, 0, cb_email, |
231 | N_("Set user email address.") }, | 232 | N_("Set user email address."), |
233 | N_("arg: string") }, | ||
232 | { NULL } | 234 | { NULL } |
233 | }; | 235 | }; |
234 | 236 | ... | ... |
-
Please register or sign in to post a comment