finished replacing old ssl implementation with new one

svn: r2774
This commit is contained in:
Matthew Flatt 2006-04-25 15:09:12 +00:00
parent dd2944e917
commit 880071a24d
4 changed files with 1 additions and 1913 deletions

View File

@ -1,6 +1,5 @@
(module info (lib "infotab.ss" "setup")
(define name "SSL Driver")
(define doc.txt "doc.txt")
(define pre-install-collection "pre-installer.ss")
(define blurb '("The SSL collection provides a driver for using the OpenSSL "
"secure connection library.")))

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,4 @@
;; This is a re-implementation of "mzssl.c" using `(lib "foreign.ss")'.
;; It will soon replace "mzssl.c".
;; Warn clients: when a (non-blocking) write fails to write all the
;; data, the stream is actually committed to writing the given data
;; in the future. (This requirement comes from the SSL library.)
@ -16,7 +13,7 @@
;; read/write (the opposite direction) didn't finish, and so that
;; opposite must be completed, first.
(module mzssl2 mzscheme
(module mzssl mzscheme
(require (lib "foreign.ss")
(lib "port.ss")
(lib "etc.ss")

View File

@ -1,71 +0,0 @@
(module pre-installer mzscheme
(require (lib "setup-extension.ss" "make")
(lib "compile.ss" "dynext")
(lib "link.ss" "dynext")
(lib "file.ss"))
(define (pre-installer plthome openssl-dir)
(pre-install plthome
openssl-dir
"mzssl.c"
(build-path openssl-dir
"openssl")
;; header subdirs
(list "openssl")
;; unix libs
(list "ssl" "crypto")
;; windows libs
(let* ([default-paths
(list (build-path openssl-dir "openssl"))]
[paths
(let ([v (getenv "PLT_EXTENSION_LIB_PATHS")])
(if v
(path-list-string->path-list v default-paths)
default-paths))])
(if (ormap (lambda (path)
(and (file-exists? (build-path path "lib" "libeay32xxxxxxx.lib"))
(file-exists? (build-path path "lib" "ssleay32xxxxxxx.lib"))))
paths)
;; Use mangleable names:
(list "libeay32xxxxxxx" "ssleay32xxxxxxx")
;; Use simple names:
(list "libeay32" "ssleay32")))
;; unix extra libs (assume always there)
null
;; Windows extra libs (assume always there)
(list "wsock32.lib")
;; Extra depends:
(list "mzssl.ss")
;; Last-chance k:
(lambda (k) (k))
;; 3m, too:
#t)
;; Under windows, put "{lib,sll}eay32" into the system folder when
;; they're in a "precompiled" dir.
(when (eq? 'windows (system-type))
(let ([dir (build-path openssl-dir
"precompiled"
"native"
(system-library-subpath #f))])
(when (directory-exists? dir)
(let ([l (directory-list dir)])
(let ([libeay (ormap (lambda (f)
(regexp-match #rx"^libeay32.*[.]dll$" f))
l)]
[ssleay (ormap (lambda (f)
(regexp-match #rx"^ssleay32.*[.]dll$" f))
l)])
(when (and libeay ssleay)
(let ([sys-dir (find-system-path 'sys-dir)])
(let ([move-over
(lambda (f)
(unless (file-exists? (build-path sys-dir f))
(printf " Installing ~a into system directory~n" f)
(copy-file (build-path dir f)
(build-path sys-dir f))))])
(move-over (car libeay))
(move-over (car ssleay)))))))))))
(provide pre-installer))