Parse error with OSPF area stmt?
I'm getting consistent parse errors from bird while trying to configure ospf. I say something akin to the following: protocol ospf { ... area 0.0.0.0 { ... }; } And I've tried variations like "area 0 {" and "area {", but no luck with anything. I always get a parse error from bird on that particular line. I took a halfhearted look at the source and couldn't find anything in particular. Help! And yes, I know that areas are somewhat borken, that you can't use more than one. I'm not trying to, I'm just trying to follow the documentation which says to list an area section and put my chosen interfaces inside of it. Thanks 'james -- James A. Crippen <james@unlambda.com> ,-./-. Anchorage, Alaska, Lambda Unlimited: Recursion 'R' Us | |/ | USA, 61.2069 N, 149.766 W, Y = \f.(\x.f(xx)) (\x.f(xx)) | |\ | Earth, Sol System, Y(F) = F(Y(F)) \_,-_/ Milky Way.
On Wed, 3 Jan 2001, James A. Crippen wrote:
I'm getting consistent parse errors from bird while trying to configure ospf. I say something akin to the following:
protocol ospf { ... area 0.0.0.0 { ... }; }
And I've tried variations like "area 0 {" and "area {", but no luck with anything. I always get a parse error from bird on that particular line. I took a halfhearted look at the source and couldn't find anything in particular. Help!
Please send me complete bird.conf, I hope I'll help you then.
And yes, I know that areas are somewhat borken, that you can't use more than one. I'm not trying to, I'm just trying to follow the documentation which says to list an area section and put my chosen interfaces inside of it.
Thanks 'james
-- Ondrej Feela Filip
On Thu, 4 Jan 2001, Ondrej Feela Filip wrote:
On Wed, 3 Jan 2001, James A. Crippen wrote:
I'm getting consistent parse errors from bird while trying to configure ospf. I say something akin to the following:
protocol ospf { ... area 0.0.0.0 { ... }; }
And I've tried variations like "area 0 {" and "area {", but no luck with anything. I always get a parse error from bird on that particular line. I took a halfhearted look at the source and couldn't find anything in particular. Help!
Please send me complete bird.conf, I hope I'll help you then.
Okay, here it is. ---8<--- cut here ---8<--- log syslog all; # Turn on global debugging of all protocols debug protocols all; protocol direct { interface "*"; } protocol kernel { learn yes; persist no; scan time 20; import all; export all; } protocol device { scan time 20; } protocol static { debug all; } #protocol rip { # debug all; # honor always; # authentication none; # interface "*" { mode broadcast; }; # import all; # export all; #} protocol ospf { # old OSPFv2 compat rfc1583compat no; import all; export all; area 0.0.0.0 { tick 10; interface "eth0" { cost 10; stub no; hello 10; poll 20; retransmit 5; priority 1; wait 40; dead count 6; type broadcast; strict nonbroadcast no; authentication none; password "foobar"; # neighbors { ... }; }; interface "eth1" { cost 10; stub no; hello 10; poll 20; retransmit 5; priority 1; wait 40; dead count 6; type broadcast; strict nonbroadcast no; authentication none; password "foobar"; # neighbors { ... }; }; interface "eth2" { cost 10; stub no; hello 10; poll 20; retransmit 5; priority 1; wait 40; dead count 6; type broadcast; strict nonbroadcast no; authentication none; password "foobar"; # neighbors { ... }; }; }; } ---8<--- cut here ---8<--- 'james -- James A. Crippen <james@unlambda.com> ,-./-. Anchorage, Alaska, Lambda Unlimited: Recursion 'R' Us | |/ | USA, 61.2069 N, 149.766 W, Y = \f.(\x.f(xx)) (\x.f(xx)) | |\ | Earth, Sol System, Y(F) = F(Y(F)) \_,-_/ Milky Way.
On Thu, 4 Jan 2001, James A. Crippen wrote:
On Thu, 4 Jan 2001, Ondrej Feela Filip wrote:
On Wed, 3 Jan 2001, James A. Crippen wrote: [...] Please send me complete bird.conf, I hope I'll help you then.
Okay, here it is.
---8<--- cut here ---8<---
log syslog all;
# Turn on global debugging of all protocols debug protocols all;
protocol direct { interface "*"; }
protocol kernel { learn yes; persist no; scan time 20; import all; export all; }
protocol device { scan time 20; }
protocol static { debug all; }
#protocol rip { # debug all; # honor always; # authentication none; # interface "*" { mode broadcast; }; # import all; # export all; #}
protocol ospf { # old OSPFv2 compat rfc1583compat no;
import all; export all;
area 0.0.0.0 { tick 10;
interface "eth0" { cost 10; stub no; hello 10; poll 20; retransmit 5; priority 1; wait 40; dead count 6; type broadcast; strict nonbroadcast no; authentication none; password "foobar"; # neighbors { ... }; };
interface "eth1" { cost 10; stub no; hello 10; poll 20; retransmit 5; priority 1; wait 40; dead count 6; type broadcast; strict nonbroadcast no; authentication none; password "foobar"; # neighbors { ... }; };
interface "eth2" { cost 10; stub no; hello 10; poll 20; retransmit 5; priority 1; wait 40; dead count 6; type broadcast; strict nonbroadcast no; authentication none; password "foobar"; # neighbors { ... }; }; }; }
---8<--- cut here ---8<---
I removed the "rfc1583compat no;" line and it works fine. The parser is complaining about the line below where it seems to die, I think. I just tried with the following: protocol ospf { rfc1583compat no; * import all; export all; ... } And the parser complained about the line marked (*). Removal of the line above this (the one containing "rfc1583compat no;") fixes the problem. Any idea what's happening here? This is a completely repeatable bug. 'james -- James A. Crippen <james@unlambda.com> ,-./-. Anchorage, Alaska, Lambda Unlimited: Recursion 'R' Us | |/ | USA, 61.2069 N, 149.766 W, Y = \f.(\x.f(xx)) (\x.f(xx)) | |\ | Earth, Sol System, Y(F) = F(Y(F)) \_,-_/ Milky Way.
Hi.
I removed the "rfc1583compat no;" line and it works fine. The parser is complaining about the line below where it seems to die, I think. I just tried with the following:
protocol ospf { rfc1583compat no; * import all; export all; ... }
And the parser complained about the line marked (*). Removal of the line above this (the one containing "rfc1583compat no;") fixes the problem. Any idea what's happening here? This is a completely repeatable bug.
Did you try to move that line (rfc...) some lines below (for example between "import all;" and "export all;")? Where does the parser die then?
'james
Bye, Mike -- ------------------------------------ CompuLAN Europe GmbH Development - Wireless Solutions ------------------------------------
On Fri, 5 Jan 2001, Michael Renzmann wrote:
Hi.
I removed the "rfc1583compat no;" line and it works fine. The parser is complaining about the line below where it seems to die, I think. I just tried with the following:
protocol ospf { rfc1583compat no; * import all; export all; ... }
And the parser complained about the line marked (*). Removal of the line above this (the one containing "rfc1583compat no;") fixes the problem. Any idea what's happening here? This is a completely repeatable bug.
Did you try to move that line (rfc...) some lines below (for example between "import all;" and "export all;")? Where does the parser die then?
I moved it below the area stmt (below my interface declarations) and the parser dies one line after the "rfc1583compat no;" line. Totally reliable. I guess I could run it under gdb to see why it was dying. I'll do that when I get a chance. 'james -- James A. Crippen <james@unlambda.com> ,-./-. Anchorage, Alaska, Lambda Unlimited: Recursion 'R' Us | |/ | USA, 61.2069 N, 149.766 W, Y = \f.(\x.f(xx)) (\x.f(xx)) | |\ | Earth, Sol System, Y(F) = F(Y(F)) \_,-_/ Milky Way.
On Fri, 5 Jan 2001, James A. Crippen wrote:
On Fri, 5 Jan 2001, Michael Renzmann wrote:
Hi.
I removed the "rfc1583compat no;" line and it works fine. The parser is complaining about the line below where it seems to die, I think. I just tried with the following:
protocol ospf { rfc1583compat no; * import all; export all; ... }
And the parser complained about the line marked (*). Removal of the line above this (the one containing "rfc1583compat no;") fixes the problem. Any idea what's happening here? This is a completely repeatable bug.
Did you try to move that line (rfc...) some lines below (for example between "import all;" and "export all;")? Where does the parser die then?
I moved it below the area stmt (below my interface declarations) and the parser dies one line after the "rfc1583compat no;" line. Totally reliable.
I guess I could run it under gdb to see why it was dying. I'll do that when I get a chance.
Hmm, to be true, rfc1583compat switch is not used now. So simple comment it out. I'll look at it in next version. Feela
'james
-- Ondrej Feela Filip
On Sat, 6 Jan 2001, Ondrej Feela Filip wrote: [...]
Hmm, to be true, rfc1583compat switch is not used now. So simple comment it out. I'll look at it in next version.
I see, so it shows up in the parser but it's not actually working. That's my answer. Thanks! I'll just not use it. The manual says that the default is no, which is what I want. I just wanted explicit control over that if I needed it. I presume that RFC 1538 compatibility hasn't been implemented then? 'james -- James A. Crippen <james@unlambda.com> ,-./-. Anchorage, Alaska, Lambda Unlimited: Recursion 'R' Us | |/ | USA, 61.2069 N, 149.766 W, Y = \f.(\x.f(xx)) (\x.f(xx)) | |\ | Earth, Sol System, Y(F) = F(Y(F)) \_,-_/ Milky Way.
participants (3)
-
James A. Crippen -
Michael Renzmann -
Ondrej Feela Filip