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
function 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.
Die synchrone und nicht-reentrante Schnittstelle IdsM_Init dient der grundlegenden Initialisierung des Moduls IdsM gemäß [SWS_IdsM_91001]. Beim Aufruf initialisiert der Service sämtliche internen Variablen und überführt das IdsM in den Zustand initialisiert ([SWS_IdsM_00202]). Über den Eingabeparameter configPtr nimmt die Funktion einen Zeiger auf die modulspezifische Konfigurationsstruktur entgegen ([SWS_IdsM_91001]).
Die Ausführung von IdsM_Init stellt eine zwingende funktionale Vorbedingung für den Betrieb des Moduls dar. Wird eine API des IdsM abseits von IdsM_Init oder IdsM_GetVersionInfo im noch uninitialisierten Zustand aufgerufen, meldet das Modul bei aktivierter Entwicklungserkennung (IdsMDevErrorDetect) den Fehler IDSM_E_PARAM_UNINIT via Det_ReportError ([SWS_IdsM_00203], siehe auch den Fehlercode 0x0D unter [SWS_IdsM_02003]).
Für die Fehlerbehandlung und den Aufrufkontext gelten spezifische Verhaltensregeln:
- Wird
IdsM_Initaufgerufen, während sich das Modul bereits im Zustand initialisiert befindet, unterbleibt eine Reinitialisierung der internen Variablen ([SWS_IdsM_00204]). - Stattdessen meldet das Modul bei aktiviertem
IdsMDevErrorDetectüberDet_ReportErrorden EntwicklungsfehlerIDSM_E_ALREADY_INITIALIZEDmit dem numerischen Wert0x0E([SWS_IdsM_00204], [SWS_IdsM_02003]). - Die Funktion besitzt keinen Rückgabewert und ist als nicht reentrant definiert ([SWS_IdsM_91001]). Sie darf daher im System nicht nebenläufig oder durch unterbrechende Kontexte mehrfach gleichzeitig aufgerufen werden.
Dieser Hinweis wurde von einer KI auf Basis der AUTOSAR-Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function 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.
function 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.
Verwendung und Aufrufkontext
Die Funktion IdsM_MainFunction wird periodisch aufgerufen und ist über die Header-Datei IdsM.h verfügbar [SWS_IdsM_91000]. Sie besitzt die Signatur void IdsM_MainFunction(void), nimmt keine Parameter entgegen und besitzt keinen Rückgabewert [SWS_IdsM_91000]. Der Aufruf der Funktion selbst ist synchron, dient jedoch der asynchronen Verarbeitung von Sicherheitsereignissen (Security Events, SEv), die zuvor während synchroner API-Aufrufe in Warteschlangen eingereiht wurden [SWS_IdsM_91000]. Die periodische Triggerung dürfte typischerweise durch den BSW-Scheduler oder eine zyklische Betriebssystem-Task erfolgen. Frage Q-86e2e870c3496bad (offen)
Nebenläufigkeit und Einschränkungen
Gemäß Spezifikation ist IdsM_MainFunction als nicht reentrant (Non Reentrant) eingestuft [SWS_IdsM_91000]. Die aufrufende Systemumgebung muss daher gewährleisten, dass die Funktion zu jedem Zeitpunkt nur in einer einzelnen Instanz ausgeführt wird und keine überlappenden Aufrufe stattfinden.
Zusammenspiel bei der Ereignisverarbeitung
Die Hauptaufgabe im Rahmen der zyklischen Abarbeitung umfasst folgende Aspekte:
- Event-Puffer: Nach dem Empfang eines SEv speichert das IdsM dieses in einem Event Buffer; diese Puffer werden im Rahmen von
IdsM_MainFunctionasynchron verwaltet und gefiltert [SWS_IdsM_00702]. - Kontextdaten-Puffer: Wird ein SEv mit Kontextdaten empfangen, nutzt das IdsM passende Puffer aus einem Context Data Buffer Pool; auch diese Puffer werden in
IdsM_MainFunctionasynchron gehandhabt und gefiltert [SWS_IdsM_00705]. - Qualifizierung: Die in den Event Buffers gespeicherten SEv werden asynchron verarbeitet, um sie als qualifizierte Sicherheitsereignisse (QSEv) zu identifizieren [SWS_IdsM_00901].
Dieser Text wurde von einer KI auf Basis der Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function 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.
Die Callback-Funktion wird synchron und reentrant aufgerufen, um Sendedaten für Segmente einer I-PDU (N-PDU) abzurufen [SWS_IdsM_91010]. Sie steht über den Header IdsM_Cbk.h bereit und bedient die Service-ID 0x43 [SWS_IdsM_91010].
Über id wird die zu übertragende I-PDU identifiziert [SWS_IdsM_91010]. Der Parameter info übergibt den Zielpuffer (SduDataPtr) sowie die angeforderte Bytelänge (SduLength); ein Wert von 0 für SduLength (wobei SduDataPtr ein NULL_PTR sein darf) dient Zustandsänderungen im Parameter retry oder der Abfrage verbleibender Daten [SWS_IdsM_91010]. Über availableDataPtr meldet die Funktion die im Tx-Puffer verbleibende Datenmenge zurück, was Transportprotokollen mit dynamischen Nutzlängen (z. B. FrIsoTp) die Größenbestimmung nachfolgender Consecutive Frames erlaubt [SWS_IdsM_91010].
Ist retry ein NULL_PTR, dürfen kopierte Daten unmittelbar nach dem Kopiervorgang aus dem Puffer freigegeben werden [SWS_IdsM_91010]. Andernfalls steuert RetryInfoType die Fehlerbehandlung: Bei TP_CONFPENDING verbleiben zuvor kopierte Daten im TP-Puffer, während TP_DATACONF alle vor diesem Aufruf kopierten Daten bestätigt und freigibt [SWS_IdsM_91010]. Steht TpDataState auf TP_DATARETRY, kopiert die Funktion zuvor übertragene Daten erneut ab dem durch TxTpDataCnt angegebenen Byte-Offset [SWS_IdsM_91010].
Die Funktion liefert BUFREQ_OK bei erfolgreicher vollständiger Kopie [SWS_IdsM_91010]. Sind nicht genügend Sendedaten verfügbar, werden keine Daten kopiert und es wird BUFREQ_E_BUSY zurückgegeben, woraufhin das unterlagerte Modul den Aufruf wiederholen kann [SWS_IdsM_91010]. Schlägt die Anfrage fehl, erfolgt die Rückgabe BUFREQ_E_NOT_OK ohne Datenübernahme [SWS_IdsM_91010].
Dieser Text wurde von einer KI auf Basis der AUTOSAR-Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function 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.
Die Funktion IdsM_SetSecurityEvent dient als Schnittstelle für Applikationen, um Sicherheitsereignisse an das Modul IdsM (Intrusion Detection System Manager) zu melden [SWS_IdsM_91002].
Verwendung und Aufrufkontext
Der Aufruf erfolgt synchron über die Header-Datei IdsM.h mit der Service-ID 0x03 [SWS_IdsM_91002]. Als einziger Übergabeparameter wird die Kennung des Sicherheitsereignisses übergeben:
securityEventId(IN,IdsM_SecurityEventIdType): Eindeutige Kennung des gemeldeten Sicherheitsereignisses [SWS_IdsM_91002].
Die Funktion besitzt keinen Rückgabewert (void) [SWS_IdsM_91002].
Fehlerbehandlung
Ist die Erkennung von Entwicklungsfehlern (IdsMDevErrorDetect) aktiviert, prüft das Modul den Parameter securityEventId gegen die konfigurierten Sicherheitsereignisse [SWS_IdsM_02101]. Wird eine unbekannte Ereignis-ID übergeben, die nicht in IdsMEvent konfiguriert wurde, meldet das IdsM den Entwicklungsfehler IDSM_E_PARAM_INVALID [SWS_IdsM_02101].
Nebenläufigkeit und Einschränkungen
Die Funktion ist als nicht reentrant (Non Reentrant) spezifiziert [SWS_IdsM_91002]. Nebenläufige oder unterbrechende Aufrufe aus verschiedenen Kontexten müssen daher durch den Aufrufer synchronisiert bzw. vermieden werden.
Dieser Nutzungshinweis basiert auf den Spezifikationen der AUTOSAR-Classic-Plattform im Release R20-11.
Implementer's Guide folgt (Komplexität I1)
function 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.
Die Funktion IdsM_SetSecurityEventWithContextData dient als Anwendungsschnittstelle zur synchronen Meldung von Sicherheitsereignissen samt optionaler Kontextdaten an den Intrusion Detection System Manager ([SWS_IdsM_91003]). Sie besitzt keinen Rückgabewert.
Parameter und Verwendung
securityEventId: Eindeutige Kennung des gemeldeten Sicherheitsereignisses ([SWS_IdsM_91003]).contextData: Zeiger auf optionale Kontextdaten; stehen keine Kontextdaten zur Verfügung, istNULL_PTRzu übergeben ([SWS_IdsM_91003]).contextDataSize: Größe der bereitgestellten Kontextdaten in Bytes ([SWS_IdsM_91003]).
Fehlerbehandlung
Bei aktivierter Entwicklungserkennung (IdsMDevErrorDetect) führt das IdsM-Modul folgende Prüfungen durch:
- Stammt die übergebene
securityEventIdnicht aus den inIdsMEventkonfigurierten Sicherheitsereignissen, wird der EntwicklungsfehlerIDSM_E_PARAM_INVALIDgemeldet ([SWS_IdsM_02102]). - Übersteigt
contextDataSizedie maximal konfigurierte Puffergröße für Kontextdaten (definiert über den größten parametrierten Wert vonIdsMContextDataBufferSize), wird der EntwicklungsfehlerIDSM_E_PARAM_LENGTHgemeldet ([SWS_IdsM_02107]).
Nebenläufigkeit und Integration
Die Schnittstelle ist als nicht reentrant (Non Reentrant) spezifiziert ([SWS_IdsM_91003]). Aufrufer müssen daher sicherstellen, dass konkurrierende Aufrufe vermieden oder entsprechend synchronisiert werden. Die Deklaration ist über den Header IdsM.h verfügbar ([SWS_IdsM_91003]).
Dieser Text wurde durch ein KI-System basierend auf der AUTOSAR-Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function 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.
Die synchrone Funktion IdsM_SetSecurityEventWithCount (Service-ID 0x05) stellt die Anwendungsschnittstelle für Smart Sensors dar, um Sicherheitsereignisse (Security Events, SEvs) zusammen mit einem Zählwert an das IdsM zu übermitteln [SWS_IdsM_91018], [SWS_IdsM_00401]. Dadurch kann das IdsM Ereignisse mit einem durch den Sensor vorberechneten Zähler empfangen [SWS_IdsM_00401]. Die Funktionsdeklaration wird über die Header-Datei IdsM.h bereitgestellt [SWS_IdsM_91018].
Beim Aufruf erwartet die Funktion zwei Eingabeparameter:
securityEventId: Bezeichner des Sicherheitsereignisses vom TypIdsM_SecurityEventIdType[SWS_IdsM_91018].count: Zählwert vom Typuint16, welcher vom Sensor stammt und als initialer Startwert für das Ereignis fungiert [SWS_IdsM_91018], [SWS_IdsM_00401].
Die Funktion liefert keinen Rückgabewert und definiert keine Ausgangsparameter [SWS_IdsM_91018]. Hinsichtlich Nebenläufigkeit und Aufrufkontext ist die Funktion als nicht reentrant (Non Reentrant) deklariert [SWS_IdsM_91018]; parallele Aufrufe müssen daher softwareseitig vermieden werden.
Für die Fehlerbehandlung ist festgelegt, dass das IdsM bei aktivierter Entwicklungserkennung (IdsMDevErrorDetect) die Parameter securityEventId und count überprüft [SWS_IdsM_02103]. Wird eine unbekannte Event-ID übergeben oder besitzt count den Wert 0, wird der Entwicklungsfehler IDSM_E_PARAM_INVALID gemeldet [SWS_IdsM_02103].
Dieser Nutzungshinweis wurde automatisiert von einer KI auf Basis der AUTOSAR-Spezifikation generiert.
Implementer's Guide folgt (Komplexität I1)
function 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.
Die Funktion IdsM_SetSecurityEventWithCountContextData dient als Anwendungsschnittstelle für Smart-Sensoren zur synchronen Meldung von Sicherheitsereignissen mit Zählwert und optionalen Kontextdaten an den [SWS_IdsM_91019].
Verwendung und Parameter
Der Aufruf erfolgt synchron und ist als nicht reentrant (Non Reentrant) spezifiziert [SWS_IdsM_91019]:
securityEventId: Eindeutige Kennung des Sicherheitsereignisses [SWS_IdsM_91019].count: Zählwert, der als Startwert für das Sicherheitsereignis herangezogen wird [SWS_IdsM_91019].contextData: Zeiger auf ein Byte-Array mit den bereitzustellenden Kontextdaten [SWS_IdsM_00502]. Sind keine Kontextdaten vorhanden, istNULL_PTRzu übergeben [SWS_IdsM_91019].contextDataSize: Größe der übergebenen Kontextdaten in Bytes [SWS_IdsM_91019]. Die Funktion unterstützt eine maximale Länge von bis zu 1500 Bytes [SWS_IdsM_00501].
Fehlerbehandlung
Bei aktivierter Entwicklungserkennung (IdsMDevErrorDetect) überwacht das Modul die übergebenen Argumente auf Gültigkeit:
- Der Entwicklungsfehler
IDSM_E_PARAM_INVALIDwird gemeldet, falls eine unbekanntesecurityEventIdübergeben wird odercountden Wert 0 aufweist [SWS_IdsM_02104]. - Überschreitet
contextDataSizedie maximal konfigurierte Puffergröße (bestimmt durch die größte konfigurierteIdsMContextDataBufferSize), meldet das IdsM den EntwicklungsfehlerIDSM_E_PARAM_LENGTH[SWS_IdsM_02108].
Die Funktion liefert keinen Rückgabewert zurück [SWS_IdsM_91019]; eine Fehlerreaktion dürfte im Fehlerfall primär auf der Meldung über das DET basieren. Frage Q-135f4b865790f34d (offen)
Dieser Text wurde von einer KI auf Basis der AUTOSAR-Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I2)
function 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.
Die synchrone Schnittstelle IdsM_SetSecurityEventWithTimestampCount dient Smart Sensors zum Melden von Sicherheitsereignissen mit Zeitstempel und Zählwert an das IdsM [SWS_IdsM_91020]. Die Funktion besitzt keinen Rückgabewert und ist über die Header-Datei IdsM.h verfügbar [SWS_IdsM_91020].
Folgende Eingabeparameter werden verarbeitet:
securityEventId: Spezifische Kennung des gemeldeten Sicherheitsereignisses [SWS_IdsM_91020].timestamp: Zeitstempel zur zeitlichen Referenzierung des Ereignisses [SWS_IdsM_91020]. Ist das Zeitstempel-Feature aktiv und wird ein Zeitstempel übergeben, nutzt das IdsM diesen für die Speicherung oder Übertragung des qualifizierten Security Events (QSEv) [SWS_IdsM_01108]. Wird das Ereignis bei aktivem Feature hingegen ohne Zeitstempel gemeldet, setzt das IdsM das Optionsbit für den Zeitstempel im Protokoll-Header vor Übertragung oder Speicherung auf 0 [SWS_IdsM_01112].count: Zählwert als Startwert für das Sicherheitsereignis [SWS_IdsM_91020]. Liegt vorab kein berechneter Zähler vor, kann die Funktion mit dem Wert 1 aufgerufen werden [SWS_IdsM_00405].
Bei aktivierter Entwicklungserkennung (IdsMDevErrorDetect) validiert das IdsM die Argumente securityEventId und count. Falls eine unbekannte Event-ID übergeben wird oder count den Wert 0 aufweist, meldet das Modul den Entwicklungsfehler IDSM_E_PARAM_INVALID [SWS_IdsM_02105].
Hinsichtlich der Nebenläufigkeit ist die Funktion als nicht reentrant (Non Reentrant) spezifiziert [SWS_IdsM_91020].
Dieser Text wurde automatisch anhand der AUTOSAR-Spezifikation generiert.
Implementer's Guide folgt (Komplexität I2)
function 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.
Die Funktion IdsM_SetSecurityEventWithTimestampCountContextData mit der Service-ID 0x08 dient als standardisierte Anwendungsschnittstelle für Smart Sensors, um Sicherheitsereignisse zusammen mit einem Zeitstempel, einem Startzählwert sowie optionalen Kontextdaten an den Intrusion Detection System Manager (IdsM) zu melden [SWS_IdsM_91021]. Die Deklaration dieser Schnittstelle wird über den Header IdsM.h zur Verfügung gestellt [SWS_IdsM_91021].
Der Aufruf wird synchron ausgeführt und verwendet ausschließlich Eingangsparameter, während weder Ein-/Ausgabeparameter noch Ausgabeparameter existieren [SWS_IdsM_91021]. Beim Aufruf sind folgende Parameter zu übergeben [SWS_IdsM_91021]:
securityEventId: Kennung des spezifischen Sicherheitsereignisses, das an den IdsM übermittelt werden soll [SWS_IdsM_91021].timestamp: Zeitstempelwert, der als zeitliche Referenz des aufgetretenen Sicherheitsereignisses fungiert [SWS_IdsM_91021].count: Zählwert, welcher vom IdsM als Startwert für das jeweilige Sicherheitsereignis verwendet wird [SWS_IdsM_91021].contextData: Zeiger auf optionale Kontextdaten zum Ereignis; stehen keine Daten bereit, mussNULL_PTRübergeben werden [SWS_IdsM_91021].contextDataSize: Numerische Angabe über die Größe der übergebenen Kontextdaten [SWS_IdsM_91021].
Bezüglich des Ausführungsverhaltens ist die Funktion als nicht reentrant (Non Reentrant) klassifiziert und besitzt keinen Rückgabewert (void) [SWS_IdsM_91021]. Aufrufende Smart Sensors müssen daher sicherstellen, dass keine gleichzeitigen oder überlappenden Aufrufe der Schnittstelle stattfinden [SWS_IdsM_91021].
Dieser Text wurde von einer KI generiert und dient als Orientierungshilfe.
Implementer's Guide folgt (Komplexität I1)
function 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.
Die Callback-Funktion IdsM_BswM_StateChanged ([SWS_IdsM_91005]) wird durch das BswM aufgerufen, um dem Intrusion Detection System Manager (IdsM) Änderungen des aktuellen Steuergeräte-Zustands zu signalisieren ([SWS_IdsM_91005]). Sie ist in der Header-Datei IdsM_Cbk.h deklariert und besitzt die Service-ID 0x0F ([SWS_IdsM_91005]).
Die Schnittstelle besitzt die Signatur void IdsM_BswM_StateChanged (IdsM_Filters_BlockStateType state) ([SWS_IdsM_91005]). Als einziger Übergabewert dient der Eingangsparameter state vom Typ IdsM_Filters_BlockStateType, welcher den aktuellen ECU-Zustand abbildet ([SWS_IdsM_91005]). Es sind weder Ein-/Ausgabeparameter noch Ausgabeparameter vorgesehen, und die Funktion liefert keinen Rückgabewert zurück ([SWS_IdsM_91005]). Der Aufruf wird synchron ausgeführt und ist als reentrant eingestuft ([SWS_IdsM_91005]).
Im funktionalen Zusammenspiel dient dieser Benachrichtigungsdienst dazu, das IdsM durch das BswM fortlaufend über den aktuellen Zustand zu informieren ([SWS_IdsM_01022]). Die empfangene Zustandsinformation wird im IdsM vorgehalten und bei der späteren asynchronen Verarbeitung von Block-State-Filtern (block state filter) im Rahmen der Hauptfunktion (main function) ausgewertet ([SWS_IdsM_01022]). Für diesen Aufruf sind im Spezifikationsumfang keine spezifischen Fehlercodes, Rückgabewerte oder Meldungen an das Entwicklungsfehler- (DET) oder Diagnose-Event-Management (DEM) festgelegt.
Dieser Nutzungshinweis wurde automatisiert generiert und basiert auf den Spezifikationsanforderungen von AUTOSAR Classic R20-11.
Implementer's Guide folgt (Komplexität I1)
function 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.
Die Callback-Funktion IdsM_TpTxConfirmation wird als synchroner und reentranter Dienst über die Header-Datei IdsM_Cbk.h deklariert [SWS_IdsM_91011]. Gemäß [SWS_IdsM_01502] empfängt das Modul IdsM über diesen Dienst die Bestätigung des Moduls PduR für die Übertragung einer segmentierten PDU. Der Aufruf erfolgt, sobald die betreffende I-PDU auf dem zugrundeliegenden Netzwerk übertragen wurde [SWS_IdsM_91011].
Die Schnittstelle besitzt die Service-ID 0x48 und liefert keinen Rückgabewert (void) [SWS_IdsM_91011]. Beim Aufruf werden zwei Eingabeparameter übergeben:
id(TypPduIdType): Eindeutige Identifikation der übertragenen I-PDU [SWS_IdsM_91011].result(TypStd_ReturnType): Übermittelt das Ergebnis der I-PDU-Übertragung und zeigt an, ob der Sendevorgang erfolgreich war oder fehlschlug [SWS_IdsM_91011].
Spezifische Fehlercodes sowie DET- oder DEM-Meldungen sind für diesen Aufruf in der Spezifikation nicht definiert. Dank der spezifizierten Reentranz kann die Funktion von der aufrufenden Schicht parallel für verschiedene I-PDUs aufgerufen werden [SWS_IdsM_91011]. Interpretation: Das Modul IdsM dürfte den Statusparameter result auswerten, um den internen Übertragungsstatus der segmentierten PDU zu aktualisieren und belegte Sendepuffer nach Abschluss freizugeben. Frage Q-9179efcbf744346d (offen)
Dieser Text wurde von einer KI erstellt und basiert ausschließlich auf den Spezifikationen von AUTOSAR R20-11.
Implementer's Guide folgt (Komplexität I2)
function 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.
Verwendung
Die Callback-Funktion IdsM_TxConfirmation ([SWS_IdsM_91009]) wird von einem unterlagerten Kommunikationsschnittstellenmodul aufgerufen, um das erfolgreiche Senden einer PDU oder das Fehlschlagen der Übertragung zu bestätigen. Sie ist synchron definiert, deklariert in IdsM_Cbk.h und besitzt keinen Rückgabewert. Sie nimmt folgende Parameter entgegen:
TxPduId: Kennung der übertragenen PDU ([SWS_IdsM_91009]).result: Übertragungsergebnis mitE_OKbei erfolgreichem Versand bzw.E_NOT_OKbei einem aufgetretenen Fehler ([SWS_IdsM_91009]).
Nebenläufigkeit und Einschränkungen
Die Funktion ist reentrant für unterschiedliche PDU-IDs, jedoch nicht reentrant für dieselbe TxPduId ([SWS_IdsM_91009]).
Zusammenspiel und Reihenfolgebedingungen
Für die Übertragungsabfolge gilt eine strikte Reihenfolgebedingung: Gemäß [SWS_IdsM_01499] darf das IdsM die Sendefunktion PduR_IdsMTransmit erst dann erneut aufrufen, nachdem zuvor IdsM_TxConfirmation oder IdsM_TpTxConfirmation aufgerufen wurde. Interpretation: Das Eintreffen der Bestätigung dürfte im IdsM als Auslöser dienen, um die Übertragung abzuschließen und Folgeaufrufe freizugeben. Frage Q-dd4013520e85370c (offen)
Fehlerbehandlung
Ein Scheitern der PDU-Übertragung wird direkt über den Parameter result = E_NOT_OK gemeldet ([SWS_IdsM_91009]). Spezifische DET- oder DEM-Fehlercodes sind in der Schnittstellenspezifikation nicht ausgewiesen.
Dieser Text wurde automatisch generiert auf Basis der Spezifikation AUTOSAR CP R20-11.
Implementer's Guide folgt (Komplexität I1)
function 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().
Verwendung und Aufrufkontext
Die synchrone Funktion IdsM_Dcm_GetReportingMode_RequestResults (Service-ID 0x0D, Header IdsM_Cbk.h) wird vom Diagnostic Communication Manager (DCM) aufgerufen, um die Routinenergebnisse einer zuvor über IdsM_Dcm_GetReportingMode_Start() initiierten Anforderung abzufragen [SWS_IdsM_91007]. Über den Übergabeparameter OpStatus wird der aktuelle Operationsstatus übermittelt [SWS_IdsM_91007]. Bei erfolgreichem Abschluss liefert die Funktion E_OK zurück und gibt über den Ausgabepointer Out_ReportingMode den ermittelten Reporting-Modus des angeforderten Security Events aus [SWS_IdsM_91007]. Ist die Bearbeitung noch nicht abgeschlossen, signalisiert sie dies über den Rückgabewert DCM_E_PENDING [SWS_IdsM_91007].
Fehlerbehandlung
Schlägt die Abfrage fehl, gibt die Funktion E_NOT_OK zurück [SWS_IdsM_91007]. In diesem Fall muss über den Parameter ErrorCode ein konkreter Negative Response Code (Dcm_NegativeResponseCodeType) gesetzt werden; bleibt dieser ungesetzt, sendet das DCM den Fehlercode 0x22 [SWS_IdsM_91007]. Spezifische DET- oder DEM-Ereignisse sind für diesen Service nicht ausgewiesen [SWS_IdsM_91007].
Nebenläufigkeit und Zusammenspiel
Die Funktion ist als reentrant spezifiziert [SWS_IdsM_91007]. Bezüglich der Aufrufabfolge setzt sie zwingend voraus, dass die Routine zuvor mittels IdsM_Dcm_GetReportingMode_Start() ausgelöst wurde [SWS_IdsM_91007]. Interpretation: Der Parameter OpStatus dürfte vom DCM bei wiederholten Abfragen nach Rückgabe von DCM_E_PENDING genutzt werden, um den Fortschritt der Diagnoseoperation zu koordinieren. Frage Q-c268fab018a1f5b3 (offen)
Dieser Nutzungshinweis wurde von einer KI auf Basis der Spezifikation AUTOSAR R20-11 generiert.
Implementer's Guide folgt (Komplexität I2)
function 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.
Die Funktion IdsM_Dcm_GetReportingMode_Start wird vom Diagnose-Modul (DCM) aufgerufen, um im Intrusion Detection System Manager (IdsM) die Ausführung einer Routine zur Abfrage des aktuellen Reporting-Modus eines spezifischen Security Events (SEv) zu starten [SWS_IdsM_91006], [SWS_IdsM_02001]. Die Schnittstelle ist im Header IdsM_Cbk.h deklariert, besitzt die Service-ID 0x0C und ist als synchron sowie reentrant spezifiziert [SWS_IdsM_91006].
Beim Aufruf übergibt das DCM die externe ID des Sicherheitsereignisses (In_SecurityEventId), die Instanz-ID des Sensors (In_SensorInstanceId) und den Operationsstatus (OpStatus) [SWS_IdsM_91006]. Als Rückgabewert liefert die Funktion Std_ReturnType:
E_OK: Die Operation wurde erfolgreich abgeschlossen [SWS_IdsM_91006].DCM_E_PENDING: Die Operation ist noch nicht abgeschlossen [SWS_IdsM_91006]. Dies dürfte bedeuten, dass die interne Bearbeitung der Routine mehrzyklisch bzw. asynchron weitergeführt wird, bis die Daten vorliegen. Frage Q-395a30fc3ed42497 (offen)E_NOT_OK: Die Operation ist fehlgeschlagen [SWS_IdsM_91006].
Im Fehlerfall (E_NOT_OK) ist das IdsM verpflichtet, über den Ausgabeparameter ErrorCode einen konkreten Negative Response Code (NRC) bereitzustellen; geschieht dies nicht, sendet das DCM standardmäßig den NRC 0x22 (Conditions Not Correct) [SWS_IdsM_91006].
Die Funktion stößt lediglich die Routine an; das eigentliche Auslesen der ermittelten Ergebnisse erfolgt nachfolgend über die Funktion IdsM_Dcm_GetReportingMode_RequestResults [SWS_IdsM_91007].
Dieser Nutzungshinweis wurde automatisch generiert. Alle Angaben stützen sich ausschließlich auf die Spezifikation AUTOSAR Classic R20-11.
Implementer's Guide folgt (Komplexität I2)
function 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.
Die synchrone und reentrante Funktion IdsM_Dcm_SetReportingMode_Start wird vom Diagnose-Modul (DCM) aufgerufen, um die Routine zur Änderung des Berichtsmodus (IdsMReportingModeFilter) für ein bestimmtes Sicherheitsereignis im Intrusion Detection System Manager zu starten [SWS_IdsM_91008], [SWS_IdsM_01901]. Die Deklaration wird über die Header-Datei IdsM_Cbk.h bereitgestellt [SWS_IdsM_91008].
Beim Aufruf werden die externe Ereignis-ID (In_SecurityEventId), die Sensor-Instanz-ID (In_SensorInstanceId), der neu zu setzende Berichtsmodus (In_ReportingMode) sowie der Operationsstatus (OpStatus) übergeben [SWS_IdsM_91008], [SWS_IdsM_01901]. Die Funktion liefert folgende Rückgabewerte:
E_OK: Die Ausführung der Operation wurde erfolgreich abgeschlossen [SWS_IdsM_91008].DCM_E_PENDING: Die Bearbeitung ist noch nicht abgeschlossen und wird asynchron fortgeführt [SWS_IdsM_91008].E_NOT_OK: Die Operation ist fehlgeschlagen; in diesem Fall muss über den AusgabeparameterErrorCodeein konkreter Negative Response Code (NRC) gesetzt werden, da das DCM andernfalls den NRC0x22übermittelt [SWS_IdsM_91008].
Schlägt die Validierung der Ereignis-ID fehl, weil eine ungültige Security Event Definition ID verwendet wurde, gibt die Funktion E_NOT_OK zurück und setzt den Fehlercode ErrorCode zwingend auf DCM_E_REQUESTOUTOFRANGE [SWS_IdsM_01903].
Dieser Nutzungshinweis wurde automatisiert generiert und basiert auf den AUTOSAR-Spezifikationen.
Implementer's Guide folgt (Komplexität I2)
type IdsM_ConfigType [SWS_IdsM_91012] 📄 PDF
Configuration data structure of IdsM module.
type IdsM_Filters_BlockStateType [SWS_IdsM_91017] 📄 PDF
Data type used for "Block State" filter values (bit masks)
Der Datentyp IdsM_Filters_BlockStateType dient der Definition von Bitmasken für sogenannte „Block State“-Filter des Intrusion Detection System Managers (IdsM) gemäß [SWS_IdsM_91017]. Der Typ ist von uint16 abgeleitet, deckt den ganzzahligen Wertebereich von 0 bis 65535 ab und wird über den Header IdsM_Filters_Types.h für Software-Module verfügbar gemacht ([SWS_IdsM_91017]).
Die primäre Verwendung erfolgt im Zusammenspiel mit dem Basic Software Mode Manager (BswM). Bei Änderungen des System- oder Steuergerätezustands ruft der BswM die Callback-Funktion IdsM_BswM_StateChanged auf und übergibt den aktuellen Steuergerätezustand über den Parameter state dieses Typs ([SWS_IdsM_91005]). Diese Callback-Schnittstelle ist in IdsM_Cbk.h deklariert, führt keine Rückgabewerte und ist als synchron sowie reentrant spezifiziert ([SWS_IdsM_91005]).
Interpretation: Da der Typ als Bitmaske für Filter konzipiert ist, dürfte der IdsM den übergebenen ECU-Zustandswert mit konfigurierten Filterzuständen abgleichen, um die Erfassung oder Blockierung von Sicherheitsereignissen abhängig vom Steuergerätezustand zu filtern. Frage Q-00b355cc5ec6383f (offen) Eine eigenständige Fehlerbehandlung mit spezifischen Fehlercodes, DET- oder DEM-Meldungen existiert für diesen Datentyp nicht.
Dieser Hinweis wurde von einer KI generiert und stützt sich ausschließlich auf die Spezifikationsdaten aus AUTOSAR CP R20-11.
Implementer's Guide folgt (Komplexität I1)
type IdsM_Filters_ReportingModeType [SWS_IdsM_91013] 📄 PDF
Reporting modes used by the reporting mode filter
Der Datentyp IdsM_Filters_ReportingModeType basiert auf dem Basistyp uint8 und wird über die Header-Datei IdsM_Types.h für Software-Komponenten bereitgestellt [SWS_IdsM_91013]. Er beschreibt die standardisierten Berichtsmodi, die innerhalb des Reporting-Mode-Filters im Intrusion Detection System Manager (IdsM) zur gezielten Verarbeitung und Weiterleitung von Sicherheitsereignissen angewendet werden [SWS_IdsM_91013].
Über die definierten Enumerationswerte wird präzise gesteuert, ob ein Ereignis gemeldet wird und welcher Detaillierungsgrad dabei zum Einsatz kommt [SWS_IdsM_91013]:
IDSM_REPORTING_MODE_OFF(0x00): Das Ereignis wird unterdrückt und nicht an übergeordnete Instanzen gemeldet [SWS_IdsM_91013].IDSM_REPORTING_MODE_BRIEF(0x01): Das Ereignis wird ohne zusätzliche Kontextdaten in kompakter Form gemeldet [SWS_IdsM_91013].IDSM_REPORTING_MODE_DETAILED(0x02): Das Ereignis wird ausführlich unter Einbeziehung aller relevanten Kontextdaten gemeldet [SWS_IdsM_91013].IDSM_REPORTING_MODE_BRIEF_BYPASSING_FILTERS(0x03): Das Ereignis umgeht nachfolgende Filterstufen und wird ohne Kontextdaten ungefiltert gemeldet [SWS_IdsM_91013].IDSM_REPORTING_MODE_DETAILED_BYPASSING_FILTERS(0x04): Das Ereignis umgeht nachfolgende Filterstufen und wird ungefiltert inklusive sämtlicher Kontextdaten gemeldet [SWS_IdsM_91013].IDSM_REPORTING_MODE_INVALID(0xFF): Kennzeichnet einen ungültigen Berichtsmodus innerhalb des Wertebereichs [SWS_IdsM_91013].
Die Werte kombinieren somit zwei funktionale Steuerungsdimensionen: den Detaillierungsgrad über die Kontextdaten sowie die gezielte Umgehung regulärer Filtermechanismen durch das Bypassing [SWS_IdsM_91013]. Dies erlaubt dem IdsM eine differenzierte Behandlung von Sicherheitsvorfällen je nach Kritikalität und Filterkonfiguration [SWS_IdsM_91013].
Dieser Text wurde von einer KI auf Basis der Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
type IdsM_TimestampType [SWS_IdsM_91014] 📄 PDF
Data type for IdsM timestamps
type 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#9d514613- Content hash
9d514613- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_IntrusionDetectionSystemManager.pdf#nameddest=SWS_IdsM_91001
claude-opus-5-5· 2026-10-13