diff options
author | Till Straumann <strauman@slac.stanford.edu> | 2008-05-30 23:21:06 +0000 |
---|---|---|
committer | Till Straumann <strauman@slac.stanford.edu> | 2008-05-30 23:21:06 +0000 |
commit | 9cf3432cc488d64cf958186b7b9e9923ff79cf3c (patch) | |
tree | 695abf0c2db41c45cffdb86e1ec3e107410c34c0 /cpukit | |
parent | 2008-05-29 Chris Johns <chrisj@rtems.org> (diff) | |
download | rtems-9cf3432cc488d64cf958186b7b9e9923ff79cf3c.tar.bz2 |
2008-05-30 Till Straumann <strauman@slac.stanford.edu>
* libfs/src/nfsclient/src/nfs.c:BUGFIX: must not attempt to
release node if rtems_filesystem_evaluate_path() fails
in nfs_eval_link() since pathloc contains no valid node.
Diffstat (limited to 'cpukit')
-rw-r--r-- | cpukit/ChangeLog | 6 | ||||
-rw-r--r-- | cpukit/libfs/src/nfsclient/src/nfs.c | 5 |
2 files changed, 11 insertions, 0 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog index 5e8467a64d..83d44e38a7 100644 --- a/cpukit/ChangeLog +++ b/cpukit/ChangeLog @@ -1,3 +1,9 @@ +2008-05-30 Till Straumann <strauman@slac.stanford.edu> + + * libfs/src/nfsclient/src/nfs.c:BUGFIX: must not attempt to + release node if rtems_filesystem_evaluate_path() fails + in nfs_eval_link() since pathloc contains no valid node. + 2008-05-27 Joel Sherrill <joel.sherrill@oarcorp.com> * libmisc/shell/shell_getchar.c: Minor change so dropping connection diff --git a/cpukit/libfs/src/nfsclient/src/nfs.c b/cpukit/libfs/src/nfsclient/src/nfs.c index 3983e77b9f..62160886d1 100644 --- a/cpukit/libfs/src/nfsclient/src/nfs.c +++ b/cpukit/libfs/src/nfsclient/src/nfs.c @@ -2401,6 +2401,11 @@ int rval = RVAL_ERR_AND_DO_FREENODE; rtems_filesystem_freenode(pathloc); if (rtems_filesystem_evaluate_path(buf, flags, pathloc, 1)) { + /* If evalpath fails then there is no valid node + * attached to pathloc; hence we must not attempt + * to free the node + */ + rval = RVAL_ERR_BUT_DONT_FREENODE; goto cleanup; } } |