DEENESPTFRRUARHIKOZHNL

Intrusion Detection System Manager (IdsM)

ModulIdsM (Intrusion Detection System Manager)
BSW-Modul-ID108
Standard-Header#include "IdsM.h"
SWS-SpezifikationAUTOSAR_SWS_IntrusionDetectionSystemManager.pdf
ClusterSecurity & Intrusion Detection

Modul-GuideKI-GENERIERT

Sammelt Sicherheitsereignisse der Sensoren, filtert sie und leitet qualifizierte Ereignisse an Senken weiter.
KI-GENERIERT ungeprüft Modell: claude-opus-5-5 · Aufwand: high · Temperatur: nicht steuerbar · Prompt: cd24ae65ba9c Herkunft Offene Fragen (2)
Kausaler Anker: R20-11 Gültig ab R20-11 Neu synthetisiert für diesen Spezifikationsstand.
KI-generiertclaude-opus-5-5 · 2026-10-13

Sammelt Sicherheitsereignisse der Sensoren, filtert sie und leitet qualifizierte Ereignisse an Senken weiter.

Der IdsM sammelt Security Events, die BSW-Module, CDDs und SW-Cs melden, puffert sie und verarbeitet sie asynchron in IdsM_MainFunction [SWS_IdsM_00702]. Reporting Mode und eine Filterkette aus Block-State-, Sampling-, Aggregations- und Schwellwertfiltern machen daraus qualifizierte Ereignisse [SWS_IdsM_01004]. Diese gehen über den PduR an einen IdsR oder werden in DEM/Sem gespeichert. Zeitstempel, Signatur und Diagnosezugriff sind optional. Die Bedeutung der Kontextdaten bewertet der IdsM nicht; die Reaktion auf Angriffe liegt außerhalb des Moduls.

Der IdsM nimmt Security Events (SEv) von Sicherheitssensoren entgegen, also von BSW-Modulen, CDDs und SW-Cs. Über eine Filterkette macht er daraus Qualified Security Events (QSEv) [SWS_IdsM_00902]. QSEvs sendet er über den PduR an einen IdsR, speichert sie in DEM/Sem oder beides [SWS_IdsM_01202] [SWS_IdsM_01600]. Die Bedeutung der Kontextdaten bewertet er nicht. Die Reaktion auf Angriffe liegt außerhalb des Moduls, etwa in einem SOC [SWS_IdsM_CONSTR_00001].

kontext sensoren Sensoren (BSW, CDD, SW-C über RTE) idsm IdsM sensoren->idsm IdsM_SetSecurityEvent… bswm BswM bswm->idsm IdsM_BswM_StateChanged dcm DCM dcm->idsm IdsM_Dcm_…ReportingMode… stbm StbM idsm->stbm StbM_GetCurrentTime swc SW-C (CustomTimestamp) idsm->swc IdsM_CustomTimestamp.Get csm CSM idsm->csm Csm_SignatureGenerate nvm NvM idsm->nvm NvM_WriteBlock pdur PduR idsm->pdur PduR_IdsMTransmit dem DEM / Sem (DRAFT) idsm->dem QSEv speichern det DET idsm->det Det_ReportError csm->idsm IdsM_CsmNotification pdur->idsm IdsM_CopyTxData, IdsM_TxConfirmation, IdsM_TpTxConfirmation idsr IdsR (anderes Steuergerät) pdur->idsr IDS-Nachricht

Kontextdiagramm: Der IdsM verbindet die meldenden Sensoren mit den Senken PduR/IdsR und DEM/Sem. BswM, StbM, CSM, DCM und NvM sind optional angebunden. Quellen: SWS IdsM S. 20, [SWS_IdsM_91023]

Sensoren melden über IdsM_SetSecurityEvent oder eine von fünf Varianten mit Kontextdaten (bis 1500 Byte), Zähler und Zeitstempel [SWS_IdsM_00300] [SWS_IdsM_00404] [SWS_IdsM_00501]. Dabei verwenden sie immer den symbolischen Namen des IdsMEvent [SWS_IdsM_00607]. Der Melde-Dienst puffert das SEv nur. Die eigentliche Verarbeitung läuft asynchron in IdsM_MainFunction [SWS_IdsM_00702]. Fehlt ein freier Event Buffer, löst der IdsM einen internen SEv aus, sofern dieser konfiguriert ist [SWS_IdsM_00703].

