def pcap_report(argv):
    writecisco = False
    reportmacs = False
    ciscostyle = False
    fname = None
    vlan = None
    intf = None
    try:
        optlist, args = getopt.getopt(argv[1:], "h?mcC:v:i:")
    except getopt.GetoptError:
            print smtpcli.__doc__
            return
    for opt, val in optlist:
        if opt in ("-?", "-h"):
            print pcap_report.__doc__
            return
        elif opt == "-C":
            fname = val
            writecisco = True
        elif opt == "-m":
            reportmacs = True
        elif opt == "-v":
            vlan = int(val)
        elif opt == "-i":
            intf = val
        elif opt == "-c":
            ciscostyle = True

    if not args:
        print pcap_report.__doc__
        return

    if reportmacs:
        dst, src = get_unique_macs(args)
        if writecisco:
            if vlan is None or intf is None:
                print "You need to supply vlan and interface options."
                return
            with open(fname, "w") as fo:
                while dst:
                    mac = dst.pop()
                    fo.write(CISCO_CF_TEMPLATE.format(mac=mac.to_cisco(), vlan=vlan, interface=intf))
                    fo.write("\n")
                fo.write("end\n")
        else:
            for h, s in (("Destination Macs:", dst), ("Source macs:", src)):
                print h
                while s:
                    mac = s.pop()
                    if ciscostyle:
                        print "  ", mac.to_cisco()
                    else:
                        print "  ", mac.to_hex()
Confirm that passing a child model works the same as passing the
dataset/ETHPy150Open kdart/pycopia/net/pycopia/pcap/report.py/pcap_report--crossover with--dataset/ETHPy150Open carljm/django-model-utils/model_utils/tests/tests.py/InheritanceManagerUsingModelsTests.test_select_subclass_by_child_model