diff options
| author | Felix Hanley <felix@userspace.com.au> | 2017-06-19 02:11:47 +0000 |
|---|---|---|
| committer | Felix Hanley <felix@userspace.com.au> | 2017-06-19 02:11:47 +0000 |
| commit | afe038fb57690b20229d63b64c15b07b45d71527 (patch) | |
| tree | 9888170439a4af854331a73093b910d72a90af4a /btclient.go | |
| parent | 315df83a3203a7a62d7cc6003385bd91c384cdd3 (diff) | |
| download | dhtsearch-afe038fb57690b20229d63b64c15b07b45d71527.tar.gz dhtsearch-afe038fb57690b20229d63b64c15b07b45d71527.tar.bz2 | |
Fix configuration setting and add Unicode character class tags
Diffstat (limited to 'btclient.go')
| -rw-r--r-- | btclient.go | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/btclient.go b/btclient.go index f3d32eb..548fa3a 100644 --- a/btclient.go +++ b/btclient.go @@ -111,18 +111,15 @@ func read(conn *net.TCPConn, size int, data *bytes.Buffer) error { if err != nil || n != int64(size) { return errors.New("read error") } - btBytesIn.Add(int64(size)) + btBytesIn.Add(n) return nil } // readMessage gets a message from the tcp connection. -func readMessage(conn *net.TCPConn, data *bytes.Buffer) ( - length int, err error) { - +func readMessage(conn *net.TCPConn, data *bytes.Buffer) (length int, err error) { if err = read(conn, 4, data); err != nil { return } - btBytesIn.Add(4) length = int(bytes2int(data.Next(4))) if length == 0 { @@ -132,7 +129,6 @@ func readMessage(conn *net.TCPConn, data *bytes.Buffer) ( if err = read(conn, length, data); err != nil { return } - btBytesIn.Add(int64(length)) return } @@ -267,13 +263,13 @@ func (bt *btClient) fetchMetadata(p peer) { data := bytes.NewBuffer(nil) data.Grow(BLOCK) + // TCP handshake if sendHandshake(conn, []byte(infoHash), []byte(genInfoHash())) != nil || read(conn, 68, data) != nil || onHandshake(data.Next(68)) != nil || sendExtHandshake(conn) != nil { return } - btBytesIn.Add(68) for { length, err = readMessage(conn, data) |