Die Qualifizierung beginnt mit dem Reporting Mode. Mögliche Werte sind OFF, BRIEF, DETAILED und die Varianten, die die Filter umgehen [SWS_IdsM_01002] [SWS_IdsM_91013]. Danach laufen die aktiven Filter in fester Reihenfolge: Block State, Forward Every n-th, Aggregation, Threshold [SWS_IdsM_01004]. Verwirft ein Filter das SEv, endet die Auswertung [SWS_IdsM_01005]. Vor dem Senden an den IdsR greifen zusätzlich Raten- und Verkehrsbegrenzung [SWS_IdsM_01070]. Diese dürften auch für die Bypass-Modi gelten (Interpretation). Frage (offen)

filterkette a SEv aus Event Buffer (IdsM_MainFunction) rm Reporting Mode? (IdsMReportingModeFilter) a->rm bs Block State Filter: aktueller Zustand in IdsMBlockState? rm->bs BRIEF / DETAILED drop SEv verworfen rm->drop OFF q QSEv rm->q BRIEF_ / DETAILED_ BYPASSING_FILTERS fn Forward Every n-th Filter: weiterzuleitendes Ereignis? bs->fn nein bs->drop ja ag Event Aggregation Filter: Intervallende erreicht? fn->ag ja fn->drop nein coll Im Aggregationsintervall gesammelt (Zähler summiert) ag->coll nein th Event Threshold Filter: Summe mindestens IdsMEventThresholdNumber? ag->th ja, Summenzähler th->drop nein th->q ja sink Konfigurierte Senken q->sink lim Rate Limitation, dann Traffic Limitation sink->lim IdsMSinkIdsR (Interpretation: auch bei Umgehung) dem DEM / Sem (DRAFT) sink->dem IdsMSinkDem lim->drop Grenze überschritten idsr PduR an IdsR lim->idsr innerhalb der Grenzen

Aktivitätsdiagramm: Erst Reporting Mode, dann die Filterkette, zuletzt die Instanzbegrenzungen vor dem IdsR. Quellen: SWS IdsM S. 35, [SWS_IdsM_01004], [SWS_IdsM_01070]

Optional lassen sich weitere Funktionen zuschalten [SWS_IdsM_01100] [SWS_IdsM_01204] [SWS_IdsM_01901] [SWS_IdsM_01702]:

  • Zeitstempel aus StbM oder aus der Applikation
  • Signatur über den CSM
  • Lesen und Ändern des Reporting Mode über den DCM, mit NvM-Persistierung und Rollback bei Fehlern

Entwicklungsfehler meldet der IdsM nur bei aktivem IdsMDevErrorDetect an das DET [SWS_IdsM_02003]. Die Senke DEM/Sem hat in R20-11 den Status DRAFT [SWS_IdsM_01601].

Rolle: vom gemeldeten Sicherheitsereignis zum qualifizierten Ereignis

Der Intrusion Detection System Manager (IdsM) sammelt Security Events (SEv). Diese erkennen und melden Sicherheitssensoren, also BSW-Module, Complex Device Drivers oder SW-Cs SWS IdsM S. 10. Der IdsM prüft jedes SEv gegen eine konfigurierbare Folge von Filtern, die Filterkette. Besteht das SEv diese Prüfung, wird es zum Qualified Security Event (QSEv) [SWS_IdsM_00902]. Nur QSEvs werden weiterbehandelt. Sie gehen über den PduR an einen IdsR auf einem anderen Steuergerät, werden in DEM/Sem abgelegt oder beides [SWS_IdsM_01202] [SWS_IdsM_01600] SWS IdsM S. 35.

Die Systemgrenze ist eng gezogen. Der IdsM kennt die Bedeutung der Kontextdaten nicht und entscheidet deshalb nicht selbst, ob ein System kompromittiert ist. Erkennung und Reaktion liegen außerhalb des Moduls, etwa in einem SOC [SWS_IdsM_CONSTR_00001]. Pflicht-Schnittstellen zu anderen Modulen gibt es nicht [SWS_IdsM_91023]. Jede Kopplung wird über die Konfiguration zugeschaltet. Das zeigen die bedingten Header-Einbindungen:

  • Det.h bei IdsMDevErrorDetect
  • Dem.h bei IdsMSinkDem
  • Dcm.h bei IdsMDiagnosticSupport
  • NvM.h bei IdsMNvmBlockDescriptor
  • PduR.h bei IdsMSinkIdsR

Belege für diese Einbindungen: [SWS_IdsM_00101] bis [SWS_IdsM_00105].

