Example #1
0
def I11(kv_pair):
    Oo0o0000o0o0 = lisp.lisp_ddt_entry()
    if 86 - 86: OoOoOO00 % I1IiiI
    for oo in kv_pair.keys():
        IiII1I1i1i1ii = kv_pair[oo]
        if 44 - 44: oO0o / Oo0Ooo - II111iiii - i11iIiiIii % I1Ii111
        if (oo == "instance-id"):
            O0OoOoo00o = IiII1I1i1i1ii.split("-")
            if (O0OoOoo00o[0] == ""): continue
            if 31 - 31: II111iiii + OoO0O00.I1Ii111
            OoOooOOOO = (kv_pair.has_key("eid-prefix") == False
                         or kv_pair["eid-prefix"] == "")
            i11iiII = (kv_pair.has_key("group-prefix") == False
                       or kv_pair["group-prefix"] == "")
            if 34 - 34: OOooOOo % OoooooooOO / i1IIi.iII111i + O0
            if (OoOooOOOO and i11iiII):
                Oo0o0000o0o0.eid.store_iid_range(int(O0OoOoo00o[0]),
                                                 int(O0OoOoo00o[1]))
            else:
                Oo0o0000o0o0.eid.instance_id = int(O0OoOoo00o[0])
                Oo0o0000o0o0.group.instance_id = int(O0OoOoo00o[0])
                if 42 - 42: OOooOOo / i1IIi + i11iIiiIii - Ii1I
                if 78 - 78: OoO0O00
        if (oo == "eid-prefix"):
            Oo0o0000o0o0.eid.store_prefix(IiII1I1i1i1ii)
            if 18 - 18: O0 - iII111i / iII111i + ooOoO0o % ooOoO0o - IiII
        if (oo == "group-prefix"):
            Oo0o0000o0o0.group.store_prefix(IiII1I1i1i1ii)
            if 62 - 62: iII111i - IiII - OoOoOO00 % i1IIi / oO0o
            if 77 - 77: II111iiii - II111iiii.I1IiiI / o0oOOo0O0Ooo
            if 14 - 14: I11i % O0
            if 41 - 41: i1IIi + I1Ii111 + OOooOOo - IiII
            if 77 - 77: Oo0Ooo.IiII % ooOoO0o
            if 42 - 42: oO0o - i1IIi / i11iIiiIii + OOooOOo + OoO0O00
            if 17 - 17: oO0o.Oo0Ooo.I1ii11iIi11i
    IIi = lisp.lisp_ddt_cache_lookup(Oo0o0000o0o0.eid, Oo0o0000o0o0.group,
                                     True)
    if (IIi != None and IIi.is_auth_prefix() == False): return
    if 38 - 38: Ii1I / Oo0Ooo
    if 76 - 76: O0 / o0oOOo0O0Ooo.I1IiiI * Ii1I - OOooOOo
    if 76 - 76:
        i11iIiiIii / iIii1I11I1II1.I1ii11iIi11i % OOooOOo / OoooooooOO % oO0o
    if 75 - 75: iII111i
    Oo0o0000o0o0.add_cache()
    return
    if 97 - 97: i11iIiiIii
    if 32 - 32: Oo0Ooo * O0 % oO0o % Ii1I.IiII
    if 61 - 61: ooOoO0o
    if 79 - 79: Oo0Ooo + I1IiiI - iII111i
    if 83 - 83: ooOoO0o
    if 64 - 64: OoO0O00 % ooOoO0o % iII111i / OoOoOO00 - OoO0O00
    if 74 - 74: iII111i * O0
