New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 807836 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Mar 2018
Cc:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Feature



Sign in to add a comment

Migrate U2fApduCommand and U2fApduResponse to components/

Project Member Reported by hongjunchoi@chromium.org, Feb 1 2018

Issue description

APDU response and commands are protocol agnostic concept and is shared by both U2F and CTAP protocol. Migrate APDU related constructs to components to prevent duplicate logic. 
 
Cc: engedy@chromium.org
Status: Assigned (was: Untriaged)
+engedy@, Jun and I discussed this in response to your comment on the design doc draft "[...] First, I'm not sure if they belong there if they are not technically U2F. [...]" Moving the APDU logic to //components seemed plausible to us, since APDU also makes sense outside of U2F and CBOR already lives in //components. Do you agree with this?
Labels: -Type-Bug Type-Feature
This makes sense to me, minus the u2f-specific portions of u2f_apdu_command.cc. 
Project Member

Comment 4 by bugdroid1@chromium.org, Mar 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b49986d9f3e65687965074fa7816768b80ec50da

commit b49986d9f3e65687965074fa7816768b80ec50da
Author: Jun Choi <hongjunchoi@chromium.org>
Date: Tue Mar 13 20:01:44 2018

Move U2F encoding logic to U2fRequest interface

Move U2fApduCommand::Create{Version, Sign, Register}() to U2fRequest
interface. This is a preliminary work for migrating APDU to
src/components.

Bug:  807836 
Change-Id: I2db9f503d9925c891f789fa9abb06f26a9fe98f8
Reviewed-on: https://chromium-review.googlesource.com/923417
Commit-Queue: Jun Choi <hongjunchoi@chromium.org>
Reviewed-by: Jan Wilken Dörrie <jdoerrie@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542889}
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/ctap_constants.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/ctap_constants.h
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/public_key_credential_params.h
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_apdu_command.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_apdu_command.h
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_apdu_fuzzer.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_apdu_unittest.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_device.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_device.h
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_hid_device_unittest.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_register.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_register_unittest.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_request.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_request.h
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_request_unittest.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_sign.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/u2f_sign_unittest.cc
[modify] https://crrev.com/b49986d9f3e65687965074fa7816768b80ec50da/device/fido/virtual_u2f_device.cc

Project Member

Comment 5 by bugdroid1@chromium.org, Mar 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ab08b82f4fa2710ed0258dc0cc39a7460b070655

commit ab08b82f4fa2710ed0258dc0cc39a7460b070655
Author: Jun Choi <hongjunchoi@chromium.org>
Date: Tue Mar 13 21:53:31 2018

Rename ctap_constants.h to fido_constants.h

Bug:  807836 
Change-Id: I39670c95488885d94da2f96968b686213f31eb2b
Reviewed-on: https://chromium-review.googlesource.com/953660
Commit-Queue: Jun Choi <hongjunchoi@chromium.org>
Reviewed-by: Jan Wilken Dörrie <jdoerrie@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542924}
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/BUILD.gn
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/authenticator_get_assertion_response.h
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/authenticator_get_info_response.h
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/authenticator_make_credential_response.h
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/ctap_empty_authenticator_request.h
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/ctap_get_assertion_request.cc
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/ctap_make_credential_request.cc
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/ctap_request_unittest.cc
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/ctap_response_fuzzer.cc
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/ctap_response_unittest.cc
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/device_response_converter.cc
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/device_response_converter.h
[rename] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/fido_constants.cc
[rename] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/fido_constants.h
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/fido_hid_message.h
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/fido_hid_message_unittest.cc
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/fido_hid_packet.h
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/public_key_credential_params.h
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/u2f_register_unittest.cc
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/u2f_request.h
[modify] https://crrev.com/ab08b82f4fa2710ed0258dc0cc39a7460b070655/device/fido/virtual_u2f_device.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Mar 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3545f505b3de5ab199d8d1e45c887d0d945f927c

commit 3545f505b3de5ab199d8d1e45c887d0d945f927c
Author: Jun Choi <hongjunchoi@chromium.org>
Date: Wed Mar 14 01:30:00 2018

Migrate device/u2f/apdu to src/components

U2fApduCommand and U2fApduResponse objects in device/u2f are transport
and protocol agnostic. Migrate all APDU related objects and tests to
src/components.

Bug:  807836 
Change-Id: I96e71128eb0fcf13b8c38fc7e9a4d0b31203c99f
Reviewed-on: https://chromium-review.googlesource.com/896965
Commit-Queue: Jun Choi <hongjunchoi@chromium.org>
Reviewed-by: Jan Wilken Dörrie <jdoerrie@chromium.org>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542979}
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/components/BUILD.gn
[add] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/components/apdu/BUILD.gn
[add] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/components/apdu/OWNERS
[add] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/components/apdu/apdu_command.cc
[rename] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/components/apdu/apdu_command.h
[add] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/components/apdu/apdu_fuzzer.cc
[add] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/components/apdu/apdu_response.cc
[add] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/components/apdu/apdu_response.h
[add] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/components/apdu/apdu_unittest.cc
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/BUILD.gn
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/BUILD.gn
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/DEPS
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/mock_u2f_device.cc
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/mock_u2f_device.h
[delete] https://crrev.com/a276a89f2a28527a472fa41ba07ab4aa090097cd/device/fido/u2f_apdu_command.cc
[delete] https://crrev.com/a276a89f2a28527a472fa41ba07ab4aa090097cd/device/fido/u2f_apdu_fuzzer.cc
[delete] https://crrev.com/a276a89f2a28527a472fa41ba07ab4aa090097cd/device/fido/u2f_apdu_response.cc
[delete] https://crrev.com/a276a89f2a28527a472fa41ba07ab4aa090097cd/device/fido/u2f_apdu_response.h
[delete] https://crrev.com/a276a89f2a28527a472fa41ba07ab4aa090097cd/device/fido/u2f_apdu_unittest.cc
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/u2f_ble_device.cc
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/u2f_ble_discovery.cc
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/u2f_device.cc
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/u2f_device.h
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/u2f_hid_device.cc
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/u2f_hid_device.h
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/u2f_hid_device_unittest.cc
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/u2f_request.cc
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/u2f_request.h
[modify] https://crrev.com/3545f505b3de5ab199d8d1e45c887d0d945f927c/device/fido/virtual_u2f_device.cc

Status: Fixed (was: Assigned)

Sign in to add a comment