blob: 7322e003398ef4c7ea6177f2c09344a7096465f7 [file] [log] [blame]
/* $Id$ */
/*
* Copyright (C) 2008-2011 Teluu Inc. (http://www.teluu.com)
* Copyright (C) 2003-2008 Benny Prijono <benny@prijono.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program 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 General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef __PJNATH_ERRNO_H__
#define __PJNATH_ERRNO_H__
/**
* @file errno.h
* @brief PJNATH specific error codes
*/
#include <pj/errno.h>
/**
* @defgroup PJNATH_ERROR NAT Helper Library Error Codes
* @brief PJNATH specific error code constants
* @ingroup PJNATH_STUN_BASE
* @{
*/
/**
* Start of error code relative to PJ_ERRNO_START_USER.
* This value is 370000.
*/
#define PJNATH_ERRNO_START (PJ_ERRNO_START_USER + PJ_ERRNO_SPACE_SIZE*4)
/************************************************************
* STUN MESSAGING ERRORS
***********************************************************/
/**
* Map STUN error code (300-699) into pj_status_t error space.
*/
#define PJ_STATUS_FROM_STUN_CODE(code) (PJNATH_ERRNO_START+code)
/**
* @hideinitializer
* Invalid STUN message
*/
#define PJNATH_EINSTUNMSG (PJNATH_ERRNO_START+1) /* 370001 */
/**
* @hideinitializer
* Invalid STUN message length.
*/
#define PJNATH_EINSTUNMSGLEN (PJNATH_ERRNO_START+2) /* 370002 */
/**
* @hideinitializer
* Invalid or unexpected STUN message type
*/
#define PJNATH_EINSTUNMSGTYPE (PJNATH_ERRNO_START+3) /* 370003 */
/**
* @hideinitializer
* STUN transaction has timed out
*/
#define PJNATH_ESTUNTIMEDOUT (PJNATH_ERRNO_START+4) /* 370004 */
/**
* @hideinitializer
* Too many STUN attributes.
*/
#define PJNATH_ESTUNTOOMANYATTR (PJNATH_ERRNO_START+21) /* 370021 */
/**
* @hideinitializer
* Invalid STUN attribute length.
*/
#define PJNATH_ESTUNINATTRLEN (PJNATH_ERRNO_START+22) /* 370022 */
/**
* @hideinitializer
* Found duplicate STUN attribute.
*/
#define PJNATH_ESTUNDUPATTR (PJNATH_ERRNO_START+23) /* 370023 */
/**
* @hideinitializer
* STUN FINGERPRINT verification failed
*/
#define PJNATH_ESTUNFINGERPRINT (PJNATH_ERRNO_START+30) /* 370030 */
/**
* @hideinitializer
* Invalid STUN attribute after MESSAGE-INTEGRITY.
*/
#define PJNATH_ESTUNMSGINTPOS (PJNATH_ERRNO_START+31) /* 370031 */
/**
* @hideinitializer
* Invalid STUN attribute after FINGERPRINT.
*/
#define PJNATH_ESTUNFINGERPOS (PJNATH_ERRNO_START+33) /* 370033 */
/**
* @hideinitializer
* STUN (XOR-)MAPPED-ADDRESS attribute not found
*/
#define PJNATH_ESTUNNOMAPPEDADDR (PJNATH_ERRNO_START+40) /* 370040 */
/**
* @hideinitializer
* STUN IPv6 attribute not supported
*/
#define PJNATH_ESTUNIPV6NOTSUPP (PJNATH_ERRNO_START+41) /* 370041 */
/**
* @hideinitializer
* Invalid address family value in STUN message.
*/
#define PJNATH_EINVAF (PJNATH_ERRNO_START+42) /* 370042 */
/**
* @hideinitializer
* Invalid STUN server or server not configured.
*/
#define PJNATH_ESTUNINSERVER (PJNATH_ERRNO_START+50) /* 370050 */
/************************************************************
* STUN SESSION/TRANSPORT ERROR CODES
***********************************************************/
/**
* @hideinitializer
* STUN object has been destoyed.
*/
#define PJNATH_ESTUNDESTROYED (PJNATH_ERRNO_START+60) /* 370060 */
/************************************************************
* ICE ERROR CODES
***********************************************************/
/**
* @hideinitializer
* ICE session not available
*/
#define PJNATH_ENOICE (PJNATH_ERRNO_START+80) /* 370080 */
/**
* @hideinitializer
* ICE check is in progress
*/
#define PJNATH_EICEINPROGRESS (PJNATH_ERRNO_START+81) /* 370081 */
/**
* @hideinitializer
* This error indicates that ICE connectivity check has failed, because
* there is at least one ICE component that does not have a valid check.
* Normally this happens because the network topology had caused the
* connectivity check to fail (e.g. no route between the two agents),
* however other reasons may include software incompatibility between
* the two agents, or incomplete candidates gathered by the agent(s).
*/
#define PJNATH_EICEFAILED (PJNATH_ERRNO_START+82) /* 370082 */
/**
* @hideinitializer
* Default destination does not match any ICE candidates
*/
#define PJNATH_EICEMISMATCH (PJNATH_ERRNO_START+83) /* 370083 */
/**
* @hideinitializer
* Invalid ICE component ID
*/
#define PJNATH_EICEINCOMPID (PJNATH_ERRNO_START+86) /* 370086 */
/**
* @hideinitializer
* Invalid ICE candidate ID
*/
#define PJNATH_EICEINCANDID (PJNATH_ERRNO_START+87) /* 370087 */
/**
* @hideinitializer
* Source address mismatch. This error occurs if the source address
* of the response for ICE connectivity check is different than
* the destination address of the request.
*/
#define PJNATH_EICEINSRCADDR (PJNATH_ERRNO_START+88) /* 370088 */
/**
* @hideinitializer
* Missing ICE SDP attribute
*/
#define PJNATH_EICEMISSINGSDP (PJNATH_ERRNO_START+90) /* 370090 */
/**
* @hideinitializer
* Invalid SDP "candidate" attribute
*/
#define PJNATH_EICEINCANDSDP (PJNATH_ERRNO_START+91) /* 370091 */
/**
* @hideinitializer
* No host candidate associated with srflx. This error occurs when
* a server reflexive candidate is added without the matching
* host candidate.
*/
#define PJNATH_EICENOHOSTCAND (PJNATH_ERRNO_START+92) /* 370092 */
/**
* @hideinitializer
* Controlled agent timed-out in waiting for the controlling agent to
* send nominated check after all connectivity checks have completed.
*/
#define PJNATH_EICENOMTIMEOUT (PJNATH_ERRNO_START+93) /* 370093 */
/************************************************************
* TURN ERROR CODES
***********************************************************/
/**
* @hideinitializer
* Invalid or unsupported TURN transport.
*/
#define PJNATH_ETURNINTP (PJNATH_ERRNO_START+120) /* 370120 */
/**
* @}
*/
#endif /* __PJNATH_ERRNO_H__ */