https://bugs.openldap.org/show_bug.cgi?id=9648

          Issue ID: 9648
           Summary: 'MAXPATHLEN' undeclared on some systems
           Product: OpenLDAP
           Version: 2.5.4
          Hardware: All
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: ---
         Component: libraries
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

Created attachment 834
  --> https://bugs.openldap.org/attachment.cgi?id=834&action=edit
Docker reproduction

I'm trying to compile OpenLDAP 2.5.7 on Alpine Linux, but have verified that
the problem exists since 2.5.4. Version 2.4.59 compiles correctly with
everything else equal.

Compilation fails with 
In file included from ldap-int.h:119,
                 from request.c:53:
request.c: In function 'ldap_dump_connection':
../../include/ldap_pvt.h:181:25: error: 'MAXPATHLEN' undeclared (first use in
this function)
  181 | #define LDAP_IPADDRLEN (MAXPATHLEN + sizeof("PATH="))
      |                         ^~~~~~~~~~
request.c:859:17: note: in expansion of macro 'LDAP_IPADDRLEN'
  859 |    char    from[LDAP_IPADDRLEN];
      |                 ^~~~~~~~~~~~~~
../../include/ldap_pvt.h:181:25: note: each undeclared identifier is reported
only once for each function it appears in
  181 | #define LDAP_IPADDRLEN (MAXPATHLEN + sizeof("PATH="))
      |                         ^~~~~~~~~~
request.c:859:17: note: in expansion of macro 'LDAP_IPADDRLEN'
  859 |    char    from[LDAP_IPADDRLEN];
      |                 ^~~~~~~~~~~~~~
make[2]: Leaving directory '/tmp/openldap/libraries/libldap'


Thanks to JoBbZ on IRC I found out that including <ac/param.h> in ldap_pvt.h
seems to fix the issue.

My best guess as to why this fails on Alpine Linux and not on other
distributions is that Alpine uses musl instead of glibc as it's libc
implementation.

I have attacked an (unfinished) dockerfile for reproduction of the issue.

-- 
You are receiving this mail because:
You are on the CC list for the issue.

Reply via email to