Highly-opinionated (ex-bullshit-free) MTPROTO proxy for Telegram. If you use v1.0 or upgrade broke you proxy, please read the chapter Version 2
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

read_current_data.go 480B

123456789101112131415161718192021
  1. package utils
  2. import "io"
  3. const readCurrentDataBufferSize = 1024 + 1 // + 1 because telegram operates with blocks mod 4
  4. // ReadCurrentData reads all data from io.Reader which is ready to be read.
  5. func ReadCurrentData(src io.Reader) (rv []byte, err error) {
  6. buf := make([]byte, readCurrentDataBufferSize)
  7. n := readCurrentDataBufferSize
  8. for n == len(buf) {
  9. n, err = src.Read(buf)
  10. if err != nil {
  11. return nil, err
  12. }
  13. rv = append(rv, buf[:n]...)
  14. }
  15. return rv, nil
  16. }