kontext sensoren Sensoren (BSW, CDD, SW-C über RTE) idsm IdsM sensoren->idsm IdsM_SetSecurityEvent… bswm BswM bswm->idsm IdsM_BswM_StateChanged dcm DCM dcm->idsm IdsM_Dcm_…ReportingMode… stbm StbM idsm->stbm StbM_GetCurrentTime swc SW-C (CustomTimestamp) idsm->swc IdsM_CustomTimestamp.Get csm CSM idsm->csm Csm_SignatureGenerate nvm NvM idsm->nvm NvM_WriteBlock pdur PduR idsm->pdur PduR_IdsMTransmit dem DEM / Sem (DRAFT) idsm->dem QSEv speichern det DET idsm->det Det_ReportError csm->idsm IdsM_CsmNotification pdur->idsm IdsM_CopyTxData, IdsM_TxConfirmation, IdsM_TpTxConfirmation idsr IdsR (anderes Steuergerät) pdur->idsr IDS-Nachricht

Kontextdiagramm: Der IdsM steht zwischen den meldenden Sensoren und den Senken PduR/IdsR sowie DEM/Sem. BswM, StbM, CSM, DCM und NvM liefern Betriebszustand, Zeit, Signatur und Diagnosezugang. Quellen: SWS IdsM S. 20, SWS IdsM S. 14, [SWS_IdsM_01022], [SWS_IdsM_01104], [SWS_IdsM_01206], [SWS_IdsM_01701]

Start, Ereignisidentität und Melde-Schnittstellen

IdsM_Init initialisiert alle internen Variablen und versetzt das Modul in den Zustand „initialisiert“ [SWS_IdsM_00202] [SWS_IdsM_91001]. Nur IdsM_Init und IdsM_GetVersionInfo dürfen vor diesem Zeitpunkt aufgerufen werden SWS IdsM S. 21. Ein erneuter Aufruf von IdsM_Init initialisiert das Modul nicht ein zweites Mal [SWS_IdsM_00204].

lebenszyklus start Start uninit Nicht initialisiert start->uninit uninit->uninit andere API als IdsM_Init / IdsM_GetVersionInfo: Det_ReportError IDSM_E_UNINIT (nur mit IdsMDevErrorDetect) init Initialisiert uninit->init IdsM_Init(configPtr): alle internen Variablen initialisiert init->init IdsM_Init erneut: keine Re-Initialisierung, Det_ReportError IDSM_E_ALREADY_INITIALIZED (nur mit IdsMDevErrorDetect) init->init IdsM_MainFunction, Melde-Dienste, Callbacks

Zustandsdiagramm: Das Modul kennt zwei Zustände. Fehlaufrufe in beiden Zuständen melden nur bei aktiver Entwicklungsfehlererkennung einen Fehler an das DET. Quellen: [SWS_IdsM_00202], [SWS_IdsM_00203], [SWS_IdsM_00204], SWS IdsM S. 21

Jedes SEv wird durch drei Kennungen und den Ereignisnamen identifiziert [SWS_IdsM_00600]:

Sensoren melden ausschließlich über den symbolischen Namen des IdsMEvent-Containers. Sie dürfen sich nicht auf den internen Wert verlassen [SWS_IdsM_00602] [SWS_IdsM_00607]. Für das Melden stehen sechs Dienste bereit:

DienstZusatzdatenBeleg
IdsM_SetSecurityEventkeine[SWS_IdsM_00300]
IdsM_SetSecurityEventWithContextDataKontextdaten[SWS_IdsM_00301]
IdsM_SetSecurityEventWithCountZähler (Smart Sensor)[SWS_IdsM_00401]
IdsM_SetSecurityEventWithCountContextDataZähler, Kontextdaten[SWS_IdsM_00402]
IdsM_SetSecurityEventWithTimestampCountZeitstempel, Zähler[SWS_IdsM_00403]
IdsM_SetSecurityEventWithTimestampCountContextDataZeitstempel, Zähler, Kontextdaten[SWS_IdsM_00404]

Kontextdaten übergibt der Sensor als Zeiger auf ein Byte-Array. Unterstützt werden bis zu 1500 Byte [SWS_IdsM_00501] [SWS_IdsM_00502]. Wer einen Zeitstempel, aber keinen eigenen Zähler hat, meldet mit count = 1 [SWS_IdsM_00405].

SW-Cs mit externen IDs im Bereich 0x8000–0xFFFE erreichen den IdsM über die Service-Interfaces IdsMService_{EventName} oder IdsMSmartSensorService_{EventName}. Welches Interface gilt, hängt von IdsMAdditionalParameterOption ab (None, Count, CountTimestamp) [SWS_IdsM_91027] [SWS_IdsM_91028] [SWS_IdsM_01301] [SWS_IdsM_01303]. In R20-11 sind diese Dienste normativ. Spätere Releases kennzeichnen sie als OBSOLETE SWS IdsM S. 67.

