Commit Graph

667 Commits

Author SHA1 Message Date
Pavel Pisa
9394aa5ed7 untar: do not exit with error when created directory already exists.
The problem exists for both RTEMS untar implementations and their
variants: Untar_FromMemory(), Untar_FromFile() and rtems_tarfs_load().

If filesystem object already exists at extracted directory path
then if it is directory, creation is ignored. Attempt
to delete/unlink object and make directory is tried for other cases.

This simple approach problem reported in ticket fixes #2413.
Behavior follows GNU tar and BSD tar practice for directories
but much more work is required to achieve full semantics
of the full featured tar implementation still.
2015-11-23 10:40:15 -05:00
Sebastian Huber
f97536dcd3 basdefs.h: Add and use RTEMS_UNUSED 2015-10-26 09:13:19 +01:00
Sebastian Huber
7d59bb6229 RFS: Fix resource leak
Close #2433.
2015-10-26 07:29:47 +01:00
Sebastian Huber
f820227372 JFFS2: Use RTEMS red-black tree implementation 2015-09-03 14:00:26 +02:00
Nick Withers
040ddd23b5 Respect 2^32 - 1 B NFSv2 maximum file size
closes #2384
2015-08-06 10:49:37 -04:00
Sebastian Huber
1cfe012543 nfsclient: Use an interrupt lock 2015-06-19 14:24:27 +02:00
Gedare Bloom
92422be16c dosfs: avoid buffer-overread. closes #2292. 2015-05-27 11:21:12 -04:00
Sebastian Huber
ee4e7f09b4 jffs2: Move into separate library
In case the zlib compression was used, then the librtemscpu.a depended
on libz.a.  To avoid a GCC patch or complicated link flags move the
JFFS2 support into a separate library to use a simple "-ljffs2 -lz" to
link the executable.
2015-05-27 08:53:05 +02:00
Sebastian Huber
f60b4f9344 dosfs: Fix warning fix 2015-04-27 09:10:49 +02:00
Sebastian Huber
9f10911d2b score: Delete Thread_queue_Control::state
Use a parameter for _Thread_queue_Enqueue() instead to reduce memory
usage.
2015-04-23 08:55:43 +02:00
Joel Sherrill
4727585092 imfs.h: Add cast to remove warning for pointer/integer size mismatch 2015-03-24 08:16:22 -05:00
Sebastian Huber
e6f4a612d8 IMFS: NUL-terminate name returned by readdir() 2015-03-17 16:18:03 +01:00
Joel Sherrill
4b7df86b8e cpukit/libdl/rtl-obj-comp.c: Use correct printf() specification 2015-03-17 10:05:03 -05:00
Jamie Iles
674f8b1b05 IMFS: don't strlen() an unterminated string in IMFS_dir_read().
a43a3466 (IMFS: Implement variable length node names) introduced a
changed to IMFS_jnode_t from being a null terminated string to a
separate unterminated string and length.  IMFS_dir_read() was still
performing a strlen() on this unterminated string though and when doing
an 'ls' in the fileio example I saw that some filenames had garbage
suffixes.
2015-03-16 19:17:35 +01:00
Gedare Bloom
b4d1f0899b rfs: cast minor to uintptr_t to truncate explicitly 2015-03-16 12:14:15 -04:00
Joel Sherrill
e0eb07a22b Fix more Doxygen typos 2015-03-06 13:26:12 -06:00
Joel Sherrill
cc69334f42 Fix a number of minor Doxygen formatting issues 2015-03-06 10:37:55 -06:00
Sebastian Huber
c735cd5a1f dosfs: Fix warnings 2015-03-05 11:23:10 +01:00
Sebastian Huber
2c8843882d IMFS: Fix warning 2015-03-05 11:23:09 +01:00
Sebastian Huber
29d36fa594 IMFS: Include missing header file 2015-03-05 11:23:09 +01:00
Sebastian Huber
81c73acf41 IMFS: Fix warning 2015-03-05 11:23:09 +01:00
Sebastian Huber
a45dfa1447 IMFS: Fix copy on write for linfiles 2015-02-20 09:42:15 +01:00
Sebastian Huber
fd144302a5 IMFS: Silence warning 2015-02-18 17:06:05 +01:00
Sebastian Huber
a43a34666e IMFS: Implement variable length node names
This reduces the average node size and adds more flexibility.
2015-02-15 11:26:39 +01:00
Sebastian Huber
f78549221b IMFS: Add CONFIGURE_IMFS_DISABLE_READDIR 2015-02-14 21:34:42 +01:00
Sebastian Huber
a9df916988 IMFS: Add fine grained configuration
Remove miniIMFS.  Statically initialize the root IMFS.

