logo

oasis

Own branch of Oasis Linux (upstream: <https://git.sr.ht/~mcf/oasis/>) git clone https://anongit.hacktivis.me/git/oasis.git
commit: db57e3849760fe7a9de6db220a11a4669db7edb1
parent 5af895d0820c2bf793bb9c61b0cda3b848d1780a
Author: Michael Forney <mforney@mforney.org>
Date:   Fri, 21 Feb 2020 12:00:31 -0800

libfido2: Update to 1.3.1

Diffstat:

Mpkg/libfido2/patch/0004-iso7816-avoid-use-of-packed-struct.patch10+++++-----
Mpkg/libfido2/patch/0006-cbor-u2f-avoid-use-of-packed-struct.patch10++++------
Mpkg/libfido2/ver2+-
3 files changed, 10 insertions(+), 12 deletions(-)

diff --git a/pkg/libfido2/patch/0004-iso7816-avoid-use-of-packed-struct.patch b/pkg/libfido2/patch/0004-iso7816-avoid-use-of-packed-struct.patch @@ -1,4 +1,4 @@ -From b688eb258efa9c07c1deb807ed441bd04cb4e30a Mon Sep 17 00:00:00 2001 +From 690f731a76b027e1bd4009620524e4c4810b3a28 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Tue, 26 Nov 2019 18:58:05 -0800 Subject: [PATCH] iso7816: avoid use of packed struct @@ -9,7 +9,7 @@ Subject: [PATCH] iso7816: avoid use of packed struct 2 files changed, 33 insertions(+), 39 deletions(-) diff --git a/src/iso7816.c b/src/iso7816.c -index e2ea281..3453df0 100644 +index a3fd280..dac5733 100644 --- a/src/iso7816.c +++ b/src/iso7816.c @@ -7,24 +7,40 @@ @@ -40,8 +40,8 @@ index e2ea281..3453df0 100644 - size_t alloc_len; + size_t max_len; -- alloc_len = sizeof(iso7816_apdu_t) + payload_len; -+ max_len = DATA + payload_len; +- alloc_len = sizeof(iso7816_apdu_t) + payload_len + 2; /* le1 le2 */ ++ max_len = DATA + payload_len + 2; /* le1 le2 */; - if ((apdu = calloc(1, alloc_len)) == NULL) + if ((apdu = calloc(1, sizeof(*apdu) + max_len)) == NULL) @@ -137,5 +137,5 @@ index 426cd97..fecfecc 100644 const unsigned char *iso7816_ptr(const iso7816_apdu_t *); int iso7816_add(iso7816_apdu_t *, const void *, size_t); -- -2.24.0 +2.25.1 diff --git a/pkg/libfido2/patch/0006-cbor-u2f-avoid-use-of-packed-struct.patch b/pkg/libfido2/patch/0006-cbor-u2f-avoid-use-of-packed-struct.patch @@ -1,10 +1,8 @@ -From d95bfdbcaadd92fbe04df8b3134be1886377e7a2 Mon Sep 17 00:00:00 2001 +From fa78eaaf9629f94fbe26bc9cc1ad49d3a4afb6c8 Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Tue, 26 Nov 2019 19:30:10 -0800 Subject: [PATCH] cbor, u2f: avoid use of packed struct -This also fixes a bug on big-endian systems where the credential -ID length is placed in the wrong byte. --- src/cbor.c | 14 +++++++++-- src/types.h | 14 ++--------- @@ -80,7 +78,7 @@ index af72710..af1874a 100644 typedef struct fido_attcred { unsigned char aaguid[16]; /* credential's aaguid */ diff --git a/src/u2f.c b/src/u2f.c -index 22c6ac9..6db32c5 100644 +index 1512986..6db32c5 100644 --- a/src/u2f.c +++ b/src/u2f.c @@ -15,6 +15,29 @@ @@ -193,12 +191,12 @@ index 22c6ac9..6db32c5 100644 + CTAP_AUTHDATA_USER_PRESENT); - memset(&attcred_raw.aaguid, 0, sizeof(attcred_raw.aaguid)); -- attcred_raw.id_len = (uint16_t)(kh_len << 8); /* XXX */ +- attcred_raw.id_len = htobe16(kh_len); + /* big-endian, so second byte is LSB */ + attcred_raw[ATTCRED_CREDENTIAL_ID_LENGTH + 1] = kh_len; len = authdata_blob.len = sizeof(authdata) + sizeof(attcred_raw) + kh_len + pk_blob.len; -- -2.24.0 +2.25.1 diff --git a/pkg/libfido2/ver b/pkg/libfido2/ver @@ -1 +1 @@ -1.3.0 r0 +1.3.1 r0