Symbol: trussinfo
usr.bin/truss/extern.h
46
extern void x86_64_syscall_entry(struct trussinfo *, int);
usr.bin/truss/extern.h
47
extern int x86_64_syscall_exit(struct trussinfo *, int);
usr.bin/truss/main.c
102
asprintf(&etype, "%s/%d/etype", procfs_path, trussinfo->pid);
usr.bin/truss/main.c
136
struct trussinfo *trussinfo;
usr.bin/truss/main.c
139
trussinfo = (struct trussinfo *)calloc(1, sizeof(struct trussinfo));
usr.bin/truss/main.c
140
if (trussinfo == NULL)
usr.bin/truss/main.c
142
trussinfo->outfile = stderr;
usr.bin/truss/main.c
162
trussinfo->pid = atoi(optarg);
usr.bin/truss/main.c
163
if (trussinfo->pid == getpid()) {
usr.bin/truss/main.c
165
errx(2, "truss: attempt to self trace: %d\n", trussinfo->pid);
usr.bin/truss/main.c
172
trussinfo->flags |= NOSIGS;
usr.bin/truss/main.c
180
if ((trussinfo->pid == 0 && ac == 0) || (trussinfo->pid != 0 && ac != 0))
usr.bin/truss/main.c
184
if ((trussinfo->outfile = fopen(fname, "w")) == NULL)
usr.bin/truss/main.c
195
if (trussinfo->pid == 0) { /* Start a command ourselves */
usr.bin/truss/main.c
197
trussinfo->pid = setup_and_wait(command);
usr.bin/truss/main.c
214
trussinfo->pid, S_EXEC | S_SCE | S_SCX | S_CORE | S_EXIT |
usr.bin/truss/main.c
215
((trussinfo->flags & NOSIGS) ? 0 : S_SIG));
usr.bin/truss/main.c
221
funcs = set_etype(trussinfo);
usr.bin/truss/main.c
239
funcs->enter_syscall(trussinfo, pfs.val);
usr.bin/truss/main.c
253
funcs->exit_syscall(trussinfo, pfs.val);
usr.bin/truss/main.c
256
fprintf(trussinfo->outfile, "SIGNAL %lu\n", pfs.val);
usr.bin/truss/main.c
260
fprintf (trussinfo->outfile, "process exit, rval = %lu\n", pfs.val);
usr.bin/truss/main.c
263
funcs = set_etype(trussinfo);
usr.bin/truss/main.c
267
fprintf (trussinfo->outfile, "Process stopped because of: %d\n", i);
usr.bin/truss/main.c
272
if (kill(trussinfo->pid, 0) == -1 && errno == ESRCH)
usr.bin/truss/main.c
278
fflush(trussinfo->outfile);
usr.bin/truss/main.c
79
void (*enter_syscall)(struct trussinfo *, int);
usr.bin/truss/main.c
80
int (*exit_syscall)(struct trussinfo *, int);
usr.bin/truss/main.c
96
set_etype(struct trussinfo *trussinfo) {
usr.bin/truss/syscall.h
49
void print_syscall(struct trussinfo *, const char *, int, char **);
usr.bin/truss/syscall.h
50
void print_syscall_ret(struct trussinfo *, const char *, int, char **, int, int);
usr.bin/truss/syscalls.c
297
print_syscall(struct trussinfo *trussinfo, const char *name, int nargs, char **s_args) {
usr.bin/truss/syscalls.c
300
len += fprintf(trussinfo->outfile, "%s(", name);
usr.bin/truss/syscalls.c
303
len += fprintf(trussinfo->outfile, "%s", s_args[i]);
usr.bin/truss/syscalls.c
305
len += fprintf(trussinfo->outfile, "<missing argument>");
usr.bin/truss/syscalls.c
306
len += fprintf(trussinfo->outfile, "%s", i < (nargs - 1) ? "," : "");
usr.bin/truss/syscalls.c
308
len += fprintf(trussinfo->outfile, ")");
usr.bin/truss/syscalls.c
310
fprintf(trussinfo->outfile, "\t");
usr.bin/truss/syscalls.c
314
print_syscall_ret(struct trussinfo *trussinfo, const char *name, int nargs, char **s_args, int errorp, int retval) {
usr.bin/truss/syscalls.c
315
print_syscall(trussinfo, name, nargs, s_args);
usr.bin/truss/syscalls.c
317
fprintf(trussinfo->outfile, " ERR#%d '%s'\n", retval, strerror(retval));
usr.bin/truss/syscalls.c
319
fprintf(trussinfo->outfile, " = %d (0x%x)\n", retval, retval);
usr.bin/truss/x86_64-fbsd.c
109
x86_64_syscall_entry(struct trussinfo *trussinfo, int nargs) {
usr.bin/truss/x86_64-fbsd.c
117
if (fd == -1 || trussinfo->pid != cpid) {
usr.bin/truss/x86_64-fbsd.c
118
asprintf(&buf, "%s/%d/regs", procfs_path, trussinfo->pid);
usr.bin/truss/x86_64-fbsd.c
124
fprintf(trussinfo->outfile, "-- CANNOT READ REGISTERS --\n");
usr.bin/truss/x86_64-fbsd.c
127
cpid = trussinfo->pid;
usr.bin/truss/x86_64-fbsd.c
154
fprintf(trussinfo->outfile, "-- UNKNOWN SYSCALL %d --\n", syscall_num);
usr.bin/truss/x86_64-fbsd.c
162
fprintf(trussinfo->outfile, "unknown syscall %s -- setting args to %d\n",
usr.bin/truss/x86_64-fbsd.c
230
fprintf(trussinfo->outfile, "\n");
usr.bin/truss/x86_64-fbsd.c
242
print_syscall(trussinfo, fsc.name, fsc.nargs, fsc.s_args);
usr.bin/truss/x86_64-fbsd.c
246
fprintf(trussinfo->outfile, "\n");
usr.bin/truss/x86_64-fbsd.c
259
x86_64_syscall_exit(struct trussinfo *trussinfo, int syscall_num __unused) {
usr.bin/truss/x86_64-fbsd.c
270
if (fd == -1 || trussinfo->pid != cpid) {
usr.bin/truss/x86_64-fbsd.c
271
asprintf(&buf, "%s/%d/regs", procfs_path, trussinfo->pid);
usr.bin/truss/x86_64-fbsd.c
277
fprintf(trussinfo->outfile, "-- CANNOT READ REGISTERS --\n");
usr.bin/truss/x86_64-fbsd.c
280
cpid = trussinfo->pid;
usr.bin/truss/x86_64-fbsd.c
284
fprintf(trussinfo->outfile, "\n");
usr.bin/truss/x86_64-fbsd.c
326
print_syscall_ret(trussinfo, fsc.name, fsc.nargs, fsc.s_args, errorp, retval);