Hi, If the kernel sensor doesn't have a description, snmpd should fill something into that column to avoid an empty value. An empty value makes it really hard to tell what the sensor is.
Before: SNMPv2-SMI::enterprises.30155.2.1.2.1.2.1 = "" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.2 = "" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.3 = "" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.4 = "" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.5 = "" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.6 = "" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.7 = STRING: "VCore A" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.8 = STRING: "VCore B" After: SNMPv2-SMI::enterprises.30155.2.1.2.1.2.1 = STRING: "temp0" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.2 = STRING: "temp1" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.3 = STRING: "temp2" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.4 = STRING: "fan0" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.5 = STRING: "fan1" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.6 = STRING: "fan2" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.7 = STRING: "VCore A" SNMPv2-SMI::enterprises.30155.2.1.2.1.2.8 = STRING: "VCore B" ok? .joel Index: src/usr.sbin/snmpd/mib.c =================================================================== RCS file: /cvs/src/usr.sbin/snmpd/mib.c,v retrieving revision 1.47 diff -p -u -r1.47 mib.c --- src/usr.sbin/snmpd/mib.c 16 Sep 2011 20:52:48 -0000 1.47 +++ src/usr.sbin/snmpd/mib.c 30 Jan 2012 05:22:45 -0000 @@ -1271,6 +1271,7 @@ mib_sensors(struct oid *oid, struct ber_ size_t len = sizeof(sensordev); struct sensor sensor; size_t slen = sizeof(sensor); + char desc[32]; int mib[] = { CTL_HW, HW_SENSORS, 0, 0, 0 }; int i, j, k; u_int32_t idx = 0, n; @@ -1315,7 +1316,13 @@ mib_sensors(struct oid *oid, struct ber_ ber = ber_add_integer(ber, (int32_t)n); break; case 2: - ber = ber_add_string(ber, sensor.desc); + if (sensor.desc[0] == '\0') { + snprintf(desc, sizeof(desc), "%s%d", + sensor_type_s[sensor.type], + sensor.numt); + ber = ber_add_string(ber, desc); + } else + ber = ber_add_string(ber, sensor.desc); break; case 3: ber = ber_add_integer(ber, sensor.type);