* ftpd/ftpd.c, httpd/asp.c, httpd/ejparse.c, httpd/emfdb.c,
httpd/misc.c, httpd/um.c, httpd/webs.c, httpd/websuemf.c,
libfs/src/dosfs/msdos_dir.c, libfs/src/dosfs/msdos_format.c,
libfs/src/dosfs/msdos_misc.c, libfs/src/nfsclient/src/nfs.c,
libmisc/capture/capture-cli.c, libmisc/monitor/mon-network.c,
libmisc/shell/hexdump-odsyntax.c, libmisc/shell/main_ifconfig.c,
libmisc/shell/shell.c, libmisc/shell/shell_makeargs.c,
libmisc/uuid/parse.c, libnetworking/libc/gethostbydns.c,
libnetworking/libc/gethostbyht.c, libnetworking/libc/gethostnamadr.c,
libnetworking/libc/getnetnamadr.c, libnetworking/libc/inet_addr.c,
libnetworking/libc/inet_network.c, libnetworking/libc/res_debug.c,
libnetworking/libc/res_init.c, libnetworking/libc/res_query.c,
libnetworking/rtems/rtems_mii_ioctl.c,
score/src/objectgetnameasstring.c: Readdress use of ctype methods per
recommendation from D.J. Delorie on the newlib mailing list. We
should pass an unsigned char into these methods.
* libmisc/shell/main_msdosfmt.c, libmisc/shell/shellconfig.h: Fix
the alias as I did understand how it worked.
* libfs/src/dosfs/msdos_format.c: Test for a block device.
* libblock/src/diskdevs.c: Create the devices as block devices.
* libmisc/shell/main_debugrfs.c, libmisc/shell/main_mkrfs.c,
libmisc/shell/main_mount_rfs.c: New.
* libmisc/shell/main_msdosfmt.c: Change the command to mkdos and
alias the old name.
* libmisc/shell/shellconfig.h, libmisc/Makefile.am: Add RFS
support.
* libfs/src/rfs/rtems-rfs-shell.c,
libfs/src/rfs/rtems-rfs-shell.h: Move the format command code into
the shell file.
* libfs/src/rfs/rtems-rfs-bitmaps.c,
libfs/src/rfs/rtems-rfs-bitmaps.h,
libfs/src/rfs/rtems-rfs-bitmaps-ut.c,
libfs/src/rfs/rtems-rfs-block.c, libfs/src/rfs/rtems-rfs-block.h,
libfs/src/rfs/rtems-rfs-block-pos.h,
libfs/src/rfs/rtems-rfs-buffer-bdbuf.c,
libfs/src/rfs/rtems-rfs-buffer.c,
libfs/src/rfs/rtems-rfs-buffer-devio.c,
libfs/src/rfs/rtems-rfs-buffer.h, libfs/src/rfs/rtems-rfs-data.h,
libfs/src/rfs/rtems-rfs-dir.c, libfs/src/rfs/rtems-rfs-dir.h,
libfs/src/rfs/rtems-rfs-dir-hash.c,
libfs/src/rfs/rtems-rfs-dir-hash.h,
libfs/src/rfs/rtems-rfs-file.c, libfs/src/rfs/rtems-rfs-file.h,
libfs/src/rfs/rtems-rfs-file-system.c,
libfs/src/rfs/rtems-rfs-file-system-fwd.h,
libfs/src/rfs/rtems-rfs-file-system.h,
libfs/src/rfs/rtems-rfs-format.c,
libfs/src/rfs/rtems-rfs-format.h, libfs/src/rfs/rtems-rfs-group.c,
libfs/src/rfs/rtems-rfs-group.h, libfs/src/rfs/rtems-rfs.h,
libfs/src/rfs/rtems-rfs-inode.c, libfs/src/rfs/rtems-rfs-inode.h,
libfs/src/rfs/rtems-rfs-link.c, libfs/src/rfs/rtems-rfs-link.h,
libfs/src/rfs/rtems-rfs-mutex.c, libfs/src/rfs/rtems-rfs-mutex.h,
libfs/src/rfs/rtems-rfs-rtems.c,
libfs/src/rfs/rtems-rfs-rtems-dev.c,
libfs/src/rfs/rtems-rfs-rtems-dir.c,
libfs/src/rfs/rtems-rfs-rtems-file.c,
libfs/src/rfs/rtems-rfs-rtems.h,
libfs/src/rfs/rtems-rfs-rtems-utils.c,
libfs/src/rfs/rtems-rfs-shell.c, libfs/src/rfs/rtems-rfs-shell.h,
libfs/src/rfs/rtems-rfs-trace.c, libfs/src/rfs/rtems-rfs-trace.h:
New.
* Makefile.am, preinstall.am, libfs/Makefile.am,
wrapup/Makefile.am: Updated with the RFS support.
* libfs/README: Updated after 10 years.
* libblock/src/flashdisk.c, libblock/src/nvdisk.c,
libblock/src/ramdisk-driver.c: Updated to the new error reporting
in libblock.
* libmisc/shell/main_ls.c, libmisc/shell/print-ls.c: Fix printing
the size in long mode.
* libnetworking/nfs/bootp_subr.c,
libnetworking/rtems/rtems_bootp.c,
libnetworking/rtems/rtems_bsdnet_internal.h: Return the BOOTP/DHCP
to the forever behaviour of 4.9 with the ability to call BOOTP and
control the process if required.
* libmisc/shell/fts.c: Updated to the latest NetBSD version to
resolve heap allocation bugs.
* libmisc/shell/main_ls.c, libmisc/shell/print-ls.c: Fix printing
size bugs.
* libnetworking/rtems/mkrootfs.c: Fix byte order bug when creating
the loopback interface address.
* libmisc/shell/login_prompt.c: Switch from non-canonical mode with
timeout (Case C) to blocking IO waiting for single character on
login. In Case C mode, you cannot tell EOF from no data available.
This means we cannot tell when a telnet connection is dropped. This
was changed from 4.9 and resulted in breakage.
* libmisc/shell/shell.c: Always duplicate the environment passed to us
because we will delete it when the shell exits. If we do not
duplicate it, we could end up freeing memory which was not allocated
from the heap or double freeing it.
* libmisc/shell/main_getenv.c, libmisc/shell/main_setenv.c,
libmisc/shell/main_unsetenv.c: New. The shell can now play with
environment variables.
* libmisc/Makefile.am, libmisc/shell/shellconfig.h: Add setenv,
getenv, and unsetenv to the shell.
* Makefile.am, preinstall.am: Added statvfs.h.
* libcsupport/Makefile.am: Add statvfs.c.
* libcsupport/include/sys/statvfs.h, libcsupport/src/statvfs.c:
New.
* libcsupport/include/rtems/libio.h: Add a file system handler for
the statvfs call.
* libfs/src/devfs/devfs_init.c, libfs/src/dosfs/msdos_init.c,
libfs/src/imfs/imfs_init.c, libfs/src/nfsclient/src/nfs.c: Set the
statvfs handler to NULL.
* include/rtems/fs.h: Add a second node access field for the RFS
file system to hold a directory offset while the existing field
holds the inode number. This save a rescan of the directory when
working with directories.
* libblock/include/rtems/bdbuf.h: Added references and user fields
to the buffer descriptor.
* libblock/src/bdbuf.c: Added dynamic buffer support for different
block sizes. Fixed a number of bugs.
* libblock/src/blkdev.c: Release the disk device on an error.
* libblock/src/diskdevs.c: Set the block size to the media block
size during initialisation of the disk device.
* libblock/src/flashdisk.c, libblock/src/nvdisk.c,
libblock/src/ramdisk.c: Updated the drivers to handle variable
block sizes.
* libfs/src/dosfs/fat.c, libfs/src/dosfs/fat.h: Release any
buffers when an error occurs. The FAT buffer layer hangs onto a
single buffer while mounted. This should be fixed.
* sapi/inline/rtems/chain.inl: Added rtems_chain_set_off_chain,
rtems_chain_is_node_off_chain, and rtems_chain_previous.
* score/inline/rtems/score/chain.inl: Added _Chain_Set_off_chain,
and _Chain_Is_node_off_chain.
* libmisc/shell/main_ln.c, libmisc/shell/main_mknod.c,
libmisc/shell/mknod-pack_dev.c, libmisc/shell/mknod-pack_dev.h:
New shell commands.
* libmisc/Makefile.am, libmisc/shell/shellconfig.h: Added ln and
mknod commands.
* libmisc/shell/hexdump-display.c: Fixed the reopen bug which
showed up as a free with a bad pointer.
* libmisc/shell/main_mount.c: List the user adding file system
when listing the available file systems to mount.
* libmisc/shell/utils-cp.c: Remove the fixed static copy buffer
and use a large dynamic buffer.
* score/inline/rtems/score/address.inl, score/src/coremsgsubmit.c,
score/src/objectallocate.c, score/src/objectfree.c: Remove
warnings.
* libmisc/Makefile.am, libmisc/shell/main_chmod.c,
libmisc/shell/main_mdump.c, libmisc/shell/main_medit.c,
libmisc/shell/main_mfill.c, libmisc/shell/main_mmove.c,
libmisc/shell/main_msdosfmt.c, libmisc/shell/main_mwdump.c,
libmisc/shell/main_sleep.c, libmisc/shell/main_umask.c,
libmisc/shell/shell_script.c, libmisc/stringto/stringto.h,
libmisc/stringto/stringto_template.h: Convert return type from bool
to rtems_status_code and add rtems_string_to_pointer. Perform
associated clean up and changes for return type change.
* libmisc/stringto/stringtopointer.c: New file.
* libmisc/shell/extern-dd.h: Delcare the conv arrays extern to
stop PPC link errors.
* libmisc/shell/main_time.c, libmisc/Makefile.am,
libmisc/shell/shellconfig.h: Add a time command.
* libmisc/shell/hexdump-odsyntax.c: AVR has the same size float
and double. Fix error in case statement.
* libmisc/shell/main_dd.c: Remove sys/conf.h header. It is not
available if networking is disabled.
* libblock/src/bdbuf.c: Update comments.
* libblock/src/bdpart.c, libblock/src/ide_part_table.c: Get the
device from the rdev field of the stat buf.
* libcsupport/include/rtems/libio.h: Add a path length to evalpath
handler. Add parent locations to rmmod and unlink handlers.
* libcsupport/include/rtems/libio_.h: Add a path length to
rtems_filesystem_evaluate_path. Add
rtems_filesystem_evaluate_relative_path, rtems_filesystem_dirname,
and rtems_filesystem_prefix_separators. Remove
rtems_filesystem_evaluate_parent.
* libcsupport/src/base_fs.c, libcsupport/src/chdir.c,
libcsupport/src/chmod.c, libcsupport/src/chown.c,
libcsupport/src/chroot.c, libcsupport/src/fchdir.c,
libcsupport/src/link.c, libcsupport/src/mount.c,
libcsupport/src/open.c, libcsupport/src/privateenv.c,
libcsupport/src/readlink.c, libcsupport/src/unmount.c,
libcsupport/src/utime.c, libcsupport/src/unmount.c,
libcsupport/src/utime.c, libfs/src/devfs/devfs.h,
libfs/src/devfs/devfs_eval.c, libfs/src/devfs/devstat.c,
libfs/src/dosfs/msdos_create.c, libfs/src/dosfs/msdos_misc.c,
libfs/src/imfs/imfs.h, libfs/src/imfs/imfs_eval.c,
libfs/src/imfs/imfs_load_tar.c, libfs/src/imfs/ioman.c,
libfs/src/pipe/pipe.c, libmisc/fsmount/fsmount.c,
libnetworking/lib/ftpfs.c: Add the length parameter to the eval
call.
* libcsupport/src/eval.c: Add rtems_filesystem_prefix_separators,
rtems_filesystem_dirname,
rtems_filesystem_evaluate_relative_path. Add the length parameter
to the eval call.
* libcsupport/src/rmdir.c: Find the parent pathloc then the node
pathloc from that node. Remove the call to find the parent given
the node pathloc.
* libcsupport/src/stat.c: Add the length parameter to the eval
call. Set the device into the rdev field.
* libcsupport/src/unlink.c: Find the parent pathloc then the node
pathloc from that node. Remove the call to find the parent given
the node pathloc.
* libfs/src/dosfs/fat.c, libfs/src/dosfs/msdos_format.c: Get the
disk device number from the stat rdev field.
* libfs/src/dosfs/msdos.h: Add the length parameter to the eval
call. Add the parent pathloc to the rmnod handler.
* libfs/src/dosfs/msdos_dir.c: Add the parent pathloc to the rmnod
handler.
* libfs/src/dosfs/msdos_eval.c: Add the length parameter to the
eval and token call.
* libfs/src/imfs/imfs_directory.c: Add the parent pathloc to the
rmnod handler.
* libfs/src/imfs/imfs_fchmod.c: Do not test the mode flags for
only the allowed flags. Add the missing flags spec'ed in the POSIX
standard.
* libfs/src/imfs/imfs_fsunmount.c, libfs/src/imfs/imfs_rmnod.c,
libfs/src/imfs/imfs_unlink.c, libfs/src/imfs/memfile.c: Add the
parent node. Currently ignored in the IMFS.
* libfs/src/imfs/imfs_stat.c: Return the device number in the rdev
field.
* libfs/src/imfs/imfs_mknod.c, libfs/src/imfs/imfs_symlink.c : Add
the length parameter to the token call.
* libfs/src/nfsclient/src/nfs.c: Add the length parameter to the
eval call and parent node to the rmnod and unlink command.
* libmisc/shell/internal.h: Remove the libc mounter decl to make
public.
* libmisc/shell/main_mount.c: Add support for hooking external
mount support for new file systems.
* libmisc/shell/shell.h: Add helper functions for the mount
command.