aboutsummaryrefslogtreecommitdiff
path: root/btclient.go
diff options
context:
space:
mode:
authorFelix Hanley <felix@userspace.com.au>2017-06-19 02:11:47 +0000
committerFelix Hanley <felix@userspace.com.au>2017-06-19 02:11:47 +0000
commitafe038fb57690b20229d63b64c15b07b45d71527 (patch)
tree9888170439a4af854331a73093b910d72a90af4a /btclient.go
parent315df83a3203a7a62d7cc6003385bd91c384cdd3 (diff)
downloaddhtsearch-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.go10
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)