Skip to content

Commit 36c46e7

Browse files
committed
Add AES signature to emitted JSON
1 parent bee65da commit 36c46e7

File tree

1 file changed

+8
-3
lines changed
  • host/openbeacon-mqtt/src

1 file changed

+8
-3
lines changed

host/openbeacon-mqtt/src/main.c

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -132,9 +132,9 @@ send_error(double timestamp, struct sockaddr_in *reader_addr, char *error_msg, u
132132

133133

134134
void
135-
send_packet(double timestamp, struct sockaddr_in *reader_addr, const TBeaconNgTracker *track)
135+
send_packet(double timestamp, struct sockaddr_in *reader_addr, const uint8_t *signature, const TBeaconNgTracker *track)
136136
{
137-
int i = 0;
137+
int i = 0, j;
138138
uint32_t t;
139139
const TBeaconNgSighting *slot;
140140

@@ -149,6 +149,11 @@ send_packet(double timestamp, struct sockaddr_in *reader_addr, const TBeaconNgTr
149149
track->epoch
150150
);
151151

152+
i += sprintf(buf+i, "\"crc\":\"");
153+
for (j=0; j<CONFIG_SIGNATURE_SIZE; j++)
154+
i += sprintf(buf+i, "%02X", signature[j]);
155+
i += sprintf(buf+i, "\",");
156+
152157
/* show specific fields */
153158
switch(track->proto)
154159
{
@@ -249,7 +254,7 @@ parse_packet (double timestamp, struct sockaddr_in *reader_addr, const void *dat
249254
}
250255

251256
/* show & process latest packet */
252-
send_packet(timestamp, reader_addr, &track);
257+
send_packet(timestamp, reader_addr, ((uint8_t *) &pkt->log) + sizeof(track) - CONFIG_SIGNATURE_SIZE, &track);
253258

254259
return sizeof(TBeaconLogSighting);
255260
}

0 commit comments

Comments
 (0)