aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--g10/call-agent.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/g10/call-agent.c b/g10/call-agent.c
index 83fabcc32..1d7ff577b 100644
--- a/g10/call-agent.c
+++ b/g10/call-agent.c
@@ -1749,30 +1749,29 @@ static gpg_error_t
cache_nonce_status_cb (void *opaque, const char *line)
{
struct cache_nonce_parm_s *parm = opaque;
- const char *keyword = line;
- int keywordlen;
-
- for (keywordlen=0; *line && !spacep (line); line++, keywordlen++)
- ;
- while (spacep (line))
- line++;
+ const char *s;
- if (keywordlen == 11 && !memcmp (keyword, "CACHE_NONCE", keywordlen))
+ if ((s = has_leading_keyword (line, "CACHE_NONCE")))
{
if (parm->cache_nonce_addr)
{
xfree (*parm->cache_nonce_addr);
- *parm->cache_nonce_addr = xtrystrdup (line);
+ *parm->cache_nonce_addr = xtrystrdup (s);
}
}
- else if (keywordlen == 12 && !memcmp (keyword, "PASSWD_NONCE", keywordlen))
+ else if ((s = has_leading_keyword (line, "PASSWD_NONCE")))
{
if (parm->passwd_nonce_addr)
{
xfree (*parm->passwd_nonce_addr);
- *parm->passwd_nonce_addr = xtrystrdup (line);
+ *parm->passwd_nonce_addr = xtrystrdup (s);
}
}
+ else if ((s = has_leading_keyword (line, "PROGRESS")))
+ {
+ if (opt.enable_progress_filter)
+ write_status_text (STATUS_PROGRESS, s);
+ }
return 0;
}