/*
 * imap_err.c:
 * This file is automatically generated; please do not edit it.
 */

#include <stdlib.h>

#define N_(a) a

static const char * const text[] = {
	N_(   "Internal Error"),
	N_(   "System I/O error"),
	N_(   "Item does not exist"),
	N_(   "Operating System Error"),
	N_(   "mail system storage has been exceeded"),
	N_(   "Permission denied"),
	N_(   "Over quota"),
	N_(   "Message size exceeds fixed limit"),
	N_(   "Too many user flags in mailbox"),
	N_(   "Invalid namespace prefix in configuration file"),
	N_(   "Mailbox has an invalid format"),
	N_(   "Replication inconsistency detected"),
	N_(   "Mailbox format corruption detected"),
	N_(   "Operation is not supported on mailbox"),
	N_(   "Mailbox does not exist"),
	N_(   "Mailbox already exists"),
	N_(   "Invalid mailbox name"),
	N_(   "Invalid mailbox type"),
	N_(   "Mailbox has been moved to another server"),
	N_(   "Mailbox is currently reserved"),
	N_(   "Mailbox is locked"),
	N_(   "Delivery to mailbox is disabled"),
	N_(   "Unknown/invalid partition"),
	N_(   "Invalid identifier"),
	N_(   "Message contains NUL characters"),
	N_(   "Message contains bare newlines"),
	N_(   "Message contains non-ASCII characters in headers"),
	N_(   "Message contains invalid header"),
	N_(   "Message has no header/body separator"),
	N_(   "Quota root does not exist"),
	N_(   "Bad protocol"),
	N_(   "Syntax error in parameters"),
	N_(   "Invalid annotation entry"),
	N_(   "Invalid annotation attribute"),
	N_(   "Invalid annotation value"),
	N_(   "Bad URL"),
	N_(   "Zero-length message literal"),
	N_(   "Invalid server requested"),
	N_(   "Server(s) unavailable to complete operation"),
	N_(   "The remote Server(s) denied the operation"),
	N_(   "Retry operation"),
	N_(   "This mailbox hierarchy does not exist on a single backend server."),
	N_(   "The remote server does not support MULTIAPPEND"),
	N_(   "Unrecognized character set"),
	N_(   "Invalid user"),
	N_(   "Login incorrect"),
	N_(   "Anonymous login is not permitted"),
	N_(   "Unsupported quota resource"),
	N_(   "Authentication failed"),
	N_(   "Client cancelled authentication"),
	N_(   "Protocol error during authentication"),
	N_(   "Mailbox is over %s quota"),
	N_(   "Mailbox is at %d%% of %s quota"),
	N_(   "Message %d no longer exists"),
	N_(   "Unable to checkpoint \\Seen state"),
	N_(   "Unable to preserve \\Seen state"),
	N_(   "No matching messages"),
	N_(   "No matching annotations"),
	N_(   "[UNKNOWN-CTE] Can not process the binary data"),
	N_(   "LOGOUT received"),
	N_(   "Completed"),
    0
};

struct error_table {
    char const * const * msgs;
    long base;
    int n_msgs;
};
struct et_list {
    struct et_list *next;
    const struct error_table * table;
};
extern struct et_list *_et_list;

const struct error_table et_imap_error_table = { text, -1904809472L, 61 };

static struct et_list link = { 0, 0 };

void initialize_imap_error_table_r(struct et_list **list);
void initialize_imap_error_table(void);

void initialize_imap_error_table(void) {
    initialize_imap_error_table_r(&_et_list);
}

/* For Heimdal compatibility */
void initialize_imap_error_table_r(struct et_list **list)
{
    struct et_list *et, **end;

    for (end = list, et = *list; et; end = &et->next, et = et->next)
        if (et->table->msgs == text)
            return;
    et = malloc(sizeof(struct et_list));
    if (et == 0) {
        if (!link.table)
            et = &link;
        else
            return;
    }
    et->table = &et_imap_error_table;
    et->next = 0;
    *end = et;
}
