tls.go 1.8 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package option
  2. type InboundTLSOptions struct {
  3. Enabled bool `json:"enabled,omitempty"`
  4. ServerName string `json:"server_name,omitempty"`
  5. ALPN Listable[string] `json:"alpn,omitempty"`
  6. MinVersion string `json:"min_version,omitempty"`
  7. MaxVersion string `json:"max_version,omitempty"`
  8. CipherSuites Listable[string] `json:"cipher_suites,omitempty"`
  9. Certificate string `json:"certificate,omitempty"`
  10. CertificatePath string `json:"certificate_path,omitempty"`
  11. Key string `json:"key,omitempty"`
  12. KeyPath string `json:"key_path,omitempty"`
  13. ACME *InboundACMEOptions `json:"acme,omitempty"`
  14. }
  15. type OutboundTLSOptions struct {
  16. Enabled bool `json:"enabled,omitempty"`
  17. DisableSNI bool `json:"disable_sni,omitempty"`
  18. ServerName string `json:"server_name,omitempty"`
  19. Insecure bool `json:"insecure,omitempty"`
  20. ALPN Listable[string] `json:"alpn,omitempty"`
  21. MinVersion string `json:"min_version,omitempty"`
  22. MaxVersion string `json:"max_version,omitempty"`
  23. CipherSuites Listable[string] `json:"cipher_suites,omitempty"`
  24. Certificate string `json:"certificate,omitempty"`
  25. CertificatePath string `json:"certificate_path,omitempty"`
  26. ECH *OutboundECHOptions `json:"ech,omitempty"`
  27. }
  28. type OutboundECHOptions struct {
  29. Enabled bool `json:"enabled,omitempty"`
  30. PQSignatureSchemesEnabled bool `json:"pq_signature_schemes_enabled,omitempty"`
  31. DynamicRecordSizingDisabled bool `json:"dynamic_record_sizing_disabled,omitempty"`
  32. Config string `json:"config,omitempty"`
  33. }