1*b636d99dSDavid van Moolenbroek /* 2*b636d99dSDavid van Moolenbroek * Redistribution and use in source and binary forms, with or without 3*b636d99dSDavid van Moolenbroek * modification, are permitted provided that: (1) source code 4*b636d99dSDavid van Moolenbroek * distributions retain the above copyright notice and this paragraph 5*b636d99dSDavid van Moolenbroek * in its entirety, and (2) distributions including binary code include 6*b636d99dSDavid van Moolenbroek * the above copyright notice and this paragraph in its entirety in 7*b636d99dSDavid van Moolenbroek * the documentation or other materials provided with the distribution. 8*b636d99dSDavid van Moolenbroek * THIS SOFTWARE IS PROVIDED ``AS IS'' AND 9*b636d99dSDavid van Moolenbroek * WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT 10*b636d99dSDavid van Moolenbroek * LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 11*b636d99dSDavid van Moolenbroek * FOR A PARTICULAR PURPOSE. 12*b636d99dSDavid van Moolenbroek * 13*b636d99dSDavid van Moolenbroek * Original code by Hannes Gredler (hannes@juniper.net) 14*b636d99dSDavid van Moolenbroek */ 15*b636d99dSDavid van Moolenbroek 16*b636d99dSDavid van Moolenbroek #include <sys/cdefs.h> 17*b636d99dSDavid van Moolenbroek #ifndef lint 18*b636d99dSDavid van Moolenbroek __RCSID("$NetBSD: oui.c,v 1.5 2015/03/31 21:59:35 christos Exp $"); 19*b636d99dSDavid van Moolenbroek #endif 20*b636d99dSDavid van Moolenbroek 21*b636d99dSDavid van Moolenbroek #define NETDISSECT_REWORKED 22*b636d99dSDavid van Moolenbroek #ifdef HAVE_CONFIG_H 23*b636d99dSDavid van Moolenbroek #include "config.h" 24*b636d99dSDavid van Moolenbroek #endif 25*b636d99dSDavid van Moolenbroek 26*b636d99dSDavid van Moolenbroek #include <tcpdump-stdinc.h> 27*b636d99dSDavid van Moolenbroek #include "interface.h" 28*b636d99dSDavid van Moolenbroek #include "oui.h" 29*b636d99dSDavid van Moolenbroek 30*b636d99dSDavid van Moolenbroek /* FIXME complete OUI list using a script */ 31*b636d99dSDavid van Moolenbroek 32*b636d99dSDavid van Moolenbroek const struct tok oui_values[] = { 33*b636d99dSDavid van Moolenbroek { OUI_ENCAP_ETHER, "Ethernet" }, 34*b636d99dSDavid van Moolenbroek { OUI_CISCO, "Cisco" }, 35*b636d99dSDavid van Moolenbroek { OUI_NORTEL, "Nortel Networks SONMP" }, 36*b636d99dSDavid van Moolenbroek { OUI_CISCO_90, "Cisco bridged" }, 37*b636d99dSDavid van Moolenbroek { OUI_RFC2684, "Ethernet bridged" }, 38*b636d99dSDavid van Moolenbroek { OUI_ATM_FORUM, "ATM Forum" }, 39*b636d99dSDavid van Moolenbroek { OUI_CABLE_BPDU, "DOCSIS Spanning Tree" }, 40*b636d99dSDavid van Moolenbroek { OUI_APPLETALK, "Appletalk" }, 41*b636d99dSDavid van Moolenbroek { OUI_JUNIPER, "Juniper" }, 42*b636d99dSDavid van Moolenbroek { OUI_HP, "Hewlett-Packard" }, 43*b636d99dSDavid van Moolenbroek { OUI_IEEE_8021_PRIVATE, "IEEE 802.1 Private"}, 44*b636d99dSDavid van Moolenbroek { OUI_IEEE_8023_PRIVATE, "IEEE 802.3 Private"}, 45*b636d99dSDavid van Moolenbroek { OUI_TIA, "ANSI/TIA"}, 46*b636d99dSDavid van Moolenbroek { OUI_DCBX, "DCBX"}, 47*b636d99dSDavid van Moolenbroek { OUI_NICIRA, "Nicira Networks" }, 48*b636d99dSDavid van Moolenbroek { OUI_BSN, "Big Switch Networks" }, 49*b636d99dSDavid van Moolenbroek { OUI_VELLO, "Vello Systems" }, 50*b636d99dSDavid van Moolenbroek { OUI_HP2, "HP" }, 51*b636d99dSDavid van Moolenbroek { OUI_HPLABS, "HP-Labs" }, 52*b636d99dSDavid van Moolenbroek { OUI_INFOBLOX, "Infoblox Inc" }, 53*b636d99dSDavid van Moolenbroek { OUI_ONLAB, "Open Networking Lab" }, 54*b636d99dSDavid van Moolenbroek { OUI_FREESCALE, "Freescale" }, 55*b636d99dSDavid van Moolenbroek { OUI_NETRONOME, "Netronome" }, 56*b636d99dSDavid van Moolenbroek { 0, NULL } 57*b636d99dSDavid van Moolenbroek }; 58*b636d99dSDavid van Moolenbroek 59*b636d99dSDavid van Moolenbroek /* 60*b636d99dSDavid van Moolenbroek * SMI Network Management Private Enterprise Codes for organizations. 61*b636d99dSDavid van Moolenbroek * 62*b636d99dSDavid van Moolenbroek * XXX - these also appear in FreeRadius dictionary files, with items such 63*b636d99dSDavid van Moolenbroek * as 64*b636d99dSDavid van Moolenbroek * 65*b636d99dSDavid van Moolenbroek * VENDOR Cisco 9 66*b636d99dSDavid van Moolenbroek * 67*b636d99dSDavid van Moolenbroek * List taken from Ethereal's epan/sminmpec.c. 68*b636d99dSDavid van Moolenbroek */ 69*b636d99dSDavid van Moolenbroek const struct tok smi_values[] = { 70*b636d99dSDavid van Moolenbroek { SMI_IETF, "IETF (reserved)"}, 71*b636d99dSDavid van Moolenbroek { SMI_ACC, "ACC"}, 72*b636d99dSDavid van Moolenbroek { SMI_CISCO, "Cisco"}, 73*b636d99dSDavid van Moolenbroek { SMI_HEWLETT_PACKARD, "Hewlett Packard"}, 74*b636d99dSDavid van Moolenbroek { SMI_SUN_MICROSYSTEMS, "Sun Microsystems"}, 75*b636d99dSDavid van Moolenbroek { SMI_MERIT, "Merit"}, 76*b636d99dSDavid van Moolenbroek { SMI_SHIVA, "Shiva"}, 77*b636d99dSDavid van Moolenbroek { SMI_ERICSSON, "Ericsson AB"}, 78*b636d99dSDavid van Moolenbroek { SMI_CISCO_VPN5000, "Cisco VPN 5000"}, 79*b636d99dSDavid van Moolenbroek { SMI_LIVINGSTON, "Livingston"}, 80*b636d99dSDavid van Moolenbroek { SMI_MICROSOFT, "Microsoft"}, 81*b636d99dSDavid van Moolenbroek { SMI_3COM, "3Com"}, 82*b636d99dSDavid van Moolenbroek { SMI_ASCEND, "Ascend"}, 83*b636d99dSDavid van Moolenbroek { SMI_BAY, "Bay Networks"}, 84*b636d99dSDavid van Moolenbroek { SMI_FOUNDRY, "Foundry"}, 85*b636d99dSDavid van Moolenbroek { SMI_VERSANET, "Versanet"}, 86*b636d99dSDavid van Moolenbroek { SMI_REDBACK, "Redback"}, 87*b636d99dSDavid van Moolenbroek { SMI_JUNIPER, "Juniper Networks"}, 88*b636d99dSDavid van Moolenbroek { SMI_APTIS, "Aptis"}, 89*b636d99dSDavid van Moolenbroek { SMI_CISCO_VPN3000, "Cisco VPN 3000"}, 90*b636d99dSDavid van Moolenbroek { SMI_COSINE, "CoSine Communications"}, 91*b636d99dSDavid van Moolenbroek { SMI_NETSCREEN, "Netscreen"}, 92*b636d99dSDavid van Moolenbroek { SMI_SHASTA, "Shasta"}, 93*b636d99dSDavid van Moolenbroek { SMI_NOMADIX, "Nomadix"}, 94*b636d99dSDavid van Moolenbroek { SMI_SIEMENS, "Siemens"}, 95*b636d99dSDavid van Moolenbroek { SMI_CABLELABS, "CableLabs"}, 96*b636d99dSDavid van Moolenbroek { SMI_UNISPHERE, "Unisphere Networks"}, 97*b636d99dSDavid van Moolenbroek { SMI_CISCO_BBSM, "Cisco BBSM"}, 98*b636d99dSDavid van Moolenbroek { SMI_THE3GPP2, "3rd Generation Partnership Project 2 (3GPP2)"}, 99*b636d99dSDavid van Moolenbroek { SMI_IP_UNPLUGGED, "ipUnplugged"}, 100*b636d99dSDavid van Moolenbroek { SMI_ISSANNI, "Issanni Communications"}, 101*b636d99dSDavid van Moolenbroek { SMI_QUINTUM, "Quintum"}, 102*b636d99dSDavid van Moolenbroek { SMI_INTERLINK, "Interlink"}, 103*b636d99dSDavid van Moolenbroek { SMI_COLUBRIS, "Colubris"}, 104*b636d99dSDavid van Moolenbroek { SMI_COLUMBIA_UNIVERSITY, "Columbia University"}, 105*b636d99dSDavid van Moolenbroek { SMI_THE3GPP, "3GPP"}, 106*b636d99dSDavid van Moolenbroek { SMI_GEMTEK_SYSTEMS, "Gemtek-Systems"}, 107*b636d99dSDavid van Moolenbroek { SMI_WIFI_ALLIANCE, "Wi-Fi Alliance"}, 108*b636d99dSDavid van Moolenbroek { 0, NULL} 109*b636d99dSDavid van Moolenbroek }; 110