Index: level-1/linux-files.lisp
===================================================================
--- level-1/linux-files.lisp	(revision 8002)
+++ level-1/linux-files.lisp	(working copy)
@@ -684,6 +684,7 @@
 
 (defun get-descriptor-for (object proc close-in-parent close-on-error
 				  &rest keys &key direction (element-type 'character)
+                                  (sharing :private)
 				  &allow-other-keys)
   (etypecase object
     ((eql t)
@@ -704,6 +705,7 @@
 		  (make-fd-stream write-pipe
 				  :direction :output
                                   :element-type element-type
+                                  :sharing sharing
 				  :interactive nil
                                   :basic t)
 		  (cons read-pipe close-in-parent)
@@ -713,6 +715,7 @@
 		  (make-fd-stream read-pipe
 				  :direction :input
                                   :element-type element-type
+                                  :sharing sharing
 				  :interactive nil
                                   :basic t)
 		  (cons write-pipe close-in-parent)
@@ -877,6 +880,7 @@
 			    output (if-output-exists :error)
 			    (error :output) (if-error-exists :error)
 			    status-hook (element-type 'character)
+                            (sharing :private)
                             env)
   "Invoke an external program as an OS subprocess of lisp."
   (declare (ignore pty))
@@ -907,19 +911,22 @@
 	   (multiple-value-setq (in-fd in-stream close-in-parent close-on-error)
 	     (get-descriptor-for input proc  nil nil :direction :input
 				 :if-does-not-exist if-input-does-not-exist
-                                 :element-type element-type))
+                                 :element-type element-type
+                                 :sharing sharing))
 	   (multiple-value-setq (out-fd out-stream close-in-parent close-on-error)
 	     (get-descriptor-for output proc close-in-parent close-on-error
 				 :direction :output
 				 :if-exists if-output-exists
-                                 :element-type element-type))
+                                 :element-type element-type
+                                 :sharing sharing))
 	   (multiple-value-setq (error-fd error-stream close-in-parent close-on-error)
 	     (if (eq error :output)
 	       (values out-fd out-stream close-in-parent close-on-error)
 	       (get-descriptor-for error proc close-in-parent close-on-error
 				   :direction :output
 				   :if-exists if-error-exists
-                                   :element-type element-type)))
+                                   :element-type element-type
+                                   :sharing sharing)))
 	   (setf (external-process-input proc) in-stream
                  (external-process-output proc) out-stream
                  (external-process-error proc) error-stream)
