Commit Graph

8050 Commits

Author SHA1 Message Date
David Lamparter
7a38655aa0 lib: parser: remove forgotten line
MTYPE_CMD_TOKEN_DATA isn't used anymore, I forgot to ditch the line.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 11:08:25 -04:00
David Lamparter
896014f4bc *: make consistent & update GPLv2 file headers
The FSF's address changed, and we had a mixture of comment styles for
the GPL file header.  (The style with * at the beginning won out with
580 to 141 in existing files.)

Note: I've intentionally left intact other "variations" of the copyright
header, e.g. whether it says "Zebra", "Quagga", "FRR", or nothing.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 16:37:41 +02:00
Lou Berger
4b34151b88 Merge pull request #531 from qlyoung/fix-stack-ref
lib: fix access to stack value
2017-05-15 10:34:38 -04:00
David Lamparter
32a71fd80c doc: fix VARIABLE <> WORD confusion in cli.md
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 10:27:43 -04:00
David Lamparter
d48ed3e098 bgpd: autocomplete peer-groups & interface peers
This wasn't quite correct in the previous patch, leading to peer-groups
& interface peers breaking in autocompletion.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 10:27:43 -04:00
David Lamparter
9a7fc1bd7a lib: cli: fix IPv6 address partial matching
A partially-entered IPv6 address would never return a "partly_match",
meaning some possible completions weren't listed by the matcher.

This specifically breaks autocompleting BGP IPv6 neighbor addresses.
Before:
aegaeon# show ip bg ne 2001:<?>
  WORD      Neighbor on BGP configured interface

After:
aegaeon# show ip bg ne 2001:<?>
  WORD      Neighbor on BGP configured interface
  X:X::X:X  Neighbor to display information about
      2001:db8::2

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 10:27:43 -04:00
David Lamparter
4e3e06d638 doc: update CLI documentation
Fix markdown formatting & add variable names.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 10:27:43 -04:00
David Lamparter
b8a815e5e4 bgpd: autocomplete neighbor names
Add autocompletion for neighbor IP/IPv6/peer-group names.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 10:27:43 -04:00
David Lamparter
7f059ea614 vtysh: autocomplete variables
This asks the connected daemons for their variable completions through a
hidden CLI command.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 10:27:43 -04:00
David Lamparter
70d44c5cd4 lib: cli: autocomplete variables
Shows known values in the appropriate naming domain when the user hits
<?> or <Tab>.  This patch only works in the telnet CLI, the next patch
adds vtysh support.

