From ebdb3f9dc02a064ae1cb25a6edc182bb0a2f8231 Mon Sep 17 00:00:00 2001 From: Ian Gulliver Date: Mon, 22 Feb 2016 22:00:49 -0800 Subject: [PATCH] Pass source ID through to JSON output. --- adsbus/json.c | 1 + adsbus/packet.h | 1 + adsbus/receive.c | 4 +++- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/adsbus/json.c b/adsbus/json.c index 7939a5d..06599e2 100644 --- a/adsbus/json.c +++ b/adsbus/json.c @@ -33,6 +33,7 @@ static void json_hello(struct buf *buf) { static void json_add_common(struct packet *packet, json_t *obj) { json_object_set_new(obj, "type", json_string(packet_type_names[packet->type])); + json_object_set_new(obj, "source_id", json_string(packet->source_id)); if (packet->mlat_timestamp) { json_object_set_new(obj, "mlat_timestamp", json_integer(packet->mlat_timestamp)); } diff --git a/adsbus/packet.h b/adsbus/packet.h index 01d7b63..50c3f8e 100644 --- a/adsbus/packet.h +++ b/adsbus/packet.h @@ -4,6 +4,7 @@ #define PACKET_DATA_LEN_MAX 14 struct packet { + char *source_id; enum { MODE_S_SHORT, MODE_S_LONG, diff --git a/adsbus/receive.c b/adsbus/receive.c index b66e147..620311c 100644 --- a/adsbus/receive.c +++ b/adsbus/receive.c @@ -79,7 +79,9 @@ static void receive_read(struct peer *peer) { return; } - struct packet packet = { 0 }; + struct packet packet = { + .source_id = receive->id, + }; while (receive->parser_wrapper(receive, &packet)) { send_write(&packet); }