X-Git-Url: https://git.distorted.org.uk/~mdw/zone/blobdiff_plain/32ebbe9b0fcc1a698c6ffec760259c5f7e953a9d..b496b60f441cf9b91de3a9eecafc3c253c8ca458:/net.lisp diff --git a/net.lisp b/net.lisp index c8852f9..1e32684 100644 --- a/net.lisp +++ b/net.lisp @@ -156,8 +156,8 @@ (eq (class-of addr-a) (class-of addr-b)))) (defun guess-address-class (str &key (start 0) (end nil)) - (declare (ignore str start end)) - 'ip4addr) + (cond ((position #\: str :start start :end end) 'ip6addr) + (t 'ip4addr))) (defgeneric parse-partial-ipaddr (class str &key start end min max) (:method ((object t) str &rest keywords) @@ -244,7 +244,7 @@ (let ((w (ipaddr-width addr))) (if (<= 0 mask w) (integer-netmask w mask) - (error "Mask out of range."))))) + (error "Prefix length out of range."))))) (export 'mask-ipaddr) (defun mask-ipaddr (addr mask)