- Update to git rev 6c6bcc3
** Prototype libraries
- Each DSO can now ship an ltrace config file (called prototype
library) that ltrace will open when that DSO is loaded to process
image. See ltrace(1) for details.
- ltrace.conf is no longer part of installation tarball. Instead,
we now ship libc.so.conf, libm.so.conf, libacl.so.conf, and
syscalls.conf. Those are now istalled to /usr/share/ltrace by
default. /etc/ltrace.conf and $HOME/.ltrace.conf are still
loaded if present, and can contain arbitrary user configuration.
- The option -F was retrofitted to be a colon-separated list of
prototype libraries, and directories to look for prototype
libraries in. On Linux, ltrace looks into XDG_CONFIG_HOME,
XDG_CONFIG_DIRS, and /usr/share/ltrace as well.
- Wide character strings are supported in prototypes. Use "string"
lens as usual, but use array of integers as underlying type.
libc.so.conf now contains prototypes of wide character functions.
- Sole void function parameter such as in the following example, is
now considered obsolete:
| int fork(void); |
This use is still accepted, taken to mean "hide(int)", but
produces a warning, and will be removed in future.
- Prototypes are now read from DWARF debug info, if available. This
complements the data available in config files
** Architectural support
- MIPS and MIPSel are now handled by the same backend.
- ARMv6, ARMv7 and ARMv8 (AArch64) are supported, including full
fetch backend. ARMv8 backend doesn't support tracing of 32-bit
binaries, as currently there's no 32-bit userspace available for
ARM64 processors.
OBS-URL: https://build.opensuse.org/request/show/247286
OBS-URL: https://build.opensuse.org/package/show/Base:System/ltrace?expand=0&rev=23
- Update to 0.7.1
* Version 0.7.1
** Bugfixes
*** ltrace.conf.5 is now installed to man5 as it should be
*** [PowerPC] A header file necessary for building is now shipped
*** [MIPS] Work around duplicate symbol request bug
*** Detect VDSO entry in r_debug linkmap with non-empty name
*** Temporary files are wiped properly after the test suite has been run
*** Parsing typedefs with common prefix now works as it should
** Cofiguration Files
*** The following prototypes in ltrace.conf were added or updated
*** Duplicate typedefs are now guarded against
*** It's now possible to define recursive structures
*** New lens "bitvec" is available
*** Octal lens renamed to "oct"
*** The hex lens can now format floating point arguments
* Version 0.7.0
** Tracing
*** Full support for tracing multi-threaded processes
*** Support for tracing inter-library calls
*** Better support for parameter passing ("fetch backend")
*** Awareness of deny_ptrace SELinux boolean
*** Limited support for tracing returns from tail call functions
*** -e, -x and -l selectors now allow using globs and regular expressions
*** -g command line option dropped
*** Test suite can now be run under valgrind
*** [ppc] Support both BSS and secure PLTs for 32-bit processes
*** [mips] Implement software singlestepping
*** [mips] Add support for CPIC main programs
*** Support tracing PIE binaries
OBS-URL: https://build.opensuse.org/request/show/143684
OBS-URL: https://build.opensuse.org/package/show/Base:System/ltrace?expand=0&rev=13
For about 5 years now we build against libelf0. Whatever the reasons were I
doubt they are still valid. A quick check shows the same number of test suit
failures and the same compile warnings when building against libelf1. And
ltrace seems to work at least on x86_64.
OBS-URL: https://build.opensuse.org/package/show/Base:System/ltrace?expand=0&rev=9