summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLwazi Dube <[email protected]>2025-11-07 16:38:11 -0500
committerLwazi Dube <[email protected]>2025-11-07 18:08:14 -0500
commitdc196b2b95f0ab3573cb10543e32a08810cefe3f (patch)
tree1bf942c6cea61f6b35f2a3adf74fe51e2f8ccc1b /src
parent91c3a4fa8d1a88880f262b2a3a227374128de3f3 (diff)
Prevent tu_edpt_number() from returning an invalid endpoint number
Diffstat (limited to 'src')
-rw-r--r--src/common/tusb_types.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/common/tusb_types.h b/src/common/tusb_types.h
index a3a660d3b..73c816e3e 100644
--- a/src/common/tusb_types.h
+++ b/src/common/tusb_types.h
@@ -103,6 +103,7 @@ typedef enum {
TUSB_DIR_OUT = 0,
TUSB_DIR_IN = 1,
+ TUSB_EPNUM_MASK = 0x0F,
TUSB_DIR_IN_MASK = 0x80
} tusb_dir_t;
@@ -544,7 +545,7 @@ TU_ATTR_ALWAYS_INLINE static inline tusb_dir_t tu_edpt_dir(uint8_t addr) {
// Get Endpoint number from address
TU_ATTR_ALWAYS_INLINE static inline uint8_t tu_edpt_number(uint8_t addr) {
- return (uint8_t) (addr & (~TUSB_DIR_IN_MASK));
+ return (uint8_t) (addr & TUSB_EPNUM_MASK);
}
TU_ATTR_ALWAYS_INLINE static inline uint8_t tu_edpt_addr(uint8_t num, uint8_t dir) {