Commit Graph

29 Commits

Author SHA1 Message Date
Ralf Corsepius
f4e204cbfa 2003-05-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
PR 409:
	* include/Makefile.am: Add rtems/stdint.h
	* include/rtems/stdint.h: New.
2003-05-27 16:17:31 +00:00
Ralf Corsepius
97831b7013 2002-11-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* include/rtems/libio.h: Remove.
2002-11-18 23:55:24 +00:00
Ralf Corsepius
2d3c472b0f 2002-11-15 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* include/rtems/userenv.h: Rely upon <limits.h> for
	_POSIX_LOGIN_NAME_MAX.
2002-11-15 14:50:44 +00:00
Eric Norum
108bab3ee7 Add vprintk function for kernel printing from routines
which have already obtained the va_list pointer.
2002-10-30 19:47:03 +00:00
Ralf Corsepius
fed6210d43 2002-06-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Include $(top_srcdir)/automake/*.am.
2002-06-17 09:27:44 +00:00
Joel Sherrill
34fd745700 2002-04-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* include/rtems/bspIo.h: Fix cpp-guards, remove references to i386.
2002-04-08 18:27:53 +00:00
Joel Sherrill
1960925df0 2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac:
	AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
	AM_INIT_AUTOMAKE([no-define foreign 1.6]).
	* include/Makefile.am: Remove AUTOMAKE_OPTIONS.
	* Makefile.am: Remove AUTOMAKE_OPTIONS.
	* wrapup/Makefile.am: Remove AUTOMAKE_OPTIONS.
2002-03-28 00:46:40 +00:00
Joel Sherrill
64b1f81052 2002-01-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Apply @subdirs. Remove POSIX_SUBDIRS. Remove
	ITRON_SUBDIRS.
	* configure.ac: Rework enable_unixlib handling.
	Add RTEMS_MULTILIBS to cpuopts.h.
	* include/Makefile.am: Add rtems/fs.h, rtems/userenv.h.
	Add $(PROJECT_INCLUDE)/rtems. Remove libio_.h.
2002-01-16 22:53:30 +00:00
Joel Sherrill
dd2906e7e3 2002-01-07 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* wrapup/Makefile.am: Add install-hook.
	Remove SIZE_RTEMS.
	* include/rtems/fs.h: New, extracted from libio_.h.
	* include/rtems/userenv.h: New. extracted from libio_.h.
2002-01-08 12:04:22 +00:00
Joel Sherrill
20db683f78 2002-01-06 Joel Sherrill <joel@OARcorp.com>
* wrapup/.cvsignore: Readded.
	* include/.cvsignore: New file.
2002-01-06 20:22:06 +00:00
Joel Sherrill
8217c40656 2001-12-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac: Use AS_IF instead of if/then/else.
	Add AC_DEFINE_UNQUOTED(RTEMS_UNIX) for RTEMS_CPU==unix.
	Add AC_DEFINE_UNQUOTED(RTEMS_UNIXLIB) for RTEMS_CPU==unix.
	Add include/Makefile to CONFIG_FILES.
	Add AC_ENABLE_MULITLIB.
	Remove wrapup/rtems, wrapup/itron, wrapup/posix.
	Remove */optman/Makefile from CONFIG_FILES.
	* Makefile.am: Add include to SUBDIRS.
	* rtems/Makefile.am: Remove optman from SUBDIRS.
	* sapi/Makefile.am: Remove optman from SUBDIRS.
	* include/Makefile.am: New file.
	* include/rtems/bspIo.h: Relocated from lib/include.
	* include/rtems/libio_.h: Relocated from lib/include.
2002-01-04 17:57:28 +00:00
Joel Sherrill
1af7963479 2001-10-25 Jennifer Averett <jennifer@OARcorp.com>
* libc/libio.c: Initialize more fields to NULL/0 during initialiation.
	* include/rtems/libio_.h: Fix freenode macro so it works for sockets
	which do not have the full set of filesystem operations and are
	initialized via something other than open().
2001-10-25 17:38:55 +00:00
Joel Sherrill
d6c20ff373 2001-08-17 Joel Sherrill <joel@OARcorp.com>
* include/rtems/libio_.h: Added ifdef to ensure that LOGIN_NAME_MAX
	is defined on GNU/Linux (RedHat 6.2 distribution).
	* libc/unixlibc.c: Added stubs for rtems_io_register_name() and
	rtems_io_lookup_name() so UNIX port would compile the IO manager
	sptest that registers /dev/null.
2001-08-17 21:59:28 +00:00
Joel Sherrill
87fb080d75 2000-05-24 Fernando Ruiz Casas <fernando.ruiz@ctv.es>
* include/rtems/libio_.h: Added login name, uid, gid, euid, and egid
	so they can be part of the private environment.
2001-05-24 22:04:03 +00:00
Joel Sherrill
d8a9155512 2001-04-20 Correo Fernando-ruiz <correo@fernando-ruiz.com>
* include/rtems/libio_.h, libc/chroot.c, libc/privateenv.c:
	Private environment and chroot() enhancements and fixes.  Comments:
	  + privateenv has been modified to let at chroot() to be more
	    POSIX like Sergei Organov recommended.
	  + A task owner lets that rtems_set_private_env() will be
	    called twice or more times.
	  + chroot() can be called without a previous
	    rtems_set_private_env(); (transpanrently)
	  + The second call of rtems_set_private_env() makes a internal
	    chroot("/") into global imfs_root.
	  + chroot() runs like chdir() without a previous chdir("/") with
	    the global root.
	  + The current directory can be in a wrong place like Linux and
	    many other Unices.
