version 1.1.1.1, 2012/02/21 17:26:12
|
version 1.1.1.2, 2012/10/09 09:22:29
|
Line 746 ospf_stub_router_timer (struct thread *t)
|
Line 746 ospf_stub_router_timer (struct thread *t)
|
return 0; |
return 0; |
} |
} |
|
|
inline static void | static void |
ospf_stub_router_check (struct ospf_area *area) |
ospf_stub_router_check (struct ospf_area *area) |
{ |
{ |
/* area must either be administratively configured to be stub |
/* area must either be administratively configured to be stub |
Line 1637 ospf_external_lsa_new (struct ospf *ospf,
|
Line 1637 ospf_external_lsa_new (struct ospf *ospf,
|
if (ei == NULL) |
if (ei == NULL) |
{ |
{ |
if (IS_DEBUG_OSPF (lsa, LSA_GENERATE)) |
if (IS_DEBUG_OSPF (lsa, LSA_GENERATE)) |
zlog_debug ("LSA[Type5]: External info is NULL, could not originated"); | zlog_debug ("LSA[Type5]: External info is NULL, can't originate"); |
return NULL; |
return NULL; |
} |
} |
|
|
Line 2838 ospf_maxage_lsa_remover (struct thread *thread)
|
Line 2838 ospf_maxage_lsa_remover (struct thread *thread)
|
OSPF_TIMER_ON (ospf->t_maxage, ospf_maxage_lsa_remover, 0); |
OSPF_TIMER_ON (ospf->t_maxage, ospf_maxage_lsa_remover, 0); |
|
|
/* Remove LSA from the LSDB */ |
/* Remove LSA from the LSDB */ |
if (CHECK_FLAG (lsa->flags, OSPF_LSA_SELF)) | if (IS_LSA_SELF (lsa)) |
if (IS_DEBUG_OSPF (lsa, LSA_FLOODING)) |
if (IS_DEBUG_OSPF (lsa, LSA_FLOODING)) |
zlog_debug ("LSA[Type%d:%s]: LSA 0x%lx is self-oririnated: ", | zlog_debug ("LSA[Type%d:%s]: LSA 0x%lx is self-originated: ", |
lsa->data->type, inet_ntoa (lsa->data->id), (u_long)lsa); |
lsa->data->type, inet_ntoa (lsa->data->id), (u_long)lsa); |
|
|
if (IS_DEBUG_OSPF (lsa, LSA_FLOODING)) |
if (IS_DEBUG_OSPF (lsa, LSA_FLOODING)) |
Line 3389 ospf_lsa_is_self_originated (struct ospf *ospf, struct
|
Line 3389 ospf_lsa_is_self_originated (struct ospf *ospf, struct
|
|
|
/* This LSA is already checked. */ |
/* This LSA is already checked. */ |
if (CHECK_FLAG (lsa->flags, OSPF_LSA_SELF_CHECKED)) |
if (CHECK_FLAG (lsa->flags, OSPF_LSA_SELF_CHECKED)) |
return CHECK_FLAG (lsa->flags, OSPF_LSA_SELF); | return IS_LSA_SELF (lsa); |
|
|
/* Make sure LSA is self-checked. */ |
/* Make sure LSA is self-checked. */ |
SET_FLAG (lsa->flags, OSPF_LSA_SELF_CHECKED); |
SET_FLAG (lsa->flags, OSPF_LSA_SELF_CHECKED); |
Line 3414 ospf_lsa_is_self_originated (struct ospf *ospf, struct
|
Line 3414 ospf_lsa_is_self_originated (struct ospf *ospf, struct
|
{ |
{ |
/* to make it easier later */ |
/* to make it easier later */ |
SET_FLAG (lsa->flags, OSPF_LSA_SELF); |
SET_FLAG (lsa->flags, OSPF_LSA_SELF); |
return CHECK_FLAG (lsa->flags, OSPF_LSA_SELF); | return IS_LSA_SELF (lsa); |
} |
} |
} |
} |
|
|
return CHECK_FLAG (lsa->flags, OSPF_LSA_SELF); | return IS_LSA_SELF (lsa); |
} |
} |
|
|
/* Get unique Link State ID. */ |
/* Get unique Link State ID. */ |
Line 3541 ospf_lsa_refresh (struct ospf *ospf, struct ospf_lsa *
|
Line 3541 ospf_lsa_refresh (struct ospf *ospf, struct ospf_lsa *
|
struct external_info *ei; |
struct external_info *ei; |
struct ospf_lsa *new = NULL; |
struct ospf_lsa *new = NULL; |
assert (CHECK_FLAG (lsa->flags, OSPF_LSA_SELF)); |
assert (CHECK_FLAG (lsa->flags, OSPF_LSA_SELF)); |
|
assert (IS_LSA_SELF (lsa)); |
assert (lsa->lock > 0); |
assert (lsa->lock > 0); |
|
|
switch (lsa->data->type) |
switch (lsa->data->type) |
Line 3589 ospf_refresher_register_lsa (struct ospf *ospf, struct
|
Line 3590 ospf_refresher_register_lsa (struct ospf *ospf, struct
|
u_int16_t index, current_index; |
u_int16_t index, current_index; |
|
|
assert (lsa->lock > 0); |
assert (lsa->lock > 0); |
assert (CHECK_FLAG (lsa->flags, OSPF_LSA_SELF)); | assert (IS_LSA_SELF (lsa)); |
|
|
if (lsa->refresh_list < 0) |
if (lsa->refresh_list < 0) |
{ |
{ |
Line 3632 void
|
Line 3633 void
|
ospf_refresher_unregister_lsa (struct ospf *ospf, struct ospf_lsa *lsa) |
ospf_refresher_unregister_lsa (struct ospf *ospf, struct ospf_lsa *lsa) |
{ |
{ |
assert (lsa->lock > 0); |
assert (lsa->lock > 0); |
assert (CHECK_FLAG (lsa->flags, OSPF_LSA_SELF)); | assert (IS_LSA_SELF (lsa)); |
if (lsa->refresh_list >= 0) |
if (lsa->refresh_list >= 0) |
{ |
{ |
struct list *refresh_list = ospf->lsa_refresh_queue.qs[lsa->refresh_list]; |
struct list *refresh_list = ospf->lsa_refresh_queue.qs[lsa->refresh_list]; |