errno.h 3.86 KB
/* GNU Mailutils -- a suite of utilities for electronic mail
   Copyright (C) 1999, 2000, 2001, 2003, 2004 Free Software Foundation, Inc.

   This library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public
   License as published by the Free Software Foundation; either
   version 2 of the License, or (at your option) any later version.

   This library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Lesser General Public License for more details.

   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free Software
   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA  */

#ifndef _MAILUTILS_ERRNO_H
#define _MAILUTILS_ERRNO_H	1

#include <mailutils/types.h>

#ifdef __cplusplus
extern "C" {
#endif

#define MU_ERR_BASE                 0x1000

#define MU_ERR_FAILURE              (MU_ERR_BASE + 1)
#define MU_ERR_NO_HANDLER           (MU_ERR_BASE + 2)
#define MU_ERR_EMPTY_VFN            (MU_ERR_BASE + 3)

#define MU_ERR_OUT_NULL             (MU_ERR_BASE + 4)
#define MU_ERR_OUT_PTR_NULL         (MU_ERR_BASE + 5)

#define MU_ERR_MBX_NULL             (MU_ERR_BASE + 6)

#define MU_ERR_BAD_822_FORMAT       (MU_ERR_BASE + 7)
#define MU_ERR_EMPTY_ADDRESS        (MU_ERR_BASE + 8)

#define MU_ERR_LOCKER_NULL          (MU_ERR_BASE + 9)
#define MU_ERR_LOCK_CONFLICT        (MU_ERR_BASE + 10)
#define MU_ERR_LOCK_BAD_LOCK        (MU_ERR_BASE + 11)
#define MU_ERR_LOCK_BAD_FILE        (MU_ERR_BASE + 12)
#define MU_ERR_LOCK_NOT_HELD        (MU_ERR_BASE + 13)
#define MU_ERR_LOCK_EXT_FAIL        (MU_ERR_BASE + 14)
  /* external program not found, or lack of system resources */
#define MU_ERR_LOCK_EXT_ERR         (MU_ERR_BASE + 15)
  /* external program failed, specific reason unknown */
#define MU_ERR_LOCK_EXT_KILLED      (MU_ERR_BASE + 16)
  /* external program was interrupted */

#define MU_ERR_NO_SUCH_USER         (MU_ERR_BASE + 17)

#define MU_ERR_GETHOSTBYNAME        (MU_ERR_BASE + 18)

#define MU_ERR_BAD_RESUMPTION       (MU_ERR_BASE + 19)

#define MU_ERR_MAILER_BAD_FROM      (MU_ERR_BASE + 20)
#define MU_ERR_MAILER_BAD_TO        (MU_ERR_BASE + 21)
#define MU_ERR_MAILER_NO_RCPT_TO    (MU_ERR_BASE + 22)
#define MU_ERR_MAILER_BAD_URL       (MU_ERR_BASE + 23)
#define MU_ERR_SMTP_RCPT_FAILED     (MU_ERR_BASE + 24)

#define MU_ERR_TCP_NO_HOST          (MU_ERR_BASE + 25)
#define MU_ERR_TCP_NO_PORT          (MU_ERR_BASE + 26)

#define MU_ERR_BAD_2047_INPUT       (MU_ERR_BASE + 27)

#define MU_ERR_NOUSERNAME           (MU_ERR_BASE + 28)
#define MU_ERR_NOPASSWORD           (MU_ERR_BASE + 29)

#define MU_ERR_UNSAFE_PERMS         (MU_ERR_BASE + 30)
  /* unsafe file permissions */

#define MU_ERR_BAD_AUTH_SCHEME      (MU_ERR_BASE + 31)
  /* Unsupported authentication scheme */

#define MU_ERR_AUTH_FAILURE         (MU_ERR_BASE + 32)
  /* Authentication failed */

#define MU_ERR_PROCESS_NOEXEC       (MU_ERR_BASE + 33)
  /* Unable to execute subprocess */
#define MU_ERR_PROCESS_EXITED       (MU_ERR_BASE + 34)
  /* Subprocess exited with a non-zero status */
#define MU_ERR_PROCESS_SIGNALED     (MU_ERR_BASE + 35)
  /* Subprocess exited on signal */

#define MU_ERR_PROCESS_UNKNOWN_FAILURE (MU_ERR_BASE + 36)
  /* Unknown failure while executing subprocess */

#define MU_ERR_CONN_CLOSED	    (MU_ERR_BASE + 37)
  /* Connection closed by remote host */
#define MU_ERR_PARSE		    (MU_ERR_BASE + 38)
  /* Parse error */
#define MU_ERR_NOENT                (MU_ERR_BASE + 39)  
  /* Requested item not found */
#define MU_ERR_BUFSPACE             (MU_ERR_BASE + 40)
  /* Not enough buffer space */
  
const char *mu_errname __P((int e));
const char *mu_strerror __P((int e));

#ifdef __cplusplus
}
#endif

#endif /* _MAILUTILS_ERRNO_H */