aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--g13/sh-cmd.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/g13/sh-cmd.c b/g13/sh-cmd.c
index 4ef37c105..8a3006cab 100644
--- a/g13/sh-cmd.c
+++ b/g13/sh-cmd.c
@@ -161,7 +161,9 @@ static const char hlp_device[] =
"DEVICE <name>\n"
"\n"
"Set the device used by further commands.\n"
- "A device name or a PARTUUID string may be used.";
+ "A device name or a PARTUUID string may be used.\n"
+ "Access to that device (by the g13 system) is locked\n"
+ "until a new DEVICE command or end of this process\n";
static gpg_error_t
cmd_device (assuan_context_t ctx, char *line)
{
@@ -185,7 +187,7 @@ cmd_device (assuan_context_t ctx, char *line)
break;
if (!ti)
{
- set_error (GPG_ERR_EACCES, "device not configured for user");
+ err = set_error (GPG_ERR_EACCES, "device not configured for user");
goto leave;
}
@@ -213,6 +215,8 @@ cmd_device (assuan_context_t ctx, char *line)
fp = NULL;
ctrl->devti = ti;
+ /* Fixme: Take some kind of lock. */
+
leave:
es_fclose (fp);
if (err)
@@ -255,7 +259,7 @@ cmd_create (assuan_context_t ctx, char *line)
err = sh_is_empty_partition (ctrl->server_local->devicename);
if (err)
{
- assuan_set_error (ctx, err, "Partition is not empty");
+ err = assuan_set_error (ctx, err, "Partition is not empty");
goto leave;
}