summaryrefslogtreecommitdiff
path: root/util/nvmutil/nvmutil.c
diff options
context:
space:
mode:
Diffstat (limited to 'util/nvmutil/nvmutil.c')
-rw-r--r--util/nvmutil/nvmutil.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/util/nvmutil/nvmutil.c b/util/nvmutil/nvmutil.c
index ff74403e..f39cd65f 100644
--- a/util/nvmutil/nvmutil.c
+++ b/util/nvmutil/nvmutil.c
@@ -468,10 +468,7 @@ set_mac_nib(size_t mac_str_pos, size_t mac_nib_pos)
uint8_t mac_ch;
size_t mac_byte_pos;
-
- size_t mac_buf_word_pos;
- size_t mac_buf_byte_pos;
- size_t mac_buf_nib_pos;
+ size_t mac_word_left_shift;
if ((mac_ch = hextonum(mac_str[mac_str_pos + mac_nib_pos])) > 15)
err(EINVAL, "Invalid character '%c'",
@@ -496,15 +493,15 @@ set_mac_nib(size_t mac_str_pos, size_t mac_nib_pos)
*
* Later code using the MAC string will handle this.
*/
- mac_buf_word_pos = mac_byte_pos >> 1;
- mac_buf_byte_pos = (mac_byte_pos & 1) << 3; /* left or right byte? */
- mac_buf_nib_pos = (mac_nib_pos ^ 1) << 2; /* left or right nib? */
+ mac_word_left_shift =
+ ((mac_byte_pos & 1) << 3) /* left or right byte? */
+ | ((mac_nib_pos ^ 1) << 2); /* left or right nib? */
/*
* Now we can shift properly, OR'ing the result:
*/
- mac_buf[mac_buf_word_pos] |= (uint16_t)mac_ch <<
- (mac_buf_byte_pos | mac_buf_nib_pos);
+ mac_buf[mac_byte_pos >> 1] |=
+ (uint16_t)mac_ch << mac_word_left_shift;
}
static uint8_t