Look up protolibs whose name partially matches the loaded DSO
- The intention here is to allow matches of libc.so.conf for
libc.so.6. Typically different sonames imply different binary
interfaces, but for libc, we know that most interfaces won't change.
diff --git a/ltrace.1 b/ltrace.1
index c4cb495..aeaea76 100644
--- a/ltrace.1
+++ b/ltrace.1
@@ -287,7 +287,12 @@
If a library has no SONAME, basename of library file is considered
instead. For the main program binary, basename is considered as well
-(e.g. protolib for /bin/echo would be called echo.conf).
+(e.g. protolib for /bin/echo would be called echo.conf). If a name
+corresponding to soname (e.g. libc.so.6.conf) is not found, and the
+module under consideration is a shared library, ltrace also tries
+partial matches. Ltrace snips one period after another, retrying the
+search, until either a protolib is found, or X.so is all that's left.
+Thus libc.so.conf would be considered, but libc.conf not.
When looking for a prototype library, ltrace potentially looks into
several directories. On Linux, those are $XDG_CONFIG_HOME/ltrace,