vppapigen: require reply ID different than caller ID 74/10974/2
authorMarek Gradzki <mgradzki@cisco.com>
Tue, 6 Mar 2018 09:56:26 +0000 (10:56 +0100)
committerOle Trøan <otroan@employees.org>
Tue, 6 Mar 2018 11:24:17 +0000 (11:24 +0000)
Change-Id: I316dc99881bce6a36904863d3c1c049b4f5cf658
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
src/tools/vppapigen/vppapigen.py

index 620b2ef..a1bb0e1 100755 (executable)
@@ -345,6 +345,10 @@ class VPPAPIParser(object):
                              | RPC ID RETURNS ID ';'
                              | RPC ID RETURNS STREAM ID ';'
                              | RPC ID RETURNS ID EVENTS event_list ';' '''
+        if p[2] == p[4]:
+            # Verify that caller and reply differ
+            self._parse_error('Reply ID ({}) should not be equal to Caller ID'.format(p[2]),
+                              self._token_coord(p, 1))
         if len(p) == 8:
             p[0] = Service(p[2], p[4], p[6])
         elif len(p) == 7: