libclues
Linux C++ Tracing Library
Loading...
Searching...
No Matches
Args.hxx
1#pragma once
2
3// TCLAP
4#include <tclap/CmdLine.h>
5
6// cosmos
7#include <cosmos/proc/process.hxx>
8
9namespace clues {
10
11struct Args {
12protected:
13 TCLAP::ValuesConstraint<std::string> m_abi_constraint;
14
15 std::vector<std::string> getABIs();
16public:
17 Args();
18
19 TCLAP::CmdLine cmdline;
21 TCLAP::ValueArg<std::underlying_type<cosmos::ProcessID>::type> attach_proc;
23 TCLAP::ValueArg<std::string> follow_execve;
25 TCLAP::ValueArg<std::string> follow_children;
27 TCLAP::SwitchArg follow_threads;
29 TCLAP::SwitchArg follow_children_switch;
31 TCLAP::SwitchArg no_initial_threads_attach;
33 TCLAP::SwitchArg print_fd_info;
35 TCLAP::SwitchArg verbose;
37 TCLAP::ValueArg<int> max_value_len;
39 TCLAP::SwitchArg list_syscalls;
41 TCLAP::ValueArg<std::string> list_abi_syscalls;
43 TCLAP::SwitchArg list_abis;
45 TCLAP::ValueArg<std::string> syscall_filter;
46};
47
48} // end ns
TCLAP::SwitchArg list_syscalls
List system call names and their numbers.
Definition Args.hxx:39
TCLAP::ValueArg< std::string > follow_execve
Controls the behaviour upon execve().
Definition Args.hxx:23
TCLAP::SwitchArg list_abis
List supported system call ABIs.
Definition Args.hxx:43
TCLAP::ValueArg< std::string > follow_children
controls the behaviour upon clone()/fork().
Definition Args.hxx:25
TCLAP::SwitchArg print_fd_info
Print additional file descriptor information.
Definition Args.hxx:33
TCLAP::ValueArg< std::string > syscall_filter
Configure system calls which to trace.
Definition Args.hxx:45
TCLAP::SwitchArg no_initial_threads_attach
Don't attach all other threads even if follow_children_switch is set.
Definition Args.hxx:31
TCLAP::SwitchArg follow_threads
controls whether threads within the same process are followed.
Definition Args.hxx:27
TCLAP::SwitchArg follow_children_switch
Short form of 'follow_children yes'.
Definition Args.hxx:29
TCLAP::ValueArg< int > max_value_len
Maximum length of parameter values to print.
Definition Args.hxx:37
TCLAP::SwitchArg verbose
Increase verbosity of tracing output.
Definition Args.hxx:35
TCLAP::ValueArg< std::string > list_abi_syscalls
List ABI-specific system call names and their numbers.
Definition Args.hxx:41
TCLAP::ValueArg< std::underlying_type< cosmos::ProcessID >::type > attach_proc
Already running process to attach to.
Definition Args.hxx:21