diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2016-10-19 17:20:42 +0300 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2016-10-19 19:20:31 +0300 |
commit | dc78d43ff77a65e3400af0401142aca2ebb6cd1e (patch) | |
tree | 61b7442d72109e743527a19e5e4ae575a749ed2d /libmu_sieve | |
parent | d1339b3ffaa3d82e21c3a36e5bdfccee3246904d (diff) | |
download | mailutils-dc78d43ff77a65e3400af0401142aca2ebb6cd1e.tar.gz mailutils-dc78d43ff77a65e3400af0401142aca2ebb6cd1e.tar.bz2 |
Convert remaining utilities (except mh) to mu_cli.
* Makefile.am: Remove libmu_argp and libmu_cfg
* configure.ac: Likewise.
* libmu_argp/: Remove.
* libmu_cfg/: Remove.
* include/mailutils/Makefile.am (pkginclude_HEADERS): Remove gocs.h,
libargp.h, libcfg.h
* frm/frm.c: Register tls auth module
* frm/from.c: Likewise.
* maidag/maidag.c: Likewise.
* mail/mail.c: Likewise.
* messages/messages.c: Likewise.
* movemail/movemail.c: Likewise.
* readmsg/readmsg.c: Likewise.
* sieve/sieve.c: Likewise.
* frm/frm.h: Remove obsolete includes
* imap4d/Makefile.am: Update.
* imap4d/imap4d.c: Use mu_cli for command line and configuration
parsing.
* imap4d/imap4d.h: Update.
* include/mailutils/gocs.h: Remove.
* libmailutils/cfg/gocs.c: Remove.
* libmailutils/cfg/Makefile.am: Remove gocs.c
* include/mailutils/cli.h (mu_cli_capa_apply): Rename to
mu_cli_capa_extend_settings
(mu_cli_setup) <inorder, prog_doc_hook>: New fields.
* include/mailutils/daemon.h: Remove obsolete includes.
* include/mailutils/gsasl.h: Likewise.
* include/mailutils/mailutils.h: Update.
* include/mailutils/mu_auth.h (mu_auth_mode): New enum
(mu_auth_module): Redo structure.
* include/mailutils/opt.h (mu_parseopt) <po_prog_doc_hook>: New field.
* include/mailutils/sql.h (mu_sql_module_config): New extern.
(mu_sql_interface_index): Change proto.
* libmailutils/auth/mu_auth.c: Rewrite.
* libmailutils/auth/system.c (mu_auth_system_module): Update structure
* libmailutils/cli/capa.c (mu_cli_capa_apply): Rename to
mu_cli_capa_extend_settings
* libmailutils/cli/cli.c: Extend settings from auth modules as well.
* libmailutils/opt/help.c (mu_program_help): Invoke po_prog_doc_hook
if defined.
* libmailutils/opt/opt.c (parseopt_init): Check the
MU_PARSEOPT_PROG_DOC_HOOK flag.
(find_long_option): Fix recognition of ambiguous options in case
of exact match.
* libmu_auth/gsasl.c: Add configuration.
* libmu_auth/ldap.c: Likewise.
* libmu_auth/pam.c: Likewise.
* libmu_auth/radius.c: Likewise.
* libmu_auth/sql.c: Likewise.
* libmu_auth/tls.c: Likewise.
* libmu_auth/virtual.c: Likewise.
* mu/Makefile.am: Update.
* mu/mu.c: Rewrite using mu_cli
* mu/mu.h: Likewise.
* mu/acl.c: Likewise.
* mu/cflags.c: Likewise.
* mu/dbm.c: Likewise.
* mu/dispatch.c: Likewise.
* mu/filter.c: Likewise.
* mu/flt2047.c: Likewise.
* mu/getans.c: Likewise.
* mu/getarg.c: Likewise.
* mu/getyn.c: Likewise.
* mu/help.c: Likewise.
* mu/imap.c: Likewise.
* mu/info.c: Likewise.
* mu/ldflags.c: Likewise.
* mu/logger.c: Likewise.
* mu/pop.c: Likewise.
* mu/query.c: Likewise.
* mu/send.c: Likewise.
* mu/shell.c: Likewise.
* mu/smtp.c: Likewise.
* mu/util.c: Likewise.
* mu/verbose.c: Likewise.
* mu/wicket.c: Likewise.
* pop3d/Makefile.am: Update.
* pop3d/pop3d.c: Convert to mu_cli interface.
* pop3d/pop3d.h: Likewise.
* sql/sql.c (mu_sql_interface_index): Change argument qualifiers.
Diffstat (limited to 'libmu_sieve')
-rw-r--r-- | libmu_sieve/conf.c | 62 |
1 files changed, 31 insertions, 31 deletions
diff --git a/libmu_sieve/conf.c b/libmu_sieve/conf.c index 15b33aa18..7b9102fc5 100644 --- a/libmu_sieve/conf.c +++ b/libmu_sieve/conf.c @@ -29,9 +29,6 @@ mu_list_t mu_sieve_library_path = NULL; mu_list_t mu_sieve_library_path_prefix = NULL; mu_debug_handle_t mu_sieve_debug_handle; -//FIXME: provide definition (from gocs.h) -static struct mu_gocs_sieve sieve_settings; - void mu_sieve_debug_init (void) { @@ -39,6 +36,15 @@ mu_sieve_debug_init (void) mu_sieve_debug_handle = mu_debug_register_category ("sieve"); } +struct sieve_settings +{ + int clearflags; + mu_list_t include_path; + mu_list_t library_path_prefix; + mu_list_t library_path; +}; +static struct sieve_settings sieve_settings; + /*FIXME: REMOVE BEGIN */ static int _path_append (void *item, void *data) @@ -61,33 +67,6 @@ _path_append (void *item, void *data) return mu_list_append (*plist, p); } -int -mu_sieve_module_init (enum mu_gocs_op op, void *data) -{ - struct mu_gocs_sieve *p; - if (!(op == mu_gocs_op_set && data)) - return 0; - p = data; - - if (p->clearflags & MU_SIEVE_CLEAR_INCLUDE_PATH) - mu_list_destroy (&mu_sieve_include_path); - mu_list_foreach (p->include_path, _path_append, &mu_sieve_include_path); - if (p->clearflags & MU_SIEVE_CLEAR_LIBRARY_PATH) - { - mu_list_destroy (&mu_sieve_library_path); - mu_list_destroy (&mu_sieve_library_path_prefix); - } - mu_list_foreach (p->library_path_prefix, _path_append, - &mu_sieve_library_path_prefix); - mu_list_foreach (p->library_path, _path_append, &mu_sieve_library_path); - mu_list_destroy (&p->library_path); - mu_list_destroy (&p->library_path_prefix); - mu_list_destroy (&p->include_path); - mu_sieve_debug_init (); - return 0; -} -/* FIXME: REMOVE END */ - static int cb_clear_library_path (void *data, mu_config_value_t *val) { @@ -238,9 +217,30 @@ static struct mu_option sieve_option[] = { MU_OPTION_END }; +static void +sieve_commit (void *ptr) +{ + if (sieve_settings.clearflags & MU_SIEVE_CLEAR_INCLUDE_PATH) + mu_list_destroy (&mu_sieve_include_path); + mu_list_foreach (sieve_settings.include_path, _path_append, &mu_sieve_include_path); + if (sieve_settings.clearflags & MU_SIEVE_CLEAR_LIBRARY_PATH) + { + mu_list_destroy (&mu_sieve_library_path); + mu_list_destroy (&mu_sieve_library_path_prefix); + } + mu_list_foreach (sieve_settings.library_path_prefix, _path_append, + &mu_sieve_library_path_prefix); + mu_list_foreach (sieve_settings.library_path, _path_append, &mu_sieve_library_path); + mu_list_destroy (&sieve_settings.library_path); + mu_list_destroy (&sieve_settings.library_path_prefix); + mu_list_destroy (&sieve_settings.include_path); + mu_sieve_debug_init (); +} + struct mu_cli_capa mu_cli_capa_sieve = { "sieve", sieve_option, mu_sieve_param, - NULL, NULL + NULL, + sieve_commit }; |