anchor.diff:  (defun ifdown (nic)
     (setf (getf *ipv4-interfaces* nic) nil))
   
  -(defun ipv4-interface-address (nic)
  +(defun ipv4-interface-address (nic &optional (errorp t))
     (or (getf *ipv4-interfaces* nic)
  -      (error "No IPv4 address for interface ~S." nic)))
  +      (and errorp
  +           (error "No IPv4 address for interface ~S." nic))))
   
   ;;; The ARP table is a list of lists. Each list holds:
   ;;; (protocol-type protocol-address network-address age)
  
positive.code: 	 (tha-start (+ spa-start plen))
  	 (tpa-start (+ tha-start hlen))
  	 (packet-end (+ tpa-start plen))
  	 (merge-flag nil))
      ;; Ethernet hardware type and IPv4.
      (when (and (eql htype +arp-hrd-ethernet+) (eql hlen 6)
  	       (eql ptype +ethertype-ipv4+) (eql plen 4))
  
negative.code: 	    (setf (third e) (subseq packet sha-start spa-start)
  		  merge-flag t)
  	    (return)))
  	(when (and address (eql tpa address))
  	  (unless merge-flag
  	    (push (list ptype spa (subseq packet sha-start spa-start) 0) *arp-table*))
  	  (when (eql oper +arp-op-request+)
  