Skip to content

Commit ff5606a

Browse files
author
Petr Machata
committed
Split ltrace.conf into libc.so.conf and libacl.so.conf; add libm.so.conf
- This won't work as is--if libc.so.6.conf isn't found, ltrace needs to keep looking for libc.so.conf.
1 parent 3992a0b commit ff5606a

File tree

4 files changed

+522
-106
lines changed

4 files changed

+522
-106
lines changed

Makefile.am

+2-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,8 @@ dist_man5_MANS = ltrace.conf.5
6464

6565
dist_doc_DATA = COPYING CREDITS INSTALL README TODO
6666

67-
dist_pkgdata_DATA = etc/syscalls.conf etc/ltrace.conf
67+
dist_pkgdata_DATA = etc/syscalls.conf etc/libc.so.conf \
68+
etc/libm.so.conf etc/libacl.so.conf
6869

6970
EXTRA_DIST = \
7071
debian/changelog \

etc/libacl.so.conf

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# See ltrace.conf(5) for description of syntax of this file.
2+
3+
# sys/acl.h
4+
int acl_add_perm(addr,uint);
5+
int acl_calc_mask(addr);
6+
int acl_clear_perms(addr);
7+
int acl_copy_entry(addr,addr);
8+
int acl_copy_ext(addr,addr,int);
9+
addr acl_copy_int(addr);
10+
int acl_create_entry(addr,addr);
11+
int acl_delete_def_file(string);
12+
int acl_delete_entry(addr,addr);
13+
int acl_delete_perm(addr,uint);
14+
addr acl_dup(addr);
15+
int acl_free(addr);
16+
addr acl_from_text(string);
17+
int acl_get_entry(addr,int,addr);
18+
addr acl_get_fd(int);
19+
addr acl_get_file(string,int);
20+
int acl_get_permset(addr,addr);
21+
addr acl_get_qualifier(addr);
22+
int acl_get_tag_type(addr,addr);
23+
addr acl_init(int);
24+
int acl_set_fd(int,addr);
25+
int acl_set_file(string,int,addr);
26+
int acl_set_permset(addr,addr);
27+
int acl_set_qualifier(addr,addr);
28+
int acl_set_tag_type(addr,int);
29+
int acl_size(addr);
30+
string acl_to_text(addr,addr);
31+
int acl_valid(addr);
32+
33+
# acl/libacl.h
34+
int acl_check(addr,addr);
35+
int acl_cmp(addr,addr);
36+
int acl_entries(addr);
37+
int acl_equiv_mode(addr,addr);
38+
string acl_error(int);
39+
int acl_extended_fd(int);
40+
int acl_extended_file(string);
41+
addr acl_from_mode(octal);
42+
int acl_get_perm(addr,uint);
43+
string acl_to_any_text(addr,string,char,int);

etc/ltrace.conf etc/libc.so.conf

+51-105
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,6 @@
1-
; ltrace.conf
2-
;
3-
; ~/.ltrace.conf will also be read, if it exists. The -F option may be
4-
; used to suppress the automatic inclusion of both this file and
5-
; ~/.ltrace.conf, and load a different config file or config files
6-
; instead.
7-
;
8-
; See ltrace.conf(5) for description of syntax of this file.
9-
10-
; arpa/inet.h
1+
# See ltrace.conf(5) for description of syntax of this file.
2+
3+
# arpa/inet.h
114
typedef in_addr = struct(hex(uint));
125
int inet_aton(string, +in_addr*);
136
hex(uint) inet_addr(string);
@@ -17,42 +10,42 @@ in_addr inet_makeaddr(hex(int), hex(int));
1710
hex(uint) inet_lnaof(in_addr);
1811
hex(uint) inet_netof(in_addr);
1912

20-
; bfd.h
13+
# bfd.h
2114
void bfd_init();
2215
int bfd_set_default_target(string);
2316
addr bfd_scan_vma(string, addr, int);
2417
addr bfd_openr(string,string);
2518
int bfd_check_format(addr,int);
2619

27-
; ctype.h
20+
# ctype.h
2821
char tolower(char);
2922
char toupper(char);
3023
addr __ctype_b_loc();
3124
addr __ctype_tolower_loc();
3225
addr __ctype_toupper_loc();
3326
ulong __ctype_get_mb_cur_max();
3427

