summaryrefslogtreecommitdiff
path: root/include/mailutils/stream.h
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2017-04-22 12:50:41 +0300
committerSergey Poznyakoff <gray@gnu.org.ua>2017-04-22 20:14:02 +0300
commiteaf6c0f065f0b1b09203dcd543acafcbcf414a61 (patch)
treeada72b08fe1bee1957b0c427f42a69bf774234a5 /include/mailutils/stream.h
parent5aea5b2d9b0c87fe81ee566dba830a568398679c (diff)
downloadmailutils-eaf6c0f065f0b1b09203dcd543acafcbcf414a61.tar.gz
mailutils-eaf6c0f065f0b1b09203dcd543acafcbcf414a61.tar.bz2
Functions for formatting RFC-2231-compliant mail headers fields.
* include/mailutils/cctype.h (MU_CTYPE_TSPEC): New class. Represents tspecials as per RFC 2045, section 5.1. (mu_istspec): New define. * libmailutils/string/muctype.c (mu_c_tab): Mark tspecials * include/mailutils/assoc.h (mu_assoc_mark) (mu_assoc_sweep): New protos. * libmailutils/base/assoc.c (_mu_assoc_elem): New field: mark (mu_assoc_mark,mu_assoc_sweep): New functions. * libmailutils/filter/Makefile.am (libfilter_la_SOURCES): Add dq.c and percent.c. * libmailutils/filter/dq.c: New file. * libmailutils/filter/percent.c: New file. * include/mailutils/filter.h (mu_percent_filter) (mu_dq_filter): New externs. * libmailutils/filter/filter.c (mu_filter_get_list): Register mu_percent_filter and mu_dq_filter. * include/mailutils/mime.h (mu_mime_header_set) (mu_mime_header_set_w): New protos. * libmailutils/mime/Makefile.am (libmime_la_SOURCES): Add mimehdrset.c * libmailutils/mime/mimehdrset.c: New file. * libmailutils/mime/mime.c (_mime_set_content_type): For multipart/alternative, remove also all parameters except charset from the Content-Type header. * mail/send.c (saveatt): Remove the now unneeded conditionals. * libmailutils/tests/mimehdr.at: Test formatting functions. * include/mailutils/stream.h (MU_IOCTL_FILTER_SET_OUTBUF_SIZE): New ioctl. * include/mailutils/sys/filter.h (_MU_FILTER_DISABLED) (_MU_FILTER_EOF): Remove. Use bitfields instead. (_mu_filter_stream): Remove fltflag. New fields: flag_disabled, flag_eof, outbuf_size. * libmailutils/stream/fltstream.c (MFB_BASE) (MFB_CURPTR, MFB_ENDPTR, MFB_SIZE, MFB_LEVEL) (MFB_POS, MFB_RDBYTES, MFB_FREESIZE) (MBF_CLEAR, MBF_FREE): Replace with inline functions. (init_iobuf): Use the outbuf_size field (unless 0) to set the output buffer size. (filter_read): Stop if on success if outbuf_size is set, without trying to fill the entire buffer. (filter_ctl): Handle MU_IOCTL_FILTER_SET_OUTBUF_SIZE. * libmailutils/tests/mimehdr.c: New option -width: format and print the value assuming given line width.
Diffstat (limited to 'include/mailutils/stream.h')
-rw-r--r--include/mailutils/stream.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/mailutils/stream.h b/include/mailutils/stream.h
index 2e7b86cb5..f7f58ba8a 100644
--- a/include/mailutils/stream.h
+++ b/include/mailutils/stream.h
@@ -195,6 +195,12 @@ enum mu_buffer_type
#define MU_IOCTL_FILTER_GET_DISABLED 0
#define MU_IOCTL_FILTER_SET_DISABLED 1
+ /* Set transcoder output buffer size.
+ Arg: size_t*
+ Has effect only if the stream is unbuffered
+ */
+#define MU_IOCTL_FILTER_SET_OUTBUF_SIZE 2
+
/* TLS transport streams */
/* Get cipher info.
Arg: mu_property_t *

Return to:

Send suggestions and report system problems to the System administrator.