1. 10 Dec, 2010 2 commits
    • This is the default behavior now.  The reverse can be requested by
      a special MU_IOCTL_FD,MU_IOCTL_FD_SET_BORROW ioctl.
      
      * include/mailutils/stream.h (MU_STREAM_FD_AUTOCLOSE): Remove. This
      is the default behavior now.
      (MU_IOCTL_FD): New ioctl.
      (MU_IOCTL_FD_GET_BORROW, MU_IOCTL_FD_SET_BORROW): New opcodes.
      * include/mailutils/sys/file_stream.h (_MU_FILE_STREAM_FD_BORROWED): New flag.
      
      * libmailutils/stream/file_stream.c (fd_close): Close the fd unless
      _MU_FILE_STREAM_FD_BORROWED bit is set.
      (fd_open): Clear the _MU_FILE_STREAM_FD_BORROWED bit.
      (fd_ioctl): Handle MU_IOCTL_FD.
      (mu_file_stream_create): Remove MU_STREAM_FD_AUTOCLOSE.
      
      * ibmailutils/base/version.c (mu_print_options): Set borrow mode on the
      temporary stdout stream.
      * libmailutils/cfg/driver.c (mu_cfg_tree_reduce): Set borrow mode on the
      temporary stderr stream.
      * libmailutils/stdstream/strerr.c (mu_stdstream_strerr_create): Set borrow
      mode on the stderr stream.
      * libmailutils/tests/tempfile.c: set borrow mode on the temporary stream,
      because it may be reopened later (verify mode).
      
      * examples/mta.c: Remove MU_STREAM_FD_AUTOCLOSE.
      * imap4d/io.c: Likewise.
      * libmailutils/stream/prog_stream.c: Likewise.
      * libmailutils/stream/socket_stream.c: Likewise.
      * libmailutils/stream/temp_file_stream.c: Likewise.
      * maidag/lmtp.c: Likewise.
      * pop3d/extra.c: Likewise.
      
      These will disappear when the corresponding utilities are rewritten to
      use MU stdstream:
      
      * mail/escape.c (quote0): set borrow mode on the output stream.
      * mimeview/mimeview.c (display_file): set borrow mode on the input stream.
      
      Likewise, these will disappear when MH uses MU stdstream:
      
      * mh/anno.c (main): Set borrow mode on the input stream.
      * mh/mh_init.c (mh_real_install): Likewise.
      * mh/mh_whatnow.c (_whatnow): Likewise.
      * mh/mhl.c (open_output): Set borrow mode on the output stream.
      * mh/mhn.c (mhn_show,store_handler): Likewise.
      Sergey Poznyakoff authored
    • * examples/mta.c: Use MU_STREAM_FD_AUTOCLOSE.
      * imap4d/io.c: Likewise.
      * libmailutils/stream/file_stream.c: Likewise.
      * libmailutils/stream/prog_stream.c: Likewise.
      * libmailutils/stream/socket_stream.c: Likewise.
      * libmailutils/stream/temp_file_stream.c: Likewise.
      * maidag/lmtp.c: Likewise.
      * pop3d/extra.c: Likewise.
      
      * imap4d/preauth.c: Do not use MU_STREAM_AUTOCLOSE.  Instead unref the
      transport stream after creating the derived one.
      * libmailutils/base/rfc2047.c: Likewise.
      * libmailutils/stream/fltstream.c: Likewise.
      * libmailutils/tests/fltst.c: Likewise.
      * libmu_auth/ldap.c: Likewise.
      * libmu_auth/tls.c: Likewise.
      * libmu_sieve/extensions/vacation.c: Likewise.
      * libproto/pop/pop3_stream.c: Likewise.
      * mail/decode.c: Likewise.
      * mh/mhn.c: Likewise.
      
      * libmailutils/filter/filter_iconv.c: Do not handle MU_STREAM_AUTOCLOSE.
      * libmailutils/stream/rdcache_stream.c: Likewise.
      * libmailutils/stream/streamref.c: Likewise.
      * libmailutils/stream/xscript-stream.c: Likewise.
      
      * include/mailutils/stream.h (MU_STREAM_AUTOCLOSE): Rename to
      MU_STREAM_FD_AUTOCLOSE.
      Sergey Poznyakoff authored
  2. 06 Dec, 2010 1 commit
    • The mu_stream_ioctl function gets two argument that identify the ioctl
      in question: "family", which identifies a family of ioctls in question,
      and "opcode", which indicates the requested operation within that family.
      
      * include/mailutils/stream.h: Define ioctl families and opcodes.
      (mu_stream_ioctl): Change signature.
      * include/mailutils/sys/stream.h (_mu_stream)<ctl>: Change signature.
      
      * include/mailutils/log.h (mu_severity_from_string)
      (mu_severity_to_string): New protos.
      
      * libmailutils/stream/stream.c (mu_stream_ioctl): Change signature.
      
      * libmailutils/filter/filter_iconv.c: Rewrite ioctl support.
      * libmailutils/stream/file_stream.c: Likewise.
      * libmailutils/stream/fltstream.c: Likewise.
      * libmailutils/stream/iostream.c: Likewise.
      * libmailutils/stream/logstream.c: Likewise.
      * libmailutils/stream/mapfile_stream.c: Likewise.
      * libmailutils/stream/memory_stream.c: Likewise.
      * libmailutils/stream/nullstream.c: Likewise.
      * libmailutils/stream/prog_stream.c: Likewise.
      * libmailutils/stream/rdcache_stream.c: Likewise.
      * libmailutils/stream/streamref.c: Likewise.
      * libmailutils/stream/syslogstream.c: Likewise.
      * libmailutils/stream/tcp.c: Likewise.
      * libmailutils/stream/xscript-stream.c: Likewise.
      * libmu_auth/tls.c: Likewise.
      
      * comsat/action.c: Change calls to mu_stream_ioctl.
      * imap4d/auth_gsasl.c: Likewise.
      * imap4d/io.c: Likewise.
      * imap4d/util.c: Likewise.
      * libmailutils/base/getpass.c: Likewise.
      * libmailutils/cfg/parser.y: Likewise.
      * libmailutils/mailbox/body.c: Likewise.
      * libmailutils/mime/mime.c: Likewise.
      * libmailutils/stdstream/dbgstream.c: Likewise.
      * libmailutils/stdstream/strerr.c: Likewise.
      * libmu_sieve/runtime.c: Likewise.
      * libmu_sieve/sieve.y: Likewise.
      * libmu_sieve/util.c: Likewise.
      * libproto/imap/trace.c: Likewise.
      * libproto/mailer/smtp_data.c: Likewise.
      * libproto/mailer/smtp_starttls.c: Likewise.
      * libproto/mailer/smtp_trace.c: Likewise.
      * libproto/pop/pop3_stls.c: Likewise.
      * libproto/pop/pop3_stream.c: Likewise.
      * libproto/pop/pop3_trace.c: Likewise.
      * maidag/lmtp.c: Likewise.
      * mail/source.c: Likewise.
      * mu/logger.c: Likewise.
      * pop3d/extra.c: Likewise.
      * pop3d/retr.c: Likewise.
      
      * TODO: Update.
      * doc/texinfo/nullstream.texi: Update.
      Sergey Poznyakoff authored
  3. 05 Dec, 2010 1 commit
    • The mu_debug_t object and associated functions have been removed.
      New debugging functions are based on the logstream interface.
      
      * include/mailutils/debug.hm4: Remove.
      * include/mailutils/debug.h: New file.
      * include/mailutils/Makefile.am (BUILT_SOURCES,EXTRA_DIST): Remove debug.h,
      debug.hm4.
      
      * mu-aux/debugdef.m4: Remove.
      * mu-aux/debcat.awk: New file.
      * mu-aux/Makefile.am (EXTRA_DIST): Replace debugdef.m4 with debcat.awk.
      
      * include/mailutils/sys/dbgstream.h: Remove.
      * include/mailutils/sys/debug.h: Remove.
      * include/mailutils/sys/Makefile.am (sysinclude_HEADERS): Remove debug.h
      and dbgstream.h, add debcat.h
      * include/mailutils/sys/.gitignore: Add debcat.h.
      
      * libmailutils/diag/dbgstderr.c: Remove.
      * libmailutils/diag/dbgsyslog.c: Remove.
      * libmailutils/diag/gdebug.c: Remove.
      * libmailutils/diag/debcat: New file.
      * libmailutils/diag/Makefile.am (libdiag_la_SOURCES): Remove these
      sources.
      * libmailutils/diag/debug.c: Rewrite from scratch.
      * libmailutils/diag/diag.c: Rewrite from scratch.
      
      * libmailutils/diag/syslog.c (mu_diag_syslog_printer): Remove function.
      (mu_log_syslog, mu_log_print_severity): New variables.
      
      * libmailutils/stream/dbgstream.c: Remove.
      * libmailutils/stream/Makefile.am (libstream_la_SOURCES): Remove dbgstream.c..
      * libmailutils/stdstream/Makefile.am (libstdstream_la_SOURCES): Add
      dbgstream.c.
      * libmailutils/stream/logstream.c (_mu_severity_str): Change strings
      to lower case.
      (_log_write): Improve handling of unrecognized escapes.
      (_log_ctl): Handle MU_LOGSTREAM_ADVANCE_LOCUS_LINE and
      MU_LOGSTREAM_ADVANCE_LOCUS_COL.
      
      * libmailutils/mailbox/folder.c (mu_folder_has_debug)
      (mu_folder_get_debug, mu_folder_set_debug): Remove functions.
      
      * mu-aux/debcat.awk: New file.
      * libmailutils/stdstream/dbgstream.c: New file.
      
      * comsat/action.c: Use new debug/log functions.
      * comsat/comsat.c: Likewise.
      * examples/aclck.c: Likewise.
      * examples/echosrv.c: Likewise.
      * examples/msg-send.c: Likewise.
      * examples/nntpclient.c: Likewise.
      * examples/numaddr.c: Likewise.
      * frm/common.c: Likewise.
      * imap4d/imap4d.c: Likewise.
      * imap4d/io.c: Likewise.
      * imap4d/util.c: Likewise.
      * libmailutils/auth/mu_auth.c: Likewise.
      * libmailutils/base/amd.c: Likewise.
      * libmailutils/cfg/driver.c: Likewise.
      * libmailutils/cfg/format.c: Likewise.
      * libmailutils/cfg/lexer.l: Likewise.
      * libmailutils/cfg/parser.y: Likewise.
      * libmailutils/mailbox/mailbox.c: Likewise.
      * libmailutils/mailbox/mbx_default.c: Likewise.
      * libmailutils/mailer/mailer.c: Likewise.
      * libmailutils/mailer/progmailer.c: Likewise.
      * libmailutils/server/acl.c: Likewise.
      * libmailutils/server/ipsrv.c: Likewise.
      * libmailutils/server/msrv.c: Likewise.
      * libmailutils/tests/wicket.c: Likewise.
      * libmu_argp/auth.c: Likewise.
      * libmu_argp/cmdline.c: Likewise.
      * libmu_argp/common.c: Likewise.
      * libmu_auth/ldap.c: Likewise.
      * libmu_cfg/acl.c: Likewise.
      * libmu_cfg/auth.c: Likewise.
      * libmu_cfg/common.c: Likewise.
      * libmu_cfg/ldap.c: Likewise.
      * libmu_cfg/sieve.c: Likewise.
      * libmu_cfg/sql.c: Likewise.
      * libmu_scm/mu_message.c: Likewise.
      * libmu_sieve/prog.c: Likewise.
      * libmu_sieve/runtime.c: Likewise.
      * libproto/imap/trace.c: Likewise.
      * libproto/mailer/mbox.c: Likewise.
      * libproto/mailer/prog.c: Likewise.
      * libproto/mailer/sendmail.c: Likewise.
      * libproto/mailer/smtp.c: Likewise.
      * libproto/mailer/smtp_trace.c: Likewise.
      * libproto/mbox/folder.c: Likewise.
      * libproto/mbox/mbox.c: Likewise.
      * libproto/nntp/folder.c: Likewise.
      * libproto/nntp/nntp_debug.c: Likewise.
      * libproto/pop/mbox.c: Likewise.
      * libproto/pop/pop3_trace.c: Likewise.
      * maidag/guile.c: Likewise.
      * maidag/lmtp.c: Likewise.
      * maidag/maidag.c: Likewise.
      * maidag/util.c: Likewise.
      * mail/mail.c: Likewise.
      * mail/mailvar.c: Likewise.
      * mail/send.c: Likewise.
      * mail/source.c: Likewise.
      * mh/mh_argp.c: Likewise.
      * mh/send.c: Likewise.
      * mimeview/mimeview.c: Likewise.
      * movemail/movemail.c: Likewise.
      * mu/wicket.c: Likewise.
      * pop3d/extra.c: Likewise.
      * pop3d/pop3d.c: Likewise.
      * readmsg/readmsg.c: Likewise.
      * sieve/sieve.c: Likewise.
      * testsuite/mimetest.c: Likewise.
      
      * libmu_sieve/sieve-priv.h (mu_sieve_machine) <parse_error_printer>
      <error_printer, debug_printer, debug>: Remove.
      <errstream>: New member.
      (mu_sv_compile_error, mu_sv_print_value_list)
      (mu_sv_print_tag_list): Change prototypes.
      
      * libmu_sieve/actions.c: Use new sieve debug functions.
      * libmu_sieve/extensions/list.c: Likewise.
      * libmu_sieve/extensions/moderator.c: Likewise.
      * libmu_sieve/extensions/pipe.c: Likewise.
      * libmu_sieve/extensions/spamd.c: Likewise.
      * libmu_sieve/extensions/timestamp.c: Likewise.
      * libmu_sieve/extensions/vacation.c: Likewise.
      * libmu_sieve/sieve.y : Likewise.
      * libmu_sieve/sieve.l: Likewise.
      * libmu_sieve/tests.c: Likewise.
      * libmu_sieve/util.c: Rewrite diagnostic support.
      * /maidag/sieve.c: Use new debug/log and sieve diagnostic functions.
      
      * mu/mu.c (main): Remove call to mu_stdstream_setup. It is called
      by mu_app_init now.
      
      * libmailutils/base/wicket.c (mu_wicket_stream_match_url): Change signature.
      * libmailutils/cfg/gocs.c (mu_gocs_logging_init): Rewrite.
      * libmailutils/mailbox/message.c (mu_message_save_to_mailbox): Remove
      mu_debug_t argument.
      * libmailutils/stdstream/basestr.c (mu_stdstream_setup): Minor fixes.
      * libmailutils/stdstream/strerr.c (mu_stdstream_strerr_create): Do
      not install filter stream if tag is NULL.
      (mu_stdstream_strerr_setup): New function.
      * libmu_argp/muinit.c (mu_app_init): Set mu_log_tag.
      Call mu_stdstream_setup.
      * libmu_scm/mu_dbgport.c: Rewrite port support.
      
      * include/mailutils/acl.h (mu_acl_get_debug)
      (mu_acl_set_debug): Remove prototypes.
      * include/mailutils/auth.h (mu_wicket_stream_match_url): Change signature.
      * include/mailutils/cfg.h (mu_cfg_locus_t): Remove typedef, use
      struct mu_locus instead.
      (mu_cfg_locus): Remove declaration.
      (mu_cfg_node)<locus>: Change type.
      (mu_cfg_node)<debug>: Remove.
      (mu_cfg_vperror,mu_cfg_perror)
      (mu_cfg_parse_error,mu_cfg_format_error): Remove prototypes.
      (mu_cfg_callback_t): Change signature.  All uses updated.
      (mu_cfg_get_debug): Remove prototype.
      (mu_cfg_assert_value_type, mu_cfg_string_value_cb): Change signature.
      (mu_cfg_tree_set_debug): Remove prototype.
      (mu_cfg_tree_create_node): Change signature.
      * include/mailutils/diag.h (MU_DIAG_): Redefine via MU_LOG_ constants.
      (mu_diag_get_debug,mu_diag_set_debug): Remove.
      (mu_diag_cont_vprintf, mu_diag_cont_printf)
      (mu_diag_at_locus): New functions.
      * include/mailutils/folder.h (mu_folder_has_debug)
      (mu_folder_get_debug, mu_folder_set_debug): Remove prototypes.
      * include/mailutils/gocs.h (mu_gocs_logging): Remove structure.
      (mu_gocs_debug)<errpfx>: Remove.
      * include/mailutils/guile.h (mu_scm_make_debug_port): Change prototype.
      * include/mailutils/mailbox.h (mu_mailbox_has_debug)
      (mu_mailbox_get_debug,mu_mailbox_set_debug): Remove.
      * include/mailutils/mailer.h (mu_mailer_get_debug)
      (mu_mailer_set_debug): Remove.
      * include/mailutils/message.h (mu_message_save_to_mailbox): Change
      signature.
      * include/mailutils/mu_auth.h (mu_auth_set_debug): Remove proto.
      * include/mailutils/nntp.h (mu_nntp_set_debug): Remove.
      * include/mailutils/progmailer.h (mu_progmailer_set_debug): Remove proto.
      * include/mailutils/server.h (mu_ip_server_set_debug)
      (mu_ip_server_get_debug): Remove proto.
      
      * include/mailutils/sieve.h (mu_sieve_locus_t): Remove.
      Use struct mu_locus instead.
      (mu_sieve_printf_t, mu_sieve_parse_error_t): Remove.
      (mu_sieve_action_log_t): Change signature.
      (mu_sieve_machine_init): Change signature.
      (mu_sieve_machine_init_ex): New function.
      (mu_sieve_get_diag_stream)
      (mu_sieve_set_diag_stream): New functions.
      (mu_sieve_set_data): New function.
      (mu_sieve_get_locus): Change signature.
      (mu_sieve_set_error,mu_sieve_set_parse_error)
      (mu_sieve_set_debug,mu_sieve_set_debug_object): Remove protos.
      * include/mailutils/stdstream.h (mu_stdstream_strerr_setup): New proto.
      * include/mailutils/stream.h (MU_LOGSTREAM_ADVANCE_LOCUS_LINE)
      (MU_LOGSTREAM_ADVANCE_LOCUS_COL): New ioctls.
      (mu_dbgstream_create): Change signature.
      * include/mailutils/sys/folder.h (_mu_folder) <debug>: Remove.
      * include/mailutils/sys/mailbox.h (_mu_mailbox) <debug>: Remove.
      * include/mailutils/sys/mailer.h (_mu_mailer) <debug>: Remove.
      * include/mailutils/sys/nntp.h (_mu_nntp) <debug>: Remove.
      * include/mailutils/syslog.h (mu_log_syslog)
      (mu_log_print_severity): New externs.
      * include/mailutils/types.hin (_mu_debug, mu_debug_t): Remove.
      * lib/tcpwrap.h: Remove unused prototypes.
      
      * imap4d/imap4d.h: Include mailutils/stdstream.h
      * mail/mail.h: Likewise.
      * pop3d/pop3d.h: Likewise.
      
      * mh/comp.c (main): Bugfix.
      
      * po/POTFILES.in: Update.
      * TODO: Update.
      Sergey Poznyakoff authored
  4. 02 Dec, 2010 1 commit
    • * configure.ac: Remove checks for strtok_r, strchrnul, strndup,
      asprintf, vasprintf: none of these is used any more.
      * maidag/lmtp.c (lmtp_reply): Use mu_vasnprintf.
      * mh/mh.h (strchrnul): Remove proto.
      * mh/mh_list.c (want_header): Rewrite.
      (print): Use strcspn.
      Sergey Poznyakoff authored
  5. 25 Nov, 2010 1 commit
    • * include/mailutils/stream.h (mu_temp_file_stream_create): Change signature.
      * include/mailutils/sys/Makefile.am (sysinclude_HEADERS): Add temp_file_stream.h
      * include/mailutils/util.h (mu_tempfile_hints): Remove const qualifiers.
      * libmailutils/stream/temp_file_stream.c: Include sys/temp_file_stream.h.
      (fd_temp_open): Use data from struct _mu_temp_file_stream.
      (fd_temp_done): New function.
      (mu_temp_file_stream_create): Take hints and flags as arguments.
      
      * examples/mta.c: Update calls to mu_temp_file_stream_create.
      * libproto/mbox/mbox.c: Likewise.
      * libproto/pop/mbox.c: Likewise.
      * maidag/deliver.c: Likewise.
      * maidag/lmtp.c: Likewise.
      * mh/burst.c: Likewise.
      * mh/prompter.c: Likewise.
      Sergey Poznyakoff authored
  6. 09 Oct, 2010 1 commit
  7. 08 Oct, 2010 1 commit
    • * maidag/maidag.c (mda_mode,lmtp_mode,url_option): Remove.
      (maidag_mode): New variable.
      (parse_opt): The --lmtp, --url and --mda options set the delivery-mode
      configuration statement.
      (cb_delivery_mode): New callback.
      (maidag_cfg_param) <delivery-mode>: New statement.
      (main): Redo delivery mode selection.
      * maidag/maidag.h (maidag_mode): New enum.
      (maidag_mode): New extern.
      (mda_mode,lmtp_mode,url_option): Remove.
      (maidag_delivery_fn): New typedef.
      (maidag_stdio_delivery,mda): Change signature.
      (deliver_to_url, deliver_to_user): New prototypes.
      
      * maidag/deliver.c (mda): Take delivery function as a parameter.
      (maidag_stdio_delivery): Likewise.
      (deliver_to_user): Rename to deliver_to_mailbox.
      (deliver_url): Rename to do_delivery.
      (deliver): Rename to deliver_to_url.
      (deliver_to_user): New function.
      * maidag/forward.c (process_forward): Use deliver_to_user.
      * maidag/lmtp.c (dot_deliver): Likewise.
      Sergey Poznyakoff authored
  8. 07 Oct, 2010 1 commit
    • * configure.ac: Add maidag/tests
      * maidag/Makefile.am (SUBDIRS): Add tests.
      * maidag/deliver.c (make_tmp): Write a
      message delimiter.
      (is_remote_url, is_mailer_url): Remove.
      (deliver_url): Allow for URLs without user name.
      * maidag/lmtp.c (lmtp_set_privs): Empty group list
      means do not switch to any groups.
      * maidag/maidag.c (mda_mode): New variable.
      (options): New option --mda.
      (cb_group, cb2_group): Create the list even if it is empty.
      (main): Handle --mda.
      
      * maidag/tests/.gitignore: New file.
      * maidag/tests/Makefile.am: New file.
      * maidag/tests/atlocal.in: New file.
      * maidag/tests/input.msg: New file.
      * maidag/tests/lmtp.at: New file.
      * maidag/tests/mda.at: New file.
      * maidag/tests/testsuite.at: New file.
      * maidag/tests/url-mbox.at: New file.
      * maidag/tests/input.msg: New file.
      Sergey Poznyakoff authored
  9. 06 Oct, 2010 1 commit
    • * libmailutils/file_stream.c (mu_fd_stream_create): Mark stream as
      open, do not call mu_stream_open explicitly.
      * libmailutils/message_stream.c (mu_stream_to_message): Bugfixes,
      wrong owner given to mu_envelope_set_ calls.
      * libmailutils/stream.c (_MU_STR_FLUSH_ALL)
      (_MU_STR_FLUSH_KEEP): New macros for _stream_flush_buffer.
      (_stream_flush_buffer): Change the meaning of the last argument.
      All callers updated.
      (mu_stream_seek): Fix operation with MU_SEEK_END.
      Call _mu_stream_cleareof on success.
      (mu_stream_read): Call _stream_flush_buffer in buffered mode.
      (mu_stream_getdelim, mu_stream_readdelim): Call _stream_flush_buffer.
      * libmailutils/streamcpy.c (mu_stream_copy): Reset size if mu_stream_seek
      fails.
      * libmailutils/temp_file_stream.c (mu_temp_file_stream_create): Set
      full buffering mode by default.
      
      * maidag/mailtmp.c: Remove.
      * maidag/Makefile.am (maidag_SOURCES): Remove mailtmp.c
      * po/POTFILES.in: Likewise.
      * maidag/deliver.c (make_tmp): Rewrite.  Return mu_mailbox_t.
      All callers changed.
      * maidag/lmtp.c (lmtp_transcript): Remove static.
      (lmpt_transcript): New function.
      (lmtp_reply): Use mu_stream_t instead of FILE.
      (xlatnl): Remove.  Superseded by mu_rtrim_cset and family.
      (mtmp, mbox): Remove globals.
      (mesg): New global.
      (cfun_unknown, cfun_mail_from, cfun_rcpt_to)
      (dot_temp_fail, dot_deliver, cfun_rset)
      (cfun_lhlo, cfun_quit, cfun_help): Use mu_stream_t instead of FILE.
      (cfun_data): Rewrite.
      (cfun_dot): Remove.
      (to_fgets): Rewrite using mu_stream_t.
      (lmtp_loop): Change signature. Rewrite using mu_stream_t.
      (lmtp_connection, maidag_lmtp_server): Update accordingly.
      * maidag/maidag.c (maidag_transcript): New global.
      (options, parse_opt): New option --transcript.
      * maidag/maidag.h (maidag_transcript): New extern.
      (mail_tmp_begin, mail_tmp_add_line, mail_tmp_finish)
      (mail_tmp_destroy): Remove.
      Sergey Poznyakoff authored
  10. 20 Feb, 2010 1 commit
    • * include/mailutils/iterator.h (mu_itrctl_req): New enum.
      (mu_iterator_skip, mu_iterator_ctl)
      (mu_iterator_set_itrctl): New prototypes.
      * include/mailutils/list.h (mu_list_free_item): New prototype.
      * libproto/include/iterator0.h (struct _mu_iterator)<itrctl>: New method.
      * libproto/include/list0.h (_mu_list_clear): New proto.
      * mailbox/iterator.c (mu_iterator_set_itrctl): New function.
      (mu_iterator_skip, mu_iterator_ctl): New functions.
      * mailbox/list.c (_insert_item): Re-implement function.
      (mu_list_insert): Use _insert_item again.
      (mu_list_remove): Don't keep track of the previous item.
      (list_itrctl): New function.
      (mu_list_get_iterator): Set itrctl method.
      * mailbox/listlist.c (clear_list): Rename to _mu_list_clear,
      remove static qualifier. All uses updated.
      
      * mailbox/freeitem.c: New file.
      * mailbox/Makefile.am (libmailutils_la_SOURCES): Add freeitem.c.
      
      * examples/listop.c (read_list): Rewrite to simplify
      calling convention. All callers updated.
      (inctl_tell,ictl_del,ictl_repl)
      (ictl_ins,ictl): New functions.
      (help): Add new commands.
      (shell): Handle "inctl" command.
      (delete): Fix memory leak.
      (main): Set mu_list_free_item as a destroy_item function.
      
      * mailbox/testsuite/mailbox/listop.c: Add ictl tests.
      
      * libmu_cfg/sieve.c (_add_path): Set mu_list_free_item as
      a destroy_item function.
      * mailbox/gocs.c (mu_gocs_store): Likewise.
      * maidag/lmtp.c (cfun_rcpt_to): Likewise.
      * imap4d/namespace.c (namespace_init): Likewise.
      * libmu_sieve/conf.c (_path_append): Likewise.
      Sergey Poznyakoff authored
  11. 05 Jan, 2010 1 commit
  12. 16 Dec, 2009 1 commit
    • Affected files:
      
      * comsat/comsat.c
      * examples/header.c
      * examples/mailcap.c
      * examples/pop3client.c
      * examples/url-parse.c
      * imap4d/fetch.c
      * imap4d/id.c
      * imap4d/list.c
      * imap4d/select.c
      * imap4d/status.c
      * imap4d/store.c
      * imap4d/sync.c
      * imap4d/util.c
      * include/mailutils/sieve.h
      * libmu_argp/common.c
      * libmu_argp/muinit.c
      * libmu_sieve/actions.c
      * libmu_sieve/extensions/pipe.c
      * libmu_sieve/extensions/vacation.c
      * libmu_sieve/prog.c
      * libmu_sieve/require.c
      * libmu_sieve/runtime.c
      * libmu_sieve/sieve-priv.h
      * libmu_sieve/sieve.y
      * libproto/imap/folder.c
      * libproto/imap/mbox.c
      * libproto/mailer/sendmail.c
      * libproto/mbox/mbox.c
      * libproto/pop/pop3_list.c
      * libproto/pop/pop3_stat.c
      * maidag/lmtp.c
      * maidag/sieve.c
      * mail/copy.c
      * mail/decode.c
      * mail/envelope.c
      * mail/eq.c
      * mail/escape.c
      * mail/from.c
      * mail/mail.h
      * mail/mailline.c
      * mail/mailvar.c
      * mail/size.c
      * mail/util.c
      * mail/write.c
      * mailbox/cfg_format.c
      * mailbox/folder.c
      * mailbox/parse822.c
      * mailbox/system.c
      * messages/messages.c
      * mh/folder.c
      * mh/forw.c
      * mh/inc.c
      * mh/mh.h
      * mh/mh_alias.l
      * mh/mh_fmtgram.y
      * mh/mh_getopt.h
      * mh/mh_init.c
      * mh/mh_msgset.c
      * mh/mh_whatnow.c
      * mh/mhn.c
      * mh/pick.y
      * mimeview/mimetypes.y
      * python/libmu_py/debug.c
      * sieve/sieve.c
      Sergey Poznyakoff authored
  13. 31 Oct, 2009 1 commit
  14. 25 Aug, 2009 1 commit
    •    The string MESSAGE should not begin with a capital letter when it
         follows a program name and/or file name, because that isn't the
         beginning of a sentence.  (The sentence conceptually starts at the
         beginning of the line.)  Also, it should not end with a period.
      
      * include/mailutils/diag.h (mu_diag_funcall): New prototype.
      * mailbox/diag.c: New function.
      
      * comsat/action.c, comsat/comsat.c, comsat/oldcfg.c,
      config/mailutils-config.c, configure.ac, dotlock/dotlock.c,
      frm/common.c, frm/from.c, guimb/collect.c, guimb/main.c,
      guimb/util.c, imap4d/auth_gsasl.c, imap4d/auth_gss.c, imap4d/bye.c,
      imap4d/close.c, imap4d/imap4d.c, imap4d/login.c, imap4d/preauth.c,
      imap4d/signal.c, imap4d/starttls.c, imap4d/util.c, lib/mailcap.c,
      lib/tcpwrap.c, libmu_argp/mu_argp.c, libmu_auth/ldap.c,
      libmu_auth/radius.c, libmu_auth/sql.c, libmu_auth/tls.c,
      libmu_cfg/acl.c, libmu_cfg/common.c, libmu_cfg/init.c,
      libmu_cfg/ldap.c, libmu_cfg/sql.c, libmu_sieve/actions.c,
      libmu_sieve/comparator.c, libmu_sieve/extensions/moderator.c,
      libmu_sieve/prog.c, libmu_sieve/sieve.l, libproto/imap/folder.c,
      libproto/mbox/mbox.c, maidag/deliver.c, maidag/lmtp.c,
      maidag/maidag.c, maidag/mailquota.c, maidag/mailtmp.c,
      maidag/script.c, mail/alias.c, mail/cd.c, mailbox/cfg_lexer.l,
      mailbox/cfg_parser.y, mailbox/file_stream.c, mailbox/gocs.c,
      mailbox/msrv.c, mailbox/mutil.c, mailbox/registrar.c,
      messages/messages.c, mh/folder.c, mh/forw.c, mh/inc.c, mh/mark.c,
      mh/mh_ctx.c, mh/mh_fmtgram.y, mh/mh_format.c, mh/mh_init.c,
      mh/mh_list.c, mh/mh_msgset.c, mh/mh_whatnow.c, mh/mh_whom.c,
      mh/mhl.c, mh/mhn.c, mh/pick.c, mh/refile.c, mh/repl.c, mh/rmf.c,
      mh/scan.c, mh/send.c, mimeview/mimetypes.l, mimeview/mimeview.c,
      movemail/movemail.c, pop3d/apop.c, pop3d/bulletin.c, pop3d/extra.c,
      pop3d/lock.c, pop3d/logindelay.c, pop3d/pop3d.c, pop3d/popauth.c,
      pop3d/quit.c, pop3d/signal.c, pop3d/user.c, readmsg/readmsg.c,
      sieve/sieve.c: Fix error messages.
      Sergey Poznyakoff authored
  15. 07 Jul, 2009 2 commits
    • * include/mailutils/cstr.h (mu_str_stripws): New function.
      * mailbox/stripws.c: New file.
      * mailbox/Makefile.am (libmailutils_la_SOURCES): Add stripws.c
      
      * examples/nntpclient.c (stripwhite): Remove. Use mu_str_stripws instead.
      (execute_line): Rewrite using new string functions.
      * examples/pop3client.c: Likewise.
      * mailbox/mailcap.c (stripwhite): Remove. Use mu_str_stripws instead.
      * mailbox/mime.c (_strltrim, _strttrim, _strtrim): Remove. Use
      mu_str_stripws instead.
      
      * mail/mail.c: Use mu_str_stripws.
      * mail/mail.h (util_stripwhite): Remove prototype.
      * mail/util.c (util_stripwhite): Remove
      * examples/pop3client.c: Likewise.
      * imap4d/util.c: Use new string functions.
      * maidag/forward.c: Likewise.
      * maidag/lmtp.c: Likewise.
      * mh/mhn.c: Likewise.
      
      * libproto/imap/folder.c: Remove unused local.
      * libproto/mailer/smtp.c (smtp_writeline): Minor optimization.
      Sergey Poznyakoff authored
    • * include/mailutils/cctype.h: New file.
      * include/mailutils/cstr.h: New file.
      * include/mailutils/Makefile.am: Add new files.
      * mailbox/cstrcasecmp.c: New file.
      * mailbox/cstrlower.c: New file.
      * mailbox/cstrupper.c: New file.
      * mailbox/muctype.c: New file.
      * mailbox/strltrim.c: New file.
      * mailbox/strrtrim.c: New file.
      * mailbox/strskip.c: New file.
      * mailbox/Makefile.am: Add new files.
      * .gitignore: Update
      
      * gnulib.modules: Remove strcase.
      
      * comsat/comsat.h, imap4d/imap4d.h, include/mailutils/mailutils.h,
      include/mailutils/mutil.h, include/mailutils/sys/pop3.h,
      libmu_scm/mu_scm.h, mail/mail.h: Include cstr.h and cctype.h.
      
      * comsat/oldcfg.c, config/mailutils-config.c,
      examples/mimetest.c, examples/mta.c, examples/nntpclient.c,
      examples/pop3client.c, imap4d/append.c, imap4d/create.c,
      imap4d/delete.c, imap4d/fetch.c, imap4d/id.c,
      imap4d/idle.c, imap4d/list.c, imap4d/namespace.c,
      imap4d/rename.c, imap4d/search.c, imap4d/status.c,
      imap4d/store.c, imap4d/uid.c, imap4d/util.c,
      libmu_argp/compat.c, libmu_auth/ldap.c,
      libmu_auth/sql.c, libmu_scm/mu_message.c,
      libmu_sieve/actions.c, libmu_sieve/comparator.c,
      libmu_sieve/extensions/list.c, libmu_sieve/extensions/spamd.c,
      libmu_sieve/extensions/vacation.c, libmu_sieve/load.c,
      libmu_sieve/sieve.l, libmu_sieve/tests.c,
      libproto/imap/folder.c, libproto/mailer/smtp.c,
      libproto/mbox/mbox.c, libproto/mh/folder.c,
      libproto/mh/mbox.c, libproto/pop/folder.c,
      libproto/pop/mbox.c, libproto/pop/pop3_connect.c,
      maidag/forward.c, maidag/lmtp.c, maidag/maidag.c,
      maidag/maidag.h, maidag/mailquota.c, mail/alt.c,
      mail/copy.c, mail/decode.c, mail/escape.c,
      mail/followup.c, mail/mail.c, mail/mailline.c,
      mail/msgset.y, mail/print.c, mail/reply.c,
      mail/send.c, mail/shell.c, mail/util.c,
      mail/write.c, mailbox/address.c,
      mailbox/amd.c, mailbox/assoc.c,
      mailbox/attachment.c, mailbox/attribute.c,
      mailbox/cfg_lexer.l, mailbox/date.c,
      mailbox/filter.c, mailbox/gdebug.c,
      mailbox/header.c, mailbox/kwd.c,
      mailbox/locale.c, mailbox/mailcap.c,
      mailbox/mailer.c, mailbox/message.c,
      mailbox/message_stream.c, mailbox/mime.c,
      mailbox/msrv.c, mailbox/mutil.c,
      mailbox/parse822.c, mailbox/progmailer.c,
      mailbox/rfc2047.c, mailbox/syslog.c, mailbox/url.c,
      mailbox/version.c, mh/mh.h, mh/mh_alias.l,
      mh/mh_ctx.c, mh/mh_fmtgram.y, mh/mh_init.c,
      mh/mh_list.c, mh/mh_msgset.c, mh/mh_sequence.c,
      mh/mh_whatnow.c, mh/mh_whom.c, mh/mhn.c,
      mh/mhparam.c, mh/pick.y, mh/sortm.c,
      mimeview/mimetypes.y, pop3d/bulletin.c,
      pop3d/expire.c, pop3d/pop3d.c, pop3d/pop3d.h,
      pop3d/popauth.c, pop3d/user.c, readmsg/msglist.c,
      readmsg/readmsg.c, readmsg/readmsg.h, sql/mysql.c,
      sql/postgres.c: Use locale-independent cclass and str functions.
      Sergey Poznyakoff authored
  16. 05 Nov, 2008 1 commit
    • * 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
  17. 28 Oct, 2008 1 commit
    • 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
  18. 05 Jan, 2008 2 commits
    • * mailbox/Makefile.am: Replace tcpsrv.c with ipsrv.c.
      * mailbox/tcpsrv.c: Replace with ...
      * mailbox/ipsrv.c: ... this file, which supports both TCP and UDP.
      
      * mailbox/msrv.c: Use mu_ip_server_t.
      * mailbox/server.c (mu_server_destroy): Bugfix.
      * comsat/comsat.c, comsat/comsat.h: Use m-server.
      
      * maidag/lmtp.c, maidag/maidag.h, pop3d/pop3d.c: Update to match
      changed m-server types.
      
      * include/mailutils/server.h (mu_tcp_*): Replace with mu_ip_*.
      Add new prototypes.
      * include/mailutils/types.hin: Likewise.
      
      * lib/tcpwrap.c, lib/tcpwrap.h (mu_tcp_wrapper_prefork): Update
      signature to match mu_m_server_prefork_fp.
      
      * examples/echosrv.c: Use mu_ip_server_t
      * imap4d/idle.c, imap4d/imap4d.c, imap4d/imap4d.h,
      imap4d/preauth.c, imap4d/util.c: Remove mu_gocs_daemon.
      * include/mailutils/gocs.h, include/mailutils/libargp.h,
      include/mailutils/libargp.h, libargp/cmdline.c,
      libargp/common.c, libcfg/common.c, libcfg/init.c,
      mailbox/daemon.c, mailbox/gocs.c: Remove mu_gocs_daemon.
      
      * mailbox/amd.c (amd_open): Provide a null-locker.
      * include/mailutils/locker.h, mailbox/locker.c
      (mu_locker_mod_flags): New function.
      
      * examples/config/mailutils.schema: LDAP schema for Mailutils.
      * examples/config/Makefile.am: Add mailutils.schema
      
      * dotlock/dotlock.c (main): Remove superfluous invocation of
      mu_locker_set_flags.
      
      * libproto/mbox/mbox.c (mbox_quick_get_message): Return
      MU_ERR_NOENT if mailbox is empty.
      
      * mailbox/tcpsrv.c (family_to_proto): Rename to
      mu_address_family_to_domain.
      * po/POTFILES.in: Update.
      * pop3d/lock.c (pop3d_lock): use mu_locker_mod_flags, instead of
      mu_locker_set_flags.
      Sergey Poznyakoff authored
    • function type.
      (mu_m_server_destroy, mu_m_server_set_prefork)
      (mu_m_server_configured_count, mu_m_server_end): New functions.
      * mailbox/msrv.c (struct _mu_m_server.prefork): New member.
      (mu_m_server_set_prefork): New function.
      (m_srv_conn): Use prefork to decide whether to proceed with a
      connection.
      
      * lib/tcpwrap.c, lib/tcpwrap.h (mu_tcp_wrapper_prefork): New
      function.
      
      * imap4d/imap4d.c, maidag/lmtp.c, maidag/maidag.c,
      pop3d/pop3d.c: Use m-server prefork to handle TCP wrappers.
      
      * po/POTFILES.in: Add more files.
      Sergey Poznyakoff authored
  19. 04 Jan, 2008 1 commit
    • * mailbox/msrv.c: New file.
      * mailbox/Makefile.am: Add msrv.c.
      * include/mailutils/server.h (mu_tcp_server_conn_fp): Take
      sockaddr as argument
      (mu_tcp_server_create,mu_tcp_server_get_sockaddr): Likewise.
      (mu_m_server_*): New prototypes.
      * include/mailutils/types.hin (mu_m_server_t): New type.
      * mailbox/acl.c: Fix debugging output.
      (mu_sockaddr_to_str, mu_sockaddr_to_astr): New functions.
      
      * mailbox/tcpsrv.c: Handle AF_INET and AF_UNIX sockets.
      * examples/echosrv.c: Update mu_tcp_server_* calls.
      * examples/config/Makefile.am: Remove comsat.conf and
      mailutils.rc.
      
      * imap4d/imap4d.c, imap4d/imap4d.h, imap4d/signal.c,
      maidag/lmtp.c, maidag/maidag.c, maidag/maidag.h, pop3d/extra.c,
      pop3d/pop3d.c, pop3d/pop3d.h, pop3d/signal.c: Rewrite using
      m-server.
      
      * include/mailutils/cfg.h (mu_offsetof): Bug fix.
      * mailbox/cfg_driver.c (dup_container): Bugfix. Offset was not
      copied.
      (mu_cfg_section_add_params): If identifier starts with a dot, it
      is hidden, i.e. its substatements are copied directly into the
      parent structure.
      * mailbox/cfg_lexer.c (isword): Take care of opening braces.
      (default_lexer): Several fixes.
      * mailbox/cfg_parser.y (mu_cfg_parse): Initialize debugging level
      from global settings.
      (_scan_tree_helper): Ensure debugging object has correct locus
      information before calling the section parser.
      (mu_cfg_scan_tree): If no debugging object is supplied, use the
      one from diag.c
      * mailbox/daemon.c (mu_daemon_create_pidfile): Return a meaningful
      error code.
      * mailbox/debug.c (mu_debug_create): Initialize printer to NULL.
      (mu_debug_vprintf): If printer is NULL, use
      mu_debug_default_printer.
      (mu_debug_check_level): Bugfix.
      
      * mailbox/server.c: Minor indentation fix.
      * mailbox/syslog.c (mu_diag_syslog_printer): Chop off \r as well.
      * mailbox/folder.c (mu_folder_create_from_record): Bugfixes.
      
      * include/mailutils/debug.hm4 (mu_sockaddr_to_str)
      (mu_sockaddr_to_astr): New functions.
      
      * include/mailutils/.cvsignore: Add debug.h
      
      * po/POTFILES.in: Update.
      Sergey Poznyakoff authored
  20. 15 Dec, 2007 1 commit
  21. 05 Dec, 2007 1 commit
    • * imap4d/Makefile.am, mu_daemon_argp_parser (LDADD): Add
      TCPWRAP_LIBRARIES.
      * imap4d/imap4d.c: Include tcpwrap.h
      (imap4d_mainloop): Check the connection using tcp wrappers.
      * imap4d/preauth.c: Fix a typo in the comment.
      * maidag/maidag.h: Include tcpwrap.h
      * maidag/maidag.c, maidag/lmtp.c: Add TCP wrappers support.
      * pop3d/pop3d.c: Include tcpwrap.h
      (pop3d_mainloop): Check the connection using tcp wrappers.
      * lib/Makefile.am: Add tcpwrap.c and tcpwrap.h
      * lib/tcpwrap.c: New file.
      * lib/tcpwrap.h: New file.
      * libargp/common.c (mu_daemon_argp_parser): Bugfix.
      Sergey Poznyakoff authored
  22. 29 Nov, 2007 1 commit
    • imap4d/auth_gss.c, imap4d/authenticate.c, imap4d/bye.c,
      imap4d/close.c, imap4d/imap4d.c, imap4d/login.c, imap4d/search.c,
      imap4d/signal.c, imap4d/starttls.c, imap4d/util.c, maidag/lmtp.c,
      maidag/maidag.c, maidag/script.c, mail.local/main.c,
      mail.local/script.c, pop3d/apop.c, pop3d/bulletin.c,
      pop3d/extra.c, pop3d/lock.c, pop3d/logindelay.c, pop3d/pop3d.c,
      pop3d/quit.c, pop3d/signal.c, pop3d/user.c, libsieve/util.c: Use
      mu_diag_output instead of syslog.
      
      * sieve/sieve.c: New option --no-program-name, for testsuite.
      * sieve/testsuite/lib/sieve.exp: Call sieve with the
      --no-program-name option.
      
      * mailbox/cfg_lexer.c, mailbox/cfg_parser.y: Improve debugging.
      * mailbox/diag.c: New file.
      * mailbox/gdebug.c (mu_debug_level_from_string): New function.
      * mailbox/muerror.c (mu_verror, mu_error): Rewrite using mu_diag
      functions.
      * mailbox/syslog.c (mu_diag_level_to_syslog): New function.
      (mu_diag_syslog_printer): New function.
      
      * mh/mh_argp.c (mh_argp_parse): Set prigram name using
      mu_set_program_name.
      * mh/mh_init.c (mu_error_printer): No longer needed.
      * movemail/movemail.c (movemail_error_printer): No longer needed.
      
      * include/mailutils/Makefile.am (pkginclude_HEADERS): Add diag.h
      * include/mailutils/diag.h: New file.
      * include/mailutils/cfg.h (mu_cfg_lexer_t): Take mu_debug_t as its
      second argument.
      * include/mailutils/error.h: Include diag.h
      (mu_program_name,mu_set_program_name): Remove. Already declared in
      diag.h.
      (mu_error_set_print): Deprecated.
      
      * mailbox/Makefile.am (libmailutils_la_SOURCES): Add diag.c
      Sergey Poznyakoff authored
  23. 17 Nov, 2007 1 commit
    • * include/mailutils/gocs.h, include/mailutils/pam.h,
      include/mailutils/radius.h, include/mailutils/syslog.h: New files
      * lib/argpinit.c, lib/muinit.c, lib/muinit.h: New files.
      * libsieve/conf.c: New file.
      
      * libcfg: New directory
      * libcfg/libcfg.h, libcfg/auth.c, libcfg/common.c, libcfg/init.c,
      libcfg/gsasl.c, libcfg/pam.c, libcfg/radius.c, libcfg/sieve.c,
      libcfg/sql.c, libcfg/tls.c, libcfg/virtdomain.c,
      libcfg/.cvsignore: New files.
      
      * libargp: New directory
      * libargp/auth.c, libargp/cmdline.h, libargp/common.c,
      libargp/gsasl.c, libargp/mu_argp.h, libargp/mu_argp.c,
      libargp/pam.c, libargp/radius.c, libargp/sieve.c, libargp/sql.c,
      libargp/tls.c, libargp/virtdomain.c, libargp/.cvsignore: New
      files.
      
      * mailbox/.cvsignore: Add cfg_parser.c and cfg_parser.h.
      * Makefile.am (SUBDIRS): Add libargp and libcfg.
      * configure.ac (MU_APP_LIBRARIES): New variable
      (MU_COMMON_INCLUDES): add libargp and libcfg
      (AC_CONFIG_FILES): Add libargp and libcfg.
      
      * auth/gsasl.c, auth/pam.c, auth/radius.c, auth/sql.c, auth/sql.h,
      auth/tls.c, auth/virtual.c, comsat/comsat.h, frm/frm.h,
      guimb/guimb.h, imap4d/imap4d.h, include/mailutils/gsasl.h,
      include/mailutils/libsieve.h, include/mailutils/mailutils.h,
      include/mailutils/mu_auth.h, include/mailutils/tls.h,
      include/mailutils/sql.h, maidag/maidag.h, mail/mail.h,
      mail.local/mail.local.h, mailbox/daemon.c, mailbox/system.c,
      mh/mh_argp.c, mh/mh_getopt.h, pop3d/pop3d.h,
      readmsg/readmsg.h: Remove argp stuff
      
      * comsat/comsat.c, config/mailutils-config.c, dotlock/dotlock.c,
      examples/muauth.c, examples/muemail.c, frm/frm.c, frm/from.c,
      guimb/main.c, imap4d/idle.c, imap4d/imap4d.c, imap4d/util.c,
      imap4d/version.c, maidag/lmtp.c, maidag/maidag.c,
      maidag/mailquota.c, mail/mail.c, mail/send.c, mail/version.c,
      mail.local/mailquota.c, mail.local/main.c,
      mail.remote/mail.remote.c, mailbox/mu_auth.c, messages/messages.c,
      mimeview/mimeview.c, movemail/movemail.c, pop3d/extra.c,
      pop3d/pop3d.c, pop3d/popauth.c, readmsg/readmsg.c, sieve/sieve.c:
      Use mu_app_init for parsing command line and
      configuration files.
      * comsat/Makefile.am, config/Makefile.am, dotlock/Makefile.am,
      examples/Makefile.am, frm/Makefile.am, guimb/Makefile.am,
      imap4d/Makefile.am, maidag/Makefile.am, mail/Makefile.am,
      mail.local/Makefile.am, mail.remote/Makefile.am,
      mailbox/Makefile.am, messages/Makefile.am, mimeview/Makefile.am,
      movemail/Makefile.am, pop3d/Makefile.am, readmsg/Makefile.am,
      sieve/Makefile.am: Use MU_APP_LIBRARIES.
      
      * include/mailutils/Makefile.am: Add new files.
      * include/mailutils/argp.h: Remove.
      * include/mailutils/cfg.h: New file.
      * include/mailutils/daemon.h (MODE_INTERACTIVE,MODE_DAEMON): New
      defines (from removed argp.h).
      (mu_gocs_daemon): New decl.
      * include/mailutils/error.h (mu_program_name): New variable
      (mu_set_program_name): New function.
      * lib/Makefile.am (libmuaux_la_SOURCES): Add new files.
      * libsieve/Makefile.am (libsieve_la_SOURCES): Remove argp.c, add
      conf.c instead.
      * libsieve/argp.c: Remove.
      
      * mailbox/cfg_parser.y (mu_cfg_parse_boolean): New function.
      * mailbox/mu_argp.c: Remove.
      
      * mailbox/muerror.c (mu_program_name): New variable
      (mu_set_program_name): New function
      (mu_default_error_printer): Print program name before diagnostic
      string.
      * mailbox/mutil.c (mu_sql_decode_password_type): New function.
      * mh/mh_whom.c (mh_alias_expand): Bugfix
      * po/POTFILES.in: Update
      * testsuite/lib/mailutils.exp (mu_init): Pass --no-site-rcfile
      --no-user-rcfile to all programs.
      Sergey Poznyakoff authored
  24. 12 Nov, 2007 1 commit
  25. 10 Nov, 2007 1 commit
    • * frm/common.c, imap4d/sync.c, libsieve/runtime.c,
      mh/scan.c: Update declaration of observable actions  .
      * imap4d/select.c, imap4d/status.c, mh/anno.c, mh/forw.c,
      mh/repl.c: Use mu_mailbox_sync instead of
      mu_mailbox_save_attributes.
      * include/mailutils/mailbox.h (mu_mailbox_sync): New function.
      (mu_mailbox_save_attributes): Deprecated.
      * include/mailutils/message.h (mu_message_get_qid)
      (mu_message_set_qid): New functions.
      * include/mailutils/observer.h (MU_EVT_MESSAGE_APPEND): New event.
      (mu_observer_set_action_data): New function. Registers
      action-specific data.
      (mu_observable_notify): Get call-specific data as the third
      argument.
      * include/mailutils/types.hin (mu_message_qid_t): New data type.
      * libproto/imap/folder.c, libproto/imap/mbox.c,
      libproto/include/amd.h, libproto/maildir/mbox.c,
      libproto/mailer/sendmail.c, libproto/mailer/smtp.c,
      libproto/mbox/mboxscan.c, libproto/mh/mbox.c,
      libproto/nntp/mbox.c, libproto/pop/mbox.c, mailbox/folder.c,
      mailbox/mailer.c : Update calls to mu_observable_notify.
      * libproto/include/mailbox0.h (struct _mu_mailbox): Rename
      _save_attributes to _sync.
      * mailbox/amd.c: Likewise
      (_quick_get_message): New member.
      (MAILBOX_NOTIFY): Remove.
      * libproto/include/message0.h (struct _mu_message): New member
      _get_qid.
      * libproto/include/observer0.h (struct _mu_observer): New member
      _action_data.
      * libproto/mbox/mbox.c: Implement mbox_message_qid. Update calls
      to mu_observable_notify.
      (mbox_append_message): Report MU_EVT_MESSAGE_APPEND
      * mailbox/observer.c (mu_observer_destroy): Call _destroy with
      _action_data as its third argument.
      (mu_observer_action, mu_observable_notify): Takes third argument
      (call data)
      (mu_observer_set_action, mu_observer_set_destroy): Update signature.
      (mu_observer_set_action_data): New function.
      
      * libproto/mbox/mbox0.h, mail.local/main.c: Minor change.
      
      * mail.local/Makefile.am (mail_local_LDADD): Add MU_LIB_MAILER
      
      * mailbox/file_stream.c (_file_open): Fix handling of
      MU_STREAM_APPEND. Remove assertion.
      
      * mailbox/mailbox.c (mu_mailbox_quick_get_message): New function
      (mu_mailbox_sync): New function
      (mu_mailbox_get_size): Implement brute-force approach in case the
      mailbox does not provide a method.
      
      * mailbox/message.c (mu_message_get_qid, mu_message_set_qid): New
      function.
      
      * maildag/: New directory. A general-purpose mail delivery agent.
      * maildag/deliver.c: New file.
      * maildag/lmtp.c: New file.
      * maildag/maidag.c: New file.
      * maildag/maidag.h: New file.
      * maildag/mailtmp.c: New file.
      * maildag/mailquota.c: New file.
      * maildag/script.c: New file.
      * maildag/util.c: New file.
      * maildag/Makefile.am: New file.
      * maildag/.cvsignore: New file.
      Sergey Poznyakoff authored