Included completions:
- interface names
- route-map names
- prefix-list names

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 10:27:43 -04:00
David Lamparter
c09c46ae3c lib: parser: add pre-merge varname propagation step
Fills token->varname based on context.  WORD tokens use the WORD - if it
isn't actually "WORD".  Other than that, a preceding constant token is
used as name.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 10:27:43 -04:00
David Lamparter
5894e76da7 lib: parser: split off & rename graph handling
Put core CLI graph stuff in lib/command_graph.[ch] and consistently
prefix all function names with "cmd_".

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 10:27:43 -04:00
David Lamparter
16705ecc65 lib: parser: add named variables in CLI
struct cmd_token now has a "varname" field which is derived from the
DEFUN's string definition.  It can be manually specified with "$name"
after some token, e.g. "foo WORD$var".  A later commit adds code to
automatically fill the value if nothing is specified.

Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2017-05-15 10:27:43 -04:00
Donald Sharp
6a72763d73 Merge pull request #520 from opensourcerouting/bgpd-fixes-master
bgpd: assorted fixes (master)
2017-05-15 10:01:39 -04:00
Donald Sharp
59371d4f21 Merge pull request #527 from LabNConsulting/working/master/patch-set/issue471+473
Master: Restore label distribution for VPN safi
2017-05-15 10:01:04 -04:00
David Lamparter
36a963950c Merge pull request #526 from donaldsharp/renato_eigrp
Renato eigrp
2017-05-15 14:32:13 +02:00
Donald Sharp
46c3ce8327 bgpd: Cleanup some SA
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-15 07:33:48 -04:00
Quentin Young
368d025eca lib: fix access to stack value
Passing stack value to thread_add_* causes thread->ref to become an
invalid pointer when the value goes out of scope

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2017-05-15 06:29:54 +00:00
Donald Sharp
56afaa8bcb Merge remote-tracking branch 'origin/stable/3.0' 2017-05-14 21:19:33 -04:00
Lou Berger
0918e873f2 bgpd: fix table leak introduced in labeled unicast (Issue #473)
Fix tested for vpn and encap ribs/safi.  Labeled unicast
      may still leak as not tested.

Signed-off-by: Lou Berger <lberger@labn.net>
2017-05-14 20:26:07 -04:00
Lou Berger
20aeb9709e bgpd: fix v6 encap safi config - more labeled unicast breakage (Issue #473)
Signed-off-by: Lou Berger <lberger@labn.net>
2017-05-14 11:10:42 -04:00
Donald Sharp
abdcf26658 babeld: Tell zebra to send us stuff about the default vrf
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-14 00:10:37 -04:00
Donald Sharp
302a2d1c83 babeld: Fixup redistribution display
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 23:55:41 -04:00
Donald Sharp
32d095b834 vtysh: Add knob for babel execution
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 23:43:07 -04:00
Donald Sharp
a616ea5f24 lib, vtysh: Add bits and pieces to allow vtysh to understand babel
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 23:38:14 -04:00
Donald Sharp
053d05608f ripngd: Cleanup missing newlines
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 23:37:39 -04:00
Donald Sharp
f84d11d1cd babeld: Cli Fixes
1) Cleanup 'router babel' so it's NOSH
2) Fixed missing newlines

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 23:36:52 -04:00
Donald Sharp
900b8c5802 babeld: Get main to work correctly
Get main to init up in the libfrr paradigm.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 23:16:03 -04:00
Donald Sharp
2579b2c144 lib: Fix up string -> proto # conversion for babel
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 23:15:27 -04:00
Donald Sharp
f7bf422e5d babeld: Fix up some missed cli
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 23:01:32 -04:00
Donald Sharp
dd3293736d babeld: Fix some missed QUAGGA -> FRR
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 22:55:21 -04:00
Donald Sharp
0eb167b9f1 babeld: Cleanup some more compiler warnings
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 22:52:15 -04:00
Donald Sharp
dd15627e26 babeld: Cleanup xroute_stream
Cleanup warnings associated with xroute_stream

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 22:46:21 -04:00
Donald Sharp
f1d1a0b0b7 doc: Missed babel documentation
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 22:40:00 -04:00
Lou Berger
e5efc58be9 bgpd: fix rfapi label origination (Issue #473)
Signed-off-by: Lou Berger <lberger@labn.net>
2017-05-13 17:46:05 -04:00
Lou Berger
57907d6fe9 bgpd: fix VPN SAFI label distribution (Issue #473)
Signed-off-by: Lou Berger <lberger@labn.net>
2017-05-13 16:38:35 -04:00
Lou Berger
b380f68a7a bgpd: add epvn as labeled safi type (ISSUE #471)
Signed-off-by: Lou Berger <lberger@labn.net>
2017-05-13 16:37:13 -04:00
Donald Sharp
ca10883edc *: Initial Import of Babeld into FRR
This is a direct copy of:
https://github.com/boutier/quagga-merge

From the branch babel-merge

I copied the babeld directory into FRR and then fixed up everything to
compile.

Babeld at this point in time when run will more than likely crash and burn
in it's interfactions with zebra.

I might have messed up the cli, which will need to be looked at

extract.pl.in and vtysh.c need to be fixed up.  Additionally we probably
need to work on DEFUN_NOSH conversion in babeld as well

This code comes from:
Matthieu Boutier <boutier@irif.fr>
Juliusz Chroboczek <jch@irif.fr>

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 14:59:41 -04:00
Renato Westphal
63863c4797 eigrpd: Diverse Fixes
* Correct the metric calculation as well as the default metrics;
* Do not show invalid routes in the "show ip eigrp topology".
* Add support to VRFs;
* When downloading a neighbor remove the related routes;
* Fix bugs in the parser of packages they were creating
Invalid default routes;
* Add and remove routes in the zebra;
* Add command "on router eigrp AS";
* Make "delay" and "bandwitch" commands work as well as
Display them in running config;
* Add "no" version of several commands;
* Fix a serious momory leaks;
* Fix segfault when there is no 'successor' route to a
Given prefix;
* Other minor corrections;

Signed-off-by: Renato Westphal <renatowestphal@gmail.com>
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 13:08:00 -04:00
Renato Westphal
7622065349 eigrpd: Some Basic Corrections
* Advertise routes to zebra
* Connected routes should not have a nexthop address
* Fix segfaut on exit

Signed-off-by: Renato Westphal <renatowestphal@gmail.com>
2017-05-13 13:08:00 -04:00
Donald Sharp
dfdbe7e4b0 lib: Cleanup command parsing a tiny bit
The CLI changes now make it impossible for numbers
outside the range specified in the cli to make it to
this code.  No need to check for it again.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2017-05-13 13:08:00 -04:00
Donald Sharp
7b87a0d5c6 Merge pull request #521 from opensourcerouting/bgpd-fixes-stable
bgpd: assorted fixes (stable/3.0)
2017-05-13 12:24:32 -04:00
David Lamparter
39f4150572 Merge pull request #508 from LabNConsulting/working/3.0/patch/issue198
bgpd: Issue #198 - clean up duplicate encap SAFI commands
2017-05-13 09:10:09 +02:00
David Lamparter
8d7bba2874 Merge pull request #525 from qlyoung/frr-script-fix
tools: $valgrind --> "$valgrind"
2017-05-13 09:09:22 +02:00
David Lamparter
99f226f8dc Merge pull request #524 from qlyoung/blublublub3.0
lib: use %p specifier for pointers
2017-05-13 09:08:55 +02:00
Quentin Young
61de994bcf tools: $valgrind --> "$valgrind"
String cmp missing quotes

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2017-05-12 23:29:58 +00:00
Quentin Young
ab87c0f350 lib: use %p specifier for pointers
Fixes builds on ARM

Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2017-05-12 21:57:30 +00:00
Vincent JARDIN
c5221d2f48 README: add references to EIGRP and NHRP. 2017-05-12 22:51:45 +02:00
Renato Westphal
51cd5cc35e Merge pull request #518 from dwalton76/zebra-mpls-lsp-uninstall
zebra: zebra_mpls_lsp_uninstall was not being called
2017-05-12 12:51:06 -03:00
Renato Westphal
05910d5938 Merge pull request #495 from donaldsharp/mpls_fixes
Mpls fixes
2017-05-12 12:23:52 -03:00