Example #2
0
def lisp_ddt_show_delegations_lookup(eid_str):
    eid, eid_exact, group, group_exact = \
        lispconfig.lisp_get_lookup_string(eid_str)

    output = "<br>"

    #
    # Do lookup in DDT-cache.
    #
    ddt_entry = lisp.lisp_ddt_cache_lookup(eid, group, eid_exact)
    if (ddt_entry == None):
        banner = "DDT entry not found for non-authoritative EID"
        output += "{} {}".format(lisp.lisp_print_sans(banner),
                                 lisp.lisp_print_cour(eid_str))
        return (output + "<br>")
    #endif

    if (ddt_entry.is_auth_prefix()):
        if (group.is_null()):
            neg_prefix = lisp.lisp_ddt_compute_neg_prefix(
                eid, ddt_entry, lisp.lisp_ddt_cache)
            neg_prefix = lisp.lisp_print_cour(neg_prefix.print_prefix()),
        else:
            gneg_prefix = lisp.lisp_ddt_compute_neg_prefix(
                group, ddt_entry, lisp.lisp_ddt_cache)
            neg_prefix = lisp.lisp_ddt_compute_neg_prefix(
                eid, ddt_entry, ddt_entry.source_cache)
            neg_prefix = lisp.lisp_print_cour( \
                "(" + neg_prefix.print_prefix() + ", ")
            gneg_prefix = lisp.lisp_print_cour( \
                gneg_prefix.print_prefix() + ")")
            neg_prefix += gneg_prefix
        #endif

        output += "{} {} {} {} {} {}".format( \
            lisp.lisp_print_sans("DDT authoritative-prefix entry"),
            lisp.lisp_print_cour(ddt_entry.print_eid_tuple()),
            lisp.lisp_print_sans("found for EID"),
            lisp.lisp_print_cour(eid_str),
            lisp.lisp_print_sans("<br><br>Computed negative-prefix"),
            neg_prefix)
    else:
        output += "{} {} {} {} {} {}".format( \
            lisp.lisp_print_sans("DDT entry"),
            lisp.lisp_print_cour(ddt_entry.print_eid_tuple()),
            lisp.lisp_print_sans("found for EID"),
            lisp.lisp_print_cour(eid_str),
            lisp.lisp_print_sans(", delegation-type"),
            lisp.lisp_print_cour(ddt_entry.print_referral_type()))
    #endif
    return (output + "<br>")
Example #3
0
def lisp_ddt_auth_prefix_command(kv_pair):
    ddt_entry = lisp.lisp_ddt_entry()

    for kw in list(kv_pair.keys()):
        value = kv_pair[kw]

        if (kw == "instance-id"):
            v = value.split("-")
            if (v[0] == ""): continue

            no_eid = ("eid-prefix" not in kv_pair
                      or kv_pair["eid-prefix"] == "")
            no_group = ("group-prefix" not in kv_pair
                        or kv_pair["group-prefix"] == "")

            if (no_eid and no_group):
                ddt_entry.eid.store_iid_range(int(v[0]), int(v[1]))
            else:
                ddt_entry.eid.instance_id = int(v[0])
                ddt_entry.group.instance_id = int(v[0])
            #endif
        #endif
        if (kw == "eid-prefix"):
            ddt_entry.eid.store_prefix(value)
        #endif
        if (kw == "group-prefix"):
            ddt_entry.group.store_prefix(value)
        #endif
    #endfor

    #
    # Do not configure auth-prefix if delegation already exists. Always give
    # a configured delegation priority over a configured auth-prefix.
    #
    ddt = lisp.lisp_ddt_cache_lookup(ddt_entry.eid, ddt_entry.group, True)
    if (ddt != None and ddt.is_auth_prefix() == False): return

    #
    # Store in map-cache data structures.
    #
    ddt_entry.add_cache()
    return
