Skip to content

Commit 58695a8

Browse files
INI: significantly reduce public API
Only leave public what is (or might be potentially) used by SSSD and gssproxy. This bumps both .so major version and 'INI_CONFIG_' symbols version.
1 parent bdf9706 commit 58695a8

8 files changed

Lines changed: 42 additions & 133 deletions

File tree

Makefile.am

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -270,8 +270,7 @@ endif
270270

271271
lib_LTLIBRARIES += libini_config.la
272272
dist_pkgconfig_DATA += ini/ini_config.pc
273-
dist_include_HEADERS += ini/ini_config.h ini/ini_configobj.h \
274-
ini/ini_valueobj.h ini/ini_comment.h \
273+
dist_include_HEADERS += ini/ini_configobj.h \
275274
ini/ini_configmod.h
276275

277276
libini_config_la_SOURCES = \
@@ -310,11 +309,16 @@ libini_config_la_LIBADD = \
310309
$(LTLIBICONV) \
311310
$(LTLIBINTL)
312311
libini_config_la_LDFLAGS = \
313-
-version-info 7:1:2
312+
-version-info 8:0:0
314313
if HAVE_LD_VERSION_SCRIPT
315314
libini_config_la_LDFLAGS += -Wl,--version-script=$(top_srcdir)/ini/libini_config.sym
316315
endif
317316

317+
noinst_LTLIBRARIES = libini_config_internal.la
318+
319+
libini_config_internal_la_SOURCES = $(libini_config_la_SOURCES)
320+
libini_config_internal_la_LIBADD = $(libini_config_la_LIBADD)
321+
318322
dist_noinst_DATA += \
319323
ini/ini.conf \
320324
ini/ini.d/real.conf \
@@ -365,51 +369,51 @@ TESTS += \
365369

366370
ini_config_ut_SOURCES = ini/ini_config_ut.c
367371
ini_config_ut_LDADD = \
368-
libini_config.la \
372+
libini_config_internal.la \
369373
libcollection.la
370374

371375
ini_comment_ut_SOURCES = ini/ini_comment_ut.c
372-
ini_comment_ut_LDADD = libini_config.la
376+
ini_comment_ut_LDADD = libini_config_internal.la
373377

374378
ini_valueobj_ut_SOURCES = ini/ini_valueobj_ut.c
375-
ini_valueobj_ut_LDADD = libini_config.la libbasicobjects.la
379+
ini_valueobj_ut_LDADD = libini_config_internal.la libbasicobjects.la
376380

377381
ini_parse_ut_SOURCES = ini/ini_parse_ut.c
378-
ini_parse_ut_LDADD = libini_config.la libcollection.la libbasicobjects.la
382+
ini_parse_ut_LDADD = libini_config_internal.la libcollection.la libbasicobjects.la
379383

380384
ini_augment_ut_SOURCES = ini/ini_augment_ut.c
381-
ini_augment_ut_LDADD = libini_config.la libcollection.la \
385+
ini_augment_ut_LDADD = libini_config_internal.la libcollection.la \
382386
libbasicobjects.la libpath_utils.la libref_array.la
383387

384388
ini_configmod_ut_SOURCES = ini/ini_configmod_ut.c
385-
ini_configmod_ut_LDADD = libini_config.la libcollection.la \
389+
ini_configmod_ut_LDADD = libini_config_internal.la libcollection.la \
386390
libbasicobjects.la libpath_utils.la libref_array.la
387391

388392
ini_augment_ut_check_SOURCES = ini/ini_augment_ut_check.c
389393
ini_augment_ut_check_CFLAGS = $(AM_CFLAGS) $(CHECK_CFLAGS)
390-
ini_augment_ut_check_LDADD = libini_config.la $(CHECK_LIBS) \
394+
ini_augment_ut_check_LDADD = libini_config_internal.la $(CHECK_LIBS) \
391395
libref_array.la
392396

393397
ini_configmod_ut_check_SOURCES = ini/ini_configmod_ut_check.c
394398
ini_configmod_ut_check_CFLAGS = $(AM_CFLAGS) $(CHECK_CFLAGS)
395-
ini_configmod_ut_check_LDADD = libini_config.la libcollection.la \
399+
ini_configmod_ut_check_LDADD = libini_config_internal.la libcollection.la \
396400
libbasicobjects.la libpath_utils.la \
397401
libref_array.la \
398402
$(CHECK_LIBS)
399403

