Skip to content

Commit

Permalink
Merge pull request #3 in FRR/frr from master-frr-upstream-sync-2017-0…
Browse files Browse the repository at this point in the history
…7 to master

* commit '95cc6152c70b56d783ce410c3a9e5a2d4b1d5a40': (271 commits)
  eigrpd, vtysh: add dummy route-map cli
  zebra: "debug zebra packet" config display
  lib: copy_nexthops() only copies the first nexthop
  pimd: fix merge damage in pim_show_nexthop()
  bgpd: fix sync damage in bgp_evpn_local_vni_add()
  Remove FRR-hacking.md documentation
  Add OSPF API and FRR Hacking documents
  ospf6d: crash in ospf6_lsdb_show
  bgpd: fix peer startup for labeled-unicast if linklocal address not found
  replace space to tabs, add kernel styles multiline, remove trailing whitespaces.
  Add note about bridge limitations
  whitespace internal 2
  internal reindent
  vtysh: return non-zero for configuration failures
  pimd: do not call pim_bfd_write_config() with NULL ifp
  lib: route_node_lookup() needs to apply_mask() to prefix
  lib: route_node_lookup() needs to apply_mask() to prefix
  Add 1 more identation to correspond to kernel style multi-line comment
  ospf6d: crash in ospf6_lsdb_show
  bgpd: fix peer startup for labeled-unicast if linklocal address not found
  ...
  • Loading branch information
Daniel Walton committed Jul 21, 2017
2 parents 93a358c + 95cc615 commit c5f1582
Show file tree
Hide file tree
Showing 789 changed files with 294,525 additions and 301,455 deletions.
25 changes: 25 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
BasedOnStyle: LLVM
Language: Cpp
IndentWidth: 8
UseTab: Always
BreakBeforeBraces: Linux
AlwaysBreakBeforeMultilineStrings: true
AllowShortIfStatementsOnASingleLine: false
AllowShortLoopsOnASingleLine: false
AllowShortFunctionsOnASingleLine: false
IndentCaseLabels: false
AlignEscapedNewlinesLeft: false
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: false
AlignAfterOpenBracket: true
SpaceAfterCStyleCast: false
MaxEmptyLinesToKeep: 2
BreakBeforeBinaryOperators: NonAssignment
BreakStringLiterals: false
SortIncludes: false
IncludeCategories:
- Regex: '^(<|lib)'
Priority: 0
CommentPragmas: '\$(FRR|clippy)'
ContinuationIndentWidth: 8
25 changes: 13 additions & 12 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -48,19 +48,20 @@ m4/*.m4
debian/autoreconf.after
debian/autoreconf.before
debian/files
debian/quagga-dbg.debhelper.log
debian/quagga-dbg.substvars
debian/quagga-dbg/
debian/quagga-doc.debhelper.log
debian/quagga-doc.substvars
debian/quagga-doc/
debian/quagga.debhelper.log
debian/quagga.postinst.debhelper
debian/quagga.postrm.debhelper
debian/quagga.prerm.debhelper
debian/quagga.substvars
debian/quagga/
debian/frr-dbg.debhelper.log
debian/frr-dbg.substvars
debian/frr-dbg/
debian/frr-doc.debhelper.log
debian/frr-doc.substvars
debian/frr-doc/
debian/frr.debhelper.log
debian/frr.postinst.debhelper
debian/frr.postrm.debhelper
debian/frr.prerm.debhelper
debian/frr.substvars
debian/frr/
debian/tmp/
*.pyc
*.swp
cscope.*
*.pb.h
Expand Down
33 changes: 33 additions & 0 deletions COMMUNITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -380,3 +380,36 @@ CLI's are a complicated ugly beast. Additions or changes to the CLI
should use a DEFUN to encapsulate one setting as much as is possible.
Additionally as new DEFUN's are added to the system, documentation
should be provided for the new commands.

### Backwards Compatibility

As a general principle, changes to CLI and code in the lib/ directory
should be made in a backwards compatible fashion. This means that
changes that are purely stylistic in nature should be avoided, e.g.,
renaming an existing macro or library function name without any
functional change. When adding new parameters to common functions, it is
also good to consider if this too should be done in a backward
compatible fashion, e.g., by preserving the old form in addition to
adding the new form.

This is not to say that minor or even major functional changes to CLI
and common code should be avoided, but rather that the benefit gained
from a change should be weighed against the added cost/complexity to
existing code. Also, that when making such changes, it is good to
preserve compatibility when possible to do so without introducing
maintenance overhead/cost. It is also important to keep in mind,
existing code includes code that may reside in private repositories (and
is yet to be submitted) or code that has yet to be migrated from Quagga
to FRR.

That said, compatibility measures can (and should) be removed when either:

* they become a significant burden, e.g. when data structures change and
the compatibility measure would need a complex adaptation layer or becomes
flat-out impossible
* some measure of time (dependent on the specific case) has passed, so that
the compatibility grace period is considered expired.

In all cases, compatibility pieces should be marked with compiler/preprocessor
annotations to print warnings at compile time, pointing to the appropriate
update path. A `-Werror` build should fail if compatibility bits are used.
5 changes: 3 additions & 2 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,9 @@ SUBDIRS = lib qpb fpm @ZEBRA@ @LIBRFP@ @RFPTEST@ \

DIST_SUBDIRS = lib qpb fpm zebra bgpd ripd ripngd ospfd ospf6d ldpd \
isisd watchfrr vtysh ospfclient doc m4 pkgsrc redhat tests \
solaris pimd nhrpd eigrpd @LIBRFP@ @RFPTEST@ tools snapcraft \
babeld
solaris pimd nhrpd eigrpd bgpd/rfp-example/librfp \
bgpd/rfp-example/rfptest tools snapcraft babeld python \
# end

EXTRA_DIST = aclocal.m4 SERVICES REPORTING-BUGS \
update-autotools \
Expand Down
6 changes: 3 additions & 3 deletions README.NetBSD
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
#!/bin/sh

# This file is helpful for building quagga from cvs on NetBSD, and
# This file is helpful for building FRR from cvs on NetBSD, and
# probably on any system using pkgsrc.
# One should have readline installed already (pkgsrc/devel/readline).

MAKE=make
# Quagga is currently documented not to require GNU make, but sometimes
# FRR is currently documented not to require GNU make, but sometimes
# BSD make fails. Enable this if statement as a workaround.
if false; then
MAKE=gmake
echo "WARNING: using gmake to work around nonportable makefiles"
fi

# Use /usr/quagga to be independent, and /usr/pkg to overwrite pkgsrc.
# Use /usr/frr to be independent, and /usr/pkg to overwrite pkgsrc.
PREFIX=/usr/pkg

case $1 in
Expand Down
2 changes: 1 addition & 1 deletion REPORTING-BUGS
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Please supply the following information:
1. Your FRRouting version or if it is from git then the commit reference.
Please try to report bugs against git master or the latest release.
2. FRR daemons you run e.g. bgpd or ripd and full name of your OS. Any
specific options you compiled Quagga with.
specific options you compiled FRR with.
3. Problem description. Copy and paste relative commands and their output to
describe your network setup e.g. "zebra>show ip route".
Please, also give your simple network layout and output of relative OS
Expand Down
Loading

0 comments on commit c5f1582

Please sign in to comment.