deprecated.go 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. // Copyright (C) 2018 The Syncthing Authors.
  2. //
  3. // This Source Code Form is subject to the terms of the Mozilla Public
  4. // License, v. 2.0. If a copy of the MPL was not distributed with this file,
  5. // You can obtain one at https://mozilla.org/MPL/2.0/.
  6. package connections
  7. import "github.com/syncthing/syncthing/lib/config"
  8. // invalidListener is never valid
  9. type invalidListener struct {
  10. listenerFactory
  11. err error
  12. }
  13. func (i invalidListener) Valid(_ config.Configuration) error {
  14. if i.err == nil {
  15. // fallback so we don't accidentally return nil
  16. return errUnsupported
  17. }
  18. return i.err
  19. }
  20. // invalidDialer is never valid
  21. type invalidDialer struct {
  22. dialerFactory
  23. err error
  24. }
  25. func (i invalidDialer) Valid(_ config.Configuration) error {
  26. if i.err == nil {
  27. // fallback so we don't accidentally return nil
  28. return errUnsupported
  29. }
  30. return i.err
  31. }
  32. func init() {
  33. listeners["kcp"] = invalidListener{err: errDeprecated}
  34. listeners["kcp4"] = invalidListener{err: errDeprecated}
  35. listeners["kcp6"] = invalidListener{err: errDeprecated}
  36. dialers["kcp"] = invalidDialer{err: errDeprecated}
  37. dialers["kcp4"] = invalidDialer{err: errDeprecated}
  38. dialers["kcp6"] = invalidDialer{err: errDeprecated}
  39. }