2001-04-20 21:11:25 +00:00
Joel Sherrill
2a929cc871 2001-01-25 Fernando Ruiz <fernando.ruiz@ctv.es>
* Alternate email is correo@fernando-ruiz.com
	* libc/privateenv.c: New file.
	* include/rtems/libio_.h, libc/Makefile.am, libc/base_fs.c,
	libc/unmount.c: Moved default umask, current working directory,
	root, and links followed count into a structure "user environment"
	that can then be treated as a unit.  This enable giving unique
	copies of these to individual threads or collection of threads.
2001-01-25 15:59:58 +00:00
Joel Sherrill
3ba74c733f 2000-11-01 Joel Sherrill <joel@OARcorp.com>
* include/Makefile.am, include/rtems/libio_.h, libc/Makefile.am,
	libc/assoc.c, libc/assocnamebad.c, libc/base_fs.c, libc/cfsetispeed.c,
	libc/cfsetospeed.c, libc/chdir.c, libc/chmod.c, libc/chown.c,
	libc/close.c, libc/closedir.c, libc/dup2.c, libc/error.c, libc/eval.c,
	libc/fchdir.c, libc/fchmod.c, libc/fcntl.c, libc/fdatasync.c,
	libc/fpathconf.c, libc/fstat.c, libc/fsync.c, libc/ftruncate.c,
	libc/getdents.c, libc/ioctl.c, libc/libio.c, libc/libio_sockets.c,
	libc/link.c, libc/lseek.c, libc/malloc.c, libc/mallocfreespace.c,
	libc/mknod.c, libc/mount.c, libc/newlibc.c, libc/no_libc.c,
	libc/open.c, libc/read.c, libc/readlink.c, libc/rmdir.c, libc/stat.c,
	libc/symlink.c, libc/tcsetattr.c, libc/telldir.c, libc/ttyname.c,
	libc/ttyname_r.c, libc/umask.c, libc/unlink.c, libc/unmount.c,
	libc/utime.c, libc/write.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>.
	* include/rtems/Makefile.am, include/rtems/.cvsignore: New file.
	* include/rtems/assoc.h, include/rtems/error.h,
	include/rtems/libcsupport.h, include/rtems/libio.h,
	include/rtems/libio_.h: New/moved files.
2000-11-01 21:08:14 +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
1bce637587 Added printk as a generic, shared routine. 2000-06-12 16:37:04 +00:00
Joel Sherrill
08311cc3a9 Updated copyright notice. 1999-11-17 17:51:34 +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
23c4bbf58a Use proper include for libio.h. 1999-03-16 01:41:16 +00:00
Joel Sherrill
3ef87981eb Added F_GETFL support so the fdopen() implementation in newlib 1.8.1
would work.  At the same time, the initial implementation of F_SETFL
was added.  A support routine was added to convert internal libio
flags back to the POSIX style.  Eventually the internal representation
should be eliminated in the interest of simplicity and code reduction.
This problem was reported by Jake Janovetz <janovetz@tempest.ece.uiuc.edu>.
1999-03-06 18:09:15 +00:00
Joel Sherrill
73f6236bc0 Patch from Eric Norum <eric@skatter.usask.ca> to eliminate external
IO handlers scheme that was implemented originally just to support
sockets.  The file system IO switch is more general and works fine.
1999-03-01 22:40:08 +00:00
Joel Sherrill
2d733c424b More general fix based on bug report and patch from Ian Lance Taylor
<ian@airs.com> to fix this problem:

    There is a small bug in __rtems_close in c/src/lib/libc/libio.c.  It
    does not check whether the file descriptor it is passed is open.  This
    can cause it to make a null dereference if it is passed a file
    descriptor which is in the valid range but which was not opened, or
    which was already closed.
1999-01-20 15:48:22 +00:00
Joel Sherrill
cca44008d8 Merged Eric Norum's select patch that was based on 4.0 and resolved
all conflicts.
1998-12-10 23:31:54 +00:00
Jennifer Averett
7a3878b26f Modifications for RTEMS_UNIX. 1998-12-03 22:17:13 +00:00
Joel Sherrill
07a3253de2 Added base version of file system infrastructure. This includes a major
overhaul of the RTEMS system call interface.  This base file system is
the "In-Memory File System" aka IMFS.

The design and implementation was done by the following people:

  + Joel Sherrill (joel@OARcorp.com)
  + Jennifer Averett (jennifer@OARcorp.com)
  + Steve "Mr Mount" Salitasc (salitasc@OARcorp.com)
  + Kerwin Wade (wade@OARcorp.com)

PROBLEMS
========
  + It is VERY likely that merging this will break the UNIX port.  This
    can/will be fixed.

  + There is likely some reentrancy/mutual exclusion needed.

  + Eventually, there should be a "mini-IMFS" description table to
    eliminate links, symlinks, etc to save memory.  All you need to
    have "classic RTEMS" functionality is technically directories
    and device IO.  All the rest could be left out to save memory.
1998-11-23 19:07:58 +00:00