mirror of
https://github.com/matrix-org/dendrite
synced 2024-09-08 04:05:42 +02:00
33 lines
817 B
Go
33 lines
817 B
Go
|
package setup
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
"fmt"
|
||
|
"net"
|
||
|
"net/http"
|
||
|
)
|
||
|
|
||
|
// noOpHTTPTransport is used to disable federation.
|
||
|
var noOpHTTPTransport = &http.Transport{
|
||
|
Dial: func(_, _ string) (net.Conn, error) {
|
||
|
return nil, fmt.Errorf("federation prohibited by configuration")
|
||
|
},
|
||
|
DialContext: func(_ context.Context, _, _ string) (net.Conn, error) {
|
||
|
return nil, fmt.Errorf("federation prohibited by configuration")
|
||
|
},
|
||
|
DialTLS: func(_, _ string) (net.Conn, error) {
|
||
|
return nil, fmt.Errorf("federation prohibited by configuration")
|
||
|
},
|
||
|
}
|
||
|
|
||
|
func init() {
|
||
|
noOpHTTPTransport.RegisterProtocol("matrix", &noOpHTTPRoundTripper{})
|
||
|
}
|
||
|
|
||
|
type noOpHTTPRoundTripper struct {
|
||
|
}
|
||
|
|
||
|
func (y *noOpHTTPRoundTripper) RoundTrip(req *http.Request) (*http.Response, error) {
|
||
|
return nil, fmt.Errorf("federation prohibited by configuration")
|
||
|
}
|