From 2539cdcd28f13a5ad7f93f73c1308e1e7119d7ab Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Wed, 19 Dec 2001 18:11:07 +0000 Subject: 2001-12-18 Eric Norum * lib/tftpDriver.c: Allow chdir() to work on TFTP `directories' (path names with a / at the end) while disallowing open() operations on TFTP `directories'. --- c/src/exec/libnetworking/ChangeLog | 6 ++++++ c/src/exec/libnetworking/lib/tftpDriver.c | 2 +- c/src/libnetworking/ChangeLog | 6 ++++++ c/src/libnetworking/lib/tftpDriver.c | 2 +- 4 files changed, 14 insertions(+), 2 deletions(-) (limited to 'c/src') diff --git a/c/src/exec/libnetworking/ChangeLog b/c/src/exec/libnetworking/ChangeLog index b53bf7ff43..9c60e8f2b3 100644 --- a/c/src/exec/libnetworking/ChangeLog +++ b/c/src/exec/libnetworking/ChangeLog @@ -1,3 +1,9 @@ +2001-12-18 Eric Norum + + * lib/tftpDriver.c: Allow chdir() to work on TFTP `directories' + (path names with a / at the end) while disallowing open() operations + on TFTP `directories'. + 2001-12-07 Eric Norum * lib/tftpDriver.c: Restore write capability. diff --git a/c/src/exec/libnetworking/lib/tftpDriver.c b/c/src/exec/libnetworking/lib/tftpDriver.c index bafaaa5fc5..e3367177c6 100644 --- a/c/src/exec/libnetworking/lib/tftpDriver.c +++ b/c/src/exec/libnetworking/lib/tftpDriver.c @@ -507,7 +507,7 @@ static int rtems_tftp_eval_path( /* * Reject attempts to open() directories */ - if (flags) + if (flags & RTEMS_LIBIO_PERMS_RDWR) set_errno_and_return_minus_one( EISDIR ); if (isRelative) { cp = malloc (strlen(pathloc->node_access)+strlen(pathname)+1); diff --git a/c/src/libnetworking/ChangeLog b/c/src/libnetworking/ChangeLog index b53bf7ff43..9c60e8f2b3 100644 --- a/c/src/libnetworking/ChangeLog +++ b/c/src/libnetworking/ChangeLog @@ -1,3 +1,9 @@ +2001-12-18 Eric Norum + + * lib/tftpDriver.c: Allow chdir() to work on TFTP `directories' + (path names with a / at the end) while disallowing open() operations + on TFTP `directories'. + 2001-12-07 Eric Norum * lib/tftpDriver.c: Restore write capability. diff --git a/c/src/libnetworking/lib/tftpDriver.c b/c/src/libnetworking/lib/tftpDriver.c index bafaaa5fc5..e3367177c6 100644 --- a/c/src/libnetworking/lib/tftpDriver.c +++ b/c/src/libnetworking/lib/tftpDriver.c @@ -507,7 +507,7 @@ static int rtems_tftp_eval_path( /* * Reject attempts to open() directories */ - if (flags) + if (flags & RTEMS_LIBIO_PERMS_RDWR) set_errno_and_return_minus_one( EISDIR ); if (isRelative) { cp = malloc (strlen(pathloc->node_access)+strlen(pathname)+1); -- cgit v1.2.3