From 6434de57ad132e6c961274b79f5afd6df0b7f722 Mon Sep 17 00:00:00 2001 From: NHAS Date: Fri, 23 Dec 2022 22:10:47 +1300 Subject: [PATCH] Add docker builder for the wag binary (debian 11) --- Makefile | 6 +-- builder/Dockerfile | 13 +++++ builder/build-wag.sh | 9 ++++ data/db_migrations_test.go | 4 +- data/init.go | 4 +- go.mod | 26 +++++----- go.sum | 95 ++----------------------------------- router/bpf_bpfeb.o | Bin 9232 -> 9624 bytes router/bpf_bpfel.o | Bin 9264 -> 9656 bytes 9 files changed, 46 insertions(+), 111 deletions(-) create mode 100644 builder/Dockerfile create mode 100644 builder/build-wag.sh diff --git a/Makefile b/Makefile index fd111790..f823f213 100644 --- a/Makefile +++ b/Makefile @@ -3,10 +3,10 @@ LDFLAGS += -X 'github.com/NHAS/wag/config.Version=$(shell git describe --tags)' LDFLAGS_RELEASE = $(LDFLAGS) -s -w debug: .generate_ebpf - CGO_ENABLED=0 go build -ldflags="$(LDFLAGS)" + go build -ldflags="$(LDFLAGS)" release: .generate_ebpf - CGO_ENABLED=0 go build -ldflags="$(LDFLAGS_RELEASE)" + go build -ldflags="$(LDFLAGS_RELEASE)" .generate_ebpf: - BPF_CLANG=clang BPF_CFLAGS='-O2 -g -Wall -Werror' go generate ./... \ No newline at end of file + BPF_CLANG=clang BPF_CFLAGS='-O2 -g -Wall -Werror' go generate ./... diff --git a/builder/Dockerfile b/builder/Dockerfile new file mode 100644 index 00000000..fced2962 --- /dev/null +++ b/builder/Dockerfile @@ -0,0 +1,13 @@ +FROM debian:bullseye +RUN apt update -y +RUN apt upgrade -y +RUN apt install -y make wget llvm clang gcc git +RUN wget https://go.dev/dl/go1.19.4.linux-amd64.tar.gz +RUN rm -rf /usr/local/go && tar -C /usr/local -xzf go1.19.4.linux-amd64.tar.gz +ENV PATH="$PATH:/usr/local/go/bin" +RUN mkdir -p /build/ +WORKDIR /build +ADD build-wag.sh . +RUN chmod +x build-wag.sh +ENTRYPOINT ["bash", "/build/build-wag.sh"] + diff --git a/builder/build-wag.sh b/builder/build-wag.sh new file mode 100644 index 00000000..3930d49a --- /dev/null +++ b/builder/build-wag.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +if [[ ! -d /wag ]]; then + echo "/wag not present, please mount folder onto docker container with -v" + exit 1 +fi + +cd /wag +make release \ No newline at end of file diff --git a/data/db_migrations_test.go b/data/db_migrations_test.go index f54ae8ad..dee9cec0 100644 --- a/data/db_migrations_test.go +++ b/data/db_migrations_test.go @@ -7,7 +7,7 @@ import ( "github.com/NHAS/wag/config" "github.com/NHAS/wag/data/migrations" - _ "modernc.org/sqlite" + _ "github.com/mattn/go-sqlite3" ) func TestMigrationFromNew(t *testing.T) { @@ -26,7 +26,7 @@ func TestMigrationFromVersion1(t *testing.T) { t.Fatal(err) } - db, err := sql.Open("sqlite", "file::memory:?cache=shared") + db, err := sql.Open("sqlite3", "file::memory:?cache=shared") if err != nil { t.Fatal(err) } diff --git a/data/init.go b/data/init.go index 2f846fea..27894d9b 100644 --- a/data/init.go +++ b/data/init.go @@ -10,7 +10,7 @@ import ( "time" "github.com/NHAS/wag/data/migrations" - _ "modernc.org/sqlite" + _ "github.com/mattn/go-sqlite3" ) var ( @@ -43,7 +43,7 @@ func copyFile(src, dst string) error { func Load(path string) error { - db, err := sql.Open("sqlite", path) + db, err := sql.Open("sqlite3", path) if err != nil { return err } diff --git a/go.mod b/go.mod index 0e15d796..5cb5eade 100644 --- a/go.mod +++ b/go.mod @@ -1,10 +1,11 @@ module github.com/NHAS/wag -go 1.17 +go 1.19 require ( github.com/cilium/ebpf v0.9.3 github.com/coreos/go-iptables v0.6.0 + github.com/mattn/go-sqlite3 v1.14.16 github.com/mdlayher/netlink v1.7.1 github.com/pquerna/otp v1.4.0 golang.org/x/net v0.4.0 @@ -14,29 +15,28 @@ require ( ) require ( - github.com/boombuler/barcode v1.0.1 // indirect - github.com/dustin/go-humanize v1.0.0 // indirect + github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc // indirect github.com/google/go-cmp v0.5.9 // indirect github.com/google/uuid v1.3.0 // indirect - github.com/josharian/native v1.1.0 // indirect + github.com/josharian/native v1.0.0 // indirect github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 // indirect github.com/mattn/go-isatty v0.0.16 // indirect - github.com/mdlayher/genetlink v1.3.1 // indirect + github.com/mdlayher/genetlink v1.2.0 // indirect github.com/mdlayher/socket v0.4.0 // indirect - github.com/remyoudompheng/bigfft v0.0.0-20220927061507-ef77025ab5aa // indirect - golang.org/x/crypto v0.4.0 // indirect - golang.org/x/mod v0.7.0 // indirect + github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0 // indirect + golang.org/x/crypto v0.1.0 // indirect + golang.org/x/mod v0.3.0 // indirect golang.org/x/sync v0.1.0 // indirect - golang.org/x/tools v0.4.0 // indirect - golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect + golang.org/x/tools v0.0.0-20201124115921-2c860bdd6e78 // indirect + golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect golang.zx2c4.com/wireguard v0.0.0-20220920152132-bb719d3a6e2c // indirect lukechampine.com/uint128 v1.2.0 // indirect modernc.org/cc/v3 v3.40.0 // indirect modernc.org/ccgo/v3 v3.16.13 // indirect - modernc.org/libc v1.22.2 // indirect + modernc.org/libc v1.21.5 // indirect modernc.org/mathutil v1.5.0 // indirect - modernc.org/memory v1.5.0 // indirect + modernc.org/memory v1.4.0 // indirect modernc.org/opt v0.1.3 // indirect modernc.org/strutil v1.1.3 // indirect - modernc.org/token v1.1.0 // indirect + modernc.org/token v1.0.1 // indirect ) diff --git a/go.sum b/go.sum index ad106841..a562ce88 100644 --- a/go.sum +++ b/go.sum @@ -1,76 +1,46 @@ github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc h1:biVzkmvwrH8WK8raXaxBx6fRVTlJILwEwQGL1I/ByEI= github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= -github.com/boombuler/barcode v1.0.1 h1:NDBbPmhS+EqABEs5Kg3n/5ZNjy73Pz7SIV+KCeqyXcs= -github.com/boombuler/barcode v1.0.1/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= -github.com/chzyer/logex v1.2.0/go.mod h1:9+9sk7u7pGNWYMkh0hdiL++6OeibzJccyQU4p4MedaY= -github.com/chzyer/readline v1.5.0/go.mod h1:x22KAscuvRqlLoK9CsoYsmxoXZMMFVyOl86cAH8qUic= -github.com/chzyer/test v0.0.0-20210722231415-061457976a23/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= github.com/cilium/ebpf v0.9.3 h1:5KtxXZU+scyERvkJMEm16TbScVvuuMrlhPly78ZMbSc= github.com/cilium/ebpf v0.9.3/go.mod h1:w27N4UjpaQ9X/DGrSugxUG+H+NhgntDuPb5lCzxCn8A= github.com/coreos/go-iptables v0.6.0 h1:is9qnZMPYjLd8LYqmm/qlE+wwEgJIkTYdhV3rfZo4jk= github.com/coreos/go-iptables v0.6.0/go.mod h1:Qe8Bv2Xik5FyTXwgIbLAnv2sWSBmvWdFETJConOQ//Q= -github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo= -github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/frankban/quicktest v1.14.0 h1:+cqqvzZV87b4adx/5ayVOaYZ2CrvM4ejQvUdBzPPUss= -github.com/frankban/quicktest v1.14.0/go.mod h1:NeW+ay9A/U67EYXNFA1nPE8e/tnQv/09mUdL/ijj8og= -github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE= github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/pprof v0.0.0-20221118152302-e6195bd50e26 h1:Xim43kblpZXfIBQsbuBVKCudVG457BR2GZFIz3uw3hQ= -github.com/google/pprof v0.0.0-20221118152302-e6195bd50e26/go.mod h1:dDKJzRmX4S37WGHujM7tX//fmj1uioxKzKxz3lo4HJo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/ianlancetaylor/demangle v0.0.0-20220319035150-800ac71e25c2/go.mod h1:aYm2/VgdVmcIU8iMfdMvDMsRAQjcfZSKFby6HOFvi/w= github.com/josharian/native v1.0.0 h1:Ts/E8zCSEsG17dUqv7joXJFybuMLjQfWE04tsBODTxk= github.com/josharian/native v1.0.0/go.mod h1:7X/raswPFr05uY3HiLlYeyQntB6OO7E/d2Cu7qoaN2w= -github.com/josharian/native v1.1.0 h1:uuaP0hAbW7Y4l0ZRQ6C9zfb7Mg1mbFKry/xzDAfmtLA= -github.com/josharian/native v1.1.0/go.mod h1:7X/raswPFr05uY3HiLlYeyQntB6OO7E/d2Cu7qoaN2w= github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 h1:Z9n2FFNUXsshfwJMBgNA0RU6/i7WVaAegv3PtuIHPMs= github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8= -github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pretty v0.3.0 h1:WgNl7dwNpEZ6jJ9k1snq4pZsg7DOEN8hP9Xw0Tsjwk0= -github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= -github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= -github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/mattn/go-isatty v0.0.16 h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ= github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= -github.com/mattn/go-sqlite3 v1.14.15 h1:vfoHhTN1af61xCRSWzFIWzx2YskyMTwHLrExkBOjvxI= -github.com/mattn/go-sqlite3 v1.14.15/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg= +github.com/mattn/go-sqlite3 v1.14.16 h1:yOQRA0RpS5PFz/oikGwBEqvAWhWg5ufRz4ETLjwpU1Y= +github.com/mattn/go-sqlite3 v1.14.16/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg= github.com/mdlayher/genetlink v1.2.0 h1:4yrIkRV5Wfk1WfpWTcoOlGmsWgQj3OtQN9ZsbrE+XtU= github.com/mdlayher/genetlink v1.2.0/go.mod h1:ra5LDov2KrUCZJiAtEvXXZBxGMInICMXIwshlJ+qRxQ= -github.com/mdlayher/genetlink v1.3.1 h1:roBiPnual+eqtRkKX2Jb8UQN5ZPWnhDCGj/wR6Jlz2w= -github.com/mdlayher/genetlink v1.3.1/go.mod h1:uaIPxkWmGk753VVIzDtROxQ8+T+dkHqOI0vB1NA9S/Q= github.com/mdlayher/netlink v1.6.0/go.mod h1:0o3PlBmGst1xve7wQ7j/hwpNaFaH4qCRyWCdcZk8/vA= -github.com/mdlayher/netlink v1.6.2 h1:D2zGSkvYsJ6NreeED3JiVTu1lj2sIYATqSaZlhPzUgQ= -github.com/mdlayher/netlink v1.6.2/go.mod h1:O1HXX2sIWSMJ3Qn1BYZk1yZM+7iMki/uYGGiwGyq/iU= github.com/mdlayher/netlink v1.7.1 h1:FdUaT/e33HjEXagwELR8R3/KL1Fq5x3G5jgHLp/BTmg= github.com/mdlayher/netlink v1.7.1/go.mod h1:nKO5CSjE/DJjVhk/TNp6vCE1ktVxEA8VEh8drhZzxsQ= github.com/mdlayher/socket v0.1.1/go.mod h1:mYV5YIZAfHh4dzDVzI8x8tWLWCliuX8Mon5Awbj+qDs= -github.com/mdlayher/socket v0.2.3 h1:XZA2X2TjdOwNoNPVPclRCURoX/hokBY8nkTmRZFEheM= -github.com/mdlayher/socket v0.2.3/go.mod h1:bz12/FozYNH/VbvC3q7TRIK/Y6dH1kCKsXaUeXi/FmY= github.com/mdlayher/socket v0.4.0 h1:280wsy40IC9M9q1uPGcLBwXpcTQDtoGwVt+BNoITxIw= github.com/mdlayher/socket v0.4.0/go.mod h1:xxFqz5GRCUN3UEOm9CZqEJsAbe1C8OwSK46NlmWuVoc= github.com/mikioh/ipaddr v0.0.0-20190404000644-d465c8ab6721 h1:RlZweED6sbSArvlE924+mUcZuXKLBHA35U7LN621Bws= -github.com/mikioh/ipaddr v0.0.0-20190404000644-d465c8ab6721/go.mod h1:Ickgr2WtCLZ2MDGd4Gr0geeCH5HybhRJbonOgQpvSxc= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/pquerna/otp v1.3.0 h1:oJV/SkzR33anKXwQU3Of42rL4wbrffP4uvUf1SvS5Xs= -github.com/pquerna/otp v1.3.0/go.mod h1:dkJfzwRKNiegxyNb54X/3fLwhCynbMspSyWKnvi1AEg= github.com/pquerna/otp v1.4.0 h1:wZvl1TIVxKRThZIBiwOOHOGP/1+nZyWBil9Y2XNEDzg= github.com/pquerna/otp v1.4.0/go.mod h1:dkJfzwRKNiegxyNb54X/3fLwhCynbMspSyWKnvi1AEg= github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0 h1:OdAsTTz6OkFY5QxjkYwrChwuRruF69c169dPK26NUlk= github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= -github.com/remyoudompheng/bigfft v0.0.0-20220927061507-ef77025ab5aa h1:tEkEyxYeZ43TR55QU/hsIt9aRGBxbgGuz9CGykjvogY= -github.com/remyoudompheng/bigfft v0.0.0-20220927061507-ef77025ab5aa/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= github.com/rogpeppe/go-internal v1.6.1 h1:/FiVV8dS/e+YqF2JvO3yXRFbBLTIuSDkuC7aBOAvL+k= -github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= @@ -78,34 +48,20 @@ github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9dec golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20220315160706-3147a52a75dd/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4 h1:kUhD7nTDoI3fVd9G4ORWrbV5NY0liEs/Jg2pv5f+bBA= -golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.4.0 h1:UVQgzMY87xqpKNgb+kDsll2Igd33HszWHFLmpaRMq/8= -golang.org/x/crypto v0.4.0/go.mod h1:3quD/ATkf6oY+rnes5c3ExXTbLc8mueNue5/DoinL80= +golang.org/x/crypto v0.1.0 h1:MDRAIl0xIo9Io2xV565hzXHw3zVseKrJKodhohM5CjU= +golang.org/x/crypto v0.1.0/go.mod h1:RecgLatLF4+eUMCP1PoPZQb+cVrJcOPbHkTkbkB9sbw= golang.org/x/mod v0.3.0 h1:RM4zey1++hCTbCVQfnWeKs9/IEsaBLA8vTkd0WVtmH4= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.7.0 h1:LapD9S96VoQRhi/GrNTqeBJFrUjs5UHCAtTlgwA5oZA= -golang.org/x/mod v0.7.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20210928044308-7d9f5e0b762b/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220418201149-a630d4f3e7a2/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220923203811-8be639271d50/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= -golang.org/x/net v0.0.0-20221014081412-f15817d10f9b h1:tvrvnPFcdzp294diPnrdZZZ8XUt2Tyj7svb7X52iDuU= -golang.org/x/net v0.0.0-20221014081412-f15817d10f9b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= golang.org/x/net v0.4.0 h1:Q5QPcMlvfxFTAPV0+07Xz/MpK9NTXu2VDUuy0FeMfaU= golang.org/x/net v0.4.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220923202941-7f9b1623fab7 h1:ZrnxWX62AgTKOSagEqxvb3ffipvEDX2pl7E1TdqLqIc= -golang.org/x/sync v0.0.0-20220923202941-7f9b1623fab7/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -115,18 +71,9 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20211103235746-7861aae1554b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220128215802-99c3d69c2c27/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220315194320-039c03cc5b86/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220319134239-a9b59b0215f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220412211240-33da011f77ad/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220928140112-f11e5e49a4ec/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20221013171732-95e765b1cc43 h1:OK7RB6t2WQX54srQQYSXMW8dF5C6/8+oA/s5QBmmto4= -golang.org/x/sys v0.0.0-20221013171732-95e765b1cc43/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.3.0 h1:w8ZOecv6NaNa/zC8944JTU3vz4u6Lagfk4RPQxv92NQ= golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= @@ -139,59 +86,29 @@ golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGm golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20201124115921-2c860bdd6e78 h1:M8tBwCtWD/cZV9DZpFYRUgaymAYAr+aIUTWzDaM3uPs= golang.org/x/tools v0.0.0-20201124115921-2c860bdd6e78/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.4.0 h1:7mTAgkunk3fr4GAloyyCasadO6h9zSsQZbwvcaIciV4= -golang.org/x/tools v0.4.0/go.mod h1:UE5sM2OK9E/d67R0ANs2xJizIymRP5gJU295PvKXxjQ= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk= -golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -golang.zx2c4.com/wintun v0.0.0-20211104114900-415007cec224/go.mod h1:deeaetjYA+DHMHg+sMSMI58GrEteJUUzzw7en6TJQcI= -golang.zx2c4.com/wireguard v0.0.0-20220407013110-ef5c587f782d h1:q4JksJ2n0fmbXC0Aj0eOs6E0AcPqnKglxWXWFqGD6x0= -golang.zx2c4.com/wireguard v0.0.0-20220407013110-ef5c587f782d/go.mod h1:bVQfyl2sCM/QIIGHpWbFGfHPuDvqnCNkT6MQLTCjO/U= golang.zx2c4.com/wireguard v0.0.0-20220920152132-bb719d3a6e2c h1:Okh6a1xpnJslG9Mn84pId1Mn+Q8cvpo4HCeeFWHo0cA= golang.zx2c4.com/wireguard v0.0.0-20220920152132-bb719d3a6e2c/go.mod h1:enML0deDxY1ux+B6ANGiwtg0yAJi1rctkTpcHNAVPyg= -golang.zx2c4.com/wireguard/wgctrl v0.0.0-20220916014741-473347a5e6e3 h1:ARxNdT6I+00ZyY5yRT/ZECkQti4iGrMZX9dvG/ao/LY= -golang.zx2c4.com/wireguard/wgctrl v0.0.0-20220916014741-473347a5e6e3/go.mod h1:yp4gl6zOlnDGOZeWeDfMwQcsdOIQnMdhuPx9mwwWBL4= golang.zx2c4.com/wireguard/wgctrl v0.0.0-20221104135756-97bc4ad4a1cb h1:9aqVcYEDHmSNb0uOWukxV5lHV09WqiSiCuhEgWNETLY= golang.zx2c4.com/wireguard/wgctrl v0.0.0-20221104135756-97bc4ad4a1cb/go.mod h1:mQqgjkW8GQQcJQsbBvK890TKqUK1DfKWkuBGbOkuMHQ= -gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= -lukechampine.com/uint128 v1.1.1/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk= lukechampine.com/uint128 v1.2.0 h1:mBi/5l91vocEN8otkC5bDLhi2KdCticRiwbdB0O+rjI= lukechampine.com/uint128 v1.2.0/go.mod h1:c4eWIwlEGaxC/+H1VguhU4PHXNWDCDMUlWdIWl2j1gk= -modernc.org/cc/v3 v3.37.0/go.mod h1:vtL+3mdHx/wcj3iEGz84rQa8vEqR6XM84v5Lcvfph20= -modernc.org/cc/v3 v3.38.1/go.mod h1:vtL+3mdHx/wcj3iEGz84rQa8vEqR6XM84v5Lcvfph20= modernc.org/cc/v3 v3.40.0 h1:P3g79IUS/93SYhtoeaHW+kRCIrYaxJ27MFPv+7kaTOw= modernc.org/cc/v3 v3.40.0/go.mod h1:/bTg4dnWkSXowUO6ssQKnOV0yMVxDYNIsIrzqTFDGH0= -modernc.org/ccgo/v3 v3.0.0-20220904174949-82d86e1b6d56/go.mod h1:YSXjPL62P2AMSxBphRHPn7IkzhVHqkvOnRKAKh+W6ZI= -modernc.org/ccgo/v3 v3.0.0-20220910160915-348f15de615a/go.mod h1:8p47QxPkdugex9J4n9P2tLZ9bK01yngIVp00g4nomW0= -modernc.org/ccgo/v3 v3.16.13-0.20221017192402-261537637ce8/go.mod h1:fUB3Vn0nVPReA+7IG7yZDfjv1TMWjhQP8gCxrFAtL5g= modernc.org/ccgo/v3 v3.16.13 h1:Mkgdzl46i5F/CNR/Kj80Ri59hC8TKAhZrYSaqvkwzUw= modernc.org/ccgo/v3 v3.16.13/go.mod h1:2Quk+5YgpImhPjv2Qsob1DnZ/4som1lJTodubIcoUkY= modernc.org/ccorpus v1.11.6 h1:J16RXiiqiCgua6+ZvQot4yUuUy8zxgqbqEEUuGPlISk= -modernc.org/ccorpus v1.11.6/go.mod h1:2gEUTrWqdpH2pXsmTM1ZkjeSrUWDpjMu2T6m29L/ErQ= modernc.org/httpfs v1.0.6 h1:AAgIpFZRXuYnkjftxTAZwMIiwEqAfk8aVB2/oA6nAeM= -modernc.org/httpfs v1.0.6/go.mod h1:7dosgurJGp0sPaRanU53W4xZYKh14wfzX420oZADeHM= -modernc.org/libc v1.17.4/go.mod h1:WNg2ZH56rDEwdropAJeZPQkXmDwh+JCA1s/htl6r2fA= -modernc.org/libc v1.18.0/go.mod h1:vj6zehR5bfc98ipowQOM2nIDUZnVew/wNC/2tOGS+q0= -modernc.org/libc v1.19.0/go.mod h1:ZRfIaEkgrYgZDl6pa4W39HgN5G/yDW+NRmNKZBDFrk0= -modernc.org/libc v1.20.3/go.mod h1:ZRfIaEkgrYgZDl6pa4W39HgN5G/yDW+NRmNKZBDFrk0= -modernc.org/libc v1.21.4/go.mod h1:przBsL5RDOZajTVslkugzLBj1evTue36jEomFQOoYuI= modernc.org/libc v1.21.5 h1:xBkU9fnHV+hvZuPSRszN0AXDG4M7nwPLwTWwkYcvLCI= modernc.org/libc v1.21.5/go.mod h1:przBsL5RDOZajTVslkugzLBj1evTue36jEomFQOoYuI= -modernc.org/libc v1.22.2 h1:4U7v51GyhlWqQmwCHj28Rdq2Yzwk55ovjFrdPjs8Hb0= -modernc.org/libc v1.22.2/go.mod h1:uvQavJ1pZ0hIoC/jfqNoMLURIMhKzINIWypNM17puug= modernc.org/mathutil v1.5.0 h1:rV0Ko/6SfM+8G+yKiyI830l3Wuz1zRutdslNoQ0kfiQ= modernc.org/mathutil v1.5.0/go.mod h1:mZW8CKdRPY1v87qxC/wUdX5O1qDzXMP5TH3wjfpga6E= -modernc.org/memory v1.3.0/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU= modernc.org/memory v1.4.0 h1:crykUfNSnMAXaOJnnxcSzbUGMqkLWjklJKkBK2nwZwk= modernc.org/memory v1.4.0/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU= -modernc.org/memory v1.5.0 h1:N+/8c5rE6EqugZwHii4IFsaJ7MUhoWX07J5tC/iI5Ds= -modernc.org/memory v1.5.0/go.mod h1:PkUhL0Mugw21sHPeskwZW4D6VscE/GQJOnIpCnW6pSU= -modernc.org/opt v0.1.1/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0= modernc.org/opt v0.1.3 h1:3XOZf2yznlhC+ibLltsDGzABUGVx8J6pnFMS3E4dcq4= modernc.org/opt v0.1.3/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0= modernc.org/sqlite v1.20.0 h1:80zmD3BGkm8BZ5fUi/4lwJQHiO3GXgIUvZRXpoIfROY= @@ -199,10 +116,6 @@ modernc.org/sqlite v1.20.0/go.mod h1:EsYz8rfOvLCiYTy5ZFsOYzoCcRMu98YYkwAcCw5YIYw modernc.org/strutil v1.1.3 h1:fNMm+oJklMGYfU9Ylcywl0CO5O6nTfaowNsh2wpPjzY= modernc.org/strutil v1.1.3/go.mod h1:MEHNA7PdEnEwLvspRMtWTNnp2nnyvMfkimT1NKNAGbw= modernc.org/tcl v1.15.0 h1:oY+JeD11qVVSgVvodMJsu7Edf8tr5E/7tuhF5cNYz34= -modernc.org/tcl v1.15.0/go.mod h1:xRoGotBZ6dU+Zo2tca+2EqVEeMmOUBzHnhIwq4YrVnE= modernc.org/token v1.0.1 h1:A3qvTqOwexpfZZeyI0FeGPDlSWX5pjZu9hF4lU+EKWg= modernc.org/token v1.0.1/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= -modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y= -modernc.org/token v1.1.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= modernc.org/z v1.7.0 h1:xkDw/KepgEjeizO2sNco+hqYkU12taxQFqPEmgm1GWE= -modernc.org/z v1.7.0/go.mod h1:hVdgNMh8ggTuRG1rGU8x+xGRFfiQUIAw0ZqlPy8+HyQ= diff --git a/router/bpf_bpfeb.o b/router/bpf_bpfeb.o index 98369dcc768ccdb0f385834aa40f213f129d4d26..93d79f2db4a0edd8856735822cf5fbcb5c357a98 100644 GIT binary patch literal 9624 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 N^}%m6y4msj{sWGV;Ozha diff --git a/router/bpf_bpfel.o b/router/bpf_bpfel.o index 8dbf96e62900e2ceb7100b5d108d87690230225e..cee171d519f06b290af78190bb2d2af1b70be223 100644 GIT binary patch literal 9656 zcmd6tZETcT702%kWodVLDM&X3m*s&4(y6ozP_P>Zwn>b{yIt5vG9eJ-8Q$%I;?R;$~ThJ9*7 zoz|w->qy=Cn2A@dP--J3+n)QQR=l#o=wFU1HABh1=pR&q;?#!KIwRfs&MXqC^^Jx% zPiwyOeT`}rm3wD)cD7k`@~e~$)tx7dUDFduop|JOtGL{%vpR9R!EpNK!v*a>T(13k zQ?9Sxba16Qr4{JkH40aroYD2&rfiQmz4@LQ@Au3&)0^MdJn|*VBx#DQRn*+CPJ_AL~$Eq~Et`*=R}?`iB_fMwO2`Z%xW9sB3=@?Q*~D zx-^luKx}_U&S_Ll(QoSUHAQ#L%fC(iMHM4IF!R;5!&C@8`{D)~+t z-?~NO6f0idYsZ@oSvlgO-hrj#cKxby&?E#f`2FY zPlDegrh3+)Qgh>*asG|;G%s3jZdRo*rnN96L0V^W+PtQWo}XyiMpZI-e<-6esZvV+ z@PnKoe<&bTm>Vnv#iAb$gt<&mQH6^CN;xP8zQJIAuJ4!k?^ESmF&xYV886J0RJv55 zN=mw&OQ}JBAS?uzQrRpNs(nxU9*W!3F!9h8*QBLbDwNYkKa}xWsj8UrNG=YCgy=GQ z>vef8MiXnv4(A4AWY>1c=6*_)SlZfHh67$pt-3JpeZt!t^A35oI@19dh55Ea7lT4E z9L{;$y1WjP(;DXeVj=CPGMNIJ(lZj%#zp92rWKfFilxQOGL9LQKG@;47HI{j89%7x z!@>wvdoDlV52f;cc6j(gIqwJAV5nsmTNQVE=s=j~rqI`I^J_3&<;t_EVkw_WUkFM| zRSXN?nE0h|C|In4xmrx+Dvq3v;P-DZCh#Ms#Jv zA@0(ZyF*-P?G7_tE);@Xsh7IX!@Pi@_=7>oKQ}yF@^i%&u8qAe%y;;uLKyfLf)Nj) z%e$g|2_D$a>)VP&4D-8nM!C}qi)bNpN)M`~bzz_2D!$)${H5N59sbF~{l4$*+C?7c z_OH!rb*9rh)a5NwQOp_pT&rft=ph^@J50-p{lO~$y>*>(o?JRu!gXkVP1)Vvk)ES| zcmMG-z1*JJY2{*2@abTn2}+lOj9;K-42nFn3p{gZAmx`*=dz1=&Js1zq}ZOiPQJJ` zb(a<>HaB<-RPGv@_&CkALY|ctY1Fk~b*^4rP}3pLS*@6@)0voj`CK+k|A$Foqh;r1 zenrd8$vn$>^MU=J9?s=T1={3vO6aqJER5&IJQ|>r&Hn7M9nI-Al|G*;DBnMP`t;$m z{+Z*S@AiAo_H_F`>1dcit{5o0R+(Txl}7S`qV@2L;pISGOl9e|(8-}xh0bg2siK09 z3}jP-MLPL&jd2}s8 z@M!|!ExJpqcxRB{`E!{9u5So_!@>0l-4`f8UZrpyiOHz82mh2pY-2>*g8ximCw-^D zlM1|sDs1S8s20I^J|TY}<*zvrQJoGq5homOAU?)SN#$iCs>k6C#Qn@gM~}U&@6-61_YklD2aR9k_cI@( z{HN)yn{@co#OED8MVxo|ByolLmsGxCbyQtv{yp)UjZt-j*^Y05`7f|1 zEqCmuLD4^qcZArBM^&T4&k?sc+(6vP{5ILINkkR>)8)b236jizC+m8hC_cq_3-<3N9r-$0yTw&T6dd>8punh%F}65kT`6U^4X zrmQ{96a1^nZ2b$rFQ9$vU(L+czgn1Wf8xy6zj~Ohe7t2h4qaz*{=LbgIR1>-^cct zR9CuKuWw5yqmA`bqW*tro2WV_>M?&MFizrBqkhZwd13!^*8f82Pjb6(7FQ0i9!}%R zdm894*7G*y>+rJ%2Z; z<-f*yT;dRGzlqYQ$BNZ=lVXF@&wBn|i%TDZVLeM>0zd-(I0anV5b$OSxa1(#{+`2V z>lRN1)LSU@^AvzlA1(n%t-Qm?k8{_NkM?lrL9D&U{sTsP_OS*=dtx<_k*{Dj~h!AZe+!J~r51dj`z5IiY(N^n*1j9}-;GUJ~+!Zdq= zgX!83xLqtlFk?kF|m7i`ZfIDuY&k>4XYDL5~9 zRPdPKalsRUCk0Olt_q$JtepE9<8j{u+W$pyx>v6V}i#8PY9kAJSDg) zct-H6m1~zru3S~^rJzz$?S&xQex&zkJ3xOlsC|uC=HmlO;j6a%j;-3W*^5K^TQ7YW zcfOh|__8tYqs82}jCT6YM&F54dvRn)$J{-2;>eM>|GbGhINoo$)9Ckd-0?|fjt?5# z$MIf{I}Wg(SIOG0gOqi`ltE$hIVXu+r1x>Zn5&yc)XD$^-ohCTV0mNG%Z%X6OTa>dw#$UQz6TL nj&v(d%nnmDN}(q8+f0&|p{AGf_if6NYY*dfTs{y51gd`n!hs2U literal 9264 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