summaryrefslogtreecommitdiff
path: root/pkg/libfido2/patch/0005-dev-avoid-use-of-packed-struct.patch
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2020-04-15 15:48:58 -0700
committerMichael Forney <mforney@mforney.org>2020-04-15 19:07:19 -0700
commit73f62cd40a9db1f012d2e95b8f7a77d95845f80e (patch)
tree397dad316397dbdd4094901e75b43ae904be5886 /pkg/libfido2/patch/0005-dev-avoid-use-of-packed-struct.patch
parent60636d3b1a15c00a6488ed2287499a0ffc0b0c16 (diff)
libfido2: Update to 1.4.0
Diffstat (limited to 'pkg/libfido2/patch/0005-dev-avoid-use-of-packed-struct.patch')
-rw-r--r--pkg/libfido2/patch/0005-dev-avoid-use-of-packed-struct.patch53
1 files changed, 28 insertions, 25 deletions
diff --git a/pkg/libfido2/patch/0005-dev-avoid-use-of-packed-struct.patch b/pkg/libfido2/patch/0005-dev-avoid-use-of-packed-struct.patch
index c31e64db..6e475b34 100644
--- a/pkg/libfido2/patch/0005-dev-avoid-use-of-packed-struct.patch
+++ b/pkg/libfido2/patch/0005-dev-avoid-use-of-packed-struct.patch
@@ -1,28 +1,31 @@
-From 38ddc101ebcf864112f646026e149a6b0cc7f44a Mon Sep 17 00:00:00 2001
+From 99d08a98c903a38ce4ca2f689feb871c1ef01a26 Mon Sep 17 00:00:00 2001
From: Michael Forney <mforney@mforney.org>
Date: Tue, 26 Nov 2019 19:02:46 -0800
Subject: [PATCH] dev: avoid use of packed struct
---
- src/dev.c | 13 +++++++++++--
- src/types.h | 5 ++---
- 2 files changed, 13 insertions(+), 5 deletions(-)
+ src/dev.c | 15 ++++++++++++---
+ src/fido/types.h | 5 ++---
+ 2 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/src/dev.c b/src/dev.c
-index d0efac7..d24f707 100644
+index 51b9935..6049cc6 100644
--- a/src/dev.c
+++ b/src/dev.c
-@@ -102,19 +102,28 @@ fido_dev_open_tx(fido_dev_t *dev, const char *path)
- static int
+@@ -145,21 +145,30 @@ static int
fido_dev_open_rx(fido_dev_t *dev, int ms)
{
-+ uint8_t data[17];
- const uint8_t cmd = CTAP_FRAME_INIT | CTAP_CMD_INIT;
- int n;
+ fido_cbor_info_t *info = NULL;
++ uint8_t data[17];
+ int reply_len;
+ int r;
-- if ((n = fido_rx(dev, cmd, &dev->attr, sizeof(dev->attr), ms)) < 0) {
-+ if ((n = fido_rx(dev, cmd, data, sizeof(data), ms)) < 0) {
+- if ((reply_len = fido_rx(dev, CTAP_CMD_INIT, &dev->attr,
+- sizeof(dev->attr), ms)) < 0) {
++ if ((reply_len = fido_rx(dev, CTAP_CMD_INIT, data,
++ sizeof(data), ms)) < 0) {
fido_log_debug("%s: fido_rx", __func__);
+ r = FIDO_ERR_RX;
goto fail;
}
@@ -38,17 +41,17 @@ index d0efac7..d24f707 100644
dev->attr.nonce = dev->nonce;
#endif
-- if ((size_t)n != sizeof(dev->attr) || dev->attr.nonce != dev->nonce) {
-+ if ((size_t)n != sizeof(data) || dev->attr.nonce != dev->nonce) {
+- if ((size_t)reply_len != sizeof(dev->attr) ||
++ if ((size_t)reply_len != sizeof(data) ||
+ dev->attr.nonce != dev->nonce) {
fido_log_debug("%s: invalid nonce", __func__);
- goto fail;
- }
-diff --git a/src/types.h b/src/types.h
-index 42ed1b7..af72710 100644
---- a/src/types.h
-+++ b/src/types.h
-@@ -148,9 +148,8 @@ typedef struct fido_dev_info {
- char *product; /* product string */
+ r = FIDO_ERR_RX;
+diff --git a/src/fido/types.h b/src/fido/types.h
+index 5df5e36..a8ce2ec 100644
+--- a/src/fido/types.h
++++ b/src/fido/types.h
+@@ -194,9 +194,8 @@ typedef struct fido_dev_info {
+ fido_dev_transport_t transport; /* transport functions */
} fido_dev_info_t;
-PACKED_TYPE(fido_ctap_info_t,
@@ -58,7 +61,7 @@ index 42ed1b7..af72710 100644
uint64_t nonce; /* echoed nonce */
uint32_t cid; /* channel id */
uint8_t protocol; /* ctaphid protocol id */
-@@ -158,7 +157,7 @@ struct fido_ctap_info {
+@@ -204,7 +203,7 @@ struct fido_ctap_info {
uint8_t minor; /* minor version number */
uint8_t build; /* build version number */
uint8_t flags; /* capabilities flags; see FIDO_CAP_* */
@@ -66,7 +69,7 @@ index 42ed1b7..af72710 100644
+} fido_ctap_info_t;
typedef struct fido_dev {
- uint64_t nonce; /* issued nonce */
+ uint64_t nonce; /* issued nonce */
--
-2.24.0
+2.26.1