summaryrefslogtreecommitdiff
path: root/alarm-session-agent/agent.c
diff options
context:
space:
mode:
Diffstat (limited to 'alarm-session-agent/agent.c')
-rw-r--r--alarm-session-agent/agent.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/alarm-session-agent/agent.c b/alarm-session-agent/agent.c
index 39f93c0..172631e 100644
--- a/alarm-session-agent/agent.c
+++ b/alarm-session-agent/agent.c
@@ -25,6 +25,7 @@
#include <assert.h>
#include <errno.h>
#include <poll.h>
+#include <linux/limits.h>
#include <systemd/sd-daemon.h>
#include <bundle.h>
@@ -198,7 +199,7 @@ static gboolean _alarm_agent_main(gint fd, GIOCondition condition,
return G_SOURCE_CONTINUE;
}
- if (len <= 0) {
+ if (len <= 0 || len > PATH_MAX) {
close(clifd);
return G_SOURCE_CONTINUE;
}
@@ -226,7 +227,6 @@ static gboolean _alarm_agent_main(gint fd, GIOCondition condition,
gv = g_variant_new_from_data(G_VARIANT_TYPE("(is)"),
data, len, TRUE, NULL, NULL);
-
if (!gv) {
free(data);
close(clifd);