https.go 465 B

1234567891011121314151617
  1. package inbound
  2. import (
  3. "net"
  4. "net/http"
  5. C "github.com/metacubex/mihomo/constant"
  6. )
  7. // NewHTTPS receive CONNECT request and return ConnContext
  8. func NewHTTPS(request *http.Request, conn net.Conn, additions ...Addition) (net.Conn, *C.Metadata) {
  9. metadata := parseHTTPAddr(request)
  10. metadata.Type = C.HTTPS
  11. ApplyAdditions(metadata, WithSrcAddr(conn.RemoteAddr()), WithInAddr(conn.LocalAddr()))
  12. ApplyAdditions(metadata, additions...)
  13. return conn, metadata
  14. }