| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 | package blackholeimport (	"github.com/golang/protobuf/ptypes"	"github.com/golang/protobuf/ptypes/any"	"v2ray.com/core/common/buf"	"v2ray.com/core/common/serial")const (	http403response = `HTTP/1.1 403 ForbiddenConnection: closeCache-Control: max-age=3600, publicContent-Length: 0`)type ResponseConfig interface {	AsAny() *any.Any	WriteTo(buf.Writer)}func (v *NoneResponse) WriteTo(buf.Writer) {}func (v *NoneResponse) AsAny() *any.Any {	r, _ := ptypes.MarshalAny(v)	return r}func (v *HTTPResponse) WriteTo(writer buf.Writer) {	b := buf.NewLocal(512)	b.AppendSupplier(serial.WriteString(http403response))	writer.Write(b)}func (v *HTTPResponse) AsAny() *any.Any {	r, _ := ptypes.MarshalAny(v)	return r}func (v *Config) GetInternalResponse() (ResponseConfig, error) {	if v.GetResponse() == nil {		return new(NoneResponse), nil	}	config, err := v.GetResponse().GetInstance()	if err != nil {		return nil, err	}	return config.(ResponseConfig), nil}
 |