aboutsummaryrefslogtreecommitdiffstats
path: root/sm/call-agent.c
diff options
context:
space:
mode:
Diffstat (limited to 'sm/call-agent.c')
-rw-r--r--sm/call-agent.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sm/call-agent.c b/sm/call-agent.c
index f2b7b6fba..c2875626b 100644
--- a/sm/call-agent.c
+++ b/sm/call-agent.c
@@ -979,6 +979,9 @@ istrusted_status_cb (void *opaque, const char *line)
}
else if ((s = has_leading_keyword (line, "TRUSTLISTFPR")) && *s)
{
+ /* We see this only with the "LISTTRUSTED --status" command but
+ * not with ISTRUSTED. Thus the cache will only be filled by
+ * the former command. */
istrusted_cache_t ci;
ci = xtrymalloc (sizeof *ci + strlen (s));
@@ -988,6 +991,9 @@ istrusted_status_cb (void *opaque, const char *line)
memset (&ci->flags, 0, sizeof ci->flags);
ci->next = parm->cache;
parm->cache = ci;
+ /* Also need to clear the parm's flags which will be copied to
+ * the cache. */
+ memset (&parm->flags, 0, sizeof ci->flags);
}
return 0;
}