Symbol: trussinfo
usr.bin/truss/extern.h
34
extern int print_line_prefix(struct trussinfo *);
usr.bin/truss/extern.h
35
extern void setup_and_wait(struct trussinfo *, char **);
usr.bin/truss/extern.h
36
extern void start_tracing(struct trussinfo *, pid_t);
usr.bin/truss/extern.h
39
extern void eventloop(struct trussinfo *);
usr.bin/truss/main.c
101
trussinfo->flags |= EXECVEARGS;
usr.bin/truss/main.c
104
trussinfo->flags |= (COUNTONLY | NOSIGS);
usr.bin/truss/main.c
107
trussinfo->flags |= EXECVEENVS;
usr.bin/truss/main.c
110
trussinfo->flags |= ABSOLUTETIMESTAMPS;
usr.bin/truss/main.c
113
trussinfo->flags |= RELATIVETIMESTAMPS;
usr.bin/truss/main.c
119
trussinfo->strsize = (int)strtonum(optarg, 0, INT_MAX,
usr.bin/truss/main.c
125
trussinfo->flags |= NOSIGS;
usr.bin/truss/main.c
128
trussinfo->flags |= DISPLAYTIDS;
usr.bin/truss/main.c
145
if ((trussinfo->outfile = fopen(fname, "we")) == NULL)
usr.bin/truss/main.c
158
setup_and_wait(trussinfo, command);
usr.bin/truss/main.c
169
start_tracing(trussinfo, pid);
usr.bin/truss/main.c
176
if (LIST_FIRST(&trussinfo->proclist)->abi == NULL) {
usr.bin/truss/main.c
184
kill(LIST_FIRST(&trussinfo->proclist)->pid, SIGKILL);
usr.bin/truss/main.c
185
ptrace(PT_DETACH, LIST_FIRST(&trussinfo->proclist)->pid, NULL,
usr.bin/truss/main.c
189
ptrace(PT_SYSCALL, LIST_FIRST(&trussinfo->proclist)->pid, (caddr_t)1,
usr.bin/truss/main.c
197
clock_gettime(CLOCK_REALTIME, &trussinfo->start_time);
usr.bin/truss/main.c
199
eventloop(trussinfo);
usr.bin/truss/main.c
201
if (trussinfo->flags & COUNTONLY)
usr.bin/truss/main.c
202
print_summary(trussinfo);
usr.bin/truss/main.c
204
fflush(trussinfo->outfile);
usr.bin/truss/main.c
69
struct trussinfo *trussinfo;
usr.bin/truss/main.c
79
trussinfo = (struct trussinfo *)calloc(1, sizeof(struct trussinfo));
usr.bin/truss/main.c
80
if (trussinfo == NULL)
usr.bin/truss/main.c
84
trussinfo->outfile = stderr;
usr.bin/truss/main.c
85
trussinfo->strsize = 32;
usr.bin/truss/main.c
86
trussinfo->curthread = NULL;
usr.bin/truss/main.c
87
LIST_INIT(&trussinfo->proclist);
usr.bin/truss/main.c
98
trussinfo->flags |= FOLLOWFORKS;
usr.bin/truss/setup.c
148
setup_and_wait(struct trussinfo *info, char *command[])
usr.bin/truss/setup.c
172
start_tracing(struct trussinfo *info, pid_t pid)
usr.bin/truss/setup.c
293
add_threads(struct trussinfo *info, struct procinfo *p)
usr.bin/truss/setup.c
321
new_proc(struct trussinfo *info, pid_t pid, lwpid_t lwpid)
usr.bin/truss/setup.c
364
detach_all_procs(struct trussinfo *info)
usr.bin/truss/setup.c
375
find_proc(struct trussinfo *info, pid_t pid)
usr.bin/truss/setup.c
391
find_thread(struct trussinfo *info, pid_t pid, lwpid_t lwpid)
usr.bin/truss/setup.c
413
find_exit_thread(struct trussinfo *info, pid_t pid)
usr.bin/truss/setup.c
453
enter_syscall(struct trussinfo *info, struct threadinfo *t,
usr.bin/truss/setup.c
513
thread_exit_syscall(struct trussinfo *info)
usr.bin/truss/setup.c
528
exit_syscall(struct trussinfo *info, struct ptrace_lwpinfo *pl)
usr.bin/truss/setup.c
590
print_line_prefix(struct trussinfo *info)
usr.bin/truss/setup.c
622
report_thread_death(struct trussinfo *info)
usr.bin/truss/setup.c
633
report_thread_birth(struct trussinfo *info)
usr.bin/truss/setup.c
645
report_exit(struct trussinfo *info, siginfo_t *si)
usr.bin/truss/setup.c
662
report_new_child(struct trussinfo *info)
usr.bin/truss/setup.c
69
static void enter_syscall(struct trussinfo *, struct threadinfo *,
usr.bin/truss/setup.c
71
static void new_proc(struct trussinfo *, pid_t, lwpid_t);
usr.bin/truss/setup.c
728
report_signal(struct trussinfo *info, siginfo_t *si, struct ptrace_lwpinfo *pl)
usr.bin/truss/setup.c
751
eventloop(struct trussinfo *info)
usr.bin/truss/syscall.h
232
struct trussinfo *);
usr.bin/truss/syscall.h
274
void print_syscall(struct trussinfo *);
usr.bin/truss/syscall.h
275
void print_syscall_ret(struct trussinfo *, int, syscallarg_t *);
usr.bin/truss/syscall.h
276
void print_summary(struct trussinfo *trussinfo);
usr.bin/truss/syscalls.c
1090
print_sockaddr(FILE *fp, struct trussinfo *trussinfo, uintptr_t arg,
usr.bin/truss/syscalls.c
1099
pid_t pid = trussinfo->curthread->proc->pid;
usr.bin/truss/syscalls.c
1160
print_iovec(FILE *fp, struct trussinfo *trussinfo, uintptr_t arg, int iovcnt)
usr.bin/truss/syscalls.c
1163
size_t max_string = trussinfo->strsize;
usr.bin/truss/syscalls.c
1166
pid_t pid = trussinfo->curthread->proc->pid;
usr.bin/truss/syscalls.c
1579
print_netlink(FILE *fp, struct trussinfo *trussinfo, struct msghdr *msg)
usr.bin/truss/syscalls.c
1585
pid_t pid = trussinfo->curthread->proc->pid;
usr.bin/truss/syscalls.c
1640
struct trussinfo *trussinfo)
usr.bin/truss/syscalls.c
1648
pid = trussinfo->curthread->proc->pid;
usr.bin/truss/syscalls.c
1704
int max_string = trussinfo->strsize;
usr.bin/truss/syscalls.c
1753
trussinfo->curthread->proc->abi->pointer_size;
usr.bin/truss/syscalls.c
1760
(trussinfo->flags & EXECVEARGS) == 0) ||
usr.bin/truss/syscalls.c
1762
(trussinfo->flags & EXECVEENVS) == 0)) {
usr.bin/truss/syscalls.c
1825
trussinfo->curthread->proc->abi->pointer_size;
usr.bin/truss/syscalls.c
2125
print_sockaddr(fp, trussinfo, args[sc->offset], len);
usr.bin/truss/syscalls.c
2625
print_iovec(fp, trussinfo, (uintptr_t)hdtr.headers,
usr.bin/truss/syscalls.c
2627
print_iovec(fp, trussinfo, (uintptr_t)hdtr.trailers,
usr.bin/truss/syscalls.c
2684
print_iovec(fp, trussinfo, args[sc->offset],
usr.bin/truss/syscalls.c
2768
print_sockaddr(fp, trussinfo, (uintptr_t)msghdr.msg_name, msghdr.msg_namelen);
usr.bin/truss/syscalls.c
2771
if (!print_netlink(fp, trussinfo, &msghdr)) {
usr.bin/truss/syscalls.c
2772
print_iovec(fp, trussinfo, (uintptr_t)msghdr.msg_iov,
usr.bin/truss/syscalls.c
2794
print_syscall(struct trussinfo *trussinfo)
usr.bin/truss/syscalls.c
2801
t = trussinfo->curthread;
usr.bin/truss/syscalls.c
2807
len = print_line_prefix(trussinfo);
usr.bin/truss/syscalls.c
2808
len += fprintf(trussinfo->outfile, "%s(", name);
usr.bin/truss/syscalls.c
2812
len += fprintf(trussinfo->outfile, "%s", s_args[i]);
usr.bin/truss/syscalls.c
2814
len += fprintf(trussinfo->outfile,
usr.bin/truss/syscalls.c
2816
len += fprintf(trussinfo->outfile, "%s", i < (nargs - 1) ?
usr.bin/truss/syscalls.c
2819
len += fprintf(trussinfo->outfile, ")");
usr.bin/truss/syscalls.c
2821
fprintf(trussinfo->outfile, "\t");
usr.bin/truss/syscalls.c
2825
print_syscall_ret(struct trussinfo *trussinfo, int error, syscallarg_t *retval)
usr.bin/truss/syscalls.c
2831
t = trussinfo->curthread;
usr.bin/truss/syscalls.c
2833
if (trussinfo->flags & COUNTONLY) {
usr.bin/truss/syscalls.c
2842
print_syscall(trussinfo);
usr.bin/truss/syscalls.c
2843
fflush(trussinfo->outfile);
usr.bin/truss/syscalls.c
2850
fprintf(trussinfo->outfile, "\n");
usr.bin/truss/syscalls.c
2855
fprintf(trussinfo->outfile, " ERESTART\n");
usr.bin/truss/syscalls.c
2857
fprintf(trussinfo->outfile, " EJUSTRETURN\n");
usr.bin/truss/syscalls.c
2859
fprintf(trussinfo->outfile, " ERR#%d '%s'\n",
usr.bin/truss/syscalls.c
2870
fprintf(trussinfo->outfile, " = %jd (0x%jx)\n", (intmax_t)off,
usr.bin/truss/syscalls.c
2873
fprintf(trussinfo->outfile, " = %jd (0x%jx)\n",
usr.bin/truss/syscalls.c
2879
print_summary(struct trussinfo *trussinfo)
usr.bin/truss/syscalls.c
2885
fprintf(trussinfo->outfile, "%-20s%15s%8s%8s\n",
usr.bin/truss/syscalls.c
2890
fprintf(trussinfo->outfile, "%-20s%5jd.%09ld%8d%8d\n",
usr.bin/truss/syscalls.c
2898
fprintf(trussinfo->outfile, "%20s%15s%8s%8s\n",
usr.bin/truss/syscalls.c
2900
fprintf(trussinfo->outfile, "%-20s%5jd.%09ld%8d%8d\n",
usr.bin/truss/truss.h
41
struct trussinfo;