Commit Graph

7157 Commits

Author SHA1 Message Date
Donald Sharp
07a112a1dc lib: Refactor if_get_by_name_len to be VRF aware
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 10:41:07 -04:00
Donald Sharp
92a57eb206 *: Refactor if_get_by_name to be VRF aware
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 10:36:38 -04:00
Donald Sharp
1306c09a1b *: Refactor if_lookup_by_name to be VRF aware
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 10:36:23 -04:00
Donald Sharp
a90607a4ba lib, ospf6d: Refactor if_lookup_prefix
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 10:33:16 -04:00
Donald Sharp
fa787f911c lib, ospfd: Refactor if_lookup_by_name_len
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 10:32:09 -04:00
Donald Sharp
95af5f130a lib, ospfd, ripd: Convert if_lookup_address to be vrf aware
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 10:31:10 -04:00
Donald Sharp
c5e2cb11ad lib, pimd, zebra: Convert if_lookup_exact_address to VRF only
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 10:30:58 -04:00
Donald Sharp
4e5266b8a3 lib, ospfd, pimd: Convert to using VRF based interface creation
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 10:29:09 -04:00
Donald Sharp
7e2b760345 *: Remove non-vrf based ifindex lookup
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 10:26:53 -04:00
Donald Sharp
358336ef36 zebra: zebra_fpm_dt.c does not always need protobuf
When compiling zebra_fpm_dt.c only pull in
protobuf headers if we've turned it on.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 09:48:12 -04:00
Donald Sharp
9cbae545f0 zebra: Fix protobuf build on stable/2.0
When compiling w/ --enable-protobuf on stable/2.0
we were attempting to dereference the zvrf->vrf_id
which got moved to zvrf->vrf->vrf_id.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-15 09:25:43 -04:00
Donald Sharp
1ad13df926 eigrpd: Fix router-id display in show topo
Additionally fix weird non-standard output
routines to look like what people expect
code to look like.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-12 21:36:58 -04:00
Donald Sharp
8e90a2de76 eigrpd: Correct route send to zebra
We were not passing the instance and were also passing
a bogus distance?

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-12 21:05:13 -04:00
Donald Sharp
e59a7c1019 eigrpd: Fix eigrp interface header
The switch over to using the new cli grammar
caused the 'show ip eigrp int' command to not
display a header in some cases.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-12 19:45:02 -04:00
Donald Sharp
81180ab813 Merge pull request #272 from opensourcerouting/snapcraft-logo-update
snapcraft: Replace temporary logo with official FRR logo
2017-03-11 06:58:24 -05:00
Martin Winter
5b848048d7 snapcraft: Replace temporary logo with official FRR logo
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
2017-03-11 12:48:55 +07:00
Donald Sharp
c6972d6601 vtysh: Rehook lib/command.c:cmd_init
Vtysh was not running lib/command.c commands for eigrp

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-10 20:44:22 -05:00
Donald Sharp
7448df6ab9 eigrpd: Update .gitignore
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-10 20:24:42 -05:00
Donald Sharp
511ba2b834 eigrpd: Fix to compile under gcc
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-10 20:14:33 -05:00
Donald Sharp
2221f1f6a7 eigrpd: Fix compilation for gcc on some platforms.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-10 20:06:32 -05:00
Donald Sharp
08ff1a6822 eigrpd: Add missing vrf registration piece
Add vrf registration so that we receive
information about the default vrf.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-10 19:39:45 -05:00
Donald Sharp
49feff1ad5 vtysh: Fix eigrp ordering in 'show run'
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-10 19:19:42 -05:00
Donald Sharp
a724893036 eigrp: Fix Compile issues
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-10 19:07:15 -05:00
Donald Sharp
5ffc9780fb vtysh: Fix misplaced (
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-10 18:59:43 -05:00
David Lamparter
93f681fa13 Merge pull request #270 from donaldsharp/cares
debian: Allow building the .deb to know about new dependency
2017-03-10 20:53:42 +01:00
David Lamparter
56b1d5c1e4 Merge pull request #271 from AnuradhaKaruppiah/master
pimd: Separate the register and upstream join states
2017-03-10 20:53:30 +01:00
anuradhak
755210ab1d pimd: display reg-state and join-state info in the pim_upstream output
Changed the state field in the "sh ip pim upstream" output to include
register and join state info as a comma separated value. Register info
is supressed if reg-state=NoInfo.

Sample output:
=============
root@fhr:/home/cumulus# net show pim upstream
Iif       Source          Group           State       Uptime   JoinTimer
RSTimer   KATimer   RefCnt
swp1      33.1.1.1        239.1.1.2       J,RegP      00:00:18 --:--:--
00:00:44  00:03:24       2
root@fhr:/home/cumulus#

root@rp:/home/cumulus# net show pim upstream
Iif       Source          Group           State       Uptime   JoinTimer
RSTimer   KATimer   RefCnt
lo        *               239.1.1.2       J           00:02:08 00:00:52
--:--:--  --:--:--       1
swp1      33.1.1.1        239.1.1.2       J           00:00:16 00:00:11
--:--:--  00:03:26       1
root@rp:/home/cumulus#

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>

Ticket: CM-14700
Testing Done: pim-smoke
2017-03-10 10:48:47 -08:00
anuradhak
b4786acd7e pimd: simplify pim upstream state transitions
This is another follow-up change to the reg-state and up-join-state
separation. The upstream join state machine can now respond to
JoinDesired macro changes independent of router role.

I have also dropped the PRUNE state from the upstream-join-state
enumeration. RFC4601 only defines JOINED and NOTJOINED states. And PRUNE
can really be replace by NOTJOINED.

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>

Ticket: CM-14700
Testing Done: Register state machine in FHR only, combined FHR-RP and
FHR-RP-LHR/all-in-one setups. Also ran pim-smoke.
2017-03-10 10:48:43 -08:00
anuradhak
0c2ebf00a6 pimd: add new/distinct enumeration for pim register state
With the separation of register-state and upstream-join-state we no
longer need an enumeration that covers both states. This commit includes
the following -
1. Defined new enumeration for reg state (this 1:1 with RFC4601).
2. Dropped JOIN_PENDING enum value from upstream join state. RFC4601
only define two values NOT_JOINED and JOINED for this state.

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>

Ticket: CM-14700
Testing Done: Verified register setup manually and ran pim-smoke
2017-03-10 10:48:41 -08:00
anuradhak
e0e127b009 pimd: Separate the register and upstream join states on the FHR
On the FHR upstream-join-state is not particularly relevant as we
don't need to send upstream JPs for the SG. So that field was being
overloaded with the register-state. However some of the events that
triggered changes to the JoinDesired macro were accidentally overwriting
the state with join info (instead of treating it as register info)
confusing the register state machine.

To make the PIM RFC macros' implemention simple I have separated out
the register-state. And upstream->state now solely describes the
upstream-join-state independent of the role of the PIM router.

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com>

Ticket: CM-14700
Testing Done: verified pim-register state-machine with separate and
combined FHR/RP routers. Also ran pim-smoke.
2017-03-10 10:48:38 -08:00
Donald Sharp
a492bccaca debian: Allow building the .deb to know about new dependency
libc-ares-dev and libc-ares2 are now dependencies to build nhrpd

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-10 13:02:09 -05:00
David Lamparter
3a58a629c2 Merge pull request #269 from donaldsharp/libfrr
lib: Fix missed code
2017-03-10 14:29:58 +01:00
Donald Sharp
cf7466acdd lib: Fix missed code
When converting to new format we missed some code.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-10 08:24:55 -05:00
David Lamparter
098c0eb8f4 Merge branch 'stable/2.0'
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-03-10 14:20:40 +01:00
David Lamparter
b32cba291b merge: pre-revert inapplicable changes
The following changes do not apply on master because the code has
changed:

- "vtysh: fix completion"
  reverts commit 09e61a383f.
- "Revert "lib: Fix tab completions memleak, memory stats corruption""
  reverts commit 4dcee34bd6.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-03-10 14:18:20 +01:00
David Lamparter
e2675fbd56 Merge pull request #266 from donaldsharp/nht
bug fixes
2017-03-10 14:10:10 +01:00
Donald Sharp
feb554e508 zebra: Fix specific prefix handling
Suppose we are handling the process_workq and either a new static
route is installed or a Routing Protocol installs a new route.
We will call evaluate_rnh with a specific prefix.  We might
have a situation where we clear the NHC flag prematurely.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-09 19:37:23 -05:00
Donald Sharp
a40ccc86af Merge pull request #267 from opensourcerouting/vty-completion-again
vty completion memory counting redux
2017-03-09 15:34:57 -05:00
Lou Berger
6253a46a75 lib: handle case specifc types, protect against double free (issue #144)
Signed-off-by: Lou Berger <lberger@labn.net>
[DL: dropped changes except the two NULL assignments]
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-03-09 19:24:49 +01:00
David Lamparter
4dcee34bd6 Revert "lib: Fix tab completions memleak, memory stats corruption"
This reverts commit 039dc61292.

The patch actually made the situation worse since the return value from
cmd_complete_command_real() was now inconsistently allocated from
different memory stat pools.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-03-09 19:23:00 +01:00
Martín Beauchamp
685e701ef3 Lowercase frr.conf 2017-03-09 09:45:00 -05:00
Donald Sharp
8ce5e6a33c zebra: Notify all nexthops that we've changed
Zebra when it was scanning the tree would unset NEXTHOPS_CHANGED
after the first notification.  If the route we are notifying because
of covers multiple interesting nexthops then we would be unable
to know that we need to notify for that one as well because of
the flag removal.

Ticket: CM-15157
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-09 09:38:41 -05:00
Donald Sharp
17791cc09a Merge pull request #263 from opensourcerouting/assorted-20170308
assorted bits
2017-03-09 06:52:56 -05:00
Donald Sharp
7f57883ee6 eigrp: Initial Commit
Please Note, I will be redoing this commit message with
more information.

Additionally I will rework the lib/* changes into their
own commits.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-03-08 23:07:46 -05:00
David Lamparter
6a5e07e0c6 pimd: fix clang warning
pimd/pim_sock.c:178:13: error: implicit conversion from
	'int' to 'char' changes value from 148 to -108
	[-Werror,-Wconstant-conversion]
    ra[0] = 148;

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-03-08 16:38:26 +01:00
David Lamparter
9272302b00 watchfrr: make min/max restart interval longopts
-m/-M seem to be seldomly used...
... and I kindof need/want -M for module loading.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-03-08 16:23:55 +01:00
David Lamparter
4487fc74e8 *: fix some user-visible Quagga remnants
(Note: the allow_delete thing is called "zebra" on the commandline
because that's the clearest context there, while it is called "FRR" in
the CLI because that's considerably less confusing in a vtysh env.)

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-03-08 16:15:10 +01:00
David Lamparter
6dd7b12a05 isisd: remove reload-by-reexec
This is a quite horrible mechanism...

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-03-08 16:04:56 +01:00
David Lamparter
5c689534f6 ospfd: remove unused usage() function
... forgot this one in the previous patchset.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-03-08 16:04:38 +01:00
Jafar Al-Gharaibeh
baf9c43622 Merge pull request #262 from donaldsharp/pim_jp_fixes
Pim jp fixes
2017-03-08 08:59:07 -06:00