anchor.diff:      (otherwise (:list wcc-data wcc-data))))
   
   (defun call-rename (from-dhandle from-filename to-filename &key to-dhandle (host *nfs-host*) (port *nfs-port*) protocol)
  -  (%call-rename (list (make-dir-op-args3 :dir from-dhandle 
  -					 :name from-filename)
  -		      (make-dir-op-args3 :dir (or to-dhandle from-dhandle)
  -					 :name to-filename))
  -		:host host
  -		:port port
  -		:protocol protocol))
  +  (let ((res (%call-rename (list (make-dir-op-args3 :dir from-dhandle 
  +						    :name from-filename)
  +				 (make-dir-op-args3 :dir (or to-dhandle from-dhandle)
  +						    :name to-filename))
  +			   :host host
  +			   :port port
  +			   :protocol protocol)))
  +    (if (eq (xunion-tag res) :ok)
  +	(destructuring-bind (wcc1 wcc2) (xunion-val res)
  +	  (values wcc1 wcc2))
  +	(error "RENAME failed: ~A" (xunion-tag res)))))
   
   (defhandler %handle-rename (args 14)
     (destructuring-bind (from to) args
  
positive.code: ;;  ((:ok get-attr-res-ok)
  ;;   (otherwise :void)))
  
  (defrpc %call-getattr 1 
    nfs-fh3 
    (:union nfs-stat3
      (:ok fattr3)
      (otherwise :void)))
  
  (defun call-getattr (handle &key (host *nfs-host*) (port *nfs-port*) protocol)
    (let ((res (%call-getattr handle :host host :port port :protocol protocol)))
      (if (eq (xunion-tag res) :ok)
  	(xunion-val res)
  	(error "GETATTR failed: ~A" (xunion-tag res)))))
   
  (defhandler %handle-getattr (fh 1)
    (let ((handle (find-handle fh)))
      (if handle
  	(make-xunion :ok
  
negative.code:    (name filename3)
     (cookie cookie3 0)
     (attrs post-op-attr)
     (handle post-op-fh3)))
  
  (defxstruct %entry3-plus ()
    ((entry entry3-plus)
     (next-entry (:optional %entry3-plus))))
  
  (defxstruct dir-list3-plus ()
    ((entries (:optional %entry3-plus))
     (eof :boolean)))
  
  ;; READDIRPLUS3res NFSPROC3_READDIRPLUS(READDIRPLUS3args) = 17;
  