Compare commits

...

28 commits

Author SHA1 Message Date
e040925fe5 fix(deps): update module golang.org/x/net to v0.33.0
All checks were successful
Test / test (oldstable) (push) Successful in 1m0s
Test / test (stable) (push) Successful in 59s
2024-12-18 20:02:11 +00:00
0de9cf5957 fix(deps): update module golang.org/x/net to v0.32.0
Some checks failed
Test / test (oldstable) (push) Successful in 1m0s
Test / test (stable) (push) Failing after 1m12s
2024-12-04 23:00:55 +00:00
cd9418b63b fix(deps): update module golang.org/x/sys to v0.28.0
All checks were successful
Test / test (oldstable) (push) Successful in 59s
Test / test (stable) (push) Successful in 58s
2024-12-04 15:00:51 +00:00
db3713389f fix(deps): update module github.com/quic-go/quic-go to v0.48.2
All checks were successful
Test / test (oldstable) (push) Successful in 1m2s
Test / test (stable) (push) Successful in 1m4s
2024-11-30 15:25:11 +00:00
e237bf22d9 chore(deps): update samuelmeuli/action-snapcraft action to v3
Some checks failed
Test / test (stable) (push) Failing after 1m24s
Test / test (oldstable) (push) Failing after 1m32s
2024-11-14 17:00:51 +00:00
fb77fb09cc fix(deps): update module golang.org/x/net to v0.31.0
All checks were successful
Test / test (oldstable) (push) Successful in 45s
Test / test (stable) (push) Successful in 45s
2024-11-08 17:01:00 +00:00
a861defc9d fix(deps): update module golang.org/x/sys to v0.27.0
All checks were successful
Test / test (oldstable) (push) Successful in 46s
Test / test (stable) (push) Successful in 46s
2024-11-07 22:01:01 +00:00
cc07d8e5bc
refactor(test/quic): Use Adguard DNS for all QUIC tests
All checks were successful
Test / test (oldstable) (push) Successful in 48s
Test / test (stable) (push) Successful in 47s
2024-11-07 17:15:03 +01:00
e9c5ab3422
refactor(renovate): Group dependency updates together
All checks were successful
Test / test (stable) (push) Successful in 1m19s
Test / test (oldstable) (push) Successful in 1m21s
2024-11-07 16:50:43 +01:00
e92871bc9a fix(deps): update module github.com/quic-go/quic-go to v0.48.1
All checks were successful
Test / test (oldstable) (push) Successful in 48s
Test / test (stable) (push) Successful in 48s
2024-10-22 07:01:22 +00:00
8873f2cc63
docs(readme): Add official GitLab mirror
All checks were successful
Test / test (oldstable) (push) Successful in 47s
Test / test (stable) (push) Successful in 47s
2024-10-15 16:56:32 +02:00
69aec6842a
docs(README): Remove old wget flag
All checks were successful
Test / test (oldstable) (push) Successful in 47s
Test / test (stable) (push) Successful in 47s
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2024-10-15 16:52:53 +02:00
03e3338535
goreleaser: Give up on parallelism, docker on forgejo
Some checks failed
Test / test (stable) (push) Has been cancelled
Test / test (oldstable) (push) Has been cancelled
Now it should just work (tm)

