[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: making ldap_pvt.h public



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.

--
  -- Howard Chu
  CTO, Symas Corp.           http://www.symas.com
  Director, Highland Sun     http://highlandsun.com/hyc/
  Chief Architect, OpenLDAP  http://www.openldap.org/project/