Improve: using native http request

This commit is contained in:
Dreamacro
2018-06-14 01:00:58 +08:00
parent 6e2b9edb45
commit 47e038cf18
12 changed files with 169 additions and 96 deletions

View File

@ -12,13 +12,8 @@ type DirectAdapter struct {
conn net.Conn
}
// Writer is used to output network traffic
func (d *DirectAdapter) Writer() io.Writer {
return d.conn
}
// Reader is used to input network traffic
func (d *DirectAdapter) Reader() io.Reader {
// ReadWriter is used to handle network traffic
func (d *DirectAdapter) ReadWriter() io.ReadWriter {
return d.conn
}
@ -27,6 +22,11 @@ func (d *DirectAdapter) Close() {
d.conn.Close()
}
// Close is used to close connection
func (d *DirectAdapter) Conn() net.Conn {
return d.conn
}
type Direct struct {
}

View File

@ -2,6 +2,7 @@ package adapters
import (
"io"
"net"
C "github.com/Dreamacro/clash/constant"
)
@ -10,18 +11,17 @@ import (
type RejectAdapter struct {
}
// Writer is used to output network traffic
func (r *RejectAdapter) Writer() io.Writer {
return &NopRW{}
}
// Reader is used to input network traffic
func (r *RejectAdapter) Reader() io.Reader {
// ReadWriter is used to handle network traffic
func (r *RejectAdapter) ReadWriter() io.ReadWriter {
return &NopRW{}
}
// Close is used to close connection
func (r *RejectAdapter) Close() {
func (r *RejectAdapter) Close() {}
// Close is used to close connection
func (r *RejectAdapter) Conn() net.Conn {
return nil
}
type Reject struct {

View File

@ -19,13 +19,8 @@ type ShadowsocksAdapter struct {
conn net.Conn
}
// Writer is used to output network traffic
func (ss *ShadowsocksAdapter) Writer() io.Writer {
return ss.conn
}
// Reader is used to input network traffic
func (ss *ShadowsocksAdapter) Reader() io.Reader {
// ReadWriter is used to handle network traffic
func (ss *ShadowsocksAdapter) ReadWriter() io.ReadWriter {
return ss.conn
}
@ -34,6 +29,10 @@ func (ss *ShadowsocksAdapter) Close() {
ss.conn.Close()
}
func (ss *ShadowsocksAdapter) Conn() net.Conn {
return ss.conn
}
type ShadowSocks struct {
server string
cipher string