base|krb5: struct krb5_config_binding is public
commit07ee8fd3f4f233eaadb0b1529f776d114a4c3623
authorJeffrey Altman <jaltman@secure-endpoints.com>
Thu, 28 May 2020 17:50:49 +0000 (28 13:50 -0400)
committerNico Williams <nico@cryptonector.com>
Sun, 31 May 2020 05:02:34 +0000 (31 00:02 -0500)
tree4dab2f1c6424190943b5b8d5bc99cf07d5273584
parent44b2d685367a2f9b11e5fea4bfe098b4c22f556f
base|krb5: struct krb5_config_binding is public

ea90ca86664c73fb8d415f3cc7baacdf8a6dd685
("Move some infra bits of lib/krb5/ to lib/base/ (2)") introduced
struct heim_config_binding to heimbase.h and removed the
struct krb5_config_binding definition from krb5.h.  It changed
the krb5_config_binding typedef to be based upon the heim_config_binding
typedef.

These changes broke out of tree callers of krb5_config_get_list()
and krb5_config_vget_list().  The internals of struct krb5_config_binding
are required by callers of krb5_config_get_list() and krb5_config_vget_list()
and the names must remain the same.

This change restores struct krb5_config_binding to krb5.h.  The
structure cannot be changed because it is public and leaves struct
heim_config_binding as an independent structure definition within
heimbase.h.  As a result struct heim_config_binding in heimbase.h must
remain binary compatible until such time as krb5_config_get_list() and
krb5_config_vget_list() are no longer supported.

Change-Id: I69b4fda3f656cc8daa8f5fcd0c7151cee222fc8c
lib/base/heimbase.h
lib/krb5/config_file.c
lib/krb5/context.c
lib/krb5/krb5.h
lib/krb5/verify_krb5_conf.c