Project

General

Profile

Actions

Bug #1137

closed

symbol md5* clash in libwt.so

Added by Gaetano Mendola over 12 years ago. Updated about 12 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Pieter Libin
Target version:
Start date:
01/17/2012
Due date:
% Done:

0%

Estimated time:

Description

libwt.so export the symbols: md5_append, md5_finish, md5_init

$ nm -DC /usr/local/lib/libwt.so | grep md5

00000000001e8850 T Wt::Utils::md5(std::string const&)

000000000051bc80 T _crypt_gensalt_md5_rn

00000000004b2570 T md5_append

00000000004b2700 T md5_finish

00000000004b1c10 T md5_init

I suggest to rename those symbols in:

wt_md5_append

wt_md5_finish

wt_md5_init

we were bite by the fact even on our own shared libraries we have md5_init, md5_finish, md5_append

(we have now renamed it).

Googling around it seems that is common usage to rename those 3 functions prepending it with a prefix,

(namespacing it) examples:

  1. nm -DC libgs.so.8 | grep md5
    00000000009f9a40 D gs_md50Eco_device
    00000000009f7f60 D gs_md50Mono_device
    00000000000ec9f0 T gs_md5_append
    00000000000ecb80 T gs_md5_finish
    00000000000ec100 T gs_md5_init
    00000000009fed00 D gs_md5k_device
    0000000000717500 D zfmd5_op_defs

<!-- -->

  1. nm -DC libaprutil-1.so | grep md5
    000000000000e270 T apr_md5
    000000000000e360 T apr_md5_encode
    000000000000e010 T apr_md5_final
    000000000000d220 T apr_md5_init
    000000000000e310 T apr_md5_set_xlate
    000000000000e160 T apr_md5_update

I suggest to namespace those in wt as well

Actions #1

Updated by Koen Deforche about 12 years ago

  • Status changed from New to InProgress
  • Assignee set to Pieter Libin
  • Target version set to 3.2.1

Hey,

Oops, we didn't consider that these C symbols were indeed exported. Because making them library scope is hard (and uncommon) in Linux, I agree the prefixing is probably the simplest solution.

Same probably goes for the SHA-1 C implementation.

Regards,

koen

Actions #2

Updated by Pieter Libin about 12 years ago

  • Status changed from InProgress to Resolved
Actions #3

Updated by Koen Deforche about 12 years ago

  • Status changed from Resolved to Closed

Fixed in 3.2.1

Actions

Also available in: Atom PDF