mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-12 08:09:56 +00:00
usb: wusbcore: Use put_unaligned_le32
Use put_unaligned_le32 rather than using byte ordering function and memcpy which makes code clear. Also, add the header file where it is declared. Done using Coccinelle and semantic patch used is : @ rule1 @ identifier tmp; expression ptr,x; type T; @@ - tmp = cpu_to_le32(x); <+... when != tmp - memcpy(ptr, (T)&tmp, ...); + put_unaligned_le32(x,ptr); ...+> @ depends on rule1 @ type j; identifier tmp; @@ - j tmp; ...when != tmp Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
0621165623
commit
b6565a07ca
@ -28,6 +28,7 @@
|
||||
#include <linux/random.h>
|
||||
#include <linux/export.h>
|
||||
#include "wusbhc.h"
|
||||
#include <asm/unaligned.h>
|
||||
|
||||
static void wusbhc_gtk_rekey_work(struct work_struct *work);
|
||||
|
||||
@ -367,7 +368,6 @@ int wusb_dev_4way_handshake(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev,
|
||||
struct usb_device *usb_dev = wusb_dev->usb_dev;
|
||||
struct device *dev = &usb_dev->dev;
|
||||
u32 tkid;
|
||||
__le32 tkid_le;
|
||||
struct usb_handshake *hs;
|
||||
struct aes_ccm_nonce ccm_n;
|
||||
u8 mic[8];
|
||||
@ -385,11 +385,10 @@ int wusb_dev_4way_handshake(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev,
|
||||
goto error_dev_set_encryption;
|
||||
|
||||
tkid = wusbhc_next_tkid(wusbhc, wusb_dev);
|
||||
tkid_le = cpu_to_le32(tkid);
|
||||
|
||||
hs[0].bMessageNumber = 1;
|
||||
hs[0].bStatus = 0;
|
||||
memcpy(hs[0].tTKID, &tkid_le, sizeof(hs[0].tTKID));
|
||||
put_unaligned_le32(tkid, hs[0].tTKID);
|
||||
hs[0].bReserved = 0;
|
||||
memcpy(hs[0].CDID, &wusb_dev->cdid, sizeof(hs[0].CDID));
|
||||
get_random_bytes(&hs[0].nonce, sizeof(hs[0].nonce));
|
||||
@ -441,7 +440,7 @@ int wusb_dev_4way_handshake(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev,
|
||||
|
||||
/* Setup the CCM nonce */
|
||||
memset(&ccm_n.sfn, 0, sizeof(ccm_n.sfn)); /* Per WUSB1.0[6.5.2] */
|
||||
memcpy(ccm_n.tkid, &tkid_le, sizeof(ccm_n.tkid));
|
||||
put_unaligned_le32(tkid, ccm_n.tkid);
|
||||
ccm_n.src_addr = wusbhc->uwb_rc->uwb_dev.dev_addr;
|
||||
ccm_n.dest_addr.data[0] = wusb_dev->addr;
|
||||
ccm_n.dest_addr.data[1] = 0;
|
||||
@ -472,7 +471,7 @@ int wusb_dev_4way_handshake(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev,
|
||||
/* Send Handshake3 */
|
||||
hs[2].bMessageNumber = 3;
|
||||
hs[2].bStatus = 0;
|
||||
memcpy(hs[2].tTKID, &tkid_le, sizeof(hs[2].tTKID));
|
||||
put_unaligned_le32(tkid, hs[2].tTKID);
|
||||
hs[2].bReserved = 0;
|
||||
memcpy(hs[2].CDID, &wusb_dev->cdid, sizeof(hs[2].CDID));
|
||||
memcpy(hs[2].nonce, hs[0].nonce, sizeof(hs[2].nonce));
|
||||
|
Loading…
x
Reference in New Issue
Block a user