mirror of
https://github.com/AdguardTeam/AdGuardHome.git
synced 2026-08-31 09:39:44 +00:00
Squashed commit of the following: commit 26fda761b768c8fa97c018276813aaf67182be63 Merge: 3a03dda2d31dc811ffAuthor: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Fri Mar 13 14:48:12 2026 +0700 Merge remote-tracking branch 'origin/master' into AGDNS-3523-upd-dnsproxy-middlewares commit 3a03dda2df5620d2c27b041fd214e7a80046bdad Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Fri Mar 13 09:07:03 2026 +0700 all: upd dnsproxy commit 95d669788e87aa63eb79dbc6dba7259196164dde Merge: 3f1ab07f35558089e7Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Thu Mar 12 10:19:45 2026 +0700 Merge remote-tracking branch 'origin/master' into AGDNS-3523-upd-dnsproxy-middlewares # Conflicts: # go.mod # go.sum # internal/dnsforward/config.go # internal/dnsforward/middleware.go commit 3f1ab07f36082d27417462e403428db7b6e222b3 Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Wed Mar 11 13:38:52 2026 +0700 dnsforward: client id in ctx commit c9be3e2fc37170d12cddcfc3157200d1f7ad955b Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Wed Mar 11 13:24:02 2026 +0700 dnsforward: todo commit 99206ebe3549dfe01edb1ceef4af6a270d2a7572 Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Wed Mar 11 12:32:06 2026 +0700 dnsforward: add log middleware commit 4a2222b6f2d17bc47c385b86ec36f357c4513d63 Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Tue Mar 10 12:30:55 2026 +0700 all: upd dnsproxy fix commit b6435001c41b50c072f52b1e24e01b5ecdd4e1fb Merge: 963832d1cad9cb3e8dAuthor: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Tue Mar 10 08:51:43 2026 +0700 Merge remote-tracking branch 'origin/master' into AGDNS-3523-upd-dnsproxy-middlewares commit 963832d1c812182606ae7916da491b9d3a9ecc5e Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Mon Mar 9 15:39:39 2026 +0700 all: upd dnsproxy commit 961b69368db927f0f72c225c71e554117d606e9d Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Tue Mar 3 09:00:50 2026 +0700 all: upd dnsproxy commit 38c7733939eeed4f1d3e571ecb01f8fc82cae0de Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Mon Mar 2 10:41:40 2026 +0700 dnsforward: imp tests commit 5a0f466bb87bf79cefb254e2df8fb9d78e7584c4 Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Fri Feb 27 11:49:58 2026 +0700 dnsforward: imp tests commit 6de11697d27edad2c821ea8f88054d31cb912fdb Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Fri Feb 27 11:46:39 2026 +0700 dnsforward: imp tests commit 52fb326145a5c7be868cedb96a8ffe9573c6b41f Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Fri Feb 27 11:42:16 2026 +0700 dnsforward: imp tests commit bc3f42165de26fa378fe53bd98f2f98903924a98 Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Fri Feb 27 11:25:46 2026 +0700 dnsforward: imp code commit 8d1c43192c9672d66350f206248716ee8faa0f57 Author: Dimitry Kolyshev <dkolyshev@adguard.com> Date: Wed Feb 25 11:31:12 2026 +0700 all: upd dnsproxy, rm beforerequest
34 lines
694 B
Go
34 lines
694 B
Go
package dnsforward
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
)
|
|
|
|
// ctxKey is the type for context keys.
|
|
type ctxKey int
|
|
|
|
// Context key values.
|
|
const (
|
|
ctxKeyClientID ctxKey = iota
|
|
)
|
|
|
|
// contextWithClientID returns a new context with the given ID.
|
|
func contextWithClientID(parent context.Context, id string) (ctx context.Context) {
|
|
return context.WithValue(parent, ctxKeyClientID, id)
|
|
}
|
|
|
|
// clientIDFromContext returns ID for this request, if any.
|
|
func clientIDFromContext(ctx context.Context) (id string, ok bool) {
|
|
v := ctx.Value(ctxKeyClientID)
|
|
if v == nil {
|
|
return id, false
|
|
}
|
|
|
|
id, ok = v.(string)
|
|
if !ok {
|
|
panic(fmt.Errorf("bad type for ctxKeyClientID: %T(%[1]v)", v))
|
|
}
|
|
|
|
return id, true
|
|
}
|