}
if (circuit->circ_type == CIRCUIT_T_BROADCAST) {
- circuit->circuit_id = isis_circuit_id_gen(circuit->area->isis,
- circuit->interface);
+ circuit->circuit_id =
+ isis_circuit_id_gen(circuit->isis, circuit->interface);
if (!circuit->circuit_id) {
flog_err(
EC_ISIS_CONFIG,
circuit->lsp_regenerate_pending[0] = 0;
circuit->lsp_regenerate_pending[1] = 0;
- _ISIS_CLEAR_FLAG(circuit->area->isis->circuit_ids_used,
+ _ISIS_CLEAR_FLAG(circuit->isis->circuit_ids_used,
circuit->circuit_id);
circuit->circuit_id = 0;
} else if (circuit->circ_type == CIRCUIT_T_P2P) {
THREAD_TIMER_OFF(circuit->u.bc.t_refresh_pseudo_lsp[level - 1]);
circuit->lsp_regenerate_pending[level - 1] = 0;
- memcpy(id, circuit->area->isis->sysid, ISIS_SYS_ID_LEN);
+ memcpy(id, circuit->isis->sysid, ISIS_SYS_ID_LEN);
LSP_PSEUDO_ID(id) = circuit->circuit_id;
LSP_FRAGMENT(id) = 0;
lsp_purge_pseudo(id, circuit, level);
/* there was a dr elected, purge its LSPs from the db */
lsp_purge_pseudo(old_dr, circuit, level);
}
- memcpy(circuit->u.bc.l1_desig_is, circuit->area->isis->sysid,
+ memcpy(circuit->u.bc.l1_desig_is, circuit->isis->sysid,
ISIS_SYS_ID_LEN);
*(circuit->u.bc.l1_desig_is + ISIS_SYS_ID_LEN) =
circuit->circuit_id;
/* there was a dr elected, purge its LSPs from the db */
lsp_purge_pseudo(old_dr, circuit, level);
}
- memcpy(circuit->u.bc.l2_desig_is, circuit->area->isis->sysid,
+ memcpy(circuit->u.bc.l2_desig_is, circuit->isis->sysid,
ISIS_SYS_ID_LEN);
*(circuit->u.bc.l2_desig_is + ISIS_SYS_ID_LEN) =
circuit->circuit_id;
|| (circuit->u.bc.is_dr[level - 1] == 0))
return ISIS_ERROR;
- memcpy(lsp_id, circuit->area->isis->sysid, ISIS_SYS_ID_LEN);
+ memcpy(lsp_id, circuit->isis->sysid, ISIS_SYS_ID_LEN);
LSP_FRAGMENT(lsp_id) = 0;
LSP_PSEUDO_ID(lsp_id) = circuit->circuit_id;
|| (circuit->u.bc.is_dr[level - 1] == 0))
return ISIS_ERROR;
- memcpy(lsp_id, circuit->area->isis->sysid, ISIS_SYS_ID_LEN);
+ memcpy(lsp_id, circuit->isis->sysid, ISIS_SYS_ID_LEN);
LSP_PSEUDO_ID(lsp_id) = circuit->circuit_id;
LSP_FRAGMENT(lsp_id) = 0;
if ((circuit->u.bc.is_dr[0] == 0)
|| (circuit->is_type & IS_LEVEL_1) == 0) {
- memcpy(id, circuit->area->isis->sysid, ISIS_SYS_ID_LEN);
+ memcpy(id, circuit->isis->sysid, ISIS_SYS_ID_LEN);
LSP_PSEUDO_ID(id) = circuit->circuit_id;
LSP_FRAGMENT(id) = 0;
lsp_purge_pseudo(id, circuit, IS_LEVEL_1);
if ((circuit->u.bc.is_dr[1] == 0)
|| (circuit->is_type & IS_LEVEL_2) == 0) {
- memcpy(id, circuit->area->isis->sysid, ISIS_SYS_ID_LEN);
+ memcpy(id, circuit->isis->sysid, ISIS_SYS_ID_LEN);
LSP_PSEUDO_ID(id) = circuit->circuit_id;
LSP_FRAGMENT(id) = 0;
lsp_purge_pseudo(id, circuit, IS_LEVEL_2);
vrf_name = yang_dnode_get_string(args->dnode, NULL);
circuit = circuit_scan_by_ifp(ifp);
- if (circuit && circuit->area && circuit->area->isis
- && strcmp(circuit->area->isis->name, vrf_name)) {
+ if (circuit && circuit->area && circuit->isis
+ && strcmp(circuit->isis->name, vrf_name)) {
snprintf(args->errmsg, args->errmsg_len,
"ISIS circuit is already defined on vrf %s",
- circuit->area->isis->name);
+ circuit->isis->name);
return NB_ERR_VALIDATION;
}
}
if (circuit == NULL || circuit->area == NULL)
return NB_ERR_VALIDATION;
- if (circuit->area->isis->vrf_id != VRF_DEFAULT) {
+ if (circuit->isis->vrf_id != VRF_DEFAULT) {
snprintf(args->errmsg, args->errmsg_len,
"LDP-Sync only runs on Default VRF");
return NB_ERR_VALIDATION;
case NB_EV_APPLY:
circuit = nb_running_get_entry(args->dnode, NULL, true);
ldp_sync_enable = yang_dnode_get_bool(args->dnode, NULL);
- isis = circuit->area->isis;
+ isis = circuit->isis;
if (circuit->ldp_sync_info == NULL)
isis_ldp_sync_if_init(circuit, isis);
if (circuit == NULL || circuit->area == NULL)
return NB_ERR_VALIDATION;
- if (circuit->area->isis->vrf_id != VRF_DEFAULT) {
+ if (circuit->isis->vrf_id != VRF_DEFAULT) {
snprintf(args->errmsg, args->errmsg_len,
"LDP-Sync only runs on Default VRF");
return NB_ERR_VALIDATION;
case NB_EV_APPLY:
circuit = nb_running_get_entry(args->dnode, NULL, true);
holddown = yang_dnode_get_uint16(args->dnode, NULL);
- isis = circuit->area->isis;
+ isis = circuit->isis;
if (circuit->ldp_sync_info == NULL)
isis_ldp_sync_if_init(circuit, isis);
|| circuit->area == NULL)
return NB_ERR_VALIDATION;
- if (circuit->area->isis->vrf_id != VRF_DEFAULT) {
+ if (circuit->isis->vrf_id != VRF_DEFAULT) {
snprintf(args->errmsg, args->errmsg_len,
"LDP-Sync only runs on Default VRF");
return NB_ERR_VALIDATION;
break;
case NB_EV_APPLY:
circuit = nb_running_get_entry(args->dnode, NULL, true);
- isis = circuit->area->isis;
+ isis = circuit->isis;
ldp_sync_info = circuit->ldp_sync_info;
UNSET_FLAG(ldp_sync_info->flags, LDP_SYNC_FLAG_HOLDDOWN);
lenp = stream_get_endp(circuit->snd_stream);
stream_putw(circuit->snd_stream, 0); /* PDU length */
- stream_put(circuit->snd_stream, circuit->area->isis->sysid,
- ISIS_SYS_ID_LEN);
+ stream_put(circuit->snd_stream, circuit->isis->sysid, ISIS_SYS_ID_LEN);
stream_putc(circuit->snd_stream, circuit->idx);
stream_putc(circuit->snd_stream, 9); /* code */
stream_putc(circuit->snd_stream, 16); /* len */
}
if (tw_adj->neighbor_set
- && (memcmp(tw_adj->neighbor_id,
- iih->circuit->area->isis->sysid, ISIS_SYS_ID_LEN)
+ && (memcmp(tw_adj->neighbor_id, iih->circuit->isis->sysid,
+ ISIS_SYS_ID_LEN)
|| tw_adj->neighbor_circuit_id
!= (uint32_t)iih->circuit->idx)) {
goto out;
}
- if (!memcmp(iih.sys_id, circuit->area->isis->sysid, ISIS_SYS_ID_LEN)) {
+ if (!memcmp(iih.sys_id, circuit->isis->sysid, ISIS_SYS_ID_LEN)) {
zlog_warn(
"ISIS-Adj (%s): Received IIH with own sysid - discard",
circuit->area->area_tag);
ack_lsp(&hdr, circuit, level);
goto out; /* FIXME: do we need a purge? */
} else {
- if (memcmp(hdr.lsp_id, circuit->area->isis->sysid,
+ if (memcmp(hdr.lsp_id, circuit->isis->sysid,
ISIS_SYS_ID_LEN)) {
/* LSP by some other system -> do 7.3.16.4 b) */
/* 7.3.16.4 b) 1) */
}
/* 7.3.15.1 c) - If this is our own lsp and we don't have it initiate a
* purge */
- if (memcmp(hdr.lsp_id, circuit->area->isis->sysid, ISIS_SYS_ID_LEN)
- == 0) {
+ if (memcmp(hdr.lsp_id, circuit->isis->sysid, ISIS_SYS_ID_LEN) == 0) {
if (!lsp) {
/* 7.3.16.4: initiate a purge */
lsp_purge_non_exist(level, &hdr, circuit->area);
entry = entry->next) {
struct isis_lsp *lsp =
lsp_search(&circuit->area->lspdb[level - 1], entry->id);
- bool own_lsp = !memcmp(entry->id, circuit->area->isis->sysid,
+ bool own_lsp = !memcmp(entry->id, circuit->isis->sysid,
ISIS_SYS_ID_LEN);
if (lsp) {
/* 7.3.15.2 b) 1) is this LSP newer */
* insert it and set SSN on it */
if (entry->rem_lifetime && entry->checksum
&& entry->seqno
- && memcmp(entry->id, circuit->area->isis->sysid,
+ && memcmp(entry->id, circuit->isis->sysid,
ISIS_SYS_ID_LEN)) {
struct isis_lsp *lsp0 = NULL;
if (pdu_type != FS_LINK_STATE /* FS PDU doesn't contain max area addr
field */
&& max_area_addrs != 0
- && max_area_addrs != circuit->area->isis->max_area_addrs) {
+ && max_area_addrs != circuit->isis->max_area_addrs) {
flog_err(
EC_ISIS_PACKET,
"maximumAreaAddressesMismatch: maximumAreaAdresses in a received PDU %hhu while the parameter for this IS is %u",
- max_area_addrs, circuit->area->isis->max_area_addrs);
+ max_area_addrs, circuit->isis->max_area_addrs);
circuit->max_area_addr_mismatches++;
#ifndef FABRICD
/* send northbound notification */
fill_fixed_hdr(pdu_type, circuit->snd_stream);
stream_putc(circuit->snd_stream, circuit->is_type);
- stream_put(circuit->snd_stream, circuit->area->isis->sysid,
- ISIS_SYS_ID_LEN);
+ stream_put(circuit->snd_stream, circuit->isis->sysid, ISIS_SYS_ID_LEN);
uint32_t holdtime = circuit->hello_multiplier[level - 1]
* circuit->hello_interval[level - 1];
size_t len_pointer = stream_get_endp(circuit->snd_stream);
stream_putw(circuit->snd_stream, 0);
- stream_put(circuit->snd_stream, circuit->area->isis->sysid,
- ISIS_SYS_ID_LEN);
+ stream_put(circuit->snd_stream, circuit->isis->sysid, ISIS_SYS_ID_LEN);
/* with zero circuit id - ref 9.10, 9.11 */
stream_putc(circuit->snd_stream, 0);
size_t len_pointer = stream_get_endp(circuit->snd_stream);
stream_putw(circuit->snd_stream, 0); /* length is filled in later */
- stream_put(circuit->snd_stream, circuit->area->isis->sysid,
- ISIS_SYS_ID_LEN);
+ stream_put(circuit->snd_stream, circuit->isis->sysid, ISIS_SYS_ID_LEN);
stream_putc(circuit->snd_stream, circuit->idx);
struct isis_passwd *passwd = (level == ISIS_LEVEL1)