summaryrefslogtreecommitdiffstats
path: root/cpukit/libfs/src/dosfs/msdos_mknod.c
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2009-04-29 08:31:27 +0000
committerChris Johns <chrisj@rtems.org>2009-04-29 08:31:27 +0000
commit07d6fd513f1c4d3c6905c880948671de1181fac2 (patch)
tree4dabf3fdd0b056bba7b0e9beb40f01277e5c2776 /cpukit/libfs/src/dosfs/msdos_mknod.c
parent2009-04-28 Chris Johns <chrisj@rtems.org> (diff)
downloadrtems-07d6fd513f1c4d3c6905c880948671de1181fac2.tar.bz2
2009-04-29 Chris Johns <chrisj@rtems.org>
* libcsupport/include/rtems/libio.h: Add rtems_off64_t for internal use. Update the internal off_t to the 64bit offset. * libnetworking/lib/ftpfs.c, libnetworking/lib/tftpDriver.c, libfs/src/nfsclient/src/nfs.c, libfs/src/imfs/imfs_fifo.c, libfs/src/imfs/memfile.c, libfs/src/imfs/imfs_directory.c, libfs/src/imfs/imfs.h, libfs/src/imfs/deviceio.c: Change off_t to rtems_off64_t. * libmisc/shell/main_msdosfmt.c: Add an info level so the format code can tell the user what is happening. Add more options to control the format configuration. * libfs/src/dosfs/msdos_format.c: Add a print function to display the format progress and print statements. Select a better default cluster size depending on the size of the disk. This lowers the size of the FAT on large disks. Read and maintain the MRB partition information. * libfs/src/dosfs/dosfs.h, libfs/src/dosfs/fat.h, libfs/src/dosfs/fat_file.c, libfs/src/dosfs/fat_file.h, libfs/src/dosfs/msdos.h, libfs/src/dosfs/msdos_conv.c, libfs/src/dosfs/msdos_create.c, libfs/src/dosfs/msdos_file.c, libfs/src/dosfs/msdos_handlers_dir.c, libfs/src/dosfs/msdos_handlers_file.c, libfs/src/dosfs/msdos_init.c, libfs/src/dosfs/msdos_initsupp.c, libfs/src/dosfs/msdos_misc.c, libfs/src/dosfs/msdos_mknod.c: Add long file name support. Change off_t to rtems_off64_t.
Diffstat (limited to 'cpukit/libfs/src/dosfs/msdos_mknod.c')
-rw-r--r--cpukit/libfs/src/dosfs/msdos_mknod.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/cpukit/libfs/src/dosfs/msdos_mknod.c b/cpukit/libfs/src/dosfs/msdos_mknod.c
index ac2a142cce..421d873136 100644
--- a/cpukit/libfs/src/dosfs/msdos_mknod.c
+++ b/cpukit/libfs/src/dosfs/msdos_mknod.c
@@ -36,7 +36,7 @@
* determines type of the node to be created and creates it.
*
* PARAMETERS:
- * token - non-formatted name of a new node
+ * name - file name to create
* mode - node type
* dev - dev
* pathloc - parent directory description
@@ -46,7 +46,7 @@
*
*/
int msdos_mknod(
- const char *token,
+ const char *name,
mode_t mode,
dev_t dev,
rtems_filesystem_location_info_t *pathloc
@@ -56,12 +56,7 @@ int msdos_mknod(
rtems_status_code sc = RTEMS_SUCCESSFUL;
msdos_fs_info_t *fs_info = pathloc->mt_entry->fs_info;
msdos_token_types_t type = 0;
- char new_name[ MSDOS_NAME_MAX + 1 ];
- int len;
-
- /* check spelling and format new node name */
- msdos_get_token(token, new_name, &len);
-
+
/*
* Figure out what type of msdos node this is.
*/
@@ -82,7 +77,7 @@ int msdos_mknod(
rtems_set_errno_and_return_minus_one(EIO);
/* Create an MSDOS node */
- rc = msdos_creat_node(pathloc, type, new_name, mode, NULL);
+ rc = msdos_creat_node(pathloc, type, name, strlen(name), mode, NULL);
rtems_semaphore_release(fs_info->vol_sema);
return rc;