kopia lustrzana https://github.com/SP8EBC/ParaTNC
161 wiersze
6.5 KiB
C
161 wiersze
6.5 KiB
C
/*
|
|
* kiss_communication_nrc_t.h
|
|
*
|
|
* Enum with Negative Return Codes for sudoUDS diagnostics via KISS
|
|
*
|
|
* Created on: Jun 27, 2023
|
|
* Author: mateusz
|
|
*/
|
|
|
|
#ifndef KISS_COMMUNICATION_KISS_COMMUNICATION_NRC_T_H_
|
|
#define KISS_COMMUNICATION_KISS_COMMUNICATION_NRC_T_H_
|
|
|
|
|
|
typedef enum kiss_communication_nrc_t {
|
|
NRC_POSITIVE = 0x00,
|
|
|
|
/**
|
|
* This response code indicates that the requested action has been rejected
|
|
* by the server. The generalReject response code shall only be implemented
|
|
* in the server if none of the negative response codes defined in this
|
|
* document meet the needs of the implementation. At no means shall this
|
|
* response code be a general replacement for other response codes defined.
|
|
*/
|
|
NRC_GENERAL_REJECT = 0x10,
|
|
|
|
/**
|
|
* This response code indicates that the requested action will not be taken
|
|
* because the server does not support the requested service. The server
|
|
* shall send this response code in case the client has sent a request
|
|
* message with a service identifier, which is either unknown or not
|
|
* supported by the server. Therefore this negative response code is not
|
|
* shown in the list of negative response codes to be supported for
|
|
* a diagnostic service, because this negative response code is not
|
|
* applicable for supported services.
|
|
*/
|
|
NRC_SERVICE_NOT_SUPPORTED = 0x11,
|
|
|
|
/**
|
|
* This response code indicates that the requested action will not be taken
|
|
* because the server does not support the service specific parameters of
|
|
* the request message. The server shall send this response code in case
|
|
* the client has sent a request message with a known and supported service
|
|
* identifier but with "sub function“ which is either unknown or
|
|
* not supported.
|
|
*/
|
|
NRC_SUBFUNCTION_NOT_SUPPORTED = 0x12,
|
|
|
|
/**
|
|
* This response code indicates that the requested action will not be taken
|
|
* because the length of the received request message does not match
|
|
* the prescribed length for the specified service or the format of
|
|
* the parameters do not match the prescribed format for the specified service.
|
|
*/
|
|
NRC_INCORRECT_MESSAGE_LENGTH_OR_FORMAT = 0x13,
|
|
|
|
/**
|
|
* This response code shall be reported by the server if the response to
|
|
* be generated exceeds the maximum number of bytes available by
|
|
* the underlying network layer.
|
|
*/
|
|
NRC_RESPONSE_TOO_LONG = 0x14,
|
|
|
|
/**
|
|
* This response code indicates that the server is temporarily too busy
|
|
* to perform the requested operation. In this circumstance the client
|
|
* shall perform repetition of the "identical request message" or
|
|
* "another request message". The repetition of the request shall be delayed
|
|
* by a time specified in the respective implementation documents.
|
|
*/
|
|
NRC_BUSY_REPEAT_REQUEST = 0x21,
|
|
|
|
/**
|
|
* This response code indicates that the requested action will not be taken
|
|
* because the server prerequisite conditions are not met.
|
|
*/
|
|
NRC_CONDITIONS_NOT_CORRECT = 0x22,
|
|
|
|
/**
|
|
* This response code indicates that the requested action will not be taken
|
|
* because the server expects a different sequence of request messages or
|
|
* message as sent by the client. This may occur when sequence sensitive
|
|
* requests are issued in the wrong order.
|
|
*/
|
|
NRC_REQUEST_SEQUENCE_ERROR = 0x24,
|
|
|
|
/**
|
|
* This response code indicates that the requested action will not be taken
|
|
* because the server has detected that the request message contains
|
|
* a parameter which attempts to substitute a value beyond its range of
|
|
* authority (e.g. attempting to substitute a data byte of 111 when the data
|
|
* is only defined to 100), or which attempts to access a
|
|
* dataIdentifier/routineIdentifer that is not supported or not supported
|
|
* in active session. This response code shall be implemented for
|
|
* all services, which allow the client to read data, write data or
|
|
* adjust functions by data in the server.
|
|
*/
|
|
NRC_REQUEST_OUT_OF_RANGE = 0x31,
|
|
|
|
/**
|
|
* This response code indicates that the requested action will not be taken
|
|
* because the server's security strategy has not been satisfied by
|
|
* the client. The server shall send this response code if one of the
|
|
* following cases occur:
|
|
* the test conditions of the server are not met,
|
|
* the required message sequence
|
|
* e.g. DiagnosticSessionControl, securityAccess is not met,
|
|
* the client has sent a request message which requires an unlocked server.
|
|
*/
|
|
NRC_SECURITY_ACCESS_DENIED = 0x33,
|
|
|
|
/**
|
|
* This response code indicates that the server has not given security
|
|
* access because the key sent by the client did not match with the key
|
|
* in the server's memory. This counts as an attempt to gain security.
|
|
* The server shall remain locked and increment its internal
|
|
* securityAccessFailed counter.
|
|
*/
|
|
NRC_INVALID_KEY = 0x35,
|
|
|
|
/**
|
|
* This response code indicates that the requested action will not be taken
|
|
* because the client has unsuccessfully attempted to gain security access
|
|
* more times than the server's security strategy will allow.
|
|
*/
|
|
NRC_EXCEED_NUMBER_OF_ATTEMPTS = 0x36,
|
|
|
|
/**
|
|
* This response code indicates that the request message was received
|
|
* correctly, and that all parameters in the request message were valid,
|
|
* but the action to be performed is not yet completed and the server is
|
|
* not yet ready to receive another request. As soon as the requested
|
|
* service has been completed, the server shall send a positive response
|
|
* message or negative response message with a response code different
|
|
* from this. The negative response message with this response code may be
|
|
* repeated by the server until the requested service is completed and
|
|
* the final response message is sent. This response code might impact
|
|
* the application layer timing parameter values. The detailed specification
|
|
* shall be included in the data link specific implementation document.
|
|
*/
|
|
NRC_REQUEST_CORRECT_RESPONSE_PENDING = 0x78,
|
|
|
|
/**
|
|
* This response code indicates that the requested action will not be taken
|
|
* because the server does not support the requested service in the session
|
|
* currently active. This response code shall only be used when
|
|
* the requested service is known to be supported in another session,
|
|
* otherwise response code 0x11 (serviceNotSupported) shall be used.
|
|
* This response code is in general supported by each diagnostic service,
|
|
* as not otherwise stated in the data link specific implementation
|
|
* document, therefore it is not listed in the list of applicable response
|
|
* codes of the diagnostic services.
|
|
*/
|
|
NRC_SERVICE_NOT_SUPPORTED_IN_ACTIVE_SESSION = 0x7F
|
|
|
|
|
|
|
|
}kiss_communication_nrc_t;
|
|
|
|
|
|
#endif /* KISS_COMMUNICATION_KISS_COMMUNICATION_NRC_T_H_ */
|