Although the check for negative timeout is present, the error string
is overwritten if an invalid "until" is found right after. This leaks
an error string and results in not reporting the negative timeout back
to the user even though it is encountered first.

Signed-off-by: Thomas Graf <tg...@noironetworks.com>
---
v2: Better commit message as suggested by Ben

 ovsdb/execution.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/ovsdb/execution.c b/ovsdb/execution.c
index 6314757..2be131d 100644
--- a/ovsdb/execution.c
+++ b/ovsdb/execution.c
@@ -643,6 +643,8 @@ ovsdb_execute_wait(struct ovsdb_execution *x, struct 
ovsdb_parser *parser,
         } else {
             timeout_msec = LLONG_MAX;
         }
+    }
+    if (!error) {
         if (strcmp(json_string(until), "==")
             && strcmp(json_string(until), "!=")) {
             error = ovsdb_syntax_error(until, NULL,
-- 
1.9.3

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to