diff options
Diffstat (limited to 'testsuites/libtests/devfs02/init.c')
-rw-r--r-- | testsuites/libtests/devfs02/init.c | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/testsuites/libtests/devfs02/init.c b/testsuites/libtests/devfs02/init.c deleted file mode 100644 index 3e136972b3..0000000000 --- a/testsuites/libtests/devfs02/init.c +++ /dev/null @@ -1,108 +0,0 @@ -/* - * COPYRIGHT (c) 1989-2012. - * On-Line Applications Research Corporation (OAR). - * - * Modifications to support reference counting in the file system are - * Copyright (c) 2012 embedded brains GmbH. - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#ifdef HAVE_CONFIG_H - #include "config.h" -#endif - -#include "test_support.h" - -#include <tmacros.h> -#include <errno.h> -#include <unistd.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> - -#include <rtems/devfs.h> -#include <rtems/malloc.h> - -const char rtems_test_name[] = "DEVFS 2"; - -/* forward declarations to avoid warnings */ -rtems_task Init(rtems_task_argument argument); - -rtems_task Init( - rtems_task_argument argument -) -{ - int status; - rtems_filesystem_location_info_t *rootloc = &rtems_filesystem_root->location; - const devFS_data *data = rootloc->mt_entry->immutable_fs_info; - devFS_data zero_count_data = { - .nodes = data->nodes, - .count = 0 - }; - void *opaque; - - TEST_BEGIN(); - - puts( "Init - attempt to create a fifo - expect ENOTSUP" ); - status = mkfifo( "/fifo01", 0 ); - rtems_test_assert( status == -1 ); - rtems_test_assert( errno == ENOTSUP ); - - /* Manipulate the device table size */ - puts( "Init - set device table size to zero" ); - rootloc->mt_entry->immutable_fs_info = &zero_count_data; - - puts( "Init - attempt to create a node - expect ENOSPC" ); - status = mknod( "/node", S_IFBLK, 0LL ); - rtems_test_assert( status == -1 ); - rtems_test_assert( errno == ENOSPC ); - - /* Now restore */ - puts( "Init - restore device table size" ); - rootloc->mt_entry->immutable_fs_info = data; - - opaque = rtems_heap_greedy_allocate( NULL, 0 ); - - puts( "Init - attempt to create a node - expect ENOMEM" ); - status = mknod( "/node", S_IFBLK, 0LL ); - rtems_test_assert( status == -1 ); - rtems_test_assert( errno == ENOMEM ); - - rtems_heap_greedy_free( opaque ); - - puts( "Init - attempt to create /node -- OK" ); - status = mknod( "/node", S_IFBLK, 0LL ); - rtems_test_assert( status == 0 ); - - puts( "Init - attempt to create /node - expect EEXIST" ); - status = mknod( "/node", S_IFBLK, 0LL ); - rtems_test_assert( status == -1 ); - rtems_test_assert( errno == EEXIST ); - - TEST_END(); - - rtems_test_exit(0); -} - -/* configuration information */ - -#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 1 -#define CONFIGURE_INITIAL_EXTENSIONS RTEMS_TEST_INITIAL_EXTENSION - -#define CONFIGURE_RTEMS_INIT_TASKS_TABLE - -#define CONFIGURE_MAXIMUM_FILE_DESCRIPTORS 2 - -/* Make sure that we have enough devices for all BSPs */ -#define CONFIGURE_MAXIMUM_DEVICES 64 - -#define CONFIGURE_USE_DEVFS_AS_BASE_FILESYSTEM - -#define CONFIGURE_INIT -#include <rtems/confdefs.h> -/* end of file */ |