Subject: Re: ncftp?
To: Jonathan Stone <jonathan@DSG.Stanford.EDU>
From: Jorgen Pehrson <jp@spektr.ludvika.se>
List: port-pmax
Date: 04/19/1998 13:40:44
On Sat, 18 Apr 1998, Jonathan Stone wrote:

> Which version of NetbSD are you running?

1.3

> If ncurses is built as a shared library and it redefines symbols in
> libc, then you wil trip over the multiple-symbol bug.  This is fixed
> with the newer ld.so in 1.3.1 and with ld.elf_so in -current.

No, ncurses was built as a .a library..

> If you're running 1.3, a temporary workaround is to build ncftp
> statically linked.

But I used gdb to look where  things went wrong. And I discovered that if
I didn't have a ~/.ncftp/bookmarks file ncftp would seg fault. But if I
touched the bookmarks file ncftp worked fine..

$ gdb ./ncftp
...
(gdb) info stack
#0 0x20123798 in ?? ()
#1 0x40d4e8 in ReadBookmarkFile () at Bookmark.c:491
Error accessing memory address 0x670: Operation not permitted.


Bookmark.c:

[...]
void ReadBookmarkFile(void)
{
	string pathName;
	string path2;
	FILE *fp;
	longstring line;
	int version;
	Bookmark newRsi;

	if (gOurDirectoryPath[0] == '\0')
		return;		/* Don't create in root directory. */
	OurDirectoryPath(pathName, sizeof(pathName), kBookmarkFileName);
	fp = fopen(pathName, "r");
	if (fp == NULL) {
		OurDirectoryPath(path2, sizeof(path2), kOldBookmarkFileName);
/* The next line is 491...*/
		if (rename(path2, pathName) == 0) {
			/* Rename succeeded, now open it. */
			fp = fopen(pathName, "r");
			if (fp == NULL)
				return;
		}
		return;		/* Okay to not have one yet. */
	}


Strange if it's only me having had problems with that. I must have done
something wrong...

--
Jorgen Pehrson                  HP 9000/380 (NetBSD/hp300 1.3)
jp@spektr.ludvika.se            DECstation 5000/200 (NetBSD/pmax 1.3)
http://spektr.ludvika.se/museum VAXstation 2000 (VMS 5.5-2)