Skip to content

ImmediateForward plugin unable to set RSU operating mode on RSU #749

@charlewong

Description

@charlewong

Employee Status (Select one)

No

Summary

I have installed V2X-Hub 7.9.0 on an Ubuntu 22.04.6 machine from a git checkout and have configured the Immediate Forward Plugin to communicate with my RSU via NTCIP 1218. I have set the snmp credentials for my RSU. The V2X-Hub logs show that the ImmediateForward plugin is unable to set the RSU operating mode over snmp.

Version

7.8.1 (Current)

Expected Behavior

The plugin should be able to set the RSU operating mode on the RSU with SNMP

Actual Behavior

The Event Log tab displays the following warning:

ImmediateForward encountered unhandled exception: Failed to set RSU to operational mode backtrace: (Hint: Use addr2line -C -e 0x#######) to find line number) /var/www/plugins/ImmediateForwardPlugin/bin/ImmediateForwardPlugin(+0x1a300) [0x400001a300] /var/www/plugins/ImmediateForwardPlugin/bin/ImmediateForwardPlugin(+0x1249c) [0x400001249c] /var/www/plugins/ImmediateForwardPlugin/bin/ImmediateForwardPlugin(+0x242b8) [0x40000242b8] /var/www/plugins/ImmediateForwardPlugin/bin/ImmediateForwardPlugin(+0x33dbc) [0x4000033dbc] /usr/local/lib/libtmxapi.so(ivp_onMessageReceived+0x138) [0x4001e46018] /usr/local/lib/libtmxapi.so(+0x61f4) [0x4001e461f4] /usr/local/lib/libtmxapi.so(ivp_receive+0x10) [0x4001e46354] /lib/aarch64-linux-gnu/libc.so.6(+0x7d5b8) [0x400239d5b8] /lib/aarch64-linux-gnu/libc.so.6(+0xe5edc) [0x4002405edc] diagnostic info: Throw location unknown (consider using BOOST_THROW_EXCEPTION) Dynamic exception type: tmx::TmxException std::exception::what: Failed to set RSU to operational mode

The v2xhub docker container logs:

[2025-07-31 07:26:05.550] mxUtils/src/PluginClient.h (486) - DEBUG2 : Sending Event Log Message: {"level":"2","description":"ImmediateForward encountered unhandled exception: Failed to set RSU to operational mode\nbacktrace: (Hint: Use addr2line -C -e <exe> 0x#######) to find line number)\n\/var\/www\/plugins\/ImmediateForwardPlugin\/bin\/ImmediateForwardPlugin(+0x1a300) [0x400001a300]\n\/var\/www\/plugins\/ImmediateForwardPlugin\/bin\/ImmediateForwardPlugin(+0x1249c) [0x400001249c]\n\/var\/www\/plugins\/ImmediateForwardPlugin\/bin\/ImmediateForwardPlugin(+0x242b8) [0x40000242b8]\n\/var\/www\/plugins\/ImmediateForwardPlugin\/bin\/ImmediateForwardPlugin(+0x33dbc) [0x4000033dbc]\n\/usr\/local\/lib\/libtmxapi.so(ivp_onMessageReceived+0x138) [0x4001e46018]\n\/usr\/local\/lib\/libtmxapi.so(+0x61f4) [0x4001e461f4]\n\/usr\/local\/lib\/libtmxapi.so(ivp_receive+0x10) [0x4001e46354]\n\/lib\/aarch64-linux-gnu\/libc.so.6(+0x7d5b8) [0x400239d5b8]\n\/lib\/aarch64-linux-gnu\/libc.so.6(+0xe5edc) [0x4002405edc]\ndiagnostic info:\nThrow location unknown (consider using BOOST_THROW_EXCEPTION)\nDynamic exception type: tmx::TmxException\nstd::exception::what: Failed to set RSU to operational mode\n\n"}

[2025-07-31 07:26:05.552] ils/src/PluginKeepAlive.cpp (75) - DEBUG2 : In check for ImmediateForward
[2025-07-31 07:26:15.552] ils/src/PluginKeepAlive.cpp (75) - DEBUG2 : In check for ImmediateForward
[2025-07-31 07:26:25.552] ils/src/PluginKeepAlive.cpp (75) - DEBUG2 : In check for ImmediateForward
[2025-07-31 07:26:29.881] Utils/src/PluginClient.cpp (162) - INFO   : Config Changed. ImmediateForwardConfigurations: [{"name":"asdf","rsuSpec":"NTCIP1218","address":"172.16.17.96","port":161,"snmpAuth":{"user":"rsu","securityLevel":"authPriv","community":"public","authProtocol":"SHA-512","authPassPhrase":"rsuadmin","privacyProtocol":"AES","privacyPassPhrase":"rsuadmin"},"txMode":"CONT","signMessages":false,"messages":[{ "tmxType": "MAP-P", "sendType": "MAP", "psid": "0x8002", "channel": 183 },{ "tmxType": "PSM-P", "sendType": "PSM", "psid": "0x27", "channel": 183 },{"tmxType":"SSM-P","sendType":"SSM","psid":"0x8002","channel":183},{"tmxType":"SDSM","sendType":"SDSM","psid":"0x8010","channel":183}]}]
[2025-07-31 07:26:29.881] /ImmediateForwardPlugin.cpp (83) - DEBUG  : Updating configuration settings.
[2025-07-31 07:26:29.882] mxUtils/src/SNMPClient.cpp (156) - INFO   : Closing SNMP session
[2025-07-31 07:26:29.882] TmxUtils/src/SNMPClient.cpp (12) - DEBUG1 : String snmp_client configs : 172.16.17.96 161 public rsu authPriv SHA-512 rsuadmin AES rsuadmin 3 1000000
[2025-07-31 07:26:30.020] mxUtils/src/SNMPClient.cpp (150) - INFO   : Established session with device at 172.16.17.96
[2025-07-31 07:26:30.020] mxUtils/src/SNMPClient.cpp (256) - DEBUG1 : Attempting to SET value for 1.3.6.1.4.1.1206.4.2.18.16.2.0 to 2
[2025-07-31 07:26:30.020] mxUtils/src/SNMPClient.cpp (270) - DEBUG  : Created OID for input: 1.3.6.1.4.1.1206.4.2.18.16.2.0
[2025-07-31 07:26:36.029] mxUtils/src/SNMPClient.cpp (274) - DEBUG  : Response request status: 2 (=FAILED)
[2025-07-31 07:26:36.029] mxUtils/src/SNMPClient.cpp (363) - ERROR  : Timeout, no response from server
[2025-07-31 07:26:36.030] Utils/src/PluginClient.cpp (405) - WARNING: ImmediateForward encountered unhandled exception: Failed to set RSU to operational mode
backtrace: (Hint: Use addr2line -C -e <exe> 0x#######) to find line number)
/var/www/plugins/ImmediateForwardPlugin/bin/ImmediateForwardPlugin(+0x1a300) [0x400001a300]
/var/www/plugins/ImmediateForwardPlugin/bin/ImmediateForwardPlugin(+0x1249c) [0x400001249c]
/var/www/plugins/ImmediateForwardPlugin/bin/ImmediateForwardPlugin(+0x242b8) [0x40000242b8]
/var/www/plugins/ImmediateForwardPlugin/bin/ImmediateForwardPlugin(+0x33dbc) [0x4000033dbc]
/usr/local/lib/libtmxapi.so(ivp_onMessageReceived+0x138) [0x4001e46018]
/usr/local/lib/libtmxapi.so(+0x61f4) [0x4001e461f4]
/usr/local/lib/libtmxapi.so(ivp_receive+0x10) [0x4001e46354]
/lib/aarch64-linux-gnu/libc.so.6(+0x7d5b8) [0x400239d5b8]
/lib/aarch64-linux-gnu/libc.so.6(+0xe5edc) [0x4002405edc]
diagnostic info:
Throw location unknown (consider using BOOST_THROW_EXCEPTION)
Dynamic exception type: tmx::TmxException
std::exception::what: Failed to set RSU to operational mode

The snmpd log on the RSU show:

Jul 31 07:26:30 MK6 daemon.info snmpd[3673]: Connection from UDP: [172.16.0.161]:36183->[172.16.17.96]:161
Jul 31 07:26:30 MK6 daemon.info snmpd[3673]: Connection from UDP: [172.16.0.161]:36183->[172.16.17.96]:161
Jul 31 07:26:30 MK6 daemon.warn snmpd[3673]: security service 3 error parsing ScopedPDU
Jul 31 07:26:31 MK6 daemon.info snmpd[3673]: Connection from UDP: [172.16.0.161]:36183->[172.16.17.96]:161
Jul 31 07:26:31 MK6 daemon.warn snmpd[3673]: security service 3 error parsing ScopedPDU
Jul 31 07:26:32 MK6 daemon.info snmpd[3673]: Connection from UDP: [172.16.0.161]:36183->[172.16.17.96]:161
Jul 31 07:26:32 MK6 daemon.warn snmpd[3673]: security service 3 error parsing ScopedPDU
Jul 31 07:26:33 MK6 daemon.info snmpd[3673]: Connection from UDP: [172.16.0.161]:36183->[172.16.17.96]:161
Jul 31 07:26:33 MK6 daemon.warn snmpd[3673]: security service 3 error parsing ScopedPDU
Jul 31 07:26:34 MK6 daemon.info snmpd[3673]: Connection from UDP: [172.16.0.161]:36183->[172.16.17.96]:161
Jul 31 07:26:34 MK6 daemon.warn snmpd[3673]: security service 3 error parsing ScopedPDU
Jul 31 07:26:35 MK6 daemon.info snmpd[3673]: Connection from UDP: [172.16.0.161]:36183->[172.16.17.96]:161
Jul 31 07:26:35 MK6 daemon.warn snmpd[3673]: security service 3 error parsing ScopedPDU

Steps to Reproduce the Actual Behavior

I installed V2X-Hub as follows:

git clone https://github.com/usdot-fhwa-OPS/V2X-Hub.git
cd V2X-Hub
git checkout 7.9.0 -b v7.9.0
cd configuration
sudo ./initialization.sh

ImmediateForward plugin configuration:

[{"name":"asdf","rsuSpec":"NTCIP1218","address":"172.16.17.96","port":161,"snmpAuth":{"user":"rsu","securityLevel":"authPriv","community":"public","authProtocol":"SHA-512","authPassPhrase":"rsuadmin","privacyProtocol":"AES","privacyPassPhrase":"rsuadmin"},"txMode":"CONT","signMessages":false,"messages":[{ "tmxType": "MAP-P", "sendType": "MAP", "psid": "0x8002", "channel": 183 },{ "tmxType": "PSM-P", "sendType": "PSM", "psid": "0x27", "channel": 183 },{"tmxType":"SSM-P","sendType":"SSM","psid":"0x8002","channel":183},{"tmxType":"SDSM","sendType":"SDSM","psid":"0x8010","channel":183}]}]

I am able to read and set the RSU operating mode with snmpset and snmpget from the Ubuntu machine hosting V2X-Hub:

$ snmpget -v 3 -t 1 -l authPriv -u rsu -A rsuadmin -X rsuadmin -a SHA-512 -x AES 172.16.17.96 1.3.6.1.4.1.1206.4.2.18.16.2.0
iso.3.6.1.4.1.1206.4.2.18.16.2.0 = INTEGER: 3
$ snmpset -v 3 -t 1 -l authPriv -u rsu -A rsuadmin -X rsuadmin -a SHA-512 -x AES 172.16.17.96 1.3.6.1.4.1.1206.4.2.18.16.2.0 i 2
iso.3.6.1.4.1.1206.4.2.18.16.2.0 = INTEGER: 2
$ snmpget -v 3 -t 0.01 -l authPriv -u rsu -A rsuadmin -X rsuadmin -a SHA-512 -x AES 172.16.17.96 1.3.6.1.4.1.1206.4.2.18.16.2.0
iso.3.6.1.4.1.1206.4.2.18.16.2.0 = INTEGER: 2

The RSU does not support AES-256. If I change the snmpset and snmpget privacy protocol argument to AES-256, I can reproduce the security service 3 error parsing ScopedPDU errors in the smpd logs on the RSU.

$ snmpget -v 3 -t 1 -l authPriv -u rsu -A rsuadmin -X rsuadmin -a SHA-512 -x AES-256 172.16.17.96 1.3.6.1.4.1.1206.4.2.18.16.2.0
Timeout: No Response from 172.16.17.96.

Related Work

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    anomalybugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions