- 06 Oct, 2010 1 commit
-
-
* mu/pop.c (com_apop, com_pass): Require password in non-interactive mode.
Sergey Poznyakoff authored
-
- 05 Oct, 2010 8 commits
-
-
* mu/shell.c (input_line_script): Use mu_getline. * libmu_argp/compat.c: Remove. * libmu_argp/Makefile.am: Remove compat.c * po/POTFILES.in: Likewise.
Sergey Poznyakoff authored -
* mu/mu.h (mutool_command) <doc>: Rename to docstring. <argdoc>: New member. * mu/pop.c (com_apop): 2nd arg (password) is optional. If not supplied, ask for it using the mu_getpass function. (pop_comtab): Add argdocs. Use N_ wrappers around translatable strings. * mu/shell.c (default_comtab: Add argdocs. Use N_ wrappers around translatable strings. (print_comtab): Rewrite. (shell_history): Use pager.
Sergey Poznyakoff authored -
* libproto/pop/pop3_carrier.c (mu_pop3_set_carrier): Switch to MU_POP3_CONNECT state. * libproto/pop/pop3_disconnect.c (mu_pop3_disconnect): Check if the stream is actually open before trying to close it.
Sergey Poznyakoff authored -
* configure.ac: Test for tcgetattr and tcsetattr. * gnulib.modules (getpass-gnu): Remove. * include/mailutils/mutil.h (mu_getpass): New proto. * include/mailutils/stream.h (MU_IOCTL_GET_ECHO) (MU_IOCTL_SET_ECHO): New ioctls. * include/mailutils/sys/file_stream.h (_MU_FILE_STREAM_ECHO_OFF): New flag. (_mu_file_stream) <echo_state>: New member. * libmailutils/getpass.c: New file. * libmailutils/Makefile.am (libmailutils_la_SOURCES): Add getpass.c. * libmailutils/file_stream.c (fd_done): Free echo_state. (fd_ioctl): Implement MU_IOCTL_GET_ECHO and MU_IOCTL_SET_ECHO. * mu/mu.h (mustrin): New extern. * mu/pop.c (com_pass): Use mu_getpass. * mu/shell.c (mustrin): New variable. (readline): Use mu_stream_getline instead of getline. (mutool_shell): Create mustrin. * pop3d/popauth.c (options): Fix typo. (fill_pass): Use mu_getpass.
Sergey Poznyakoff authored -
* mu/mu.h (mutool_shell_interactive): New extern. (mutool_open_pager): New proto. * mu/pop.c (com_list, com_top, com_retr): Use pager. * mu/shell.c (mutool_shell_interactive, mustrout): New variables. (print_comtab, print_help): Print to stream. (shell_help): Use pager if necessary. (mutool_open_pager): New function. (mutool_shell): Create mutool_stream_out and destroy it before returning. (all functions): Use mu_stream_printf instead of printf.
Sergey Poznyakoff authored -
* comsat/comsat.c (hostname): Change type. (comsat_init): Use mu_get_host_name. * comsat/comsat.h (hostname): Change declaration. * libmailutils/locker.c (lock_dotlock): Use mu_get_host_name. * libmailutils/mutil.c (mu_get_host_name): Rewrite. * pop3d/pop3d.c (pop3d_mainloop): Remove unnecessary call to gethostbyname. * pop3d/pop3d.h (MAXHOSTNAMELEN): Remove definition.
Sergey Poznyakoff authored -
-
- 04 Oct, 2010 1 commit
-
-
* mu/acl.c: New file. * mu/Makefile.am: Add acl.c * po/POTFILES.in: Add acl.c * mu/mu.c (mutool_action_tab): Add acl mode. * mu/mu.h (mutool_acl): New proto. * mu/flt2047.c: Fix docstrings. * mu/pop.c: Likewise.
Sergey Poznyakoff authored
-
- 03 Oct, 2010 7 commits
-
-
* libmailutils/cfg_parser.y (split_cfg_path): New static. (mu_cfg_find_node): Use the same parsing algorithm as mu_cfg_create_subtree. This complements 68b7dc9d. (mu_cfg_create_subtree): Use split_cfg_path. Handle escaped '=' as a regular character. * mu/mu.c (args_doc): Remove spurious word. (main): Disable --version option in action handlers. * mu/query.c (query_args_doc): Use `path' instead of `keyword'.
Sergey Poznyakoff authored -
-
* mu/filter.c (filter_options): Add missing arguments. * mu/flt2047.c (flt2047_options): Likewise.
Sergey Poznyakoff authored -
* examples/http.c (main): Fix open/wait loop. * libmailutils/stream.c (mu_stream_wait): May be used on not-open streams. * examples/.gitignore: Add more files.
Sergey Poznyakoff authored -
The `mu' program is a multi-purpose tool for doing various mail- and mailutils-related operations. It includes a pop3 shell, a coder/decoder for all filter formats supported by Mailutils, a utility to extract arbitrary values from the MU configuration files, a configuration information utility and many more, in the short run. It supercedes examples/pop3client and (partially) mailutils-config, both of which will be removed in the future. * Makefile.am (SUBDIRS): Add mu. * configure.ac: Likewise. * po/POTFILES.in: Add new files. * mu/.gitignore: New file. * mu/Makefile.am: New file. * mu/filter.c: New file. * mu/flt2047.c: New file. * mu/info.c: New file. * mu/mu.c: New file. * mu/mu.h: New file. * mu/pop.c: New file. * mu/query.c: New file. * mu/shell.c: New file.
Sergey Poznyakoff authored -
One of stream flags bits indicates whether the stream is open or not. The mu_stream_open function refuses to act if it already is. The rest of functions (including mu_stream_close) refuses to act if the stream was not open. A special function (mu_stream_is_open) is provided to check if the stream is in open state. Any stream creation function returns an already open stream. The function mu_stream_open should be called only if the stream was previously closed by a call to mu_stream_close. * include/mailutils/stream.h (mu_stream_is_open): New proto. * include/mailutils/sys/stream.h (_MU_STR_OPEN): New flag. * libmailutils/stream.c (_mu_stream_create): Permit setting the _MU_STR_OPEN flag. (_stream_init): New static. (mu_stream_open): Return MU_ERR_OPEN if the stream is already open. (mu_stream_is_open): New function. (mu_stream_seek, mu_stream_read, mu_stream_readdelim) (mu_stream_getdelim, mu_stream_write, mu_stream_flush) (mu_stream_close, mu_stream_size, mu_stream_wait) (mu_stream_truncate): Check if the stream is open. Return MU_ERR_NOT_OPEN otherwise. * libmailutils/errors (MU_ERR_OPEN): Reword the diagnostics. * libmailutils/dbgstream.c (mu_dbgstream_create): Open the stream. * libmailutils/file_stream.c (mu_file_stream_create) (mu_fd_stream_create): Open the stream. * libmailutils/filter_iconv.c (mu_filter_iconv_create): Open the stream. * libmailutils/mapfile_stream.c (mu_mapfile_stream_create): Open the stream. * libmailutils/fltstream.c (mu_filter_stream_create): Mark the stream as open. * libmailutils/iostream.c (mu_iostream_create): Likewise. * libmailutils/memory_stream.c: Likewise. * libmailutils/message.c (_message_stream_create): Likewise. * libmailutils/message_stream.c (mu_message_stream_create): Likewise. * libmailutils/prog_stream.c (mu_prog_stream_create): Likewise. * libmailutils/socket_stream.c (mu_socket_stream_create): Likewise. * libmailutils/temp_file_stream.c (mu_temp_file_stream_create): Likewise. * libmailutils/amd.c (_amd_attach_message): Mark stream as open. * libmailutils/body.c (_body_get_stream): Likewise. * libmailutils/memory_stream.c: Likewise. * libmailutils/rdcache_stream.c (mu_rdcache_stream_create: Likewise. * libmailutils/stdio_stream.c (mu_stdio_stream_create): Likewise. * libmailutils/streamref.c (mu_streamref_create_abridged): Likewise. * libmailutils/tcp.c (mu_tcp_stream_create_with_source_ip): Likewise. * libmailutils/xscript-stream.c (mu_xscript_stream_create): Likewise. * libmu_auth/tls.c (_mu_tls_io_stream_create): Likewise. (_mu_tls_stream_create): Likewise. * libproto/pop/pop3_stream.c (mu_pop3_stream_create): Likewise. * examples/base64.c: Remove unnecessary mu_stream_open. * examples/http.c: Likewise. * examples/iconv.c: Likewise. * examples/msg-send.c: Likewise. * examples/murun.c: Likewise. * examples/musocio.c: Likewise. * examples/pop3client.c: Likewise. * imap4d/append.c: Likewise. * imap4d/io.c: Likewise. * imap4d/preauth.c: Likewise. * lib/mailcap.c: Likewise. * libmailutils/attachment.c: Likewise. * libmailutils/cfg_driver.c: Likewise. * libmailutils/header.c: Likewise. * libmailutils/mailcap.c: Likewise. * libmailutils/mimehdr.c: Likewise. * libmailutils/mutil.c: Likewise. * libmailutils/tests/fltst.c: Likewise. * libmailutils/tests/mailcap.c: Likewise. * libmailutils/vartab.c: Likewise. * libmailutils/wicket.c: Likewise. * libmu_argp/muinit.c: Likewise. * libmu_auth/ldap.c: Likewise. * libmu_sieve/extensions/pipe.c: Likewise. * libmu_sieve/extensions/spamd.c: Likewise. * libmu_sieve/extensions/vacation.c: Likewise. * libproto/imap/folder.c: Likewise. * libproto/mailer/smtp.c: Likewise. * libproto/mailer/smtp_starttls.c: Likewise. * libproto/mbox/mbox.c: Likewise. * libproto/nntp/nntp_connect.c: Likewise. * libproto/pop/mbox.c: Likewise. * libproto/pop/pop3_connect.c: Likewise. * libproto/pop/pop3_stls.c: Likewise. * maidag/mailtmp.c: Likewise. * mail/decode.c: Likewise. * mail/pipe.c: Likewise. * mail/send.c: Likewise. * mail/send.c: Likewise. * mail/write.c: Likewise. * mh/burst.c: Likewise. * mh/comp.c: Likewise. * mh/compcommon.c: Likewise. * mh/forw.c: Likewise. * mh/mh_init.c: Likewise. * mh/mh_whatnow.c: Likewise. * mh/mhl.c: Likewise. * mh/mhn.c: Likewise. * mh/repl.c: Likewise. * mimeview/mimeview.c: Likewise. * pop3d/extra.c: Likewise. * sieve/sieve.c: Likewise. * testsuite/smtpsend.c: Likewise.
Sergey Poznyakoff authored -
* include/mailutils/sys/smtp.h (_mu_smtp_get_streams) (_mu_smtp_set_streams): New protos. * libproto/mailer/smtp_gsasl.c (insert_gsasl_stream): Use _mu_smtp_get_streams and _mu_smtp_set_streams to change streams. * libproto/mailer/smtp_starttls.c (smtp_get_streams): Rename to _mu_smtp_get_streams. All callers changed. (smtp_set_streams): Rename to _mu_smtp_set_streams. All callers changed.
Sergey Poznyakoff authored
-
- 25 Sep, 2010 10 commits
-
-
* guimb/scm/Makefile.am: Add sieve.scm to AM_INSTALLCHECK_STD_OPTIONS_EXEMPT.
Sergey Poznyakoff authored -
* include/mailutils/stream.h (MU_IOCTL_SWAP_STREAM): Remove. (MU_IOCTL_GET_STREAM, MU_IOCTL_SET_STREAM): New ioctls. * include/mailutils/sys/stream.h (_MU_SWAP_FIRST_ONLY) (_MU_SWAP_IOCTL_MUST_SUCCEED): Remove. (_mu_stream_swap_streams): Remove. * libmailutils/stream.c (_mu_stream_swap_streams): Remove. * libmailutils/filter_iconv.c (_icvt_ioctl): Handle MU_IOCTL_GET_STREAM, MU_IOCTL_SET_STREAM instead of MU_IOCTL_SWAP_STREAM. * libmailutils/iostream.c (_iostream_ctl): Likewise. * libmailutils/xscript-stream.c (_xscript_ctl): Likewise. * imap4d/auth_gsasl.c (restore_and_return): Unref the contents of str. (auth_gsasl): Use MU_IOCTL_GET_STREAM/MU_IOCTL_SET_STREAM to change the underlying transport streams. * imap4d/io.c (imap4d_init_tls_server): Likewise. * libproto/mailer/smtp_gsasl.c (insert_gsasl_stream): Likewise. * pop3d/extra.c (pop3d_init_tls_server): Likewise. * libproto/mailer/smtp_starttls.c (smtp_get_streams) (smtp_set_streams): New functions. (smtp_swap_streams): Remove. (mu_smtp_starttls): Use smtp_get_streams and smtp_set_streams instead of smtp_swap_streams. * libproto/pop/pop3_stls.c (pop3_get_streams) (pop3_set_streams): New functions. (pop3_swap_streams): Remove. (mu_pop3_stls): Use pop3_get_streams and pop3_set_streams. * testsuite/smtpsend.c (main): Uncomment mu_stream_unref on the carrier.
Sergey Poznyakoff authored -
* libmailutils/prog_stream.c (REDIRECT_STDIN_P) (REDIRECT_STDOUT_P): Fix macros. * libmailutils/stream.c (mu_stream_open): If stream is open with MU_STREAM_APPEND, reposition to its end. (_stream_write_unbuffered): Do not signal EACCESS for MU_STREAM_APPEND streams. * mail/pipe.c (mail_pipe): Rewrite using streams instead of FILEs. * mail/send.c (fill_body): Likewise. * mail/write.c (mail_write): Likewise.
Sergey Poznyakoff authored -
* imap4d/imap4d.c (imap4d_mainloop): Take two file descriptor as arguments. All uses updated. * imap4d/imap4d.h (io_setio): Change signature. * imap4d/io.c (io_setio): Take two file descriptor as arguments. All uses updated. * pop3d/extra.c (pop3d_setio): Take two file descriptor as arguments. All uses updated. * pop3d/pop3d.c (pop3d_mainloop): Likewise. * pop3d/pop3d.h (pop3d_setio): Change signature.
Sergey Poznyakoff authored -
* examples/musocio.c: Use default stream buffer size. * imap4d/io.c: Likewise. * libmailutils/dbgstream.c: Likewise. * libmailutils/iostream.c: Likewise. * libmailutils/xscript-stream.c: Likewise. * libmu_auth/gsasl.c: Likewise. * libmu_auth/tls.c: Likewise. * libproto/pop/mbox.c: Likewise. * libproto/pop/pop3_stream.c: Likewise. * pop3d/extra.c: Likewise. * libmailutils/file_stream.c (mu_file_stream_create) (mu_fd_stream_create): File streams are fully buffered by default. * libmailutils/stdio_stream.c (mu_stdio_stream_create): Stdio streams are line buffered by default.
Sergey Poznyakoff authored -
* libmailutils/streamcpy.c (mu_stream_copy): Use the number of bytes actually read. * libmailutils/base64.c (_base64_encoder): Return mu_filter_again if not all data has been consumed on mu_filter_lastbuf. * libmailutils/message_stream.c (scan_stream): Fix calculation of body_end. (_body_obj_size): Fix calculation of body size. * libproto/mailer/smtp_data.c (_mu_smtp_data_begin): Set full buffering on the MU_TRANSPORT_OUTPUT stream.
Sergey Poznyakoff authored -
* configure.ac: Use libmuaux.a instead of libmuaux.la. * examples/Makefile.am: Likewise. * examples/cpp/Makefile.am: Likewise. * imap4d/Makefile.am: Likewise. * mapi/Makefile.am: Likewise. * mh/Makefile.am: Likewise. * pop3d/Makefile.am: Likewise. Remove old files from POTFILES.in (see c42bddb0). * po/POTFILES.in: Remove comsat/oldcfg.c. Build testsuites after the programs they are to test. * frm/Makefile.am (SUBDIRS): Put . before tests. * messages/Makefile.am: Likewise. * readmsg/Makefile.am: Likewise. * sieve/Makefile.am: Likewise. Remove leftovers from CVS times: * .cvsignore: Remove. * am/.cvsignore: Remove. * lib/.cvsignore: Remove. * po/.cvsignore
Sergey Poznyakoff authored -
It is needed for the remaining DejaGNU tests and will go away later, when they are rewritten.
Sergey Poznyakoff authored -
* mailbox/url.c (url_parse0): Take three arguments. Return in the third one a boolean indicating whether to expand %XX notations in the URL. Do not decode absolute file names and pipes. (mu_url_parse): Use this value to decide. * movemail/movemail.c (main): In emacs mode: force UNIX mbox format as a default. Send debugging output to stderr. * libmailutils/tests/url.at: Add new tests.
Sergey Poznyakoff authored -
* am/debug.m4 (MU_DEBUG_MODE): Rewrite. Use -Wdeclaration-after-statement if supported. * comsat/oldcfg.c: Remove. * comsat/Makefile.am (comsatd_SOURCES): Remove oldcfg.c. * comsat/comsat.c: Remove the obsolete --config and --convert-config options. * comsat/comsat.h (convert_config): Remove.
Sergey Poznyakoff authored
-
- 21 Sep, 2010 2 commits
-
-
* Makefile.am: Shut up cmp's stderr. * libmailutils/body.c (_body_get_stream): Set full buffering mode on the body stream. * libmailutils/errors (MU_ERR_AUTH_NO_CRED): New error code. * libproto/mailer/smtp.c (smtp_open): Do not treat ENOSYS or MU_ERR_AUTH_NO_CRED (returned by mu_smtp_auth) as errors. (smtp_send_message): Do not try to submit the message if it is bigger than the maximum imposed by the server. * libproto/mailer/smtp_auth.c (mu_smtp_auth): Return MU_ERR_AUTH_NO_CRED if neither user name nor password are supplied. * mail/send.c (mail_send0): Issue diagnostics if sending attempt has failed.
Sergey Poznyakoff authored -
* include/mailutils/cpp/pop3.h (capa): Add reread parameter. (getline): Add new prototype. (send, readline): Remove. (response, stat): Change prototype. * libmu_cpp/pop3.cc: Likewise. * include/mailutils/cpp/stream.h (read, write, readline): Change prototype. (sequential_readline, sequential_write): Remove. * libmu_cpp/stream.cc: Likewise.
Wojciech Polak authored
-
- 20 Sep, 2010 4 commits
-
-
* libproto/mailer/smtp.c: Rewrite using new SMTP API. * libproto/mailer/smtp_quit.c (mu_smtp_quit): Return immediately if already in closed state. * libmailutils/ticket.c (mu_ticket_get_cred): Return MU_ERR_FAILURE if all methods fail. * mail/send.c: Port 23321cf7 from patches-2.2 (msg_to_pipe): Return status code. (save_dead_message, send_message): New functions, extracted from mail_send0. (mail_send0): Call save_dead_message if sending failed.
Sergey Poznyakoff authored -
* include/mailutils/smtp.h (mu_smtp_write): Mark as printf-like. (mu_smtp_mail_basic, mu_smtp_rcpt_basic): Take variable number of arguments. Mark as printf-like. (mu_smtp_data): New prototype. * include/mailutils/sys/smtp.h (_MU_SMTP_SAVEBUF): New flag. (_mu_smtp) <savebuf>: New member. (_mu_smtp_data_begin, _mu_smtp_data_end): New protos. * libproto/mailer/smtp_send.c: New file. * libproto/mailer/smtp_data.c (_mu_smtp_data_begin) (_mu_smtp_data_end, mu_smtp_data): New functions. * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add smtp_send.c. * libproto/mailer/smtp_ehlo.c (mu_smtp_ehlo): Switch to MU_SMTP_EHLO only if in MU_SMTP_MAIL state. * libproto/mailer/smtp_mail.c (mu_smtp_mail_basic): Take variable number of arguments. * libproto/mailer/smtp_param.c (mu_smtp_get_param): Add missing typecast. * libproto/mailer/smtp_rcpt.c (mu_smtp_rcpt_basic): Take variable number of arguments. * libproto/mailer/smtp_send.c (_smtp_data_send): Use _mu_smtp_data_begin and _mu_smtp_data_end. * testsuite/smtpsend.c: Emulate sending from a MU message.
Sergey Poznyakoff authored -
* include/mailutils/stream.h (mu_stream_printf): Mark as printf-like. * include/mailutils/sys/stream.h (_MU_STR_EVENT_CLOSE): New event. (_mu_stream) <event_cb_data>: New member. * libmailutils/stream.c (mu_stream_seek): Avoid unnecessary seeks in mu_buffer_none mode. Complements 906499db. (mu_stream_close): Mark _MU_STR_EVENT_CLOSE event.
Sergey Poznyakoff authored -
* libmailutils/message_stream.c (scan_stream): Change signature. All uses updated. Correct the calculation of body_start. (mu_message_stream_create): Return the stream.
Sergey Poznyakoff authored
-
- 19 Sep, 2010 5 commits
-
-
* include/mailutils/smtp.h (MU_SMTP_PARAM_URL): New parameter code. * include/mailutils/sys/smtp.h (_MU_SMTP_CLNPASS): New flag. (_mu_smtp) <secret>: New member. * libproto/mailer/smtp_auth.c (get_ticket) (_mu_smtp_fixup_params): New static functions. (mu_smtp_auth): Call _mu_smtp_fixup_params to supply missing pararameters. * libproto/mailer/smtp_create.c (mu_smtp_destroy): Destroy secret. Take care to erase eventual plaintext representation of the password. * libproto/mailer/smtp_gsasl.c (_smtp_callback): Use mu_smtp_get_param to obtain parameters. * libproto/mailer/smtp_param.c (mu_smtp_set_param): Setting MU_SMTP_PARAM_PASSWORD updates secret. param[MU_SMTP_PARAM_PASSWORD] points (temporarly and on request only) to plaintext password. (mu_smtp_get_param): Likewise for retrieving password. * testsuite/smtpsend.c (main): New parameter url=.
Sergey Poznyakoff authored -
* libmu_auth/gsasl.c (_gsasl_encoder,_gsasl_decoder): Do not free flt. * include/mailutils/stream.h [__cplusplus]: Protect contents by extern "C".
Sergey Poznyakoff authored -
* Makefile.am: Avoid unnecessary rebuilds of git-describe and git-describe.h
Sergey Poznyakoff authored -
* libmailutils/stream.c (_mu_stream_create): Mask out internal flags. * pop3d/pop3d.c (main): Do not handle SIGPIPE, to avoid infinite recursion.
Sergey Poznyakoff authored -
-
- 18 Sep, 2010 1 commit
-
-
* configure.ac (MU_COND_GSASL): New cond. * include/mailutils/smtp.h (MU_SMTP_PARAM_DOMAIN) (MU_SMTP_PARAM_USERNAME, MU_SMTP_PARAM_PASSWORD) (MU_SMTP_PARAM_SERVICE, MU_SMTP_PARAM_REALM) (MU_SMTP_PARAM_HOST, MU_SMTP_MAX_PARAM): New constants. (mu_smtp_set_domain, mu_smtp_get_param): Remove. (mu_smtp_set_param, mu_smtp_get_param): New prototypes. (mu_smtp_auth, mu_smtp_add_auth_mech) (mu_smtp_add_auth_mech_list, mu_smtp_mech_select): New prototypes. * include/mailutils/sys/smtp.h (_mu_smtp) <domain>: Remove. (_mu_smtp) <authimpl, param, authmech>: New members. (_mu_smtp_gsasl_auth, _mu_smtp_mech_impl): New prototypes. * libproto/mailer/Makefile.am [MU_COND_GSASL]: Define SMTP_GSASL. (libmu_mailer_la_SOURCES): Add new sources. * libproto/mailer/smtp_domain.c: Remove. * libproto/mailer/smtp_param.c: New file. * libproto/mailer/smtp_mech.c: New file. * libproto/mailer/smtp_auth.c: New file. * libproto/mailer/smtp_gsasl.c: New file. * libproto/mailer/smtp_create.c (mu_smtp_destroy): Free new members of struct _mu_smtp. * libproto/mailer/smtp_ehlo.c (mu_smtp_ehlo): Use param[MU_SMTP_PARAM_DOMAIN] instead of domain. * testsuite/smtpsend.c: Handle SMTP AUTH. * libmu_auth/gsasl.c (mu_gsasl_stream_create): Bugfix. * libmailutils/xscript-stream.c (_xscript_ctl) <MU_IOCTL_SWAP_STREAM>: If instream!=outstream, combine them first into an iostream.
Sergey Poznyakoff authored
-
- 17 Sep, 2010 1 commit
-
-
* include/mailutils/smtp.h (mu_smtp_mail_basic) (mu_smtp_rcpt_basic, mu_smtp_send_stream) (mu_smtp_rset, mu_smtp_quit): New prototypes. * include/mailutils/sys/smtp.h (MU_SMTP_RCPT) (MU_SMTP_MORE, MU_SMTP_DOT, MU_SMTP_QUIT, MU_SMTP_CLOS): New states. (_mu_smtp_xscript_level): New proto. * libmailutils/errors (MU_ERR_REPLY): New error code. * libproto/mailer/Makefile.am (libmu_mailer_la_SOURCES): Add new sources. * libproto/mailer/smtp_data.c: New file. * libproto/mailer/smtp_mail.c: New file. * libproto/mailer/smtp_quit.c: New file. * libproto/mailer/smtp_rcpt.c: New file. * libproto/mailer/smtp_rset.c: New file. * libproto/mailer/smtp_ehlo.c: Return MU_ERR_REPLY if the server replied with a code other than 2xx. * libproto/mailer/smtp_open.c: Likewise. * testsuite/smtpsend.c: Implement full sending cycle (excepting authorization).
Sergey Poznyakoff authored
-