anchor.diff:  	  ccl::*terminal-output* ccl::*stdout*
   	  ccl::*terminal-io* (make-two-way-stream 
   			      ccl::*terminal-input* ccl::*terminal-output*))
  -    (let ((write (popen "/dev/null" *o-rdonly*)))
  -      (dup2 write 0)
  -      (dup2 write 2))
  -    (dup2 (popen "/dev/null" (logior *o-wronly*
  -				     *o-append*)) 1))
  +    (dup2 (popen "/dev/null" *o-rdonly*) 0)
  +    (dup2 (popen "/dev/null" (logior *o-wronly* *o-append*)) 1)
  +    (dup2 (popen "/dev/null" *o-rdonly*) 2))
     #+allegro 
  -  (excl.osi:detach-from-terminal))
  +  (excl.osi:detach-from-terminal :output-stream nil :error-output-stream nil))
   
   (defun daemonize (&key input output error (umask +default-mask+) pidfile
   		  exit-parent (exit-hook t) (disable-debugger t)
   		  user group
   		  sigabrt sighup sigint sigterm)
  -  (declare (ignorable input output error pidfile exit-hook disable-debugger group sigabrt sighup sigint sigterm))
  +  (declare (ignorable exit-hook disable-debugger sigabrt sighup sigint sigterm))
  +  (when pidfile
  +    (ignore-errors (delete-file pidfile)))
     (let ((uid (typecase user
   	       (string
   		(or (passwd-uid (getpwnam user))
  
positive.code:   #+allegro (excl.osi:pwent-dir pswd)
    #+ccl (ccl:%get-cstring(ccl:pref pswd :passwd.pw_dir)))
  
  ;; I have to change this function's name...
  (defun close-fd-streams ()
    #-allegro
    (progn 
      (chdir "/")
      #+sbcl
      (progn
        (setf sb-sys:*stdin* (make-concatenated-stream))
  
negative.code:   #+allegro (excl.osi:getuid)
    #+ccl (#.(read-from-string "#_getuid")))
  
  (defun getgrnam (name)
    #+sbcl (sb-posix:getgrnam name)
    #+allegro (excl.osi:getgrnam name)
    #+ccl (ccl::with-cstrs ((cstr name)) (#.(read-from-string "#_getgrnam") cstr)))
  
  (defun setgid (gid)
    #+sbcl (sb-posix:setgid gid)
    #+allegro (excl.osi:setgid gid)
    #+ccl (#.(read-from-string "#_setgid") gid))
  
  (defun getgrgid (gid)
    #+sbcl (sb-posix:getgrgid gid)
    #+allegro (excl.osi:getgrgid gid)
    #+ccl (#.(read-from-string "#_getgrgid") gid))
  
  (defun group-gid (grp)
    #+sbcl (sb-posix:group-gid grp)
    #+allegro (excl.osi:grent-gid grp)
    #+ccl (unless (ccl:%null-ptr-p grp) (ccl:pref grp :group.gr_gid)))
  
  (defun getpwnam (name)
    #+sbcl (sb-posix:getpwnam name)
    #+allegro (excl.osi:getpwnam name)
  