Pufferung und asynchrone Verarbeitung in IdsM_MainFunction

Die Melde-Dienste verarbeiten ein SEv nicht sofort. Der IdsM legt es zunächst in einem Event Buffer ab. Filterung und Weitergabe erfolgen später und asynchron in der zyklisch aufgerufenen IdsM_MainFunction [SWS_IdsM_00702] [SWS_IdsM_00901] [SWS_IdsM_91000]. Die Zahl der Event Buffers (IdsMNumberOfEventBuffers) ist konfigurierbar [SWS_IdsM_00701]. Als Richtwert empfiehlt die Spezifikation die Zahl der Aggregationsfilter-Instanzen plus die Obergrenze parallel verarbeiteter Ereignisse SWS IdsM S. 24.

Meldung und asynchrone Verarbeitung eines SEvSensorIdsMBswDefaultTaskStbMSenke (PduR / DEM)Use Case: Meldung im Kontext des SensorsIdsM_SetSecurityEvent(securityEventId)oder eine der fünf VariantenSEv in Event Buffer ablegenggf. Context Data Buffer verknüpfenRückkehr (void)Use Case: Zyklische VerarbeitungIdsM_MainFunction()optIdsMTimestampOption = AUTOSAR, kein Zeitstempel gemeldetStbM_GetCurrentTime()aktuelle Zeitalle gepufferten SEvs: Reporting Mode,Filterkette, Zeitstempel zuordnenoptSEv als QSEv qualifiziertQSEv an konfigurierte Senken

Sequenzdiagramm: Die Meldung kehrt nach dem Puffern sofort zurück. Zeitstempel, Filterung und Weitergabe folgen erst in IdsM_MainFunction. Quellen: SWS IdsM S. 86, [SWS_IdsM_00702], [SWS_IdsM_00901], [SWS_IdsM_01107]

Kontextdaten liegen in eigenen Context Data Buffers mit konfigurierbarer Größe bis 1500 Byte [SWS_IdsM_00704] SWS IdsM S. 122. Der IdsM wählt einen Puffer gleicher oder nächstgrößerer Größe und verknüpft ihn mit dem Event Buffer [SWS_IdsM_00705] [SWS_IdsM_00706]. Ein SEv ohne Kontextdaten belegt keinen solchen Puffer [SWS_IdsM_00709]. Für die internen SEvs des IdsM selbst gibt es eigene, getrennte Puffer [SWS_IdsM_00802].

puffer a SEv über Melde-Dienst empfangen b Event Buffer frei? a->b c Interner SEv IDSM_INTERNAL_EVENT_NO_EVENT_BUFFER_AVAILABLE (falls konfiguriert) b->c nein d SEv in Event Buffer speichern b->d ja x SEv kann nicht behandelt werden c->x e Kontextdaten gemeldet? d->e f Context Data Buffer gleicher oder nächstgrößerer Größe frei? e->f ja i SEv ohne Kontextdaten weiterverarbeiten e->i nein g Context Data Buffer mit Event Buffer verknüpfen f->g ja h Interner SEv IDSM_INTERNAL_EVENT_NO_CONTEXT_DATA_BUFFER_AVAILABLE (falls konfiguriert) f->h nein j Asynchrone Verarbeitung in IdsM_MainFunction g->j h->i i->j

Aktivitätsdiagramm: So werden Puffer beim Eingang eines SEv zugeordnet. Fehlt ein Kontextpuffer, wird das SEv ohne Kontextdaten verarbeitet. Fehlt ein Event Buffer, kann das SEv nicht behandelt werden. Quellen: [SWS_IdsM_00703], [SWS_IdsM_00705], [SWS_IdsM_00707], [SWS_IdsM_00708], [SWS_IdsM_91015], SWS IdsM S. 27

Qualifizierung: Reporting Mode, Filterkette und Instanzgrenzen

Zuerst wertet der IdsM den Reporting Mode aus. Jedes SEv hat genau einen Reporting-Mode-Filter. Dieser Filter ist Pflicht, hängt direkt am SEv und gehört nicht zur Filterkette [SWS_IdsM_01010] [SWS_IdsM_01011]. Der Startwert kommt aus IdsMReportingModeFilter [SWS_IdsM_01012]. Die Filterkette folgt erst danach [SWS_IdsM_01002]. IdsM_Filters_ReportingModeType kennt diese Modi [SWS_IdsM_91013]:

  • IDSM_REPORTING_MODE_OFF: Das Ereignis wird nicht gemeldet.
  • IDSM_REPORTING_MODE_BRIEF: Meldung ohne Kontextdaten.
  • IDSM_REPORTING_MODE_DETAILED: Meldung mit Kontextdaten.
  • Die beiden Varianten …_BYPASSING_FILTERS: Meldung wie BRIEF oder DETAILED, aber ungefiltert.

