This article summarizes only the diameter base protocol result codes more to follow soon -
Informational
DIAMETER_MULTI_ROUND_AUTH - 1001
Subsequent messages triggered by client shall also used in Authentication and to get access of required resources. Generally used in Diameter NAS
Success
DIAMETER_SUCCESS - 2001
Request processed Successfully
DIAMETER_LIMITED_SUCCESS - 2002
Request is processed but some more processing is required by Server to provide access to user.
Protocol Errors [E-bit set]
DIAMETER_COMMAND_UNSUPPORTED - 3001
Server returns it if Diameter Command-Code is un-recognized by server.
DIAMETER_UNABLE_TO_DELIVER - 3002
Message can’t be delivered because there is no Host with Diameter URI present in Destination-Host AVP in associated Realm.
DIAMETER_REALM_NOT_SERVED - 3003
Intended Realm is not recognized.
DIAMETER_TOO_BUSY - 3004
Shall return by server only when server unable to provide requested service, where all the pre-requisites are also met. Client should also send the request to alternate peer.
DIAMETER_LOOP_DETECTED - 3005
An agent detected a loop while trying to get the message to the intended recipient.
DIAMETER_REDIRECT_INDICATION - 3006
A redirect agent has determined that the request could not be satisfied locally and the initiator of the request should direct the request directly to the server, whose contact information has been added to the response.
DIAMETER_APPLICATION_UNSUPPORTED - 3007
A request was sent for an application that is not supported.
DIAMETER_INVALID_HDR_BITS - 3008
It is sent when a request is received with invalid bits combination for considered command-code in DIAMETER Header structure. E.g. Marking Proxy-Bit in CER message.
DIAMETER_INVALID_AVP_BITS - 3009
It is sent when a request is received with invalid flag bits in an AVP.
DIAMETER_UNKNOWN_PEER - 3010
A DIAMETER server can be configured whether it shall accept DIAMETER connection from all nodes or only from specific nodes. If it is configured to accept connection from specific nodes and receives CER from message from any node other than specified. Here Server shall send considered error
Transient Failures
DIAMETER_AUTHENTICATION_REJECTED - 4001
Returned by Server, most likely because of invalid password.
DIAMETER_OUT_OF_SPACE - 4002
Returned by node, when it receives accounting information but unable to store it because of lack of memory
ELECTION_LOST - 4003
Peer determines that it has lost election by comparing Origin-Host value received in CER with its own DIAMETER IDENTITY and found that received DIAMETER IDENTITY is higher.
Permanent Failures [Request is failed, shouldn’t be attempted again by the peer]
DIAMETER_AVP_UNSUPPORTED - 5001
AVP marked with Mandatory Bit, but peer does not support it.
DIAMETER_UNKNOWN_SESSION_ID - 5002
The request contained an unknown Session-Id.
DIAMETER_AUTHORIZATION_REJECTED - 5003
A request was received for which the user could not be authorized. This error could occur if the service requested is not permitted to the user.
DIAMETER_INVALID_AVP_VALUE - 5004
The request contained an AVP with an invalid value in its data portion.
DIAMETER_MISSING_AVP - 5005
Mandatory AVP in request message is missing
DIAMETER_RESOURCES_EXCEEDED - 5006
A request was received that cannot be authorized because the user has already expended allowed resources. An example of this error condition is a user that is restricted to one dial-up PPP port, attempts to establish a second PPP connection.
DIAMETER_CONTRADICTING_AVPS - 5007
Server has identified that AVPs are present that are contradictory to each other.
DIAMETER_AVP_NOT_ALLOWED - 5008
Message is received by node (Server) that contain AVP must not be present.
DIAMETER_AVP_OCCURS_TOO_MANY_TIMES - 5009
If message contains the a AVP number of times that exceeds permitted occurrence of AVP in message definition
DIAMETER_NO_COMMON_APPLICATION - 5010
In response of CER if no common application supported between the peers.
DIAMETER_UNSUPPORTED_VERSION - 5011
This error is returned when a request was received, whose version number is unsupported.
DIAMETER_UNABLE_TO_COMPLY - 5012
Message rejected because of unspecified reasons.
DIAMETER_INVALID_BIT_IN_HEADER - 5013
When an unrecognized bit in the Diameter header is set to one.
DIAMETER_INVALID_AVP_LENGTH - 5014
The request contained an AVP with an invalid length.
DIAMETER_INVALID_MESSAGE_LENGTH - 5015
This error is returned when a request is received with an invalid message length.
DIAMETER_INVALID_AVP_BIT_COMBO - 5016
The request contained an AVP with which is not allowed to have the given value in the AVP Flags field.
DIAMETER_NO_COMMON_SECURITY - 5017
In response of CER if no common security mechanism supported between the peers.
Take a printout and fix it on your desk if you are dealing with Diameter?