400404
ini_parse_ut_check_SOURCES = ini/ini_parse_ut_check.c
401405
ini_parse_ut_check_CFLAGS = $(AM_CFLAGS) $(CHECK_CFLAGS)
402-
ini_parse_ut_check_LDADD = libini_config.la \
406+
ini_parse_ut_check_LDADD = libini_config_internal.la \
403407
libref_array.la \
404408
$(CHECK_LIBS)
405409

406410
ini_validators_ut_check_SOURCES = ini/ini_validators_ut_check.c
407411
ini_validators_ut_check_CFLAGS = $(AM_CFLAGS) $(CHECK_CFLAGS)
408-
ini_validators_ut_check_LDADD = libini_config.la $(CHECK_LIBS)
412+
ini_validators_ut_check_LDADD = libini_config_internal.la $(CHECK_LIBS)
409413

410414

411415
ini_save_ut_SOURCES = ini/ini_save_ut.c
412-
ini_save_ut_LDADD = libini_config.la libcollection.la \
416+
ini_save_ut_LDADD = libini_config_internal.la libcollection.la \
413417
libbasicobjects.la libpath_utils.la libref_array.la
414418

415419
ini_config-docs:

contrib/ding-libs.spec.in

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -308,15 +308,12 @@ structure
308308
%defattr(-,root,root,-)
309309
%doc COPYING
310310
%doc COPYING.LESSER
311-
%{_libdir}/libini_config.so.5
312-
%{_libdir}/libini_config.so.5.2.1
311+
%{_libdir}/libini_config.so.8
312+
%{_libdir}/libini_config.so.8.0.0
313313

314314
%files -n libini_config-devel
315315
%defattr(-,root,root,-)
316-
%{_includedir}/ini_config.h
317316
%{_includedir}/ini_configobj.h
318-
%{_includedir}/ini_valueobj.h
319-
%{_includedir}/ini_comment.h
320317
%{_includedir}/ini_configmod.h
321318
%{_libdir}/libini_config.so
322319
%{_libdir}/pkgconfig/ini_config.pc

ini/ini_configobj.h

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -122,9 +122,7 @@ struct value_obj;
122122
* - The library allows storing and retrieving multiple key value pairs with
123123
* the same key in one section.
124124
*
125-
* <i>There is a deprecated interface that can be found in ini_config.h.
126-
* This interface is supported only for backwards compatibility and should
127-
* not be used.</i>
125+
* <i>Previously deprecated interface ini_config.h isn't supported anymore.</i>
128126
*/
129127

130128
/**

ini/ini_parse_ut.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
#include "ini_defines.h"
3131
#include "ini_configobj.h"
3232
#include "ini_config_priv.h"
33+
#include "ini_valueobj.h"
3334
#include "simplebuffer.h"
3435
#include "path_utils.h"
3536
#define TRACE_HOME

ini/ini_valueobj.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,4 +138,4 @@ int value_merge_comment(struct value_obj *vo_donor,
138138
/* Print value */
139139
void value_print(const char *key, struct value_obj *vo);
140140

141-
#endif
141+
#endif

ini/ini_valueobj_ut.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@
2525
#include <stdlib.h>
2626
#include <limits.h>
2727

28+
#include "simplebuffer.h"
29+
#include "ini_configobj.h"
30+
#include "ini_config_priv.h"
2831
#include "ini_valueobj.h"
2932
#include "ini_defines.h"
3033
#define TRACE_HOME

ini/libini_config.sym

