mirror of
https://github.com/XTLS/Xray-core.git
synced 2026-05-08 14:13:22 +00:00
24 lines
381 B
Go
24 lines
381 B
Go
package ctx
|
|
|
|
import (
|
|
"context"
|
|
)
|
|
|
|
type key int
|
|
|
|
const (
|
|
requireDatagram key = iota
|
|
)
|
|
|
|
func ContextWithRequireDatagram(ctx context.Context, udp bool) context.Context {
|
|
if !udp {
|
|
return ctx
|
|
}
|
|
return context.WithValue(ctx, requireDatagram, struct{}{})
|
|
}
|
|
|
|
func RequireDatagramFromContext(ctx context.Context) bool {
|
|
_, ok := ctx.Value(requireDatagram).(struct{})
|
|
return ok
|
|
}
|