charset-utf8.c revision e59faf65ce864fe95dc00f5d52b8323cdbd0608a
/* Copyright (c) 2002-2010 Dovecot authors, see the included COPYING file */
#include "lib.h"
#include "buffer.h"
#include "str.h"
#include "unichar.h"
#include "charset-utf8.h"
#include <ctype.h>
bool charset_is_utf8(const char *charset)
{
}
enum charset_result *result_r)
{
struct charset_translation *t;
return -1;
charset_to_utf8_end(&t);
return 0;
}
#ifndef HAVE_ICONV
struct charset_translation {
enum charset_flags flags;
};
static struct charset_translation raw_translation = { 0 };
static struct charset_translation tc_translation = {
};
struct charset_translation **t_r)
{
if (charset_is_utf8(charset)) {
if ((flags & CHARSET_FLAG_DECOMP_TITLECASE) != 0)
*t_r = &tc_translation;
else
*t_r = &raw_translation;
return 0;
}
/* no support for charsets that need translation */
return -1;
}
{
}
{
}
enum charset_result
charset_to_utf8(struct charset_translation *t,
{
if ((t->flags & CHARSET_FLAG_DECOMP_TITLECASE) == 0)
else {
return CHARSET_RET_INVALID_INPUT;
}
return CHARSET_RET_OK;
}
#endif