That will be used later to issue "monitor_cond_change" command.

Signed-off-by: Liran Schour <lir...@il.ibm.com>
---
 ovsdb/jsonrpc-server.c | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/ovsdb/jsonrpc-server.c b/ovsdb/jsonrpc-server.c
index 3d898bb..c5aad17 100644
--- a/ovsdb/jsonrpc-server.c
+++ b/ovsdb/jsonrpc-server.c
@@ -1070,12 +1070,21 @@ static struct ovsdb_jsonrpc_monitor *
 ovsdb_jsonrpc_monitor_find(struct ovsdb_jsonrpc_session *s,
                            const struct json *monitor_id)
 {
+    struct ovsdb_jsonrpc_server *svr = s->remote->server;
     struct ovsdb_jsonrpc_monitor *m;
+    struct shash_node *node;
 
-    HMAP_FOR_EACH_WITH_HASH (m, node, json_hash(monitor_id, 0), &s->monitors) {
-        if (json_equal(m->monitor_id, monitor_id)) {
-            return m;
-        }
+    SHASH_FOR_EACH (node, &svr->remotes) {
+        struct ovsdb_jsonrpc_remote *remote = node->data;
+
+       LIST_FOR_EACH (s, node, &remote->sessions) {
+           HMAP_FOR_EACH_WITH_HASH (m, node,
+                                     json_hash(monitor_id, 0), &s->monitors) {
+               if (json_equal(m->monitor_id, monitor_id)) {
+                   return m;
+               }
+           }
+       }
     }
 
     return NULL;
-- 
2.1.4


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

Reply via email to