Lines changed: 15 additions & 109 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,5 @@
1-
INI_CONFIG_1.1.0 {
1+
INI_CONFIG_2.0.0 {
22
global:
3-
/* ini_config.h */
4-
config_from_file;
5-
config_from_fd;
6-
config_from_file_with_metadata;
7-
config_from_fd_with_metadata;
8-
config_for_app;
9-
config_for_app_with_metadata;
10-
config_access_check;
11-
config_changed;
12-
free_ini_config;
13-
free_ini_config_errors;
14-
free_ini_config_metadata;
15-
print_file_parsing_errors;
16-
print_config_parsing_errors;
17-
get_section_list;
18-
free_section_list;
19-
get_attribute_list;
20-
free_attribute_list;
21-
get_config_item;
22-
get_int_config_value;
23-
get_long_config_value;
24-
get_unsigned_config_value;
25-
get_ulong_config_value;
26-
get_int32_config_value;
27-
get_uint32_config_value;
28-
get_int64_config_value;
29-
get_uint64_config_value;
30-
get_double_config_value;
31-
get_bool_config_value;
32-
get_string_config_value;
33-
get_const_string_config_value;
34-
get_bin_config_value;
35-
free_bin_config_value;
36-
get_string_config_array;
37-
get_raw_string_config_array;
38-
get_long_config_array;
39-
get_double_config_array;
40-
free_string_config_array;
41-
free_long_config_array;
42-
free_double_config_array;
43-
443
/* ini_configobj.h */
454
ini_config_create;
465
ini_config_destroy;
@@ -91,59 +50,19 @@ global:
9150
ini_free_long_config_array;
9251
ini_free_double_config_array;
9352

94-
/* ini_valueobj.h */
95-
value_create_from_refarray;
96-
value_lines_cleanup_cb;
97-
value_create_arrays;
98-
value_add_to_arrays;
99-
value_destroy_arrays;
100-
value_create_new;
101-
value_copy;
102-
value_destroy;
103-
value_get_concatenated;
104-
value_get_concatenated_len;
105-
value_get_origin;
106-
value_get_line;
107-
value_set_keylen;
108-
value_set_boundary;
109-
value_update;
110-
value_extract_comment;
111-
value_put_comment;
112-
value_merge_comment;
113-
value_serialize;
114-
value_print;
115-
116-
/* ini_comment.h */
117-
ini_comment_create;
118-
ini_comment_destroy;
119-
ini_comment_build;
120-
ini_comment_build_wl;
121-
ini_comment_insert;
122-
ini_comment_append;
123-
ini_comment_remove;
124-
ini_comment_clear;
125-
ini_comment_replace;
126-
ini_comment_reset;
127-
ini_comment_get_numlines;
128-
ini_comment_get_line;
129-
ini_comment_swap;
130-
ini_comment_copy;
131-
ini_comment_add;
132-
ini_comment_serialize;
133-
ini_comment_print;
134-
135-
local:
136-
*;
137-
};
138-
139-
140-
INI_CONFIG_1.2.0 {
141-
global:
142-
/* ini_configobj.h */
14353
ini_config_augment;
14454

145-
/* ini_comment.h */
146-
ini_comment_construct;
55+
ini_errobj_create;
56+
ini_errobj_destroy;
57+
ini_errobj_add_msg;
58+
ini_errobj_reset;
59+
ini_errobj_get_msg;
60+
ini_errobj_count;
61+
ini_errobj_next;
62+
ini_errobj_no_more_msgs;
63+
ini_rules_read_from_file;
64+
ini_rules_check;
65+
ini_rules_destroy;
14766

14867
/* ini_configmod.h */
14968
ini_config_add_section;
@@ -175,20 +94,7 @@ global:
17594
ini_config_save_as;
17695
ini_config_get_bom;
17796
ini_config_set_bom;
178-
} INI_CONFIG_1.1.0;
17997

180-
INI_CONFIG_1.3.0 {
181-
global:
182-
/* ini_configobj.h */
183-
ini_errobj_create;
184-
ini_errobj_destroy;
185-
ini_errobj_add_msg;
186-
ini_errobj_reset;
187-
ini_errobj_get_msg;
188-
ini_errobj_count;
189-
ini_errobj_next;
190-
ini_errobj_no_more_msgs;
191-
ini_rules_read_from_file;
192-
ini_rules_check;
193-
ini_rules_destroy;
194-
} INI_CONFIG_1.2.0;
98+
local:
99+
*;
100+
};

version.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,4 @@ m4_define([DHASH_VERSION_NUMBER], [0.5.0])
1515
m4_define([COLLECTION_VERSION_NUMBER], [0.7.0])
1616
m4_define([REF_ARRAY_VERSION_NUMBER], [0.1.5])
1717
m4_define([BASICOBJECTS_VERSION_NUMBER], [0.1.1])
18-
m4_define([INI_CONFIG_VERSION_NUMBER], [1.3.1])
18+
m4_define([INI_CONFIG_VERSION_NUMBER], [2.0.0])

0 commit comments

Comments
 (0)