Branch: Tag:

2014-04-12

2014-04-12 09:18:46 by Henrik Grubbström (Grubba) <grubba@grubba.org>

SSL.sslport: Changed API.

To allow SSL configuration via overloading of symbols in SSL.context,
SSL.sslport and SSL.https no longer inherit SSL.context. Instead
they now have an explicit SSL.context object that is passed along
to SSL.sslfile.

Also adds corresponding compat classes.

14:    ".Certificate.Attributes": "predef::Standards.PKCS.CSR.CRIAttributes":1,    ".Helper": "predef::Protocols.LysKOM.ProtocolTypes":1, "predef::Protocols.LysKOM.Request":1,    "7.9::": "7.8::":1, "7.8::GTK":1, "7.8::Protocols.DNS":1, "7.8::SSL.Cipher":1, "7.8::SSL.https":1, "7.8::Stdio":1, "7.8::files":1, +  "8.0::": "7.8::SSL.sslport":1,    "ADT.CritBit.FloatTree.Iterator": "predef::ADT.CritBit.FloatTree":1,    "ADT.CritBit.IPv4Tree.Iterator": "predef::ADT.CritBit.IPv4Tree":1,    "ADT.CritBit.IntTree.Iterator": "predef::ADT.CritBit.IntTree":1,
232:    "Stdio.File()->write()": "7.8::Stdio.FILE.write":1,    "Stdio.FileLockKey": "predef::Stdio.File.lock":2, "predef::Stdio.File.trylock":2,    "Stdio.LineIterator": "predef::Bz2.File.line_iterator":1, +  "Stdio.Port()->bind()": "7.8::SSL.sslport.bind":1, +  "Stdio.Port()->listen_fd()": "7.8::SSL.sslport.listen_fd":1,    "Stdio.module": "7.6::Stdio":1,    "Stdio.stdout.write()": "7.8::Stdio":1, "predef::Stdio":1,    "System.EPIPE": "7.8::Stdio.File.set_read_callback":1, "predef::SSL.sslfile":1, "predef::SSL.sslfile.shutdown":1, "predef::Stdio.File.set_read_callback":1,
278:    "`certificates": "predef::SSL.context":4,    "`rsa": "predef::SSL.context":4,    "accept()": "predef::Stdio.File.set_buffer":1, "predef::Stdio.UDP.set_buffer":1, -  "accept_queue": "predef::SSL.sslport.accept":1, "predef::SSL.sslport.finished_callback":2, +  "accept_queue": "7.8::SSL.sslport.accept":1, "7.8::SSL.sslport.finished_callback":2, "predef::SSL.sslport.accept":1, "predef::SSL.sslport.finished_callback":2, +  "add_cert": "predef::Protocols.HTTP.Server.SSLPort.MySSLPort.set_certificate":1, "predef::Protocols.HTTP.Server.SSLPort.MySSLPort.set_key":1,    "an": "predef::Protocols.DNS.server_base.reply_query":3,    "args": "predef::Stdio.sendfile":1,    "array ": "predef::Image.GIF.__decode":1, "predef::Image.GIF._decode":2, "predef::Image.ILBM.__decode":1, "predef::Image.ILBM._decode":1,
403:    "grantpt()": "7.8::Stdio.File.openpt":1,    "greyint": "predef::Image.Image.random":1,    "headers": "predef::Stdio.sendfile":2, -  "https::conn": "7.8::SSL.https.conn":1, -  "https::no_random": "7.8::SSL.https.no_random":1, +     "id": "predef::Mysql.SqlTable.get_multi":1,    "idenfier": "predef::Program.defined":1,    "idenfifier": "predef::Program.defined":1,
436:    "openat()": "predef::Stdio.Fd.fd_factory":2,    "pathname": "predef::System.resolvepath":1,    "pipe()": "predef::Stdio.Fd.fd_factory":2, -  "predef::SSL.https.conn": "7.8::SSL.https.conn":1, -  "predef::SSL.https.no_random": "7.8::SSL.https.no_random":1, +     "predef::__pragma_save_parent__": "cpp::":1,    "predef::foreach()": "lfun::_get_iterator":1,    "prev": "predef::Parser.RCS.Revision":2,
516:   "7.8::Protocols.DNS": "7.9::"   "7.8::SSL.Cipher": "7.9::"   "7.8::SSL.https": "7.9::" - "7.8::SSL.https.conn": "https::conn" "predef::SSL.https.conn" - "7.8::SSL.https.no_random": "https::no_random" "predef::SSL.https.no_random" + "7.8::SSL.sslport": "8.0::" + "7.8::SSL.sslport.accept": "accept_queue" + "7.8::SSL.sslport.bind": "Stdio.Port()->bind()" + "7.8::SSL.sslport.finished_callback": "accept_queue" + "7.8::SSL.sslport.listen_fd": "Stdio.Port()->listen_fd()"   "7.8::Stdio": "7.9::" "Stdio.stdout.write()" "_Stdio.Fd_ref"   "7.8::Stdio.FILE.line_iterator": "seek"   "7.8::Stdio.FILE.read": "Stdio.File()->read()"
1143:   "predef::Protocols.DNS.server_base.handle_query": "send_reply()"   "predef::Protocols.DNS.server_base.reply_query": "an"   "predef::Protocols.DNS_SD.Service": "_Protocols_DNS_SD.Service" + "predef::Protocols.HTTP.Server.SSLPort.MySSLPort.set_certificate": "add_cert" + "predef::Protocols.HTTP.Server.SSLPort.MySSLPort.set_key": "add_cert"   "predef::Protocols.HTTP.Session.Request.prepare_method": "URL"   "predef::Protocols.HTTP.Session.SessionURL": "URL"   "predef::Protocols.HTTP.Session.SessionURL.create": "URL"