[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
TCP bug
We have been experiencing problems with our CHAOS hardware and as a
result have started using IP-TCP to access our TOPS-20 host. A problem
appears when doing a (make-system 'foo). I get thrown into the
debugger with a complaint about "Version not numeric". I tracked the
problem down to the following function in file
mcc:<symbolics.rel6.ip-tcp>tcp-ftp.lisp:
(defun tcp-ftp-parse-truename (string pathname)
(let ((fs:*inhibit-validity-checking* t))
(fs:merge-pathnames (fs:parse-pathname string (send pathname :host)) pathname)))
The string argument in was a TOPS-20 pathname without a host (ie.
<symbolics.site>foo.system.1). The pathname argument was a logical
pathname object (ie. SYS: Site; foo lisp newest). Merge pathnames
couldn't correctly parse the real pathname as a logical pathname. It
decided to parse it as a logical pathname due to the type of the host it
was passed.
Here is what I did to make it work:
(defun tcp-ftp-parse-truename (string pathname)
(let ((fs:*inhibit-validity-checking* t))
(fs:merge-pathnames (fs:parse-pathname string (send (send pathname :translated-pathname) :host)) pathname)))
Is this the right fix?
Mac Michaels