1package grpchijack 2 3import ( 4 "net" 5 6 controlapi "github.com/moby/buildkit/api/services/control" 7 "google.golang.org/grpc/metadata" 8) 9 10// Hijack hijacks session to a connection. 11func Hijack(stream controlapi.Control_SessionServer) (net.Conn, <-chan struct{}, map[string][]string) { 12 md, _ := metadata.FromIncomingContext(stream.Context()) 13 c, closeCh := streamToConn(stream) 14 return c, closeCh, md 15} 16