Adding ONOS Segment Routing CLI files to new repo
diff --git a/cli/vendor.py b/cli/vendor.py
new file mode 100755
index 0000000..ca78c01
--- /dev/null
+++ b/cli/vendor.py
@@ -0,0 +1,76 @@
+#!/usr/bin/python
+#
+# Copyright (c) 2010,2011,2012,2013 Big Switch Networks, Inc.
+#
+# Licensed under the Eclipse Public License, Version 1.0 (the
+# "License"); you may not use this file except in compliance with the
+# License. You may obtain a copy of the License at
+#
+#      http://www.eclipse.org/legal/epl-v10.html
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+# implied. See the License for the specific language governing
+# permissions and limitations under the License.
+#
+
+#
+
+#
+#  vendor.py - parse OUI information and look up vendors
+
+import re
+import os
+from pkg_resources import resource_stream
+
+class VendorDB():
+    
+    vendors = {}
+    
+    def init(self):
+            f = resource_stream(__name__, 'data/oui.txt')
+            if f is None:
+                p = os.path.join(os.path.dirname(__file__), "data", "oui.txt")
+                if not os.path.exists(p):
+                    print "Warning: Vendor OUI file could not be located!"
+                    return
+                f = open(p)
+
+            while True:
+                l = f.readline()
+                if len(l) ==0:
+                    break # EOF
+                if l.count("(base 16)"):
+                    oui = l[0:6]
+                    vendor = l[22:]
+                    self.add_vendor(oui,vendor)
+                
+    def add_vendor(self, oui, vendor):
+        oui = oui.strip()
+        vendor = vendor.strip()
+        if len(oui) == 6 and len(vendor) > 1:
+            self.vendors[oui]=vendor
+        
+    def get_vendor(self, mac):
+        if len(mac) < 6:
+            return "unknown"
+        mac = mac.upper()  # To upper case
+        mac = re.sub(':','',mac) # filter any ":"
+        mac = mac[0:6]
+    
+        # Strip broadcast and local bit
+        b = hex(int(mac[1:2],16) & int('1100',2))[2:3]
+        mac = mac[0:1]+b.upper()+mac[2:6]
+        
+        if mac in self.vendors:
+            return self.vendors[mac]
+        else:
+            return "Unknown"
+        
+# Show all records
+
+if __name__ == '__main__':
+    db = VendorDB()
+    db.init()
+    print db.vendors