return CMD_WARNING_CONFIG_FAILED;
}
+ osr_debug("SR (%s): Remove Prefix %pFX with index %u", __func__,
+ (struct prefix *)&srp->prefv4, srp->sid);
+
/* Get Interface */
ifp = if_lookup_by_index(srp->nhlfe.ifindex, VRF_DEFAULT);
if (ifp == NULL) {
vty_out(vty, "interface for prefix %s not found.\n",
argv[idx]->arg);
- return CMD_WARNING_CONFIG_FAILED;
+ /* silently remove from list */
+ listnode_delete(OspfSR.self->ext_prefix, srp);
+ XFREE(MTYPE_OSPF_SR_PARAMS, srp);
+ return CMD_SUCCESS;
}
/* Update Extended Prefix LSA */
return CMD_WARNING;
}
- osr_debug("SR (%s): Remove Prefix %pFX with index %u", __func__,
- (struct prefix *)&srp->prefv4, srp->sid);
-
/* Delete NHLFE if NO-PHP is set and EXPLICIT NULL not set */
if (CHECK_FLAG(srp->flags, EXT_SUBTLV_PREFIX_SID_NPFLG)
&& !CHECK_FLAG(srp->flags, EXT_SUBTLV_PREFIX_SID_EFLG))