Signed-off-by: Sam Therapy <sam@samtherapy.net>
2024-10-15 16:52:34 +02:00
2edda0f250
fix(tesT): oops
Some checks failed
Test / test (oldstable) (push) Successful in 54s
Forgejo Release / release (push) Failing after 1m46s
Test / test (stable) (push) Successful in 55s
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2024-10-15 16:27:26 +02:00
fe372324e3
fix(quic): Make DNS-over-QUIC work again
Some checks failed
Test / test (oldstable) (push) Failing after 57s
Test / test (stable) (push) Failing after 56s
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2024-10-15 16:25:39 +02:00
08aed401c1 fix(deps): update module github.com/quic-go/quic-go to v0.48.0
Some checks failed
Test / test (oldstable) (push) Failing after 59s
Test / test (stable) (push) Has been cancelled
2024-10-15 13:54:39 +00:00
d9b8dda26d
docs(README): Use curl instead of wget
Some checks failed
Test / test (stable) (push) Failing after 3h14m23s
Test / test (oldstable) (push) Failing after 3h14m26s
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2024-10-15 00:03:18 +02:00
525d9f00df
docs(README): Use and provide a deb822 .sources
Some checks failed
Test / test (oldstable) (push) Failing after 1m27s
Test / test (stable) (push) Failing after 1m11s
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2024-10-15 00:00:25 +02:00
b4ad00aa08 fix(deps): update module golang.org/x/net to v0.30.0
All checks were successful
Test / test (oldstable) (push) Successful in 26s
Test / test (stable) (push) Successful in 40s
2024-10-04 17:01:22 +00:00
b2557c4268 fix(deps): update module golang.org/x/sys to v0.26.0
All checks were successful
Test / test (oldstable) (push) Successful in 25s
Test / test (stable) (push) Successful in 21s
2024-10-04 15:01:23 +00:00
c7e6fccc81 fix(deps): update module github.com/quic-go/quic-go to v0.47.0
All checks were successful
Test / test (oldstable) (push) Successful in 24s
Test / test (stable) (push) Successful in 20s
2024-09-08 12:01:17 +00:00
ace89c6b41 fix(deps): update module golang.org/x/net to v0.29.0
All checks were successful
Test / test (oldstable) (push) Successful in 25s
Test / test (stable) (push) Successful in 21s
2024-09-05 18:01:08 +00:00
1f670ca3d0 fix(deps): update module golang.org/x/sys to v0.25.0
All checks were successful
Test / test (oldstable) (push) Successful in 23s
Test / test (stable) (push) Successful in 20s
2024-09-04 15:01:07 +00:00
c6a2a45d9c fix(deps): update module github.com/miekg/dns to v1.1.62
All checks were successful
Test / test (stable) (push) Successful in 23s
Test / test (oldstable) (push) Successful in 44s
2024-08-13 20:00:51 +00:00
9408d638b0 fix(deps): update module golang.org/x/sys to v0.24.0
All checks were successful
Test / test (stable) (push) Successful in 25s
Test / test (oldstable) (push) Successful in 47s
2024-08-08 19:00:53 +00:00
6c9f33c972 fix(deps): update module golang.org/x/net to v0.28.0
All checks were successful
Mirror Push / mirror (push) Successful in 11s
Test / test (stable) (push) Successful in 47s
Test / test (oldstable) (push) Successful in 1m4s
2024-08-07 14:43:37 +00:00
cf6e89457b fix(deps): update module github.com/quic-go/quic-go to v0.46.0
Some checks are pending
Mirror Push / mirror (push) Waiting to run
Test / test (stable) (push) Successful in 51s
Test / test (oldstable) (push) Successful in 1m27s
2024-08-07 14:37:45 +00:00
ffaebb8aaf
fix(goreleaser): Add a lesser parallelism to allow the CI to work on its own
All checks were successful
Mirror Push / mirror (push) Successful in 40s
Test / test (oldstable) (push) Successful in 55s
Test / test (stable) (push) Successful in 21s
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2024-08-02 17:36:24 +02:00
11 changed files with 46 additions and 49 deletions

View file

@ -28,7 +28,7 @@ jobs:
with:
distribution: goreleaser
version: latest
args: release --clean --skip docker,snapcraft
args: release --clean -p 1 --skip docker,snapcraft
env:
GORELEASER_FORCE_TOKEN: gitea
GITEA_TOKEN: ${{ secrets.PUBLISH_TOKEN }}

View file

@ -33,7 +33,7 @@ jobs:
submodules: recursive
- name: Install Snapcraft
uses: samuelmeuli/action-snapcraft@v2
uses: samuelmeuli/action-snapcraft@v3
- name: Set up Go
uses: actions/setup-go@v5

View file

@ -155,7 +155,7 @@ checksum:
name_template: "checksums.txt"
snapshot:
name_template: "{{ incpatch .Version }}-next"
version_template: "{{ incpatch .Version }}-next"
brews:
- repository:

View file

