Lines Matching refs:hs
370 struct usb_handshake *hs; in wusb_dev_4way_handshake() local
376 hs = kcalloc(3, sizeof(hs[0]), GFP_KERNEL); in wusb_dev_4way_handshake()
377 if (hs == NULL) { in wusb_dev_4way_handshake()
391 hs[0].bMessageNumber = 1; in wusb_dev_4way_handshake()
392 hs[0].bStatus = 0; in wusb_dev_4way_handshake()
393 memcpy(hs[0].tTKID, &tkid_le, sizeof(hs[0].tTKID)); in wusb_dev_4way_handshake()
394 hs[0].bReserved = 0; in wusb_dev_4way_handshake()
395 memcpy(hs[0].CDID, &wusb_dev->cdid, sizeof(hs[0].CDID)); in wusb_dev_4way_handshake()
396 get_random_bytes(&hs[0].nonce, sizeof(hs[0].nonce)); in wusb_dev_4way_handshake()
397 memset(hs[0].MIC, 0, sizeof(hs[0].MIC)); /* Per WUSB1.0[T7-22] */ in wusb_dev_4way_handshake()
403 1, 0, &hs[0], sizeof(hs[0]), USB_CTRL_SET_TIMEOUT); in wusb_dev_4way_handshake()
414 2, 0, &hs[1], sizeof(hs[1]), USB_CTRL_GET_TIMEOUT); in wusb_dev_4way_handshake()
421 if (hs[1].bMessageNumber != 2) { in wusb_dev_4way_handshake()
423 hs[1].bMessageNumber); in wusb_dev_4way_handshake()
426 if (hs[1].bStatus != 0) { in wusb_dev_4way_handshake()
428 hs[1].bStatus); in wusb_dev_4way_handshake()
431 if (memcmp(hs[0].tTKID, hs[1].tTKID, sizeof(hs[0].tTKID))) { in wusb_dev_4way_handshake()
434 hs[0].tTKID[0], hs[0].tTKID[1], hs[0].tTKID[2], in wusb_dev_4way_handshake()
435 hs[1].tTKID[0], hs[1].tTKID[1], hs[1].tTKID[2]); in wusb_dev_4way_handshake()
438 if (memcmp(hs[0].CDID, hs[1].CDID, sizeof(hs[0].CDID))) { in wusb_dev_4way_handshake()
451 memcpy(keydvt_in.hnonce, hs[0].nonce, sizeof(keydvt_in.hnonce)); in wusb_dev_4way_handshake()
452 memcpy(keydvt_in.dnonce, hs[1].nonce, sizeof(keydvt_in.dnonce)); in wusb_dev_4way_handshake()
461 result = wusb_oob_mic(mic, keydvt_out.kck, &ccm_n, &hs[1]); in wusb_dev_4way_handshake()
468 if (memcmp(hs[1].MIC, mic, sizeof(hs[1].MIC))) { in wusb_dev_4way_handshake()
474 hs[2].bMessageNumber = 3; in wusb_dev_4way_handshake()
475 hs[2].bStatus = 0; in wusb_dev_4way_handshake()
476 memcpy(hs[2].tTKID, &tkid_le, sizeof(hs[2].tTKID)); in wusb_dev_4way_handshake()
477 hs[2].bReserved = 0; in wusb_dev_4way_handshake()
478 memcpy(hs[2].CDID, &wusb_dev->cdid, sizeof(hs[2].CDID)); in wusb_dev_4way_handshake()
479 memcpy(hs[2].nonce, hs[0].nonce, sizeof(hs[2].nonce)); in wusb_dev_4way_handshake()
480 result = wusb_oob_mic(hs[2].MIC, keydvt_out.kck, &ccm_n, &hs[2]); in wusb_dev_4way_handshake()
491 3, 0, &hs[2], sizeof(hs[2]), USB_CTRL_SET_TIMEOUT); in wusb_dev_4way_handshake()
524 memset(hs, 0, 3*sizeof(hs[0])); in wusb_dev_4way_handshake()
532 kfree(hs); in wusb_dev_4way_handshake()