mirror of
https://github.com/bgp/bgpq4
synced 2025-02-28 08:53:11 +00:00
Compare commits
14 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
20673db180 | ||
|
|
4cae7d1df5 | ||
|
|
851d1c6cf1 | ||
|
|
f53fbba8b3 | ||
|
|
282378e673 | ||
|
|
60a3b3dabf | ||
|
|
b769ad9ce6 | ||
|
|
0678439386 | ||
|
|
c51fddefe5 | ||
|
|
ad20b71f70 | ||
|
|
983c4f74c2 | ||
|
|
8ed8ae112f | ||
|
|
44e97736ac | ||
|
|
7bd337eac3 |
4
.github/images/centos.Dockerfile
vendored
4
.github/images/centos.Dockerfile
vendored
@@ -2,8 +2,8 @@ ARG image=centos/centos:latest
|
||||
FROM quay.io/$image
|
||||
|
||||
# Install dependencies
|
||||
RUN if command -v yum > /dev/null; then dnf=yum; fi; ${dnf:-dnf} update -y
|
||||
RUN if command -v yum > /dev/null; then dnf=yum; fi; ${dnf:-dnf} install -y autoconf automake gcc libtool make diffutils file gzip
|
||||
RUN dnf -y update
|
||||
RUN dnf -y install autoconf automake gcc libtool make diffutils file gzip
|
||||
|
||||
# Add source code
|
||||
ADD . /src
|
||||
|
||||
1
.github/images/fedora/fedora:38.Dockerfile
vendored
1
.github/images/fedora/fedora:38.Dockerfile
vendored
@@ -1 +0,0 @@
|
||||
../centos.Dockerfile
|
||||
1
.github/images/fedora/fedora:39.Dockerfile
vendored
1
.github/images/fedora/fedora:39.Dockerfile
vendored
@@ -1 +0,0 @@
|
||||
../centos.Dockerfile
|
||||
17
.github/images/fedora/fedora:42.Dockerfile
vendored
Normal file
17
.github/images/fedora/fedora:42.Dockerfile
vendored
Normal file
@@ -0,0 +1,17 @@
|
||||
ARG image=centos/centos:latest
|
||||
FROM quay.io/$image
|
||||
|
||||
# Install dependencies
|
||||
RUN dnf -y update
|
||||
RUN dnf -y install autoconf automake gcc libtool make diffutils file gzip awk
|
||||
|
||||
# Add source code
|
||||
ADD . /src
|
||||
WORKDIR /src
|
||||
|
||||
# Run steps
|
||||
RUN ./bootstrap
|
||||
RUN ./configure
|
||||
RUN make
|
||||
RUN make check
|
||||
RUN make distcheck
|
||||
1
.github/images/ubuntu:bionic.Dockerfile
vendored
1
.github/images/ubuntu:bionic.Dockerfile
vendored
@@ -1 +0,0 @@
|
||||
debian.Dockerfile
|
||||
4
.github/workflows/build-container.yml
vendored
4
.github/workflows/build-container.yml
vendored
@@ -19,7 +19,7 @@ jobs:
|
||||
|
||||
build:
|
||||
name: Build container
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-24.04
|
||||
needs: test
|
||||
|
||||
steps:
|
||||
@@ -56,7 +56,7 @@ jobs:
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v5
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
file: .github/images/alpine:3.Dockerfile
|
||||
context: .
|
||||
|
||||
14
.github/workflows/matrixbuild.yml
vendored
14
.github/workflows/matrixbuild.yml
vendored
@@ -12,24 +12,22 @@ jobs:
|
||||
- debian:trixie
|
||||
- debian:bookworm
|
||||
- debian:bullseye
|
||||
- debian:buster
|
||||
- ubuntu:noble
|
||||
- ubuntu:jammy
|
||||
- ubuntu:focal
|
||||
- ubuntu:bionic
|
||||
- fedora/fedora:42
|
||||
- fedora/fedora:41
|
||||
- fedora/fedora:40
|
||||
- fedora/fedora:39
|
||||
- fedora/fedora:38
|
||||
- centos/centos:stream10
|
||||
- centos/centos:stream9
|
||||
- centos/centos:stream8
|
||||
- centos/centos:7
|
||||
- rockylinux/rockylinux:9
|
||||
- rockylinux/rockylinux:8
|
||||
- alpine:edge
|
||||
- alpine:3.19
|
||||
- alpine:3.21
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Work around Docker BuildKit regression
|
||||
# https://github.com/moby/buildkit/issues/2119: `DOCKER_BUILDKIT=1 docker build` fails if Dockerfile is a symlink
|
||||
run: cp --remove-destination $(readlink -f .github/images/${{matrix.dockerenv}}.Dockerfile) .github/images/${{matrix.dockerenv}}.Dockerfile
|
||||
run: [ -L .github/images/${{matrix.dockerenv}}.Dockerfile ] && cp --remove-destination $(readlink -f .github/images/${{matrix.dockerenv}}.Dockerfile) .github/images/${{matrix.dockerenv}}.Dockerfile
|
||||
- name: Run build on ${{matrix.dockerenv}}
|
||||
run: docker build . --file .github/images/${{matrix.dockerenv}}.Dockerfile --build-arg image=${{matrix.dockerenv}}
|
||||
|
||||
5
.github/workflows/unit-tests.yml
vendored
5
.github/workflows/unit-tests.yml
vendored
@@ -8,12 +8,15 @@ on:
|
||||
- reopened
|
||||
- ready_for_review
|
||||
- synchronize
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
output-unit-tests:
|
||||
name: output unit tests
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ubuntu-24.04
|
||||
steps:
|
||||
- name: clone repo
|
||||
uses: actions/checkout@v4
|
||||
|
||||
3
CHANGES
3
CHANGES
@@ -1,3 +1,6 @@
|
||||
1.15 (2024-05-15)
|
||||
- Apologies, debug code slipped into the last release
|
||||
|
||||
1.14 (2024-05-14)
|
||||
- Small performance gain: set TCP_NODELAY on the socket
|
||||
|
||||
|
||||
8
main.c
8
main.c
@@ -604,6 +604,14 @@ main(int argc, char* argv[])
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if (expander.vendor == V_ARISTA
|
||||
&& expander.generation == T_EACL
|
||||
&& expander.family == AF_INET6) {
|
||||
sx_report(SX_FATAL, "Sorry, extended access-lists is not compatible "
|
||||
"with Arista EOS and IPv6\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if (expander.sequence
|
||||
&& (expander.vendor != V_CISCO && expander.vendor != V_ARISTA)) {
|
||||
sx_report(SX_FATAL, "Sorry, prefix-lists sequencing (-s) supported"
|
||||
|
||||
15
printer.c
15
printer.c
@@ -300,12 +300,15 @@ bgpq4_print_juniper_aslist(FILE *f, struct bgpq_expander *b)
|
||||
|
||||
RB_FOREACH(asne, asn_tree, &b->asnlist) {
|
||||
if (!nc) {
|
||||
fprintf(f, " as-list a%u members [ %u",
|
||||
lineNo, asne->asn);
|
||||
} else {
|
||||
fprintf(f," %u", asne->asn);
|
||||
fprintf(f, " as-list a%u members [",
|
||||
lineNo);
|
||||
}
|
||||
|
||||
// Filter out AS 0
|
||||
// "error: RPD Policy: Invalid AS 0"
|
||||
if (asne->asn != 0)
|
||||
fprintf(f," %u", asne->asn);
|
||||
|
||||
nc++;
|
||||
|
||||
if (nc == b->aswidth) {
|
||||
@@ -1162,7 +1165,7 @@ bgpq4_print_eprefix(struct sx_radix_node *n, void *ff)
|
||||
|
||||
sx_prefix_snprintf(n->prefix, prefix, sizeof(prefix));
|
||||
|
||||
snprintf(seqno, sizeof(seqno), " seq %i", seq++);
|
||||
snprintf(seqno, sizeof(seqno), "seq %i", seq++);
|
||||
|
||||
if (n->isAggregate) {
|
||||
if (n->aggregateLow > n->prefix->masklen) {
|
||||
@@ -1865,7 +1868,7 @@ bgpq4_print_k7prefix(struct sx_radix_node *n, void *ff)
|
||||
|
||||
if (n->isAggregate)
|
||||
fprintf(f,"/routing filter rule add chain=\""
|
||||
"%s-%s\" rule=\"if (dst in %s && dst-len in %d-%d) {accept}\"\n",
|
||||
"%s-%s\" rule=\"if (dst in %s && dst-len in %d-%d) {accept}\"\n",
|
||||
bname ? bname : "NN",
|
||||
n->prefix->family == AF_INET ? "V4" : "V6",
|
||||
prefix, n->aggregateLow, n->aggregateHi);
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
no ip prefix-list NN
|
||||
ip prefix-list NN
|
||||
seq 1 permit 192.31.196.0/24
|
||||
seq 2 permit 192.175.48.0/24
|
||||
seq 1 permit 192.31.196.0/24
|
||||
seq 2 permit 192.175.48.0/24
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
no ipv6 prefix-list NN
|
||||
ipv6 prefix-list NN
|
||||
seq 1 permit 2001:4:112::/48
|
||||
seq 2 permit 2620:4f:8000::/48
|
||||
seq 1 permit 2001:4:112::/48
|
||||
seq 2 permit 2620:4f:8000::/48
|
||||
|
||||
Reference in New Issue
Block a user