anchor.diff:  (defvar *illegal-characters* ".<>\\/")
   
   (defclass local-file-host ()
  -  ((name :initarg :name :reader host-name)
  -   (root :reader local-host-root)
  -   (lock :initarg :lock :reader local-host-lock))
  +  ((%name :initarg :name :reader host-name)
  +   (%root :reader local-host-root)
  +   (%lock :initarg :lock :reader local-host-lock))
     (:default-initargs :lock (mezzano.supervisor:make-mutex "Local File Host lock")))
   
   (defmethod initialize-instance :after ((instance local-file-host) &key &allow-other-keys)
  
positive.code:            :pathname pathname
             :format-control "Cannot open directories for output."))
    (with-host-locked (host)
      (let ((dir (do ((element (rest (pathname-directory pathname)) (cdr element))
                      (dir (local-host-root host)))
                     ((endp element)
                      dir)
                   (let ((next (read-directory-entry dir (car element) "directory")))
                     (when (not next)
                       (error 'simple-file-error
                              :pathname pathname
                              :format-control "Subdirectory ~S does not exist."
                              :format-arguments (list element)))
                     (setf dir next)))))
        (let ((file (read-directory-entry dir (pathname-name pathname) (pathname-type pathname) (pathname-version pathname)))
              (createdp nil))
          (when (not file)
            (ecase if-does-not-exist
              (:error (error 'simple-file-error
                             :pathname pathname
                             :format-control "File ~A does not exist."
                             :format-arguments (list pathname)))
              (:create
               (setf file (make-file dir pathname element-type)
                     createdp t))
              ((nil) (return-from open-using-host nil))))
          (when (and (not createdp)
                     (member direction '(:output :io)))
            (ecase if-exists
              (:error (error 'simple-file-error
                             :pathname pathname
                             :format-control "File ~A exists."
                             :format-arguments (list pathname)))
              (:new-version
               (setf file (make-file dir
                                     (make-pathname :version :newest
                                                    :defaults pathname)
                                     element-type)))
              (:rename
               ???)
              (:rename-and-delete
               ???)
              (:supersede
               ???)
              ((:overwrite :append)
               ???)
              ((nil) (return-from open-using-host nil))))
          (when (and (not (eql direction :probe))
                     (not (equal (upgraded-array-element-type element-type)
                                 (array-element-type (file-storage file)))))
            (error "Incompatible ELEMENT-TYPE. File is of type ~S."
                   (array-element-type (file-storage file))))
          (make-instance 'local-stream
                         :file file
                         :pathname pathname
                         :position (if (and (member direction '(:output :io))
                                            (eql if-exists :append))
                                       (length (file-storage file))
                                       0)
                         :direction direction)))))
  
  (defmethod file-write-date-using-host ((host local-file-host) pathname)
    (when (not (typep (pathname-directory pathname) '(cons (eql :absolute))))
  
negative.code:                               :storage (make-array 1 :initial-element (make-hash-table :test 'equalp))
                                :plist (list :creation-time time
                                             :write-time time))))
      (setf (slot-value instance '%root) file)))
  
  (defclass local-file ()
    ((%truename :initarg :truename :accessor file-truename)
  