Subject: tftpd: writing files with relative pathnames?
To: None <current-users@netbsd.org>
From: Michael K. Sanders <msanders@confusion.net>
List: current-users
Date: 10/26/1998 13:11:08
In trying to copy a file from a Cisco router to a NetBSD tftp server
recently, I kept getting an 'Access violation', even though the same
steps for transferring worked on a FreeBSD system.  After looking
through the source, I discovered that it was because of this check in
tftpd.c:

	/*
	 * Relative file name: search the approved locations for it.
	 * Don't allow write requests or ones that avoid directory
	 * restrictions.
	 */

	if (mode != RRQ || !strncmp(filename, "../", 3))
	    return (EACCESS);

After changing the file name to use an absolute path, the transfer
went fine, but I'm wondering why writes of relative files are
disallowed...