summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Grozin <grozin@gentoo.org>2023-07-23 16:03:07 +0700
committerAndrey Grozin <grozin@gentoo.org>2023-07-23 16:03:07 +0700
commitfcde54d2ebc8fda4ee585f1ad9255b31ada33427 (patch)
treea8d9337fe5bfcd7de600b26c2c6009e86ac21e9a /dev-lisp/sbcl
parentdev-python/selenium: Enable py3.12 (diff)
downloadgentoo-fcde54d2ebc8fda4ee585f1ad9255b31ada33427.tar.gz
gentoo-fcde54d2ebc8fda4ee585f1ad9255b31ada33427.tar.bz2
gentoo-fcde54d2ebc8fda4ee585f1ad9255b31ada33427.zip
dev-lisp/sbcl: move long patches to dev.gentoo.org
Signed-off-by: Andrey Grozin <grozin@gentoo.org>
Diffstat (limited to 'dev-lisp/sbcl')
-rw-r--r--dev-lisp/sbcl/Manifest3
-rw-r--r--dev-lisp/sbcl/files/bsd-sockets-test-2.0.5.patch385
-rw-r--r--dev-lisp/sbcl/files/bsd-sockets-test-2.3.1.patch410
-rw-r--r--dev-lisp/sbcl/files/bsd-sockets-test-2.3.6.patch410
-rw-r--r--dev-lisp/sbcl/sbcl-2.2.9.ebuild4
-rw-r--r--dev-lisp/sbcl/sbcl-2.3.5.ebuild4
-rw-r--r--dev-lisp/sbcl/sbcl-2.3.6.ebuild4
7 files changed, 12 insertions, 1208 deletions
diff --git a/dev-lisp/sbcl/Manifest b/dev-lisp/sbcl/Manifest
index 55939559545a..ab3b17570bd7 100644
--- a/dev-lisp/sbcl/Manifest
+++ b/dev-lisp/sbcl/Manifest
@@ -1,3 +1,6 @@
+DIST bsd-sockets-test-2.0.5.patch.gz 3189 BLAKE2B ba4d8af4ae5f3f7e4008632c6603fb74e2419da5f9cf0ccf24c9f2440896fb466332dfa55652f6848f25e0eea76cd696556df0e6d88d0bcb73fcbc8db102ef90 SHA512 2e60db09f435f0f5630aa56a0af208a5b24a27b7c072c17e6a49525ed99d5ed7cdbd78e11511d1dc9b23e14ddca9f9592f625ec33cf98f066151de02565b86ae
+DIST bsd-sockets-test-2.3.1.patch.gz 3451 BLAKE2B 3f1499df0346852d3337d741e4f2e99dddc178f8f31d79911ba3206a83f0d56ad86967ed4deccc7c28a3e24e302814db63a1fafe3b88991cfba7a1c40c8b3851 SHA512 bccf0d4a46b6fcfea40a287863e72267717fa6860d8dc3e3e0bd4f616d9b825eec1195f4e88b0650c12c76360e2fc3c7e32930c0319ecae0ab66834be22fca83
+DIST bsd-sockets-test-2.3.6.patch.gz 3459 BLAKE2B f8ee83904a21944f15890c781aa46f66e0e5c5f59b5c03ba78b54fc8c1d4b1d88cae71bbb6f3f88451435eb7a3ab39a7168df047d9684391b46afc644dc9e96c SHA512 baaf803210c00074042d04e12e47919e8e187c8ae3374651a4205aded9d10bec078e5e17e04fcdcb666ab3f4bb1d7195c453b0f1d8b1fc5038e1ac22bf99ca35
DIST sbcl-1.0.28-alpha-linux-binary.tar.bz2 7573824 BLAKE2B ab8e139adb4fbc0ac7b34457c3361b044d04d8d9dedba2008cb19220915900e2d1bf540b617c738145923d74fa28ab7d979fd0d1bf4b9d17c445dfb080731263 SHA512 85ceb4d3bf971777f5444a63cbabd88ccfaf16ed3b3c86cc5ea6cb3fd3189c4cd5a5ebbf785c97366afb7026604ffc34a1129936291deede5993056e158125ab
DIST sbcl-1.0.28-sparc-linux-binary.tar.bz2 8032042 BLAKE2B ca4213ef00447d66406d1c752a1653fd628deba0e112f55a5625dad61da30c0be7c60fe4e84e8dcc9d9946db553ad544dc39b28d62124d8e3d6197943efc944a SHA512 cea1ba06f85169fca9fe3026813c6e7e8e8209b874e048b7bd63cb3a1c5bd7c829e8dbb2c486977e190a0390d28e4845938a9e84378f4f2f16f72bf0b6f45c80
DIST sbcl-1.0.47-powerpc-darwin-binary.tar.bz2 8217590 BLAKE2B 68da614df7d27ecf08a21603d4f172344c86e650176d238fe73d7756a626b694e2165b9157e53732730861d085902e5cc893b967073168fe3845cd2621668b87 SHA512 8118de56e448bce7a72b832e661eb4e2687eed675f88f766f7043c843a432e35121d9e6f9da8d22ac690c54bda0d55ecb07728748ce2cdd57320f49b4b812b86
diff --git a/dev-lisp/sbcl/files/bsd-sockets-test-2.0.5.patch b/dev-lisp/sbcl/files/bsd-sockets-test-2.0.5.patch
deleted file mode 100644
index 3226e7539dc4..000000000000
--- a/dev-lisp/sbcl/files/bsd-sockets-test-2.0.5.patch
+++ /dev/null
@@ -1,385 +0,0 @@
-diff -U3 -r sbcl-2.0.5.orig/contrib/sb-bsd-sockets/tests.lisp sbcl-2.0.5/contrib/sb-bsd-sockets/tests.lisp
---- sbcl-2.0.5.orig/contrib/sb-bsd-sockets/tests.lisp 2020-05-31 20:16:48.000000000 +0700
-+++ sbcl-2.0.5/contrib/sb-bsd-sockets/tests.lisp 2020-06-08 18:15:59.750860802 +0700
-@@ -18,16 +18,16 @@
- (equalp (make-inet-address "242.1.211.3") #(242 1 211 3))
- t)
-
--(deftest make-inet6-address.1
-- (equalp (make-inet6-address "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff")
-- #(255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
-- t)
--
--(deftest unparse-inet6-address
-- (string= (sb-bsd-sockets::unparse-inet6-address
-- (make-inet6-address "fe80::abcd:1234"))
-- "fe80::abcd:1234")
-- t)
-+;(deftest make-inet6-address.1
-+; (equalp (make-inet6-address "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff")
-+; #(255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
-+; t)
-+
-+;(deftest unparse-inet6-address
-+; (string= (sb-bsd-sockets::unparse-inet6-address
-+; (make-inet6-address "fe80::abcd:1234"))
-+; "fe80::abcd:1234")
-+; t)
-
- (deftest get-protocol-by-name/tcp
- (integerp (get-protocol-by-name "tcp"))
-@@ -40,15 +40,15 @@
- ;;; See https://bugs.launchpad.net/sbcl/+bug/659857
- ;;; Apparently getprotobyname_r on FreeBSD says -1 and EINTR
- ;;; for unknown protocols...
--#-(and freebsd sb-thread)
--#-(and dragonfly sb-thread)
--(deftest get-protocol-by-name/error
-- (handler-case (get-protocol-by-name "nonexistent-protocol")
-- (unknown-protocol ()
-- t)
-- (:no-error ()
-- nil))
-- t)
-+;#-(and freebsd sb-thread)
-+;#-(and dragonfly sb-thread)
-+;(deftest get-protocol-by-name/error
-+; (handler-case (get-protocol-by-name "nonexistent-protocol")
-+; (unknown-protocol ()
-+; t)
-+; (:no-error ()
-+; nil))
-+; t)
-
- (eval-when (:compile-toplevel :execute)
- (when (handler-case (make-instance 'inet-socket
-@@ -108,19 +108,19 @@
- (:no-error nil))
- t)
-
--(deftest make-inet6-socket.smoke
-- (handler-case
-- (let ((s (make-instance 'inet6-socket :type :stream :protocol (get-protocol-by-name "tcp"))))
-- (> (socket-file-descriptor s) 1))
-- ((or address-family-not-supported protocol-not-supported-error) () t))
-- t)
--
--(deftest make-inet6-socket.keyword
-- (handler-case
-- (let ((s (make-instance 'inet6-socket :type :stream :protocol :tcp)))
-- (> (socket-file-descriptor s) 1))
-- ((or address-family-not-supported protocol-not-supported-error) () t))
-- t)
-+;(deftest make-inet6-socket.smoke
-+; (handler-case
-+; (let ((s (make-instance 'inet6-socket :type :stream :protocol (get-protocol-by-name "tcp"))))
-+; (> (socket-file-descriptor s) 1))
-+; ((or address-family-not-supported protocol-not-supported-error) () t))
-+; t)
-+
-+;(deftest make-inet6-socket.keyword
-+; (handler-case
-+; (let ((s (make-instance 'inet6-socket :type :stream :protocol :tcp)))
-+; (> (socket-file-descriptor s) 1))
-+; ((or address-family-not-supported protocol-not-supported-error) () t))
-+; t)
-
- #+ipv4-support
- (deftest* (non-block-socket)
-@@ -129,54 +129,54 @@
- (non-blocking-mode s))
- t)
-
--#+ipv4-support
--(deftest inet-socket-bind
-- (let* ((tcp (get-protocol-by-name "tcp"))
-- (address (make-inet-address "127.0.0.1"))
-- (s1 (make-instance 'inet-socket :type :stream :protocol tcp))
-- (s2 (make-instance 'inet-socket :type :stream :protocol tcp)))
-- (unwind-protect
-- ;; Given the functions we've got so far, if you can think of a
-- ;; better way to make sure the bind succeeded than trying it
-- ;; twice, let me know
-- (progn
-- (socket-bind s1 address 0)
-- (handler-case
-- (let ((port (nth-value 1 (socket-name s1))))
-- (socket-bind s2 address port)
-- nil)
-- (address-in-use-error () t)))
-- (socket-close s1)
-- (socket-close s2)))
-- t)
--
--(deftest inet6-socket-bind
-- (handler-case
-- (let* ((tcp (get-protocol-by-name "tcp"))
-- (address (make-inet6-address "::1"))
-- (s1 (make-instance 'inet6-socket :type :stream :protocol tcp))
-- (s2 (make-instance 'inet6-socket :type :stream :protocol tcp)))
-- (unwind-protect
-- ;; Given the functions we've got so far, if you can think of a
-- ;; better way to make sure the bind succeeded than trying it
-- ;; twice, let me know
-- (handler-case
-- (socket-bind s1 address 0)
-- (socket-error ()
-- ;; This may mean no IPv6 support, can't fail a test
-- ;; because of that (address-family-not-supported doesn't catch that)
-- t)
-- (:no-error (x)
-- (declare (ignore x))
-- (handler-case
-- (let ((port (nth-value 1 (socket-name s1))))
-- (socket-bind s2 address port)
-- nil)
-- (address-in-use-error () t))))
-- (socket-close s1)
-- (socket-close s2)))
-- ((or address-family-not-supported protocol-not-supported-error) () t))
-- t)
-+;#+ipv4-support
-+;(deftest inet-socket-bind
-+; (let* ((tcp (get-protocol-by-name "tcp"))
-+; (address (make-inet-address "127.0.0.1"))
-+; (s1 (make-instance 'inet-socket :type :stream :protocol tcp))
-+; (s2 (make-instance 'inet-socket :type :stream :protocol tcp)))
-+; (unwind-protect
-+; ;; Given the functions we've got so far, if you can think of a
-+; ;; better way to make sure the bind succeeded than trying it
-+; ;; twice, let me know
-+; (progn
-+; (socket-bind s1 address 0)
-+; (handler-case
-+; (let ((port (nth-value 1 (socket-name s1))))
-+; (socket-bind s2 address port)
-+; nil)
-+; (address-in-use-error () t)))
-+; (socket-close s1)
-+; (socket-close s2)))
-+; t)
-+
-+;(deftest inet6-socket-bind
-+; (handler-case
-+; (let* ((tcp (get-protocol-by-name "tcp"))
-+; (address (make-inet6-address "::1"))
-+; (s1 (make-instance 'inet6-socket :type :stream :protocol tcp))
-+; (s2 (make-instance 'inet6-socket :type :stream :protocol tcp)))
-+; (unwind-protect
-+; ;; Given the functions we've got so far, if you can think of a
-+; ;; better way to make sure the bind succeeded than trying it
-+; ;; twice, let me know
-+; (handler-case
-+; (socket-bind s1 address 0)
-+; (socket-error ()
-+; ;; This may mean no IPv6 support, can't fail a test
-+; ;; because of that (address-family-not-supported doesn't catch that)
-+; t)
-+; (:no-error (x)
-+; (declare (ignore x))
-+; (handler-case
-+; (let ((port (nth-value 1 (socket-name s1))))
-+; (socket-bind s2 address port)
-+; nil)
-+; (address-in-use-error () t))))
-+; (socket-close s1)
-+; (socket-close s2)))
-+; ((or address-family-not-supported protocol-not-supported-error) () t))
-+; t)
-
- #+ipv4-support
- (deftest* (simple-sockopt-test)
-@@ -244,37 +244,37 @@
- ;;; to look at /etc/syslog.conf or local equivalent to find out where
- ;;; the message ended up
-
--#-win32
--(deftest simple-local-client
-- (progn
-- ;; SunOS (Solaris) and Darwin systems don't have a socket at
-- ;; /dev/log. We might also be building in a chroot or
-- ;; something, so don't fail this test just because the file is
-- ;; unavailable, or if it's a symlink to some weird character
-- ;; device.
-- (when (block nil
-- (handler-bind ((sb-posix:syscall-error
-- (lambda (e)
-- (declare (ignore e))
-- (return nil))))
-- (sb-posix:s-issock
-- (sb-posix::stat-mode (sb-posix:stat "/dev/log")))))
-- (let ((s (make-instance 'local-socket :type :datagram)))
-- (format t "Connecting ~A... " s)
-- (finish-output)
-- (handler-case
-- (socket-connect s "/dev/log")
-- (sb-bsd-sockets::socket-error ()
-- (setq s (make-instance 'local-socket :type :stream))
-- (format t "failed~%Retrying with ~A... " s)
-- (finish-output)
-- (socket-connect s "/dev/log")))
-- (format t "ok.~%")
-- (let ((stream (socket-make-stream s :input t :output t :buffering :none)))
-- (format stream
-- "<7>bsd-sockets: Don't panic. We're testing local-domain client code; this message can safely be ignored"))))
-- t)
-- t)
-+;#-win32
-+;(deftest simple-local-client
-+; (progn
-+; ;; SunOS (Solaris) and Darwin systems don't have a socket at
-+; ;; /dev/log. We might also be building in a chroot or
-+; ;; something, so don't fail this test just because the file is
-+; ;; unavailable, or if it's a symlink to some weird character
-+; ;; device.
-+; (when (block nil
-+; (handler-bind ((sb-posix:syscall-error
-+; (lambda (e)
-+; (declare (ignore e))
-+; (return nil))))
-+; (sb-posix:s-issock
-+; (sb-posix::stat-mode (sb-posix:stat "/dev/log")))))
-+; (let ((s (make-instance 'local-socket :type :datagram)))
-+; (format t "Connecting ~A... " s)
-+; (finish-output)
-+; (handler-case
-+; (socket-connect s "/dev/log")
-+; (sb-bsd-sockets::socket-error ()
-+; (setq s (make-instance 'local-socket :type :stream))
-+; (format t "failed~%Retrying with ~A... " s)
-+; (finish-output)
-+; (socket-connect s "/dev/log")))
-+; (format t "ok.~%")
-+; (let ((stream (socket-make-stream s :input t :output t :buffering :none)))
-+; (format stream
-+; "<7>bsd-sockets: Don't panic. We're testing local-domain client code; this message can safely be ignored"))))
-+; t)
-+; t)
-
- ;;; these require that the internet (or bits of it, at least) is available
-
-@@ -390,59 +390,59 @@
- (format t "Received ~A bytes from ~A:~A - ~A ~%"
- len address port (subseq buf 0 (min 10 len)))))))
-
--#+(and ipv4-support sb-thread)
--(deftest interrupt-io
-- (let (result
-- (sem (sb-thread:make-semaphore)))
-- (labels
-- ((client (port)
-- (setf result
-- (let ((s (make-instance 'inet-socket
-- :type :stream
-- :protocol :tcp)))
-- (socket-connect s #(127 0 0 1) port)
-- (let ((stream (socket-make-stream s
-- :input t
-- :output t
-- :buffering :none)))
-- (handler-case
-- (prog1
-- (catch 'stop
-- (sb-thread:signal-semaphore sem)
-- (read-char stream))
-- (close stream))
-- (error (c)
-- c))))))
-- (server ()
-- (let ((s (make-instance 'inet-socket
-- :type :stream
-- :protocol :tcp)))
-- (setf (sockopt-reuse-address s) t)
-- (socket-bind s (make-inet-address "127.0.0.1") 0)
-- (socket-listen s 5)
-- (multiple-value-bind (* port)
-- (socket-name s)
-- (let* ((client (sb-thread:make-thread
-- (lambda () (client port))))
-- (r (socket-accept s))
-- (stream (socket-make-stream r
-- :input t
-- :output t
-- :buffering :none)))
-- (socket-close s)
-- (sb-thread:wait-on-semaphore sem)
-- (sleep 0.1)
-- (sb-thread:interrupt-thread client
-- (lambda () (throw 'stop :ok)))
-- (unless (sb-ext:wait-for (null (sb-thread::thread-interruptions client)) :timeout 5)
-- (setf result :timeout))
-- (write-char #\x stream)
-- (close stream)
-- (socket-close r)
-- (sb-thread:join-thread client :timeout 5))))))
-- (server))
-- result)
-- :ok)
-+;#+(and ipv4-support sb-thread)
-+;(deftest interrupt-io
-+; (let (result
-+; (sem (sb-thread:make-semaphore)))
-+; (labels
-+; ((client (port)
-+; (setf result
-+; (let ((s (make-instance 'inet-socket
-+; :type :stream
-+; :protocol :tcp)))
-+; (socket-connect s #(127 0 0 1) port)
-+; (let ((stream (socket-make-stream s
-+; :input t
-+; :output t
-+; :buffering :none)))
-+; (handler-case
-+; (prog1
-+; (catch 'stop
-+; (sb-thread:signal-semaphore sem)
-+; (read-char stream))
-+; (close stream))
-+; (error (c)
-+; c))))))
-+; (server ()
-+; (let ((s (make-instance 'inet-socket
-+; :type :stream
-+; :protocol :tcp)))
-+; (setf (sockopt-reuse-address s) t)
-+; (socket-bind s (make-inet-address "127.0.0.1") 0)
-+; (socket-listen s 5)
-+; (multiple-value-bind (* port)
-+; (socket-name s)
-+; (let* ((client (sb-thread:make-thread
-+; (lambda () (client port))))
-+; (r (socket-accept s))
-+; (stream (socket-make-stream r
-+; :input t
-+; :output t
-+; :buffering :none)))
-+; (socket-close s)
-+; (sb-thread:wait-on-semaphore sem)
-+; (sleep 0.1)
-+; (sb-thread:interrupt-thread client
-+; (lambda () (throw 'stop :ok)))
-+; (unless (sb-ext:wait-for (null (sb-thread::thread-interruptions client)) :timeout 5)
-+; (setf result :timeout))
-+; (write-char #\x stream)
-+; (close stream)
-+; (socket-close r)
-+; (sb-thread:join-thread client :timeout 5))))))
-+; (server))
-+; result)
-+; :ok)
-
- (defmacro with-client-and-server (((socket-class &rest common-initargs)
- (listen-socket-var &rest listen-address)
-@@ -505,8 +505,9 @@
- (define-shutdown-test ,(make-name 'shutdown.client.ub8)
- client server (unsigned-byte 8) ,direction)))))
-
-- (define-shutdown-tests :output)
-- (define-shutdown-tests :io))
-+; (define-shutdown-tests :output)
-+; (define-shutdown-tests :io)
-+)
-
- (defun poor-persons-random-address ()
- (let ((base (expt 36 8)))
diff --git a/dev-lisp/sbcl/files/bsd-sockets-test-2.3.1.patch b/dev-lisp/sbcl/files/bsd-sockets-test-2.3.1.patch
deleted file mode 100644
index e4810e991a83..000000000000
--- a/dev-lisp/sbcl/files/bsd-sockets-test-2.3.1.patch
+++ /dev/null
@@ -1,410 +0,0 @@
-diff -r -U3 sbcl-2.3.1.orig/contrib/sb-bsd-sockets/tests.lisp sbcl-2.3.1/contrib/sb-bsd-sockets/tests.lisp
---- sbcl-2.3.1.orig/contrib/sb-bsd-sockets/tests.lisp 2023-01-28 18:56:32.000000000 +0700
-+++ sbcl-2.3.1/contrib/sb-bsd-sockets/tests.lisp 2023-02-10 21:10:52.358958490 +0700
-@@ -13,16 +13,16 @@
- (equalp (make-inet-address "242.1.211.3") #(242 1 211 3))
- t)
-
--(deftest make-inet6-address.1
-- (equalp (make-inet6-address "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff")
-- #(255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
-- t)
--
--(deftest unparse-inet6-address
-- (string= (sb-bsd-sockets::unparse-inet6-address
-- (make-inet6-address "fe80::abcd:1234"))
-- "fe80::abcd:1234")
-- t)
-+;(deftest make-inet6-address.1
-+; (equalp (make-inet6-address "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff")
-+; #(255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
-+; t)
-+
-+;(deftest unparse-inet6-address
-+; (string= (sb-bsd-sockets::unparse-inet6-address
-+; (make-inet6-address "fe80::abcd:1234"))
-+; "fe80::abcd:1234")
-+; t)
-
- (deftest get-protocol-by-name/tcp
- (integerp (get-protocol-by-name "tcp"))
-@@ -35,15 +35,15 @@
- ;;; See https://bugs.launchpad.net/sbcl/+bug/659857
- ;;; Apparently getprotobyname_r on FreeBSD says -1 and EINTR
- ;;; for unknown protocols...
--#-(and freebsd sb-thread)
--#-(and dragonfly sb-thread)
--(deftest get-protocol-by-name/error
-- (handler-case (get-protocol-by-name "nonexistent-protocol")
-- (unknown-protocol ()
-- t)
-- (:no-error ()
-- nil))
-- t)
-+;#-(and freebsd sb-thread)
-+;#-(and dragonfly sb-thread)
-+;(deftest get-protocol-by-name/error
-+; (handler-case (get-protocol-by-name "nonexistent-protocol")
-+; (unknown-protocol ()
-+; t)
-+; (:no-error ()
-+; nil))
-+; t)
-
- (eval-when (:compile-toplevel :execute)
- (when (handler-case (make-instance 'inet-socket
-@@ -104,19 +104,19 @@
- (:no-error nil))
- t)
-
--(deftest make-inet6-socket.smoke
-- (handler-case
-- (let ((s (make-instance 'inet6-socket :type :stream :protocol (get-protocol-by-name "tcp"))))
-- (> (socket-file-descriptor s) 1))
-- ((or address-family-not-supported protocol-not-supported-error) () t))
-- t)
--
--(deftest make-inet6-socket.keyword
-- (handler-case
-- (let ((s (make-instance 'inet6-socket :type :stream :protocol :tcp)))
-- (> (socket-file-descriptor s) 1))
-- ((or address-family-not-supported protocol-not-supported-error) () t))
-- t)
-+;(deftest make-inet6-socket.smoke
-+; (handler-case
-+; (let ((s (make-instance 'inet6-socket :type :stream :protocol (get-protocol-by-name "tcp"))))
-+; (> (socket-file-descriptor s) 1))
-+; ((or address-family-not-supported protocol-not-supported-error) () t))
-+; t)
-+
-+;(deftest make-inet6-socket.keyword
-+; (handler-case
-+; (let ((s (make-instance 'inet6-socket :type :stream :protocol :tcp)))
-+; (> (socket-file-descriptor s) 1))
-+; ((or address-family-not-supported protocol-not-supported-error) () t))
-+; t)
-
- #+ipv4-support
- (deftest non-block-socket
-@@ -125,67 +125,67 @@
- (non-blocking-mode s))
- t)
-
--#+ipv4-support
--(test-util:with-test (:name :inet-socket-bind)
-- (let* ((tcp (get-protocol-by-name "tcp"))
-- (address (make-inet-address "127.0.0.1"))
-- (s1 (make-instance 'inet-socket :type :stream :protocol tcp))
-- (s2 (make-instance 'inet-socket :type :stream :protocol tcp))
-- (failure)
-- (got-addrinuse))
-- (format t "~&::: INFO: made sockets~%")
-- (unwind-protect
-- ;; Given the functions we've got so far, if you can think of a
-- ;; better way to make sure the bind succeeded than trying it
-- ;; twice, let me know
-- (progn
-- (socket-bind s1 address 0)
-- (handler-case
-- (let ((port (nth-value 1 (socket-name s1))))
-- (socket-bind s2 address port) ; should fail
-- nil)
-- (address-in-use-error () (setq got-addrinuse t))
-- (condition (c) (setq failure c))))
-- (socket-close s1)
-- (socket-close s2))
-- (cond (failure (error "BIND failed with ~A" failure))
-- ((not got-addrinuse) (error "Expected ADDRESS-IN-USE err")))))
--
--(test-util:with-test (:name :inet6-socket-bind)
-- (let ((notsupp)
-- (failure)
-- (got-addrinuse))
-- (handler-case
-- (let* ((tcp (get-protocol-by-name "tcp"))
-- (address (make-inet6-address "::1"))
-- (s1 (make-instance 'inet6-socket :type :stream :protocol tcp))
-- (s2 (make-instance 'inet6-socket :type :stream :protocol tcp)))
-- (format t "~&::: INFO: made sockets~%")
-- (unwind-protect
-- ;; Given the functions we've got so far, if you can think of a
-- ;; better way to make sure the bind succeeded than trying it
-- ;; twice, let me know
-- (handler-case
-- (socket-bind s1 address 0)
-- (socket-error ()
-- ;; This may mean no IPv6 support, can't fail a test
-- ;; because of that (address-family-not-supported doesn't catch that)
-- t)
-- (:no-error (x)
-- (declare (ignore x))
-- (handler-case
-- (let ((port (nth-value 1 (socket-name s1))))
-- (socket-bind s2 address port) ; should fail
-- nil)
-- (address-in-use-error () (setq got-addrinuse t))
-- (condition (c) (setq failure c)))))
-- (socket-close s1)
-- (socket-close s2)))
-- ((or address-family-not-supported protocol-not-supported-error) ()
-- (setq notsupp t)))
-- (cond (notsupp (format t "~&INFO: not supported~%"))
-- (failure (error "BIND failed with ~A" failure))
-- ((not got-addrinuse) (error "Expected ADDRESS-IN-USE err")))))
-+;#+ipv4-support
-+;(test-util:with-test (:name :inet-socket-bind)
-+; (let* ((tcp (get-protocol-by-name "tcp"))
-+; (address (make-inet-address "127.0.0.1"))
-+; (s1 (make-instance 'inet-socket :type :stream :protocol tcp))
-+; (s2 (make-instance 'inet-socket :type :stream :protocol tcp))
-+; (failure)
-+; (got-addrinuse))
-+; (format t "~&::: INFO: made sockets~%")
-+; (unwind-protect
-+; ;; Given the functions we've got so far, if you can think of a
-+; ;; better way to make sure the bind succeeded than trying it
-+; ;; twice, let me know
-+; (progn
-+; (socket-bind s1 address 0)
-+; (handler-case
-+; (let ((port (nth-value 1 (socket-name s1))))
-+; (socket-bind s2 address port) ; should fail
-+; nil)
-+; (address-in-use-error () (setq got-addrinuse t))
-+; (condition (c) (setq failure c))))
-+; (socket-close s1)
-+; (socket-close s2))
-+; (cond (failure (error "BIND failed with ~A" failure))
-+; ((not got-addrinuse) (error "Expected ADDRESS-IN-USE err")))))
-+
-+;(test-util:with-test (:name :inet6-socket-bind)
-+; (let ((notsupp)
-+; (failure)
-+; (got-addrinuse))
-+; (handler-case
-+; (let* ((tcp (get-protocol-by-name "tcp"))
-+; (address (make-inet6-address "::1"))
-+; (s1 (make-instance 'inet6-socket :type :stream :protocol tcp))
-+; (s2 (make-instance 'inet6-socket :type :stream :protocol tcp)))
-+; (format t "~&::: INFO: made sockets~%")
-+; (unwind-protect
-+; ;; Given the functions we've got so far, if you can think of a
-+; ;; better way to make sure the bind succeeded than trying it
-+; ;; twice, let me know
-+; (handler-case
-+; (socket-bind s1 address 0)
-+; (socket-error ()
-+; ;; This may mean no IPv6 support, can't fail a test
-+; ;; because of that (address-family-not-supported doesn't catch that)
-+; t)
-+; (:no-error (x)
-+; (declare (ignore x))
-+; (handler-case
-+; (let ((port (nth-value 1 (socket-name s1))))
-+; (socket-bind s2 address port) ; should fail
-+; nil)
-+; (address-in-use-error () (setq got-addrinuse t))
-+; (condition (c) (setq failure c)))))
-+; (socket-close s1)
-+; (socket-close s2)))
-+; ((or address-family-not-supported protocol-not-supported-error) ()
-+; (setq notsupp t)))
-+; (cond (notsupp (format t "~&INFO: not supported~%"))
-+; (failure (error "BIND failed with ~A" failure))
-+; ((not got-addrinuse) (error "Expected ADDRESS-IN-USE err")))))
-
- #+ipv4-support
- (deftest simple-sockopt-test
-@@ -253,37 +253,37 @@
- ;;; to look at /etc/syslog.conf or local equivalent to find out where
- ;;; the message ended up
-
--#-win32
--(deftest simple-local-client
-- (progn
-- ;; SunOS (Solaris) and Darwin systems don't have a socket at
-- ;; /dev/log. We might also be building in a chroot or
-- ;; something, so don't fail this test just because the file is
-- ;; unavailable, or if it's a symlink to some weird character
-- ;; device.
-- (when (block nil
-- (handler-bind ((sb-posix:syscall-error
-- (lambda (e)
-- (declare (ignore e))
-- (return nil))))
-- (sb-posix:s-issock
-- (sb-posix::stat-mode (sb-posix:stat "/dev/log")))))
-- (let ((s (make-instance 'local-socket :type :datagram)))
-- (format t "Connecting ~A... " s)
-- (finish-output)
-- (handler-case
-- (socket-connect s "/dev/log")
-- (sb-bsd-sockets::socket-error ()
-- (setq s (make-instance 'local-socket :type :stream))
-- (format t "failed~%Retrying with ~A... " s)
-- (finish-output)
-- (socket-connect s "/dev/log")))
-- (format t "ok.~%")
-- (let ((stream (socket-make-stream s :input t :output t :buffering :none)))
-- (format stream
-- "<7>bsd-sockets: Don't panic. We're testing local-domain client code; this message can safely be ignored"))))
-- t)
-- t)
-+;#-win32
-+;(deftest simple-local-client
-+; (progn
-+; ;; SunOS (Solaris) and Darwin systems don't have a socket at
-+; ;; /dev/log. We might also be building in a chroot or
-+; ;; something, so don't fail this test just because the file is
-+; ;; unavailable, or if it's a symlink to some weird character
-+; ;; device.
-+; (when (block nil
-+; (handler-bind ((sb-posix:syscall-error
-+; (lambda (e)
-+; (declare (ignore e))
-+; (return nil))))
-+; (sb-posix:s-issock
-+; (sb-posix::stat-mode (sb-posix:stat "/dev/log")))))
-+; (let ((s (make-instance 'local-socket :type :datagram)))
-+; (format t "Connecting ~A... " s)
-+; (finish-output)
-+; (handler-case
-+; (socket-connect s "/dev/log")
-+; (sb-bsd-sockets::socket-error ()
-+; (setq s (make-instance 'local-socket :type :stream))
-+; (format t "failed~%Retrying with ~A... " s)
-+; (finish-output)
-+; (socket-connect s "/dev/log")))
-+; (format t "ok.~%")
-+; (let ((stream (socket-make-stream s :input t :output t :buffering :none)))
-+; (format stream
-+; "<7>bsd-sockets: Don't panic. We're testing local-domain client code; this message can safely be ignored"))))
-+; t)
-+; t)
-
- ;;; these require that the internet (or bits of it, at least) is available
-
-@@ -428,59 +428,59 @@
- (format t "Received ~A bytes from ~A:~A - ~A ~%"
- len address port (subseq buf 0 (min 10 len)))))))
-
--#+(and ipv4-support sb-thread)
--(deftest interrupt-io
-- (let (result
-- (sem (sb-thread:make-semaphore)))
-- (labels
-- ((client (port)
-- (setf result
-- (let ((s (make-instance 'inet-socket
-- :type :stream
-- :protocol :tcp)))
-- (socket-connect s #(127 0 0 1) port)
-- (let ((stream (socket-make-stream s
-- :input t
-- :output t
-- :buffering :none)))
-- (handler-case
-- (prog1
-- (catch 'stop
-- (sb-thread:signal-semaphore sem)
-- (read-char stream))
-- (close stream))
-- (error (c)
-- c))))))
-- (server ()
-- (let ((s (make-instance 'inet-socket
-- :type :stream
-- :protocol :tcp)))
-- (setf (sockopt-reuse-address s) t)
-- (socket-bind s (make-inet-address "127.0.0.1") 0)
-- (socket-listen s 5)
-- (multiple-value-bind (* port)
-- (socket-name s)
-- (let* ((client (sb-thread:make-thread
-- (lambda () (client port))))
-- (r (socket-accept s))
-- (stream (socket-make-stream r
-- :input t
-- :output t
-- :buffering :none)))
-- (socket-close s)
-- (sb-thread:wait-on-semaphore sem)
-- (sleep 0.1)
-- (sb-thread:interrupt-thread client
-- (lambda () (throw 'stop :ok)))
-- (unless (sb-ext:wait-for (null (sb-thread::thread-interruptions client)) :timeout 5)
-- (setf result :timeout))
-- (write-char #\x stream)
-- (close stream)
-- (socket-close r)
-- (sb-thread:join-thread client :timeout 5))))))
-- (server))
-- result)
-- :ok)
-+;#+(and ipv4-support sb-thread)
-+;(deftest interrupt-io
-+; (let (result
-+; (sem (sb-thread:make-semaphore)))
-+; (labels
-+; ((client (port)
-+; (setf result
-+; (let ((s (make-instance 'inet-socket
-+; :type :stream
-+; :protocol :tcp)))
-+; (socket-connect s #(127 0 0 1) port)
-+; (let ((stream (socket-make-stream s
-+; :input t
-+; :output t
-+; :buffering :none)))
-+; (handler-case
-+; (prog1
-+; (catch 'stop
-+; (sb-thread:signal-semaphore sem)
-+; (read-char stream))
-+; (close stream))
-+; (error (c)
-+; c))))))
-+; (server ()
-+; (let ((s (make-instance 'inet-socket
-+; :type :stream
-+; :protocol :tcp)))
-+; (setf (sockopt-reuse-address s) t)
-+; (socket-bind s (make-inet-address "127.0.0.1") 0)
-+; (socket-listen s 5)
-+; (multiple-value-bind (* port)
-+; (socket-name s)
-+; (let* ((client (sb-thread:make-thread
-+; (lambda () (client port))))
-+; (r (socket-accept s))
-+; (stream (socket-make-stream r
-+; :input t
-+; :output t
-+; :buffering :none)))
-+; (socket-close s)
-+; (sb-thread:wait-on-semaphore sem)
-+; (sleep 0.1)
-+; (sb-thread:interrupt-thread client
-+; (lambda () (throw 'stop :ok)))
-+; (unless (sb-ext:wait-for (null (sb-thread::thread-interruptions client)) :timeout 5)
-+; (setf result :timeout))
-+; (write-char #\x stream)
-+; (close stream)
-+; (socket-close r)
-+; (sb-thread:join-thread client :timeout 5))))))
-+; (server))
-+; result)
-+; :ok)
-
- (defmacro with-client-and-server (((socket-class &rest common-initargs)
- (listen-socket-var &rest listen-address)
-@@ -543,8 +543,8 @@
- (define-shutdown-test ,(make-name 'shutdown.client.ub8)
- client server (unsigned-byte 8) ,direction)))))
-
-- (define-shutdown-tests :output)
-- (define-shutdown-tests :io))
-+; (define-shutdown-tests :output)
-+; (define-shutdown-tests :io))
-
- (defun poor-persons-random-address ()
- (let ((base (expt 36 8)))
diff --git a/dev-lisp/sbcl/files/bsd-sockets-test-2.3.6.patch b/dev-lisp/sbcl/files/bsd-sockets-test-2.3.6.patch
deleted file mode 100644
index 7bf6f8afd797..000000000000
--- a/dev-lisp/sbcl/files/bsd-sockets-test-2.3.6.patch
+++ /dev/null
@@ -1,410 +0,0 @@
-diff -r -U3 sbcl-2.3.6.orig/contrib/sb-bsd-sockets/tests.lisp sbcl-2.3.6/contrib/sb-bsd-sockets/tests.lisp
---- sbcl-2.3.6.orig/contrib/sb-bsd-sockets/tests.lisp 2023-06-28 13:35:17.000000000 +0700
-+++ sbcl-2.3.6/contrib/sb-bsd-sockets/tests.lisp 2023-07-20 21:14:36.163025437 +0700
-@@ -13,16 +13,16 @@
- (equalp (make-inet-address "242.1.211.3") #(242 1 211 3))
- t)
-
--(deftest make-inet6-address.1
-- (equalp (make-inet6-address "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff")
-- #(255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
-- t)
--
--(deftest unparse-inet6-address
-- (string= (sb-bsd-sockets::unparse-inet6-address
-- (make-inet6-address "fe80::abcd:1234"))
-- "fe80::abcd:1234")
-- t)
-+;(deftest make-inet6-address.1
-+; (equalp (make-inet6-address "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff")
-+; #(255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255))
-+; t)
-+
-+;(deftest unparse-inet6-address
-+; (string= (sb-bsd-sockets::unparse-inet6-address
-+; (make-inet6-address "fe80::abcd:1234"))
-+; "fe80::abcd:1234")
-+; t)
-
- (deftest get-protocol-by-name/tcp
- (integerp (get-protocol-by-name "tcp"))
-@@ -35,15 +35,15 @@
- ;;; See https://bugs.launchpad.net/sbcl/+bug/659857
- ;;; Apparently getprotobyname_r on FreeBSD says -1 and EINTR
- ;;; for unknown protocols...
--#-(and freebsd sb-thread)
--#-(and dragonfly sb-thread)
--(deftest get-protocol-by-name/error
-- (handler-case (get-protocol-by-name "nonexistent-protocol")
-- (unknown-protocol ()
-- t)
-- (:no-error ()
-- nil))
-- t)
-+;#-(and freebsd sb-thread)
-+;#-(and dragonfly sb-thread)
-+;(deftest get-protocol-by-name/error
-+; (handler-case (get-protocol-by-name "nonexistent-protocol")
-+; (unknown-protocol ()
-+; t)
-+; (:no-error ()
-+; nil))
-+; t)
-
- (eval-when (:compile-toplevel :execute)
- (when (handler-case (make-instance 'inet-socket
-@@ -104,19 +104,19 @@
- (:no-error nil))
- t)
-
--(deftest make-inet6-socket.smoke
-- (handler-case
-- (let ((s (make-instance 'inet6-socket :type :stream :protocol (get-protocol-by-name "tcp"))))
-- (> (socket-file-descriptor s) 1))
-- ((or address-family-not-supported protocol-not-supported-error) () t))
-- t)
--
--(deftest make-inet6-socket.keyword
-- (handler-case
-- (let ((s (make-instance 'inet6-socket :type :stream :protocol :tcp)))
-- (> (socket-file-descriptor s) 1))
-- ((or address-family-not-supported protocol-not-supported-error) () t))
-- t)
-+;(deftest make-inet6-socket.smoke
-+; (handler-case
-+; (let ((s (make-instance 'inet6-socket :type :stream :protocol (get-protocol-by-name "tcp"))))
-+; (> (socket-file-descriptor s) 1))
-+; ((or address-family-not-supported protocol-not-supported-error) () t))
-+; t)
-+
-+;(deftest make-inet6-socket.keyword
-+; (handler-case
-+; (let ((s (make-instance 'inet6-socket :type :stream :protocol :tcp)))
-+; (> (socket-file-descriptor s) 1))
-+; ((or address-family-not-supported protocol-not-supported-error) () t))
-+; t)
-
- #+ipv4-support
- (deftest non-block-socket
-@@ -125,67 +125,67 @@
- (non-blocking-mode s))
- t)
-
--#+ipv4-support
--(test-util:with-test (:name :inet-socket-bind)
-- (let* ((tcp (get-protocol-by-name "tcp"))
-- (address (make-inet-address "127.0.0.1"))
-- (s1 (make-instance 'inet-socket :type :stream :protocol tcp))
-- (s2 (make-instance 'inet-socket :type :stream :protocol tcp))
-- (failure)
-- (got-addrinuse))
-- (format t "~&::: INFO: made sockets~%")
-- (unwind-protect
-- ;; Given the functions we've got so far, if you can think of a
-- ;; better way to make sure the bind succeeded than trying it
-- ;; twice, let me know
-- (progn
-- (socket-bind s1 address 0)
-- (handler-case
-- (let ((port (nth-value 1 (socket-name s1))))
-- (socket-bind s2 address port) ; should fail
-- nil)
-- (address-in-use-error () (setq got-addrinuse t))
-- (condition (c) (setq failure c))))
-- (socket-close s1)
-- (socket-close s2))
-- (cond (failure (error "BIND failed with ~A" failure))
-- ((not got-addrinuse) (error "Expected ADDRESS-IN-USE err")))))
--
--(test-util:with-test (:name :inet6-socket-bind)
-- (let ((notsupp)
-- (failure)
-- (got-addrinuse))
-- (handler-case
-- (let* ((tcp (get-protocol-by-name "tcp"))
-- (address (make-inet6-address "::1"))
-- (s1 (make-instance 'inet6-socket :type :stream :protocol tcp))
-- (s2 (make-instance 'inet6-socket :type :stream :protocol tcp)))
-- (format t "~&::: INFO: made sockets~%")
-- (unwind-protect
-- ;; Given the functions we've got so far, if you can think of a
-- ;; better way to make sure the bind succeeded than trying it
-- ;; twice, let me know
-- (handler-case
-- (socket-bind s1 address 0)
-- (socket-error ()
-- ;; This may mean no IPv6 support, can't fail a test
-- ;; because of that (address-family-not-supported doesn't catch that)
-- (setf notsupp t))
-- (:no-error (x)
-- (declare (ignore x))
-- (handler-case
-- (let ((port (nth-value 1 (socket-name s1))))
-- (socket-bind s2 address port) ; should fail
-- nil)
-- (address-in-use-error () (setq got-addrinuse t))
-- (condition (c) (setq failure c)))))
-- (socket-close s1)
-- (socket-close s2)))
-- ((or address-family-not-supported protocol-not-supported-error) ()
-- (setq notsupp t)))
-- (cond (notsupp (format t "~&INFO: not supported~%"))
-- (failure (error "BIND failed with ~A" failure))
-- ((not got-addrinuse) (error "Expected ADDRESS-IN-USE err")))))
-+;#+ipv4-support
-+;(test-util:with-test (:name :inet-socket-bind)
-+; (let* ((tcp (get-protocol-by-name "tcp"))
-+; (address (make-inet-address "127.0.0.1"))
-+; (s1 (make-instance 'inet-socket :type :stream :protocol tcp))
-+; (s2 (make-instance 'inet-socket :type :stream :protocol tcp))
-+; (failure)
-+; (got-addrinuse))
-+; (format t "~&::: INFO: made sockets~%")
-+; (unwind-protect
-+; ;; Given the functions we've got so far, if you can think of a
-+; ;; better way to make sure the bind succeeded than trying it
-+; ;; twice, let me know
-+; (progn
-+; (socket-bind s1 address 0)
-+; (handler-case
-+; (let ((port (nth-value 1 (socket-name s1))))
-+; (socket-bind s2 address port) ; should fail
-+; nil)
-+; (address-in-use-error () (setq got-addrinuse t))
-+; (condition (c) (setq failure c))))
-+; (socket-close s1)
-+; (socket-close s2))
-+; (cond (failure (error "BIND failed with ~A" failure))
-+; ((not got-addrinuse) (error "Expected ADDRESS-IN-USE err")))))
-+
-+;(test-util:with-test (:name :inet6-socket-bind)
-+; (let ((notsupp)
-+; (failure)
-+; (got-addrinuse))
-+; (handler-case
-+; (let* ((tcp (get-protocol-by-name "tcp"))
-+; (address (make-inet6-address "::1"))
-+; (s1 (make-instance 'inet6-socket :type :stream :protocol tcp))
-+; (s2 (make-instance 'inet6-socket :type :stream :protocol tcp)))
-+; (format t "~&::: INFO: made sockets~%")
-+; (unwind-protect
-+; ;; Given the functions we've got so far, if you can think of a
-+; ;; better way to make sure the bind succeeded than trying it
-+; ;; twice, let me know
-+; (handler-case
-+; (socket-bind s1 address 0)
-+; (socket-error ()
-+; ;; This may mean no IPv6 support, can't fail a test
-+; ;; because of that (address-family-not-supported doesn't catch that)
-+; (setf notsupp t))
-+; (:no-error (x)
-+; (declare (ignore x))
-+; (handler-case
-+; (let ((port (nth-value 1 (socket-name s1))))
-+; (socket-bind s2 address port) ; should fail
-+; nil)
-+; (address-in-use-error () (setq got-addrinuse t))
-+; (condition (c) (setq failure c)))))
-+; (socket-close s1)
-+; (socket-close s2)))
-+; ((or address-family-not-supported protocol-not-supported-error) ()
-+; (setq notsupp t)))
-+; (cond (notsupp (format t "~&INFO: not supported~%"))
-+; (failure (error "BIND failed with ~A" failure))
-+; ((not got-addrinuse) (error "Expected ADDRESS-IN-USE err")))))
-
- #+ipv4-support
- (deftest simple-sockopt-test
-@@ -253,37 +253,37 @@
- ;;; to look at /etc/syslog.conf or local equivalent to find out where
- ;;; the message ended up
-
--#-win32
--(deftest simple-local-client
-- (progn
-- ;; SunOS (Solaris) and Darwin systems don't have a socket at
-- ;; /dev/log. We might also be building in a chroot or
-- ;; something, so don't fail this test just because the file is
-- ;; unavailable, or if it's a symlink to some weird character
-- ;; device.
-- (when (block nil
-- (handler-bind ((sb-posix:syscall-error
-- (lambda (e)
-- (declare (ignore e))
-- (return nil))))
-- (sb-posix:s-issock
-- (sb-posix::stat-mode (sb-posix:stat "/dev/log")))))
-- (let ((s (make-instance 'local-socket :type :datagram)))
-- (format t "Connecting ~A... " s)
-- (finish-output)
-- (handler-case
-- (socket-connect s "/dev/log")
-- (sb-bsd-sockets::socket-error ()
-- (setq s (make-instance 'local-socket :type :stream))
-- (format t "failed~%Retrying with ~A... " s)
-- (finish-output)
-- (socket-connect s "/dev/log")))
-- (format t "ok.~%")
-- (let ((stream (socket-make-stream s :input t :output t :buffering :none)))
-- (format stream
-- "<7>bsd-sockets: Don't panic. We're testing local-domain client code; this message can safely be ignored"))))
-- t)
-- t)
-+;#-win32
-+;(deftest simple-local-client
-+; (progn
-+; ;; SunOS (Solaris) and Darwin systems don't have a socket at
-+; ;; /dev/log. We might also be building in a chroot or
-+; ;; something, so don't fail this test just because the file is
-+; ;; unavailable, or if it's a symlink to some weird character
-+; ;; device.
-+; (when (block nil
-+; (handler-bind ((sb-posix:syscall-error
-+; (lambda (e)
-+; (declare (ignore e))
-+; (return nil))))
-+; (sb-posix:s-issock
-+; (sb-posix::stat-mode (sb-posix:stat "/dev/log")))))
-+; (let ((s (make-instance 'local-socket :type :datagram)))
-+; (format t "Connecting ~A... " s)
-+; (finish-output)
-+; (handler-case
-+; (socket-connect s "/dev/log")
-+; (sb-bsd-sockets::socket-error ()
-+; (setq s (make-instance 'local-socket :type :stream))
-+; (format t "failed~%Retrying with ~A... " s)
-+; (finish-output)
-+; (socket-connect s "/dev/log")))
-+; (format t "ok.~%")
-+; (let ((stream (socket-make-stream s :input t :output t :buffering :none)))
-+; (format stream
-+; "<7>bsd-sockets: Don't panic. We're testing local-domain client code; this message can safely be ignored"))))
-+; t)
-+; t)
-
- ;;; these require that the internet (or bits of it, at least) is available
-
-@@ -428,59 +428,59 @@
- (format t "Received ~A bytes from ~A:~A - ~A ~%"
- len address port (subseq buf 0 (min 10 len)))))))
-
--#+(and ipv4-support sb-thread)
--(deftest interrupt-io
-- (let (result
-- (sem (sb-thread:make-semaphore)))
-- (labels
-- ((client (port)
-- (setf result
-- (let ((s (make-instance 'inet-socket
-- :type :stream
-- :protocol :tcp)))
-- (socket-connect s #(127 0 0 1) port)
-- (let ((stream (socket-make-stream s
-- :input t
-- :output t
-- :buffering :none)))
-- (handler-case
-- (prog1
-- (catch 'stop
-- (sb-thread:signal-semaphore sem)
-- (read-char stream))
-- (close stream))
-- (error (c)
-- c))))))
-- (server ()
-- (let ((s (make-instance 'inet-socket
-- :type :stream
-- :protocol :tcp)))
-- (setf (sockopt-reuse-address s) t)
-- (socket-bind s (make-inet-address "127.0.0.1") 0)
-- (socket-listen s 5)
-- (multiple-value-bind (* port)
-- (socket-name s)
-- (let* ((client (sb-thread:make-thread
-- (lambda () (client port))))
-- (r (socket-accept s))
-- (stream (socket-make-stream r
-- :input t
-- :output t
-- :buffering :none)))
-- (socket-close s)
-- (sb-thread:wait-on-semaphore sem)
-- (sleep 0.1)
-- (sb-thread:interrupt-thread client
-- (lambda () (throw 'stop :ok)))
-- (unless (sb-ext:wait-for (null (sb-thread::thread-interruptions client)) :timeout 5)
-- (setf result :timeout))
-- (write-char #\x stream)
-- (close stream)
-- (socket-close r)
-- (sb-thread:join-thread client :timeout 5))))))
-- (server))
-- result)
-- :ok)
-+;#+(and ipv4-support sb-thread)
-+;(deftest interrupt-io
-+; (let (result
-+; (sem (sb-thread:make-semaphore)))
-+; (labels
-+; ((client (port)
-+; (setf result
-+; (let ((s (make-instance 'inet-socket
-+; :type :stream
-+; :protocol :tcp)))
-+; (socket-connect s #(127 0 0 1) port)
-+; (let ((stream (socket-make-stream s
-+; :input t
-+; :output t
-+; :buffering :none)))
-+; (handler-case
-+; (prog1
-+; (catch 'stop
-+; (sb-thread:signal-semaphore sem)
-+; (read-char stream))
-+; (close stream))
-+; (error (c)
-+; c))))))
-+; (server ()
-+; (let ((s (make-instance 'inet-socket
-+; :type :stream
-+; :protocol :tcp)))
-+; (setf (sockopt-reuse-address s) t)
-+; (socket-bind s (make-inet-address "127.0.0.1") 0)
-+; (socket-listen s 5)
-+; (multiple-value-bind (* port)
-+; (socket-name s)
-+; (let* ((client (sb-thread:make-thread
-+; (lambda () (client port))))
-+; (r (socket-accept s))
-+; (stream (socket-make-stream r
-+; :input t
-+; :output t
-+; :buffering :none)))
-+; (socket-close s)
-+; (sb-thread:wait-on-semaphore sem)
-+; (sleep 0.1)
-+; (sb-thread:interrupt-thread client
-+; (lambda () (throw 'stop :ok)))
-+; (unless (sb-ext:wait-for (null (sb-thread::thread-interruptions client)) :timeout 5)
-+; (setf result :timeout))
-+; (write-char #\x stream)
-+; (close stream)
-+; (socket-close r)
-+; (sb-thread:join-thread client :timeout 5))))))
-+; (server))
-+; result)
-+; :ok)
-
- (defmacro with-client-and-server (((socket-class &rest common-initargs)
- (listen-socket-var &rest listen-address)
-@@ -543,8 +543,8 @@
- (define-shutdown-test ,(make-name 'shutdown.client.ub8)
- client server (unsigned-byte 8) ,direction)))))
-
-- (define-shutdown-tests :output)
-- (define-shutdown-tests :io))
-+; (define-shutdown-tests :output)
-+; (define-shutdown-tests :io))
-
- (defun poor-persons-random-address ()
- (let ((base (expt 36 8)))
diff --git a/dev-lisp/sbcl/sbcl-2.2.9.ebuild b/dev-lisp/sbcl/sbcl-2.2.9.ebuild
index f172b75819cb..50b9982e2bff 100644
--- a/dev-lisp/sbcl/sbcl-2.2.9.ebuild
+++ b/dev-lisp/sbcl/sbcl-2.2.9.ebuild
@@ -22,7 +22,9 @@ BV_SPARC_SOLARIS=1.0.23
DESCRIPTION="Steel Bank Common Lisp (SBCL) is an implementation of ANSI Common Lisp"
HOMEPAGE="https://www.sbcl.org/ http://sbcl.sourceforge.net/"
+BSD_SOCKETS_TEST_PATCH=bsd-sockets-test-2.0.5.patch
SRC_URI="mirror://sourceforge/sbcl/${P}-source.tar.bz2
+ https://dev.gentoo.org/~grozin/${BSD_SOCKETS_TEST_PATCH}.gz
x86? ( mirror://sourceforge/sbcl/${PN}-${BV_X86}-x86-linux-binary.tar.bz2 )
amd64? ( mirror://sourceforge/sbcl/${PN}-${BV_AMD64}-x86-64-linux-binary.tar.bz2 )
ppc? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC}-powerpc-linux-binary.tar.bz2 )
@@ -98,7 +100,7 @@ src_prepare() {
# bug #468482
eapply "${FILESDIR}"/concurrency-test-2.0.1.patch
# bugs #486552, #527666, #517004
- eapply "${FILESDIR}"/bsd-sockets-test-2.0.5.patch
+ eapply "${WORKDIR}"/${BSD_SOCKETS_TEST_PATCH}
# bugs #560276, #561018
eapply "${FILESDIR}"/sb-posix-test-2.2.9.patch
# bug #767742
diff --git a/dev-lisp/sbcl/sbcl-2.3.5.ebuild b/dev-lisp/sbcl/sbcl-2.3.5.ebuild
index 18bc21c6ccd0..c7debd75d223 100644
--- a/dev-lisp/sbcl/sbcl-2.3.5.ebuild
+++ b/dev-lisp/sbcl/sbcl-2.3.5.ebuild
@@ -22,7 +22,9 @@ BV_SPARC_SOLARIS=1.0.23
DESCRIPTION="Steel Bank Common Lisp (SBCL) is an implementation of ANSI Common Lisp"
HOMEPAGE="https://www.sbcl.org/ http://sbcl.sourceforge.net/"
+BSD_SOCKETS_TEST_PATCH=bsd-sockets-test-2.3.1.patch
SRC_URI="mirror://sourceforge/sbcl/${P}-source.tar.bz2
+ https://dev.gentoo.org/~grozin/${BSD_SOCKETS_TEST_PATCH}.gz
!system-bootstrap? (
x86? ( mirror://sourceforge/sbcl/${PN}-${BV_X86}-x86-linux-binary.tar.bz2 )
amd64? ( mirror://sourceforge/sbcl/${PN}-${BV_AMD64}-x86-64-linux-binary.tar.bz2 )
@@ -104,7 +106,7 @@ src_prepare() {
# bug #468482
eapply "${FILESDIR}"/concurrency-test-2.0.1.patch
# bugs #486552, #527666, #517004
- eapply "${FILESDIR}"/bsd-sockets-test-2.3.1.patch
+ eapply "${WORKDIR}"/${BSD_SOCKETS_TEST_PATCH}
# bugs #560276, #561018
eapply "${FILESDIR}"/sb-posix-test-2.2.9.patch
# bug #767742
diff --git a/dev-lisp/sbcl/sbcl-2.3.6.ebuild b/dev-lisp/sbcl/sbcl-2.3.6.ebuild
index ad3c08648211..c6e523e7eeaf 100644
--- a/dev-lisp/sbcl/sbcl-2.3.6.ebuild
+++ b/dev-lisp/sbcl/sbcl-2.3.6.ebuild
@@ -22,7 +22,9 @@ BV_SPARC_SOLARIS=1.0.23
DESCRIPTION="Steel Bank Common Lisp (SBCL) is an implementation of ANSI Common Lisp"
HOMEPAGE="https://www.sbcl.org/ http://sbcl.sourceforge.net/"
+BSD_SOCKETS_TEST_PATCH=bsd-sockets-test-2.3.6.patch
SRC_URI="mirror://sourceforge/sbcl/${P}-source.tar.bz2
+ https://dev.gentoo.org/~grozin/${BSD_SOCKETS_TEST_PATCH}.gz
!system-bootstrap? (
x86? ( mirror://sourceforge/sbcl/${PN}-${BV_X86}-x86-linux-binary.tar.bz2 )
amd64? ( mirror://sourceforge/sbcl/${PN}-${BV_AMD64}-x86-64-linux-binary.tar.bz2 )
@@ -104,7 +106,7 @@ src_prepare() {
# bug #468482
eapply "${FILESDIR}"/concurrency-test-2.0.1.patch
# bugs #486552, #527666, #517004
- eapply "${FILESDIR}"/bsd-sockets-test-2.3.6.patch
+ eapply "${WORKDIR}"/${BSD_SOCKETS_TEST_PATCH}
# bugs #560276, #561018
eapply "${FILESDIR}"/sb-posix-test-2.2.9.patch
# bug #767742