Example #4
0
def o000O0o(eid_str):
    iI1iII1, oO0OOoo0OO, O0ii1ii1ii, oooooOoo0ooo = lispconfig.lisp_get_lookup_string(
        eid_str)
    if 6 - 6: I11i - Ii1I + iIii1I11I1II1 - I1Ii111 - i11iIiiIii
    if 79 - 79: OoOoOO00 - O0 * OoO0O00 + OoOoOO00 % O0 * O0
    oOOo0 = "<br>"
    if 54 - 54: O0 - IiII % OOooOOo
    if 77 - 77: OoOoOO00 / I1IiiI / OoO0O00 + OoO0O00.OOooOOo
    if 38 - 38: I1Ii111
    if 7 - 7: O0.iII111i % I1ii11iIi11i - I1IiiI - iIii1I11I1II1
    Oo0o0000o0o0 = lisp.lisp_ddt_cache_lookup(iI1iII1, O0ii1ii1ii, oO0OOoo0OO)
    if (Oo0o0000o0o0 == None):
        I111IIIiIii = "DDT entry not found for non-authoritative EID"
        oOOo0 += "{} {}".format(lisp.lisp_print_sans(I111IIIiIii),
                                lisp.lisp_print_cour(eid_str))
        return (oOOo0 + "<br>")
        if 85 - 85: I1ii11iIi11i % iII111i % ooOoO0o
        if 82 - 82: i11iIiiIii - iII111i * OoooooooOO / I11i
    if (Oo0o0000o0o0.is_auth_prefix()):
        if (O0ii1ii1ii.is_null()):
            i1oOo = lisp.lisp_ddt_compute_neg_prefix(iI1iII1, Oo0o0000o0o0,
                                                     lisp.lisp_ddt_cache)
            i1oOo = lisp.lisp_print_cour(i1oOo.print_prefix()),
        else:
            oOO00Oo = lisp.lisp_ddt_compute_neg_prefix(O0ii1ii1ii,
                                                       Oo0o0000o0o0,
                                                       lisp.lisp_ddt_cache)
            i1oOo = lisp.lisp_ddt_compute_neg_prefix(iI1iII1, Oo0o0000o0o0,
                                                     Oo0o0000o0o0.source_cache)
            i1oOo = lisp.lisp_print_cour("(" + i1oOo.print_prefix() + ", ")
            if 6 - 6: oO0o
            oOO00Oo = lisp.lisp_print_cour(oOO00Oo.print_prefix() + ")")
            if 68 - 68: OoOoOO00 - OoO0O00
            i1oOo += oOO00Oo
            if 28 - 28: OoO0O00.OOooOOo / OOooOOo + Oo0Ooo.I1ii11iIi11i
            if 1 - 1: iIii1I11I1II1 / II111iiii
        oOOo0 += "{} {} {} {} {} {}".format(
            lisp.lisp_print_sans("DDT authoritative-prefix entry"),
            # I11i . OoooooooOO
            lisp.lisp_print_cour(Oo0o0000o0o0.print_eid_tuple()),
            lisp.lisp_print_sans("found for EID"),
            lisp.lisp_print_cour(eid_str),
            lisp.lisp_print_sans("<br><br>Computed negative-prefix"),
            i1oOo)
    else:
        oOOo0 += "{} {} {} {} {} {}".format(
            lisp.lisp_print_sans("DDT entry"),
            # o0oOOo0O0Ooo % iII111i * O0
            lisp.lisp_print_cour(Oo0o0000o0o0.print_eid_tuple()),
            lisp.lisp_print_sans("found for EID"),
            lisp.lisp_print_cour(eid_str),
            lisp.lisp_print_sans(", delegation-type"),
            lisp.lisp_print_cour(Oo0o0000o0o0.print_referral_type()))
        if 87 - 87: i11iIiiIii
    return (oOOo0 + "<br>")
    if 93 - 93: I1ii11iIi11i - OoO0O00 % i11iIiiIii.iII111i / iII111i - I1Ii111
    if 9 - 9:
        I1ii11iIi11i / Oo0Ooo - I1IiiI / OoooooooOO / iIii1I11I1II1 - o0oOOo0O0Ooo
    if 91 - 91: iII111i % i1IIi % iIii1I11I1II1
    if 20 - 20: OOooOOo % Ii1I / Ii1I + Ii1I
    if 45 - 45: oO0o - IiII - OoooooooOO - OoO0O00.II111iiii / O0
    if 51 - 51: O0 + iII111i
    if 8 - 8: oO0o * OoOoOO00 - Ii1I - OoO0O00 * OOooOOo % I1IiiI
