New issue
Advanced search Search tips

Issue 709645 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Apr 2017
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

'biod_client_tool unenroll' fails with D-Bus error

Project Member Reported by norvez@chromium.org, Apr 7 2017

Issue description

Chrome Version: 59.0.3055.0
Chrome OS Version: R59-9431.0.0
Chrome OS Platform: eve


Steps To Reproduce:
(1) Enroll a finger with biod_client_tool
(2) Try to unenroll

Expected Result:
Record is deleted

Actual Result:
D-Bus error, Record is not deleted

How frequently does this problem reproduce?
Always


localhost ~ # biod_client_tool list fa4cf4ef41464f3965f7e13937122336645e0d98
[0407/145857:INFO:biod_client_tool.cc(496)] /org/chromium/BiometricsDaemon : BioD Root Object Path
[0407/145857:INFO:biod_client_tool.cc(507)]   FakeBiometricsManager : Fingerprint Biometric
[0407/145857:INFO:biod_client_tool.cc(507)]   FpcBiometricsManager : Fingerprint Biometric
[0407/145857:INFO:biod_client_tool.cc(523)]     Recorde7b6b021_7cdd_4230_9f1a_ccadbf2eb5c7 : Record Label=mylabel

localhost ~ # biod_client_tool unenroll e7b6b021_7cdd_4230_9f1a_ccadbf2eb5c7
process 18644: arguments to dbus_message_set_path() were incorrect, assertion "object_path == NULL || _dbus_check_is_valid_path (object_path)" failed in file ../../dbus-1.6.30/dbus/dbus-message.c line 2997.
This is normally a bug in some application using the D-Bus library.
  D-Bus not built with -rdynamic so unable to print a backtrace
Aborted (core dumped)
localhost ~ # biod_client_tool list fa4cf4ef41464f3965f7e13937122336645e0d98
[0407/151315:INFO:biod_client_tool.cc(496)] /org/chromium/BiometricsDaemon : BioD Root Object Path
[0407/151315:INFO:biod_client_tool.cc(507)]   FakeBiometricsManager : Fingerprint Biometric
[0407/151315:INFO:biod_client_tool.cc(507)]   FpcBiometricsManager : Fingerprint Biometric
[0407/151315:INFO:biod_client_tool.cc(523)]     Recorde7b6b021_7cdd_4230_9f1a_ccadbf2eb5c7 : Record Label=mylabel
localhost ~ # 

 
Nit: biod_client_tool list should add a space between the string "Record" and the record's ID.

Comment 2 by mqg@chromium.org, Apr 7 2017

Status: Started (was: Assigned)
dbus member names can only contain [A-Z][a-z][0-9]_ so no space in record names.
In #c1 I meant that the output of 'biod_client_tool list' (4th line) misses a space:
"Recorde7b6b021_7cdd_4230_9f1a_ccadbf2eb5c7 : Record Label=mylabel" should be "Record e7b6b021_7cdd_4230_9f1a_ccadbf2eb5c7 : Record Label=mylabel"

It's a nit unrelated to the original bug, sorry for the confusion!
Just to be clear, my understanding is that "e7b6b021_7cdd_4230_9f1a_ccadbf2eb5c7" is the name of the record, but I may have got it wrong.

Comment 4 by mqg@chromium.org, Apr 7 2017

Ah I see - "Recorde7b6b021_7cdd_4230_9f1a_ccadbf2eb5c7" is the name of the record. This is also to accommodate the fact that dbus names (such as this one) cannot begin with a digit (just the uuid might start with a digit).
Oh, gotcha! If possible it may be a bit clearer to add an extra underscore, say "Record_e7b6b021_7cdd_4230_9f1a_ccadbf2eb5c7" instead of "Recorde7b6b021_7cdd_4230_9f1a_ccadbf2eb5c7". Otherwise it's going to be really confusing the day the record's uuid starts with "ed" or a weird string like that :-)

I tried to unenroll with the record's full name (different uuid) and I have the same error:
localhost ~ # biod_client_tool list fa4cf4ef41464f3965f7e13937122336645e0d98
[0407/155013:INFO:biod_client_tool.cc(496)] /org/chromium/BiometricsDaemon : BioD Root Object Path
[0407/155013:INFO:biod_client_tool.cc(507)]   FakeBiometricsManager : Fingerprint Biometric
[0407/155013:INFO:biod_client_tool.cc(507)]   FpcBiometricsManager : Fingerprint Biometric
[0407/155013:INFO:biod_client_tool.cc(523)]     Record43b476c2_b4cb_4126_ad17_ca657db8e421 : Record Label=mylabel
localhost ~ # biod_client_tool unenroll Record43b476c2_b4cb_4126_ad17_ca657db8e421
process 29316: arguments to dbus_message_set_path() were incorrect, assertion "object_path == NULL || _dbus_check_is_valid_path (object_path)" failed in file ../../dbus-1.6.30/dbus/dbus-message.c line 2997.
This is normally a bug in some application using the D-Bus library.
  D-Bus not built with -rdynamic so unable to print a backtrace
Aborted (core dumped)
localhost ~ # 

Is that the correct way to use the unenroll command?

Comment 6 by mqg@chromium.org, Apr 7 2017

It needs something that looks like this:

biod_client_tool unenroll /org/chromium/BiometricsDaemon/FakeBiometricsManager/Recordabede206_d801_4c3f_8143_9201b53310e6

Status: WontFix (was: Started)
Right, makes sense. So, it actually works then:

localhost ~ # biod_client_tool unenroll /org/chromium/BiometricsDaemon/FpcBiometricsManager/Record43b476c2_b4cb_4126_ad17_ca657db8e421
localhost ~ # biod_client_tool list fa4cf4ef41464f3965f7e13937122336645e0d98
[0407/163349:INFO:biod_client_tool.cc(496)] /org/chromium/BiometricsDaemon : BioD Root Object Path
[0407/163349:INFO:biod_client_tool.cc(507)]   FakeBiometricsManager : Fingerprint Biometric
[0407/163349:INFO:biod_client_tool.cc(507)]   FpcBiometricsManager : Fingerprint Biometric
localhost ~ #

Closing the bug as WAI.

Sign in to add a comment