- 07 Nov, 2008 1 commit
-
-
* mailbox/permstr.c: New file. * mailbox/Makefile.am (libmailutils_la_SOURCES): Add permstr.c. * imap4d/imap4d.c (parse_mode_spec): Remove function. (cb_mailbox_mode): Use mu_parse_stream_perm_string instead of parse_mode_spec. * imap4d/imap4d.h (namespace_getfullpath) (namespace_checkfullpath): First arg is const. * imap4d/namespace.c (namespace_getfullpath) (namespace_checkfullpath): First arg is const. * include/mailutils/message.h (mu_message_save_to_mailbox): Add 5th argument (permissions). * mailbox/message.c: Likewise. * include/mailutils/mutil.h (mu_parse_stream_perm_string): New proto. (mu_stream_flags_to_mode): Add isdir argument. * libsieve/actions.c (sieve_action_fileinto): New tag :permissions allows to set permissions to the mailbox being created. * mailbox/mutil.c (mu_stream_flags_to_mode): Add 2nd argument (isdir). Any bits in [go] sets imply raising 'x' bit for directories (i.e. if isdir != 0). * libproto/maildir/mbox.c, mailbox/amd.c: Update calls to mu_stream_flags_to_mode. * NEWS, doc/texinfo/sieve.texi: Update. Allow to set file permissions of the local mailboxes during creation.
Sergey Poznyakoff authored
-
- 06 Nov, 2008 1 commit
-
-
* include/mailutils/stream.h (MU_STREAM_IRGRP, MU_STREAM_IWGRP) (MU_STREAM_IROTH, MU_STREAM_IWOTH, MU_STREAM_IMASK): New defines. * include/mailutils/mutil.h (mu_stream_flags_to_mode): New prototype. * libproto/maildir/mbox.c (maildir_create, maildir_flush) (maildir_scan0): Consider mailbox flags to determine its file mode. * mailbox/amd.c (amd_open, amd_message_stream_open): Likewise. * mailbox/file_stream.c (_file_open): Likewise. * mailbox/mutil.c (mu_stream_flags_to_mode): New file. * imap4d/namespace.c (namespace_getfullpath) (namespace_checkfullpath): Return the namespace number in the last argument (if not null). * imap4d/append.c, imap4d/copy.c, imap4d/delete.c, imap4d/list.c, imap4d/rename.c, imap4d/select.c, imap4d/status.c: Update calls to namespace_getfullpath. * imap4d/create.c (imap4d_create): Set mailbox flags depending on the namespace it is created in. * imap4d/imap4d.c (mailbox_mode): New variable. (parse_mode_spec): New function. (imap4d_cfg_param): New statements other-mailbox-mode and shared-mailbox-mode. * imap4d/imap4d.h (mailbox_mode): New proto. (namespace_getfullpath, namespace_checkfullpath): Add a parameter. * mailbox/progmailer.c (mu_progmailer_set_debug): Add missing return statement.
Sergey Poznyakoff authored
-
- 05 Nov, 2008 2 commits
-
-
* maidag/forward.c: New file. * maidag/Makefile.am (maidag_SOURCES): Add forward.c. * maidag/deliver.c (deliver_url): Call maidag_forward for local users. * maidag/maidag.c (forward_file, forward_file_checks): New variables. (maidag_cfg_param): New keywords forward-file and forward-file-checks. * maidag/maidag.h (FWD_IWGRP, FWD_IWOTH, FWD_LINK, FWD_DIR_IWGRP) (FWD_DIR_IWOTH, FWD_ALL): New defines. (forward_file, forward_file_checks): New variables. (enum maidag_forward_result): New data type. (maidag_forward): New prototype.
Sergey Poznyakoff authored -
* maidag/deliver.c (mda): Pass msg as a 1st argument to deliver. (deliver_to_user): Remove 1st argument. (deliver): Change type of the 1st argument to mu_message_t. * maidag/lmtp.c (dot_deliver): Pass msg as a 1st argument to deliver. * maidag/maidag.c (sieve_test): Change type of the 2nd argument to mu_message_t. * maidag/maidag.h (sieve_test, deliver): Pass mu_message_t, instead of mu_message_t. * mailbox/mailer.c (mu_mailer_create_from_url): Set default debug level. * sql/mysql.c (mu_mysql_connect): Avoid coredumps if conn->server is NULL.
Sergey Poznyakoff authored
-
- 28 Oct, 2008 4 commits
-
-
This makes it possible to `deliver' mails to mailers without explicitly specifying `remote+mailer' mailbox URLs. In particular, it is handy for implementing mailing lists using `prog' mailers (as with Mailman). * maidag/deliver.c (notify_action): Do nothing if biff_user_name is empty. (deliver_to_user): Remove `name' argument. Allow for auth==NULL. (is_remote_url): Use case-sensitive comparison. (is_mailer_url): New function. (deliver_url): Handle mailer URLs as if they were corresponding `remote+' mailbox URLs. This allows to handle mailing lists. * maidag/lmtp.c (lmtp_groups): New global. (lmtp_set_privs): New function. Sets primary and supplementary group privileges. (maidag_lmtp_server): Call lmtp_set_privs. * maidag/maidag.c (lmtp_group): Remove. It is superceded by lmtp_groups. (maidag_cfg_param): Allow to specify supplementary groups. * maidag/maidag.h (lmtp_group): Replace with lmtp_groups.
Sergey Poznyakoff authored -
* include/mailutils/mailer.h (mu_mailer_create_from_url): New proto. * mailbox/mailer.c (mu_mailer_create_from_url): New function. (mu_mailer_create): Rewrite using mu_mailer_create_from_url. * libproto/mailer/prog.c (_url_prog_init): Do not call mu_url_init. (url_to_argv): Reflect changes to mu_url functions. * libproto/mailer/url_sendmail.c (_url_sendmail_init): Do not call mu_url_init. * libproto/mailer/url_smtp.c (_url_smtp_init): Likewise.
Sergey Poznyakoff authored -
* mailbox/mailbox.c (_create_mailbox0): Take care not to destroy url, if creation of the mailbox failed. (_create_mailbox): Destroy url if unable to create mailbox. * mailbox/mutil.c (mu_is_proto): Take starting | as a protocol specification. A kludge. * include/mailutils/argcv.h: Fix indentation.
Sergey Poznyakoff authored -
Queries are now parsed into arguments and returned as arrays of arguments. * libproto/include/url0.h (struct _mu_url): Replace query with array of query arguments. * include/mailutils/url.h (mu_url_dup): New proto. (mu_url_get_query): Remove. (mu_url_sget_query, mu_url_aget_query): Return query split into arguments. (mu_url_set_scheme): New function. (mu_url_decode_len): New function. * mailbox/url.c (mu_url_dup): New function. (mu_url_get_query): Remove. (mu_url_sget_query, mu_url_aget_query): Return query split into arguments. (mu_url_set_scheme): New function. (mu_url_decode_len): New function. * libproto/remote/mbox.c (remote_mbox_init): Use parsed out URL, instead of the full URL string. * examples/url-parse.c: Change query output. * mailbox/testsuite/Urls: Reflect changes to url-parse. Add new testcases. * libproto/imap/url.c, libproto/pop/url.c: Reflect changes to URL functions.
Sergey Poznyakoff authored
-
- 24 Oct, 2008 4 commits
-
-
* configure.ac: Enable/disable prog mailer support. * include/mailutils/progmailer.h: New file. * include/mailutils/Makefile.am (pkginclude_HEADERS): Add progmailer.h * include/mailutils/mailutils.h: Include progmailer.h * include/mailutils/registrar.h (MU_PROG_PRIO): New define. (mu_prog_record): New extern. (mu_register_all_mailer_formats): Register mu_prog_record. * include/mailutils/types.hin (mu_progmailer_t): New typedef. * libproto/include/registrar0.h (MU_PROG_SCHEME) (MU_PROG_SCHEME_LEN): New defines. * libproto/mailer/prog.c: New file. * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add prog.c * libproto/mailer/sendmail.c: Rewrite using mu_progmailer_t * libproto/remote/folder.c (_remote_is_scheme): Remove unused variable. * mailbox/progmailer.c: New file * mailbox/Makefile.am (libmailutils_la_SOURCES): Add progmailer.c * mailbox/acl.c (_expand_aclno): Add a fixme. * mail/send.c (msg_to_pipe): Bugfix: use pclose, instead of fclose. * examples/config/mailutils.schema: Update.
Sergey Poznyakoff authored -
-
* examples/config/mailutils.dict: Use GNU OID number. * examples/config/mailutils.schema: Use sub-OID assigned to GNU Mailutils.
Sergey Poznyakoff authored -
* libsieve/prog.c (mu_sv_code_command): Ensure tag arguments have the proper type.
Sergey Poznyakoff authored
-
- 23 Oct, 2008 4 commits
-
-
* libsieve/extensions/spamd.c (spamd_test): Fix typo. * mailbox/file_stream.c (struct _file_stream): New members size and size_computed. (_stdin_file_read, _stdin_file_readline): Fix types of fs_offset. (_stdin_file_size): New function. (_stdout_file_write): Register _stdin_file_size as stream_size method if seekable flag is set. * mailbox/message_stream.c (struct _mu_rfc822_message): Remove unused member. * sieve/sieve.c (sieve_message): Create a seekable stream.
Sergey Poznyakoff authored -
-
-
* sieve/sieve.c: New working mode: if `-f -' is given, treat stdin as an RFC2822 message, apply the script to it and exit with 1 if the message gets deleted, 0 if it is not and EX_SOFTWARE on software errors. In traditional mode, exit with standard sysexit codes. * testsuite/sieve/i-numeric.exp: Reflect changes in sieve. * NEWS: Update.
Sergey Poznyakoff authored
-
- 19 Oct, 2008 2 commits
-
-
* auth/sql.c (decode_tuple): Use new tuple parsing mode, unless `positional' is set to true. * include/mailutils/sql.h (struct mu_sql_module_config) (struct mu_internal_sql_config): New member `positional'. * libcfg/sql.c (mu_sql_param): New statement `positional'.
Sergey Poznyakoff authored -
* doc/texinfo/programs.texi: Document virtmode. * testsuite/Makefile.am (EXTRA_DIST): Remove * testsuite/makespool: Remove.
Sergey Poznyakoff authored
-
- 18 Oct, 2008 1 commit
-
-
* NEWS: Update. * doc/texinfo/libmuauth.texi: Update. * doc/texinfo/mailutils.texi: Update. * doc/texinfo/programs.texi: Update. * include/mailutils/mailbox.h (mu_mailbox_create_from_url): New function. * include/mailutils/mutil.h (mu_aget_user_email_domain): New function. * libproto/include/address0.h: Remove obsolete comment. * libproto/remote/mbox.c (remote_mbox_append_message): If recipient address is not given, try to construct it from the URL. * mailbox/mailbox.c (mu_mailbox_create_from_url): New function. * mailbox/mutil.c (mu_aget_user_email_domain): New function. * maidag/deliver.c (deliver_to_user): Mailbox and auth must be freed by the caller. (deliver_url): New function. (deliver): Rewrite to allow for delivering to mailboxes explicitly specified by URLs (--url command line option). * maidag/maidag.c (options): New option --url. (main): Handle --url. * maidag/maidag.h (url_option): New global. * maidag/mailquota.c (check_quota): Return if auth == NULL.
Sergey Poznyakoff authored
-
- 17 Oct, 2008 1 commit
-
-
* include/mailutils/libsieve.h (mu_sieve_match_part_checker): New prototype. * libsieve/comparator.c (mu_sv_match_part_checker): Rename back to mu_sieve_match_part_checker. The function was mistakingly renamed on 2008-07-19. All references updated. * libsieve/tests.c: Likewise. * libsieve/sieve.h (mu_sv_match_part_checker): Remove prototype.
Sergey Poznyakoff authored
-
- 16 Oct, 2008 2 commits
-
-
-
* libproto/mailer/smtp.c: Implement SIZE extension (RFC 1870). * doc/rfc/rfc1870.txt: New file.
Sergey Poznyakoff authored
-
- 15 Oct, 2008 1 commit
-
-
- 14 Oct, 2008 1 commit
-
-
- 05 Oct, 2008 2 commits
-
-
* libproto/remote/folder.c (remote_url_init): Remove. (_remote_is_scheme): New function. (_remote_mbox_record): Add _is_scheme method. * libproto/remote/mbox.c (remote_mbox_init): Remove useless check. * mailbox/assoc.c (mu_assoc_clear): Return immediately if assoc tab is NULL. * mailbox/mailbox.c (_create_mailbox0): Do not enforce exact record scheme match if the scheme ends with a plus sign.
Sergey Poznyakoff authored -
* doc/texinfo/programs.texi: Document Locking, ACL, and Tcp-wrappers. * mailbox/cfg_driver.c (mu_cfg_assert_value_type): Convert MU_CFG_STRING to MU_CFG_ARRAY. * mailbox/cfg_parser.y: Replace `tag: value' with `tag: vallist'. This allows for constructs like `acl a b c {', which were understood by the previous version. * mailbox/version.c (mu_conf_opt): Add WITH_LIBWRAP.
Sergey Poznyakoff authored
-
- 02 Oct, 2008 1 commit
-
-
- 29 Sep, 2008 2 commits
-
-
-
* config/mailutils-config.c (main): Do not print flag descriptions on --info, this breaks existing scripts. New option --verbose makes --info print verbose descriptions. * include/mailutils/version.h (mu_fprint_options) (mu_fprint_conf_option): Take additional argument. * mailbox/argcv.c (quote_transtab): Handle \". * mailbox/cfg_driver.c (mu_cfg_string_value_cb): Bugfix * mailbox/cfg_lexer.l: Allow * and = in non-quoted words. Improve 'stray character' diagnostics'. (unescape_to_line): Handle \\ and \". * mailbox/version.c (mu_fprint_options) (mu_fprint_conf_option): New argument `verbose' instructs whether to print textual descriptions. (mu_fprint_conf_option): Print single space after the flag to facilitate writing parser scripts. * testsuite/lib/mailutils.exp: Reflect this change.
Sergey Poznyakoff authored
-
- 24 Sep, 2008 1 commit
-
-
- 22 Sep, 2008 1 commit
-
-
representation of syslog facility. * mailbox/cfg_lexer.l: Re-introduce pragmatic comment #debug=, for setting debugging level in config module. * mailbox/cfg_parser.y: Likewise. * mailbox/gdebug.c (mu_debug_level_from_string): Ignore trailing newline. * mailbox/version.c (mu_conf_option): Add SYSCONFDIR, MAILSPOOLDIR and LOG_FACILITY. * mh/mh_init.c (mh_list_format): Reformat to make it more readable. Use decode primitive on header fields that may be encoded. * doc/texinfo/mailutils.texi: Further update. * doc/texinfo/programs.texi: Likewise.
Sergey Poznyakoff authored
-
- 21 Sep, 2008 2 commits
-
-
-
* configure.ac: Configure doc hints. * config/mailutils-config.c (main): Use mu_fprint_conf_option. * mailbox/version.c (mu_conf_option): Change type. (mu_fprint_conf_option): New function. (mu_fprint_options): Use mu_fprint_conf_option. (mu_print_options): Fix signature (mu_check_option): Change return type. * testsuite/lib/mailutils.exp (mu_version): Reflect changes in the output produced by --show-config-options. * include/mailutils/version.h (struct mu_conf_option): New data type. (mu_check_option): Change return type. (mu_fprint_conf_option): New prototype. * libargp/common.c (mu_common_argp): Rename --rcfile-* options to --config-*. Retain old names for a while. * doc/texinfo/Makefile.am (RENDITION_TEXI): New variable. (check-format, check-refs, check-fixmes, check-unrevised) (all-check-docs, check-docs): New rules. * doc/texinfo/rendition.texi: New file. * doc/texinfo/macros.texi: New file. * doc/texinfo/mailutils.texi: Start rewriting * doc/texinfo/programs.texi: Likewise. * doc/texinfo/c-api.texi: Reformat. * doc/texinfo/fdl.texi: Likewise. * doc/texinfo/libmuauth.texi: Likewise. * doc/texinfo/libsieve.texi: Likewise. * doc/texinfo/mu-mh.texi: Likewise. * doc/texinfo/sieve.texi: Likewise. * doc/texinfo/gendocs_template: Rewrite.
Sergey Poznyakoff authored
-
- 23 Aug, 2008 1 commit
-
-
* imap4d/testsuite/imap4d.rcin: New file. * imap4d/testsuite/Makefile.am (EXTRA_DIST): Add imap4d.rcin * imap4d/testsuite/.cvsignore: Add imap4d.rc * imap4d/testsuite/lib/imap4d.exp: Use mu_makespool to prepare mailspools and mu_create_config to create test configuration file. Specify the maximum amount of configuration data in the latter, instead of using command line options. * mail.local/testsuite/lib/mail.local.exp: Likewise. * pop3d/testsuite/lib/pop3d.exp: Likewise. * pop3d/testsuite/pop3d.rcin: New file. * pop3d/testsuite/Makefile.am (EXTRA_DIST): Add pop3d.rcin * pop3d/testsuite/.cvsignore: Add pop3d.rc. * testsuite/etc/passwd.in: Use Tcl variable for expansion. * testsuite/lib/mailutils.exp (mu_copy_file): New function. (mu_makespool, mu_create_config): New function. (mu_init): Remove unused variable MU_MAKESPOOL. (mu_prepare_spools): Use mu_makespool. (mu_cleanup_spools): Remove. * libcfg/init.c (mu_parse_config_files): Minor change. * mailbox/cfg_lexer.l (mu_get_config): Fix return value.
Sergey Poznyakoff authored
-
- 21 Aug, 2008 2 commits
-
-
* imap4d/imap4d.c (imap4d_cfg_param): other-namespace and shared-namespace take proper lists as arguments. (imap4d_session_setup0): Call namespace_init_session. (main): Call namespace_init. * imap4d/imap4d.h (set_namespace): Remove. (namespace_init): Change proto. (namespace_init_session): New prototype. (namespace): New declaration. * imap4d/namespace.c: Rewrite using lists. * mailbox/cfg_parser.y (parse_param): Cast string to lists if the parameter has list type.
Sergey Poznyakoff authored
- 19 Aug, 2008 4 commits
-
-
* imap4d/id.c: New file. * imap4d/Makefile.am (imap4d_SOURCES): Add id.c, remove version.c. * imap4d/commands.c: Add ID command. Remove X-VERSION command. (SELECT,EXAMINE): Switch to authenticated mode on failure. * imap4d/imap4d.c (imap4d_argc, imap4d_argv): New variables. (imap4d_cfg_param): New keyword `id-fields'. (main): Save command line arguments. * imap4d/imap4d.h (imap4d_argc, imap4d_argv): New declarations. * imap4d/select.c (imap4d_select0): Do not reset state to auth on failure, this is done by util_finish. * imap4d/version.c: Remove. * imap4d/capability.c: Announce ID capability, remove X-VERSION. * imap4d/testsuite/imap4d/x.exp: Use ID instead of X-VERSION. * TODO, NEWS: Update. * mailbox/cfg_parser.y (_set_fun,parse_param): Bugfix.
Sergey Poznyakoff authored -
-
* libcfg/acl.c (parsearg): Initialize size. * mailbox/cfg_driver.c (mu_cfg_assert_value_type): Bugfix. * mailbox/cfg_lexer.l (mu_get_config): Close file. * mailbox/cfg_parser.y: Fix array creation.
Sergey Poznyakoff authored -
* auth/gsasl.c: Remove deprecated data types. * imap4d/auth_gsasl.c (retrieve_password): Minor fix. * imap4d/imap4d.c, imap4d/imap4d.h, imap4d/namespace.c, lib/tcpwrap.c, libcfg/acl.c, libcfg/auth.c, libcfg/common.c, libcfg/ldap.c, libcfg/sieve.c, libcfg/sql.c, maidag/maidag.c, mail.local/main.c, mailbox/gdebug.c, mailbox/msrv.c, mimeview/mimeview.c, pop3d/bulletin.c, pop3d/pop3d.c, pop3d/pop3d.h, sieve/sieve.c: Reflect changes to the configuration system. * mailbox/Makefile.am (AM_LFLAGS): New variable. (EXTRA_DIST) Add cfg_lexer.l. (libmailutils_la_SOURCES): Add alloc.c and opool.c (BUILT_SOURCES): Add cfg_lexer.c. (cfg_lexer.c): New goal. * mailbox/alloc.c, mailbox/opool.c: New files. * mailbox/cfg_lexer.c: Remove. * mailbox/cfg_lexer.l: New file. * mailbox/.cvsignore: Add cfg_lexer.c. * include/mailutils/Makefile.am: Add alloc.h and opool.h * include/mailutils/alloc.h: New file. * include/mailutils/opool.h: New file. * include/mailutils/cfg.h (mu_cfg_lexer_t,mu_cfg_alloc_t) (mu_cfg_free_t): Remove types. (MU_CFG_STRING, MU_CFG_LIST, MU_CFG_ARRAY): New defines. (mu_config_value_t): New data type. (struct mu_cfg_node): Change type of `label'. (struct mu_cfg_tree): Remove `alloc', `free'. New member `pool'. (mu_cfg_parse): Simplify the signature by removing superfluous arguments. (mu_cfg_tie_in): Remove. (mu_cfg_lexer_pool): New function. (mu_cfg_find_node, mu_cfg_find_node_label): Remove. (mu_cfg_callback_t): Change signature. (MU_CFG_LIST_MASK): New define. (MU_CFG_LIST_OF, MU_CFG_TYPE, MU_CFG_IS_LIST): New defines. (mu_cfg_get_debug): New function. (mu_cfg_assert_value_type, mu_cfg_string_value_cb): New functions. (mu_cfg_tree_set_alloc, mu_cfg_tree_alloc): Remove. * mailbox/cfg_driver.c: Adapt for new node structure. (mu_cfg_assert_value_type, mu_cfg_string_value_cb): New function. * mailbox/cfg_format.c: Adapt for new node structure. * mailbox/cfg_parser.y: Adapt for changes in cfg data types and lexer. * include/mailutils/mailutils.h: Include alloc.h and opool.h * include/mailutils/mu_auth.h (mu_authorization_add_module) (mu_authentication_add_module): New prototypes. * include/mailutils/syslog.h (mu_string_to_syslog_facility) (mu_string_to_syslog_priority): First argument is const char *. * mailbox/syslog.c: Likewise. * include/mailutils/types.hin (mu_opool_t): New type. * mailbox/list.c (mu_list_get_comparator): Add missing return statement.
Sergey Poznyakoff authored
-