Ryan Tandy wrote:
On Thu, Feb 15, 2018 at 09:09:53AM -0800, Quanah Gibson-Mount wrote:
The "ldap.h" file is specifically for RFC defined interfaces. I discussed this with Howard, and we thought that the best way to address this issue would be to rename "ldap_pvt.h" to "openldap.h", to indicate that the methods found in it are openldap specific. This should resolve the issue with packagers not packaging the file as well.
With my packager hat on - the main thing that would affect whether I package the file is not the name, but whether 'make install' installs it into the public header directory i.e. /usr/include, and whether it's subject to interface stability guarantees similar to ldap.h.
My understanding was the _pvt interfaces are for internal consumption and therefore subject to change without notice. I can't really package a header, if its API/ABI might change in a patch release because some internal slapd or tool code needed a change.
(API/ABI changes across major releases i.e. 2.4->2.5 would be fine.)
If I misunderstood the semantics and it's not "private interfaces that could change any time" but rather "OpenLDAP extensions to the LDAP API", then great, and let's do it :) and the rename would make sense in that case.
ldap_pvt.h is meant to be stable. ldap-int.h can change at any time.