libp2p/autotls/service

    Dark Mode
Search:
Group by:
  Source   Edit

Types

AutotlsCert = ref object
  cert*: TLSCertificate
  expiry*: Moment
  Source   Edit
AutotlsConfig = ref object
  acmeServerURL*: Uri
  dnsResolver*: DnsResolver
  ipAddress: Opt[IpAddress]
  renewCheckTime*: Duration
  renewBufferTime*: Duration
  Source   Edit
AutotlsService = ref object of Service
  acmeClient: ACMEClient
  bearer*: Opt[BearerToken]
  brokerClient: PeerIDAuthClient
  cert*: Opt[AutotlsCert]
  certReady*: AsyncEvent
  config: AutotlsConfig
  managerFut: Future[void]
  peerInfo: PeerInfo
  rng: ref HmacDrbgContext
  Source   Edit

Consts

AutoTLSBroker = "registration.libp2p.direct"
  Source   Edit
AutoTLSDNSServer = "libp2p.direct"
  Source   Edit
DefaultDnsServers = [(family: AddressFamily.IPv4,
                      address_v4: [1'u, 1'u, 1'u, 1'u], address_v6: [0'u, 0'u,
    0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u], address_un: [
    0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
    0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
    0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
    0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
    0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
    0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
    0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
    0'u, 0'u, 0'u], port: 53'u), (family: AddressFamily.IPv4,
                                  address_v4: [1'u, 0'u, 0'u, 1'u], address_v6: [
    0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
    0'u], address_un: [0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                       0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                       0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                       0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                       0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                       0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                       0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                       0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                       0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                       0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u], port: 53'u), (
    family: AddressFamily.IPv6, address_v4: [0'u, 0'u, 0'u, 0'u], address_v6: [
    38'u, 6'u, 71'u, 0'u, 71'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
    17'u, 17'u], address_un: [0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                              0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                              0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                              0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                              0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                              0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                              0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                              0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                              0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                              0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u,
                              0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u, 0'u],
    port: 53'u)]
  Source   Edit
DefaultRenewCheckTime = (value: 3600000000000)
  Source   Edit
HttpCreated = 201
  Source   Edit
HttpOk = 200
  Source   Edit

Procs

proc getCertWhenReady(self: AutotlsService): InternalRaisesFuture[
    TLSCertificate, (AutoTLSError, CancelledError)] {.stackTrace: false,
    ...raises: [], gcsafe, raises: [], public, ...raises: [], public,
    ...tags: [RootEffect].}
  Source   Edit
proc new(T: typedesc[AutotlsCert]; cert: TLSCertificate; expiry: Moment): T:type {.
    ...raises: [], public.}
  Source   Edit
proc new(T: typedesc[AutotlsConfig]; ipAddress: Opt[IpAddress] = NoneIp;
         nameServers: seq[TransportAddress] = DefaultDnsServers;
         acmeServerURL: Uri = parseUri(LetsEncryptURL);
         renewCheckTime: Duration = DefaultRenewCheckTime;
         renewBufferTime: Duration = DefaultRenewBufferTime): T:type {.
    ...raises: [], public.}
  Source   Edit
proc new(T: typedesc[AutotlsService]; rng: ref HmacDrbgContext = newRng();
         config: AutotlsConfig = AutotlsConfig.new()): T:type {....raises: [],
    public.}
  Source   Edit

Methods

method run(self: AutotlsService; switch: Switch): InternalRaisesFuture[void,
    (CancelledError,)] {.stackTrace: false, ...raises: [], gcsafe, raises: [],
                         public, ...raises: [], public, ...tags: [RootEffect].}
  Source   Edit
method setup(self: AutotlsService; switch: Switch): InternalRaisesFuture[bool,
    (CancelledError,)] {.stackTrace: false, ...raises: [], gcsafe, raises: [],
                         public, ...raises: [], public, ...tags: [RootEffect].}
  Source   Edit
method stop(self: AutotlsService; switch: Switch): InternalRaisesFuture[bool,
    (CancelledError,)] {.stackTrace: false, ...raises: [], gcsafe, raises: [],
                         public, ...raises: [], public, ...tags: [RootEffect].}
  Source   Edit