Age | Commit message (Collapse) | Author |
|
* main.c (argp_parser): New option --anonymous-owner.
* main.h: Publish it.
* process.c (process_lookup_pid): Use it to set the file owner
uid of non-owned processes.
|
|
* proclist.c, proclist.h (proclist_create_node): Use a
ps_context passed by the caller; errors are no longer possible, rename
to proclist_make_node and change the signature accordingly.
* rootdir.c, rootdir.h (rootdir_create_node): Likewise.
* main.c (main): Create the ps_context here and pass it to
root_make_node. (root_make_node): Pass it to proclist_make_node and
rootdir_make_node.
|
|
* main.c: Don't call netfs_server_loop repeatedly; it should
never return.
|
|
* main.c (main): Handle errors from argp_parse and
root_make_node.
|
|
* main.c (argp_parser): Add --compatible, which sets the options
required for compatibility with the procps tools.
|
|
* main.c (argp_parser, main): Add the --kernel-pid option.
* main.h: Publish it.
* rootdir.c (rootdir_gc_cmdline): New function.
|
|
* main.c (argp_parse, main): Add the --fake-self option.
* main.h: Publish it.
* rootdir.c (rootdir_gc_fakeself, rootdir_entries,
rootdir_create_node): Use it.
|
|
* main.c (argp_parser, main): Add the --stat-mode option.
* process.c (process_lookup_pid): Use it.
|
|
* main.c (argp_parser, main): Add and parse the --clk-tck option.
* main.h: Publish opt_clk_tck.
* process.c (sc_tc): Use the user-provided clock frequency.
* rootdir.c (rootdir_gc_stat): Likewise.
|
|
* rootdir.c, rootdir.h: New files.
* main.c: Use rootdir_create_node.
* Makefile: Add the rootdir module.
|
|
* Makefile: Add libps to the $(LIBS).
* proclist.c, proclist.h: Embed the proc server port in a
ps_context structure. (proclist_make_node): Change to prototype to
allow for the possibility of error. Rename to proclist_create_node to
reflect the change and non-triviality.
* process.c, process.h: Revamp. Use a full-blown procstat
structure instead of just the procinfo fetched from the process
server. Use the additional data to complement [pid]/stat.
(process_lookup_pid): Get a ps_context structure instead of a port to
the process server.
* main.c (root_make_node): Convert to the new interface for
proclist_create_node.
|
|
* procfs.h, procfs.c (procfs_make_ino): New function,
invents an inode number by hashing the parent's and the name of an
entry. (procfs_lookup): Use it to assign an inode number to child
nodes at lookup time.
* main.c (root_make_node): Assign an arbitrary inode number to
the root directory.
|
|
* dircat.c, dircat.h: New files, merge directories.
* Makefile: Add the dircat module.
* main.c: Use dircat to merge the proclist into the root
directory, instead of having it as a stand-alone one.
* procfs.h, procfs.c: Add a "refresh hack" to have the
contents of the root directory recreated on each request.
* proclist.c (proclist_make_node): Enable the hack in question.
|
|
* procfs.c, procfs.h: Extend the signature of the
cleanup_contents callback in the procfs_node_ops structure to include
the hook and contents_len. (cleanup_contents_with_free,
cleanup_contents_with_vm_deallocate): New functions, can be used as
a cleanup_contents callback for simple cases.
* procfs_dir.c, procfs_dir.h (procfs_dir_make_node):
Update, add a cleanup callback, make sure the cleanup callback is
invoked if there is an error.
* proclist.c (proclist_make_node), main.c (main): Update to match
the new interfaces.
|
|
* proclist.h, proclist.c: New files.
* main.c: Add a proclist directory based on them.
* Makefile: Include the proclist module.
|
|
* procfs_dir.h: New file; declare the procfs_dir_make_node
function, based on the procfs_dir_entry structure.
* procfs_dir.c: New file; implement simple directories.
* Makefile: Add the procfs_dir module.
* main.c: Use it.
|
|
* procfs_file.h: New file, declares procfs_file_make_node.
* procfs_file.c: New file, implements procfs_file_make_node.
* main.c: Use them.
* Makefile: Add the procfs_file module.
|
|
* procfs.h: New file; basic interfaces for procfs nodes.
* procfs.c: New file; implement the basic infrastructure.
* netfs.c: New file; bridge libnetfs and the procfs interfaces.
* main.c: New file; mostly a "Hello, World!" for now.
* Makefile: New file; standalone for now.
|