Example #5
0
def O0ooo0O0oo0(eid_str):
    oo0oOo, o000O0o, iI1iII1, oO0OOoo0OO = lispconfig.lisp_get_lookup_string(
        eid_str)
    if 65 - 65: Ii1I.iIii1I11I1II1 / O0 - Ii1I
    if 21 - 21: I1IiiI * iIii1I11I1II1
    oooooOoo0ooo = "<br>"
    if 6 - 6: I11i - Ii1I + iIii1I11I1II1 - I1Ii111 - i11iIiiIii
    if 79 - 79: OoOoOO00 - O0 * OoO0O00 + OoOoOO00 % O0 * O0
    if 61 - 61: II111iiii
    if 64 - 64: ooOoO0o / OoOoOO00 - O0 - I11i
    Oo0o0000o0o0 = lisp.lisp_ddt_cache_lookup(oo0oOo, iI1iII1, o000O0o)
    if (Oo0o0000o0o0 == None):
        O0oOoOOOoOO = "DDT entry not found for non-authoritative EID"
        oooooOoo0ooo += "{} {}".format(lisp.lisp_print_sans(O0oOoOOOoOO),
                                       lisp.lisp_print_cour(eid_str))
        return (oooooOoo0ooo + "<br>")
        if 38 - 38: I1Ii111
        if 7 - 7: O0.iII111i % I1ii11iIi11i - I1IiiI - iIii1I11I1II1
    if (Oo0o0000o0o0.is_auth_prefix()):
        if (iI1iII1.is_null()):
            I111IIIiIii = lisp.lisp_ddt_compute_neg_prefix(
                oo0oOo, Oo0o0000o0o0, lisp.lisp_ddt_cache)
            I111IIIiIii = lisp.lisp_print_cour(I111IIIiIii.print_prefix()),
        else:
            oO0000OOo00 = lisp.lisp_ddt_compute_neg_prefix(
                iI1iII1, Oo0o0000o0o0, lisp.lisp_ddt_cache)
            I111IIIiIii = lisp.lisp_ddt_compute_neg_prefix(
                oo0oOo, Oo0o0000o0o0, Oo0o0000o0o0.source_cache)
            I111IIIiIii = lisp.lisp_print_cour("(" +
                                               I111IIIiIii.print_prefix() +
                                               ", ")
            if 27 - 27: I1IiiI % I1IiiI
            oO0000OOo00 = lisp.lisp_print_cour(oO0000OOo00.print_prefix() +
                                               ")")
            if 1 - 1: OoO0O00 - oO0o.I11i.OoO0O00 / Oo0Ooo + I11i
            I111IIIiIii += oO0000OOo00
            if 78 - 78: O0.oO0o.II111iiii % OOooOOo
            if 49 - 49: Ii1I / OoO0O00.II111iiii
        oooooOoo0ooo += "{} {} {} {} {} {}".format(
            lisp.lisp_print_sans("DDT authoritative-prefix entry"),
            # OOooOOo + Oo0Ooo . i11iIiiIii - i1IIi / iIii1I11I1II1
            lisp.lisp_print_cour(Oo0o0000o0o0.print_eid_tuple()),
            lisp.lisp_print_sans("found for EID"),
            lisp.lisp_print_cour(eid_str),
            lisp.lisp_print_sans("<br><br>Computed negative-prefix"),
            I111IIIiIii)
    else:
        oooooOoo0ooo += "{} {} {} {} {} {}".format(
            lisp.lisp_print_sans("DDT entry"),
            # i11iIiiIii / I11i
            lisp.lisp_print_cour(Oo0o0000o0o0.print_eid_tuple()),
            lisp.lisp_print_sans("found for EID"),
            lisp.lisp_print_cour(eid_str),
            lisp.lisp_print_sans(", delegation-type"),
            lisp.lisp_print_cour(Oo0o0000o0o0.print_referral_type()))
        if 18 - 18: o0oOOo0O0Ooo % iII111i * O0
    return (oooooOoo0ooo + "<br>")
    if 87 - 87: i11iIiiIii
    if 93 - 93: I1ii11iIi11i - OoO0O00 % i11iIiiIii.iII111i / iII111i - I1Ii111
    if 9 - 9:
        I1ii11iIi11i / Oo0Ooo - I1IiiI / OoooooooOO / iIii1I11I1II1 - o0oOOo0O0Ooo
    if 91 - 91: iII111i % i1IIi % iIii1I11I1II1
    if 20 - 20: OOooOOo % Ii1I / Ii1I + Ii1I
    if 45 - 45: oO0o - IiII - OoooooooOO - OoO0O00.II111iiii / O0
    if 51 - 51: O0 + iII111i
