mirror of
https://github.com/caddyserver/caddy.git
synced 2024-12-23 22:27:38 -05:00
6fde3632ef
The vendor/ folder was created with the help of @FiloSottile's gvt and vendorcheck. Any dependencies of Caddy plugins outside this repo are not vendored. We do not remove any unused, vendored packages because vendorcheck -u only checks using the current build configuration; i.e. packages that may be imported by files toggled by build tags of other systems. CI tests have been updated to ignore the vendor/ folder. When Go 1.9 is released, a few of the go commands should be revised to again use ./... as it will ignore the vendor folder by default.
29 lines
570 B
Go
29 lines
570 B
Go
package h2quic
|
|
|
|
import (
|
|
"io"
|
|
|
|
quic "github.com/lucas-clemente/quic-go"
|
|
)
|
|
|
|
type requestBody struct {
|
|
requestRead bool
|
|
dataStream quic.Stream
|
|
}
|
|
|
|
// make sure the requestBody can be used as a http.Request.Body
|
|
var _ io.ReadCloser = &requestBody{}
|
|
|
|
func newRequestBody(stream quic.Stream) *requestBody {
|
|
return &requestBody{dataStream: stream}
|
|
}
|
|
|
|
func (b *requestBody) Read(p []byte) (int, error) {
|
|
b.requestRead = true
|
|
return b.dataStream.Read(p)
|
|
}
|
|
|
|
func (b *requestBody) Close() error {
|
|
// stream's Close() closes the write side, not the read side
|
|
return nil
|
|
}
|