Die Filterkette ist dem SEv zugeordnet [SWS_IdsM_01001] [SWS_IdsM_00903]. Jede IdsMFilterChain braucht mindestens einen Filter [SWS_IdsM_CONSTR_00002]. Die aktiven Filter laufen in fester Reihenfolge [SWS_IdsM_01004]. Verwirft ein Filter das SEv, endet die Auswertung sofort. Andernfalls geht das SEv an den nächsten Filter [SWS_IdsM_00904] [SWS_IdsM_00905] [SWS_IdsM_01005]. Die vier Filter in dieser Reihenfolge:

  1. Block State: Der BswM meldet den aktuellen Zustand über IdsM_BswM_StateChanged als Bitmaske vom Typ IdsM_Filters_BlockStateType. Ist dieser Zustand in IdsMBlockState referenziert, verwirft der Filter das SEv [SWS_IdsM_01022] [SWS_IdsM_01023] [SWS_IdsM_91017]. Ein Filter kann bis zu 16 Zustände referenzieren SWS IdsM S. 85.
  2. Forward Every n-th: Das erste SEv geht weiter, danach jedes n-te laut IdsMNthParameter. Die Daten bleiben dabei unverändert [SWS_IdsM_01031] [SWS_IdsM_01032] [SWS_IdsM_01033].
  3. Event Aggregation: Während des Intervalls gibt der Filter nichts weiter. Am Intervallende entsteht ein einziges SEv mit dem Summenzähler [SWS_IdsM_01043] [SWS_IdsM_01046]. Kontextdaten und Zeitstempel stammen vom ersten oder letzten SEv des Intervalls, je nach IdsMContextDataSourceSelector [SWS_IdsM_01047] [SWS_IdsM_01049]. Ein Beispiel zeigt SWS IdsM S. 40.
  4. Event Threshold: Der Filter verwirft SEvs, solange die Zählersumme im laufenden Intervall unter IdsMEventThresholdNumber liegt. Mit Ablauf des Intervalls wird die Summe zurückgesetzt [SWS_IdsM_01061] [SWS_IdsM_01062] [SWS_IdsM_01063]. Ein Beispiel zeigt SWS IdsM S. 41.

Alle Intervalle sind Vielfache von IdsMMainFunctionPeriod. Aggregations- und Schwellwertintervall laufen ab dem ersten Aufruf der Main Function [SWS_IdsM_01050] [SWS_IdsM_01051] [SWS_IdsM_01065].

Vor dem Senden an den IdsR wirken zwei Begrenzungen für die gesamte IdsM-Instanz [SWS_IdsM_01070]:

Interne SEvs des IdsM durchlaufen diese Instanzfilter nicht. Ereignisspezifische Filter dürfen sie aber haben [SWS_IdsM_00803] [SWS_IdsM_00804]. Interpretation: Die Bypass-Modi umgehen nur die Filterkette. Frage (offen) Raten- und Verkehrsbegrenzung dürften auch für sie gelten, denn [SWS_IdsM_01070] verlangt diese Begrenzungen vor jeder Übertragung an den IdsR.

filterkette a SEv aus Event Buffer (IdsM_MainFunction) rm Reporting Mode? (IdsMReportingModeFilter) a->rm bs Block State Filter: aktueller Zustand in IdsMBlockState? rm->bs BRIEF / DETAILED drop SEv verworfen rm->drop OFF q QSEv rm->q BRIEF_ / DETAILED_ BYPASSING_FILTERS fn Forward Every n-th Filter: weiterzuleitendes Ereignis? bs->fn nein bs->drop ja ag Event Aggregation Filter: Intervallende erreicht? fn->ag ja fn->drop nein coll Im Aggregationsintervall gesammelt (Zähler summiert) ag->coll nein th Event Threshold Filter: Summe mindestens IdsMEventThresholdNumber? ag->th ja, Summenzähler th->drop nein th->q ja sink Konfigurierte Senken q->sink lim Rate Limitation, dann Traffic Limitation sink->lim IdsMSinkIdsR (Interpretation: auch bei Umgehung) dem DEM / Sem (DRAFT) sink->dem IdsMSinkDem lim->drop Grenze überschritten idsr PduR an IdsR lim->idsr innerhalb der Grenzen

