+telemetry_legacy_init(const char *runtime_dir, rte_cpuset_t *cpuset)
+{
+ pthread_t t_old;
+
+ if (num_legacy_callbacks == 1) {
+ snprintf(telemetry_log_error, sizeof(telemetry_log_error),
+ "No legacy callbacks, legacy socket not created");
+ return -1;
+ }
+
+ v1_socket.fn = legacy_client_handler;
+ if ((size_t) snprintf(v1_socket.path, sizeof(v1_socket.path),
+ "%s/telemetry", runtime_dir)
+ >= sizeof(v1_socket.path)) {
+ snprintf(telemetry_log_error, sizeof(telemetry_log_error),
+ "Error with socket binding, path too long");
+ return -1;
+ }
+ v1_socket.sock = create_socket(v1_socket.path);
+ if (v1_socket.sock < 0)
+ return -1;
+ pthread_create(&t_old, NULL, socket_listener, &v1_socket);
+ pthread_setaffinity_np(t_old, sizeof(*cpuset), cpuset);
+
+ return 0;
+}
+
+static int
+telemetry_v2_init(const char *runtime_dir, rte_cpuset_t *cpuset)