mirror of
https://gitlab.com/mishakmak/pam-fprint-grosshack.git
synced 2026-04-09 04:13:33 +02:00
Review possible errors and document them
Review all the possible errors and document them for each function.
This commit is contained in:
committed by
Daniel Drake
parent
1abf51afa4
commit
7b06c4b7f3
6
TODO
6
TODO
@ -1,10 +1,6 @@
|
|||||||
Identification
|
Identification
|
||||||
Image transfer
|
Image transfer
|
||||||
|
|
||||||
Enforce command sequences:
|
|
||||||
force VerifyStop after non-retry verify result comes in
|
|
||||||
etc
|
|
||||||
|
|
||||||
Verify PAM messages fit with GDM/gnome-screensaver
|
Verify PAM messages fit with GDM/gnome-screensaver
|
||||||
|
|
||||||
Register fprintd' po file with Transifex, Rosetta or the Translation Project
|
Register fprintd' po file with Transifex, Rosetta or the Translation Project
|
||||||
@ -19,5 +15,3 @@ reading for more than a certain amount of time.
|
|||||||
|
|
||||||
Add POS use case
|
Add POS use case
|
||||||
|
|
||||||
Review error cases, and possible errors
|
|
||||||
|
|
||||||
|
|||||||
36
src/device.c
36
src/device.c
@ -466,7 +466,7 @@ _fprint_device_check_polkit_for_action (FprintDevice *rdev, DBusGMethodInvocatio
|
|||||||
|
|
||||||
if (pk_result != POLKIT_RESULT_YES) {
|
if (pk_result != POLKIT_RESULT_YES) {
|
||||||
g_set_error (error, FPRINT_ERROR,
|
g_set_error (error, FPRINT_ERROR,
|
||||||
FPRINT_ERROR_INTERNAL,
|
FPRINT_ERROR_PERMISSION_DENIED,
|
||||||
"%s %s <-- (action, result)",
|
"%s %s <-- (action, result)",
|
||||||
action,
|
action,
|
||||||
polkit_result_to_string_representation (pk_result));
|
polkit_result_to_string_representation (pk_result));
|
||||||
@ -522,7 +522,7 @@ _fprint_device_check_for_username (FprintDevice *rdev,
|
|||||||
user = getpwuid (uid);
|
user = getpwuid (uid);
|
||||||
if (user == NULL) {
|
if (user == NULL) {
|
||||||
g_free (sender);
|
g_free (sender);
|
||||||
g_set_error(error, FPRINT_ERROR, FPRINT_ERROR_CLAIM_DEVICE,
|
g_set_error(error, FPRINT_ERROR, FPRINT_ERROR_INTERNAL,
|
||||||
"Failed to get information about user UID %lu", uid);
|
"Failed to get information about user UID %lu", uid);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@ -644,7 +644,7 @@ static void dev_open_cb(struct fp_dev *dev, int status, void *user_data)
|
|||||||
g_free (priv->sender);
|
g_free (priv->sender);
|
||||||
priv->sender = NULL;
|
priv->sender = NULL;
|
||||||
|
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_CLAIM_DEVICE,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_INTERNAL,
|
||||||
"Open failed with error %d", status);
|
"Open failed with error %d", status);
|
||||||
dbus_g_method_return_error(session->context_claim_device, error);
|
dbus_g_method_return_error(session->context_claim_device, error);
|
||||||
return;
|
return;
|
||||||
@ -665,7 +665,7 @@ static void fprint_device_claim(FprintDevice *rdev,
|
|||||||
|
|
||||||
/* Is it already claimed? */
|
/* Is it already claimed? */
|
||||||
if (priv->sender != NULL) {
|
if (priv->sender != NULL) {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_CLAIM_DEVICE,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_ALREADY_IN_USE,
|
||||||
"Device was already claimed");
|
"Device was already claimed");
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
return;
|
return;
|
||||||
@ -717,7 +717,7 @@ static void fprint_device_claim(FprintDevice *rdev,
|
|||||||
g_free (priv->sender);
|
g_free (priv->sender);
|
||||||
priv->sender = NULL;
|
priv->sender = NULL;
|
||||||
|
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_CLAIM_DEVICE,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_INTERNAL,
|
||||||
"Could not attempt device open, error %d", r);
|
"Could not attempt device open, error %d", r);
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
}
|
}
|
||||||
@ -839,7 +839,7 @@ static void fprint_device_verify_start(FprintDevice *rdev,
|
|||||||
|
|
||||||
prints = store.discover_prints(priv->ddev, priv->username);
|
prints = store.discover_prints(priv->ddev, priv->username);
|
||||||
if (prints == NULL) {
|
if (prints == NULL) {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_NO_SUCH_LOADED_PRINT,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_NO_ENROLLED_PRINTS,
|
||||||
"No fingerprints enrolled");
|
"No fingerprints enrolled");
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
return;
|
return;
|
||||||
@ -854,8 +854,8 @@ static void fprint_device_verify_start(FprintDevice *rdev,
|
|||||||
g_message ("adding finger %d to the gallery", GPOINTER_TO_INT (l->data));
|
g_message ("adding finger %d to the gallery", GPOINTER_TO_INT (l->data));
|
||||||
r = store.print_data_load(priv->dev, GPOINTER_TO_INT (l->data),
|
r = store.print_data_load(priv->dev, GPOINTER_TO_INT (l->data),
|
||||||
&data, priv->username);
|
&data, priv->username);
|
||||||
//FIXME r < 0 ?
|
if (r == 0)
|
||||||
g_ptr_array_add (array, data);
|
g_ptr_array_add (array, data);
|
||||||
}
|
}
|
||||||
data = NULL;
|
data = NULL;
|
||||||
|
|
||||||
@ -873,7 +873,7 @@ static void fprint_device_verify_start(FprintDevice *rdev,
|
|||||||
|
|
||||||
if (fp_dev_supports_identification(priv->dev) && finger_num == -1) {
|
if (fp_dev_supports_identification(priv->dev) && finger_num == -1) {
|
||||||
if (gallery == NULL) {
|
if (gallery == NULL) {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_NO_SUCH_LOADED_PRINT,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_NO_ENROLLED_PRINTS,
|
||||||
"No fingerprints on that device");
|
"No fingerprints on that device");
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
g_error_free (error);
|
g_error_free (error);
|
||||||
@ -893,7 +893,7 @@ static void fprint_device_verify_start(FprintDevice *rdev,
|
|||||||
&data, priv->username);
|
&data, priv->username);
|
||||||
|
|
||||||
if (r < 0 || !data) {
|
if (r < 0 || !data) {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_NO_SUCH_LOADED_PRINT,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_INTERNAL,
|
||||||
"No such print %d", finger_num);
|
"No such print %d", finger_num);
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
return;
|
return;
|
||||||
@ -918,7 +918,7 @@ static void fprint_device_verify_start(FprintDevice *rdev,
|
|||||||
fp_print_data_free(gallery[i]);
|
fp_print_data_free(gallery[i]);
|
||||||
g_free (gallery);
|
g_free (gallery);
|
||||||
}
|
}
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_VERIFY_START,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_INTERNAL,
|
||||||
"Verify start failed with error %d", r);
|
"Verify start failed with error %d", r);
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
return;
|
return;
|
||||||
@ -959,7 +959,7 @@ static void fprint_device_verify_stop(FprintDevice *rdev,
|
|||||||
} else if (priv->current_action == ACTION_IDENTIFY) {
|
} else if (priv->current_action == ACTION_IDENTIFY) {
|
||||||
r = fp_async_identify_stop(priv->dev, identify_stop_cb, context);
|
r = fp_async_identify_stop(priv->dev, identify_stop_cb, context);
|
||||||
} else {
|
} else {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_VERIFY_STOP,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_NO_ACTION_IN_PROGRESS,
|
||||||
"No verification in progress");
|
"No verification in progress");
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
g_error_free (error);
|
g_error_free (error);
|
||||||
@ -967,7 +967,7 @@ static void fprint_device_verify_stop(FprintDevice *rdev,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (r < 0) {
|
if (r < 0) {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_VERIFY_STOP,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_INTERNAL,
|
||||||
"Verify stop failed with error %d", r);
|
"Verify stop failed with error %d", r);
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
g_error_free (error);
|
g_error_free (error);
|
||||||
@ -1009,7 +1009,7 @@ static void fprint_device_enroll_start(FprintDevice *rdev,
|
|||||||
int r;
|
int r;
|
||||||
|
|
||||||
if (finger_num == -1) {
|
if (finger_num == -1) {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_NO_SUCH_LOADED_PRINT,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_INVALID_FINGERNAME,
|
||||||
"Invalid print name");
|
"Invalid print name");
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
g_error_free (error);
|
g_error_free (error);
|
||||||
@ -1044,7 +1044,7 @@ static void fprint_device_enroll_start(FprintDevice *rdev,
|
|||||||
|
|
||||||
r = fp_async_enroll_start(priv->dev, enroll_stage_cb, rdev);
|
r = fp_async_enroll_start(priv->dev, enroll_stage_cb, rdev);
|
||||||
if (r < 0) {
|
if (r < 0) {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_ENROLL_START,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_INTERNAL,
|
||||||
"Enroll start failed with error %d", r);
|
"Enroll start failed with error %d", r);
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
return;
|
return;
|
||||||
@ -1078,7 +1078,7 @@ static void fprint_device_enroll_stop(FprintDevice *rdev,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (priv->current_action != ACTION_ENROLL) {
|
if (priv->current_action != ACTION_ENROLL) {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_ENROLL_STOP,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_NO_ACTION_IN_PROGRESS,
|
||||||
"No enrollment in progress");
|
"No enrollment in progress");
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
g_error_free (error);
|
g_error_free (error);
|
||||||
@ -1087,7 +1087,7 @@ static void fprint_device_enroll_stop(FprintDevice *rdev,
|
|||||||
|
|
||||||
r = fp_async_enroll_stop(priv->dev, enroll_stop_cb, context);
|
r = fp_async_enroll_stop(priv->dev, enroll_stop_cb, context);
|
||||||
if (r < 0) {
|
if (r < 0) {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_ENROLL_STOP,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_INTERNAL,
|
||||||
"Enroll stop failed with error %d", r);
|
"Enroll stop failed with error %d", r);
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
g_error_free (error);
|
g_error_free (error);
|
||||||
@ -1131,7 +1131,7 @@ static void fprint_device_list_enrolled_fingers(FprintDevice *rdev,
|
|||||||
prints = store.discover_prints(priv->ddev, user);
|
prints = store.discover_prints(priv->ddev, user);
|
||||||
g_free (user);
|
g_free (user);
|
||||||
if (!prints) {
|
if (!prints) {
|
||||||
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_DISCOVER_PRINTS,
|
g_set_error(&error, FPRINT_ERROR, FPRINT_ERROR_NO_ENROLLED_PRINTS,
|
||||||
"Failed to discover prints");
|
"Failed to discover prints");
|
||||||
dbus_g_method_return_error(context, error);
|
dbus_g_method_return_error(context, error);
|
||||||
return;
|
return;
|
||||||
|
|||||||
@ -1,4 +1,15 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" ?>
|
<!DOCTYPE node PUBLIC
|
||||||
|
"-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
|
||||||
|
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd" [
|
||||||
|
<!ENTITY ERROR_CLAIM_DEVICE "net.reactivated.Fprint.Error.ClaimDevice">
|
||||||
|
<!ENTITY ERROR_ALREADY_IN_USE "net.reactivated.Fprint.Error.AlreadyInUse">
|
||||||
|
<!ENTITY ERROR_INTERNAL "net.reactivated.Fprint.Error.Internal">
|
||||||
|
<!ENTITY ERROR_PERMISSION_DENIED "net.reactivated.Fprint.Error.PermissionDenied">
|
||||||
|
<!ENTITY ERROR_NO_ENROLLED_PRINTS "net.reactivated.Fprint.Error.NoEnrolledPrints">
|
||||||
|
<!ENTITY ERROR_NO_ACTION_IN_PROGRESS "net.reactivated.Fprint.Error.NoActionInProgress">
|
||||||
|
<!ENTITY ERROR_INVALID_FINGERNAME "net.reactivated.Fprint.Error.InvalidFingername">
|
||||||
|
]>
|
||||||
|
|
||||||
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
|
<node name="/" xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
|
||||||
<interface name="net.reactivated.Fprint.Device">
|
<interface name="net.reactivated.Fprint.Device">
|
||||||
<annotation name="org.freedesktop.DBus.GLib.CSymbol"
|
<annotation name="org.freedesktop.DBus.GLib.CSymbol"
|
||||||
@ -256,6 +267,11 @@
|
|||||||
List all the enrolled fingerprints for the chosen user.
|
List all the enrolled fingerprints for the chosen user.
|
||||||
</doc:para>
|
</doc:para>
|
||||||
</doc:description>
|
</doc:description>
|
||||||
|
|
||||||
|
<doc:errors>
|
||||||
|
<doc:error name="&ERROR_PERMISSION_DENIED;">if the caller lacks the appropriate PolicyKit authorization</doc:error>
|
||||||
|
<doc:error name="&ERROR_NO_ENROLLED_PRINTS;">if the chosen user doesn't have any fingerprints enrolled</doc:error>
|
||||||
|
</doc:errors>
|
||||||
</doc:doc>
|
</doc:doc>
|
||||||
</method>
|
</method>
|
||||||
|
|
||||||
@ -273,6 +289,10 @@
|
|||||||
Delete all the enrolled fingerprints for the chosen user.
|
Delete all the enrolled fingerprints for the chosen user.
|
||||||
</doc:para>
|
</doc:para>
|
||||||
</doc:description>
|
</doc:description>
|
||||||
|
|
||||||
|
<doc:errors>
|
||||||
|
<doc:error name="&ERROR_PERMISSION_DENIED;">if the caller lacks the appropriate PolicyKit authorization</doc:error>
|
||||||
|
</doc:errors>
|
||||||
</doc:doc>
|
</doc:doc>
|
||||||
</method>
|
</method>
|
||||||
|
|
||||||
@ -290,6 +310,12 @@
|
|||||||
Claim the device for the chosen user.
|
Claim the device for the chosen user.
|
||||||
</doc:para>
|
</doc:para>
|
||||||
</doc:description>
|
</doc:description>
|
||||||
|
|
||||||
|
<doc:errors>
|
||||||
|
<doc:error name="&ERROR_PERMISSION_DENIED;">if the caller lacks the appropriate PolicyKit authorization</doc:error>
|
||||||
|
<doc:error name="&ERROR_ALREADY_IN_USE;">if the device is already claimed</doc:error>
|
||||||
|
<doc:error name="&ERROR_INTERNAL;">if the device couldn't be claimed</doc:error>
|
||||||
|
</doc:errors>
|
||||||
</doc:doc>
|
</doc:doc>
|
||||||
</method>
|
</method>
|
||||||
|
|
||||||
@ -304,6 +330,11 @@
|
|||||||
Release a device claimed with <doc:ref type="method" to="Device.Claim">Device.Claim</doc:ref>.
|
Release a device claimed with <doc:ref type="method" to="Device.Claim">Device.Claim</doc:ref>.
|
||||||
</doc:para>
|
</doc:para>
|
||||||
</doc:description>
|
</doc:description>
|
||||||
|
|
||||||
|
<doc:errors>
|
||||||
|
<doc:error name="&ERROR_PERMISSION_DENIED;">if the caller lacks the appropriate PolicyKit authorization</doc:error>
|
||||||
|
<doc:error name="&ERROR_CLAIM_DEVICE;">if the device was not claimed</doc:error>
|
||||||
|
</doc:errors>
|
||||||
</doc:doc>
|
</doc:doc>
|
||||||
</method>
|
</method>
|
||||||
|
|
||||||
@ -319,9 +350,19 @@
|
|||||||
<doc:description>
|
<doc:description>
|
||||||
<doc:para>
|
<doc:para>
|
||||||
Check the chosen finger against a saved fingerprint. You need to have claimed the device using
|
Check the chosen finger against a saved fingerprint. You need to have claimed the device using
|
||||||
<doc:ref type="method" to="Device.Claim">Device.Claim</doc:ref>.
|
<doc:ref type="method" to="Device.Claim">Device.Claim</doc:ref>. The finger selected is sent to the front-end
|
||||||
|
using <doc:ref type="signal" to="Device::VerifyFingerSelected">Device::VerifyFingerSelected</doc:ref> and
|
||||||
|
verification status through <doc:ref type="signal" to="Device::VerifyStatus">Device::VerifyStatus</doc:ref>.
|
||||||
</doc:para>
|
</doc:para>
|
||||||
</doc:description>
|
</doc:description>
|
||||||
|
|
||||||
|
<doc:errors>
|
||||||
|
<doc:error name="&ERROR_PERMISSION_DENIED;">if the caller lacks the appropriate PolicyKit authorization</doc:error>
|
||||||
|
<doc:error name="&ERROR_CLAIM_DEVICE;">if the device was not claimed</doc:error>
|
||||||
|
<doc:error name="&ERROR_ALREADY_IN_USE;">if the device was already being used</doc:error>
|
||||||
|
<doc:error name="&ERROR_NO_ENROLLED_PRINTS;">if there are no enrolled prints for the chosen user</doc:error>
|
||||||
|
<doc:error name="&ERROR_INTERNAL;">if there was an internal error</doc:error>
|
||||||
|
</doc:errors>
|
||||||
</doc:doc>
|
</doc:doc>
|
||||||
</method>
|
</method>
|
||||||
|
|
||||||
@ -336,6 +377,13 @@
|
|||||||
Stop an on-going fingerprint verification started with <doc:ref type="method" to="Device.VerifyStart">Device.VerifyStart</doc:ref>.
|
Stop an on-going fingerprint verification started with <doc:ref type="method" to="Device.VerifyStart">Device.VerifyStart</doc:ref>.
|
||||||
</doc:para>
|
</doc:para>
|
||||||
</doc:description>
|
</doc:description>
|
||||||
|
|
||||||
|
<doc:errors>
|
||||||
|
<doc:error name="&ERROR_PERMISSION_DENIED;">if the caller lacks the appropriate PolicyKit authorization</doc:error>
|
||||||
|
<doc:error name="&ERROR_CLAIM_DEVICE;">if the device was not claimed</doc:error>
|
||||||
|
<doc:error name="&ERROR_NO_ACTION_IN_PROGRESS;">if there was no ongoing verification</doc:error>
|
||||||
|
<doc:error name="&ERROR_INTERNAL;">if there was an internal error</doc:error>
|
||||||
|
</doc:errors>
|
||||||
</doc:doc>
|
</doc:doc>
|
||||||
</method>
|
</method>
|
||||||
|
|
||||||
@ -364,7 +412,7 @@
|
|||||||
<arg type="s" name="result">
|
<arg type="s" name="result">
|
||||||
<doc:doc>
|
<doc:doc>
|
||||||
<doc:summary>
|
<doc:summary>
|
||||||
A string representing the status of the verification status.
|
A string representing the status of the verification.
|
||||||
</doc:summary>
|
</doc:summary>
|
||||||
</doc:doc>
|
</doc:doc>
|
||||||
</arg>
|
</arg>
|
||||||
@ -399,9 +447,18 @@
|
|||||||
<doc:para>
|
<doc:para>
|
||||||
Start enrollemnt for the selected finger. You need to have claimed the device using
|
Start enrollemnt for the selected finger. You need to have claimed the device using
|
||||||
<doc:ref type="method" to="Device.Claim">Device.Claim</doc:ref> before calling
|
<doc:ref type="method" to="Device.Claim">Device.Claim</doc:ref> before calling
|
||||||
this method.
|
this method. Enrollment status is sent through <doc:ref type="signal" to="Device::EnrollStatus">Device::EnrollStatus</doc:ref>.
|
||||||
</doc:para>
|
</doc:para>
|
||||||
</doc:description>
|
</doc:description>
|
||||||
|
|
||||||
|
<doc:errors>
|
||||||
|
<doc:error name="&ERROR_PERMISSION_DENIED;">if the caller lacks the appropriate PolicyKit authorization</doc:error>
|
||||||
|
<doc:error name="&ERROR_CLAIM_DEVICE;">if the device was not claimed</doc:error>
|
||||||
|
<doc:error name="&ERROR_ALREADY_IN_USE;">if the device was already being used</doc:error>
|
||||||
|
<doc:error name="&ERROR_INVALID_FINGERNAME;">if there are no enrolled prints for the chosen user</doc:error>
|
||||||
|
<doc:error name="&ERROR_INTERNAL;">if there was an internal error</doc:error>
|
||||||
|
</doc:errors>
|
||||||
|
|
||||||
</doc:doc>
|
</doc:doc>
|
||||||
</method>
|
</method>
|
||||||
|
|
||||||
@ -416,6 +473,13 @@
|
|||||||
Stop an on-going fingerprint enrollment started with <doc:ref type="method" to="Device.EnrollStart">Device.EnrollStart</doc:ref>.
|
Stop an on-going fingerprint enrollment started with <doc:ref type="method" to="Device.EnrollStart">Device.EnrollStart</doc:ref>.
|
||||||
</doc:para>
|
</doc:para>
|
||||||
</doc:description>
|
</doc:description>
|
||||||
|
|
||||||
|
<doc:errors>
|
||||||
|
<doc:error name="&ERROR_PERMISSION_DENIED;">if the caller lacks the appropriate PolicyKit authorization</doc:error>
|
||||||
|
<doc:error name="&ERROR_CLAIM_DEVICE;">if the device was not claimed</doc:error>
|
||||||
|
<doc:error name="&ERROR_NO_ACTION_IN_PROGRESS;">if there was no ongoing verification</doc:error>
|
||||||
|
<doc:error name="&ERROR_INTERNAL;">if there was an internal error</doc:error>
|
||||||
|
</doc:errors>
|
||||||
</doc:doc>
|
</doc:doc>
|
||||||
</method>
|
</method>
|
||||||
|
|
||||||
@ -425,7 +489,7 @@
|
|||||||
<arg type="s" name="result">
|
<arg type="s" name="result">
|
||||||
<doc:doc>
|
<doc:doc>
|
||||||
<doc:summary>
|
<doc:summary>
|
||||||
A string representing the status of the enrollment status.
|
A string representing the status of the enrollment.
|
||||||
</doc:summary>
|
</doc:summary>
|
||||||
</doc:doc>
|
</doc:doc>
|
||||||
</arg>
|
</arg>
|
||||||
|
|||||||
@ -257,11 +257,7 @@ static GSList *scan_dev_storedir(char *devpath, uint16_t driver_id,
|
|||||||
|
|
||||||
GSList *file_storage_discover_prints(struct fp_dscv_dev *dev, const char *username)
|
GSList *file_storage_discover_prints(struct fp_dscv_dev *dev, const char *username)
|
||||||
{
|
{
|
||||||
//GDir *dir;
|
|
||||||
//const gchar *ent;
|
|
||||||
//GError *err = NULL;
|
|
||||||
GSList *list = NULL;
|
GSList *list = NULL;
|
||||||
//GSList *elem;
|
|
||||||
char *base_store = NULL;
|
char *base_store = NULL;
|
||||||
char *storedir = NULL;
|
char *storedir = NULL;
|
||||||
int r;
|
int r;
|
||||||
@ -276,7 +272,6 @@ GSList *file_storage_discover_prints(struct fp_dscv_dev *dev, const char *userna
|
|||||||
storedir = get_path_to_storedir(fp_driver_get_driver_id(fp_dscv_dev_get_driver(dev)),
|
storedir = get_path_to_storedir(fp_driver_get_driver_id(fp_dscv_dev_get_driver(dev)),
|
||||||
fp_dscv_dev_get_devtype(dev), base_store);
|
fp_dscv_dev_get_devtype(dev), base_store);
|
||||||
|
|
||||||
g_message("Entering %s", storedir);
|
|
||||||
list = scan_dev_storedir(storedir, fp_driver_get_driver_id(fp_dscv_dev_get_driver(dev)),
|
list = scan_dev_storedir(storedir, fp_driver_get_driver_id(fp_dscv_dev_get_driver(dev)),
|
||||||
fp_dscv_dev_get_devtype(dev), list);
|
fp_dscv_dev_get_devtype(dev), list);
|
||||||
|
|
||||||
|
|||||||
@ -36,18 +36,13 @@ GType fprint_error_get_type(void);
|
|||||||
#define FPRINT_TYPE_ERROR fprint_error_get_type()
|
#define FPRINT_TYPE_ERROR fprint_error_get_type()
|
||||||
#define FPRINT_ERROR_DBUS_INTERFACE "net.reactivated.Fprint.Error"
|
#define FPRINT_ERROR_DBUS_INTERFACE "net.reactivated.Fprint.Error"
|
||||||
typedef enum {
|
typedef enum {
|
||||||
FPRINT_ERROR_INTERNAL,
|
FPRINT_ERROR_CLAIM_DEVICE, /* developer didn't claim the device */
|
||||||
FPRINT_ERROR_ALREADY_IN_USE,
|
FPRINT_ERROR_ALREADY_IN_USE, /* device is already claimed by somebody else */
|
||||||
FPRINT_ERROR_DISCOVER_PRINTS,
|
FPRINT_ERROR_INTERNAL, /* internal error occured */
|
||||||
FPRINT_ERROR_PRINT_NOT_FOUND,
|
FPRINT_ERROR_PERMISSION_DENIED, /* PolicyKit refused the action */
|
||||||
FPRINT_ERROR_PRINT_LOAD,
|
FPRINT_ERROR_NO_ENROLLED_PRINTS, /* No prints are enrolled */
|
||||||
FPRINT_ERROR_NO_SUCH_LOADED_PRINT,
|
FPRINT_ERROR_NO_ACTION_IN_PROGRESS, /* No actions currently in progress */
|
||||||
FPRINT_ERROR_CLAIM_DEVICE,
|
FPRINT_ERROR_INVALID_FINGERNAME, /* the finger name passed was invalid */
|
||||||
FPRINT_ERROR_VERIFY_START,
|
|
||||||
FPRINT_ERROR_VERIFY_STOP,
|
|
||||||
FPRINT_ERROR_ENROLL_START,
|
|
||||||
FPRINT_ERROR_ENROLL_STOP,
|
|
||||||
FPRINT_ERROR_FAILED,
|
|
||||||
} FprintError;
|
} FprintError;
|
||||||
|
|
||||||
/* Manager */
|
/* Manager */
|
||||||
|
|||||||
@ -207,18 +207,13 @@ fprint_error_get_type (void)
|
|||||||
if (etype == 0) {
|
if (etype == 0) {
|
||||||
static const GEnumValue values[] =
|
static const GEnumValue values[] =
|
||||||
{
|
{
|
||||||
ENUM_ENTRY (FPRINT_ERROR_INTERNAL, "Internal"),
|
|
||||||
ENUM_ENTRY (FPRINT_ERROR_ALREADY_IN_USE, "InUse"),
|
|
||||||
ENUM_ENTRY (FPRINT_ERROR_DISCOVER_PRINTS, "DiscoverPrints"),
|
|
||||||
ENUM_ENTRY (FPRINT_ERROR_PRINT_NOT_FOUND, "PrintNotFound"),
|
|
||||||
ENUM_ENTRY (FPRINT_ERROR_PRINT_LOAD, "PrintLoad"),
|
|
||||||
ENUM_ENTRY (FPRINT_ERROR_NO_SUCH_LOADED_PRINT, "NoSuchLoadedPrint"),
|
|
||||||
ENUM_ENTRY (FPRINT_ERROR_CLAIM_DEVICE, "ClaimDevice"),
|
ENUM_ENTRY (FPRINT_ERROR_CLAIM_DEVICE, "ClaimDevice"),
|
||||||
ENUM_ENTRY (FPRINT_ERROR_VERIFY_START, "VerifyStart"),
|
ENUM_ENTRY (FPRINT_ERROR_ALREADY_IN_USE, "AlreadyInUse"),
|
||||||
ENUM_ENTRY (FPRINT_ERROR_VERIFY_STOP, "VerifyStop"),
|
ENUM_ENTRY (FPRINT_ERROR_INTERNAL, "Internal"),
|
||||||
ENUM_ENTRY (FPRINT_ERROR_ENROLL_START, "EnrollStart"),
|
ENUM_ENTRY (FPRINT_ERROR_PERMISSION_DENIED, "PermissionDenied"),
|
||||||
ENUM_ENTRY (FPRINT_ERROR_ENROLL_STOP, "EnrollStop"),
|
ENUM_ENTRY (FPRINT_ERROR_NO_ENROLLED_PRINTS, "NoEnrolledPrints"),
|
||||||
ENUM_ENTRY (FPRINT_ERROR_FAILED, "Failed"),
|
ENUM_ENTRY (FPRINT_ERROR_NO_ACTION_IN_PROGRESS, "NoActionInProgress"),
|
||||||
|
ENUM_ENTRY (FPRINT_ERROR_INVALID_FINGERNAME, "InvalidFingername"),
|
||||||
{ 0, 0, 0 }
|
{ 0, 0, 0 }
|
||||||
};
|
};
|
||||||
etype = g_enum_register_static ("FprintError", values);
|
etype = g_enum_register_static ("FprintError", values);
|
||||||
|
|||||||
Reference in New Issue
Block a user