On Sun, 27 Oct 2019 01:38:40 +0300 Alexey Tourbin wrote: > On Sat, Oct 26, 2019 at 6:10 PM Andrey Savchenko wrote: > > On Sat, 26 Oct 2019 17:17:25 +0300 Alexey Tourbin wrote: > > > $ rpm -q --provides glibc-core |grep 'libdl.*set' > > > libdl.so.2()(64bit) = set:hdBjS1I4gQ8BohwImELo8Zh > > > $ ./a.out set:hdBjS1I4gQ8BohwImELo8Zh > > > 0272 > > > 0a8f > > > 12b4 > > > 1f1c > > > 1fb0 > > > 23f5 > > > 31a1 > > > 3571 > > > 35d3 > > > 3bcb > > > > Как я понял, это хеши символов. По какому алгоритму они вычисляются? > > Мне нужно для имеющегося списка символов вычислить аналогичные хеши > > для дальнейшего сравнения. > > Это set.c:hash(), но можно воспользоваться set_new/set_add, который > хеширует и сортирует строки по хешу. Прикрепил более полный пример. > > $ /usr/lib/rpm/provided_symbols /lib64/libdl.so.2 |./a.out > set:hdBjS1I4gQ8BohwImELo8Zh 1 > 0272 dladdr1 > 0a8f _dlfcn_hook > 12b4 dlsym > 1f1c dlerror > 1fb0 dlclose > 23f5 dlopen > 31a1 dlinfo > 3571 dlvsym > 35d3 dladdr > 3bcb dlmopen Спасибо! Как раз это мне и нужно. Best regards, Andrew Savchenko