aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-mime-utils.h
diff options
context:
space:
mode:
authorMichael Zucci <zucchi@src.gnome.org>2000-12-11 19:40:15 +0800
committerMichael Zucci <zucchi@src.gnome.org>2000-12-11 19:40:15 +0800
commit1c95a1e9859e02781267975b821b9f62467b79d0 (patch)
tree9273fed0890c9a444ea9c7ff7044cff91a2a4c6b /camel/camel-mime-utils.h
parentc08e99018cacc660a1995507b8d505f45f41cc95 (diff)
downloadgsoc2013-evolution-1c95a1e9859e02781267975b821b9f62467b79d0.tar.gz
gsoc2013-evolution-1c95a1e9859e02781267975b821b9f62467b79d0.tar.zst
gsoc2013-evolution-1c95a1e9859e02781267975b821b9f62467b79d0.zip
Remove use of linewrap filter. Headers are now wrapped. encode_8bit
* providers/smtp/camel-smtp-transport.c (smtp_data): Remove use of linewrap filter. Headers are now wrapped. encode_8bit already enforces a 998 octet line limit. (smtp_data): Also fixed a memleak, we always have to unref our own copy of the filters. We also dont need to remove them manually, so dont bother. The type's an int too ... * camel-internet-address.c (internet_unformat): When scanning past quotes, remove them also. (camel_internet_address_format_address): If the name contains "'s, or ','s then strip and quotes and wrap the whole lot in one set of quotes. * Makefile.am (noinst_HEADERS): We dont want to install camel-charset-map-private.h, ever. There are probably other similar files ..? * camel-mime-part.c (write_to_stream): Fold header lines appropriately as we're writing them out. * camel-mime-utils.c (header_fold): Add a new argument, headerlen, tells it how long the associated header token is. (header_fold): Also,k check to see if we need to fold first, using a better algorithm, and also accept already-folded lines, and re-process accordingly. (rfc2047_decode_word): Add a little buffer space to iconv output for shifting overheads? (rfc2047_decode_word): finish the iconv with a null call, to flush shift state, etc. (rfc2047_encode_word): Attempt to break up long words into appropriately sized, independent, chunks. See rfc2047, section 2. (header_decode_mailbox): Dont add in extra spaces into the output if we are decoding adjacent encoded words. We can only guess this case, as some broken mailers put encoded words inside quoted words. (header_encode_phrase): Dont merge words if they are going to end up too long. Also change back ot only merge consecutive words of the same type. e.g. 'foo. blah fum.' -> "foo." blah "fum." or 'iam an. idiot' -> iam "an." idiot svn path=/trunk/; revision=6902
Diffstat (limited to 'camel/camel-mime-utils.h')
-rw-r--r--camel/camel-mime-utils.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/camel/camel-mime-utils.h b/camel/camel-mime-utils.h
index 9bcdb063ac..119eda9626 100644
--- a/camel/camel-mime-utils.h
+++ b/camel/camel-mime-utils.h
@@ -26,7 +26,7 @@
#include <time.h>
/* maximum size of a line from header_fold() */
-#define CAMEL_FOLD_SIZE (72)
+#define CAMEL_FOLD_SIZE (77)
/* a list of references for this message */
struct _header_references {
@@ -138,10 +138,11 @@ const char *header_raw_find(struct _header_raw **list, const char *name, int *of
const char *header_raw_find_next(struct _header_raw **list, const char *name, int *ofset, const char *last);
void header_raw_replace(struct _header_raw **list, const char *name, const char *value, int offset);
void header_raw_remove(struct _header_raw **list, const char *name);
+void header_raw_fold(struct _header_raw **list);
void header_raw_clear(struct _header_raw **list);
/* fold a header */
-char *header_fold(const char *in);
+char *header_fold(const char *in, int headerlen);
char *header_unfold(const char *in);
/* decode a header which is a simple token */