Example #6
0
def lisp_ms_show_site_lookup(input_str):
    eid, eid_exact, group, group_exact = \
        lispconfig.lisp_get_lookup_string(input_str)

    output = "<br>"

    #
    # Do lookup in site-cache first.
    #
    site_eid = lisp.lisp_site_eid_lookup(eid, group, eid_exact)
    if (site_eid and site_eid.is_star_g() == False):
        eid_str = site_eid.print_eid_tuple()
        registered = lisp.green("registered", True) if site_eid.registered \
            else lisp.red("not registered", True)
        output += "{} '{}' {} {} {} {} {} {}".format( \
            lisp.lisp_print_sans("Site"),
            lisp.lisp_print_cour(site_eid.site.site_name),
            lisp.lisp_print_sans("entry"),
            lisp.lisp_print_cour(eid_str),
            lisp.lisp_print_sans("found for EID"),
            lisp.lisp_print_cour(input_str),
            lisp.lisp_print_sans("site EID is"),
            lisp.lisp_print_cour(registered))
        return (output + "<br>")
    #endif

    #
    # Compute negative prefixes.
    #
    neg_prefix, gneg_prefix, action = \
        lisp.lisp_ms_compute_neg_prefix(eid, group)
    if (group.is_null()):
        neg_prefix = lisp.lisp_print_cour(neg_prefix.print_prefix())
    else:
        gneg_prefix = lisp.lisp_print_cour(gneg_prefix.print_prefix())
        neg_prefix = lisp.lisp_print_cour(neg_prefix.print_prefix())
        neg_prefix = "(" + neg_prefix + ", " + gneg_prefix + ")"
    #endif

    if (action == lisp.LISP_DDT_ACTION_NOT_AUTH):
        banner = "Site entry not found for non-authoritative EID"
        output += "{} {} {} {}".format(
            lisp.lisp_print_sans(banner), lisp.lisp_print_cour(input_str),
            lisp.lisp_print_sans("<br><br>Computed negative-prefix"),
            neg_prefix)
    #endif

    #
    # Try to find a auth-prefix in the DDT-cache.
    #
    if (action == lisp.LISP_DDT_ACTION_DELEGATION_HOLE):
        ddt_entry = lisp.lisp_ddt_cache_lookup(eid, group, False)
        if (ddt_entry == None or ddt_entry.is_auth_prefix() == False):
            banner = "Could not find Authoritative-prefix entry for"
            output += "{} {} {} {}".format(
                lisp.lisp_print_sans(banner), lisp.lisp_print_cour(input_str),
                lisp.lisp_print_sans("<br><br>Computed negative-prefix"),
                neg_prefix)
        else:
            eid_str = ddt_entry.print_eid_tuple()
            output += "{} {} {} {} {} {}".format( \
                lisp.lisp_print_sans("Authoritative-prefix entry"),
                lisp.lisp_print_cour(eid_str),
                lisp.lisp_print_sans("found for EID"),
                lisp.lisp_print_cour(input_str),
                lisp.lisp_print_sans("<br><br>Computed negative-prefix"),
                neg_prefix)
        #endif
    #endif
    return (output + "<br>")