libsysrepo.so: 6.0.0 to 7.0.0 compatibility report
Description: API/ABI compatibility report for the libsysrepo.so object between 6.0.0 and 7.0.0 versions
Keywords: libsysrepo.so, compatibility, API, ABI, report

# API compatibility report for the libsysrepo.so object between 6.0.0 and 7.0.0 versions on x86_64

Binary
Compatibility Source
Compatibility

## Test Info

Module Name | libsysrepo.so
Version #1 | 6.0.0
Version #2 | 7.0.0
Arch | x86_64
GCC Version | 11.2.1
Subject | Binary Compatibility

## Test Results

Total Header Files | 3
Total Objects | 1
Total Symbols / Types | 128 / 28
Compatibility | 84%

## Problem Summary

| Severity | Count
--- | --- | ---
Added Symbols | - | 26
Removed Symbols | High | 17
Problems with Data Types | High | 0
Medium | 0
Low | 1
Problems with Symbols | High | 0
Medium | 7
Low | 1
Problems with Constants | Low | 0

## Added Symbols 26

sysrepo.h, libsysrepo.so.7.0.0
sr_acquire_context ( sr_conn_ctx_t* conn )
sr_acquire_data ( sr_conn_ctx_t* conn, struct lyd_node* tree, sr_data_t** data )
sr_check_module_ds_access ( sr_conn_ctx_t* conn, char const* module_name, int mod_ds, int* read, int* write )
sr_get_module_ds_access ( sr_conn_ctx_t* conn, char const* module_name, int mod_ds, char** owner, char** group, mode_t* perm )
sr_get_module_replay_support ( sr_conn_ctx_t* conn, char const* module_name, struct timespec* earliest_notif, int* enabled )
sr_get_su_uid ( )
sr_install_module2 ( sr_conn_ctx_t* conn, char const* schema_path, char const* search_dirs, char const** features, sr_module_ds_t const* module_ds, char const* owner, char const* group, mode_t perm, char const* data, char const* data_path )
sr_notif_send ( sr_session_ctx_t* session, char const* path, sr_val_t const* values, size_t const values_cnt, uint32_t timeout_ms, int wait )
sr_notif_send_tree ( sr_session_ctx_t* session, struct lyd_node* notif, uint32_t timeout_ms, int wait )
sr_notif_sub_get_info ( sr_subscription_ctx_t* subscription, uint32_t sub_id, char const** module_name, char const** xpath, struct timespec* start_time, struct timespec* stop_time, uint32_t* filtered_out )
sr_notif_sub_modify_stop_time ( sr_subscription_ctx_t* subscription, uint32_t sub_id, struct timespec const* stop_time )
sr_notif_sub_modify_xpath ( sr_subscription_ctx_t* subscription, uint32_t sub_id, char const* xpath )
sr_notif_subscribe ( sr_session_ctx_t* session, char const* module_name, char const* xpath, struct timespec const* start_time, struct timespec const* stop_time, void(*callback)(struct sr_session_ctx_s*, unsigned int, ,char const*, struct sr_val_s const*, unsigned long const, struct timespec*, void*), void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_notif_subscribe_tree ( sr_session_ctx_t* session, char const* module_name, char const* xpath, struct timespec const* start_time, struct timespec const* stop_time, sr_event_notif_tree_cb callback, void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_oper_delete_item_str ( sr_session_ctx_t* session, char const* path, char const* value, sr_edit_options_t const opts )
sr_oper_get_subscribe ( sr_session_ctx_t* session, char const* module_name, char const* path, sr_oper_get_items_cb callback, void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_release_context ( sr_conn_ctx_t* conn )
sr_release_data ( sr_data_t* data )
sr_session_acquire_context ( sr_session_ctx_t* session )
sr_session_acquire_data ( sr_session_ctx_t* session, struct lyd_node* tree, sr_data_t** data )
sr_session_release_context ( sr_session_ctx_t* session )
sr_set_module_ds_access ( sr_conn_ctx_t* conn, char const* module_name, int mod_ds, char const* owner, char const* group, mode_t perm )
sr_subscription_process_events ( sr_subscription_ctx_t* subscription, sr_session_ctx_t* session, struct timespec* stop_time_in )
sr_subscription_thread_resume ( sr_subscription_ctx_t* subscription )
sr_subscription_thread_suspend ( sr_subscription_ctx_t* subscription )
srplg_log ( char const* plg_name, char const* format, ... )
to the top

## Removed Symbols 17

sysrepo.h, libsysrepo.so.6.0.0
sr_cancel_update_module ( sr_conn_ctx_t* conn, char const* module_name )
sr_connection_count ( uint32_t* conn_count )
sr_event_notif_send ( sr_session_ctx_t* session, char const* path, size_t const values_cnt, uint32_t timeout_ms, int wait )
sr_event_notif_send_tree ( sr_session_ctx_t* session, struct lyd_node* notif, uint32_t timeout_ms, int wait )
sr_event_notif_sub_get_info ( sr_subscription_ctx_t* subscription, uint32_t sub_id, char const** module_name, char const** xpath, time_t* start_time, time_t* stop_time, uint32_t* filtered_out )
sr_event_notif_sub_modify_stop_time ( sr_subscription_ctx_t* subscription, uint32_t sub_id, time_t stop_time )
sr_event_notif_sub_modify_xpath ( sr_subscription_ctx_t* subscription, uint32_t sub_id, char const* xpath )
sr_event_notif_subscribe ( sr_session_ctx_t* session, char const* module_name, char const* xpath, time_t start_time, time_t stop_time, void(*callback)(struct sr_session_ctx_s*, unsigned int, ,char const*, ,unsigned long const, struct timespec*, void*), void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_event_notif_subscribe_tree ( sr_session_ctx_t* session, char const* module_name, char const* xpath, time_t start_time, time_t stop_time, sr_event_notif_tree_cb callback, void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_get_context ( sr_conn_ctx_t* conn )
sr_get_module_access ( sr_conn_ctx_t* conn, char const* module_name, char** owner, char** group, mode_t* perm )
sr_get_module_info ( sr_conn_ctx_t* conn, struct lyd_node** sysrepo_data )
sr_install_module_data ( sr_conn_ctx_t* conn, char const* module_name, char const* data, char const* data_path )
sr_oper_get_items_subscribe ( sr_session_ctx_t* session, char const* module_name, char const* path, sr_oper_get_items_cb callback, void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_process_events ( sr_subscription_ctx_t* subscription, sr_session_ctx_t* session, time_t* stop_time_in )
sr_set_module_access ( sr_conn_ctx_t* conn, char const* module_name, char const* owner, char const* group, mode_t perm )
srp_log ( char const* format, ... )
to the top

## Problems with Symbols, Medium Severity 7

sysrepo.h, libsysrepo.so.6.0.0
[+] sr_disable_module_feature ( sr_conn_ctx_t* conn, char const* module_name, char const* feature_name ) 1
⇣
sr_disable_module_feature ( sr_conn_ctx_t* conn, char const* module_name, char const* feature_name, int force )

| Change | Effect
--- | --- | ---
1 | Parameter force of type int has been added to the calling stack. | This parameter will not be initialized by old clients.

[+] sr_enable_module_feature ( sr_conn_ctx_t* conn, char const* module_name, char const* feature_name ) 1
⇣
sr_enable_module_feature ( sr_conn_ctx_t* conn, char const* module_name, char const* feature_name, int force )

| Change | Effect
--- | --- | ---
1 | Parameter force of type int has been added to the calling stack. | This parameter will not be initialized by old clients.

[+] sr_get_data ( sr_session_ctx_t* session, char const* xpath, uint32_t max_depth, uint32_t timeout_ms, sr_get_oper_options_t const opts, struct lyd_node** data ) 1
⇣
sr_get_data ( sr_session_ctx_t* session, char const* xpath, uint32_t max_depth, uint32_t timeout_ms, sr_get_oper_options_t const opts, sr_data_t** data )

| Change | Effect
--- | --- | ---
1 | Base type of 6th parameter data has been changed from struct lyd_node (56 bytes) to struct sr_data_s (16 bytes). | This parameter may be incorrectly initialized by applications.

[+] sr_get_subtree ( sr_session_ctx_t* session, char const* path, uint32_t timeout_ms, struct lyd_node** subtree ) 1
⇣
sr_get_subtree ( sr_session_ctx_t* session, char const* path, uint32_t timeout_ms, sr_data_t** subtree )

| Change | Effect
--- | --- | ---
1 | Base type of 4th parameter subtree has been changed from struct lyd_node (56 bytes) to struct sr_data_s (16 bytes). | This parameter may be incorrectly initialized by applications.

[+] sr_lock ( sr_session_ctx_t* session, char const* module_name ) 1
⇣
sr_lock ( sr_session_ctx_t* session, char const* module_name, uint32_t timeout_ms )

| Change | Effect
--- | --- | ---
1 | Parameter timeout_ms of type uint32_t has been added to the calling stack. | This parameter will not be initialized by old clients.

[+] sr_remove_module ( sr_conn_ctx_t* conn, char const* module_name ) 1
⇣
sr_remove_module ( sr_conn_ctx_t* conn, char const* module_name, int force )

| Change | Effect
--- | --- | ---
1 | Parameter force of type int has been added to the calling stack. | This parameter will not be initialized by old clients.

[+] sr_rpc_send_tree ( sr_session_ctx_t* session, struct lyd_node* input, uint32_t timeout_ms, struct lyd_node** output ) 1
⇣
sr_rpc_send_tree ( sr_session_ctx_t* session, struct lyd_node* input, uint32_t timeout_ms, sr_data_t** output )

| Change | Effect
--- | --- | ---
1 | Base type of 4th parameter output has been changed from struct lyd_node (56 bytes) to struct sr_data_s (16 bytes). | This parameter may be incorrectly initialized by applications.

to the top

## Problems with Data Types, Low Severity 1

sysrepo_types.h
[+] typedef sr_rpc_cb 1

| Change | Effect
--- | --- | ---
1 | Base type has been changed from int(*)(sr_session_ctx_t*, uint32_t, char const*, , size_t const, , uint32_t, , size_t*, void*) to int(*)(sr_session_ctx_t*, uint32_t, char const*, sr_val_t const*, size_t const, , uint32_t, sr_val_t**, size_t*, void*). | Replacement of the base data type may indicate a change in its semantic meaning.

[+] affected symbols: 1 (0.8%)
sr_rpc_subscribe ( sr_session_ctx_t* session, char const* xpath, int(*callback)(struct sr_session_ctx_s*, unsigned int, char const*, ,unsigned long const, ,unsigned int, ,unsigned long*, void*), void* private_data, uint32_t priority, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
3rd parameter 'callback' is of type 'sr_rpc_cb'.
to the top

## Problems with Symbols, Low Severity 1

sysrepo.h, libsysrepo.so.6.0.0
[+] sr_set_module_replay_support ( sr_conn_ctx_t* conn, char const* module_name, int replay_support ) 1
⇣
sr_set_module_replay_support ( sr_conn_ctx_t* conn, char const* module_name, int enable )

| Change | Effect
--- | --- | ---
1 | 3rd parameter replay_support has been renamed to enable. | Renaming of a parameter may indicate a change in its semantic meaning.

to the top

## Header Files 3

sysrepo.h
values.h
xpath.h
to the top

## Objects 1

libsysrepo.so.6.0.0
to the top

## Test Info

Module Name | libsysrepo.so
Version #1 | 6.0.0
Version #2 | 7.0.0
Arch | x86_64
Subject | Source Compatibility

## Test Results

Total Header Files | 3
Total Objects | 1
Total Symbols / Types | 128 / 28
Compatibility | 84%

## Problem Summary

| Severity | Count
--- | --- | ---
Added Symbols | - | 26
Removed Symbols | High | 17
Problems with Data Types | High | 0
Medium | 0
Low | 1
Problems with Symbols | High | 0
Medium | 7
Low | 0
Problems with Constants | Low | 0
Other Changes in Symbols | - | 1

## Added Symbols 26

sysrepo.h
sr_acquire_context ( sr_conn_ctx_t* conn )
sr_acquire_data ( sr_conn_ctx_t* conn, struct lyd_node* tree, sr_data_t** data )
sr_check_module_ds_access ( sr_conn_ctx_t* conn, char const* module_name, int mod_ds, int* read, int* write )
sr_get_module_ds_access ( sr_conn_ctx_t* conn, char const* module_name, int mod_ds, char** owner, char** group, mode_t* perm )
sr_get_module_replay_support ( sr_conn_ctx_t* conn, char const* module_name, struct timespec* earliest_notif, int* enabled )
sr_get_su_uid ( )
sr_install_module2 ( sr_conn_ctx_t* conn, char const* schema_path, char const* search_dirs, char const** features, sr_module_ds_t const* module_ds, char const* owner, char const* group, mode_t perm, char const* data, char const* data_path )
sr_notif_send ( sr_session_ctx_t* session, char const* path, sr_val_t const* values, size_t const values_cnt, uint32_t timeout_ms, int wait )
sr_notif_send_tree ( sr_session_ctx_t* session, struct lyd_node* notif, uint32_t timeout_ms, int wait )
sr_notif_sub_get_info ( sr_subscription_ctx_t* subscription, uint32_t sub_id, char const** module_name, char const** xpath, struct timespec* start_time, struct timespec* stop_time, uint32_t* filtered_out )
sr_notif_sub_modify_stop_time ( sr_subscription_ctx_t* subscription, uint32_t sub_id, struct timespec const* stop_time )
sr_notif_sub_modify_xpath ( sr_subscription_ctx_t* subscription, uint32_t sub_id, char const* xpath )
sr_notif_subscribe ( sr_session_ctx_t* session, char const* module_name, char const* xpath, struct timespec const* start_time, struct timespec const* stop_time, void(*callback)(struct sr_session_ctx_s*, unsigned int, ,char const*, struct sr_val_s const*, unsigned long const, struct timespec*, void*), void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_notif_subscribe_tree ( sr_session_ctx_t* session, char const* module_name, char const* xpath, struct timespec const* start_time, struct timespec const* stop_time, sr_event_notif_tree_cb callback, void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_oper_delete_item_str ( sr_session_ctx_t* session, char const* path, char const* value, sr_edit_options_t const opts )
sr_oper_get_subscribe ( sr_session_ctx_t* session, char const* module_name, char const* path, sr_oper_get_items_cb callback, void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_release_context ( sr_conn_ctx_t* conn )
sr_release_data ( sr_data_t* data )
sr_session_acquire_context ( sr_session_ctx_t* session )
sr_session_acquire_data ( sr_session_ctx_t* session, struct lyd_node* tree, sr_data_t** data )
sr_session_release_context ( sr_session_ctx_t* session )
sr_set_module_ds_access ( sr_conn_ctx_t* conn, char const* module_name, int mod_ds, char const* owner, char const* group, mode_t perm )
sr_subscription_process_events ( sr_subscription_ctx_t* subscription, sr_session_ctx_t* session, struct timespec* stop_time_in )
sr_subscription_thread_resume ( sr_subscription_ctx_t* subscription )
sr_subscription_thread_suspend ( sr_subscription_ctx_t* subscription )
srplg_log ( char const* plg_name, char const* format, ... )
to the top

## Removed Symbols 17

sysrepo.h
sr_cancel_update_module ( sr_conn_ctx_t* conn, char const* module_name )
sr_connection_count ( uint32_t* conn_count )
sr_event_notif_send ( sr_session_ctx_t* session, char const* path, size_t const values_cnt, uint32_t timeout_ms, int wait )
sr_event_notif_send_tree ( sr_session_ctx_t* session, struct lyd_node* notif, uint32_t timeout_ms, int wait )
sr_event_notif_sub_get_info ( sr_subscription_ctx_t* subscription, uint32_t sub_id, char const** module_name, char const** xpath, time_t* start_time, time_t* stop_time, uint32_t* filtered_out )
sr_event_notif_sub_modify_stop_time ( sr_subscription_ctx_t* subscription, uint32_t sub_id, time_t stop_time )
sr_event_notif_sub_modify_xpath ( sr_subscription_ctx_t* subscription, uint32_t sub_id, char const* xpath )
sr_event_notif_subscribe ( sr_session_ctx_t* session, char const* module_name, char const* xpath, time_t start_time, time_t stop_time, void(*callback)(struct sr_session_ctx_s*, unsigned int, ,char const*, ,unsigned long const, struct timespec*, void*), void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_event_notif_subscribe_tree ( sr_session_ctx_t* session, char const* module_name, char const* xpath, time_t start_time, time_t stop_time, sr_event_notif_tree_cb callback, void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_get_context ( sr_conn_ctx_t* conn )
sr_get_module_access ( sr_conn_ctx_t* conn, char const* module_name, char** owner, char** group, mode_t* perm )
sr_get_module_info ( sr_conn_ctx_t* conn, struct lyd_node** sysrepo_data )
sr_install_module_data ( sr_conn_ctx_t* conn, char const* module_name, char const* data, char const* data_path )
sr_oper_get_items_subscribe ( sr_session_ctx_t* session, char const* module_name, char const* path, sr_oper_get_items_cb callback, void* private_data, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
sr_process_events ( sr_subscription_ctx_t* subscription, sr_session_ctx_t* session, time_t* stop_time_in )
sr_set_module_access ( sr_conn_ctx_t* conn, char const* module_name, char const* owner, char const* group, mode_t perm )
srp_log ( char const* format, ... )
to the top

## Problems with Symbols, Medium Severity 7

sysrepo.h
[+] sr_disable_module_feature ( sr_conn_ctx_t* conn, char const* module_name, char const* feature_name ) 1
⇣
sr_disable_module_feature ( sr_conn_ctx_t* conn, char const* module_name, char const* feature_name, int force )

| Change | Effect
--- | --- | ---
1 | Parameter force of type int has been added to the calling stack. | Recompilation of a client program may be broken.

[+] sr_enable_module_feature ( sr_conn_ctx_t* conn, char const* module_name, char const* feature_name ) 1
⇣
sr_enable_module_feature ( sr_conn_ctx_t* conn, char const* module_name, char const* feature_name, int force )

| Change | Effect
--- | --- | ---
1 | Parameter force of type int has been added to the calling stack. | Recompilation of a client program may be broken.

[+] sr_get_data ( sr_session_ctx_t* session, char const* xpath, uint32_t max_depth, uint32_t timeout_ms, sr_get_oper_options_t const opts, struct lyd_node** data ) 1
⇣
sr_get_data ( sr_session_ctx_t* session, char const* xpath, uint32_t max_depth, uint32_t timeout_ms, sr_get_oper_options_t const opts, sr_data_t** data )

| Change | Effect
--- | --- | ---
1 | Base type of parameter data has been changed from struct lyd_node to struct sr_data_s of different format. | Recompilation of a client program may be broken.

[+] sr_get_subtree ( sr_session_ctx_t* session, char const* path, uint32_t timeout_ms, struct lyd_node** subtree ) 1
⇣
sr_get_subtree ( sr_session_ctx_t* session, char const* path, uint32_t timeout_ms, sr_data_t** subtree )

| Change | Effect
--- | --- | ---
1 | Base type of parameter subtree has been changed from struct lyd_node to struct sr_data_s of different format. | Recompilation of a client program may be broken.

[+] sr_lock ( sr_session_ctx_t* session, char const* module_name ) 1
⇣
sr_lock ( sr_session_ctx_t* session, char const* module_name, uint32_t timeout_ms )

| Change | Effect
--- | --- | ---
1 | Parameter timeout_ms of type uint32_t has been added to the calling stack. | Recompilation of a client program may be broken.

[+] sr_remove_module ( sr_conn_ctx_t* conn, char const* module_name ) 1
⇣
sr_remove_module ( sr_conn_ctx_t* conn, char const* module_name, int force )

| Change | Effect
--- | --- | ---
1 | Parameter force of type int has been added to the calling stack. | Recompilation of a client program may be broken.

[+] sr_rpc_send_tree ( sr_session_ctx_t* session, struct lyd_node* input, uint32_t timeout_ms, struct lyd_node** output ) 1
⇣
sr_rpc_send_tree ( sr_session_ctx_t* session, struct lyd_node* input, uint32_t timeout_ms, sr_data_t** output )

| Change | Effect
--- | --- | ---
1 | Base type of parameter output has been changed from struct lyd_node to struct sr_data_s of different format. | Recompilation of a client program may be broken.

to the top

## Problems with Data Types, Low Severity 1

sysrepo_types.h
[+] typedef sr_rpc_cb 1

| Change | Effect
--- | --- | ---
1 | Base type has been changed from int(*)(sr_session_ctx_t*, uint32_t, char const*, , size_t const, , uint32_t, , size_t*, void*) to int(*)(sr_session_ctx_t*, uint32_t, char const*, sr_val_t const*, size_t const, , uint32_t, sr_val_t**, size_t*, void*). | Recompilation of a client program may be broken.

[+] affected symbols: 1 (0.8%)
sr_rpc_subscribe ( sr_session_ctx_t* session, char const* xpath, int(*callback)(struct sr_session_ctx_s*, unsigned int, char const*, ,unsigned long const, ,unsigned int, ,unsigned long*, void*), void* private_data, uint32_t priority, sr_subscr_options_t opts, sr_subscription_ctx_t** subscription )
3rd parameter 'callback' is of type 'sr_rpc_cb'.
to the top

## Other Changes in Symbols 1

sysrepo.h
[+] sr_set_module_replay_support ( sr_conn_ctx_t* conn, char const* module_name, int replay_support ) 1
⇣
sr_set_module_replay_support ( sr_conn_ctx_t* conn, char const* module_name, int enable )

| Change | Effect
--- | --- | ---
1 | 3rd parameter replay_support has been renamed to enable. | No effect.

to the top

## Header Files 3

sysrepo.h
values.h
xpath.h
to the top

## Objects 1

libsysrepo.so.6.0.0
to the top