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文字以内のものにしてください。

cache.go 679B

123456789101112131415161718192021222324252627282930313233343536
  1. package antireplay
  2. import "github.com/VictoriaMetrics/fastcache"
  3. var (
  4. prefixObfuscated2 = []byte{0x00}
  5. prefixTLS = []byte{0x01}
  6. )
  7. type cache struct {
  8. data *fastcache.Cache
  9. }
  10. func (c cache) AddObfuscated2(data []byte) {
  11. c.data.Set(keyObfuscated2(data), nil)
  12. }
  13. func (c cache) AddTLS(data []byte) {
  14. c.data.Set(keyTLS(data), nil)
  15. }
  16. func (c cache) HasObfuscated2(data []byte) bool {
  17. return c.data.Has(keyObfuscated2(data))
  18. }
  19. func (c cache) HasTLS(data []byte) bool {
  20. return c.data.Has(keyTLS(data))
  21. }
  22. func keyObfuscated2(data []byte) []byte {
  23. return append(prefixObfuscated2, data...)
  24. }
  25. func keyTLS(data []byte) []byte {
  26. return append(prefixTLS, data...)
  27. }