Subject: CVS commit: othersrc/libexec/tnftpd/libnetbsd
To: None <source-changes@NetBSD.org>
From: Luke Mewburn <lukem@netbsd.org>
List: source-changes
Date: 12/16/2003 00:18:53
Module Name:	othersrc
Committed By:	lukem
Date:		Tue Dec 16 00:18:53 UTC 2003

Modified Files:
	othersrc/libexec/tnftpd/libnetbsd: fts_open.c

Log Message:
* Apply changes from src/lib/libc/gen/__fts13.c revs 1.33-1.36:
  1.33	Fix problem reported by Kris Kennaway <kris@obsecurity.org>; In
	the default case fts(3) uses chdir("..") to ascend the tree.  The
	sequence of chdir's can be intercepted by a malicious user who
	moves a subtree that fts is currently traversing to a higher level,
	thus making fts operate outside it's original starting
	directory.
  1.34	oops, make sure we close the file descriptor...
  1.35	add fts_safe_changedir() function and use it everywhere.
	Idea from Todd Miller <millert@openbsd.org>
  1.36	using -Wcast-qual and -Wwrite-strings reveals that we need to use const
	char * when we pass "" as an argument to a function. Too bad that they
	produce too many other spurious warnings too.

* Rework d_namlen autoconf check to be similar to rev 1.39 (even
  though tnftpd uses a different #define)

* Remove ALIGN() and ALIGNBYTES() replacements with a variation of rev
  1.37 src/tools/compat changes.
  The previous ALIGN() hack was faulty for Tru64 (and other LP64 platforms;
  which most likely explains the problems on IRIX with inbuilt ls).
  Thanks to Onno van der Linden for the "heads up" on this issue.


To generate a diff of this commit:
cvs rdiff -r1.2 -r1.3 othersrc/libexec/tnftpd/libnetbsd/fts_open.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.