Hi Tom, thanks for the explanation. After adding some brackets, your example code works like a charm. > > [1]: > https://twistedmatrix.com/documents/current/api/twisted.application.service.MultiService.html > > <https://twistedmatrix.com/documents/current/api/twisted.application.service.MultiService.html> > [2]: > https://twistedmatrix.com/documents/current/api/twisted.application.internet.StreamServerEndpointService.html > > <https://twistedmatrix.com/documents/current/api/twisted.application.internet.StreamServerEndpointService.html> > [3]: > https://twistedmatrix.com/documents/current/api/twisted.internet.endpoints.html#serverFromString > > <https://twistedmatrix.com/documents/current/api/twisted.internet.endpoints.html#serverFromString>
Using your pointers, I tried the next step: TLS. This variant of the makeService method: ipv4_endpoint = endpoints.serverFromString( reactor, 'ssl:{}:privateKey={}:certKey={}:interface={}'.format( options['port'], endpoints.quoteStringArgument(options['cert_path']), endpoints.quoteStringArgument(options['key_path']), options['ipv4_address'])) ipv6_endpoint = endpoints.serverFromString( reactor, 'ssl:{}:privateKey={}:certKey={}:interface={}'.format( options['port'], endpoints.quoteStringArgument(options['cert_path']), endpoints.quoteStringArgument(options['key_path']), options['ipv6_address'])) ipv4 = internet.StreamServerEndpointService(ipv4_endpoint, meteo_factory) ipv6 = internet.StreamServerEndpointService(ipv6_endpoint, meteo_factory) root = MultiService() ipv4.setServiceParent(root) ipv6.setServiceParent(root) does not work. It fails with: _parseSSL() got multiple values for argument ‚interface' same with private privateKey and certKey. What did I wrong this time? Thanks, Axel --- PGP-Key:29E99DD6 ☀ computing @ chaos claudius
_______________________________________________ Twisted-web mailing list Twisted-web@twistedmatrix.com https://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web