Aktivitätsdiagramm: Erst Reporting Mode, dann die Filter in fester Reihenfolge, zuletzt die Instanzbegrenzungen vor dem IdsR. Nicht konfigurierte Filter entfallen. Quellen: SWS IdsM S. 35, [SWS_IdsM_01002], [SWS_IdsM_01004], [SWS_IdsM_01070], [SWS_IdsM_91013]

Zeitstempel, IDS-Nachricht und Senken

Der Zeitstempel ist optional und wird global über IdsMTimestampOption gesteuert [SWS_IdsM_01100]:

Liefert der Sensor selbst einen Zeitstempel, hat dieser Vorrang [SWS_IdsM_01108]. Der IdsM kürzt ihn auf die 62 niederwertigen Bits [SWS_IdsM_01110]. Laut den Ablaufbildern bestimmt der IdsM den Zeitstempel in der Main Function für alle gepufferten Ereignisse SWS IdsM S. 87.

zeitstempel a QSEv aufbereiten opt IdsMTimestampOption? a->opt none Kein Zeitstempel; mitgemeldeter Zeitstempel wird ignoriert opt->none None given Zeitstempel vom Sensor mitgemeldet? opt->given AUTOSAR / Custom trunc Auf 62 niederwertige Bits kürzen und verwenden given->trunc ja src Quelle laut Option? given->src nein add Zeitstempel in QSEv aufnehmen trunc->add stbm StbM_GetCurrentTime() src->stbm AUTOSAR cust IdsM_CustomTimestamp, Operation Get über Port CustomTimestamp src->cust Custom stbm->add cust->add

Aktivitätsdiagramm: Wie die Zeitstempelquelle je nach IdsMTimestampOption gewählt wird. Quellen: [SWS_IdsM_01106], [SWS_IdsM_01107], [SWS_IdsM_01108], [SWS_IdsM_01109], [SWS_IdsM_01110], SWS IdsM S. 86

Ein QSEv hat dieselbe Struktur, egal an welche Senke es geht [SWS_IdsM_01200]. Die IDS-Nachricht besteht aus dem Event Frame und optional Timestamp, Context Data und Signature PRS IDS S. 11. Welche Senken ein Ereignis nutzt, legt die Konfiguration des IdsMEvent fest [SWS_IdsM_01201].

Die Signatur ist optional. Sie wird global aktiv, sobald IdsMCsmJobReference konfiguriert ist. Ausgelöst wird sie über Csm_SignatureGenerate. Bei synchronen Jobs liegt die Signatur sofort vor, bei asynchronen meldet IdsM_CsmNotification das Ergebnis [SWS_IdsM_01204] [SWS_IdsM_01206] [SWS_IdsM_01207] [SWS_IdsM_01208].

Für die Senke IdsR sendet der IdsM über PduR_IdsMTransmit [SWS_IdsM_01498]. Passt die Nachricht in eine Bus-PDU, nutzt er eine IF-PDU, sonst eine TP-PDU [SWS_IdsM_01400] [SWS_IdsM_01401]. Ein neuer Sendeauftrag folgt erst nach der Bestätigung des vorherigen [SWS_IdsM_01499]. Die Senke DEM/Sem speichert die vollständige IDS-Nachricht. Sie hat in R20-11 den Status DRAFT [SWS_IdsM_01601] [SWS_IdsM_01602].

Signatur und Übertragung eines QSEv an den IdsRIdsMCSMPduRUse Case: Optional: Signatur (IdsMCsmJobReference konfiguriert)Csm_SignatureGenerate()altsynchroner CSM-JobRückkehr: Signatur sofort verfügbarasynchroner CSM-JobIdsM_CsmNotification()Use Case: Übertragung (IdsMSinkIdsR)PduR_IdsMTransmit()altIDS-Nachricht passt in eine Bus-PDU (IdsMIfTxPdu)IdsM_TxConfirmation(TxPduId, result)sonst segmentiert (IdsMTpTxPdu)loopbis die PDU vollständig kopiert istIdsM_CopyTxData(id, info, retry, availableDataPtr)BufReq_ReturnTypeIdsM_TpTxConfirmation(id, result)Kein weiteres PduR_IdsMTransmitvor der Bestätigung

Sequenzdiagramm: Zuerst die optionale Signatur über CSM, dann die Übertragung als IF- oder segmentierte TP-PDU mit Bestätigung. Quellen: [SWS_IdsM_01207], [SWS_IdsM_01208], [SWS_IdsM_01500], [SWS_IdsM_01501], [SWS_IdsM_01502], SWS IdsM S. 49