Add configuration options to disable individual
features of the root IMFS, e.g.
  o CONFIGURE_IMFS_DISABLE_CHOWN,
  o CONFIGURE_IMFS_DISABLE_FCHMOD,
  o CONFIGURE_IMFS_DISABLE_LINK,
  o CONFIGURE_IMFS_DISABLE_MKNOD,
  o CONFIGURE_IMFS_DISABLE_MOUNT,
  o CONFIGURE_IMFS_DISABLE_READLINK,
  o CONFIGURE_IMFS_DISABLE_RENAME,
  o CONFIGURE_IMFS_DISABLE_RMNOD,
  o CONFIGURE_IMFS_DISABLE_SYMLINK,
  o CONFIGURE_IMFS_DISABLE_UNMOUNT, and
  o CONFIGURE_IMFS_DISABLE_UTIME.
2015-02-12 20:53:36 +01:00
Sebastian Huber
a2f5c7e1a7 IMFS: Allow static initialization of FS info 2015-02-12 20:53:35 +01:00
Sebastian Huber
11026956c6 IMFS: Fix resource leak 2015-02-12 20:53:35 +01:00
Sebastian Huber
60cf8a5c16 IMFS: Add root directory to FS info
Fix memory leak in IMFS_fsunmount().
2015-02-12 20:53:35 +01:00
Sebastian Huber
9247d3faee IMFS: Simplify IMFS_symlink() 2015-02-12 20:53:35 +01:00
Sebastian Huber
e4d35d82fc IMFS: Split linfile and memfile modules
Make several functions static.
2015-02-12 20:53:34 +01:00
Sebastian Huber
24ec25d2ae IMFS: Introduce IMFS_mknod_control
Drop IMFS_node_control::node_size field and add node_size parameter to
IMFS_allocate_node() and IMFS_create_node().  This reduces the size of
generic nodes.
2015-02-12 20:53:34 +01:00
Sebastian Huber
194eb0074b Filesystem: Use ENOTSUP for default mount/unmount 2015-02-12 20:53:34 +01:00
Sebastian Huber
eb7753437f Filesystem: Delete unused fsmountme_h handler 2015-02-09 15:38:48 +01:00
Sebastian Huber
924cbd4f42 IMFS: Simplify ino generation
The type of ino_t is unsigned long, so it can store a pointer.  Avoid a
potential integer overflow.
2015-02-04 19:31:55 +01:00
Sebastian Huber
95308caf58 IMFS: Use rtems_filesystem_make_dev_t_from_pointer 2015-02-04 19:31:55 +01:00
Sebastian Huber
40d062f5cb IMFS: Reduce IMFS node types
Provide only types used by IMFS_mknod().
2015-01-28 18:47:19 +01:00
Sebastian Huber
29fa2419bf IMFS: Aggregate link support in dedicated modules 2015-01-28 18:25:49 +01:00
Sebastian Huber
cf36b70e8d IMFS: Replace node union with individual struct
This reduces the average node size.

Add and use IMFS_GENERIC_INITIALIZER().
2015-01-27 06:54:22 +01:00
Sebastian Huber
c625a64121 Filesystem: Delete node type operation
Use the fstat handler instead.
2015-01-22 07:52:40 +01:00
Nick Withers
86364e8c6a Correct error return mismatches
Closes #2139
2014-12-23 22:49:26 -05:00
Nick Withers
9d9c42601a Teach rtems_tarfs_load() about symlinks 2014-12-11 08:12:13 +01:00
Sebastian Huber
b657ea4d33 nfsclient: Avoid __FILE__ and __LINE__
The __FILE__ prevents reproducible builds.
2014-12-05 13:05:34 +01:00
Daniel Cederman
e4d8513707 nfs: Add RPCd task affinity config option
Similar to the task priority option, the new CPU affinity
option is first controlled by the RPCI specific rpciodCpuset
option. If that is not set, it uses the global network task config.
If that is also not set, it falls back to not setting the affinity
at all, using all CPUs.
2014-12-02 13:41:20 +01:00
Joel Sherrill
8dbbea6bcc msdos_file.c: Reverse return codes per Gedare 2014-11-27 09:29:16 -06:00
Josh Oguin
4862532fd9 imfs/imfs_handlers_link.c: Add _Assert for NULL pointer
CodeSonar flagged this as a possible dereference of a NULL pointer.
This should never occur so adding _Assert().
2014-11-26 07:51:59 -06:00
Josh Oguin
43d6a28fd1 dosfs/msdos_misc.c: Remove unnecessary operation
CodeSonar flagged the increment of this pointer as unneeded. The pointer
is not used past this point.
2014-11-26 07:51:58 -06:00
Josh Oguin
21c0ca8426 dosfs/msdos_file.c: Return an error if it occurs
CodeSonar flagged this as a case where the return value from fat_sync()
was not used. Now it is used to return pass/fail to the caller.
2014-11-26 07:51:58 -06:00
Josh Oguin
10f28a3af1 dosfs/msdos_conv.c: Remove unnecessary operations
These were flagged by CodeSonar. The assignments on variable declaration
are overridden a few lines below and the other line later with name_size
is where name_size was not used after this assignment.
2014-11-26 07:51:58 -06:00
Joel Sherrill
505b680642 rtems-rfs-rtems.c: Add cast to address warning 2014-11-25 12:58:01 -06:00