Corrupted double-linked list with SNMP check

I am getting the mentioned error with “check_interfaces” whereas via cli it just works. Thats why I’ve put it into the Icingaweb category.
I have not found anything related to Icinga/icingaweb when searching for this error. Has anyone around had this error or could possibly tell what it is causing?


What version of Icinga2 are you using ?
Are you using Director or configuration files ?
Can you share your configuration ?
Can you show the CLI execution and output ?
These are things that will help us understand the issue without needing to guess.

Icinga2 Version:
icinga2 - The Icinga 2 network monitoring daemon (version: r2.10.3-1)

System information:
Platform: Debian GNU/Linux
Platform version: 10 (buster)
Kernel: Linux
Kernel version: 4.19.0-6-amd64
Architecture: x86_64

No Director - config files only

service configuration:

/* SNMP-Options */
vars.interfaces_community = "reader"
vars.interfaces_match_aliases = true
vars.interfaces_names = true

/* Interfaces */
vars.interfaces["[System] Trunk Port Status - stor03e0c1+e0d1"] = {
  interfaces_regex = "^(1|2)/11"

command output:

[2020-01-15 10:40:11 +0100] 
warning/PluginCheckTask: Check command for object '![System] Trunk Port Status - switch0406'
arguments: '/usr/lib/nagios/plugins/check_interfaces' '--community' 'reader' '--hostname' '' '--if-names' '--match-aliases' '--regex' '^(1|2)/1') 
terminated with exit code 128
output: corrupted double-linked list

edit: I should add that this check is working just fine with other switches

Is this switch different then the others ?
Could it be it has different firmware version ?

Can you query it in a CLI command, where you add the params manually ?

Is this switch different then the others ?
It’s an Aruba Switch whereas the others are older HP Switches
Could it be it has different firmware version ?
sure has, as its a newer switch
Can you query it in a CLI command, where you add the params manually ?

root@icinga2-m01:/etc/icinga2# '/usr/lib/nagios/plugins/check_interfaces' 
'--community' 'reader' '--errors' '1' '--hostname' '' '--if-names' '--match-aliases' '--out-errors' '1' '--regex' '^(1|2)/11'
OK: 2 interfaces found - 10 are administratively down | interfaces::check_multi::plugins=-8 time=0.25 device::check_snmp::uptime=28159722s 1/11::check_snmp::inOctets=2286848640721842c outOctets=87028296071931c inDiscards=9c outDiscards=4378c inErrors=0c outErrors=0c inUcast=3863524097c outUcast=3710560487c speed=10000000000 2/11::check_snmp::inOctets=765976020726108c outOctets=333839145336233c inDiscards=0c outDiscards=141111c inErrors=0c outErrors=0c inUcast=1209267309c outUcast=4041428822c speed=10000000000
[OK] 1/11 is up
[OK] 2/11 is up

I just compared the two commands, this one is the one you gave from the Icinga inspect:
'/usr/lib/nagios/plugins/check_interfaces' '--community' 'reader' '--errors' '1' '--hostname' '' '--if-names' '--match-aliases' '--out-errors' '1' '--regex' '^(1|2)/11'

This one is from the CLI:
'/usr/lib/nagios/plugins/check_interfaces' '--community' 'reader' '--hostname' '' '--if-names' '--match-aliases' '--regex' '^(1|2)/1')

Notice the regex is different ( I am disregarding the additional parameters) .
It might be that you need to create a custom check for this switch because it does not behave differently then the others.

I don’t get why this would only work via cli, sorry. Do you know what the error means?
The regex, I just missed that while copy/pasting.

Sorry, no.
Could it be that you need to escape the special chars in the regex ?