summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cgi/cgi.h4
-rw-r--r--cgi/cgiinput.c6
-rw-r--r--cgi/cgitextarea.c6
-rw-r--r--imap/imapd.c2
-rw-r--r--imap/search.c4
-rw-r--r--maildir/maildirsearch.c6
-rw-r--r--maildir/maildirsearch.h13
-rw-r--r--maildir/testmaildirsearch.c2
-rw-r--r--rfc2045/rfc2045reply.c10
-rw-r--r--rfc2045/rfc3676parser.c97
-rw-r--r--rfc2045/rfc3676parser.h6
-rw-r--r--rfc2045/rfc3676parsercpp.C8
-rw-r--r--rfc2045/testrfc3676parser.c2
-rw-r--r--rfc822/rfc2047.c12
-rw-r--r--sqwebmail/filter.c10
-rw-r--r--sqwebmail/filter.h6
-rw-r--r--sqwebmail/folder.c24
-rw-r--r--sqwebmail/html.c126
-rw-r--r--sqwebmail/html.h4
-rw-r--r--sqwebmail/maildir.c26
-rw-r--r--sqwebmail/msg2html.c84
-rw-r--r--sqwebmail/newmsg.h2
-rw-r--r--sqwebmail/newmsg_create.c24
-rw-r--r--sqwebmail/sqispell.c2
-rw-r--r--sqwebmail/testhtml.c4
25 files changed, 244 insertions, 246 deletions
diff --git a/cgi/cgi.h b/cgi/cgi.h
index 93dc54a..be28393 100644
--- a/cgi/cgi.h
+++ b/cgi/cgi.h
@@ -111,7 +111,7 @@ extern char *cgi_checkbox(const char *name,
const char *value,
const char *flags);
extern char *cgi_input(const char *name,
- const unicode_char *value,
+ const char32_t *value,
int size,
int maxlength,
const char *opts);
@@ -119,7 +119,7 @@ extern char *cgi_input(const char *name,
extern char *cgi_textarea(const char *name,
int rows,
int cols,
- const unicode_char *value,
+ const char32_t *value,
const char *wrap,
const char *opts);
diff --git a/cgi/cgiinput.c b/cgi/cgiinput.c
index 64769de..b9330e3 100644
--- a/cgi/cgiinput.c
+++ b/cgi/cgiinput.c
@@ -12,7 +12,7 @@
#include <stdlib.h>
#include <ctype.h>
-void cgi_output_unicode_escapes(const unicode_char *value,
+void cgi_output_unicode_escapes(const char32_t *value,
const char *escapes,
void (*output_func)(const char *, size_t,
void *),
@@ -62,7 +62,7 @@ void cgi_output_unicode_escapes(const unicode_char *value,
static void do_cgi_input(const char *name,
- const unicode_char *value,
+ const char32_t *value,
int size,
int maxlength,
const char *flags,
@@ -128,7 +128,7 @@ static void save_bytes(const char *str, size_t cnt, void *arg)
}
char *cgi_input(const char *name,
- const unicode_char *value,
+ const char32_t *value,
int size,
int maxlength,
const char *flags)
diff --git a/cgi/cgitextarea.c b/cgi/cgitextarea.c
index e9d814b..750b2ee 100644
--- a/cgi/cgitextarea.c
+++ b/cgi/cgitextarea.c
@@ -12,7 +12,7 @@
#include <stdlib.h>
#include <ctype.h>
-extern void cgi_output_unicode_escapes(const unicode_char *value,
+extern void cgi_output_unicode_escapes(const char32_t *value,
const char *escapes,
void (*output_func)(const char *,
size_t,
@@ -22,7 +22,7 @@ extern void cgi_output_unicode_escapes(const unicode_char *value,
static void do_cgi_textarea(const char *name,
int rows,
int cols,
- const unicode_char *value,
+ const char32_t *value,
const char *opts,
const char *wrap,
void (*output_func)(const char *, size_t,
@@ -95,7 +95,7 @@ static void save_bytes(const char *str, size_t cnt, void *arg)
char *cgi_textarea(const char *name,
int rows,
int cols,
- const unicode_char *value,
+ const char32_t *value,
const char *wrap,
const char *opts)
{
diff --git a/imap/imapd.c b/imap/imapd.c
index 07fa057..93317df 100644
--- a/imap/imapd.c
+++ b/imap/imapd.c
@@ -4115,7 +4115,7 @@ int folder_rename(struct maildir_info *mi1,
static int validate_charset(const char *tag, char **charset)
{
unicode_convert_handle_t conv;
- unicode_char *ucptr;
+ char32_t *ucptr;
size_t ucsize;
if (*charset == NULL)
diff --git a/imap/search.c b/imap/search.c
index cc64bbf..baacfba 100644
--- a/imap/search.c
+++ b/imap/search.c
@@ -892,7 +892,7 @@ static int fill_search_header_done(const char *name, void *arg)
int issubject=rfc822hdr_namecmp(name, "subject");
size_t j;
unicode_convert_handle_t conv;
- unicode_char *ucptr;
+ char32_t *ucptr;
size_t ucsize;
int rc;
@@ -1045,7 +1045,7 @@ static int fill_search_body_ucs4(const char *str, size_t n, void *arg)
struct fill_search_body_info *decodeinfo=
(struct fill_search_body_info *)arg;
struct searchinfo *sip;
- const unicode_char *u=(const unicode_char *)str;
+ const char32_t *u=(const char32_t *)str;
int notfound=1;
n /= 4;
diff --git a/maildir/maildirsearch.c b/maildir/maildirsearch.c
index 40b7409..5853785 100644
--- a/maildir/maildirsearch.c
+++ b/maildir/maildirsearch.c
@@ -8,7 +8,7 @@
int maildir_search_start_unicode(struct maildir_searchengine *sei,
- const unicode_char *s)
+ const char32_t *s)
{
unsigned i, j, *r;
@@ -54,7 +54,7 @@ int maildir_search_start_unicode(struct maildir_searchengine *sei,
int maildir_search_start_str(struct maildir_searchengine *sei,
const char *s)
{
- unicode_char *uc=malloc((strlen(s)+1) * sizeof(unicode_char));
+ char32_t *uc=malloc((strlen(s)+1) * sizeof(char32_t));
size_t n;
int rc;
@@ -75,7 +75,7 @@ int maildir_search_start_str_chset(struct maildir_searchengine *engine,
{
#define SPC(s) ((s) == ' '|| (s) == '\t' || (s) == '\r' || (s) == '\n')
- unicode_char *ucptr;
+ char32_t *ucptr;
size_t ucsize;
unicode_convert_handle_t h=unicode_convert_tou_init(chset, &ucptr,
&ucsize, 1);
diff --git a/maildir/maildirsearch.h b/maildir/maildirsearch.h
index b134c6d..64b257c 100644
--- a/maildir/maildirsearch.h
+++ b/maildir/maildirsearch.h
@@ -46,9 +46,9 @@ extern "C" {
#endif
struct maildir_searchengine {
- unicode_char *string;
+ char32_t *string;
size_t string_l;
- const unicode_char *ptr;
+ const char32_t *ptr;
unsigned *r; /* Retry backoff indexes */
unsigned i;
int spc;
@@ -64,7 +64,7 @@ int maildir_search_start_str_chset(struct maildir_searchengine *engine,
const char *string,
const char *chset);
int maildir_search_start_unicode(struct maildir_searchengine *engine,
- const unicode_char *string);
+ const char32_t *string);
#define maildir_search_reset(si) ((si)->i=0, (si)->ptr=(si)->string)
@@ -79,7 +79,7 @@ int maildir_search_start_unicode(struct maildir_searchengine *engine,
{\
for (;;) \
{\
- if ( (unicode_char)(sie)->ptr[(sie)->i] == (unicode_char)(ch) )\
+ if ( (char32_t)(sie)->ptr[(sie)->i] == (char32_t)(ch) )\
{ (sie)->i++; break; }\
if ( (sie)->i == 0) break;\
(sie)->i=(sie)->r[(sie)->i];\
@@ -89,7 +89,7 @@ int maildir_search_start_unicode(struct maildir_searchengine *engine,
#define maildir_search_step_unicode_lc(sie,ch) do \
{ \
- unicode_char c=(ch); \
+ char32_t c=(ch); \
int spc=0; \
\
\
@@ -162,7 +162,7 @@ class Search {
void operator<<(char c) { maildir_search_step(&sei, c); }
- void operator<<(unicode_char ch)
+ void operator<<(char32_t ch)
{
maildir_search_step_unicode_lc(&sei, ch);
}
@@ -184,4 +184,3 @@ class Search {
#endif
#endif
-
diff --git a/maildir/testmaildirsearch.c b/maildir/testmaildirsearch.c
index 504304d..dc3288a 100644
--- a/maildir/testmaildirsearch.c
+++ b/maildir/testmaildirsearch.c
@@ -10,7 +10,7 @@ static int testmaildirsearch(const char *chset, const char *needle,
const char *haystack)
{
struct maildir_searchengine se;
- unicode_char *ucptr;
+ char32_t *ucptr;
size_t ucsize;
size_t i;
unicode_convert_handle_t h=unicode_convert_tou_init(chset, &ucptr,
diff --git a/rfc2045/rfc2045reply.c b/rfc2045/rfc2045reply.c
index a3b57b5..da0d981 100644
--- a/rfc2045/rfc2045reply.c
+++ b/rfc2045/rfc2045reply.c
@@ -275,7 +275,7 @@ static int reply_begin(size_t quote_level,
void *arg)
{
struct replyinfostruct *s=(struct replyinfostruct *)arg;
- unicode_char quoteChar='>';
+ char32_t quoteChar='>';
/*
** Save quote level, begin conversion from unicode to the native
@@ -310,11 +310,11 @@ static int reply_begin(size_t quote_level,
** RFC 3676: (possibly partial) contents of a deflowed line, as unicode.
*/
-static int reply_contents(const unicode_char *txt,
+static int reply_contents(const char32_t *txt,
size_t txt_size,
void *arg)
{
- unicode_char spaceChar=' ';
+ char32_t spaceChar=' ';
size_t nonspc_cnt;
struct replyinfostruct *s=(struct replyinfostruct *)arg;
@@ -380,7 +380,7 @@ static int reply_contents(const unicode_char *txt,
static int reply_end(void *arg)
{
- unicode_char newLine='\n';
+ char32_t newLine='\n';
struct replyinfostruct *s=(struct replyinfostruct *)arg;
unicode_convert_uc(s->u_handle, &newLine, 1);
@@ -394,7 +394,7 @@ static int reply_end(void *arg)
*/
static int reply_wrap(void *arg)
{
- unicode_char spaceChar=' ';
+ char32_t spaceChar=' ';
struct replyinfostruct *s=(struct replyinfostruct *)arg;
/*
diff --git a/rfc2045/rfc3676parser.c b/rfc2045/rfc3676parser.c
index 0a458f4..e52da45 100644
--- a/rfc2045/rfc3676parser.c
+++ b/rfc2045/rfc3676parser.c
@@ -16,7 +16,7 @@
static void emit_line_begin(rfc3676_parser_t handle);
static void emit_line_contents(rfc3676_parser_t handle,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static void emit_line_flowed_wrap(rfc3676_parser_t handle);
@@ -27,13 +27,13 @@ static void emit_line_end(rfc3676_parser_t handle);
static void nonflowed_line_begin(rfc3676_parser_t handle);
static void nonflowed_line_contents(rfc3676_parser_t handle,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static void nonflowed_line_end(rfc3676_parser_t handle);
static int nonflowed_line_process(int linebreak_opportunity,
- unicode_char ch, void *dummy);
+ char32_t ch, void *dummy);
#define EMIT_LINE_BEGIN(h) do { \
(*(h)->line_begin_handler)(h); \
@@ -56,14 +56,14 @@ struct rfc3676_parser_struct {
/* Receive raw text stream, converted to unicode */
size_t (*line_handler)(rfc3676_parser_t,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
/*
** Receive mostly raw text stream: CRs that precede an LF
** are removed from the stream received by content_handler.
*/
size_t (*content_handler)(rfc3676_parser_t,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
size_t quote_level;
size_t sig_block_index;
@@ -86,7 +86,7 @@ struct rfc3676_parser_struct {
/* Content of this line */
void (*line_content_handler)(rfc3676_parser_t handle,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
/* End of this line */
@@ -116,7 +116,7 @@ struct rfc3676_parser_struct {
/* Current handle of non-flowd content. */
void (*nonflowed_line_process)(struct rfc3676_parser_struct *handle,
int linebreak_opportunity,
- unicode_char ch,
+ char32_t ch,
size_t ch_width);
void (*nonflowed_line_end)(struct rfc3676_parser_struct *handle);
@@ -125,37 +125,37 @@ struct rfc3676_parser_struct {
static int parse_unicode(const char *, size_t, void *);
static size_t scan_crlf(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
static size_t scan_crlf_seen_cr(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
static size_t start_of_line(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
static size_t count_quote_level(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
static size_t counted_quote_level(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
static size_t check_signature_block(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
static size_t start_content_line(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
static size_t scan_content_line(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
static size_t seen_sig_block(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
static size_t seen_notsig_block(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
static size_t seen_content_sp(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
/*
@@ -218,21 +218,21 @@ int rfc3676parser(rfc3676_parser_t handle,
}
/*
-** Convert char stream from iconv into unicode_chars, then pass them to the
-** current handler, until all converted unicode_chars are consumed.
+** Convert char stream from iconv into char32_ts, then pass them to the
+** current handler, until all converted char32_ts are consumed.
*/
static int parse_unicode(const char *ucs4, size_t nbytes, void *arg)
{
rfc3676_parser_t handle=(rfc3676_parser_t)arg;
- unicode_char ucs4buf[128];
- const unicode_char *p;
+ char32_t ucs4buf[128];
+ const char32_t *p;
/* Keep going until there's an error, or everything is consumed. */
while (handle->errflag == 0 && nbytes)
{
- /* Do it in pieces, using the temporary unicode_char buffer */
+ /* Do it in pieces, using the temporary char32_t buffer */
size_t cnt=nbytes;
@@ -244,7 +244,7 @@ static int parse_unicode(const char *ucs4, size_t nbytes, void *arg)
ucs4 += cnt;
nbytes -= cnt;
- cnt /= sizeof(unicode_char);
+ cnt /= sizeof(char32_t);
p=ucs4buf;
/* Keep feeding it to the current handler */
@@ -299,7 +299,7 @@ int rfc3676parser_deinit(rfc3676_parser_t handle, int *errptr)
*/
static size_t scan_crlf(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
size_t i;
@@ -342,9 +342,9 @@ static size_t scan_crlf(rfc3676_parser_t handle,
*/
static size_t scan_crlf_seen_cr(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
- unicode_char cr='\r';
+ char32_t cr='\r';
handle->line_handler=scan_crlf;
@@ -374,7 +374,7 @@ static size_t scan_crlf_seen_cr(rfc3676_parser_t handle,
*/
static size_t start_of_line(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
if (ptr == NULL)
{
@@ -396,7 +396,7 @@ static size_t start_of_line(rfc3676_parser_t handle,
*/
static size_t count_quote_level(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
size_t i;
@@ -425,7 +425,7 @@ static size_t count_quote_level(rfc3676_parser_t handle,
*/
static size_t counted_quote_level(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
handle->was_previous_quote_level=0;
@@ -492,7 +492,7 @@ static size_t counted_quote_level(rfc3676_parser_t handle,
*/
static size_t start_content_line(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
/*
** We'll start scanning for the signature block, as soon as
@@ -500,7 +500,7 @@ static size_t start_content_line(rfc3676_parser_t handle,
*/
handle->content_handler=check_signature_block;
handle->sig_block_index=0;
-
+
if (ptr && *ptr == '\n' && handle->was_previous_quote_level)
{
EMIT_LINE_END(handle);
@@ -512,12 +512,12 @@ static size_t start_content_line(rfc3676_parser_t handle,
}
-static const unicode_char sig_block[]={'-', '-', ' '};
+static const char32_t sig_block[]={'-', '-', ' '};
/* Checking for a magical sig block */
static size_t check_signature_block(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
if (ptr && *ptr == sig_block[handle->sig_block_index])
{
@@ -533,7 +533,7 @@ static size_t check_signature_block(rfc3676_parser_t handle,
}
static size_t seen_sig_block(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
if (ptr == NULL || *ptr == '\n')
{
@@ -566,9 +566,9 @@ static size_t seen_sig_block(rfc3676_parser_t handle,
/* This is not a sig block line */
static size_t seen_notsig_block(rfc3676_parser_t handle,
- const unicode_char *newptr, size_t newcnt)
+ const char32_t *newptr, size_t newcnt)
{
- const unicode_char *ptr;
+ const char32_t *ptr;
size_t i;
if (handle->was_previous_quote_level)
@@ -596,7 +596,7 @@ static size_t seen_notsig_block(rfc3676_parser_t handle,
*/
static size_t scan_content_line(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
size_t i;
@@ -627,9 +627,9 @@ static size_t scan_content_line(rfc3676_parser_t handle,
}
static size_t seen_content_sp(rfc3676_parser_t handle,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
- unicode_char sp=' ';
+ char32_t sp=' ';
handle->content_handler=scan_content_line;
@@ -690,7 +690,7 @@ static void emit_line_flowed_wrap(rfc3676_parser_t handle)
}
static void emit_line_contents(rfc3676_parser_t handle,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
if (handle->errflag == 0 && cnt > 0)
@@ -717,7 +717,7 @@ static void emit_line_end(rfc3676_parser_t handle)
static void initial_nonflowed_line(rfc3676_parser_t handle,
int linebreak_opportunity,
- unicode_char ch,
+ char32_t ch,
size_t ch_width);
static void initial_nonflowed_end(rfc3676_parser_t handle);
@@ -772,7 +772,7 @@ static void nonflowed_line_begin(rfc3676_parser_t handle)
*/
static void nonflowed_line_contents(rfc3676_parser_t handle,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
if (!handle->lb)
@@ -814,7 +814,7 @@ static void nonflowed_line_end(rfc3676_parser_t handle)
** invoke the current handler.
*/
static int nonflowed_line_process(int linebreak_opportunity,
- unicode_char ch, void *dummy)
+ char32_t ch, void *dummy)
{
rfc3676_parser_t handle=(rfc3676_parser_t)dummy;
@@ -830,7 +830,7 @@ static int nonflowed_line_process(int linebreak_opportunity,
static void initial_nonflowed_line(rfc3676_parser_t handle,
int linebreak_opportunity,
- unicode_char ch,
+ char32_t ch,
size_t ch_width)
{
/*
@@ -889,7 +889,7 @@ static void initial_nonflowed_end(rfc3676_parser_t handle)
static void check_abnormal_line(rfc3676_parser_t handle)
{
size_t n, i;
- const unicode_char *p;
+ const char32_t *p;
if (unicode_buf_len(&handle->nonflowed_line) > 0)
return;
@@ -929,7 +929,7 @@ static void check_abnormal_line(rfc3676_parser_t handle)
static void forced_rewrap_line(rfc3676_parser_t handle,
int linebreak_opportunity,
- unicode_char ch,
+ char32_t ch,
size_t ch_width);
static void forced_rewrap_end(rfc3676_parser_t handle);
@@ -959,7 +959,7 @@ static void begin_forced_rewrap(rfc3676_parser_t handle)
static void forced_rewrap_line(rfc3676_parser_t handle,
int linebreak_opportunity,
- unicode_char ch,
+ char32_t ch,
size_t ch_width)
{
if (linebreak_opportunity != UNICODE_LB_NONE)
@@ -1002,4 +1002,3 @@ static void forced_rewrap_end(rfc3676_parser_t handle)
{
initial_nonflowed_end(handle); /* Same logic, for now */
}
-
diff --git a/rfc2045/rfc3676parser.h b/rfc2045/rfc3676parser.h
index 3890983..497792c 100644
--- a/rfc2045/rfc3676parser.h
+++ b/rfc2045/rfc3676parser.h
@@ -61,7 +61,7 @@ struct rfc3676_parser_info {
** rfc3676_parse() or rfc3676_deinit() returns the non-0 value.
*/
- int (*line_contents)(const unicode_char *txt, /* Contents */
+ int (*line_contents)(const char32_t *txt, /* Contents */
size_t txt_size,
/* Count of unicode chars in txt */
void *arg);
@@ -135,7 +135,7 @@ namespace mail {
extern "C" int tpp_trampoline_line_begin(size_t, void *);
- extern "C" int tpp_trampoline_line_contents(const unicode_char *,
+ extern "C" int tpp_trampoline_line_contents(const char32_t *,
size_t, void *);
extern "C" int tpp_trampoline_line_flowed_notify(void *);
@@ -185,7 +185,7 @@ namespace mail {
virtual void line_begin(size_t);
- virtual void line_contents(const unicode_char *,
+ virtual void line_contents(const char32_t *,
size_t);
virtual void line_flowed_notify();
diff --git a/rfc2045/rfc3676parsercpp.C b/rfc2045/rfc3676parsercpp.C
index cb67993..98976f0 100644
--- a/rfc2045/rfc3676parsercpp.C
+++ b/rfc2045/rfc3676parsercpp.C
@@ -16,7 +16,7 @@ extern "C" {
return 0;
}
- int mail::tpp_trampoline_line_contents(const unicode_char *ptr,
+ int mail::tpp_trampoline_line_contents(const char32_t *ptr,
size_t cnt, void *arg)
{
reinterpret_cast<mail::textplainparser *>(arg)
@@ -91,7 +91,7 @@ void mail::textplainparser::line_begin(size_t quote_level)
{
if (quote_level)
{
- std::vector<unicode_char> vec;
+ std::vector<char32_t> vec;
vec.reserve(quote_level+1);
vec.insert(vec.end(), quote_level, '>');
@@ -100,7 +100,7 @@ void mail::textplainparser::line_begin(size_t quote_level)
}
}
-void mail::textplainparser::line_contents(const unicode_char *data,
+void mail::textplainparser::line_contents(const char32_t *data,
size_t cnt)
{
}
@@ -111,7 +111,7 @@ void mail::textplainparser::line_flowed_notify()
void mail::textplainparser::line_end()
{
- unicode_char nl='\n';
+ char32_t nl='\n';
line_contents(&nl, 1);
}
diff --git a/rfc2045/testrfc3676parser.c b/rfc2045/testrfc3676parser.c
index 1a8c268..17e7477 100644
--- a/rfc2045/testrfc3676parser.c
+++ b/rfc2045/testrfc3676parser.c
@@ -15,7 +15,7 @@ static int line_begin(size_t quote_level, void *arg)
return 0;
}
-static int line_contents(const unicode_char *txt,
+static int line_contents(const char32_t *txt,
size_t txt_size,
void *arg)
{
diff --git a/rfc822/rfc2047.c b/rfc822/rfc2047.c
index 2c18c50..970d9b7 100644
--- a/rfc822/rfc2047.c
+++ b/rfc822/rfc2047.c
@@ -376,7 +376,7 @@ static int encodeqp(const char *ptr, size_t len,
** DOENCODEWORD().
*/
-static int encode_word(const unicode_char *uc,
+static int encode_word(const char32_t *uc,
size_t ucsize,
int (*qp_allow)(char),
@@ -409,7 +409,7 @@ static int encode_word(const unicode_char *uc,
** and keep going as long as encode_word() keeps returning the same value.
*/
-static int encode_words(const unicode_char *uc,
+static int encode_words(const char32_t *uc,
size_t ucsize,
int (*qp_allow)(char),
@@ -454,7 +454,7 @@ static int encode_words(const unicode_char *uc,
/*
** Encode a sequence of words.
*/
-static int do_encode_words_method(const unicode_char *uc,
+static int do_encode_words_method(const char32_t *uc,
size_t ucsize,
const char *charset,
int (*qp_allow)(char),
@@ -537,7 +537,7 @@ static int cnt_conv(const char *dummy, size_t n, void *arg)
** Encode, or not encode, words.
*/
-static int do_encode_words(const unicode_char *uc,
+static int do_encode_words(const char32_t *uc,
size_t ucsize,
const char *charset,
int flag,
@@ -596,7 +596,7 @@ static int do_encode_words(const unicode_char *uc,
/*
** RFC2047-encoding pass.
*/
-static int rfc2047_encode_callback(const unicode_char *uc,
+static int rfc2047_encode_callback(const char32_t *uc,
size_t ucsize,
const char *charset,
int (*qp_allow)(char),
@@ -669,7 +669,7 @@ char *rfc2047_encode_str(const char *str, const char *charset,
{
size_t i=1;
char *s, *p;
- unicode_char *uc;
+ char32_t *uc;
size_t ucsize;
int err;
diff --git a/sqwebmail/filter.c b/sqwebmail/filter.c
index d9f2813..7cdd213 100644
--- a/sqwebmail/filter.c
+++ b/sqwebmail/filter.c
@@ -45,7 +45,7 @@ void filter_start(struct filter_info *info,
}
void filter(struct filter_info *info,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
size_t i, prev;
@@ -57,7 +57,7 @@ void filter(struct filter_info *info,
while (1)
{
const char *p=0;
- unicode_char prevchar=info->prevchar;
+ char32_t prevchar=info->prevchar;
if (i < cnt)
{
@@ -76,7 +76,7 @@ void filter(struct filter_info *info,
if (uc_w + info->u_w > info->linesize &&
unicode_grapheme_break(prevchar, ptr[i]))
{
- unicode_char nl='\n';
+ char32_t nl='\n';
if (prev < i)
unicode_convert_uc
@@ -120,7 +120,7 @@ void filter(struct filter_info *info,
while (*p)
{
- unicode_char uc= *p++;
+ char32_t uc= *p++;
unicode_convert_uc(info->handle, &uc, 1);
}
@@ -128,7 +128,7 @@ void filter(struct filter_info *info,
}
void filter_passthru(struct filter_info *info,
- const unicode_char *ptr, size_t cnt)
+ const char32_t *ptr, size_t cnt)
{
unicode_convert_uc(info->handle, ptr, cnt);
}
diff --git a/sqwebmail/filter.h b/sqwebmail/filter.h
index df7e810..547e07f 100644
--- a/sqwebmail/filter.h
+++ b/sqwebmail/filter.h
@@ -46,7 +46,7 @@ struct filter_info {
int conversion_error;
- unicode_char prevchar;
+ char32_t prevchar;
size_t u_w;
@@ -59,9 +59,9 @@ struct filter_info {
void filter_start(struct filter_info *, const char *,
void (*)(const char *, size_t, void *), void *);
void filter(struct filter_info *,
- const unicode_char *, size_t);
+ const char32_t *, size_t);
void filter_passthru(struct filter_info *info,
- const unicode_char *ptr, size_t cnt);
+ const char32_t *ptr, size_t cnt);
void filter_end(struct filter_info *info);
#endif
diff --git a/sqwebmail/folder.c b/sqwebmail/folder.c
index c36c35a..bf31d36 100644
--- a/sqwebmail/folder.c
+++ b/sqwebmail/folder.c
@@ -156,7 +156,7 @@ void call_print_safe_to_stdout(const char *p, size_t cnt)
{
print_safe_len(p, cnt, print_safe_to_stdout);
}
-
+
void folder_contents_title()
{
const char *lab;
@@ -285,13 +285,13 @@ static const char *do_folder_delmsgs(const char *dir, size_t pos)
{
rc=group_movedel( dir, &groupdel );
maildir_savefoldermsgs(dir);
- }
- else if (*cgi("cmdpurgeall"))
+ }
+ else if (*cgi("cmdpurgeall"))
{
char *deldir;
struct maildir_info minfo;
- if (maildir_info_imap_find(&minfo, dir, login_returnaddr())<0)
+ if (maildir_info_imap_find(&minfo, dir, login_returnaddr())<0)
return "othererror";
if ((deldir=maildir_name2dir(minfo.homedir, minfo.maildir)) == NULL)
@@ -299,7 +299,7 @@ static const char *do_folder_delmsgs(const char *dir, size_t pos)
maildir_info_destroy(&minfo);
return "othererror";
}
-
+
cur = malloc(strlen(deldir)+5);
strcpy(cur, deldir);
strcat(cur, "/cur");
@@ -310,7 +310,7 @@ static const char *do_folder_delmsgs(const char *dir, size_t pos)
maildir_info_destroy(&minfo);
free(deldir);
free(cur);
-
+
}
else if (*cgi("cmdmove"))
{
@@ -334,7 +334,7 @@ static const char *do_folder_delmsgs(const char *dir, size_t pos)
void folder_delmsgs(const char *dir, size_t pos)
{
const char *status=do_folder_delmsgs(dir, pos);
-
+
if (*cgi("search"))
http_redirect_argsss("&error=%s&form=folder&pos=%s&search=1&"
SEARCHRESFILENAME "=%s", status,
@@ -1358,7 +1358,7 @@ static void show_transfer_dest_real(const char *, const char *,
const char *, const char *);
static void show_transfer_dest_fake(const char *,
struct maildir_shindex_cache *);
-
+
static void show_transfer_dest(const char *cur_folder)
{
parse_hierarchy(cur_folder, show_transfer_dest_real,
@@ -2830,7 +2830,7 @@ static void parse_hierarchy(const char *folderdir,
if (strchr(folderdir, '/'))
enomem();
-
+
if (strncmp(folderdir, NEWSHAREDSP, sizeof(NEWSHAREDSP)-1) == 0)
switch (folderdir[sizeof(NEWSHAREDSP)-1]) {
case 0:
@@ -3643,7 +3643,7 @@ void folder_showtransfer()
}
if ((strcmp(sqwebmail_folder, INBOX "." TRASH) == 0) && (strlen(getarg("PURGEALL"))))
- printf("<input type=\"submit\" name=\"cmdpurgeall\" value=\"%s\" onclick=\"javascript: return deleteAll();\" />",
+ printf("<input type=\"submit\" name=\"cmdpurgeall\" value=\"%s\" onclick=\"javascript: return deleteAll();\" />",
getarg("PURGEALL"));
printf("<input type=\"submit\" name=\"cmddel\" value=\"%s\" />%s<select name=\"moveto\">",
strcmp(sqwebmail_folder, INBOX "." TRASH) == 0
@@ -3715,7 +3715,7 @@ static char *truncate_at(const char *str,
const char *charset,
size_t ncols)
{
- unicode_char *uc;
+ char32_t *uc;
size_t n;
size_t cols, tp=0;
char *retbuf;
@@ -3756,7 +3756,7 @@ static char *truncate_at(const char *str,
if (chopped)
{
- uc = realloc(uc, sizeof(unicode_char) * (tp+4));
+ uc = realloc(uc, sizeof(char32_t) * (tp+4));
if (uc == 0) enomem();
uc[tp]='.';
uc[tp+1]='.';
diff --git a/sqwebmail/html.c b/sqwebmail/html.c
index 0e381c1..9472302 100644
--- a/sqwebmail/html.c
+++ b/sqwebmail/html.c
@@ -117,7 +117,7 @@ struct htmlfilter_info {
/* The output function receives the HTML-filtered stream */
- void (*output_func)(const unicode_char *, size_t, void *);
+ void (*output_func)(const char32_t *, size_t, void *);
void *output_func_arg;
/* Content base for relative URLs */
@@ -136,7 +136,7 @@ struct htmlfilter_info {
/* Current handle for the input HTML stream */
size_t (*handler_func)(struct htmlfilter_info *,
- const unicode_char *,
+ const char32_t *,
size_t);
/*
@@ -161,7 +161,7 @@ struct htmlfilter_info {
** Quoting character
*/
- unicode_char value_quote;
+ char32_t value_quote;
/* Current tag being processed */
const struct taginfo *tag;
@@ -203,79 +203,79 @@ static void free_attrs(struct htmlfilter_info *p)
}
static size_t handle_chars(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t handle_entity(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_lt(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_ltexcl(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_sgentity(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_ltspace(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_pi(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_piq(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_comment(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_commentdash(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_commentdashdash(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_closing_elem(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_opening_elem(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_attr(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_attrname(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_attrvalue_1stchar(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_attrvalue(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static size_t seen_attrvalue_entity(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
struct htmlfilter_info *htmlfilter_alloc(void (*output_func)
- (const unicode_char *, size_t, void *),
+ (const char32_t *, size_t, void *),
void *output_func_arg)
{
struct htmlfilter_info *p;
@@ -356,7 +356,7 @@ void htmlfilter_set_convertcid(struct htmlfilter_info *p,
}
void htmlfilter(struct htmlfilter_info *p,
- const unicode_char *str, size_t cnt)
+ const char32_t *str, size_t cnt)
{
while (cnt)
{
@@ -372,7 +372,7 @@ void htmlfilter(struct htmlfilter_info *p,
*/
static void output(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
if (cnt && !p->n_discarded)
@@ -386,7 +386,7 @@ static void output_chars(struct htmlfilter_info *p,
const char *str,
size_t cnt)
{
- unicode_char unicode_buf[256];
+ char32_t unicode_buf[256];
while (cnt)
{
@@ -409,7 +409,7 @@ static void output_chars(struct htmlfilter_info *p,
*/
static size_t handle_chars(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
@@ -443,7 +443,7 @@ static size_t handle_chars(struct htmlfilter_info *p,
if (i)
output(p, uc, i);
{
- static const unicode_char gt[]=
+ static const char32_t gt[]=
{'&','g','t',';'};
output(p, gt, 4);
@@ -461,7 +461,7 @@ static size_t handle_chars(struct htmlfilter_info *p,
** Returns: non-zero US-ASCII lowercase value of passed character if the
** passed character is US-ASCII alphabetic or numeric, 0 otherwise.
*/
-static unicode_char isualnum(unicode_char c)
+static char32_t isualnum(char32_t c)
{
if (c >= 'a' && c <= 'z')
return c;
@@ -480,7 +480,7 @@ static unicode_char isualnum(unicode_char c)
*/
static size_t handle_entity(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
@@ -493,7 +493,7 @@ static size_t handle_entity(struct htmlfilter_info *p,
for (i=0; i<cnt; ++i)
{
- unicode_char c=isualnum(uc[i]);
+ char32_t c=isualnum(uc[i]);
if (c != 0)
{
@@ -523,7 +523,7 @@ static size_t handle_entity(struct htmlfilter_info *p,
*/
static size_t seen_lt(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
if (*uc == '?')
@@ -548,7 +548,7 @@ static size_t seen_lt(struct htmlfilter_info *p,
*/
static size_t seen_ltexcl(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
if (*uc == '-')
@@ -569,7 +569,7 @@ static size_t seen_ltexcl(struct htmlfilter_info *p,
*/
static size_t seen_sgentity(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
@@ -590,7 +590,7 @@ static size_t seen_sgentity(struct htmlfilter_info *p,
*/
static size_t seen_ltspace(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
if (SPACE(*uc))
@@ -619,7 +619,7 @@ static size_t seen_ltspace(struct htmlfilter_info *p,
*/
static size_t seen_pi(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
@@ -640,7 +640,7 @@ static size_t seen_pi(struct htmlfilter_info *p,
*/
static size_t seen_piq(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
p->handler_func=seen_pi;
@@ -661,7 +661,7 @@ static size_t seen_piq(struct htmlfilter_info *p,
*/
static size_t seen_comment(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
@@ -682,7 +682,7 @@ static size_t seen_comment(struct htmlfilter_info *p,
*/
static size_t seen_commentdash(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
if (*uc == '-')
@@ -699,7 +699,7 @@ static size_t seen_commentdash(struct htmlfilter_info *p,
*/
static size_t seen_commentdashdash(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
if (*uc == '>')
@@ -720,14 +720,14 @@ static int search_tags(const void *key, const void *elem)
{
size_t i;
const char *cp=((const struct taginfo *)elem)->tagname;
- unicode_char c;
+ char32_t c;
const struct unicode_buf *ukey=(struct unicode_buf *)key;
- const unicode_char *k=unicode_buf_ptr(ukey);
+ const char32_t *k=unicode_buf_ptr(ukey);
size_t kl=unicode_buf_len(ukey);
for (i=0; (c=i >= kl ? 0:k[i]) != 0 || cp[i] != 0; ++i)
{
- unicode_char c2=(unsigned char)cp[i];
+ char32_t c2=(unsigned char)cp[i];
if (c < c2)
return -1;
@@ -758,7 +758,7 @@ static const struct taginfo *change_element(const struct taginfo *tag)
*/
static void output_escaped(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
while (cnt)
@@ -779,8 +779,8 @@ static void output_escaped(struct htmlfilter_info *p,
if (cnt)
{
- unicode_char c;
- char buf[sizeof(unicode_char)*2+4];
+ char32_t c;
+ char buf[sizeof(char32_t)*2+4];
char *cp;
c= *uc++;
@@ -1004,11 +1004,11 @@ static void close_elements_until(struct htmlfilter_info *p, size_t i)
*/
static size_t seen_closing_elem(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
- unicode_char c;
+ char32_t c;
for (i=0; i<cnt; ++i)
{
@@ -1064,14 +1064,14 @@ static size_t seen_closing_elem(struct htmlfilter_info *p,
*/
static size_t seen_opening_elem(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
for (i=0; i<cnt; ++i)
{
- unicode_char c;
+ char32_t c;
if ((c=uc[i]) == ':' || (c=isualnum(c)) != 0)
{
@@ -1110,7 +1110,7 @@ static void save_attr(struct htmlfilter_info *p);
*/
static size_t seen_attr(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
if (SPACE(*uc))
@@ -1157,7 +1157,7 @@ static void append_orig_href(struct htmlfilter_info *p,
if (i == 0)
{
- unicode_char b[3];
+ char32_t b[3];
b[0]='%';
b[1]=hex[ (url[0] >> 4) & 15];
@@ -1530,14 +1530,14 @@ static void save_attr(struct htmlfilter_info *p)
*/
static size_t seen_attrname(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
for (i=0; i<cnt; ++i)
{
- unicode_char c;
+ char32_t c;
if ((c=uc[i]) == ':' || c == '-' || (c=isualnum(c)) != 0)
{
@@ -1566,7 +1566,7 @@ static size_t seen_attrname(struct htmlfilter_info *p,
*/
static size_t seen_attrvalue_1stchar(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
p->handler_func=seen_attrvalue;
@@ -1586,7 +1586,7 @@ static size_t seen_attrvalue_1stchar(struct htmlfilter_info *p,
*/
static size_t seen_attrvalue(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
@@ -1636,12 +1636,12 @@ static size_t seen_attrvalue(struct htmlfilter_info *p,
static void append_entity(struct htmlfilter_info *p)
{
- unicode_char v=0;
+ char32_t v=0;
if (unicode_buf_len(&p->atom2) &&
unicode_buf_ptr(&p->atom2)[0] == '#')
{
- const unicode_char *u=unicode_buf_ptr(&p->atom2);
+ const char32_t *u=unicode_buf_ptr(&p->atom2);
size_t n=unicode_buf_len(&p->atom2);
++u;
@@ -1651,7 +1651,7 @@ static void append_entity(struct htmlfilter_info *p)
{
while (--n)
{
- unicode_char c=*++u;
+ char32_t c=*++u;
const char *cp;
if (c >= 'a' && c <= 'f')
@@ -1672,7 +1672,7 @@ static void append_entity(struct htmlfilter_info *p)
{
while (n)
{
- unicode_char c= *u++;
+ char32_t c= *u++;
--n;
@@ -1693,7 +1693,7 @@ static void append_entity(struct htmlfilter_info *p)
for (i=0; i<unicode_buf_len(&p->atom2); ++i)
{
- unicode_char c=unicode_buf_ptr(&p->atom2)[i];
+ char32_t c=unicode_buf_ptr(&p->atom2)[i];
if ((unsigned char)c != c)
return;
@@ -1718,7 +1718,7 @@ static void append_entity(struct htmlfilter_info *p)
*/
static size_t seen_attrvalue_entity(struct htmlfilter_info *p,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
@@ -1731,7 +1731,7 @@ static size_t seen_attrvalue_entity(struct htmlfilter_info *p,
for (i=0; i<cnt; ++i)
{
- unicode_char c=isualnum(uc[i]);
+ char32_t c=isualnum(uc[i]);
if (c)
{
@@ -1750,7 +1750,7 @@ static size_t seen_attrvalue_entity(struct htmlfilter_info *p,
/* Broken URL, most likely */
{
- unicode_char amp='&';
+ char32_t amp='&';
unicode_buf_append(&p->value, &amp, 1);
}
diff --git a/sqwebmail/html.h b/sqwebmail/html.h
index c8d25fa..658dade 100644
--- a/sqwebmail/html.h
+++ b/sqwebmail/html.h
@@ -13,11 +13,11 @@
struct htmlfilter_info;
extern struct htmlfilter_info
-*htmlfilter_alloc(void (*)(const unicode_char *, size_t, void *), void *);
+*htmlfilter_alloc(void (*)(const char32_t *, size_t, void *), void *);
extern void htmlfilter_free(struct htmlfilter_info *);
extern void htmlfilter(struct htmlfilter_info *,
- const unicode_char *, size_t);
+ const char32_t *, size_t);
extern void htmlfilter_set_contentbase(struct htmlfilter_info *,
const char *);
diff --git a/sqwebmail/maildir.c b/sqwebmail/maildir.c
index 79dfbda..9c09813 100644
--- a/sqwebmail/maildir.c
+++ b/sqwebmail/maildir.c
@@ -2007,10 +2007,10 @@ static const char spaces[]=" \t\r\n";
struct searchresults_match_context {
struct searchresults_match_context *next;
- unicode_char *match_context_before;
- unicode_char *match_context;
+ char32_t *match_context_before;
+ char32_t *match_context;
- unicode_char *match_context_after;
+ char32_t *match_context_after;
size_t match_context_after_len;
size_t match_context_after_max_len;
};
@@ -2025,7 +2025,7 @@ struct searchresults {
char utf8buf[512];
size_t utf8buf_cnt;
- unicode_char *context_buf;
+ char32_t *context_buf;
size_t context_buf_len;
size_t context_buf_head;
@@ -2115,7 +2115,7 @@ static void execute_maildir_search(const char *dirname,
{
struct maildir_searchengine se;
int rc=-1;
- unicode_char *ustr;
+ char32_t *ustr;
size_t ustr_size;
unicode_convert_handle_t h;
@@ -2200,7 +2200,7 @@ static int searchresults_init(struct searchresults *sr,
sr->utf8buf_cnt=0;
sr->context_buf_len=maildir_search_len(se)+SEARCH_MATCH_CONTEXT_LEN*2+1;
- sr->context_buf=malloc(sr->context_buf_len * sizeof(unicode_char));
+ sr->context_buf=malloc(sr->context_buf_len * sizeof(char32_t));
if (sr->context_buf == NULL)
return -1;
@@ -2241,14 +2241,14 @@ static void search_found_save_context(struct searchresults *sr)
return;
if ((c->match_context_before=malloc((SEARCH_MATCH_CONTEXT_LEN+1)
- * sizeof(unicode_char))) == NULL)
+ * sizeof(char32_t))) == NULL)
{
free(c);
return;
}
if ((c->match_context=malloc((maildir_search_len(sr->se)+1)
- * sizeof(unicode_char))) == NULL)
+ * sizeof(char32_t))) == NULL)
{
free(c->match_context_before);
free(c);
@@ -2256,7 +2256,7 @@ static void search_found_save_context(struct searchresults *sr)
}
if ((c->match_context_after=malloc((SEARCH_MATCH_CONTEXT_LEN+1)
- * sizeof(unicode_char))) == NULL)
+ * sizeof(char32_t))) == NULL)
{
free(c->match_context);
free(c->match_context_before);
@@ -2318,7 +2318,7 @@ static void search_found_save_context(struct searchresults *sr)
static int do_search_utf8(struct searchresults *res)
{
- unicode_char *uc=NULL;
+ char32_t *uc=NULL;
size_t n;
unicode_convert_handle_t h;
@@ -2349,8 +2349,8 @@ static int do_search_utf8(struct searchresults *res)
{
struct searchresults_match_context *c;
- unicode_char origch=uc[n];
- unicode_char ch=unicode_lc(origch);
+ char32_t origch=uc[n];
+ char32_t ch=unicode_lc(origch);
maildir_search_step_unicode(res->se, ch);
@@ -2519,7 +2519,7 @@ static MATCHEDSTR *creatematches(struct searchresults *sr)
return retval;
}
-static char *match_conv(const unicode_char *uc)
+static char *match_conv(const char32_t *uc)
{
char *cbuf;
size_t csize;
diff --git a/sqwebmail/msg2html.c b/sqwebmail/msg2html.c
index f58df1d..80387ac 100644
--- a/sqwebmail/msg2html.c
+++ b/sqwebmail/msg2html.c
@@ -472,7 +472,7 @@ static int showmsgrfc822_header(const char *output_chset,
{
struct filter_info info;
- unicode_char *uc;
+ char32_t *uc;
size_t ucsize;
int conv_err;
@@ -927,7 +927,7 @@ static int text_to_stdout(const char *p, size_t n, void *dummy)
return 0;
}
-static void convert_unicode(const unicode_char *uc,
+static void convert_unicode(const char32_t *uc,
size_t n, void *dummy)
{
unicode_convert_uc(*(unicode_convert_handle_t *)dummy, uc, n);
@@ -936,7 +936,7 @@ static void convert_unicode(const unicode_char *uc,
static int htmlfilter_stub(const char *ptr, size_t cnt, void *voidptr)
{
htmlfilter((struct htmlfilter_info *)voidptr,
- (const unicode_char *)ptr, cnt/sizeof(unicode_char));
+ (const char32_t *)ptr, cnt/sizeof(char32_t));
return (0);
}
@@ -1373,7 +1373,7 @@ struct msg2html_textplain_info {
int text_decor_apostrophe_cnt; /* Apostrophe accumulator */
- unicode_char text_decor_uline_prev;
+ char32_t text_decor_uline_prev;
/* Previous character, used when scanning for underline enable */
/*
@@ -1383,7 +1383,7 @@ struct msg2html_textplain_info {
** handle wikifmt codes.
*/
- unicode_char lookahead_buf[64];
+ char32_t lookahead_buf[64];
size_t lookahead_saved;
/*
@@ -1402,7 +1402,7 @@ struct msg2html_textplain_info {
** highlights them.
*/
size_t (*text_url_handler)(struct msg2html_textplain_info *,
- const unicode_char *,
+ const char32_t *,
size_t);
/*
@@ -1438,7 +1438,7 @@ static void text_emit_passthru(struct msg2html_textplain_info *info,
{
while (*str)
{
- unicode_char ch=(unsigned char)*str++;
+ char32_t ch=(unsigned char)*str++;
filter_passthru(&info->info, &ch, 1);
}
@@ -1450,7 +1450,7 @@ static void text_close_paragraph(struct msg2html_textplain_info *info)
{
if (info->paragraph_open)
{
- unicode_char uc='\n';
+ char32_t uc='\n';
info->paragraph_open=0;
text_emit_passthru(info, info->paragraph_close);
@@ -1477,7 +1477,7 @@ static void text_close_li(struct msg2html_textplain_info *info)
if (info->li_open)
{
- unicode_char uc='\n';
+ char32_t uc='\n';
info->li_open=0;
text_emit_passthru(info, "</li>");
@@ -1604,14 +1604,14 @@ static void text_process_decor_begin(struct msg2html_textplain_info *ptr);
static void text_process_decor_end(struct msg2html_textplain_info *ptr);
static size_t text_contents_notalpha(struct msg2html_textplain_info *ptr,
- const unicode_char *txt,
+ const char32_t *txt,
size_t txt_size);
-static void text_line_contents_with_lookahead(const unicode_char *txt,
+static void text_line_contents_with_lookahead(const char32_t *txt,
size_t txt_size,
struct msg2html_textplain_info
*info);
-static void process_text(const unicode_char *txt,
+static void process_text(const char32_t *txt,
size_t txt_size,
struct msg2html_textplain_info *info);
@@ -1631,7 +1631,7 @@ static void process_text(const unicode_char *txt,
** at the beginning of the logical line.
*/
-static int do_text_line_contents(const unicode_char *txt,
+static int do_text_line_contents(const char32_t *txt,
size_t txt_size,
void *arg);
@@ -1671,7 +1671,7 @@ static int text_line_begin(size_t quote_level,
** Process the contents of a logical line.
*/
-static int text_line_contents(const unicode_char *txt,
+static int text_line_contents(const char32_t *txt,
size_t txt_size,
void *arg)
{
@@ -1689,13 +1689,13 @@ static int text_line_contents(const unicode_char *txt,
#endif
}
-static int do_text_line_contents(const unicode_char *txt,
+static int do_text_line_contents(const char32_t *txt,
size_t txt_size,
void *arg)
{
struct msg2html_textplain_info *info=
(struct msg2html_textplain_info *)arg;
- unicode_char lookahead_cpy_buf[sizeof(info->lookahead_buf)
+ char32_t lookahead_cpy_buf[sizeof(info->lookahead_buf)
/sizeof(info->lookahead_buf[0])];
size_t n;
@@ -1752,7 +1752,7 @@ static int do_text_line_contents(const unicode_char *txt,
** to this function, prepended to any new content.
*/
-static void text_line_contents_with_lookahead(const unicode_char *txt,
+static void text_line_contents_with_lookahead(const char32_t *txt,
size_t txt_size,
struct msg2html_textplain_info
*info)
@@ -1895,7 +1895,7 @@ static void text_line_contents_with_lookahead(const unicode_char *txt,
*/
static int text_line_flowed_notify(void *arg)
{
- unicode_char nl='\n';
+ char32_t nl='\n';
struct msg2html_textplain_info *info=
(struct msg2html_textplain_info *)arg;
filter(&info->info, &nl, 1);
@@ -1929,7 +1929,7 @@ static int text_line_end(void *arg)
if (info->flowed)
{
- unicode_char uc='\n';
+ char32_t uc='\n';
if (info->start_of_line)
{
@@ -1976,7 +1976,7 @@ static int text_line_end(void *arg)
{
- unicode_char uc='\n';
+ char32_t uc='\n';
filter(&info->info, &uc, 1);
}
@@ -1984,17 +1984,17 @@ static int text_line_end(void *arg)
}
static void process_text_wiki(char *paragraph_open,
- const unicode_char **txt_ret,
+ const char32_t **txt_ret,
size_t *txt_size_ret,
struct msg2html_textplain_info *info);
-static void process_text(const unicode_char *txt,
+static void process_text(const char32_t *txt,
size_t txt_size,
struct msg2html_textplain_info *info)
{
if (info->flowed && info->start_of_line)
{
- unicode_char uc='\n';
+ char32_t uc='\n';
filter(&info->info, &uc, 1);
@@ -2056,7 +2056,7 @@ static void process_text(const unicode_char *txt,
*/
static void process_text_wiki(char *paragraph_open,
- const unicode_char **txt,
+ const char32_t **txt,
size_t *txt_size,
struct msg2html_textplain_info *info)
{
@@ -2189,27 +2189,27 @@ static void process_text_wiki(char *paragraph_open,
*/
static void text_process_decor(struct msg2html_textplain_info *info,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static void text_process_decor_uline(struct msg2html_textplain_info *info,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static void text_process_plain(struct msg2html_textplain_info *info,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt);
static void emit_char_buffer(struct msg2html_textplain_info *info,
const char *uc,
size_t cnt,
void (*func)(struct msg2html_textplain_info *info,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt));
static size_t text_contents_checkurl(struct msg2html_textplain_info *info,
- const unicode_char *txt,
+ const char32_t *txt,
size_t txt_size);
/*
** Initial state of the URL collection layer -- processing non-alphabetic
@@ -2218,7 +2218,7 @@ static size_t text_contents_checkurl(struct msg2html_textplain_info *info,
*/
static size_t text_contents_notalpha(struct msg2html_textplain_info *info,
- const unicode_char *txt,
+ const char32_t *txt,
size_t txt_size)
{
size_t i;
@@ -2247,17 +2247,17 @@ static size_t text_contents_notalpha(struct msg2html_textplain_info *info,
}
static size_t text_contents_nourl(struct msg2html_textplain_info *info,
- const unicode_char *txt,
+ const char32_t *txt,
size_t txt_size);
static size_t text_contents_collecturl(struct msg2html_textplain_info *info,
- const unicode_char *txt,
+ const char32_t *txt,
size_t txt_size);
/*
** Collecting what may be a URL method name.
*/
static size_t text_contents_checkurl(struct msg2html_textplain_info *info,
- const unicode_char *txt,
+ const char32_t *txt,
size_t txt_size)
{
size_t i;
@@ -2339,7 +2339,7 @@ static size_t text_contents_checkurl(struct msg2html_textplain_info *info,
*/
static size_t text_contents_nourl(struct msg2html_textplain_info *info,
- const unicode_char *txt,
+ const char32_t *txt,
size_t txt_size)
{
size_t i;
@@ -2425,7 +2425,7 @@ static void emiturl(struct msg2html_textplain_info *info)
** Ok, we have a URL, so collect it, then mark it up.
*/
static size_t text_contents_collecturl(struct msg2html_textplain_info *info,
- const unicode_char *txt,
+ const char32_t *txt,
size_t txt_size)
{
size_t i;
@@ -2460,10 +2460,10 @@ static void emit_char_buffer(struct msg2html_textplain_info *info,
const char *uc,
size_t cnt,
void (*func)(struct msg2html_textplain_info *info,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt))
{
- unicode_char buf[64];
+ char32_t buf[64];
while (cnt)
{
@@ -2549,7 +2549,7 @@ static void text_process_decor_begin(struct msg2html_textplain_info *info)
static void text_process_decor_apostrophe(struct msg2html_textplain_info *info)
{
- unicode_char apos='\'';
+ char32_t apos='\'';
int n=info->text_decor_apostrophe_cnt;
info->text_decor_apostrophe_cnt=0;
@@ -2588,7 +2588,7 @@ static void text_process_decor_end(struct msg2html_textplain_info *info)
** Process text decorations.
*/
static void text_process_decor(struct msg2html_textplain_info *info,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
@@ -2635,11 +2635,11 @@ static void text_process_decor(struct msg2html_textplain_info *info,
*/
static void text_process_decor_uline(struct msg2html_textplain_info *info,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
size_t i;
- unicode_char space=' ';
+ char32_t space=' ';
while (cnt)
{
@@ -2740,7 +2740,7 @@ static void text_process_decor_uline(struct msg2html_textplain_info *info,
*/
static void text_process_plain(struct msg2html_textplain_info *info,
- const unicode_char *uc,
+ const char32_t *uc,
size_t cnt)
{
/* Set any requested text decorations that should be active now. */
diff --git a/sqwebmail/newmsg.h b/sqwebmail/newmsg.h
index b86742a..3cd0394 100644
--- a/sqwebmail/newmsg.h
+++ b/sqwebmail/newmsg.h
@@ -30,7 +30,7 @@ struct wrap_info {
void (*output_func)(const char *p, size_t l, void *arg);
void *arg;
- const unicode_char *uc;
+ const char32_t *uc;
size_t ucsize;
size_t cur_index;
diff --git a/sqwebmail/newmsg_create.c b/sqwebmail/newmsg_create.c
index 1fb712f..f78a275 100644
--- a/sqwebmail/newmsg_create.c
+++ b/sqwebmail/newmsg_create.c
@@ -172,7 +172,7 @@ size_t offset=strlen(name);
*outbuf=0;
++*outcnt;
}
-
+
static void create_draftheader_do(const char *hdrname, const char *p,
int isrfc822addr)
{
@@ -226,7 +226,7 @@ void newmsg_create_multipart(int newdraftfd, const char *charset,
maildir_writemsgstr(newdraftfd, multipart_boundary);
maildir_writemsgstr(newdraftfd, "\"; charset=\"");
maildir_writemsgstr(newdraftfd, charset);
- maildir_writemsgstr(newdraftfd,
+ maildir_writemsgstr(newdraftfd,
"\"\n\n");
maildir_writemsgstr(newdraftfd, mimemsg);
@@ -299,7 +299,7 @@ void wrap_text_init(struct wrap_info *uw,
}
static void do_save_u_line(struct wrap_info *uw,
- const unicode_char *uc,
+ const char32_t *uc,
size_t ucsize,
int flowed)
{
@@ -324,12 +324,12 @@ static void do_save_u_line(struct wrap_info *uw,
}
if (flowed)
{
- unicode_char spc=' ';
+ char32_t spc=' ';
unicode_convert_uc(h, &spc, 1);
}
{
- unicode_char nl='\n';
+ char32_t nl='\n';
unicode_convert_uc(h, &nl, 1);
}
@@ -394,7 +394,7 @@ static int do_save_u_process_lb(int type, void *arg)
}
static void do_wrap_u_line(struct wrap_info *uw,
- const unicode_char *uc,
+ const char32_t *uc,
size_t ucsize)
{
unicode_lb_info_t lb;
@@ -435,7 +435,7 @@ void wrap_text(struct wrap_info *uw,
while (i < newmsg_size)
{
- unicode_char *uc;
+ char32_t *uc;
size_t ucsize;
unicode_convert_handle_t h;
@@ -742,7 +742,7 @@ char *sig, *footer;
if ((sig && *sig) || (footer && *footer))
{
- static const unicode_char sig_line[]={'-', '-', ' '};
+ static const char32_t sig_line[]={'-', '-', ' '};
do_save_u_line(&uw, sig_line, 0, 0);
do_save_u_line(&uw, sig_line, 3, 0);
@@ -919,7 +919,7 @@ static void sentmsg_copy(FILE *f, struct rfc2045 *p)
if ((n=fread(buf, 1, cnt, f)) <= 0)
{
- fclose(f);
+ fclose(f);
close(newdraftfd);
enomem();
}
@@ -1105,7 +1105,7 @@ struct rfc2045 *rfcp;
int x;
*isgpgerr=0;
-
+
if (!filename) return (0);
fp=0;
@@ -1180,7 +1180,7 @@ int x;
char buf[BUFSIZ];
int n;
off_t dummy;
-
+
rfc2045_mimepos(rfcp, &start_pos, &end_pos, &start_body,
&dummy, &dummy);
@@ -1200,7 +1200,7 @@ int x;
if ((n=fread(buf, 1, cnt, fp)) <= 0)
{
- fclose(fp);
+ fclose(fp);
close(newdraftfd);
enomem();
}
diff --git a/sqwebmail/sqispell.c b/sqwebmail/sqispell.c
index 3e72873..51f1cfa 100644
--- a/sqwebmail/sqispell.c
+++ b/sqwebmail/sqispell.c
@@ -388,7 +388,7 @@ static void showfunc(const char *p, size_t n, void *dummy)
static void show_part(const char *ptr, size_t cnt)
{
- unicode_char *uc;
+ char32_t *uc;
size_t ucsize;
int conv_err;
diff --git a/sqwebmail/testhtml.c b/sqwebmail/testhtml.c
index aa7572f..a940486 100644
--- a/sqwebmail/testhtml.c
+++ b/sqwebmail/testhtml.c
@@ -3,7 +3,7 @@
#include <stdio.h>
#include <string.h>
-static void write_stdout(const unicode_char *uc, size_t n, void *dummy)
+static void write_stdout(const char32_t *uc, size_t n, void *dummy)
{
while (n)
{
@@ -21,7 +21,7 @@ int main(int argc, char **argv)
{
struct htmlfilter_info *p;
char buf[1024];
- unicode_char ubuf[1024];
+ char32_t ubuf[1024];
size_t n;
p=htmlfilter_alloc(write_stdout, NULL);