time_wrapper.go 389 B

12345678910111213141516171819202122232425
  1. package tls
  2. import (
  3. "time"
  4. "github.com/sagernet/sing/common/ntp"
  5. )
  6. type TimeServiceWrapper struct {
  7. ntp.TimeService
  8. }
  9. func (w *TimeServiceWrapper) TimeFunc() func() time.Time {
  10. return func() time.Time {
  11. if w.TimeService != nil {
  12. return w.TimeService.TimeFunc()()
  13. } else {
  14. return time.Now()
  15. }
  16. }
  17. }
  18. func (w *TimeServiceWrapper) Upstream() any {
  19. return w.TimeService
  20. }