35-
; curses.h
28+
# curses.h
3629
int waddch(addr, char);
3730
int mvprintw(int, int, format);
3831
int wmove(addr, int, int);
3932
int waddnstr(addr, string, int);
4033
string tgoto(string, int, int);
4134

42-
; dirent.h
35+
# dirent.h
4336

44-
; We can't portably rely on DIR internals at all. Ideally this would
45-
; be implemented in a per-OS config file, but even on Linux, we don't
46-
; know whether there's a lock in the structure or not. Luckily the
47-
; one interesting datum, file descriptor, we can access reliably.
48-
; Having the structure half-defined like this is potentially
49-
; problematic as structure size influences parameter passing. But
50-
; POSIX always uses pointer to the structure, so it's fine.
37+
# We can't portably rely on DIR internals at all. Ideally this would
38+
# be implemented in a per-OS config file, but even on Linux, we don't
39+
# know whether there's a lock in the structure or not. Luckily the
40+
# one interesting datum, file descriptor, we can access reliably.
41+
# Having the structure half-defined like this is potentially
42+
# problematic as structure size influences parameter passing. But
43+
# POSIX always uses pointer to the structure, so it's fine.
5144

5245
typedef DIR = struct(int);
5346

54-
; XXX We can't represent the following portably without having either
55-
; uulong, or directly uint64_t.'
47+
# XXX We can't represent the following portably without having either
48+
# uulong, or directly uint64_t.'
5649

5750
typedef ino_t = ulong;
5851
typedef ino_t64 = ulong;
@@ -72,49 +65,49 @@ void rewinddir(DIR *);
7265
long telldir(DIR *);
7366
void seekdir(DIR *, long);
7467

75-
; dlfcn.h
68+
# dlfcn.h
7669
addr dlopen(string, int);
7770
string dlerror();
7871
addr dlsym(addr, string);
7972
int dlclose(addr);
8073

81-
; errno.h
74+
# errno.h
8275
addr __errno_location();
8376

84-
; fcntl.h
77+
# fcntl.h
8578
int open(string,int,octal); ; WARNING: 3rd argument may not be there
8679
int open64(string,int,octal); ; WARNING: 3rd argument may not be there
8780

88-
; fnmatch.h
81+
# fnmatch.h
8982
int fnmatch(string, string, int);
9083

91-
; getopt.h
84+
# getopt.h
9285
int getopt_long(int,addr,string,addr,int*);
9386
int getopt_long_only(int,addr,string,addr,addr);
9487

95-
; grp.h
88+
# grp.h
9689
void endgrent();
9790
addr getgrnam(string);
9891
void setgrent();
9992
addr getgrent();
10093

101-
; libintl.h
94+
# libintl.h
10295
string __dcgettext(string,string,int);
10396
string bindtextdomain(string, string);
10497
string textdomain(string);
10598

106-
; libio.h
99+
# libio.h
107100
char _IO_getc(file);
108101
int _IO_putc(char,file);
109102

110-
; locale.h
103+
# locale.h
111104
string setlocale(enum(LC_CTYPE=0, LC_NUMERIC=1, LC_TIME=2, LC_COLLATE=3, LC_MONETARY=4, LC_MESSAGES=5, LC_ALL=6, LC_PAPER=7, LC_NAME=8, LC_ADDRESS=9, LC_TELEPHONE=10, LC_MEASUREMENT=11, LC_IDENTIFICATION=12), string);
112105

113-
; mcheck.h
106+
# mcheck.h
114107
void mtrace();
115108
void muntrace();
116109

117-
; mqueue.h
110+
# mqueue.h
118111
int mq_open(string, int, octal, addr); ; WARNING: 3rd and 4th arguments may not be there
119112
int mq_close(int);
120113
int mq_unlink(string);
@@ -126,7 +119,7 @@ int mq_timedsend(int, string3, ulong, uint, addr);
126119
long mq_receive(int, +string0, ulong, addr);
127120
long mq_timedreceive(int, +string0, ulong, addr, addr);
128121

