X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;ds=sidebyside;f=pkg%2Frpe%2Frmr.go;h=c1f126c6d2225b1fa156bcaf37943b2391311bf2;hb=refs%2Fchanges%2F78%2F6178%2F3;hp=56d2ff78a1fc9be5f9cf0702028db055484513a1;hpb=b3c466d8ab4254f6b34a1f0af926c79a92ea372b;p=ric-plt%2Frtmgr.git diff --git a/pkg/rpe/rmr.go b/pkg/rpe/rmr.go index 56d2ff7..c1f126c 100644 --- a/pkg/rpe/rmr.go +++ b/pkg/rpe/rmr.go @@ -99,25 +99,26 @@ func (r *Rmr) generateRMRPolicies(eps rtmgr.Endpoints, rcs *rtmgr.RicComponents, for _, value := range rcs.MeidMap { if _, v := keys[key+value+"\n"]; !v { rawrt = append(rawrt, key+value+"\n") - appendedindex := uint16(len(rawrt)-1) - keys[key+value+"\n"] = RouteIndex{true,appendedindex} + appendedindex := uint16(len(rawrt) - 1) + keys[key+value+"\n"] = RouteIndex{true, appendedindex} count++ } - if strings.Contains(value,"mme_ar") { - tmpstr := strings.Split(value,"|") - - MEID := strings.TrimSuffix(tmpstr[2],"\n") - - mapindex := "mme_del|"+MEID+"\n" - i := keys[mapindex].index - if keys[mapindex].flag { - copy(rawrt[i:], rawrt[i+1:]) - rawrt[len(rawrt)-1] = "" - rawrt = rawrt[:len(rawrt)-1] - delete(keys,mapindex) - count-- - } - } + if strings.Contains(value, "mme_ar") { + tmpstr := strings.Split(value, "|") + + //MEID entry for mme_ar must always contain 3 strings speartred by | i.e "mme_ar||" + MEID := strings.TrimSuffix(tmpstr[2], "\n") + + mapindex := "mme_del|" + MEID + "\n" + i := keys[mapindex].index + if keys[mapindex].flag { + copy(rawrt[i:], rawrt[i+1:]) + rawrt[len(rawrt)-1] = "" + rawrt = rawrt[:len(rawrt)-1] + delete(keys, mapindex) + count-- + } + } } rawrt = append(rawrt, key+"meid_map|end|"+strconv.Itoa(count)+"\n")