Artifact 0f3d7e44193766619e717821a108ee425064836cd7fb25e74c9a0dfe1e6b62e2:
- File
go.mod
— part of check-in
[dbb0c04321]
at
2026-10-11 01:48:18
on branch main
— fix(leaf): grant unauthenticated peers capabilities explicitly; go-libfossil v0.11.0 (#201)
go-libfossil v0.11.0 gives a new repository's `nobody` user fossil's default capabilities, clone and pull (`gjorz`), instead of push and Setup (GHSA-44p2-whvx-9gwq). Leaves that accept pushes from peers syncing without credentials, over HTTP, NATS or iroh, now have to grant that explicitly.
- agent.Config.NobodyCaps, applied by agent.New, sets the leaf repo's nobody capabilities. Empty keeps what the repo stores. - The leaf binary takes it as -nobody-caps / LEAF_NOBODY_CAPS. For example, `gio` lets unauthenticated peers push to this leaf. - The leaf-to-leaf iroh tests grant `gio`, since their peers push without credentials.
The bump also brings v0.11.0's other security fixes: the login nonce is checked against the request body, reqconfig is scoped, payload sizes and table-sync rows are validated, and HTTP replies are capped.
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> (user: [email protected], size: 1976) [annotate] [blame] [check-ins using]
module github.com/danmestas/EdgeSync go 1.26.0 require ( github.com/alecthomas/kong v1.16.1 github.com/danmestas/EdgeSync/bridge v0.0.4 github.com/danmestas/EdgeSync/leaf v0.0.12 github.com/danmestas/go-libfossil v0.11.0 github.com/danmestas/go-libfossil/db/driver/modernc v0.3.0 github.com/nats-io/nats-server/v2 v2.14.5 github.com/nats-io/nats.go v1.53.1 ) require ( github.com/antithesishq/antithesis-sdk-go v0.7.2 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/dustin/go-humanize v1.0.1 // indirect github.com/felixge/httpsnoop v1.1.0 // indirect github.com/go-logr/logr v1.4.4 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/google/go-tpm v0.9.8 // indirect github.com/google/uuid v1.6.0 // indirect github.com/hexops/gotextdiff v1.0.3 // indirect github.com/klauspost/compress v1.19.2 // indirect github.com/mattn/go-isatty v0.0.24 // indirect github.com/minio/highwayhash v1.0.4 // indirect github.com/nats-io/jwt/v2 v2.8.2 // indirect github.com/nats-io/nkeys v0.4.16 // indirect github.com/nats-io/nuid v1.0.1 // indirect github.com/ncruces/go-strftime v1.0.0 // indirect github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e // indirect go.opentelemetry.io/auto/sdk v1.2.1 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.70.0 // indirect go.opentelemetry.io/otel v1.45.0 // indirect go.opentelemetry.io/otel/metric v1.45.0 // indirect go.opentelemetry.io/otel/trace v1.45.0 // indirect golang.org/x/crypto v0.55.0 // indirect golang.org/x/sys v0.47.0 // indirect golang.org/x/time v0.15.0 // indirect modernc.org/libc v1.75.3 // indirect modernc.org/mathutil v1.7.1 // indirect modernc.org/memory v1.12.0 // indirect modernc.org/sqlite v1.56.0 // indirect ) replace ( github.com/danmestas/EdgeSync/bridge => ./bridge github.com/danmestas/EdgeSync/leaf => ./leaf )