diff options
Diffstat (limited to '')
-rw-r--r-- | cpukit/libfs/src/devfs/devfs.h | 1 | ||||
-rw-r--r-- | cpukit/libfs/src/devfs/devfs_eval.c | 3 | ||||
-rw-r--r-- | cpukit/libfs/src/devfs/devstat.c | 2 |
3 files changed, 4 insertions, 2 deletions
diff --git a/cpukit/libfs/src/devfs/devfs.h b/cpukit/libfs/src/devfs/devfs.h index b065489455..2a666204d3 100644 --- a/cpukit/libfs/src/devfs/devfs.h +++ b/cpukit/libfs/src/devfs/devfs.h @@ -195,6 +195,7 @@ extern int devFS_node_type( extern int devFS_evaluate_path( const char *pathname, + int pathnamelen, int flags, rtems_filesystem_location_info_t *pathloc ); diff --git a/cpukit/libfs/src/devfs/devfs_eval.c b/cpukit/libfs/src/devfs/devfs_eval.c index 5d9423b007..dd69fd802d 100644 --- a/cpukit/libfs/src/devfs/devfs_eval.c +++ b/cpukit/libfs/src/devfs/devfs_eval.c @@ -17,6 +17,7 @@ int devFS_evaluate_path( const char *pathname, + int pathnamelen, int flags, rtems_filesystem_location_info_t *pathloc ) @@ -37,7 +38,7 @@ int devFS_evaluate_path( for (i = 0; i < rtems_device_table_size; i++){ if ((device_name_table[i].device_name) && - (strcmp(device_name_table[i].device_name, pathname) == 0)){ + (strncmp(pathname, device_name_table[i].device_name, pathnamelen) == 0)){ /* find the device, set proper values */ pathloc->node_access = (void *)&device_name_table[i]; pathloc->handlers = &devFS_file_handlers; diff --git a/cpukit/libfs/src/devfs/devstat.c b/cpukit/libfs/src/devfs/devstat.c index 6c6ee3e6b1..7bfdfec00c 100644 --- a/cpukit/libfs/src/devfs/devstat.c +++ b/cpukit/libfs/src/devfs/devstat.c @@ -30,7 +30,7 @@ int devFS_stat( if (!the_dev) rtems_set_errno_and_return_minus_one( EFAULT ); - buf->st_dev = rtems_filesystem_make_dev_t( the_dev->major, the_dev->minor ); + buf->st_rdev = rtems_filesystem_make_dev_t( the_dev->major, the_dev->minor ); buf->st_mode = the_dev->mode; |