add `ssl-port?' and add missing docs for two other procs

This commit is contained in:
Matthew Flatt 2010-08-19 16:14:07 -06:00
parent eb584b4ecd
commit 16f1dffe4c
2 changed files with 28 additions and 5 deletions

View File

@ -45,7 +45,9 @@
ssl-listener?
ssl-addresses
ssl-abandon-port)
ssl-abandon-port
ssl-port?)
(unsafe!)
@ -938,11 +940,10 @@
(let ([p (ephemeron-value v)])
(values (car p) (cdr p)))))
(define (ssl-addresses p . more)
(define (ssl-addresses p [port-numbers? #f])
(let-values ([(mzssl input?) (lookup 'ssl-addresses "SSL port" p)])
(apply tcp-addresses
(if input? (mzssl-i mzssl) (mzssl-o mzssl))
more)))
(tcp-addresses (if input? (mzssl-i mzssl) (mzssl-o mzssl))
port-numbers?)))
(define (ssl-abandon-port p)
(let-values ([(mzssl input?) (lookup 'ssl-abandon-port "SSL output port" p)])
@ -950,6 +951,9 @@
(raise-type-error 'ssl-abandon-port "SSL output port" p))
(set-mzssl-shutdown-on-close?! mzssl #f)))
(define (ssl-port? v)
(and (hash-ref ssl-ports v #f) #t))
;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; SSL listen

View File

@ -175,6 +175,24 @@ The @scheme[ssl-accept/enable-break] procedure is analogous to
@scheme[tcp-accept/enable-break].}
@defproc[(ssl-abandon-port [in (and/c ssl-port? output-port?)]) void?]{
Analogous to @racket[tcp-abandon-port].}
@defproc[(ssl-addresses [p ssl-port?][port-numbers? any/c #f]) void?]{
Analogous to @racket[tcp-addresses].}
@defproc[(ssl-port? [v any/c]) boolean?]{
Returns @racket[#t] of @racket[v] is an SSL port produced by
@racket[ssl-connect], @racket[ssl-connect/enable-break],
@racket[ssl-accept], @racket[ssl-accept/enable-break], or
@racket[ports->ssl-ports].}
@defproc[(ssl-make-server-context (protocol symbol?))
ssl-server-context?]{
@ -185,6 +203,7 @@ Like @scheme[ssl-make-client-context], but creates a server context.}
Returns @scheme[#t] if @scheme[v] is a value produced by
@scheme[ssl-make-server-context], @scheme[#f] otherwise.}
@; ----------------------------------------------------------------------
@section{SSL-wrapper Interface}