Bug 75876 - libmilter uses strlcpy() function which is not available
libmilter uses strlcpy() function which is not available
Product: Red Hat Linux
Classification: Retired
Component: sendmail (Show other bugs)
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Florian La Roche
David Lawrence
Depends On:
  Show dependency treegraph
Reported: 2002-10-14 09:29 EDT by Johann Uhrmann
Modified: 2007-04-18 12:47 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2002-10-14 09:29:36 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Johann Uhrmann 2002-10-14 09:29:30 EDT
Description of problem:
The libmilter library included in sendmail-devel 8.11.6 calls the
libc function strlcpy().
However, that function does not seem to be available with

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
Compile the following source:

/* compile with gcc -o foo foo.c /usr/lib/libmilter.a -lpthread */
#include <libmilter/mfapi.h>
int main() {
        return 0;

Actual Results:  /usr/lib/libmilter.a(main.o): In function `smfi_register':
main.o(.text+0x74): undefined reference to `strlcpy'
/usr/lib/libmilter.a(main.o): In function `smfi_setconn':
main.o(.text+0x12f): undefined reference to `strlcpy'
/usr/lib/libmilter.a(listener.o): In function `mi_milteropen':
listener.o(.text+0x184): undefined reference to `strlcpy'
/usr/lib/libmilter.a(engine.o): In function `st_connectinfo':
engine.o(.text+0x83a): undefined reference to `strlcpy'
collect2: ld returned 1 exit status

Expected Results:  compile run without errors

Additional info:

Redhat Linux 7.3
sendmail 8.11.6-15
sendmail-devel 8.11.6-15
glibc and glibc-common 2.2.5-40

Prototype definition of strlcpy() exists in the header files but is
not available for the linker.
Comment 1 Johann Uhrmann 2002-10-27 11:09:21 EST
The missing functions seem to be available in /usr/lib/libsmutil.a:

Therefore, the call
gcc -o foo foo.c /usr/lib/libmilter.a /usr/lib/libsmutil.a -lpthread

compiles the source listed above.

But are this functions supposed to be in glibc?
(Some programs rely on this and do not check for libsmutil.)

Note You need to log in before you can comment on or make changes to this bug.