The briefs of the libmisc files named a topic, not the content of the
file. Four shell briefs named the wrong command. The file
main_blksync.c said "RM Shell Command Implementation". The files
main_id.c, main_time.c and shellconfig.c named ls and debugrfs. Four
string conversion sources named the conversion, for example "Convert
String to Unsigned Long".
Write every brief in the style of the tree. A source brief starts with
"This source file contains". A command brief names the command the file
provides. A header brief starts with "This header file provides". Put
@file, @ingroup and @brief in this order in every block.
Updates #5717.
Assisted-by: Claude:claude-opus-5 claude-code
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Two of the 124 shell sources named a group. The other 122 gave Doxygen
no place to file them, so the shell groups listed two files.
Point each command at RTEMSImplShellCommands and each infrastructure
file at RTEMSImplShell. The imported utility code joins
RTEMSImplShellUtilities.
Fifty-five files still have no Doxygen block. Most of them hold the
imported utility code. A later commit adds the blocks.
Updates #5717.
Assisted-by: Claude:claude-opus-5 claude-code
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Eight components had no Doxygen group. Their files could not join a
group which reaches RTEMSImpl:
- the PCI bus support
- the driver manager
- the debugger server
- the trace buffer generator support
- the monitor
- the capture engine
- the FTP daemon
- the shell
The header rtems-trace-buffer-vars.h also named the group Shell, which
no file defines.
Define one group for each component. Give the shell two subgroups, one
for the commands and one for the utility code which the commands use.
Point rtems-trace-buffer-vars.h at RTEMSImplTrace.
The other files join these groups in later commits.
Updates #5717.
Assisted-by: Claude:claude-opus-5 claude-code
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
Many files in this directory were by persons and organizations
that have previously given relicensing permission. git history
was used to confirm authorship and contributions on files which
had unclear or missing copyrights.
Update #3053.
- Add 'rtems_shell_init_environment()' so a user can create the
shell environment without needing to run a shell.
- Move 'rtems_shell_lookup_topic', 'rtems_shell_can_see_cmd',
and 'rtems_shell_execute_cmd' from the internal interface to
the public interface.
Closes#3096.
Script does what is expected and tries to do it as
smartly as possible.
+ remove occurrences of two blank comment lines
next to each other after Id string line removed.
+ remove entire comment blocks which only exited to
contain CVS Ids
+ If the processing left a blank line at the top of
a file, it was removed.
* 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.
* libmisc/serdbg/termios_printk.c, libmisc/serdbg/termios_printk.h:
Fixed incompatible return value.
* libmisc/cpuuse/cpuusagereport.c: Changed output format.
* libmisc/Makefile.am, libmisc/monitor/mon-editor.c: New file.
* libmisc/capture/capture-cli.c, libmisc/monitor/mon-command.c,
libmisc/monitor/mon-monitor.c, libmisc/monitor/mon-object.c,
libmisc/monitor/mon-prmisc.c, libmisc/monitor/mon-symbols.c,
libmisc/monitor/monitor.h, libmisc/shell/cat_file.c,
libmisc/shell/cmds.c, libmisc/shell/internal.h,
libmisc/shell/main_help.c, libmisc/shell/shell.c,
libmisc/shell/shell.h, libmisc/shell/shell_cmdset.c,
libmisc/shell/shell_getchar.c, libmisc/shell/str2int.c: Various global
data is now read only. Added 'const' qualifier to many pointer
parameters. It is no longer possible to remove monitor commands.
Moved monitor line editor into a separate file to avoid unnecessary
dependencies.
* libnetworking/rtems/tftp.h: Provide a decl to the TFTP file
system opts table.
* libnetworking/rtems/ftpfs.h: Provide a decl to the FTP file
system opts table.
* libmisc/Makefile.am: Add the mount command and supporting files.
* libmisc/preinstall.am: Rebuilt.
* libmisc/shell/cat_file.c, libmisc/shell/cmds.c,
libmisc/shell/main_alias.c, libmisc/shell/main_cat.c,
libmisc/shell/main_cd.c, libmisc/shell/main_chdir.c,
libmisc/shell/main_chmod.c, libmisc/shell/main_chroot.c,
libmisc/shell/main_cpuuse.c, libmisc/shell/main_date.c,
libmisc/shell/main_dir.c, libmisc/shell/main_exit.c,
libmisc/shell/main_help.c, libmisc/shell/main_id.c,
libmisc/shell/main_logoff.c, libmisc/shell/main_ls.c,
libmisc/shell/main_mallocdump.c, libmisc/shell/main_mdump.c,
libmisc/shell/main_medit.c, libmisc/shell/main_mfill.c,
libmisc/shell/main_mkdir.c, libmisc/shell/main_mmove.c,
libmisc/shell/main_mwdump.c, libmisc/shell/main_pwd.c,
libmisc/shell/main_rm.c, libmisc/shell/main_rmdir.c,
libmisc/shell/main_stackuse.c, libmisc/shell/main_tty.c,
libmisc/shell/main_umask.c, libmisc/shell/main_whoami.c,
libmisc/shell/shell.c, libmisc/shell/shell_cmdset.c,
libmisc/shell/shell_makeargs.c, libmisc/shell/str2int.c,
libmisc/shell/write_file.c: Move all shell_* types, variables and
functions to rtems_shell_* to avoid namespace clashes with
applications. The is an RTEMS shell after all.
* libmisc/shell/shell.h, libmisc/shell/internal.h,
libmisc/shell/shellconfig.h: Move all shell_* types, variables and
functions to rtems_shell_* to avoid namespace clashes with
applications. Add the mount command supporting types.
* libmisc/shell/main_mount.c, libmisc/shell/main_mount_ftp.c,
libmisc/shell/main_mount_msdos.c, libmisc/shell/main_mount_nfs.c,
libmisc/shell/main_mount_tftp.c: New.
* libmisc/Makefile.am, libmisc/shell/cmd_help.c, libmisc/shell/cmds.c,
libmisc/shell/internal.h, libmisc/shell/shell.c,
libmisc/shell/shell.h, libmisc/shell/shellconfig.h: Command set
processing now separated from main command loop. Addition of user
commands and aliases tested. Monitor registration now explicit.
* libmisc/shell/shell_cmdset.c, libmisc/shell/shell_makeargs.c,
libmisc/shell/write_file.c: New files.
* ChangeLog, preinstall.am, libmisc/Makefile.am, libmisc/shell/cmds.c,
libmisc/shell/shell.c, libmisc/shell/shell.h: Split shell commands
into multiple files and add initial stages of command configuration.
This seems to work but the monitor commands need to be integrated
this way and the ability to configure user commands needs to be
tested.
* libmisc/shell/cat_file.c, libmisc/shell/cmd_alias.c,
libmisc/shell/cmd_cat.c, libmisc/shell/cmd_cd.c,
libmisc/shell/cmd_chdir.c, libmisc/shell/cmd_chmod.c,
libmisc/shell/cmd_chroot.c, libmisc/shell/cmd_date.c,
libmisc/shell/cmd_dir.c, libmisc/shell/cmd_exit.c,
libmisc/shell/cmd_help.c, libmisc/shell/cmd_id.c,
libmisc/shell/cmd_logoff.c, libmisc/shell/cmd_ls.c,
libmisc/shell/cmd_mallocdump.c, libmisc/shell/cmd_mdump.c,
libmisc/shell/cmd_medit.c, libmisc/shell/cmd_mfill.c,
libmisc/shell/cmd_mkdir.c, libmisc/shell/cmd_mmove.c,
libmisc/shell/cmd_mwdump.c, libmisc/shell/cmd_pwd.c,
libmisc/shell/cmd_rm.c, libmisc/shell/cmd_rmdir.c,
libmisc/shell/cmd_tty.c, libmisc/shell/cmd_umask.c,
libmisc/shell/cmd_whoami.c, libmisc/shell/internal.h,
libmisc/shell/shellconfig.c, libmisc/shell/shellconfig.h,
libmisc/shell/str2int.c: New files.