@ -80,10 +80,10 @@ Provided by [Gitea packages](https://git.froth.zone/sam/-/packages/debian/awl-dn
***Any distro that uses deb/dpkg should also work***
```shell
# Add PGP key
sudo curl https://git.froth.zone/api/packages/sam/debian/repository.key -o /usr/share/keyrings/git-froth-zone-sam.asc
# Add repo
echo "deb [signed-by=/usr/share/keyrings/git-froth-zone-sam.asc] https://git.froth.zone/api/packages/sam/debian sid main" | sudo tee /etc/apt/sources.list.d/git-froth-zone-sam.list
# Install the repository and GPG keys
curl -JO https://git.froth.zone/packaging/-/packages/debian/git-froth-zone-debian/1-0/files/5937
sudo dpkg -i git-froth-zone-debian_1-0_all.deb
rm git-froth-zone-debian_1-0_all.deb
# Update and install
sudo apt update
sudo apt install awl-dns
@ -182,7 +182,7 @@ Want to use email instead? Use our [mailing list](https://lists.sr.ht/~sammefish
### Mirrors
The canonical repository is located on [my personal Forgejo instance](https://git.froth.zone/sam/awl). \
Official mirrors are located on [GitHub](https://github.com/SamTherapy/awl) and [SourceHut](https://git.sr.ht/~sammefishe/awl/).
Official mirrors are located on [GitHub](https://github.com/SamTherapy/awl), [GitLab](https://gitlab.com/SamTherapy/awl) and [SourceHut](https://git.sr.ht/~sammefishe/awl).
Contributions are accepted on all mirrors, but the Forgejo instance is preferred.
## License

14
go.mod
View file

@ -5,11 +5,11 @@ go 1.22.5
require (
dns.froth.zone/dnscrypt v0.0.2
github.com/dchest/uniuri v1.2.0
github.com/miekg/dns v1.1.61
github.com/quic-go/quic-go v0.45.2
github.com/miekg/dns v1.1.62
github.com/quic-go/quic-go v0.48.2
github.com/stefansundin/go-zflag v1.1.1
golang.org/x/net v0.27.0
golang.org/x/sys v0.22.0
golang.org/x/net v0.33.0
golang.org/x/sys v0.28.0
gopkg.in/yaml.v3 v3.0.1
gotest.tools/v3 v3.5.1
)
@ -22,10 +22,10 @@ require (
github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 // indirect
github.com/onsi/ginkgo/v2 v2.19.1 // indirect
go.uber.org/mock v0.4.0 // indirect
golang.org/x/crypto v0.25.0 // indirect
golang.org/x/crypto v0.31.0 // indirect
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect
golang.org/x/mod v0.19.0 // indirect
golang.org/x/sync v0.7.0 // indirect
golang.org/x/text v0.16.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/text v0.21.0 // indirect
golang.org/x/tools v0.23.0 // indirect
)

28
go.sum
View file

@ -16,36 +16,36 @@ github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 h1:FKHo8hFI3A+7w0aUQuYXQ+6EN5stWmeY/AZqtM8xk9k=
github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo=
github.com/miekg/dns v1.1.61 h1:nLxbwF3XxhwVSm8g9Dghm9MHPaUZuqhPiGL+675ZmEs=
github.com/miekg/dns v1.1.61/go.mod h1:mnAarhS3nWaW+NVP2wTkYVIZyHNJ098SJZUki3eykwQ=
github.com/miekg/dns v1.1.62 h1:cN8OuEF1/x5Rq6Np+h1epln8OiyPWV+lROx9LxcGgIQ=
github.com/miekg/dns v1.1.62/go.mod h1:mvDlcItzm+br7MToIKqkglaGhlFMHJ9DTNNWONWXbNQ=
github.com/onsi/ginkgo/v2 v2.19.1 h1:QXgq3Z8Crl5EL1WBAC98A5sEBHARrAJNzAmMxzLcRF0=
github.com/onsi/ginkgo/v2 v2.19.1/go.mod h1:O3DtEWQkPa/F7fBMgmZQKKsluAy8pd3rEQdrjkPb9zA=
github.com/onsi/gomega v1.34.0 h1:eSSPsPNp6ZpsG8X1OVmOTxig+CblTc4AxpPBykhe2Os=
github.com/onsi/gomega v1.34.0/go.mod h1:MIKI8c+f+QLWk+hxbePD4i0LMJSExPaZOVfkoex4cAo=
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/quic-go/quic-go v0.45.2 h1:DfqBmqjb4ExSdxRIb/+qXhPC+7k6+DUNZha4oeiC9fY=
github.com/quic-go/quic-go v0.45.2/go.mod h1:1dLehS7TIR64+vxGR70GDcatWTOtMX2PUtnKsjbTurI=
github.com/quic-go/quic-go v0.48.2 h1:wsKXZPeGWpMpCGSWqOcqpW2wZYic/8T3aqiOID0/KWE=
github.com/quic-go/quic-go v0.48.2/go.mod h1:yBgs3rWBOADpga7F+jJsb6Ybg1LSYiQvwWlLX+/6HMs=
github.com/stefansundin/go-zflag v1.1.1 h1:XabhzWS588bVvV1z1UctSa6i8zHkXc5W9otqtnDSHw8=
github.com/stefansundin/go-zflag v1.1.1/go.mod h1:HXX5rABl1AoTcZ2jw+CqJ7R8irczaLquGNZlFabZooc=
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
go.uber.org/mock v0.4.0 h1:VcM4ZOtdbR4f6VXfiOpwpVJDL6lCReaZ6mw31wqh7KU=
go.uber.org/mock v0.4.0/go.mod h1:a6FSlNadKUHUa9IP5Vyt1zh4fC7uAwxMutEAscFbkZc=
golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30=
golang.org/x/crypto v0.25.0/go.mod h1:T+wALwcMOSE0kXgUAnPAHqTLW+XHgcELELW8VaDgm/M=
golang.org/x/crypto v0.31.0 h1:ihbySMvVjLAeSH1IbfcRTkD/iNscyz8rGzjF/E5hV6U=
golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk=
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8=
golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY=
golang.org/x/mod v0.19.0 h1:fEdghXQSo20giMthA7cd28ZC+jts4amQ3YMXiP5oMQ8=
golang.org/x/mod v0.19.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c=
golang.org/x/net v0.27.0 h1:5K3Njcw06/l2y9vpGCSdcxWOYHOUk3dVNGDXN+FvAys=
golang.org/x/net v0.27.0/go.mod h1:dDi0PyhWNoiUOrAS8uXv/vnScO4wnHQO4mj9fn/RytE=
golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M=
golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI=
golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4=
golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI=
golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA=
golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk=
golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
golang.org/x/tools v0.23.0 h1:SGsXPZ+2l4JsgaCKkx+FQ9YZ5XEtA1GZYuoDjenLjvg=

View file

@ -105,7 +105,7 @@ func TestRealPrint(t *testing.T) {
ShowQuery: true,
},
Request: util.Request{
Server: "https://dns.froth.zone/dns-query",
Server: "https://dns.google/dns-query",
Port: 443,
Type: dns.StringToType["NS"],
Class: 1,

View file

@ -96,7 +96,7 @@ func TestCreateQ(t *testing.T) {
QUIC: true,
Request: util.Request{
Server: "dns.froth.zone",
Server: "dns.adguard.com",
Port: 853,
Type: dns.TypeA,
Name: "example.com.",

View file

@ -5,6 +5,7 @@ package resolvers
import (
"context"
"crypto/tls"
"encoding/binary"
"fmt"
"io"
"strings"
@ -52,6 +53,7 @@ func (resolver *QUICResolver) LookUp(msg *dns.Msg) (resp util.Response, err erro
resolver.opts.Logger.Debug("quic: packing query")
msg.Id = 0
// Compress request to over-the-wire
buf, err := msg.Pack()
if err != nil {
@ -69,7 +71,7 @@ func (resolver *QUICResolver) LookUp(msg *dns.Msg) (resp util.Response, err erro
resolver.opts.Logger.Debug("quic: writing to stream")
_, err = stream.Write(buf)
_, err = stream.Write(rfc9250prefix(buf))
if err != nil {
return resp, fmt.Errorf("doq: quic stream write: %w", err)
}
@ -101,10 +103,19 @@ func (resolver *QUICResolver) LookUp(msg *dns.Msg) (resp util.Response, err erro
resolver.opts.Logger.Debug("quic: unpacking response")
err = resp.DNS.Unpack(fullRes)
// Unpack response and lop off the first two bytes (RFC 9250 moment)
err = resp.DNS.Unpack(fullRes[2:])
if err != nil {
return resp, fmt.Errorf("doq: unpack: %w", err)
}
return
}
// rfc9250prefix adds a two-byte prefix to the input data as per RFC 9250.
func rfc9250prefix(in []byte) []byte {
out := make([]byte, 2+len(in))
binary.BigEndian.PutUint16(out, uint16(len(in)))
copy(out[2:], in)
return out
}

View file

@ -35,21 +35,6 @@ func TestQuic(t *testing.T) {
},
},
},
{
"Valid, Froth",
&util.Options{
QUIC: true,
Logger: util.InitLogger(0),
Request: util.Request{
Server: "dns.froth.zone",
Type: dns.TypeA,
Name: "git.freecumextremist.com",
Port: 853,
Timeout: 750 * time.Millisecond,
Retries: 3,
},
},
},
{
"Bad domain",
&util.Options{
@ -107,6 +92,7 @@ func TestQuic(t *testing.T) {
res util.Response
err error
)
for i := 0; i <= test.opts.Request.Retries; i++ {
res, err = query.CreateQuery(test.opts)
if err == nil {

View file

@ -1,5 +1,5 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": ["config:base", ":npm", ":gomod"],
"extends": ["config:base", ":gomod", "group:allNonMajor"],
"automerge": true
}