From 94cc319b8e35115f4571ca0a4a12cefdd20aa038 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Tue, 25 Jan 2022 16:40:27 +0100 Subject: [PATCH] host: properly zero-initialize interface match structures This can lead to some fields not properly zero-initialized, fooling our matching code into the application having requested certain fields to match ('0' is usually assumed to be unspecified). Change-Id: I304d55b584e37d9dccb75b24057bb682f799beb2 --- host/src/simtrace2-cardem-pcsc.c | 1 + host/src/simtrace2-tool.c | 1 + 2 files changed, 2 insertions(+) diff --git a/host/src/simtrace2-cardem-pcsc.c b/host/src/simtrace2-cardem-pcsc.c index 3ec75098..8b08f36f 100644 --- a/host/src/simtrace2-cardem-pcsc.c +++ b/host/src/simtrace2-cardem-pcsc.c @@ -549,6 +549,7 @@ int main(int argc, char **argv) do { struct usb_interface_match _ifm, *ifm = &_ifm; + memset(ifm, 0, sizeof(*ifm)); ifm->vendor = vendor_id; ifm->product = product_id; ifm->configuration = config_id; diff --git a/host/src/simtrace2-tool.c b/host/src/simtrace2-tool.c index d7057967..9c9b5ed6 100644 --- a/host/src/simtrace2-tool.c +++ b/host/src/simtrace2-tool.c @@ -303,6 +303,7 @@ int main(int argc, char **argv) do { if (transp->udp_fd < 0) { struct usb_interface_match _ifm, *ifm = &_ifm; + memset(ifm, 0, sizeof(*ifm)); ifm->vendor = vendor_id; ifm->product = product_id; ifm->configuration = config_id;