I have experienced 3 out of memory error this day. My machine has 1GB memory and is dedicated to run this proxy. And I am the only user of it.
fatal error: runtime: out of memory
runtime stack:
runtime.throw(0x96f8dc, 0x16)
/snap/go/2890/src/runtime/panic.go:608 +0x72
runtime.sysMap(0xc004000000, 0x68000000, 0xda7a38)
/snap/go/2890/src/runtime/mem_linux.go:156 +0xc7
runtime.(*mheap).sysAlloc(0xd8e640, 0x68000000, 0x0, 0x0)
/snap/go/2890/src/runtime/malloc.go:619 +0x1c7
runtime.(*mheap).grow(0xd8e640, 0x3393a, 0x0)
/snap/go/2890/src/runtime/mheap.go:920 +0x42
runtime.(*mheap).allocSpanLocked(0xd8e640, 0x3393a, 0xda7a48, 0x0)
/snap/go/2890/src/runtime/mheap.go:848 +0x337
runtime.(*mheap).alloc_m(0xd8e640, 0x3393a, 0xc000040101, 0xc000000001)
/snap/go/2890/src/runtime/mheap.go:692 +0x119
runtime.(*mheap).alloc.func1()
/snap/go/2890/src/runtime/mheap.go:759 +0x4c
runtime.(*mheap).alloc(0xd8e640, 0x3393a, 0xc000010101, 0x8a6600)
/snap/go/2890/src/runtime/mheap.go:758 +0x8a
runtime.largeAlloc(0x672724d1, 0x101, 0x136)
/snap/go/2890/src/runtime/malloc.go:1019 +0x97
runtime.mallocgc.func1()
/snap/go/2890/src/runtime/malloc.go:914 +0x46
runtime.systemstack(0x0)
/snap/go/2890/src/runtime/asm_amd64.s:351 +0x66
runtime.mstart()
/snap/go/2890/src/runtime/proc.go:1229
goroutine 5482 [running]:
runtime.systemstack_switch()
/snap/go/2890/src/runtime/asm_amd64.s:311 fp=0xc000201c08 sp=0xc000201c00 pc=0x457800
runtime.mallocgc(0x672724d1, 0x8a7d80, 0x1, 0xc000201ce0)
/snap/go/2890/src/runtime/malloc.go:913 +0x896 fp=0xc000201ca8 sp=0xc000201c08 pc=0x40d9d6
runtime.makeslice(0x8a7d80, 0x672724d1, 0x672724d1, 0x4, 0x8, 0xc00045ae00)
/snap/go/2890/src/runtime/slice.go:70 +0x77 fp=0xc000201cd8 sp=0xc000201ca8 pc=0x442947
bytes.makeSlice(0x672724d1, 0x0, 0x0, 0x0)
/snap/go/2890/src/bytes/buffer.go:231 +0x6d fp=0xc000201d18 sp=0xc000201cd8 pc=0x46d19d
bytes.(*Buffer).grow(0xc00030bce0, 0x67271fd1, 0x8)
/snap/go/2890/src/bytes/buffer.go:144 +0x15a fp=0xc000201d68 sp=0xc000201d18 pc=0x46cb0a
bytes.(*Buffer).Grow(0xc00030bce0, 0x67271fd1)
/snap/go/2890/src/bytes/buffer.go:163 +0x3a fp=0xc000201d90 sp=0xc000201d68 pc=0x46ccba
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediate).Read(0xc000135ec0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate.go:60 +0x43a
fp=0xc000201ed0 sp=0xc000201d90 pc=0x846e5a
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediateSecure).Read(0xc000135ec0, 0x9897d8, 0xc00024b
330, 0xc00009c900, 0xc00003ef68, 0xc00003ef68)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate_secure.go:19
+0x31 fp=0xc000201f10 sp=0xc000201ed0 pc=0x847601
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e340, 0xc000135ec0, 0x7fc0
6d64e380, 0xc00013ed80, 0xc00024b330, 0xc000310da4)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83 fp=0xc000201fa8 s
p=0xc000201f10 pc=0x851d53
runtime.goexit()
/snap/go/2890/src/runtime/asm_amd64.s:1333 +0x1 fp=0xc000201fb0 sp=0xc000201fa8 pc=0x4598e1
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:95 +0x8f6
goroutine 1 [IO wait]:
internal/poll.runtime_pollWait(0x7fc06d635d60, 0x72, 0x0)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0000b9018, 0x72, 0xc00009c900, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0000b9018, 0xffffffffffffff00, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Accept(0xc0000b9000, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:384 +0x1a0
net.(*netFD).accept(0xc0000b9000, 0xc00000e288, 0x0, 0x0)
/snap/go/2890/src/net/fd_unix.go:238 +0x42
net.(*TCPListener).accept(0xc0000982d8, 0xc0000cd9f0, 0xc0000cd9f8, 0x18)
/snap/go/2890/src/net/tcpsock_posix.go:139 +0x2e
net.(*TCPListener).Accept(0xc0000982d8, 0x9880e0, 0xc00025e920, 0x9fcae0, 0xc00000e288)
/snap/go/2890/src/net/tcpsock.go:260 +0x47
github.com/9seconds/mtg/proxy.(*Proxy).Serve(0xc00025e920, 0xc00025e920, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:36 +0xae
main.main()
/home/vagrant/safe/go/src/github.com/9seconds/mtg/main.go:208 +0x9a7
goroutine 38 [select]:
github.com/9seconds/mtg/stats.(*Stats).start(0xc000020800)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/stats/stats.go:108 +0x156
created by github.com/9seconds/mtg/stats.Init
/home/vagrant/safe/go/src/github.com/9seconds/mtg/stats/init.go:24 +0xe8
goroutine 39 [IO wait, 386 minutes]:
internal/poll.runtime_pollWait(0x7fc06d635f00, 0x72, 0x0)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0000b8a18, 0x72, 0xc000062200, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0000b8a18, 0xffffffffffffff00, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Accept(0xc0000b8a00, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:384 +0x1a0
net.(*netFD).accept(0xc0000b8a00, 0xd89120, 0x30, 0x30)
/snap/go/2890/src/net/fd_unix.go:238 +0x42
net.(*TCPListener).accept(0xc000098280, 0x50, 0x7fc06d691000, 0x0)
/snap/go/2890/src/net/tcpsock_posix.go:139 +0x2e
net.(*TCPListener).AcceptTCP(0xc000098280, 0x40dcb8, 0x30, 0x9250a0)
/snap/go/2890/src/net/tcpsock.go:247 +0x47
net/http.tcpKeepAliveListener.Accept(0xc000098280, 0x9250a0, 0xc000135b60, 0x8cd520, 0xd79e40)
/snap/go/2890/src/net/http/server.go:3232 +0x2f
net/http.(*Server).Serve(0xc0004360d0, 0x9f9ca0, 0xc000098280, 0x0, 0x0)
/snap/go/2890/src/net/http/server.go:2826 +0x22f
net/http.(*Server).ListenAndServe(0xc0004360d0, 0xc0004360d0, 0xe)
/snap/go/2890/src/net/http/server.go:2764 +0xb6
net/http.ListenAndServe(0xc000454970, 0xe, 0x0, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/http/server.go:3004 +0x74
github.com/9seconds/mtg/stats.startServer(0xc00011e690, 0x9f4c20, 0xc0004c05a0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/stats/server.go:37 +0xf8
created by github.com/9seconds/mtg/stats.Init
/home/vagrant/safe/go/src/github.com/9seconds/mtg/stats/init.go:25 +0x12c
goroutine 37 [chan receive]:
github.com/9seconds/mtg/stats.(*prometheusExporter).run(0xc0002b8380)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/stats/prometheus.go:26 +0xb8
created by github.com/9seconds/mtg/stats.Init
/home/vagrant/safe/go/src/github.com/9seconds/mtg/stats/init.go:22 +0xb8
goroutine 15 [chan receive]:
github.com/9seconds/mtg/ntp.AutoUpdate()
/home/vagrant/safe/go/src/github.com/9seconds/mtg/ntp/ntp.go:42 +0xac
created by main.main
/home/vagrant/safe/go/src/github.com/9seconds/mtg/main.go:197 +0x964
goroutine 50 [chan receive, 26 minutes]:
github.com/9seconds/mtg/telegram.(*middleTelegramCaller).autoUpdate(0xc0000d8790)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/telegram/middle_caller.go:55 +0x77
created by github.com/9seconds/mtg/telegram.NewMiddleTelegram
/home/vagrant/safe/go/src/github.com/9seconds/mtg/telegram/middle.go:136 +0x10a
goroutine 5452 [IO wait, 1 minutes]:
internal/poll.runtime_pollWait(0x7fc06d655538, 0x72, 0xc00018d988)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0003a4c18, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0003a4c18, 0xc000518500, 0x4, 0x280)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0003a4c00, 0xc000518500, 0x4, 0x280, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0003a4c00, 0xc000518500, 0x4, 0x280, 0x1520d391c7b8, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc00000e240, 0xc000518500, 0x4, 0x280, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc0000b48c0, 0xc000518500, 0x4, 0x280, 0xc000518500,
0x280, 0x280)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/wrappers.(*StreamCipher).Read(0xc0002f0b40, 0xc000518500, 0x4, 0x280, 0x280,
0x280, 0xc000518500)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/streamcipher.go:22 +0x56
io.(*LimitedReader).Read(0xc000250d60, 0xc000518500, 0x280, 0x280, 0x0, 0x203000, 0xc00018dc68)
/snap/go/2890/src/io/io.go:448 +0x63
bytes.(*Buffer).ReadFrom(0xc0005005b0, 0x9f3ba0, 0xc000250d60, 0x7fc06d64e158, 0xc0005005b0, 0x1)
/snap/go/2890/src/bytes/buffer.go:206 +0xb4
io.copyBuffer(0x9f3760, 0xc0005005b0, 0x9f3ba0, 0xc000250d60, 0x0, 0x0, 0x0, 0x8f9980, 0x7fc06d64e40
1, 0xc000250d60)
/snap/go/2890/src/io/io.go:388 +0x303
io.Copy(0x9f3760, 0xc0005005b0, 0x9f3ba0, 0xc000250d60, 0x9068e0, 0x0, 0x7fc06d64e440)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3760, 0xc0005005b0, 0x7fc06d64e440, 0xc0002f0b40, 0x4, 0x6, 0x0, 0x0)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediate).Read(0xc00013e360, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate.go:42 +0x222
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediateSecure).Read(0xc00013e360, 0xc000153100, 0xfc,
0x700, 0xfc, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate_secure.go:19
+0x31
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e340, 0xc00013e360, 0x7fc0
6d64e380, 0xc00013e450, 0xc00024aa60, 0xc0000289f4)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:95 +0x8f6
goroutine 5481 [chan receive]:
github.com/9seconds/mtg/proxy.(*Proxy).accept.func2(0x9fa0a0, 0xc00009ca80, 0x7fc06d64e2f0, 0xc00013
ed80, 0x7fc06d5fa5c8, 0xc000135ec0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:84 +0x4c
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:83 +0x74f
goroutine 5451 [chan receive, 1 minutes]:
github.com/9seconds/mtg/proxy.(*Proxy).accept.func2(0x9fa0a0, 0xc0002f0a80, 0x7fc06d64e2f0, 0xc00013
e450, 0x7fc06d5fa5c8, 0xc00013e360)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:84 +0x4c
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:83 +0x74f
goroutine 5459 [IO wait]:
internal/poll.runtime_pollWait(0x7fc06d655398, 0x72, 0xc0000e7528)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0003a4418, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0003a4418, 0xc00055d200, 0x401, 0x401)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0003a4400, 0xc00055d200, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0003a4400, 0xc00055d200, 0x401, 0x401, 0x153113678837, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc000098018, 0xc00055d200, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc000500ee0, 0xc00055d200, 0x401, 0x401, 0x401, 0x401
, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/utils.ReadCurrentData(0x7fc06d64e2b0, 0xc000500ee0, 0xc000500ee0, 0x7fc06d64
e2b0, 0xc000500ee0, 0x0, 0x4)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/utils/read_current_data.go:13 +0x107
github.com/9seconds/mtg/wrappers.(*BlockCipher).Read(0xc00009c5c0, 0xc0004540ac, 0x4, 0x4, 0x8a7d80,
0x1, 0xc0004540ac)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/blockcipher.go:35 +0xf9
io.(*LimitedReader).Read(0xc0001c6240, 0xc0004540ac, 0x4, 0x4, 0x4, 0x4, 0x10)
/snap/go/2890/src/io/io.go:448 +0x63
io.copyBuffer(0x9f3be0, 0xc0001c61e0, 0x9f3ba0, 0xc0001c6240, 0xc0004540ac, 0x4, 0x4, 0x8f9980, 0x7f
c06d5fa601, 0xc0001c6240)
/snap/go/2890/src/io/io.go:402 +0x125
io.Copy(0x9f3be0, 0xc0001c61e0, 0x9f3ba0, 0xc0001c6240, 0x9176c0, 0x0, 0x7fc06d5fa678)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3be0, 0xc0001c61e0, 0x7fc06d5fa678, 0xc00009c5c0, 0x4, 0x4, 0x1, 0x0)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoFrame).Read(0xc00027abe0, 0x96a200, 0xb, 0xc0000e7c00, 0x6
, 0x6)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_frame.go:51 +0x192
github.com/9seconds/mtg/wrappers.(*MTProtoProxy).Read(0xc00013e420, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_proxy.go:36 +0x1e6
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e3a0, 0xc00013e420, 0x7fc0
6d64e3e0, 0xc000134cf0, 0xc0002287f0, 0xc000310606)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
github.com/9seconds/mtg/proxy.(*Proxy).accept(0xc00025e920, 0x9fcae0, 0xc00000e020)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:96 +0x9aa
created by github.com/9seconds/mtg/proxy.(*Proxy).Serve
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:39 +0x18e
goroutine 3494 [IO wait]:
internal/poll.runtime_pollWait(0x7fc06d635470, 0x72, 0xc000485988)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0003a4118, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0003a4118, 0xc00052ec00, 0x4, 0x280)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0003a4100, 0xc00052ec80, 0x4, 0x280, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0003a4100, 0xc00052ec80, 0x4, 0x280, 0x152f92b58175, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc00000e018, 0xc00052ec80, 0x4, 0x280, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc00030a0e0, 0xc00052ec80, 0x4, 0x280, 0xc00052ec80,
0x280, 0x280)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/wrappers.(*StreamCipher).Read(0xc00009c100, 0xc00052ec80, 0x4, 0x280, 0x280,
0x280, 0xc00052ec80)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/streamcipher.go:22 +0x56
io.(*LimitedReader).Read(0xc000215120, 0xc00052ec80, 0x280, 0x280, 0x0, 0x203000, 0xc000485c68)
/snap/go/2890/src/io/io.go:448 +0x63
bytes.(*Buffer).ReadFrom(0xc0000d6380, 0x9f3ba0, 0xc000215120, 0x7fc06d64e158, 0xc0000d6380, 0x1)
/snap/go/2890/src/bytes/buffer.go:206 +0xb4
io.copyBuffer(0x9f3760, 0xc0000d6380, 0x9f3ba0, 0xc000215120, 0x0, 0x0, 0x0, 0x8f9980, 0x7fc06d64e40
1, 0xc000215120)
/snap/go/2890/src/io/io.go:388 +0x303
io.Copy(0x9f3760, 0xc0000d6380, 0x9f3ba0, 0xc000215120, 0x9068e0, 0x0, 0x7fc06d64e440)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3760, 0xc0000d6380, 0x7fc06d64e440, 0xc00009c100, 0x4, 0x6, 0x0, 0x0)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediate).Read(0xc000083f50, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate.go:42 +0x222
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediateSecure).Read(0xc000083f50, 0xc000332300, 0xb4,
0x700, 0xb4, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate_secure.go:19
+0x31
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e340, 0xc000083f50, 0x7fc0
6d64e380, 0xc000134690, 0xc00028c230, 0xc000310664)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:95 +0x8f6
goroutine 5439 [chan receive]:
github.com/9seconds/mtg/proxy.(*Proxy).accept.func2(0x9fa0a0, 0xc0002f0940, 0x7fc06d64e2f0, 0xc00013
e5a0, 0x7fc06d5fa5c8, 0xc00013e2a0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:84 +0x4c
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:83 +0x74f
goroutine 5465 [IO wait]:
internal/poll.runtime_pollWait(0x7fc06d5fe5e8, 0x72, 0xc000205528)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0003a4b98, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0003a4b98, 0xc00045e900, 0x401, 0x401)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0003a4b80, 0xc00045e900, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0003a4b80, 0xc00045e900, 0x401, 0x401, 0x1531332f04bc, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc0000982c8, 0xc00045e900, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc00030b9d0, 0xc00045e900, 0x401, 0x401, 0x401, 0x401
, 0xc000000000)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/utils.ReadCurrentData(0x7fc06d64e2b0, 0xc00030b9d0, 0xc00030b9d0, 0x7fc06d64
e2b0, 0xc00030b9d0, 0x0, 0x4)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/utils/read_current_data.go:13 +0x107
github.com/9seconds/mtg/wrappers.(*BlockCipher).Read(0xc00009cbc0, 0xc00024b340, 0x4, 0x4, 0x8a7d80,
0x1, 0xc00024b340)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/blockcipher.go:35 +0xf9
io.(*LimitedReader).Read(0xc00025f760, 0xc00024b340, 0x4, 0x4, 0x4, 0x4, 0x10)
/snap/go/2890/src/io/io.go:448 +0x63
io.copyBuffer(0x9f3be0, 0xc00025f720, 0x9f3ba0, 0xc00025f760, 0xc00024b340, 0x4, 0x4, 0x8f9980, 0x7f
c06d5fa601, 0xc00025f760)
/snap/go/2890/src/io/io.go:402 +0x125
io.Copy(0x9f3be0, 0xc00025f720, 0x9f3ba0, 0xc00025f760, 0x9176c0, 0x0, 0x7fc06d5fa678)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3be0, 0xc00025f720, 0x7fc06d5fa678, 0xc00009cbc0, 0x4, 0x4, 0x1, 0x0)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoFrame).Read(0xc0001c6340, 0x96a200, 0xb, 0xc000205c00, 0x6
, 0x6)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_frame.go:51 +0x192
github.com/9seconds/mtg/wrappers.(*MTProtoProxy).Read(0xc00013ed80, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_proxy.go:36 +0x1e6
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e3a0, 0xc00013ed80, 0x7fc0
6d64e3e0, 0xc000135ec0, 0xc00024b330, 0xc000310da6)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
github.com/9seconds/mtg/proxy.(*Proxy).accept(0xc00025e920, 0x9fcae0, 0xc00000e288)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:96 +0x9aa
created by github.com/9seconds/mtg/proxy.(*Proxy).Serve
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:39 +0x18e
goroutine 5453 [IO wait]:
internal/poll.runtime_pollWait(0x7fc06d5fee08, 0x72, 0xc0004c9528)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0000b8398, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0000b8398, 0xc00055cd00, 0x401, 0x401)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0000b8380, 0xc00055cd80, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0000b8380, 0xc00055cd80, 0x401, 0x401, 0x153112b55642, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc000098178, 0xc00055cd80, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc000513e30, 0xc00055cd80, 0x401, 0x401, 0x401, 0x401
, 0x400)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/utils.ReadCurrentData(0x7fc06d64e2b0, 0xc000513e30, 0xc000513e30, 0x7fc06d64
e2b0, 0xc000513e30, 0x203000, 0x4)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/utils/read_current_data.go:13 +0x107
github.com/9seconds/mtg/wrappers.(*BlockCipher).Read(0xc0002f0980, 0xc00045401c, 0x4, 0x4, 0x8a7d80,
0x1, 0xc00045401c)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/blockcipher.go:35 +0xf9
io.(*LimitedReader).Read(0xc0001c6160, 0xc00045401c, 0x4, 0x4, 0x4, 0x4, 0x10)
/snap/go/2890/src/io/io.go:448 +0x63
io.copyBuffer(0x9f3be0, 0xc0001c6140, 0x9f3ba0, 0xc0001c6160, 0xc00045401c, 0x4, 0x4, 0x8f9980, 0x7f
c06d5fa601, 0xc0001c6160)
/snap/go/2890/src/io/io.go:402 +0x125
io.Copy(0x9f3be0, 0xc0001c6140, 0x9f3ba0, 0xc0001c6160, 0x9176c0, 0xc0001c6100, 0x7fc06d5fa678)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3be0, 0xc0001c6140, 0x7fc06d5fa678, 0xc0002f0980, 0x4, 0xc000163980, 0x3, 0x6)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoFrame).Read(0xc00025f420, 0x96a200, 0xb, 0xc0004c9c00, 0x6
, 0x6)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_frame.go:51 +0x192
github.com/9seconds/mtg/wrappers.(*MTProtoProxy).Read(0xc00013e5a0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_proxy.go:36 +0x1e6
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e3a0, 0xc00013e5a0, 0x7fc0
6d64e3e0, 0xc00013e2a0, 0xc00028d140, 0xc000310d36)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
github.com/9seconds/mtg/proxy.(*Proxy).accept(0xc00025e920, 0x9fcae0, 0xc00000e028)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:96 +0x9aa
created by github.com/9seconds/mtg/proxy.(*Proxy).Serve
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:39 +0x18e
goroutine 3486 [IO wait]:
internal/poll.runtime_pollWait(0x7fc06d635a20, 0x72, 0xc000489528)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0003a4398, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0003a4398, 0xc000590400, 0x401, 0x401)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0003a4380, 0xc000590480, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0003a4380, 0xc000590480, 0x401, 0x401, 0x152f812aa913, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc000098028, 0xc000590480, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc0000b4000, 0xc000590480, 0x401, 0x401, 0x401, 0x401
, 0x400)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/utils.ReadCurrentData(0x7fc06d64e2b0, 0xc0000b4000, 0xc0000b4000, 0x7fc06d64
e2b0, 0xc0000b4000, 0x203000, 0x4)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/utils/read_current_data.go:13 +0x107
github.com/9seconds/mtg/wrappers.(*BlockCipher).Read(0xc00009c240, 0xc000228c1c, 0x4, 0x4, 0x8a7d80,
0x1, 0xc000228c1c)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/blockcipher.go:35 +0xf9
io.(*LimitedReader).Read(0xc000214ec0, 0xc000228c1c, 0x4, 0x4, 0x4, 0x4, 0x10)
/snap/go/2890/src/io/io.go:448 +0x63
io.copyBuffer(0x9f3be0, 0xc000214ea0, 0x9f3ba0, 0xc000214ec0, 0xc000228c1c, 0x4, 0x4, 0x8f9980, 0x7f
c06d5fa601, 0xc000214ec0)
/snap/go/2890/src/io/io.go:402 +0x125
io.Copy(0x9f3be0, 0xc000214ea0, 0x9f3ba0, 0xc000214ec0, 0x9176c0, 0xc000214e00, 0x7fc06d5fa678)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3be0, 0xc000214ea0, 0x7fc06d5fa678, 0xc00009c240, 0x4, 0xc000312480, 0x3, 0x6)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoFrame).Read(0xc000250200, 0x96a200, 0xb, 0xc000489c00, 0x6
, 0x6)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_frame.go:51 +0x192
github.com/9seconds/mtg/wrappers.(*MTProtoProxy).Read(0xc000134690, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_proxy.go:36 +0x1e6
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e3a0, 0xc000134690, 0x7fc0
6d64e3e0, 0xc000083f50, 0xc00028c230, 0xc000310666)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
github.com/9seconds/mtg/proxy.(*Proxy).accept(0xc00025e920, 0x9fcae0, 0xc00000e018)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:96 +0x9aa
created by github.com/9seconds/mtg/proxy.(*Proxy).Serve
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:39 +0x18e
goroutine 5476 [IO wait]:
internal/poll.runtime_pollWait(0x7fc06d5fe928, 0x72, 0xc0000e3988)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0003a4018, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0003a4018, 0xc0005b0200, 0x4, 0x280)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0003a4000, 0xc0005b0280, 0x4, 0x280, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0003a4000, 0xc0005b0280, 0x4, 0x280, 0x1530ecdedc3c, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc00000e020, 0xc0005b0280, 0x4, 0x280, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc0000b5340, 0xc0005b0280, 0x4, 0x280, 0xc0005b0280,
0x280, 0x280)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/wrappers.(*StreamCipher).Read(0xc00009c280, 0xc0005b0280, 0x4, 0x280, 0x280,
0x280, 0xc0005b0280)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/streamcipher.go:22 +0x56
io.(*LimitedReader).Read(0xc00027be40, 0xc0005b0280, 0x280, 0x280, 0x0, 0x203000, 0xc0000e3c68)
/snap/go/2890/src/io/io.go:448 +0x63
bytes.(*Buffer).ReadFrom(0xc000512f50, 0x9f3ba0, 0xc00027be40, 0x7fc06d64e158, 0xc000512f50, 0x1)
/snap/go/2890/src/bytes/buffer.go:206 +0xb4
io.copyBuffer(0x9f3760, 0xc000512f50, 0x9f3ba0, 0xc00027be40, 0x0, 0x0, 0x0, 0x8f9980, 0x7fc06d64e40
1, 0xc00027be40)
/snap/go/2890/src/io/io.go:388 +0x303
io.Copy(0x9f3760, 0xc000512f50, 0x9f3ba0, 0xc00027be40, 0x9068e0, 0x0, 0x7fc06d64e440)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3760, 0xc000512f50, 0x7fc06d64e440, 0xc00009c280, 0x4, 0x6, 0x0, 0x0)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediate).Read(0xc000134cf0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate.go:42 +0x222
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediateSecure).Read(0xc000134cf0, 0xc000558700, 0x1a4
, 0x700, 0x1a4, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate_secure.go:19
+0x31
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e340, 0xc000134cf0, 0x7fc0
6d64e380, 0xc00013e420, 0xc0002287f0, 0xc000310604)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:95 +0x8f6
goroutine 3493 [chan receive, 91 minutes]:
github.com/9seconds/mtg/proxy.(*Proxy).accept.func2(0x9fa0a0, 0xc00009c0c0, 0x7fc06d64e2f0, 0xc00013
4690, 0x7fc06d5fa5c8, 0xc000083f50)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:84 +0x4c
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:83 +0x74f
goroutine 5440 [IO wait]:
internal/poll.runtime_pollWait(0x7fc06d5fe6b8, 0x72, 0xc0004c5988)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0003a4218, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0003a4218, 0xc0005b0000, 0x4, 0x280)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0003a4200, 0xc0005b0000, 0x4, 0x280, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0003a4200, 0xc0005b0000, 0x4, 0x280, 0x1530ec2a178f, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc00000e028, 0xc0005b0000, 0x4, 0x280, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc000513dc0, 0xc0005b0000, 0x4, 0x280, 0xc0005b0000,
0x280, 0x280)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/wrappers.(*StreamCipher).Read(0xc00009c9c0, 0xc0005b0000, 0x4, 0x280, 0x280,
0x280, 0xc0005b0000)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/streamcipher.go:22 +0x56
io.(*LimitedReader).Read(0xc00027bde0, 0xc0005b0000, 0x280, 0x280, 0x0, 0x203000, 0xc0004c5c68)
/snap/go/2890/src/io/io.go:448 +0x63
bytes.(*Buffer).ReadFrom(0xc000512e00, 0x9f3ba0, 0xc00027bde0, 0x7fc06d64e158, 0xc000512e00, 0x1)
/snap/go/2890/src/bytes/buffer.go:206 +0xb4
io.copyBuffer(0x9f3760, 0xc000512e00, 0x9f3ba0, 0xc00027bde0, 0x0, 0x0, 0x0, 0x8f9980, 0x7fc06d64e40
1, 0xc00027bde0)
/snap/go/2890/src/io/io.go:388 +0x303
io.Copy(0x9f3760, 0xc000512e00, 0x9f3ba0, 0xc00027bde0, 0x9068e0, 0x0, 0x7fc06d64e440)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3760, 0xc000512e00, 0x7fc06d64e440, 0xc00009c9c0, 0x4, 0x6, 0x0, 0x0)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediate).Read(0xc00013e2a0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate.go:42 +0x222
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediateSecure).Read(0xc00013e2a0, 0xc000558000, 0xf8,
0x700, 0xf8, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate_secure.go:19
+0x31
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e340, 0xc00013e2a0, 0x7fc0
6d64e380, 0xc00013e5a0, 0xc00028d140, 0xc000310d34)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:95 +0x8f6
goroutine 5449 [IO wait, 1 minutes]:
internal/poll.runtime_pollWait(0x7fc06d655468, 0x72, 0xc000191528)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0003a4e98, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0003a4e98, 0xc0005bdb00, 0x401, 0x401)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0003a4e80, 0xc0005bdb00, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0003a4e80, 0xc0005bdb00, 0x401, 0x401, 0x1520dd8bbd1f, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc000098220, 0xc0005bdb00, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc000132f50, 0xc0005bdb00, 0x401, 0x401, 0x401, 0x401
, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/utils.ReadCurrentData(0x7fc06d64e2b0, 0xc000132f50, 0xc000132f50, 0x7fc06d64
e2b0, 0xc000132f50, 0x0, 0x4)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/utils/read_current_data.go:13 +0x107
github.com/9seconds/mtg/wrappers.(*BlockCipher).Read(0xc00009ca00, 0xc00024ad40, 0x4, 0x4, 0x8a7d80,
0x1, 0xc00024ad40)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/blockcipher.go:35 +0xf9
io.(*LimitedReader).Read(0xc000251040, 0xc00024ad40, 0x4, 0x4, 0x4, 0x4, 0x10)
/snap/go/2890/src/io/io.go:448 +0x63
io.copyBuffer(0x9f3be0, 0xc000251000, 0x9f3ba0, 0xc000251040, 0xc00024ad40, 0x4, 0x4, 0x8f9980, 0x7f
c06d5fa601, 0xc000251040)
/snap/go/2890/src/io/io.go:402 +0x125
io.Copy(0x9f3be0, 0xc000251000, 0x9f3ba0, 0xc000251040, 0x9176c0, 0x0, 0x7fc06d5fa678)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3be0, 0xc000251000, 0x7fc06d5fa678, 0xc00009ca00, 0x4, 0x4, 0x1, 0x0)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoFrame).Read(0xc00025fca0, 0x96a200, 0xb, 0xc000191c00, 0x6
, 0x6)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_frame.go:51 +0x192
github.com/9seconds/mtg/wrappers.(*MTProtoProxy).Read(0xc00013e450, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_proxy.go:36 +0x1e6
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e3a0, 0xc00013e450, 0x7fc0
6d64e3e0, 0xc00013e360, 0xc00024aa60, 0xc0000289f6)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
github.com/9seconds/mtg/proxy.(*Proxy).accept(0xc00025e920, 0x9fcae0, 0xc00000e240)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:96 +0x9aa
created by github.com/9seconds/mtg/proxy.(*Proxy).Serve
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:39 +0x18e
goroutine 5421 [IO wait, 1 minutes]:
internal/poll.runtime_pollWait(0x7fc06d5fed38, 0x72, 0xc0005ef988)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0000b8018, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0000b8018, 0xc0002a3400, 0x4, 0x280)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0000b8000, 0xc0002a3400, 0x4, 0x280, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0000b8000, 0xc0002a3400, 0x4, 0x280, 0x151a776a4e00, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc000098020, 0xc0002a3400, 0x4, 0x280, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc0000d6a80, 0xc0002a3400, 0x4, 0x280, 0xc0002a3400,
0x280, 0x280)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/wrappers.(*StreamCipher).Read(0xc00009c180, 0xc0002a3400, 0x4, 0x280, 0x280,
0x280, 0xc0002a3400)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/streamcipher.go:22 +0x56
io.(*LimitedReader).Read(0xc000215360, 0xc0002a3400, 0x280, 0x280, 0x0, 0x203000, 0xc0005efc68)
/snap/go/2890/src/io/io.go:448 +0x63
bytes.(*Buffer).ReadFrom(0xc0000d7110, 0x9f3ba0, 0xc000215360, 0x7fc06d64e158, 0xc0000d7110, 0x1)
/snap/go/2890/src/bytes/buffer.go:206 +0xb4
io.copyBuffer(0x9f3760, 0xc0000d7110, 0x9f3ba0, 0xc000215360, 0x0, 0x0, 0x0, 0x8f9980, 0x7fc06d64e40
1, 0xc000215360)
/snap/go/2890/src/io/io.go:388 +0x303
io.Copy(0x9f3760, 0xc0000d7110, 0x9f3ba0, 0xc000215360, 0x9068e0, 0x0, 0x7fc06d64e440)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3760, 0xc0000d7110, 0x7fc06d64e440, 0xc00009c180, 0x4, 0x6, 0x0, 0x0)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediate).Read(0xc000134b40, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate.go:42 +0x222
github.com/9seconds/mtg/wrappers.(*MTProtoIntermediateSecure).Read(0xc000134b40, 0xc000205c00, 0x94,
0x700, 0x94, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_intermediate_secure.go:19
+0x31
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e340, 0xc000134b40, 0x7fc0
6d64e380, 0xc000134f90, 0xc00028ce10, 0xc000310784)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:95 +0x8f6
goroutine 5418 [IO wait, 1 minutes]:
internal/poll.runtime_pollWait(0x7fc06d6353a0, 0x72, 0xc0005f3528)
/snap/go/2890/src/runtime/netpoll.go:173 +0x66
internal/poll.(*pollDesc).wait(0xc0000b8298, 0x72, 0xffffffffffffff00, 0x9f50e0, 0xd4c6a0)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:85 +0x9a
internal/poll.(*pollDesc).waitRead(0xc0000b8298, 0xc00012e400, 0x401, 0x401)
/snap/go/2890/src/internal/poll/fd_poll_runtime.go:90 +0x3d
internal/poll.(*FD).Read(0xc0000b8280, 0xc00012e480, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/internal/poll/fd_unix.go:169 +0x179
net.(*netFD).Read(0xc0000b8280, 0xc00012e480, 0x401, 0x401, 0x151a81f5bcb6, 0xd88520, 0x0)
/snap/go/2890/src/net/fd_unix.go:202 +0x4f
net.(*conn).Read(0xc00000e008, 0xc00012e480, 0x401, 0x401, 0x0, 0x0, 0x0)
/snap/go/2890/src/net/net.go:177 +0x68
github.com/9seconds/mtg/wrappers.(*Conn).Read(0xc000128770, 0xc00012e480, 0x401, 0x401, 0x401, 0x401
, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/conn.go:87 +0x107
github.com/9seconds/mtg/utils.ReadCurrentData(0x7fc06d64e2b0, 0xc000128770, 0xc000128770, 0x7fc06d64
e2b0, 0xc000128770, 0x0, 0x4)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/utils/read_current_data.go:13 +0x107
github.com/9seconds/mtg/wrappers.(*BlockCipher).Read(0xc0002f0900, 0xc000229330, 0x4, 0x4, 0x8a7d80,
0x1, 0xc000229330)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/blockcipher.go:35 +0xf9
io.(*LimitedReader).Read(0xc0002513c0, 0xc000229330, 0x4, 0x4, 0x4, 0x4, 0x10)
/snap/go/2890/src/io/io.go:448 +0x63
io.copyBuffer(0x9f3be0, 0xc000251340, 0x9f3ba0, 0xc0002513c0, 0xc000229330, 0x4, 0x4, 0x8f9980, 0x7f
c06d5fa601, 0xc0002513c0)
/snap/go/2890/src/io/io.go:402 +0x125
io.Copy(0x9f3be0, 0xc000251340, 0x9f3ba0, 0xc0002513c0, 0x9176c0, 0x0, 0x7fc06d5fa678)
/snap/go/2890/src/io/io.go:364 +0x5a
io.CopyN(0x9f3be0, 0xc000251340, 0x7fc06d5fa678, 0xc0002f0900, 0x4, 0x4, 0x1, 0x0)
/snap/go/2890/src/io/io.go:340 +0x86
github.com/9seconds/mtg/wrappers.(*MTProtoFrame).Read(0xc000251180, 0x96a200, 0xb, 0xc0005f3c00, 0x6
, 0x6)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_frame.go:51 +0x192
github.com/9seconds/mtg/wrappers.(*MTProtoProxy).Read(0xc000134f90, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/wrappers/mtproto_proxy.go:36 +0x1e6
github.com/9seconds/mtg/proxy.(*Proxy).middlePipe(0xc00025e920, 0x7fc06d64e3a0, 0xc000134f90, 0x7fc0
6d64e3e0, 0xc000134b40, 0xc00028ce10, 0xc000310786)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:131 +0x83
github.com/9seconds/mtg/proxy.(*Proxy).accept(0xc00025e920, 0x9fcae0, 0xc000098020)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:96 +0x9aa
created by github.com/9seconds/mtg/proxy.(*Proxy).Serve
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:39 +0x18e
goroutine 5475 [chan receive]:
github.com/9seconds/mtg/proxy.(*Proxy).accept.func2(0x9fa0a0, 0xc00009c040, 0x7fc06d64e2f0, 0xc00013
e420, 0x7fc06d5fa5c8, 0xc000134cf0)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:84 +0x4c
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:83 +0x74f
goroutine 5420 [chan receive, 1 minutes]:
github.com/9seconds/mtg/proxy.(*Proxy).accept.func2(0x9fa0a0, 0xc00009c080, 0x7fc06d64e2f0, 0xc00013
4f90, 0x7fc06d5fa5c8, 0xc000134b40)
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:84 +0x4c
created by github.com/9seconds/mtg/proxy.(*Proxy).accept
/home/vagrant/safe/go/src/github.com/9seconds/mtg/proxy/proxy.go:83 +0x74f
Please give me further instruction to track this down.