| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
* 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.
* libc/Makefile.am: Remove AUTOMAKE_OPTIONS.
|
|
|
|
|
|
| |
* libc/gxx_wrappers.c: Task is not preemptable while running a
pthread_once init function. This is slightly less heavy handed
than disabling dispatching and seems better than consuming a mutex.
|
|
|
|
|
|
|
|
|
|
|
| |
* Nice Update of PPPD support which eliminates the
requiremetn that drivers be in the termios TASK_DRIVEN mode.
Mike did significant testing and reports that it seems to be
more stable and handle larger packets better. This patch
replaces the termios tasks with more general pppd network
driver tasks. The functions pppinput() and pppstart() get
called from the interrupt service routine.
* libc/termios.c: Added PPCDISC.
|
|
|
|
| |
* libc/gxx_wrappers.c: Add #include <rtems/error.h>.
|
|
|
|
|
|
| |
* libc/Makefile.am: Add MULTISUBDIR support.
* libc/fcntl.c: Add #include <stdarg.h>.
* libc/privateenv.c: Add #include <stdlib.h>.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* include/rtems/libio_.h: Remove set_errno_and_return_minus_one.
* libc/cfsetispeed.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/cfsetospeed.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/chdir.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/chmod.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/chown.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/chroot.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/closedir.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/eval.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/fchdir.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/fchmod.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/fdatasync.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/fpathconf.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/fstat.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/fsync.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/ftruncate.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/getdents.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/ioctl.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/link.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/lseek.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/mknod.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/open.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/read.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/readlink.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/rmdir.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/stat.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/symlink.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/tcsetattr.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/telldir.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/ttyname.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/ttyname_r.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/unlink.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/unmount.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/utime.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
* libc/write.c: Include <rtems/seterr.h>.
Apply rtems_set_errno_and_return_minus_one.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/clockgetres.c: Apply rtems_set_errno_and_return_minus_one.
* src/clockgettime.c: Apply rtems_set_errno_and_return_minus_one.
* src/clocksettime.c: Apply rtems_set_errno_and_return_minus_one.
* src/killinfo.c: Apply rtems_set_errno_and_return_minus_one.
* src/mqueueclose.c: Apply rtems_set_errno_and_return_minus_one.
* src/mqueuecreatesupp.c: Apply rtems_set_errno_and_return_minus_one.
* src/mqueuegetattr.c: Apply rtems_set_errno_and_return_minus_one.
* src/mqueuenotify.c: Apply rtems_set_errno_and_return_minus_one.
* src/mqueueopen.c: Apply rtems_set_errno_and_return_minus_one.
* src/mqueuerecvsupp.c: Apply rtems_set_errno_and_return_minus_one.
* src/mqueuesendsupp.c: Apply rtems_set_errno_and_return_minus_one.
* src/mqueuesetattr.c: Apply rtems_set_errno_and_return_minus_one.
* src/mqueueunlink.c: Apply rtems_set_errno_and_return_minus_one.
* src/nanosleep.c: Apply rtems_set_errno_and_return_minus_one.
* src/pthreadkill.c: Apply rtems_set_errno_and_return_minus_one.
* src/pthreadsigmask.c: Apply rtems_set_errno_and_return_minus_one.
* src/ptimer1.c: Apply rtems_set_errno_and_return_minus_one.
* src/sched.c: Apply rtems_set_errno_and_return_minus_one.
* src/semaphorecreatesupp.c: Apply rtems_set_errno_and_return_minus_one.
* src/semaphorewaitsupp.c: Apply rtems_set_errno_and_return_minus_one.
* src/semclose.c: Apply rtems_set_errno_and_return_minus_one.
* src/semdestroy.c: Apply rtems_set_errno_and_return_minus_one.
* src/semgetvalue.c: Apply rtems_set_errno_and_return_minus_one.
* src/seminit.c: Apply rtems_set_errno_and_return_minus_one.
* src/semopen.c: Apply rtems_set_errno_and_return_minus_one.
* src/sempost.c: Apply rtems_set_errno_and_return_minus_one.
* src/semunlink.c: Apply rtems_set_errno_and_return_minus_one.
* src/setpgid.c: Apply rtems_set_errno_and_return_minus_one.
* src/setsid.c: Apply rtems_set_errno_and_return_minus_one.
* src/sigaction.c: Apply rtems_set_errno_and_return_minus_one.
* src/sigaddset.c: Apply rtems_set_errno_and_return_minus_one.
* src/sigdelset.c: Apply rtems_set_errno_and_return_minus_one.
* src/sigemptyset.c: Apply rtems_set_errno_and_return_minus_one.
* src/sigfillset.c: Apply rtems_set_errno_and_return_minus_one.
* src/sigismember.c: Apply rtems_set_errno_and_return_minus_one.
* src/sigpending.c: Apply rtems_set_errno_and_return_minus_one.
* src/sigtimedwait.c: Apply rtems_set_errno_and_return_minus_one.
* src/utsname.c: Apply rtems_set_errno_and_return_minus_one.
|
|
|
|
|
|
| |
* libc/printk.c: Include rtems/bspIo.h instead of bspIo.h.
* include/Makefile.am: Remove bspIo.h.
* include/bspIo.h: Removed.
|
|
|
|
|
| |
This was tracked as PR88.
* libc/scandir.c: Fixed to perform cleanup on error conditions.
|
|
|
|
|
|
|
| |
Reported by Ibragimov Ilya <ibr@oktet.ru> and tracked as PR63.
* libc/chdir.c: Check for search/execute permissions on chdir.
This requires passing RTEMS_LIBIO_PERMS_SEARCH to
rtems_filesystem_evaluate_path().
|
|
|
|
|
| |
* libc/libio.c: Cleanup of initialization per suggestion from
Eric Norum.
|
|
|
|
|
|
|
| |
* libc/unmount.c: Primarily restructuring and clean up to address
procedures which did not do what their name implied. Also addressed
problem situation where unmount fails and the filesystem was
inconsistent. The mounted filesystem could have been left hanging.
|
|
|
|
|
|
|
| |
* 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().
|
|
|
|
|
| |
* libc/open.c, libc/close.c: Moved freenode from open to
close.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* These changes were discussed and reviewed by many people but the
primary people were Jennifer Averett <jennifer@OARcorp.com>
and Eugeny Mints <jack@oktet.ru>.
* libc/utime.c: Add missing call to rtems_filesystem_freenode()
at verification that utime is supported by the filesystem.
* libc/link.c: Remove calls to freenode when the node was
not successfully allocated.
* libc/unmount.c: In the method file_systems_below_this_mountpoint()
added calls to correctly free fs_root_loc when a failure occurs.
* libc/open.c: Add freenode calls upon failure.
* libc/open.c, lib/libc/close.c: (PENDING -- NOT INCLUDED THIS TIMER)
Modifications the move the freenode from open() to close() (also part
of this patch) are pending further discussion.
|
|
|
|
|
|
|
|
|
| |
* libc/termios.c: Fixed a memory leak in the termios
software. Basically the tty open function was allocating an input
raw buffer, an output raw buffer, and a cooked buffer that were
not getting released. I have attached a patch for the latest
snapshot. The patch also has a fix to ensure the tty link list
is updated correctly when a tty is closed.
|
|
|
|
|
| |
* libc/printk.c (printNum): Properly handle a maxwidth of 0
as reported by Nick Hennenfent <NICK.HENNENFENT@ROCHE.COM>.
|
|
|
|
|
| |
* libc/Makefile.am: Revamp INCLUDES handling to make automake-1.5
happy.
|
|
|
|
| |
* libc/gxx_wrappers.c: Modifications to make gcc 3.x happy.
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
| |
* libc/lseek.c: Modified after discussion with Eugeny S. Mints
<jack@oktet.ru> to correct the behavior. There were two mistakes.
First, iop->offset was incorrectly set for SEEK_END. Second,
iop->offset should be left unmodified if there are errors.
This modification attempts to fix both situations.
|
|
|
|
|
|
|
|
| |
* libc/lseek.c: Modified after discussion with Eugeny S. Mints
<jack@oktet.ru> to correct the behavior. There were two mistakes.
First, iop->offset was incorrectly set for SEEK_END. Second,
iop->offset should be left unmodified if there are errors.
This modification attempts to fix both situations.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/termios.c: Fix a bug in the termios implementation in
the following scenario:
The General Terminal Interface document that me states that
if VMIN = 0 and VTIME = 0, then read() should return the minimum
of two values:
a) number of bytes available
b) number of bytes requested (I assume from the read call)
The current implementation of the fillBufferQueue() in termios.c is
always return 1 character with these setting values. I know the
termios buffer has more than one character available and my read()
call is requesting 1024 bytes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/termios.c: Fix a bug in the termios implementation in
the following scenario:
The General Terminal Interface document that me states that
if VMIN = 0 and VTIME = 0, then read() should return the minimum
of two values:
a) number of bytes available
b) number of bytes requested (I assume from the read call)
The current implementation of the fillBufferQueue() in termios.c is
always return 1 character with these setting values. I know the
termios buffer has more than one character available and my read()
call is requesting 1024 bytes.
|
|
|
|
|
| |
* libc/getgrent.c, libc/getpwent.c: the 'ls' and more related command
previous failed after a chroot(). (unknown user & group)
|
|
|
|
|
|
| |
* libc/libio_sockets.c (rtems_bsdnet_fdToSocket): Per bug
report from Gene Smith <Gene.Smith@sea.siemens.com>, enhanced the
error checking to account for a socket being closed.
|
|
|
|
|
|
| |
* libc/base_fs.c: Deleted chmod() now that IMFS creates the
root node with the desired permissions. chmod() is also not
supported by the miniIMFS so this is not allowable.
|
|
|
|
|
|
|
| |
* libc/ttyname.c (ttyname_r): Removed duplicate call to closedir().
* libc/getpwent.c: Create a more robust /etc/passwd and /etc/group.
* libc/base_fs.c: Change permissions of files and directories. Now uses
octal constants.
|
|
|
|
|
| |
* libc/write.c: Change type of rc to match return type from
underlying function per report from Eric Norum.
|
|
|
|
|
|
|
|
|
| |
* libc/libio.c (rtems_libio_allocate): Make sure size and offset
fields are cleared on each file open. 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>.
* libc/open.c: Remove redundant setting of iop->offset.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
| |
* libc/chroot.c: Fixed naming problems. Names were changed
when the code this depends on was merged.
|
|
|
|
|
|
| |
* cpu.c, rtems/score/cpu.h: Bug report from Peter Mueller
<peter.o.mueller@gmx.de> because of not correcting for the ISR
vector table now being allocated from the workspace.
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
| |
* configure.in: Add src/config.h
* src/Makefile.am: Add INCLUDES += -I. to pickup config.h
* src/.cvsignore: Add config.h and stamp-h
* src/*.c: Add config.h support.
|
|
|
|
|
|
|
| |
* configure.in: Add libc/config.h
* libc/Makefile.am: Add INCLUDES += -I. to pickup config.h
* libc/.cvsignore: Add config.h and stamp-h
* libc/*.c: Add config.h support.
|
|
|
|
|
|
| |
* libc/mallocfreespace.c: Name of routine is
rtems_region_get_information() NOT region_get_information().
* libc/unmount.c: Removed unused variable.
|
|
|
|
|
|
|
| |
* include/rtems/Makefile.am: Added termiostypes.h.
* libc/Makefile.am: Removed termiostypes.h.
* libc/termios.c: Changed include of "termiostypes.h" to
<rtems/termiostypes.h> since that is an RTEMS specific header file.
|
|
|
|
|
| |
* libc/getcwd.c: Ensure _closedir(dir) is called even on
error exit from the routine.
|
|
|
|
|
|
| |
* libc/termios.c, libc/termiostypes.h: Task driver driver model
and line discipline support from Thomas Doerfler
<Thomas.Doerfler@imd-systems.de>.
|
|
|
|
|
| |
* libc/mount.c: Make sure there is space allocated for a device name
in the mount table entry.
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/mount.c (search_mt_for_mount_point): Deleted routine.
* libc/mount.c (Is_node_fs_root): Replacement for above that
accounts for the imaginary root node being returned by the
filesystem evaluation routine.
* libc/unmount.c (unmount): Account for imaginary root node
being returned and improved variable names to clarify code.
* libc/unmount.c (file_systems_below_this_mountpoint): Body of
routine replaced to account for imaginary root node being returned.
|
|
|
|
| |
* libc/libio.c: Special treatment of O_NDELAY for Cygwin.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libc/ioman.c: Moved to libfs.
* libc/Makefile.am: Removed ioman.c as part of moving it to libfs.
* libc/base_fs.c: Removed include of imfs.h and reworded comment
to avoid being IMFS specific.
* libc/libio.h: Removed prototype of IMFS_ops since it should
not be in this file.
* libc/mount.c: Removed IMFS specific configuration information.
* libc/unmount.c: Removed include of imfs.h and reworded comment
to avoid being IMFS specific.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libfs created.
* libc/deviceio.c, libc/imfs_getchild.c, libc/imfs_readlink.c,
libc/imfs.h, libc/imfs_gtkn.c, libc/imfs_rmnod.c, libc/imfs_chown.c,
libc/imfs_handlers_device.c, libc/imfs_stat.c, libc/imfs_creat.c,
libc/imfs_handlers_directory.c, libc/imfs_symlink.c, libc/imfs_debug.c,
libc/imfs_handlers_link.c, libc/imfs_unixstub.c, libc/imfs_directory.c,
libc/imfs_handlers_memfile.c, libc/imfs_unlink.c, libc/imfs_eval.c,
libc/imfs_init.c, libc/imfs_unmount.c, libc/imfs_fchmod.c,
libc/imfs_initsupp.c, libc/imfs_utime.c, libc/imfs_fcntl.c,
libc/imfs_link.c, libc/memfile.c, libc/imfs_fdatasync.c,
libc/imfs_mknod.c, libc/miniimfs_init.c, libc/imfs_free.c,
libc/imfs_mount.c, libc/imfs_fsunmount.c, libc/imfs_ntype.c:
Moved to libfs/src/imfs.
* Makefile.am: Modified to reflect above.
|
|
|
|
|
|
|
| |
* libc/Makefile.am: Added mallocfreespace.c.
* libc/mallocfreespace.c: New file based on work by Nick Simon
<Nick.SIMON@syntegra.bt.co.uk> which he included in malloc.c.
* libc/libcsupport.h: Added prototype for malloc_free_space().
|
|
|
|
|
|
|
| |
* libc/fcntl.c: Do not require every filesystem to have an fcntl()
handler. Most fcntl() operations can be performed with no
filesystem support.
* ChangeLog: Corrected comment.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
| |
* libc/newlibc.c: Removed _A29K specific ifdef.
|