[EMAIL PROTECTED] writes:
> Hi Mikael--
>
> I can (using a build from this am) coredump guile at will. You'll
> need to load my ftplib code (http://pweb.netcom.com/~knotwell/ftplib.scm)
> and run the following commands:
>
> guile> (load "/tmp/ftplib.scm")
> guile> (define mine (ftplib:ftp "localhost"))
> guile> (ftplib:set-transfer-mode 'passive)
> guile> (ftplib:change-directory mine "/pub")
> (#t . "250 CWD command successful.")
Hmm... Before setting up anonymous ftp on my machine I got this:
guile> (load "ftplib.scm")
guile> (define mine (ftplib:ftp "localhost"))
guile> mine
()
guile> (ftplib:set-transfer-mode 'passive)
guile> (ftplib:change-directory mine "/pub")
(wrong-type-arg "display" "Wrong type argument in position ~A: ~S" (2 ()) #f)
I assume that this is due to some bug in your code.
After setting up ftp, I get this:
guile> (load "ftplib.scm")
guile> (define mine (ftplib:ftp "localhost"))
guile> (ftplib:set-transfer-mode 'passive)
guile> (ftplib:change-directory mine "/pub")
(#t . "250 CWD command successful.")
guile> (ftplib:dir-list mine (current-output-port))
Backtrace:
0* [ftplib:dir-list #<input-output: socket 4> ...]
1 (if (output-port? output-port) ((lambda () #)) ...)
...
2 [ftplib:data-op #<input-output: socket 4> "NLST" #<procedure (y x)>]
3 (let* (# #) (ftplib:ftp-cmd control-port cmd-string ftplib:pf-pair ...))
4* [cdr ...
5* [ftplib:get-data-socket #<input-output: socket 4> passive]
6 (letrec (# # # # ...) (cond # # #))
...
7 (begin (connect in-sock AF_INET (car addr) (cdr addr)) (cons #t in-sock))
8* [connect #<input-output: socket 5> 2 2130706433 2250.0]
ftplib.scm:196:15: In procedure connect in expression (connect in-sock AF_INET ...):
ftplib.scm:196:15: Wrong type argument in position 4: 2250.0
ABORT: (wrong-type-arg)
Again, this seems to be a bug in your code (port number is a real).
We have recently had a great improvement regarding argument checking,
mostly due to the work of Greg Badros and Dirk Herrmann. It seems
that the real passed to `connect' could have caused a crash in an
earlier version of Guile.
Are you sure you are using the latest version of the library?
In any case: Since I can't reproduce your bug, I can't do anything.
Also, if the bug persists it would be good if you could try to isolate
it, so that you can reproduce it with the tiniest amount of code.
Best regards,
/mdj