diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2010-10-03 14:43:44 +0300 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2010-10-03 17:17:38 +0300 |
commit | af4665d48e3dbfe8b9179740509a61722291e13b (patch) | |
tree | 6a815b5018490edf9dcf36d83141e18df11e7971 /mh/mh_whatnow.c | |
parent | f223b22f5a8cc3ed3428092ddf30dd315a3213f3 (diff) | |
download | mailutils-af4665d48e3dbfe8b9179740509a61722291e13b.tar.gz mailutils-af4665d48e3dbfe8b9179740509a61722291e13b.tar.bz2 |
Improve stream creation consistency.
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.
Diffstat (limited to 'mh/mh_whatnow.c')
-rw-r--r-- | mh/mh_whatnow.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/mh/mh_whatnow.c b/mh/mh_whatnow.c index 8652fc07e..3ec4533d7 100644 --- a/mh/mh_whatnow.c +++ b/mh/mh_whatnow.c @@ -198,12 +198,6 @@ display_file (const char *name) mu_error ("mu_file_stream_create: %s", mu_strerror (rc)); return; } - rc = mu_stream_open (stream); - if (rc) - { - mu_error ("mu_stream_open: %s", mu_strerror (rc)); - return; - } mu_stream_seek (stream, 0, MU_SEEK_SET, NULL); while (mu_stream_read (stream, buffer, sizeof buffer - 1, &n) == 0 |