1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-25 06:23:53 +01:00

Merge pull request #8938 from bergzand/pr/cn-cbor-update

pkg/cn-cbor: Bump version, remove patch
This commit is contained in:
Kaspar Schleiser 2018-04-12 22:16:07 +02:00 committed by GitHub
commit c11932ae2a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 4 additions and 38 deletions

View File

@ -1,6 +1,6 @@
PKG_NAME=cn-cbor
PKG_URL=https://github.com/cabo/cn-cbor
PKG_VERSION=2f9c3b1931eb012909e74f3b628e6a31fd446ad1
PKG_VERSION=f1cf9ffdf5cfab935a45900556f9b68af925c256
PKG_LICENSE=MIT
.PHONY: all

View File

@ -1,3 +1,6 @@
MODULE := cn-cbor
# Enable code forcing aligned reads
CFLAGS += -DCBOR_ALIGN_READS
include $(RIOTBASE)/Makefile.base

View File

@ -1,37 +0,0 @@
From a8ad896613571b16c53d9915f7b413fae7ea2879 Mon Sep 17 00:00:00 2001
From: Kaspar Schleiser <kaspar@schleiser.de>
Date: Fri, 16 Mar 2018 15:33:00 +0100
Subject: [PATCH] implement alignment-safe ntoh16p() && ntoh32p()
---
src/cn-cbor.c | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/src/cn-cbor.c b/src/cn-cbor.c
index a7677ae..400de5f 100644
--- a/src/cn-cbor.c
+++ b/src/cn-cbor.c
@@ -51,8 +51,18 @@ static double decode_half(int half) {
/* Fix these if you can't do non-aligned reads */
#define ntoh8p(p) (*(unsigned char*)(p))
-#define ntoh16p(p) (ntohs(*(unsigned short*)(p)))
-#define ntoh32p(p) (ntohl(*(unsigned long*)(p)))
+static uint16_t ntoh16p(unsigned char *p) {
+ uint16_t tmp;
+ memcpy(&tmp, p, sizeof(tmp));
+ return ntohs(tmp);
+}
+
+static uint32_t ntoh32p(unsigned char *p) {
+ uint32_t tmp;
+ memcpy(&tmp, p, sizeof(tmp));
+ return ntohl(tmp);
+}
+
static uint64_t ntoh64p(unsigned char *p) {
uint64_t ret = ntoh32p(p);
ret <<= 32;
--
2.16.2