From 2040ccf171404b709acb0ecf1d1f17b87c5d05f0 Mon Sep 17 00:00:00 2001
From: Lennart Poettering <lennart@poettering.net>
Date: Mon, 7 Jul 2014 17:32:44 +0200
Subject: [PATCH] service: don't accept negative ERRNO= notification messages

---
 src/core/service.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git src/core/service.c src/core/service.c
index 5c54a34..d5aff99 100644
--- src/core/service.c
+++ src/core/service.c
@@ -2637,7 +2637,7 @@ static void service_notify_message(Unit *u, pid_t pid, char **tags) {
         if (e) {
                 int status_errno;
 
-                if (safe_atoi(e + 6, &status_errno) < 0)
+                if (safe_atoi(e + 6, &status_errno) < 0 || status_errno < 0)
                         log_warning_unit(u->id, "Failed to parse ERRNO= field in notification message: %s", e);
                 else {
                         log_debug_unit(u->id, "%s: got %s", u->id, e);
-- 
1.7.9.2