129-
; netdb.h
122+
# netdb.h
130123
void endhostent();
131124
void endnetent();
132125
void endnetgrent();
@@ -165,29 +158,29 @@ int setnetgrent(string);
165158
void setprotoent(int);
166159
void setservent(int);
167160

168-
; netinet/in.h
161+
# netinet/in.h
169162
uint ntohs(uint);
170163

171-
; pcap.h
164+
# pcap.h
172165
string pcap_lookupdev(addr);
173166
addr pcap_open_live(string, int, int, int, addr);
174167
int pcap_snapshot(addr);
175168
int pcap_lookupnet(string, addr, addr, addr);
176169
int pcap_compile(addr, addr, string, int, addr);
177170

178-
; pwd.h
171+
# pwd.h
179172
string getpass(string);
180173
void endpwent();
181174
addr getpwnam(string);
182175
void setpwent();
183176

184-
; readline/readline.h
177+
# readline/readline.h
185178
string readline(string);
186179

187-
; signal.h
180+
# signal.h
188181
typedef signum = enum(SIGHUP=1, SIGINT=2, SIGQUIT=3, SIGILL=4, SIGTRAP=5, SIGABRT=6, SIGBUS=7, SIGFPE=8, SIGKILL=9, SIGUSR1=10, SIGSEGV=11, SIGUSR2=12, SIGPIPE=13, SIGALRM=14, SIGTERM=15, SIGSTKFLT=16, SIGCHLD=17, SIGCONT=18, SIGSTOP=19, SIGTSTP=20, SIGTTIN=21, SIGTTOU=22, SIGURG=23, SIGXCPU=24, SIGXFSZ=25, SIGVTALRM=26, SIGPROF=27, SIGWINCH=28, SIGIO=29, SIGPWR=30, SIGSYS=31, SIGRTMIN_0=32, SIGRTMIN_1=33, SIGRTMIN_2=34, SIGRTMIN_3=35, SIGRTMIN_4=36, SIGRTMIN_5=37, SIGRTMIN_6=38, SIGRTMIN_7=39, SIGRTMIN_8=40, SIGRTMIN_9=41, SIGRTMIN_10=42, SIGRTMIN_11=43, SIGRTMIN_12=44, SIGRTMIN_13=45, SIGRTMIN_14=46, SIGRTMIN_15=47, SIGRTMIN_16=48, SIGRTMIN_17=49, SIGRTMIN_18=50, SIGRTMIN_19=51, SIGRTMIN_20=52, SIGRTMIN_21=53, SIGRTMIN_22=54, SIGRTMIN_23=55, SIGRTMIN_24=56, SIGRTMIN_25=57, SIGRTMIN_26=58, SIGRTMIN_27=59, SIGRTMIN_28=60, SIGRTMIN_29=61, SIGRTMIN_30=62, SIGRTMIN_31=63);
189182
typedef sigset_t = bitvec(ulong);
190-
; elm3 should be flags
183+
# elm3 should be flags
191184
typedef sigaction = struct(addr, sigset_t, hex(int), addr);
192185
int kill(int, signum);
193186
int sigemptyset(+sigset_t*);
@@ -204,7 +197,7 @@ int sigisemptyset(sigset_t*);
204197
int sigorset(+sigset_t*, sigset_t*, sigset_t*);
205198
int sigandset(+sigset_t*, sigset_t*, sigset_t*);
206199

207-
; stdio.h
200+
# stdio.h
208201
int fclose(file);
209202
int feof(file);
210203
int ferror(file);
@@ -238,7 +231,7 @@ void setbuffer(file,addr,ulong);
238231
void setlinebuf(file);
239232
int rename(string,string);
240233

241-
; stdlib.h
234+
# stdlib.h
242235
long __strtol_internal(string,addr,int);
243236
ulong __strtoul_internal(string,addr,int);
244237
int atexit(addr);
@@ -276,7 +269,7 @@ void srand48(long);
276269
array(ushort,3)* seed48(array(ushort,3)*);
277270
void lcong48(array(ushort,7)*);
278271

279-
; string.h
272+
# string.h
280273
void bcopy(addr,addr,ulong);
281274
void bzero(addr,ulong);
282275
string basename(string);
@@ -305,13 +298,13 @@ ulong strcspn(string,string);
305298
string strstr(string,string);
306299
string strtok(string, string);
307300

