From 82eb2c4d5f89893d35c841387fa8631ed31364ab Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 22 Nov 2012 14:08:38 +0100 Subject: [PATCH] ftpfs: Fix NULL pointer access --- cpukit/libnetworking/lib/ftpfs.c | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/cpukit/libnetworking/lib/ftpfs.c b/cpukit/libnetworking/lib/ftpfs.c index 5ba7515400..6ce25435c5 100644 --- a/cpukit/libnetworking/lib/ftpfs.c +++ b/cpukit/libnetworking/lib/ftpfs.c @@ -1148,16 +1148,20 @@ static void rtems_ftpfs_eval_path( static void rtems_ftpfs_free_node(const rtems_filesystem_location_info_t *loc) { rtems_ftpfs_entry *e = loc->node_access; - const rtems_ftpfs_mount_entry *me = loc->mt_entry->fs_info; - /* Close control connection if necessary */ - if (e->ctrl_socket >= 0) { - rtems_ftpfs_send_command(e, "QUIT", NULL, me->verbose); + /* The root node handler has no entry */ + if (e != NULL) { + const rtems_ftpfs_mount_entry *me = loc->mt_entry->fs_info; - close(e->ctrl_socket); + /* Close control connection if necessary */ + if (e->ctrl_socket >= 0) { + rtems_ftpfs_send_command(e, "QUIT", NULL, me->verbose); + + close(e->ctrl_socket); + } + + free(e); } - - free(e); } static rtems_filesystem_node_types_t rtems_ftpfs_node_type(