diff options
Diffstat (limited to '')
-rw-r--r-- | c/src/exec/libnetworking/ChangeLog | 6 | ||||
-rw-r--r-- | c/src/exec/libnetworking/lib/tftpDriver.c | 2 | ||||
-rw-r--r-- | c/src/libnetworking/ChangeLog | 6 | ||||
-rw-r--r-- | c/src/libnetworking/lib/tftpDriver.c | 2 | ||||
-rw-r--r-- | cpukit/libnetworking/ChangeLog | 6 | ||||
-rw-r--r-- | cpukit/libnetworking/lib/tftpDriver.c | 2 |
6 files changed, 21 insertions, 3 deletions
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 <eric.norum@usask.ca> + + * 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 <eric.norum@usask.ca> * 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 <eric.norum@usask.ca> + + * 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 <eric.norum@usask.ca> * 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); diff --git a/cpukit/libnetworking/ChangeLog b/cpukit/libnetworking/ChangeLog index b53bf7ff43..9c60e8f2b3 100644 --- a/cpukit/libnetworking/ChangeLog +++ b/cpukit/libnetworking/ChangeLog @@ -1,3 +1,9 @@ +2001-12-18 Eric Norum <eric.norum@usask.ca> + + * 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 <eric.norum@usask.ca> * lib/tftpDriver.c: Restore write capability. diff --git a/cpukit/libnetworking/lib/tftpDriver.c b/cpukit/libnetworking/lib/tftpDriver.c index bafaaa5fc5..e3367177c6 100644 --- a/cpukit/libnetworking/lib/tftpDriver.c +++ b/cpukit/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); |