OSDN Git Service

modify tunnel port handling
[ti2/ti2.git] / linkpair / collect / agent / ovs_agent.py
index b25a7d8..c41bbcb 100755 (executable)
@@ -71,6 +71,8 @@ class OVSAgent(BaseAgent):
                             1).strip().split(",")
                         for port_option in port_options:
                             (opt_name, opt_value) = port_option.split("=")
+                            opt_name = opt_name.strip()
+                            opt_value = opt_value.strip()
                             port_meta[opt_name] = opt_value
                     elif self._u.d_push(re.search(r'Port "*', port_spec)) is not None:
                         break
@@ -151,7 +153,7 @@ class OVSAgent(BaseAgent):
                             Port(peer_dst, Port.DEFAULT_TYPE, peer_dst_meta),
                             self._formatter.VETH_FORMAT)
 
-                # none patch port
+                # none patch/veth port
                 else:
                     # NOT Internal Bridge Port.
                     if self._cu.get_port_type(port_meta) != "internal":
@@ -170,8 +172,8 @@ class OVSAgent(BaseAgent):
 
                         # tunnel port
                         elif self._u.d_push(re.match(r'(vxlan\d+)', port_name)) \
-                            or self._u.d_push(re.match(r'(gre\d+)', port_name)) \
-                                or self._u.d_push(re.match(r'(gre-\d+)', port_name)):
+                            or self._cu.get_port_type(port_meta) == "gre" \
+                                or self._cu.get_port_type(port_meta) == "stt":
                             self._cu._port_to_br[port_name] = br_src
                             self._cu.add_linkpair(
                                 Device(br_src, Device.BR_TYPE, br_src_meta),