Diagnose-Rekonfiguration und Persistenz des Reporting Mode

Der Diagnosezugriff ist optional und wird über IdsMDiagnosticSupport aktiviert [SWS_IdsM_01800].

Nach einer erfolgreichen Änderung stößt der IdsM NvM_WriteBlock an [SWS_IdsM_01701]. Scheitert die Persistierung, stellt er den vorherigen Wert wieder her und meldet DCM_E_GENERALPROGRAMMINGFAILURE [SWS_IdsM_01702] [SWS_IdsM_01904] [SWS_IdsM_01905].

Beim Start verwendet der IdsM die persistierten Werte. Fehlen sie, gilt die Konfiguration [SWS_IdsM_01703] [SWS_IdsM_01704]. Der NvM-Block muss in NvM_ReadAll enthalten sein und heißt IdsM_NvMRamBlockData bzw. IdsM_NvMRomBlockData [SWS_IdsM_01705] [SWS_IdsM_01706] [SWS_IdsM_01707]. Vermutlich erfährt der DCM das Persistierungsergebnis über wiederholte Aufrufe mit OpStatus DCM_PENDING. Frage Q-65ac99385a597b7d (offen) Eine spätere Fassung nennt dafür DCM_E_BUSYREPEATREQUEST SWS IdsM S. 75.

Reporting Mode per Diagnose ändern und lesenDCMIdsMNvMUse Case: Reporting Mode ändernIdsM_Dcm_SetReportingMode_Start(In_SecurityEventId,In_SensorInstanceId, In_ReportingMode, OpStatus, ErrorCode)altReporting Mode oder Event-ID ungültigE_NOT_OK, DCM_E_REQUESTOUTOFRANGEParameter gültigIdsMReportingModeFilter ändernNvM_WriteBlock()Interpretation: Ergebnis der Persistierung wirdüber Aufrufe mit OpStatus DCM_PENDING zurückgemeldetaltPersistierung fehlgeschlagenRollback auf vorherigen Reporting ModeE_NOT_OK, DCM_E_GENERALPROGRAMMINGFAILUREPersistierung erfolgreichE_OKUse Case: Reporting Mode lesenIdsM_Dcm_GetReportingMode_Start(In_SecurityEventId,In_SensorInstanceId, OpStatus, ErrorCode)E_OK / DCM_E_PENDING / E_NOT_OKIdsM_Dcm_GetReportingMode_RequestResults(OpStatus,Out_ReportingMode, ErrorCode)Out_ReportingMode

Sequenzdiagramm: Ändern des Reporting Mode mit NvM-Persistierung und Rollback sowie zweistufiges Lesen. Quellen: [SWS_IdsM_01901], [SWS_IdsM_01904], [SWS_IdsM_01905], [SWS_IdsM_91007], SWS IdsM S. 74. Der Rückmeldeweg der Persistierung ist als Interpretation markiert.

Verhalten im Fehlerfall

Entwicklungsfehler meldet der IdsM nur bei aktivem IdsMDevErrorDetect an das DET. Die Fehlercodes stehen in [SWS_IdsM_02003]:

Achtung bei der Benennung: [SWS_IdsM_00203] nennt den Code IDSM_E_PARAM_UNINIT, die Fehlertabelle führt ihn als IDSM_E_UNINIT (0x0D) [SWS_IdsM_02003].

Ressourcenengpässe meldet der IdsM als eigene interne SEvs, sofern diese konfiguriert sind [SWS_IdsM_91015]:

Verwirft ein Filter ein SEv, ist das reguläres Verhalten und kein Fehler [SWS_IdsM_00904]. Ein Sendefehler kommt als E_NOT_OK in der Bestätigung an [SWS_IdsM_91009]. Eine Wiederholregel mit IdsMTransmissionRetryDelay gibt es erst in R25-11 SWS IdsM S. 51.

Weiterführende Detailbelege

KI-generierter Leitfaden auf Basis der Spezifikationsauszüge im Payload (AUTOSAR Classic Platform R20-11). Normativ sind allein die verlinkten Requirements. Als Interpretation gekennzeichnete Aussagen sind durch die Quellen nicht vollständig gedeckt.

Intrusion Detection System Manager (IdsM)

Collects and reports onboard security events to detect threats.

Funktionen — Übersicht

