From 7f666d445cb3e9d392d7577e29ea9967b037f9ff Mon Sep 17 00:00:00 2001 From: Yann GASCUEL <34003959+lnv42@users.noreply.github.com> Date: Wed, 24 Jan 2024 13:56:38 +0100 Subject: [PATCH] cmd_hf_15: fix & simplify flag parsing --- client/src/cmdhf15.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/client/src/cmdhf15.c b/client/src/cmdhf15.c index 56e1f24b5..c6eb887c5 100644 --- a/client/src/cmdhf15.c +++ b/client/src/cmdhf15.c @@ -532,15 +532,13 @@ static uint8_t arg_add_default(void *at[]) { } static uint16_t arg_get_raw_flag(uint8_t uidlen, bool unaddressed, bool scan, bool add_option) { uint16_t flags = 0; - if (unaddressed) { - // unaddressed mode may not be supported by all vendors - flags |= (ISO15_REQ_SUBCARRIER_SINGLE | ISO15_REQ_DATARATE_HIGH | ISO15_REQ_NONINVENTORY); +; + if (uidlen == 8 || scan || unaddressed) { + flags = (ISO15_REQ_SUBCARRIER_SINGLE | ISO15_REQ_DATARATE_HIGH | ISO15_REQ_NONINVENTORY); } - if (uidlen == 8) { - flags |= (ISO15_REQ_SUBCARRIER_SINGLE | ISO15_REQ_DATARATE_HIGH | ISO15_REQ_NONINVENTORY | ISO15_REQ_ADDRESS); - } - if (scan) { - flags |= (ISO15_REQ_SUBCARRIER_SINGLE | ISO15_REQ_DATARATE_HIGH | ISO15_REQ_NONINVENTORY | ISO15_REQ_ADDRESS); + if ((!unaddressed) || scan) + { + flags |= ISO15_REQ_ADDRESS; } if (add_option) { flags |= (ISO15_REQ_OPTION);