(defun close-active-socket (socket)
(close socket))
-#+sbcl
(defun ipaddr-to-dotted (ipaddr &key values)
"Convert from 32-bit integer to dotted string."
(declare (type (unsigned-byte 32) ipaddr))
(values a b c d)
(format nil "~d.~d.~d.~d" a b c d))))
-#+sbcl
(defun dotted-to-ipaddr (dotted &key (errorp t))
"Convert from dotted string to 32-bit integer."
(declare (string dotted))
(if errorp
(let ((ll (delimited-string-to-list dotted #\.)))
- (+ (ash (first ll) 24) (ash (second ll) 16)
- (ash (third ll) 8) (fourth ll)))
+ (+ (ash (parse-integer (first ll)) 24)
+ (ash (parse-integer (second ll)) 16)
+ (ash (parse-integer (third ll)) 8)
+ (parse-integer (fourth ll))))
(ignore-errors
(let ((ll (delimited-string-to-list dotted #\.)))
- (+ (ash (first ll) 24) (ash (second ll) 16)
- (ash (third ll) 8) (fourth ll))))))
+ (+ (ash (parse-integer (first ll)) 24)
+ (ash (parse-integer (second ll)) 16)
+ (ash (parse-integer (third ll)) 8)
+ (parse-integer (fourth ll)))))))
#+sbcl
(defun ipaddr-to-hostname (ipaddr &key ignore-cache)
sock :input t :output t :element-type 'base-char)
sock))
#+cmu
- (let ((sock (ext:connect-to-inet-socket host port)))
+ (let ((sock (ext:connect-to-inet-socket server port)))
(values
(sys:make-fd-stream sock :input t :output t :element-type 'base-char)
sock))
#+openmcl
- (let ((sock (ccl:make-socket :remote-host host :remote-port port )))
+ (let ((sock (ccl:make-socket :remote-host server :remote-port port )))
(values sock sock))
)