308-
; sys/ioctl.h
301+
# sys/ioctl.h
309302
int ioctl(int, int, addr);
310303

311-
; sys/socket.h
304+
# sys/socket.h
312305
int socket(int,int,int);
313306

314-
; sys/stat.h
307+
# sys/stat.h
315308
int __fxstat(int,int,addr);
316309
int __xstat(int,string,addr);
317310
int __lxstat(int,string,addr);
@@ -323,33 +316,33 @@ int fchmod(int,octal);
323316
int mkfifo(string,octal);
324317
octal umask(octal);
325318

326-
; sys/utsname.h
319+
# sys/utsname.h
327320
int uname(addr);
328321

329-
; sys/vfs.h
322+
# sys/vfs.h
330323
int statfs(string,addr);
331324

332-
; syslog.h
325+
# syslog.h
333326
void closelog();
334327
void openlog(string,int,int);
335328
void syslog(int,format);
336329

337-
; term.h
330+
# term.h
338331
int tputs(string, int, addr);
339332

340-
; termios.h
333+
# termios.h
341334
int tcgetattr(int,addr);
342335
int tcsetattr(int,int,addr);
343336

344-
; time.h
337+
# time.h
345338
string ctime(addr);
346339
int gettimeofday(addr, addr);
347340
addr gmtime(addr);
348341
addr localtime(addr);
349342
ulong strftime(+string2,ulong,string,addr);
350343
long time(addr);
351344

352-
; unistd.h
345+
# unistd.h
353346
void _exit(int);
354347
int access(string, int);
355348
uint alarm(uint);
@@ -401,66 +394,19 @@ int getpagesize();
401394
long lseek(int,long,int);
402395
int pipe(addr);
403396

404-
; utmp.h
397+
# utmp.h
405398
void endutent();
406399
addr getutent();
407400
void setutent();
408401

409-
; wchar.h
402+
# wchar.h
410403
int fwide(addr, int);
411404

412-
; sys/wait.h
405+
# sys/wait.h
413406
int wait(addr);
414407
int waitpid(int,addr,int);
415408

416-
; X11/Xlib.h
417-
void XCloseDisplay(addr);
418-
int XMapWindow(addr,addr);
419-
addr XOpenDisplay(string);
420-
421-
; sys/acl.h
422-
int acl_add_perm(addr,uint);
423-
int acl_calc_mask(addr);
424-
int acl_clear_perms(addr);
425-
int acl_copy_entry(addr,addr);
426-
int acl_copy_ext(addr,addr,int);
427-
addr acl_copy_int(addr);
428-
int acl_create_entry(addr,addr);
429-
int acl_delete_def_file(string);
430-
int acl_delete_entry(addr,addr);
431-
int acl_delete_perm(addr,uint);
432-
addr acl_dup(addr);
433-
int acl_free(addr);
434-
addr acl_from_text(string);
435-
int acl_get_entry(addr,int,addr);
436-
addr acl_get_fd(int);
437-
addr acl_get_file(string,int);
438-
int acl_get_permset(addr,addr);
439-
addr acl_get_qualifier(addr);
440-
int acl_get_tag_type(addr,addr);
441-
addr acl_init(int);
442-
int acl_set_fd(int,addr);
443-
int acl_set_file(string,int,addr);
444-
int acl_set_permset(addr,addr);
445-
int acl_set_qualifier(addr,addr);
446-
int acl_set_tag_type(addr,int);
447-
int acl_size(addr);
448-
string acl_to_text(addr,addr);
449-
int acl_valid(addr);
450-
451-
; acl/libacl.h
452-
int acl_check(addr,addr);
453-
int acl_cmp(addr,addr);
454-
int acl_entries(addr);
455-
int acl_equiv_mode(addr,addr);
456-
string acl_error(int);
457-
int acl_extended_fd(int);
458-
int acl_extended_file(string);
459-
addr acl_from_mode(octal);
460-
int acl_get_perm(addr,uint);
461-
string acl_to_any_text(addr,string,char,int);
462-
463-
; other symbols not included above
409+
# other symbols not included above
464410
long a64l(string);
465411
string l64a(long);
466412
void abort();

0 commit comments

Comments
 (0)