Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
labs
BIRD Internet Routing Daemon
Commits
a02c6c18
Commit
a02c6c18
authored
May 03, 2000
by
Ondřej Filip
Browse files
Cleanup of code. Some arguments of functions were useless.
parent
ad5453b5
Changes
5
Hide whitespace changes
Inline
Side-by-side
proto/ospf/lsalib.c
View file @
a02c6c18
...
...
@@ -17,8 +17,9 @@ flush_lsa(struct top_hash_entry *en)
void
ospf_age
(
struct
top_hash_entry
*
en
,
bird_clock_t
delta
,
int
flush
,
struct
proto
*
p
)
struct
ospf_area
*
oa
)
{
struct
proto
*
p
=&
oa
->
po
->
proto
;
if
(
en
->
lsa
.
age
==
LSA_MAXAGE
)
{
if
(
flush
)
flush_lsa
(
en
);
...
...
@@ -391,7 +392,7 @@ lsa_install_new(struct ospf_lsa_header *lsa, void *body, struct ospf_area *oa,
if
(
oa
->
rt
!=
NULL
)
{
DBG
(
"Starting routing table calculation.
\n
"
);
ospf_rt_spfa
(
oa
,
p
);
ospf_rt_spfa
(
oa
);
}
}
...
...
proto/ospf/lsalib.h
View file @
a02c6c18
...
...
@@ -24,6 +24,6 @@ int lsa_comp(struct ospf_lsa_header *l1, struct ospf_lsa_header *l2);
struct
top_hash_entry
*
lsa_install_new
(
struct
ospf_lsa_header
*
lsa
,
void
*
body
,
struct
ospf_area
*
oa
,
struct
proto
*
p
);
void
ospf_age
(
struct
top_hash_entry
*
en
,
bird_clock_t
delta
,
int
flush
,
struct
proto
*
p
);
struct
ospf_area
*
oa
);
#endif
/* _BIRD_OSPF_LSALIB_H_ */
proto/ospf/rt.c
View file @
a02c6c18
...
...
@@ -18,7 +18,7 @@ init_stub_fib(struct fib_node *fn)
}
void
ospf_rt_spfa
(
struct
ospf_area
*
oa
,
struct
proto
*
p
)
ospf_rt_spfa
(
struct
ospf_area
*
oa
)
{
struct
top_hash_entry
*
en
,
*
nx
;
u32
i
,
*
rts
;
...
...
@@ -28,6 +28,7 @@ ospf_rt_spfa(struct ospf_area *oa, struct proto *p)
struct
stub_fib
*
sf
;
bird_clock_t
delta
;
int
age
=
0
,
flush
=
0
;
struct
proto
*
p
=&
oa
->
po
->
proto
;
/* FIXME if I'm not in LOADING or EXCHANGE set flush=1 */
if
((
delta
=
now
-
oa
->
lage
)
>=
AGINGDELTA
)
...
...
@@ -40,7 +41,7 @@ ospf_rt_spfa(struct ospf_area *oa, struct proto *p)
{
en
->
color
=
OUTSPF
;
en
->
dist
=
LSINFINITY
;
if
(
age
)
ospf_age
(
en
,
delta
,
flush
,
p
);
if
(
age
)
ospf_age
(
en
,
delta
,
flush
,
oa
);
}
init_list
(
&
oa
->
cand
);
/* Empty list of candidates */
...
...
@@ -99,7 +100,7 @@ ospf_rt_spfa(struct ospf_area *oa, struct proto *p)
log
(
"Unknown link type in router lsa.
\n
"
);
break
;
}
add_cand
(
&
oa
->
cand
,
tmp
,
act
,
act
->
dist
+
rtl
->
metric
,
p
,
oa
);
add_cand
(
&
oa
->
cand
,
tmp
,
act
,
act
->
dist
+
rtl
->
metric
,
oa
);
}
break
;
case
LSA_T_NET
:
...
...
@@ -112,7 +113,7 @@ ospf_rt_spfa(struct ospf_area *oa, struct proto *p)
tmp
=
ospf_hash_find
(
oa
->
gr
,
*
(
rts
+
i
),
*
(
rts
+
i
),
LSA_T_RT
);
if
(
tmp
!=
NULL
)
DBG
(
"Found :-)
\n
"
);
else
DBG
(
"Fuck!
\n
"
);
add_cand
(
&
oa
->
cand
,
tmp
,
act
,
act
->
dist
,
p
,
oa
);
add_cand
(
&
oa
->
cand
,
tmp
,
act
,
act
->
dist
,
oa
);
}
break
;
}
...
...
@@ -199,7 +200,7 @@ ospf_rt_spfa(struct ospf_area *oa, struct proto *p)
if
(
sf
->
metric
>
(
en
->
dist
+
rtl
->
metric
))
{
sf
->
metric
=
en
->
dist
+
rtl
->
metric
;
calc_next_hop_fib
(
en
,
sf
,
p
,
oa
);
calc_next_hop_fib
(
en
,
sf
,
oa
);
if
(
sf
->
nhi
!=
NULL
)
{
net
*
ne
;
...
...
@@ -240,11 +241,12 @@ ospf_rt_spfa(struct ospf_area *oa, struct proto *p)
void
add_cand
(
list
*
l
,
struct
top_hash_entry
*
en
,
struct
top_hash_entry
*
par
,
u16
dist
,
struct
proto
*
p
,
struct
ospf_area
*
oa
)
u16
dist
,
struct
ospf_area
*
oa
)
{
node
*
prev
,
*
n
;
int
flag
=
0
,
added
=
0
;
struct
top_hash_entry
*
act
;
struct
proto
*
p
=&
oa
->
po
->
proto
;
if
(
en
==
NULL
)
return
;
if
(
en
->
lsa
.
age
==
LSA_MAXAGE
)
return
;
...
...
@@ -260,7 +262,7 @@ add_cand(list *l, struct top_hash_entry *en, struct top_hash_entry *par,
en
->
nhi
=
NULL
;
calc_next_hop
(
par
,
en
,
p
,
oa
);
calc_next_hop
(
par
,
en
,
oa
);
if
(
en
->
color
==
CANDIDATE
)
/* We found a shorter path */
{
...
...
@@ -302,10 +304,11 @@ add_cand(list *l, struct top_hash_entry *en, struct top_hash_entry *par,
void
calc_next_hop
(
struct
top_hash_entry
*
par
,
struct
top_hash_entry
*
en
,
struct
proto
*
p
,
struct
ospf_area
*
oa
)
struct
ospf_area
*
oa
)
{
struct
ospf_neighbor
*
neigh
;
struct
proto_ospf
*
po
=
(
struct
proto_ospf
*
)
p
;
struct
proto
*
p
=&
oa
->
po
->
proto
;
struct
proto_ospf
*
po
=
oa
->
po
;
DBG
(
" Next hop called
\n
"
);
if
(
par
==
oa
->
rt
)
return
;
if
(
par
->
nhi
==
NULL
)
...
...
@@ -327,10 +330,11 @@ calc_next_hop(struct top_hash_entry *par, struct top_hash_entry *en,
void
calc_next_hop_fib
(
struct
top_hash_entry
*
par
,
struct
stub_fib
*
en
,
struct
proto
*
p
,
struct
ospf_area
*
oa
)
struct
ospf_area
*
oa
)
{
struct
ospf_neighbor
*
neigh
;
struct
proto_ospf
*
po
=
(
struct
proto_ospf
*
)
p
;
struct
proto
*
p
=&
oa
->
po
->
proto
;
struct
proto_ospf
*
po
=
oa
->
po
;
DBG
(
" Next hop called
\n
"
);
if
(
par
==
oa
->
rt
)
return
;
if
(
par
->
nhi
==
NULL
)
...
...
proto/ospf/rt.h
View file @
a02c6c18
...
...
@@ -18,12 +18,12 @@ struct stub_fib {
struct
iface
*
nhi
;
};
void
ospf_rt_spfa
(
struct
ospf_area
*
oa
,
struct
proto
*
p
);
void
ospf_rt_spfa
(
struct
ospf_area
*
oa
);
void
add_cand
(
list
*
l
,
struct
top_hash_entry
*
en
,
struct
top_hash_entry
*
par
,
u16
dist
,
struct
proto
*
p
,
struct
ospf_area
*
oa
);
u16
dist
,
struct
ospf_area
*
oa
);
void
calc_next_hop
(
struct
top_hash_entry
*
par
,
struct
top_hash_entry
*
en
,
struct
proto
*
p
,
struct
ospf_area
*
oa
);
struct
ospf_area
*
oa
);
void
calc_next_hop_fib
(
struct
top_hash_entry
*
par
,
struct
stub_fib
*
en
,
struct
proto
*
p
,
struct
ospf_area
*
oa
);
struct
ospf_area
*
oa
);
#endif
/* _BIRD_OSPF_RT_H_ */
proto/ospf/topology.c
View file @
a02c6c18
...
...
@@ -163,7 +163,7 @@ age_timer_hook(timer *timer)
if
((
delta
=
now
-
oa
->
lage
)
>=
AGINGDELTA
)
{
WALK_SLIST_DELSAFE
(
en
,
nxt
,
oa
->
lsal
)
ospf_age
(
en
,
delta
,
flush
,
&
oa
->
po
->
proto
);
WALK_SLIST_DELSAFE
(
en
,
nxt
,
oa
->
lsal
)
ospf_age
(
en
,
delta
,
flush
,
oa
);
oa
->
lage
=
now
;
}
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment