Commit Graph

59 Commits

Author SHA1 Message Date
Joel Sherrill
eb22ebe0ec 2001-04-24 Joel Sherrill <joel@OARcorp.com>
* src/imfs/memfile.c (memfile_open): Did not set iop->size
	and thus the value was incorrect.  Before this field was cleared,
	this resulted in the value from the last time that IOP was used
	being still in place.  Discovered by  Andrew Bythell
	<abythell@nortelnetworks.com>.
2001-04-24 23:06:50 +00:00
Joel Sherrill
5346276237 2001-04-20 Joel Sherrill <joel@OARcorp.com>
* src/imfs/imfs_debug.c (IMFS_print_jnode): Modified to print
	only information that does not vary based on target or memory
	configuration.  The old prints are still there in case they
	are needed in the future to debug.  Printing target dependent
	addresses makes the test output vary by target unnecessarily.
2001-04-20 13:27:24 +00:00
Joel Sherrill
d79ef179dc 2001-03-23 Joel Sherrill <joel@OARcorp.com>
* src/imfs/memfile.c: Reapply fix from bug report from
	Jose Sturniolo <jsturnio@nec.com.ar> where NULL pointer
	was dereferenced when freeing a triply indirect file.
	The fix was applied to the 4.5 release branch and not
	the development branch.
2001-03-23 14:02:02 +00:00
Joel Sherrill
8b5d0db30b 2001-02-03 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* src/imfs/Makefile.am: Apply include_*HEADERS instead of H_FILES.
2001-02-05 18:24:14 +00:00
Joel Sherrill
d6b1d73bc7 2001-01-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.in: Add src/imfs/config.h
	* src/imfs/Makefile.am: Add INCLUDES += -I. to pickup config.h
	* src/imfs/.cvsignore: Add config.h and stamp-h
	* src/imfs/*.c: Add config.h support.
2001-01-22 14:05:14 +00:00
Joel Sherrill
d19415873f 2001-01-12 Jake Janovetz <janovetz@uiuc.edu>
* src/imfs/imfs.h, src/imfs/imfs_creat.c, src/imfs/imfs_debug.c,
	src/imfs/imfs_eval.c, src/imfs/imfs_fchmod.c,
	src/imfs/imfs_handlers_memfile.c, src/imfs/imfs_init.c,
	src/imfs/imfs_initsupp.c, src/imfs/imfs_stat.c, src/imfs/memfile.c,
	src/imfs/miniimfs_init.c: Final developmental update to "tarfs".
	When rtems_tarfs_load() is called, it checks the permissions
	on each file.  If there is write permission, it just creates a
	standard file using "creat()" and therefore, uses the IMFS MEMORY_FILE.
	If there is no write permission, it creates a LINEAR_FILE node
	with the appropriate properties.  If the permission is ever changed
	to writeable, IMFS_fchmod converts it to a regular memory file.
2001-01-12 13:44:12 +00:00
Joel Sherrill
0ef748fb45 2000-12-12 Jake Janovetz <janovetz@uiuc.edu>
*  src/imfs/linearfile.c, src/imfs/imfs_load_tar.c: New files.
	* src/imfs/Makefile.am, src/imfs/imfs.h,
	src/imfs/imfs_creat.c, src/imfs/imfs_debug.c,
	src/imfs/imfs_eval.c, src/imfs/imfs_handlers_memfile.c,
	src/imfs/imfs_init.c, src/imfs/imfs_initsupp.c,
	src/imfs/imfs_stat.c, src/imfs/miniimfs_init.c: Added "tarfs".
	This is not really a tar filesystem.  It is a way to load a tar
	image into the IMFS but actually leave bulky file contents in the
	original tar image.  It essentially adds the linear file type and
	associated support and a loader routine.
2000-12-13 17:53:55 +00:00
Joel Sherrill
6b5519a4f3 2000-11-28 Joel Sherrill <joel@OARcorp.com>
* src/imfs/memfile.c: Bug report from Sturniolo Jose
	<jsturnio@nec.com.ar> where NULL pointer was dereferenced.
2000-11-28 21:53:48 +00:00
Jennifer Averett
13e47e2e6b 2000-11-17 Jennifer Averret <jennifer@OARcorp.com>
* src/imfs/imfs_eval.c: Always return imaginary node at mount points.
2000-11-17 18:46:03 +00:00
Joel Sherrill
feead22618 2000-11-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
2000-11-09 16:43:05 +00:00
Joel Sherrill
a314d3b497 2000-11-02 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
2000-11-02 15:49:06 +00:00
Joel Sherrill
c058578355 2000-11-01 Joel Sherrill <joel@OARcorp.com>
* src/imfs/Makefile.am, src/imfs/deviceio.c, src/imfs/imfs_chown.c,
	src/imfs/imfs_config.c, src/imfs/imfs_creat.c, src/imfs/imfs_debug.c,
	src/imfs/imfs_directory.c, src/imfs/imfs_eval.c, src/imfs/imfs_fchmod.c,
	src/imfs/imfs_free.c, src/imfs/imfs_fsunmount.c, src/imfs/imfs_gtkn.c,
	src/imfs/imfs_init.c, src/imfs/imfs_initsupp.c, src/imfs/imfs_link.c,
	src/imfs/imfs_mknod.c, src/imfs/imfs_mount.c, src/imfs/imfs_readlink.c,
	src/imfs/imfs_rmnod.c, src/imfs/imfs_stat.c, src/imfs/imfs_symlink.c,
	src/imfs/imfs_unixstub.c, src/imfs/imfs_unlink.c,
	src/imfs/imfs_unmount.c, src/imfs/imfs_utime.c, src/imfs/ioman.c,
	src/imfs/memfile.c, src/imfs/miniimfs_init.c:
	assoc.h, error.h, libio_.h, libio.h, and libcsupport.h moved
	from libc to lib/include/rtems and now must be referenced as
	<rtems/XXX.h>.  Now we do not have to reach up and over to
	libc to pick them up.
2000-11-01 21:02:46 +00:00
Joel Sherrill
a0756c9aa0 2000-10-24 Joel Sherrill <joel@OARcorp.com>
* src/imfs/imfs_config.c: New file containing IMFS configuration
	information split from libc/base_fs.c.
	* src/imfs/ioman.c: New file. Moved from lib/libc. Missed previously.
	* src/imfs/Makefile.am: Added imfs_config.c and ioman.c.
2000-10-25 16:51:22 +00:00
Joel Sherrill
7ec7cf7491 2000-10-24 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am, configure.in:  Introduce GNU canonicalization to libfs/.
	The approach is currently a bit of a hack as GNU canonicalization
	does not support the per-BSP build some of the other directories
	require.  As more of the tree is converted, this will become less
	of an issue.
2000-10-24 22:06:00 +00:00
Joel Sherrill
5b59c4d46a 2000-10-19 Joel Sherrill <joel@OARcorp.com>
* .cvsignore, src/.cvsignore, src/imfs/.cvsignore, wrapup/.cvsignore:
	New files.
2000-10-19 15:52:22 +00:00
Joel Sherrill
d71c6c1f0e 2000-10-18 Chris Johns <ccj@acm.org>
* libfs created.
	* src, src/imfs, wrapup: New directories.
	* ChangeLog, Makefile.am, README, configure.in, src/Makefile.am,
	wrapup/Makefile.am: New files.
	* src/imfs/deviceio.c, src/imfs/imfs_getchild.c,
	src/imfs/imfs_readlink.c, src/imfs/imfs.h, src/imfs/imfs_gtkn.c,
	src/imfs/imfs_rmnod.c, src/imfs/imfs_chown.c,
	src/imfs/imfs_handlers_device.c, src/imfs/imfs_stat.c,
	src/imfs/imfs_creat.c, src/imfs/imfs_handlers_directory.c,
	src/imfs/imfs_symlink.c, src/imfs/imfs_debug.c,
	src/imfs/imfs_handlers_link.c, src/imfs/imfs_unixstub.c,
	src/imfs/imfs_directory.c, src/imfs/imfs_handlers_memfile.c,
	src/imfs/imfs_unlink.c, src/imfs/imfs_eval.c, src/imfs/imfs_init.c,
	src/imfs/imfs_unmount.c, src/imfs/imfs_fchmod.c,
	src/imfs/imfs_initsupp.c, src/imfs/imfs_utime.c, src/imfs/imfs_fcntl.c,
	src/imfs/imfs_link.c, src/imfs/memfile.c, src/imfs/imfs_fdatasync.c,
	src/imfs/imfs_mknod.c, src/imfs/miniimfs_init.c, src/imfs/imfs_free.c,
	src/imfs/imfs_mount.c, src/imfs/imfs_fsunmount.c, src/imfs/imfs_ntype.c:
	New files. Moved from libc.
2000-10-18 18:10:55 +00:00
Joel Sherrill
9c3fa30a11 2000-09-28 Joel Sherrill <joel@OARcorp.com>
* libc/libio.h (rtems_filesystem_file_handlers_r,
	rtems_filesystem_operations_table): Added _h to all structure
	fields to indicate they are "handlers".
	* libc/libio_.h, libc/chdir.c, libc/chmod.c, libc/chown.c,
	libc/close.c, libc/eval.c, libc/fchdir.c, libc/fchmod.c,
	libc/fcntl.c, libc/fdatasync.c, libc/fstat.c, libc/fsync.c,
	libc/ftruncate.c, libc/getdents.c, libc/imfs_eval.c,
	libc/imfs_unlink.c, libc/ioctl.c, libc/ioman.c, libc/link.c,
	libc/lseek.c, libc/mknod.c, libc/mount.c, libc/open.c, libc/read.c,
	libc/readlink.c, libc/rmdir.c, libc/stat.c, libc/symlink.c,
	libc/unlink.c, libc/unmount.c, libc/utime.c, libc/write.c:
	Modified to reflect above name change.
2000-09-28 20:19:23 +00:00
Joel Sherrill
662678d1d9 2000-08-25 Joel Sherrill <joel.sherrill@OARcorp.com>
* libc/isatty.c, libc/imfs_handlers_directory.c, libc/creat.c,
	libc/imfs_directory.c: Fixed style issues.
2000-08-25 13:13:57 +00:00
Joel Sherrill
dd19c0bb06 2000-08-11 Chris Johns <ccj@acm.org>
* libc/chmod.c: Return ENOTSUP if filesystem does not have handler.
	* libc/eval.c: Ditto.
	* libc/fcntl.c: Ditto.
	* libc/fsync.c: Ditto.
	* libc/ioctl.c: Ditto.
	* libc/ioman.c: Ditto.
	* libc/link.c: Ditto.
	* libc/memfile.c: Ditto.
	* libc/mknod.c: Ditto.
	* libc/symlink.c: Ditto.
	* libc/libio.h(rtems_filesystem_dev_major_t): New macro.
	* libc/libio.h(rtems_filesystem_dev_minor_t): New macro.
2000-08-11 20:04:27 +00:00
Joel Sherrill
3af082818e Fixed stat_ino should be st_ino. 2000-07-02 12:29:47 +00:00
Joel Sherrill
068b64735c Patch from Chris Johns <cjohns@cybertec.com.au> so the directory
read function in the IMFS properly returns the inode number.
2000-06-30 12:36:32 +00:00
Joel Sherrill
e5d6705e46 Patch from Chris Johns <cjohns@cybertec.com.au> to add support for
stat()'ing a symbolic link.  This is needed to support the port
of the BSD commands like ls to RTEMS.
2000-06-30 12:33:13 +00:00
Joel Sherrill
e42a135973 Patch from Chris Johns <cjohns@cybertec.com.au> and
Jennifer Averett <jennifer.averett@oarcorp.com> to fix
appends (O_APPEND at open time) on in-memory files.

A call such as:

    fd = open (file, O_APPEND | O_WRONLY);

did not append to the end of the file.
2000-06-26 14:49:58 +00:00
Joel Sherrill
5e0e012cda Patch from Chris Johns <cjohns@cybertec.com.au> and
Jennifer Averett <jennifer.averett@oarcorp.com> to make sure
"/" is created with S_IFDIR set.
2000-06-26 14:46:19 +00:00
Joel Sherrill
df49c60c96 Merged from 4.5.0-beta3a 2000-06-12 15:00:15 +00:00
Joel Sherrill
562e7ed1ed Increased block size to 128 and added comments based on feedback from
Java folks including Oscar Martinez de la Torre <omt@wm.estec.esa.nl>.
2000-02-11 15:54:47 +00:00
Joel Sherrill
3a8b95e207 Spacing corrected. 2000-01-05 21:32:57 +00:00
Joel Sherrill
08311cc3a9 Updated copyright notice. 1999-11-17 17:51:34 +00:00
Jennifer Averett
18c315533b Added handler for fsync. For the memfile it is the same as the data sync. 1999-11-16 22:45:33 +00:00
Joel Sherrill
b440e57bdb Added imfs_unixstub.c to satisfy linker problems on UNIX port. 1999-11-09 13:40:30 +00:00
Jennifer Averett
f758f8102a Correctly set and called handlers table for the link. 1999-11-05 22:26:12 +00:00
Jennifer Averett
089ad91deb Fixed comment 1999-11-05 22:25:16 +00:00
Jennifer Averett
7f6a07504e Moved imfs set handlers prototype to the imfs.h file. 1999-11-05 22:24:56 +00:00
Joel Sherrill
378fe02519 New file. 1999-11-05 21:11:09 +00:00
Joel Sherrill
94b357c2b3 Unmount was failing as a side-effect of splitting the rmnod handler
and not handling every case properly.
1999-11-05 21:10:54 +00:00
Joel Sherrill
b568ccb745 The object memfile.o was being included in the miniIMFS even though it
should not have been.  This required that IMFS_rmnod be split into
three separate (per file type) routines to avoid dependencies.
In the end, a miniIMFS application is 6K smaller than one using the
full IMFS.
1999-11-02 20:20:13 +00:00
Joel Sherrill
3fb2a8daf7 Fixed typo where memfile_handlers set twice and directory_handlers
was not set.
1999-11-02 16:23:50 +00:00
Joel Sherrill
ac8adcf06f Properly initialize location variable. 1999-11-02 16:22:58 +00:00
Jennifer Averett
4a07d2b866 Moved the rmnod callback from the operations table to the handler table. 1999-10-29 15:19:13 +00:00
Joel Sherrill
79991746da New files created by split of old imfs_handlers.c. 1999-10-26 21:51:20 +00:00
Joel Sherrill
657e1bf66b Added initial cut at miniIMFS which leaves out memfile and directory
readdir support.  The next step is to add a mount table and configure
either the miniIMFS or the full IMFS at the application level.
1999-10-26 20:17:13 +00:00
Joel Sherrill
1e57186135 Patch from Eric Valette <valette@crf.canon.fr> and Emmanuel Raguet
<raguet@crf.canon.fr> to use a local variable.
1999-10-25 14:46:56 +00:00
Joel Sherrill
c774a07e88 Changed leading spaces to periods to ease comparing test output. 1999-10-25 14:09:46 +00:00
Joel Sherrill
a6883c4eb9 Spacing. 1999-10-12 20:22:27 +00:00
Joel Sherrill
51435fc7c5 Split null handlers table to own file and renamed.
Renamed IMFS handler tables to include IMFS prefix.
1999-10-12 19:26:37 +00:00
Joel Sherrill
dd0f32614c Added rtems_filesystem_freenode() macro and added calls at appropriate
places to make sure memory allocated for filesystem specifif nodes
gets freed.
1999-10-12 19:10:46 +00:00
Joel Sherrill
578a415014 Corrected mistakes in the IMFS file handlers table and added the missing
routine imfs_fcntl.c
1999-10-12 19:08:55 +00:00
Joel Sherrill
d71fcabaa6 Added call to freenod to let each filesystem free its own internal
node used to manage file access.
1999-10-12 18:44:40 +00:00
Joel Sherrill
0ac8e382e9 Warning removal from D. V. Henkel-Wallace <gumby@zembu.com>. 1999-06-14 19:44:07 +00:00
Joel Sherrill
556ea0e3ba Removed usage of printf. 1999-05-27 16:12:20 +00:00