Intrusion Detection System Manager (IdsM)
Collects and reports onboard security events to detect threats.
Funktionen — Übersicht
void IdsM_Init (const IdsM_ConfigType* configPtr);Service to initialize the module IdsM.void IdsM_GetVersionInfo (const Std_VersionInfoType* versionInfo);Returns version information, vendor ID and AUTOSAR module ID of the component.void IdsM_MainFunction (void);This function is called periodically.BufReq_ReturnType IdsM_CopyTxDataManager (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);This function is called to acquire the transmit data of an I-PDU segment (N-PDU).void IdsM_SetSecurityEvent (IdsM_SecurityEventIdType securityEventId);This API is the application interface to report security events to the IdsM.void IdsM_SetSecurityEventWithContextData (IdsM_SecurityEventIdType securityEventId, const uint8* contextData, uint16 contextDataSize);This API is the application interface to report security events with context data to the IdsM.void IdsM_SetSecurityEventWithCount (IdsM_SecurityEventIdType securityEventId, uint16 count);This API is the application interface for Smart Sensors to report security events with a count value to the IdsM.void IdsM_SetSecurityEventWithCountContextData (IdsM_SecurityEventIdType securityEventId, uint16 count, const uint8* contextData, uint16 contextDataSize);This API is the application interface for Smart Sensors to report security events with a count value and context data to the IdsM.void IdsM_SetSecurityEventWithTimestampCount (IdsM_SecurityEventIdType securityEventId, IdsM_TimestampType timestamp, uint16 count);This API is the application interface for Smart Sensors to report security events with a timestamp and a count value to the IdsM.void IdsM_SetSecurityEventWithTimestampCountContextDataManager (IdsM_SecurityEventIdType securityEventId, IdsM_TimestampType timestamp, uint16 count, const uint8* contextData, uint16 contextDataSize);This API is the application interface for Smart Sensors to report security events with a timestamp, a count value and context...void IdsM_BswM_StateChanged (IdsM_Filters_BlockStateType state);This callback function is invoked by the BswM to indicate ECU state changes.void IdsM_TpTxConfirmation (PduIdType id, Std_ReturnType result);This function is called after the I-PDU has been transmitted on its network, the result indicates whether the transmission was...void IdsM_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.Std_ReturnType IdsM_Dcm_GetReportingMode_RequestResults (Dcm_OpStatusType OpStatus, uint8* Out_ReportingMode, Dcm_NegativeResponseCodeType* ErrorCode);This function is a request from DCM to the IdsM to read the routine results triggered by function...Std_ReturnType IdsM_Dcm_GetReportingMode_Start (uint16 In_SecurityEventId, uint8 In_SensorInstanceId, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode);This function is a request from DCM to the IdsM to start the routine execution to request the current reporting mode of a...Std_ReturnType IdsM_Dcm_SetReportingMode_Start (uint16 In_SecurityEventId, uint8 In_SensorInstanceId, uint8 In_ReportingMode, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode);This function is a request from DCM to the IdsM to start the routine execution to set the reporting mode of a specific...
Typen — Übersicht
struct IdsM_ConfigTypeConfiguration data structure of IdsM module.enum IdsM_Filters_BlockStateTypeData type used for "Block State" filter values (bit masks)enum IdsM_Filters_ReportingModeTypeReporting modes used by the reporting mode filterIdsM_TimestampTypeData type for IdsM timestampsIdsM_SecurityEventIdTypeData type used for local IdsM Security Event IDs
Funktionen & Typen — Detailansicht
функция IdsM_Init [SWS_IdsM_91001] 📄 PDF
void IdsM_Init (const IdsM_ConfigType* configPtr);
Service to initialize the module IdsM. It initializes all variables and sets the module state to initialized.
Синхронный и нереентерабельный интерфейс IdsM_Init служит для базовой инициализации модуля IdsM согласно [SWS_IdsM_91001]. При вызове служба инициализирует все внутренние переменные и переводит IdsM в состояние «инициализирован» ([SWS_IdsM_00202]). Через входной параметр configPtr функция принимает указатель на специфичную для модуля структуру конфигурации ([SWS_IdsM_91001]).
Выполнение IdsM_Init представляет собой обязательное функциональное предварительное условие для работы модуля. Если API модуля IdsM, отличный от IdsM_Init или IdsM_GetVersionInfo, вызывается в еще неинициализированном состоянии, модуль при включенном обнаружении ошибок разработки (IdsMDevErrorDetect) сообщает об ошибке IDSM_E_PARAM_UNINIT через Det_ReportError ([SWS_IdsM_00203], см. также код ошибки 0x0D под [SWS_IdsM_02003]).
Для обработки ошибок и контекста вызова действуют специфические правила поведения:
- Если
IdsM_Initвызывается в то время, когда модуль уже находится в инициализированном состоянии, повторная инициализация внутренних переменных не выполняется ([SWS_IdsM_00204]). - Вместо этого модуль при включенном
IdsMDevErrorDetectчерезDet_ReportErrorсообщает об ошибке разработкиIDSM_E_ALREADY_INITIALIZEDс числовым значением0x0E([SWS_IdsM_00204], [SWS_IdsM_02003]). - Функция не имеет возвращаемого значения и определена как нереентерабельная ([SWS_IdsM_91001]). Поэтому в системе не допускается ее вызов параллельно или из прерывающих контекстов многократно одновременно.
Это указание сгенерировано ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция IdsM_GetVersionInfo [SWS_IdsM_91004] 📄 PDF
void IdsM_GetVersionInfo (const Std_VersionInfoType* versionInfo);
Returns version information, vendor ID and AUTOSAR module ID of the component.
функция IdsM_MainFunction [SWS_IdsM_91000] 📄 PDF
void IdsM_MainFunction (void);
This function is called periodically. It processes security events asynchronously which are queued during API function calls.
Использование и контекст вызова
Функция IdsM_MainFunction вызывается периодически и доступна через заголовочный файл IdsM.h [SWS_IdsM_91000]. Она имеет сигнатуру void IdsM_MainFunction(void), не принимает параметров и не возвращает значения [SWS_IdsM_91000]. Сам вызов функции является синхронным, однако служит для асинхронной обработки событий безопасности (Security Events, SEv), которые ранее были помещены в очереди во время синхронных вызовов API [SWS_IdsM_91000]. Периодический запуск обычно должен выполняться планировщиком BSW или циклической задачей операционной системы. Вопрос Q-86e2e870c3496bad (открытый)
Параллелизм и ограничения
Согласно спецификации, IdsM_MainFunction классифицируется как нереэнтерабельная (Non Reentrant) [SWS_IdsM_91000]. Поэтому вызывающее системное окружение должно обеспечивать, чтобы в каждый момент времени функция выполнялась только в одном экземпляре и не происходило перекрывающихся вызовов.
Взаимодействие при обработке событий
Основная задача в рамках циклической обработки включает следующие аспекты:
- Event Buffer: после приема SEv IdsM сохраняет его в Event Buffer; эти буферы асинхронно управляются и фильтруются в рамках
IdsM_MainFunction[SWS_IdsM_00702]. - Context Data Buffer: если SEv принимается с контекстными данными, IdsM использует подходящие буферы из Context Data Buffer Pool; эти буферы также асинхронно обрабатываются и фильтруются в
IdsM_MainFunction[SWS_IdsM_00705]. - Квалификация: SEv, сохраненные в Event Buffers, обрабатываются асинхронно, чтобы идентифицировать их как квалифицированные события безопасности (QSEv) [SWS_IdsM_00901].
Данный текст был сгенерирован ИИ на основе спецификации R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция IdsM_CopyTxDataManager [SWS_IdsM_91010] 📄 PDF
BufReq_ReturnType IdsM_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);
This function is called to acquire the transmit data of an I-PDU segment (N-PDU). Each call to this function provides the next part of the I-PDU data unless retry->TpDataState is TP_ DATARETRY. In this case the function restarts to copy the data beginning at the offset from the current position indicated by retry->TxTpDataCnt. The size of the remaining data is written to the position indicated by availableDataPtr.
Callback-функция вызывается синхронно и реэнтерабельно для запроса данных передачи для сегментов I-PDU (N-PDU) [SWS_IdsM_91010]. Она доступна через заголовочный файл IdsM_Cbk.h и обслуживает Service ID 0x43 [SWS_IdsM_91010].
Через id идентифицируется передаваемая I-PDU [SWS_IdsM_91010]. Параметр info передает целевой буфер (SduDataPtr), а также запрошенную байтовую длину (SduLength); значение 0 для SduLength (где SduDataPtr может быть NULL_PTR) служит для изменений состояния в параметре retry или для запроса оставшихся данных [SWS_IdsM_91010]. Через availableDataPtr функция возвращает объем данных, остающийся в Tx-буфере, что позволяет транспортным протоколам с динамической полезной длиной (например, FrIsoTp) определять размер последующих Consecutive Frames [SWS_IdsM_91010].
Если retry представляет собой NULL_PTR, скопированные данные могут быть освобождены из буфера непосредственно после операции копирования [SWS_IdsM_91010]. В противном случае RetryInfoType управляет обработкой ошибок: при TP_CONFPENDING ранее скопированные данные остаются в TP-буфере, тогда как TP_DATACONF подтверждает и освобождает все данные, скопированные до этого вызова [SWS_IdsM_91010]. Если TpDataState установлено в TP_DATARETRY, функция снова копирует ранее переданные данные, начиная со смещения в байтах, заданного TxTpDataCnt [SWS_IdsM_91010].
Функция возвращает BUFREQ_OK при успешном полном копировании [SWS_IdsM_91010]. Если доступно недостаточно данных передачи, данные не копируются и возвращается BUFREQ_E_BUSY, после чего нижележащий модуль может повторить вызов [SWS_IdsM_91010]. Если запрос завершается сбоем, происходит возврат BUFREQ_E_NOT_OK без принятия данных [SWS_IdsM_91010].
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция IdsM_SetSecurityEvent [SWS_IdsM_91002] 📄 PDF
void IdsM_SetSecurityEvent (IdsM_SecurityEventIdType securityEventId);
This API is the application interface to report security events to the IdsM.
Функция IdsM_SetSecurityEvent служит интерфейсом для приложений, позволяющим сообщать о событиях безопасности модулю IdsM (Intrusion Detection System Manager) [SWS_IdsM_91002].
Использование и контекст вызова
Вызов выполняется синхронно через заголовочный файл IdsM.h с идентификатором службы 0x03 [SWS_IdsM_91002]. В качестве единственного передаваемого параметра передается идентификатор события безопасности:
securityEventId(IN,IdsM_SecurityEventIdType): уникальный идентификатор сообщаемого события безопасности [SWS_IdsM_91002].
Функция не имеет возвращаемого значения (void) [SWS_IdsM_91002].
Обработка ошибок
Если обнаружение ошибок разработки (IdsMDevErrorDetect) включено, модуль проверяет параметр securityEventId по отношению к сконфигурированным событиям безопасности [SWS_IdsM_02101]. Если передан неизвестный ID события, который не был сконфигурирован в IdsMEvent, IdsM сообщает об ошибке разработки IDSM_E_PARAM_INVALID [SWS_IdsM_02101].
Параллелизм и ограничения
Функция специфицирована как нереентерабельная (Non Reentrant) [SWS_IdsM_91002]. Поэтому параллельные или прерывающие вызовы из различных контекстов должны синхронизироваться или предотвращаться вызывающей стороной.
Это указание по использованию основано на спецификациях платформы AUTOSAR Classic в релизе R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция IdsM_SetSecurityEventWithContextData [SWS_IdsM_91003] 📄 PDF
void IdsM_SetSecurityEventWithContextData (IdsM_SecurityEventIdType securityEventId, const uint8* contextData, uint16 contextDataSize);
This API is the application interface to report security events with context data to the IdsM.
Функция IdsM_SetSecurityEventWithContextData служит интерфейсом приложения для синхронного сообщения о событиях безопасности вместе с опциональными контекстными данными в Intrusion Detection System Manager ([SWS_IdsM_91003]). Она не имеет возвращаемого значения.
Параметры и использование
securityEventId: уникальный идентификатор сообщаемого события безопасности ([SWS_IdsM_91003]).contextData: указатель на опциональные контекстные данные; если контекстные данные недоступны, необходимо передатьNULL_PTR([SWS_IdsM_91003]).contextDataSize: размер предоставленных контекстных данных в байтах ([SWS_IdsM_91003]).
Обработка ошибок
При активном обнаружении ошибок разработки (IdsMDevErrorDetect) модуль IdsM выполняет следующие проверки:
- Если переданный
securityEventIdне относится к событиям безопасности, сконфигурированным вIdsMEvent, сообщается об ошибке разработкиIDSM_E_PARAM_INVALID([SWS_IdsM_02102]). - Если
contextDataSizeпревышает максимально сконфигурированный размер буфера для контекстных данных (определяемый наибольшим параметризованным значениемIdsMContextDataBufferSize), сообщается об ошибке разработкиIDSM_E_PARAM_LENGTH([SWS_IdsM_02107]).
Параллелизм и интеграция
Интерфейс специфицирован как нереэнтерабельный (Non Reentrant) ([SWS_IdsM_91003]). Поэтому вызывающие стороны должны гарантировать, что конкурирующие вызовы исключены или соответствующим образом синхронизированы. Объявление доступно через заголовочный файл IdsM.h ([SWS_IdsM_91003]).
Этот текст был сгенерирован системой ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция IdsM_SetSecurityEventWithCount [SWS_IdsM_91018] 📄 PDF
void IdsM_SetSecurityEventWithCount (IdsM_SecurityEventIdType securityEventId, uint16 count);
This API is the application interface for Smart Sensors to report security events with a count value to the IdsM.
Синхронная функция IdsM_SetSecurityEventWithCount (Service-ID 0x05) представляет собой прикладной интерфейс для Smart Sensors для передачи событий безопасности (Security Events, SEvs) вместе со значением счетчика в IdsM [SWS_IdsM_91018], [SWS_IdsM_00401]. Благодаря этому IdsM может принимать события со счетчиком, предварительно вычисленным датчиком [SWS_IdsM_00401]. Объявление функции предоставляется через заголовочный файл IdsM.h [SWS_IdsM_91018].
При вызове функция ожидает два входных параметра:
securityEventId: идентификатор события безопасности типаIdsM_SecurityEventIdType[SWS_IdsM_91018].count: значение счетчика типаuint16, поступающее от датчика и служащее начальным значением для события [SWS_IdsM_91018], [SWS_IdsM_00401].
Функция не возвращает значения и не определяет выходных параметров [SWS_IdsM_91018]. В отношении параллелизма и контекста вызова функция объявлена как нереентерабельная (Non Reentrant) [SWS_IdsM_91018]; поэтому параллельные вызовы должны быть исключены на программном уровне.
Для обработки ошибок определено, что при активированном обнаружении ошибок разработки (IdsMDevErrorDetect) IdsM проверяет параметры securityEventId и count [SWS_IdsM_02103]. Если передан неизвестный Event-ID или count имеет значение 0, сообщается об ошибке разработки IDSM_E_PARAM_INVALID [SWS_IdsM_02103].
Это указание по использованию было автоматически сгенерировано ИИ на основе спецификации AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I1)
функция IdsM_SetSecurityEventWithCountContextData [SWS_IdsM_91019] 📄 PDF
void IdsM_SetSecurityEventWithCountContextData (IdsM_SecurityEventIdType securityEventId, uint16 count, const uint8* contextData, uint16 contextDataSize);
This API is the application interface for Smart Sensors to report security events with a count value and context data to the IdsM.
Функция IdsM_SetSecurityEventWithCountContextData служит интерфейсом приложения для смарт-сенсоров для синхронного сообщения о событиях безопасности со значением счетчика и опциональными контекстными данными в [SWS_IdsM_91019].
Использование и параметры
Вызов выполняется синхронно и специфицирован как нереэнтерабельный (Non Reentrant) [SWS_IdsM_91019]:
securityEventId: уникальный идентификатор события безопасности [SWS_IdsM_91019].count: значение счетчика, используемое в качестве начального значения для события безопасности [SWS_IdsM_91019].contextData: указатель на байтовый массив с предоставляемыми контекстными данными [SWS_IdsM_00502]. Если контекстные данные отсутствуют, необходимо передатьNULL_PTR[SWS_IdsM_91019].contextDataSize: размер переданных контекстных данных в байтах [SWS_IdsM_91019]. Функция поддерживает максимальную длину до 1500 байт [SWS_IdsM_00501].
Обработка ошибок
При активном обнаружении ошибок разработки (IdsMDevErrorDetect) модуль проверяет переданные аргументы на валидность:
- Ошибка разработки
IDSM_E_PARAM_INVALIDсообщается в том случае, если передан неизвестныйsecurityEventIdилиcountимеет значение 0 [SWS_IdsM_02104]. - Если
contextDataSizeпревышает максимально сконфигурированный размер буфера (определяемый наибольшим сконфигурированнымIdsMContextDataBufferSize), IdsM сообщает об ошибке разработкиIDSM_E_PARAM_LENGTH[SWS_IdsM_02108].
Функция не возвращает значения [SWS_IdsM_91019]; реакция на ошибку в случае сбоя, вероятно, в первую очередь основывается на сообщении через DET. Вопрос Q-135f4b865790f34d (открытый)
Этот текст был сгенерирован ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция IdsM_SetSecurityEventWithTimestampCount [SWS_IdsM_91020] 📄 PDF
void IdsM_SetSecurityEventWithTimestampCount (IdsM_SecurityEventIdType securityEventId, IdsM_TimestampType timestamp, uint16 count);
This API is the application interface for Smart Sensors to report security events with a timestamp and a count value to the IdsM.
Синхронный интерфейс IdsM_SetSecurityEventWithTimestampCount служит Smart Sensors для сообщения о событиях безопасности с меткой времени и значением счетчика в IdsM [SWS_IdsM_91020]. Функция не имеет возвращаемого значения и доступна через заголовочный файл IdsM.h [SWS_IdsM_91020].
Обрабатываются следующие входные параметры:
securityEventId: специфический идентификатор сообщаемого события безопасности [SWS_IdsM_91020].timestamp: метка времени для временной привязки события [SWS_IdsM_91020]. Если функция метки времени активна и метка времени передана, IdsM использует ее для сохранения или передачи квалифицированного Security Event (QSEv) [SWS_IdsM_01108]. Если же при активной функции событие сообщается без метки времени, IdsM сбрасывает бит опции для метки времени в заголовке протокола в 0 перед передачей или сохранением [SWS_IdsM_01112].count: значение счетчика в качестве начального значения для события безопасности [SWS_IdsM_91020]. Если предварительно рассчитанный счетчик отсутствует, функция может быть вызвана со значением 1 [SWS_IdsM_00405].
При активном обнаружении ошибок разработки (IdsMDevErrorDetect) IdsM валидирует аргументы securityEventId и count. Если передан неизвестный Event-ID или count имеет значение 0, модуль сообщает об ошибке разработки IDSM_E_PARAM_INVALID [SWS_IdsM_02105].
В отношении параллелизма функция специфицирована как нереентерабельная (Non Reentrant) [SWS_IdsM_91020].
Этот текст был сгенерирован автоматически на основе спецификации AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I2)
функция IdsM_SetSecurityEventWithTimestampCountContextDataManager [SWS_IdsM_91021] 📄 PDF
void IdsM_SetSecurityEventWithTimestampCountContextData (IdsM_SecurityEventIdType securityEventId, IdsM_TimestampType timestamp, uint16 count, const uint8* contextData, uint16 contextDataSize);
This API is the application interface for Smart Sensors to report security events with a timestamp, a count value and context data to the IdsM.
Функция IdsM_SetSecurityEventWithTimestampCountContextData с Service-ID 0x08 служит стандартизированным прикладным интерфейсом для Smart Sensors для сообщения о событиях безопасности вместе с меткой времени, начальным значением счетчика, а также опциональными контекстными данными в Intrusion Detection System Manager (IdsM) [SWS_IdsM_91021]. Объявление этого интерфейса предоставляется через заголовочный файл IdsM.h [SWS_IdsM_91021].
Вызов выполняется синхронно и использует исключительно входные параметры, в то время как входные/выходные и выходные параметры отсутствуют [SWS_IdsM_91021]. При вызове необходимо передать следующие параметры [SWS_IdsM_91021]:
securityEventId: идентификатор конкретного события безопасности, которое должно быть передано в IdsM [SWS_IdsM_91021].timestamp: значение метки времени, выступающее в качестве временной привязки возникшего события безопасности [SWS_IdsM_91021].count: значение счетчика, используемое IdsM в качестве начального значения для соответствующего события безопасности [SWS_IdsM_91021].contextData: указатель на опциональные контекстные данные к событию; если данных нет, должен передаватьсяNULL_PTR[SWS_IdsM_91021].contextDataSize: числовое указание размера переданных контекстных данных [SWS_IdsM_91021].
В отношении поведения выполнения функция классифицирована как нереентерабельная (Non Reentrant) и не имеет возвращаемого значения (void) [SWS_IdsM_91021]. Вызывающие Smart Sensors поэтому должны гарантировать отсутствие одновременных или перекрывающихся вызовов интерфейса [SWS_IdsM_91021].
Этот текст был сгенерирован ИИ и служит в качестве ориентировочного руководства.
Руководство разработчика реализации в подготовке (сложность I1)
функция IdsM_BswM_StateChanged [SWS_IdsM_91005] 📄 PDF
void IdsM_BswM_StateChanged (IdsM_Filters_BlockStateType state);
This callback function is invoked by the BswM to indicate ECU state changes.
Функция обратного вызова IdsM_BswM_StateChanged ([SWS_IdsM_91005]) вызывается модулем BswM для сигнализации Intrusion Detection System Manager (IdsM) об изменениях текущего состояния ЭБУ ([SWS_IdsM_91005]). Она объявлена в заголовочном файле IdsM_Cbk.h и имеет идентификатор службы 0x0F ([SWS_IdsM_91005]).
Интерфейс имеет сигнатуру void IdsM_BswM_StateChanged (IdsM_Filters_BlockStateType state) ([SWS_IdsM_91005]). В качестве единственного передаваемого значения служит входной параметр state типа IdsM_Filters_BlockStateType, который отображает текущее состояние ECU ([SWS_IdsM_91005]). Не предусмотрены ни входные/выходные, ни выходные параметры, и функция не возвращает значения ([SWS_IdsM_91005]). Вызов выполняется синхронно и классифицирован как реентерабельный ([SWS_IdsM_91005]).
В функциональном взаимодействии эта служба уведомления служит для постоянного информирования IdsM модулем BswM о текущем состоянии ([SWS_IdsM_01022]). Полученная информация о состоянии сохраняется в IdsM и оценивается при последующей асинхронной обработке фильтров состояний блокировки (block state filter) в рамках главной функции (main function) ([SWS_IdsM_01022]). Для этого вызова в объеме спецификации не определены специфические коды ошибок, возвращаемые значения или сообщения в модуль управления ошибками разработки (DET) либо менеджер диагностических событий (DEM).
Это указание по использованию было сгенерировано автоматически и основано на требованиях спецификации AUTOSAR Classic R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция IdsM_TpTxConfirmation [SWS_IdsM_91011] 📄 PDF
void IdsM_TpTxConfirmation (PduIdType id, Std_ReturnType result);
This function is called after the I-PDU has been transmitted on its network, the result indicates whether the transmission was successful or not.
Функция обратного вызова IdsM_TpTxConfirmation объявлена как синхронная и реентерабельная служба в заголовочном файле IdsM_Cbk.h [SWS_IdsM_91011]. Согласно [SWS_IdsM_01502], модуль IdsM через эту службу принимает подтверждение от модуля PduR о передаче сегментированной PDU. Вызов происходит, как только соответствующая I-PDU передана по базовой сети [SWS_IdsM_91011].
Интерфейс имеет идентификатор службы 0x48 и не возвращает значения (void) [SWS_IdsM_91011]. При вызове передаются два входных параметра:
id(типPduIdType): уникальная идентификация переданной I-PDU [SWS_IdsM_91011].result(типStd_ReturnType): передает результат передачи I-PDU и указывает, была ли операция отправки успешной или завершилась сбоем [SWS_IdsM_91011].
Конкретные коды ошибок, а также сообщения DET или DEM для этого вызова в спецификации не определены. Благодаря специфицированной реентерабельности функция может параллельно вызываться вызывающим уровнем для различных I-PDU [SWS_IdsM_91011]. Интерпретация: модуль IdsM, вероятно, анализирует параметр статуса result, чтобы обновить внутренний статус передачи сегментированной PDU и освободить занятые буферы отправки после завершения. Вопрос Q-9179efcbf744346d (открытый)
Этот текст был создан ИИ и основан исключительно на спецификациях AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция IdsM_TxConfirmation [SWS_IdsM_91009] 📄 PDF
void IdsM_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);
The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.
Использование
Функция обратного вызова IdsM_TxConfirmation ([SWS_IdsM_91009]) вызывается нижележащим модулем интерфейса связи для подтверждения успешной отправки PDU или сбоя передачи. Она определена как синхронная, объявлена в IdsM_Cbk.h и не имеет возвращаемого значения. Она принимает следующие параметры:
TxPduId: идентификатор переданного PDU ([SWS_IdsM_91009]).result: результат передачи со значениемE_OKпри успешной отправке илиE_NOT_OKпри возникновении ошибки ([SWS_IdsM_91009]).
Параллелизм и ограничения
Функция реентерабельна для различных идентификаторов PDU, однако не является реентерабельной для одного и того же TxPduId ([SWS_IdsM_91009]).
Взаимодействие и требования к последовательности
Для последовательности передачи действует строгое условие очередности: согласно [SWS_IdsM_01499] модуль IdsM имеет право повторно вызывать функцию отправки PduR_IdsMTransmit только после того, как предварительно была вызвана IdsM_TxConfirmation или IdsM_TpTxConfirmation. Интерпретация: поступление подтверждения, по всей видимости, служит в IdsM триггером для завершения передачи и разрешения последующих вызовов. Вопрос Q-dd4013520e85370c (открытый)
Обработка ошибок
Сбой передачи PDU сообщается непосредственно через параметр result = E_NOT_OK ([SWS_IdsM_91009]). Специфические коды ошибок DET или DEM в спецификации интерфейса не указаны.
Этот текст был автоматически сгенерирован на основе спецификации AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
функция IdsM_Dcm_GetReportingMode_RequestResults [SWS_IdsM_91007] 📄 PDF
Std_ReturnType IdsM_Dcm_GetReportingMode_RequestResults (Dcm_OpStatusType OpStatus, uint8* Out_ReportingMode, Dcm_NegativeResponseCodeType* ErrorCode);
This function is a request from DCM to the IdsM to read the routine results triggered by function IdsM_Dcm_GetReportingMode_Start().
Использование и контекст вызова
Синхронная функция IdsM_Dcm_GetReportingMode_RequestResults (идентификатор службы 0x0D, заголовочный файл IdsM_Cbk.h) вызывается модулем Diagnostic Communication Manager (DCM) для запроса результатов рутины запроса, ранее инициированного через IdsM_Dcm_GetReportingMode_Start() [SWS_IdsM_91007]. Через передаваемый параметр OpStatus передается текущий статус операции [SWS_IdsM_91007]. При успешном завершении функция возвращает E_OK и через выходной указатель Out_ReportingMode выдает определенный режим отчетности запрошенного события безопасности [SWS_IdsM_91007]. Если обработка еще не завершена, она сигнализирует об этом через возвращаемое значение DCM_E_PENDING [SWS_IdsM_91007].
Обработка ошибок
В случае сбоя запроса функция возвращает E_NOT_OK [SWS_IdsM_91007]. В этом случае через параметр ErrorCode должен быть установлен конкретный Negative Response Code (Dcm_NegativeResponseCodeType); если он остается неустановленным, DCM отправляет код ошибки 0x22 [SWS_IdsM_91007]. Специфические события DET или DEM для этой службы не указаны [SWS_IdsM_91007].
Параллелизм и взаимодействие
Функция специфицирована как реентерабельная [SWS_IdsM_91007]. В отношении последовательности вызовов она обязательно предполагает, что рутина была предварительно запущена с помощью IdsM_Dcm_GetReportingMode_Start() [SWS_IdsM_91007]. Интерпретация: параметр OpStatus, вероятно, используется DCM при повторных запросах после возврата DCM_E_PENDING для координации хода диагностической операции. Вопрос Q-c268fab018a1f5b3 (открытый)
Это указание по использованию было сгенерировано ИИ на основе спецификации AUTOSAR R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция IdsM_Dcm_GetReportingMode_Start [SWS_IdsM_91006] 📄 PDF
Std_ReturnType IdsM_Dcm_GetReportingMode_Start (uint16 In_SecurityEventId, uint8 In_SensorInstanceId, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode);
This function is a request from DCM to the IdsM to start the routine execution to request the current reporting mode of a specific Security Event ID.
Функция IdsM_Dcm_GetReportingMode_Start вызывается модулем диагностики (DCM) для запуска в Intrusion Detection System Manager (IdsM) выполнения процедуры опроса текущего режима передачи отчетов о конкретном событии безопасности (SEv) [SWS_IdsM_91006], [SWS_IdsM_02001]. Интерфейс объявлен в заголовочном файле IdsM_Cbk.h, имеет идентификатор службы 0x0C и специфицирован как синхронный, а также реентерабельный [SWS_IdsM_91006].
При вызове DCM передает внешний ID события безопасности (In_SecurityEventId), ID экземпляра датчика (In_SensorInstanceId) и статус операции (OpStatus) [SWS_IdsM_91006]. В качестве возвращаемого значения функция возвращает Std_ReturnType:
E_OK: операция успешно завершена [SWS_IdsM_91006].DCM_E_PENDING: операция еще не завершена [SWS_IdsM_91006]. Это, по-видимому, означает, что внутренняя обработка процедуры продолжается многоциклично или асинхронно до тех пор, пока данные не станут доступны. Вопрос Q-395a30fc3ed42497 (открытый)E_NOT_OK: сбой операции [SWS_IdsM_91006].
В случае ошибки (E_NOT_OK) IdsM обязан предоставить конкретный Negative Response Code (NRC) через выходной параметр ErrorCode; если этого не происходит, DCM по умолчанию отправляет NRC 0x22 (Conditions Not Correct) [SWS_IdsM_91006].
Функция лишь инициирует процедуру; непосредственное считывание полученных результатов выполняется далее через функцию IdsM_Dcm_GetReportingMode_RequestResults [SWS_IdsM_91007].
Это указание по использованию было сгенерировано автоматически. Все сведения основаны исключительно на спецификации AUTOSAR Classic R20-11.
Руководство разработчика реализации в подготовке (сложность I2)
функция IdsM_Dcm_SetReportingMode_Start [SWS_IdsM_91008] 📄 PDF
Std_ReturnType IdsM_Dcm_SetReportingMode_Start (uint16 In_SecurityEventId, uint8 In_SensorInstanceId, uint8 In_ReportingMode, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode);
This function is a request from DCM to the IdsM to start the routine execution to set the reporting mode of a specific Security Event ID.
Синхронная и реентерабельная функция IdsM_Dcm_SetReportingMode_Start вызывается диагностическим модулем (DCM) для запуска рутины изменения режима отчетности (IdsMReportingModeFilter) для определенного события безопасности в Intrusion Detection System Manager [SWS_IdsM_91008], [SWS_IdsM_01901]. Определение предоставляется через заголовочный файл IdsM_Cbk.h [SWS_IdsM_91008].
При вызове передаются внешний ID события (In_SecurityEventId), ID экземпляра сенсора (In_SensorInstanceId), вновь устанавливаемый режим отчетности (In_ReportingMode), а также статус операции (OpStatus) [SWS_IdsM_91008], [SWS_IdsM_01901]. Функция возвращает следующие значения:
E_OK: выполнение операции успешно завершено [SWS_IdsM_91008].DCM_E_PENDING: обработка еще не завершена и продолжается асинхронно [SWS_IdsM_91008].E_NOT_OK: операция завершилась сбоем; в этом случае через выходной параметрErrorCodeдолжен быть установлен конкретный Negative Response Code (NRC), так как в противном случае DCM передает NRC0x22[SWS_IdsM_91008].
Если валидация идентификатора события завершается сбоем из-за использования недействительного Security Event Definition ID, функция возвращает E_NOT_OK и в обязательном порядке устанавливает код ошибки ErrorCode в DCM_E_REQUESTOUTOFRANGE [SWS_IdsM_01903].
Это указание по использованию было сгенерировано автоматически и основано на спецификациях AUTOSAR.
Руководство разработчика реализации в подготовке (сложность I2)
тип IdsM_ConfigType [SWS_IdsM_91012] 📄 PDF
Configuration data structure of IdsM module.
тип IdsM_Filters_BlockStateType [SWS_IdsM_91017] 📄 PDF
Data type used for "Block State" filter values (bit masks)
Тип данных IdsM_Filters_BlockStateType служит для определения битовых масок для так называемых фильтров «Block State» модуля Intrusion Detection System Manager (IdsM) согласно [SWS_IdsM_91017]. Этот тип является производным от uint16, охватывает целочисленный диапазон значений от 0 до 65535 и предоставляется программным модулям через заголовочный файл IdsM_Filters_Types.h ([SWS_IdsM_91017]).
Основное применение происходит во взаимодействии с Basic Software Mode Manager (BswM). При изменениях состояния системы или электронного блока управления BswM вызывает функцию обратного вызова IdsM_BswM_StateChanged и передает текущее состояние электронного блока управления через параметр state этого типа ([SWS_IdsM_91005]). Этот интерфейс обратного вызова объявлен в IdsM_Cbk.h, не возвращает значений и специфицирован как синхронный, а также реентерабельный ([SWS_IdsM_91005]).
Интерпретация: поскольку данный тип спроектирован как битовая маска для фильтров, IdsM, вероятно, сопоставляет переданное значение состояния ECU с сконфигурированными состояниями фильтра, чтобы фильтровать регистрацию или блокировку событий безопасности в зависимости от состояния электронного блока управления. Вопрос Q-00b355cc5ec6383f (открытый) Самостоятельная обработка ошибок со специфическими кодами ошибок, сообщениями DET или DEM для этого типа данных отсутствует.
Это примечание сгенерировано ИИ и опирается исключительно на данные спецификации из AUTOSAR CP R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
тип IdsM_Filters_ReportingModeType [SWS_IdsM_91013] 📄 PDF
Reporting modes used by the reporting mode filter
Тип данных IdsM_Filters_ReportingModeType основан на базовом типе uint8 и предоставляется через заголовочный файл IdsM_Types.h для программных компонентов [SWS_IdsM_91013]. Он описывает стандартизированные режимы отчетности, применяемые в фильтре режимов отчетности в Intrusion Detection System Manager (IdsM) для целевой обработки и пересылки событий безопасности [SWS_IdsM_91013].
С помощью определенных значений перечисления точно контролируется, сообщается ли событие и какой уровень детализации при этом используется [SWS_IdsM_91013]:
IDSM_REPORTING_MODE_OFF(0x00): событие подавляется и не передается вышестоящим инстанциям [SWS_IdsM_91013].IDSM_REPORTING_MODE_BRIEF(0x01): событие передается без дополнительных контекстных данных в компактной форме [SWS_IdsM_91013].IDSM_REPORTING_MODE_DETAILED(0x02): событие передается подробно с включением всех релевантных контекстных данных [SWS_IdsM_91013].IDSM_REPORTING_MODE_BRIEF_BYPASSING_FILTERS(0x03): событие обходит последующие ступени фильтрации и передается нефильтрованным без контекстных данных [SWS_IdsM_91013].IDSM_REPORTING_MODE_DETAILED_BYPASSING_FILTERS(0x04): событие обходит последующие ступени фильтрации и передается нефильтрованным, включая все контекстные данные [SWS_IdsM_91013].IDSM_REPORTING_MODE_INVALID(0xFF): обозначает недействительный режим отчета в пределах диапазона значений [SWS_IdsM_91013].
Таким образом, эти значения сочетают в себе два функциональных измерения управления: степень детализации через контекстные данные и целенаправленный обход регулярных механизмов фильтрации путем байпасирования (bypassing) [SWS_IdsM_91013]. Это позволяет IdsM дифференцированно обрабатывать инциденты безопасности в зависимости от критичности и конфигурации фильтров [SWS_IdsM_91013].
Данный текст был сгенерирован ИИ на основе спецификации R20-11.
Руководство разработчика реализации в подготовке (сложность I1)
тип IdsM_TimestampType [SWS_IdsM_91014] 📄 PDF
Data type for IdsM timestamps
тип IdsM_SecurityEventIdType [SWS_IdsM_91031] 📄 PDF
Data type used for local IdsM Security Event IDs
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_IdsM- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_IdsM@rel:R20-11#88af7ef6- Content hash
88af7ef6- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_IntrusionDetectionSystemManager.pdf#nameddest=SWS_IdsM_91001
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал