BLF: Give a different message for known but unsupported object types
authorGiovanni Musto <giovanni.musto@partner.italdesign.it>
Mon, 30 Oct 2023 07:27:44 +0000 (08:27 +0100)
committerAndersBroman <a.broman58@gmail.com>
Tue, 31 Oct 2023 06:28:09 +0000 (06:28 +0000)
Echo the "unknown object" message with the info level

wiretap/blf.c
wiretap/blf.h

index ada77402e328a11a97cd30c133019384a957b509..a373b3fdf933907208f5ae96d7143b4dbeb51b51 100644 (file)
@@ -2798,9 +2798,20 @@ blf_read_block(blf_params_t *params, gint64 start_pos, int *err, gchar **err_inf
             return blf_read_ethernet_phystate(params, err, err_info, start_pos, start_pos + header.header_length, header.object_length, flags, object_timestamp);
             break;
 
+        case BLF_OBJTYPE_ENV_INTEGER:
+        case BLF_OBJTYPE_ENV_DOUBLE:
+        case BLF_OBJTYPE_ENV_STRING:
+        case BLF_OBJTYPE_ENV_DATA:
+        case BLF_OBJTYPE_SYS_VARIABLE:
+        case BLF_OBJTYPE_RESERVED5: /* Despite the name, this is actually used. Maybe it's worth investigating the content. */
+        case BLF_OBJTYPE_TEST_STRUCTURE:
+            ws_debug("skipping unsupported object type 0x%04x", header.object_type);
+            start_pos += MAX(MAX(16, header.object_length), header.header_length);
+            break;
         default:
-            ws_debug("unknown object type 0x%04x", header.object_type);
+            ws_info("unknown object type 0x%04x", header.object_type);
             start_pos += MAX(MAX(16, header.object_length), header.header_length);
+            break;
         }
     }
     return TRUE;
index 84e8cfb79224f8e9fd1852532200efd6c6cc6aa1..6d4407c4f575b5b06677f5271c59178fbf23d057 100644 (file)
@@ -716,6 +716,9 @@ typedef struct blf_ethernet_phystate {
 #define BLF_OBJTYPE_A429_BUS_STATISTIC          112
 #define BLF_OBJTYPE_A429_MESSAGE                113
 #define BLF_OBJTYPE_ETHERNET_STATISTIC          114
+#define BLF_OBJTYPE_RESERVED5                   115
+#define BLF_OBJTYPE_RESERVED6                   116
+#define BLF_OBJTYPE_RESERVED7                   117
 #define BLF_OBJTYPE_TEST_STRUCTURE              118
 #define BLF_OBJTYPE_DIAG_REQUEST_INTERPRETATION 119
 #define BLF_OBJTYPE_ETHERNET_FRAME_EX           120