mirror of
git://git.gnupg.org/gnupg.git
synced 2024-12-22 10:19:57 +01:00
kbx: Fix keyboxd search first.
* kbx/kbxserver.c (cmd_next): Switch to mode next if needed. -- Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
parent
1545b948e1
commit
5e00c1773d
@ -352,10 +352,24 @@ cmd_next (assuan_context_t ctx, char *line)
|
||||
|
||||
ctrl->no_data_return = opt_no_data;
|
||||
if (ctrl->server_local->multi_search_desc_len)
|
||||
err = kbxd_search (ctrl, ctrl->server_local->multi_search_desc,
|
||||
ctrl->server_local->multi_search_desc_len, 0);
|
||||
{
|
||||
/* The next condition should never be tru but we better handle
|
||||
* the first/next transition anyway. */
|
||||
if (ctrl->server_local->multi_search_desc[0].mode
|
||||
== KEYDB_SEARCH_MODE_FIRST)
|
||||
ctrl->server_local->multi_search_desc[0].mode = KEYDB_SEARCH_MODE_NEXT;
|
||||
|
||||
err = kbxd_search (ctrl, ctrl->server_local->multi_search_desc,
|
||||
ctrl->server_local->multi_search_desc_len, 0);
|
||||
}
|
||||
else
|
||||
err = kbxd_search (ctrl, &ctrl->server_local->search_desc, 1, 0);
|
||||
{
|
||||
/* We need to do the transition from first to next here. */
|
||||
if (ctrl->server_local->search_desc.mode == KEYDB_SEARCH_MODE_FIRST)
|
||||
ctrl->server_local->search_desc.mode = KEYDB_SEARCH_MODE_NEXT;
|
||||
|
||||
err = kbxd_search (ctrl, &ctrl->server_local->search_desc, 1, 0);
|
||||
}
|
||||
if (err)
|
||||
goto leave;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user