Typen — Übersicht

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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 27dab8d4c20f Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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_Init aufgerufen, 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 über Det_ReportError den Entwicklungsfehler IDSM_E_ALREADY_INITIALIZED mit dem numerischen Wert 0x0E ([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_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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 74bdc1b72d90 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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_MainFunction asynchron 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_MainFunction asynchron 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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 5f2ff6078796 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: b7f6437d402e Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: f5f82ae60185 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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, ist NULL_PTR zu ü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 securityEventId nicht aus den in IdsMEvent konfigurierten Sicherheitsereignissen, wird der Entwicklungsfehler IDSM_E_PARAM_INVALID gemeldet ([SWS_IdsM_02102]).
  • Übersteigt contextDataSize die maximal konfigurierte Puffergröße für Kontextdaten (definiert über den größten parametrierten Wert von IdsMContextDataBufferSize), wird der Entwicklungsfehler IDSM_E_PARAM_LENGTH gemeldet ([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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 1b4c7b27b68c Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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 Typ IdsM_SecurityEventIdType [SWS_IdsM_91018].
  • count: Zählwert vom Typ uint16, 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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 2006a1c85bf9 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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, ist NULL_PTR zu ü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_INVALID wird gemeldet, falls eine unbekannte securityEventId übergeben wird oder count den Wert 0 aufweist [SWS_IdsM_02104].
  • Überschreitet contextDataSize die maximal konfigurierte Puffergröße (bestimmt durch die größte konfigurierte IdsMContextDataBufferSize), meldet das IdsM den Entwicklungsfehler IDSM_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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 2451b7e4c502 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: a1b69abd8805 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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, muss NULL_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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 16285d55bd09 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 127e922f9325 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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 (Typ PduIdType): Eindeutige Identifikation der übertragenen I-PDU [SWS_IdsM_91011].
  • result (Typ Std_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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 2d20d4e11a8b Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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 mit E_OK bei erfolgreichem Versand bzw. E_NOT_OK bei 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().

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 671f0dddec56 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 78410b323fc8 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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:

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.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: ecdd252e141c Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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 Ausgabeparameter ErrorCode ein konkreter Negative Response Code (NRC) gesetzt werden, da das DCM andernfalls den NRC 0x22 ü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_Filters_BlockStateType [SWS_IdsM_91017] 📄 PDF

Data type used for "Block State" filter values (bit masks)

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 71b3951aed67 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 4e0ba45d0047 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

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)

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

Initialisierung und Status

Returns version information, vendor ID and AUTOSAR module ID of the component.

void IdsM_GetVersionInfo (const Std_VersionInfoType* versionInfo);
IdsM_Init function

Service to initialize the module IdsM. It initializes all variables and sets the module state to initialized.

void IdsM_Init (const IdsM_ConfigType* configPtr);

Dienste

This callback function is invoked by the BswM to indicate ECU state changes.

void IdsM_BswM_StateChanged (IdsM_Filters_BlockStateType state);

This function is a request from DCM to the IdsM to read the routine results triggered by function IdsM_Dcm_GetReportingMode_Start().

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 start the routine execution to request the current reporting mode of a specific Security Event ID.

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 set the reporting mode of a specific Security Event ID.

Std_ReturnType IdsM_Dcm_SetReportingMode_Start (uint16 In_SecurityEventId, uint8 In_SensorInstanceId, uint8 In_ReportingMode, Dcm_OpStatusType OpStatus, Dcm_NegativeResponseCodeType* ErrorCode);

This API is the application interface to report security events to the IdsM.

void IdsM_SetSecurityEvent (IdsM_SecurityEventIdType securityEventId);

This API is the application interface to report security events with context data to the IdsM.

void IdsM_SetSecurityEventWithContextData (IdsM_SecurityEventIdType securityEventId, const uint8* contextData, uint16 contextDataSize);

This API is the application interface for Smart Sensors to report security events with a count value 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 and context data 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 timestamp and a count value 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, a count value and context data to the IdsM.

void IdsM_SetSecurityEventWithTimestampCountContextData (IdsM_SecurityEventIdType securityEventId, IdsM_TimestampType timestamp, uint16 count, const uint8* contextData, uint16 contextDataSize);

Callbacks

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.

BufReq_ReturnType IdsM_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

This function is called after the I-PDU has been transmitted on its network, the result indicates whether the transmission was successful or not.

void IdsM_TpTxConfirmation (PduIdType id, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.

void IdsM_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);

Zyklisch

This function is called periodically. It processes security events asynchronously which are queued during API function calls.

void IdsM_MainFunction (void);

Typen

Configuration data structure of IdsM module.

Data type used for "Block State" filter values (bit masks)

Reporting modes used by the reporting mode filter

Data type used for local IdsM Security Event IDs

Data type for IdsM timestamps