rcode.go 772 B

123456789101112131415161718192021222324252627282930313233
  1. package dns
  2. import F "github.com/sagernet/sing/common/format"
  3. const (
  4. RCodeSuccess RCodeError = 0 // NoError
  5. RCodeFormatError RCodeError = 1 // FormErr
  6. RCodeServerFailure RCodeError = 2 // ServFail
  7. RCodeNameError RCodeError = 3 // NXDomain
  8. RCodeNotImplemented RCodeError = 4 // NotImp
  9. RCodeRefused RCodeError = 5 // Refused
  10. )
  11. type RCodeError uint16
  12. func (e RCodeError) Error() string {
  13. switch e {
  14. case RCodeSuccess:
  15. return "success"
  16. case RCodeFormatError:
  17. return "format error"
  18. case RCodeServerFailure:
  19. return "server failure"
  20. case RCodeNameError:
  21. return "name error"
  22. case RCodeNotImplemented:
  23. return "not implemented"
  24. case RCodeRefused:
  25. return "refused"
  26. default:
  27. return F.ToString("unknown error: ", uint16(e))
  28. }
  29. }