![Logo](svn-square.jpg) |
Subversion
|
Go to the documentation of this file.
31 #include <apr_pools.h>
33 #include <apr_tables.h>
35 #include <apr_file_io.h>
73 typedef svn_error_t *(*svn_ra_get_wc_prop_func_t)(
void *baton,
85 typedef svn_error_t *(*svn_ra_set_wc_prop_func_t)(
void *baton,
118 typedef svn_error_t *(*svn_ra_invalidate_wc_props_func_t)(
void *baton,
131 (*svn_ra_get_wc_contents_func_t)(
void *baton,
152 typedef svn_error_t *(*svn_ra_get_client_string_func_t)(
void *baton,
178 apr_hash_t *rev_props,
181 apr_array_header_t *prop_diffs,
246 apr_hash_t *rev_props,
270 apr_hash_t *rev_props,
284 void *tunnel_baton,
const char *tunnel_name);
300 void *close_baton,
void *tunnel_baton);
326 const char *tunnel_name,
const char *user,
327 const char *hostname,
int port,
383 const char *lock_token,
419 const char *lock_token,
453 const char *lock_token,
468 const char *lock_token,
541 void *callback_baton,
634 void *callback_baton,
743 const char **corrected_url,
744 const char **redirect_url,
745 const char *repos_URL,
748 void *callback_baton,
761 const char **corrected_url,
762 const char *repos_URL,
765 void *callback_baton,
778 const char *repos_URL,
781 void *callback_baton,
794 const char *repos_URL,
796 void *callback_baton,
808 const char *repos_URL,
810 void *callback_baton,
850 const char **rel_path,
866 const char **rel_path,
1023 apr_hash_t *revprop_table,
1026 apr_hash_t *lock_tokens,
1044 const char *log_msg,
1047 apr_hash_t *lock_tokens,
1063 const char *log_msg,
1065 void *callback_baton,
1066 apr_hash_t *lock_tokens,
1132 apr_hash_t **dirents,
1137 apr_uint32_t dirent_fields,
1153 apr_hash_t **dirents,
1171 typedef svn_error_t *(* svn_ra_dirent_receiver_t)(
const char *rel_path,
1174 apr_pool_t *scratch_pool);
1208 const apr_array_header_t *patterns,
1210 apr_uint32_t dirent_fields,
1212 void *receiver_baton,
1213 apr_pool_t *scratch_pool);
1246 const apr_array_header_t *paths,
1314 void **report_baton,
1316 const char *update_target,
1322 apr_pool_t *result_pool,
1323 apr_pool_t *scratch_pool);
1335 void **report_baton,
1337 const char *update_target,
1356 void **report_baton,
1358 const char *update_target,
1381 void **report_baton,
1383 const char *switch_target,
1385 const char *switch_url,
1390 apr_pool_t *result_pool,
1391 apr_pool_t *scratch_pool);
1404 void **report_baton,
1406 const char *switch_target,
1408 const char *switch_url,
1426 void **report_baton,
1428 const char *switch_target,
1430 const char *switch_url,
1479 void **report_baton,
1480 const char *status_target,
1501 void **report_baton,
1502 const char *status_target,
1569 void **report_baton,
1571 const char *diff_target,
1575 const char *versus_url,
1593 void **report_baton,
1595 const char *diff_target,
1599 const char *versus_url,
1614 void **report_baton,
1616 const char *diff_target,
1619 const char *versus_url,
1684 const apr_array_header_t *paths,
1691 const apr_array_header_t *revprops,
1693 void *receiver_baton,
1708 const apr_array_header_t *paths,
1715 void *receiver_baton,
1816 apr_hash_t **locations,
1819 const apr_array_header_t *location_revisions,
1849 void *receiver_baton,
1898 void *handler_baton,
1915 void *handler_baton,
1952 apr_hash_t *path_revs,
1953 const char *comment,
1984 apr_hash_t *path_tokens,
2160 apr_array_header_t **inherited_props,
2163 apr_pool_t *result_pool,
2164 apr_pool_t *scratch_pool);
2187 const char *capability,
2197 #define SVN_RA_CAPABILITY_DEPTH "depth"
2207 #define SVN_RA_CAPABILITY_MERGEINFO "mergeinfo"
2214 #define SVN_RA_CAPABILITY_LOG_REVPROPS "log-revprops"
2221 #define SVN_RA_CAPABILITY_PARTIAL_REPLAY "partial-replay"
2228 #define SVN_RA_CAPABILITY_COMMIT_REVPROPS "commit-revprops"
2236 #define SVN_RA_CAPABILITY_ATOMIC_REVPROPS "atomic-revprops"
2243 #define SVN_RA_CAPABILITY_INHERITED_PROPS "inherited-props"
2251 #define SVN_RA_CAPABILITY_EPHEMERAL_TXNPROPS "ephemeral-txnprops"
2259 #define SVN_RA_CAPABILITY_GET_FILE_REVS_REVERSE "get-file-revs-reversed"
2266 #define SVN_RA_CAPABILITY_LIST "list"
2329 const char *repos_URL,
2331 void *callback_baton,
2383 const char *log_msg,
2385 void *callback_baton,
2405 apr_hash_t **dirents,
2415 void **report_baton,
2417 const char *update_target,
2428 void **report_baton,
2430 const char *switch_target,
2432 const char *switch_url,
2442 void **report_baton,
2443 const char *status_target,
2455 void **report_baton,
2457 const char *diff_target,
2460 const char *versus_url,
2469 const apr_array_header_t *paths,
2475 void *receiver_baton,
2508 apr_hash_t **locations,
2511 apr_array_header_t *location_revisions,
2525 void *handler_baton,
2584 #define SVN_RA_ABI_VERSION 2
svn_error_t * svn_ra_get_deleted_rev(svn_ra_session_t *session, const char *path, svn_revnum_t peg_revision, svn_revnum_t end_revision, svn_revnum_t *revision_deleted, apr_pool_t *pool)
Given path at revision peg_revision, set *revision_deleted to the revision path was first deleted,...
svn_error_t * svn_ra_get_uuid(svn_ra_session_t *session, const char **uuid, apr_pool_t *pool)
Similar to svn_ra_get_uuid2(), but returns the value allocated in session's pool.
svn_error_t * svn_ra_replay(svn_ra_session_t *session, svn_revnum_t revision, svn_revnum_t low_water_mark, svn_boolean_t send_deltas, const svn_delta_editor_t *editor, void *edit_baton, apr_pool_t *pool)
Replay the changes from revision through editor and edit_baton.
Subversion's authentication system.
svn_error_t * svn_ra_svn_init(int abi_version, apr_pool_t *pool, apr_hash_t *hash)
Initialize libsvn_ra_svn.
svn_error_t * svn_ra_get_locks(svn_ra_session_t *session, apr_hash_t **locks, const char *path, apr_pool_t *pool)
Similar to svn_ra_get_locks2(), but with depth always passed as svn_depth_infinity.
svn_error_t * svn_ra_do_diff(svn_ra_session_t *session, const svn_ra_reporter2_t **reporter, void **report_baton, svn_revnum_t revision, const char *diff_target, svn_boolean_t recurse, svn_boolean_t ignore_ancestry, const char *versus_url, const svn_delta_editor_t *diff_editor, void *diff_baton, apr_pool_t *pool)
Similar to svn_ra_do_diff2(), but with text_deltas set to TRUE.
svn_error_t * svn_ra_change_rev_prop(svn_ra_session_t *session, svn_revnum_t rev, const char *name, const svn_string_t *value, apr_pool_t *pool)
Similar to svn_ra_change_rev_prop2(), but with old_value_p set to NULL.
svn_error_t * svn_ra_get_lock(svn_ra_session_t *session, svn_lock_t **lock, const char *path, apr_pool_t *pool)
If path is locked, set *lock to an svn_lock_t which represents the lock, allocated in pool.
svn_error_t *(* svn_ra_get_wc_prop_func_t)(void *baton, const char *path, const char *name, const svn_string_t **value, apr_pool_t *pool)
This is a function type which allows the RA layer to fetch working copy (WC) properties.
svn_error_t * svn_ra_list(svn_ra_session_t *session, const char *path, svn_revnum_t revision, const apr_array_header_t *patterns, svn_depth_t depth, apr_uint32_t dirent_fields, svn_ra_dirent_receiver_t receiver, void *receiver_baton, apr_pool_t *scratch_pool)
Efficiently list everything within a sub-tree.
svn_error_t * svn_ra_has_capability(svn_ra_session_t *session, svn_boolean_t *has, const char *capability, apr_pool_t *pool)
Set *has to TRUE if the server represented by session has capability (one of the capabilities beginni...
struct svn_ra_callbacks_t svn_ra_callbacks_t
Similar to svn_ra_callbacks2_t, except that the progress notification function and baton is missing.
Counted-length strings for Subversion, plus some C string goodies.
svn_error_t * svn_ra_initialize(apr_pool_t *pool)
Initialize the RA library.
void * progress_baton
Notification callback baton, used with progress_func.
svn_ra_set_wc_prop_func_t set_wc_prop
Immediately set new values for working copy properties.
svn_error_t *(* svn_ra_file_rev_handler_t)(void *baton, const char *path, svn_revnum_t rev, apr_hash_t *rev_props, svn_txdelta_window_handler_t *delta_handler, void **delta_baton, apr_array_header_t *prop_diffs, apr_pool_t *pool)
A callback function type for use in get_file_revs.
svn_error_t * svn_ra_get_file_revs(svn_ra_session_t *session, const char *path, svn_revnum_t start, svn_revnum_t end, svn_ra_file_rev_handler_t handler, void *handler_baton, apr_pool_t *pool)
Similar to svn_ra_get_file_revs2(), but with include_merged_revisions set to FALSE.
svn_error_t * svn_ra_init_ra_libs(void **ra_baton, apr_pool_t *pool)
Initialize the compatibility wrapper, using pool for any allocations.
svn_error_t * svn_ra_local_init(int abi_version, apr_pool_t *pool, apr_hash_t *hash)
Initialize libsvn_ra_local.
svn_error_t * svn_ra_do_switch(svn_ra_session_t *session, const svn_ra_reporter2_t **reporter, void **report_baton, svn_revnum_t revision_to_switch_to, const char *switch_target, svn_boolean_t recurse, const char *switch_url, const svn_delta_editor_t *switch_editor, void *switch_baton, apr_pool_t *pool)
Similar to svn_ra_do_switch2(), but taking svn_ra_reporter2_t instead of svn_ra_reporter3_t,...
svn_error_t * svn_ra_get_file_revs2(svn_ra_session_t *session, const char *path, svn_revnum_t start, svn_revnum_t end, svn_boolean_t include_merged_revisions, svn_file_rev_handler_t handler, void *handler_baton, apr_pool_t *pool)
Retrieve a subset of the interesting revisions of a file path as seen in revision end (see svn_fs_his...
svn_error_t * svn_ra_lock(svn_ra_session_t *session, apr_hash_t *path_revs, const char *comment, svn_boolean_t steal_lock, svn_ra_lock_callback_t lock_func, void *lock_baton, apr_pool_t *pool)
Lock each path in path_revs, which is a hash whose keys are the paths to be locked,...
svn_error_t *(* svn_ra_open_tunnel_func_t)(svn_stream_t **request, svn_stream_t **response, svn_ra_close_tunnel_func_t *close_func, void **close_baton, void *tunnel_baton, const char *tunnel_name, const char *user, const char *hostname, int port, svn_cancel_func_t cancel_func, void *cancel_baton, apr_pool_t *pool)
Callback function for opening a tunnel in ra_svn.
svn_ra_get_wc_contents_func_t get_wc_contents
Working copy file content fetching function.
svn_error_t * svn_ra_do_update3(svn_ra_session_t *session, const svn_ra_reporter3_t **reporter, void **report_baton, svn_revnum_t revision_to_update_to, const char *update_target, svn_depth_t depth, svn_boolean_t send_copyfrom_args, svn_boolean_t ignore_ancestry, const svn_delta_editor_t *update_editor, void *update_baton, apr_pool_t *result_pool, apr_pool_t *scratch_pool)
Ask the RA layer to update a working copy to a new revision.
Using this callback struct is similar to calling the newer public interface that is based on svn_ra_s...
A generic checksum representation.
svn_error_t * svn_ra_open(svn_ra_session_t **session_p, const char *repos_URL, const svn_ra_callbacks_t *callbacks, void *callback_baton, apr_hash_t *config, apr_pool_t *pool)
svn_error_t * svn_ra_do_update2(svn_ra_session_t *session, const svn_ra_reporter3_t **reporter, void **report_baton, svn_revnum_t revision_to_update_to, const char *update_target, svn_depth_t depth, svn_boolean_t send_copyfrom_args, const svn_delta_editor_t *update_editor, void *update_baton, apr_pool_t *pool)
Similar to svn_ra_do_update3(), but always ignoring ancestry.
svn_error_t * svn_ra_get_commit_editor3(svn_ra_session_t *session, const svn_delta_editor_t **editor, void **edit_baton, apr_hash_t *revprop_table, svn_commit_callback2_t commit_callback, void *commit_baton, apr_hash_t *lock_tokens, svn_boolean_t keep_locks, apr_pool_t *pool)
Set *editor and *edit_baton to an editor for committing changes to the repository of session,...
svn_error_t * svn_ra_get_dated_revision(svn_ra_session_t *session, svn_revnum_t *revision, apr_time_t tm, apr_pool_t *pool)
Get the latest revision number at time tm in the repository of session.
svn_error_t * svn_ra_dav_init(int abi_version, apr_pool_t *pool, apr_hash_t *hash)
Initialize libsvn_ra_serf.
svn_error_t * svn_ra_get_repos_root(svn_ra_session_t *session, const char **url, apr_pool_t *pool)
Similar to svn_ra_get_repos_root2(), but returns the value allocated in session's pool.
svn_error_t *(* svn_ra_get_wc_contents_func_t)(void *baton, svn_stream_t **contents, const svn_checksum_t *checksum, apr_pool_t *pool)
This is a function type which allows the RA layer to fetch the cached pristine file contents whose ch...
svn_error_t *(* svn_ra_push_wc_prop_func_t)(void *baton, const char *path, const char *name, const svn_string_t *value, apr_pool_t *pool)
This is a function type which allows the RA layer to store new working copy properties as part of a c...
svn_ra_get_client_string_func_t get_client_string
Client string customization callback function.
svn_error_t * svn_ra_do_switch2(svn_ra_session_t *session, const svn_ra_reporter3_t **reporter, void **report_baton, svn_revnum_t revision_to_switch_to, const char *switch_target, svn_depth_t depth, const char *switch_url, const svn_delta_editor_t *switch_editor, void *switch_baton, apr_pool_t *pool)
Similar to svn_ra_do_switch3(), but always ignoring ancestry and never sending copyfrom_args.
Similar to svn_ra_reporter2_t, but without support for lock tokens.
svn_error_t * svn_ra_get_commit_editor2(svn_ra_session_t *session, const svn_delta_editor_t **editor, void **edit_baton, const char *log_msg, svn_commit_callback2_t commit_callback, void *commit_baton, apr_hash_t *lock_tokens, svn_boolean_t keep_locks, apr_pool_t *pool)
Same as svn_ra_get_commit_editor3(), but with revprop_table set to a hash containing the SVN_PROP_REV...
svn_error_t * svn_ra_serf_init(int abi_version, apr_pool_t *pool, apr_hash_t *hash)
Initialize libsvn_ra_serf.
svn_error_t * svn_ra_get_path_relative_to_session(svn_ra_session_t *ra_session, const char **rel_path, const char *url, apr_pool_t *pool)
Convert url into a path relative to the session URL of ra_session, setting *rel_path to that value.
svn_error_t * svn_ra_open3(svn_ra_session_t **session_p, const char *repos_URL, const char *uuid, const svn_ra_callbacks2_t *callbacks, void *callback_baton, apr_hash_t *config, apr_pool_t *pool)
Similar to svn_ra_open4(), but with corrected_url always passed as NULL.
svn_error_t * svn_ra_get_file(svn_ra_session_t *session, const char *path, svn_revnum_t revision, svn_stream_t *stream, svn_revnum_t *fetched_rev, apr_hash_t **props, apr_pool_t *pool)
Fetch the contents and properties of file path at revision.
svn_error_t *(* svn_ra_replay_revstart_callback_t)(svn_revnum_t revision, void *replay_baton, const svn_delta_editor_t **editor, void **edit_baton, apr_hash_t *rev_props, apr_pool_t *pool)
Callback function type for replay_range actions.
struct svn_stream_t svn_stream_t
An abstract stream of bytes–either incoming or outgoing or both.
svn_error_t * svn_ra_get_session_url(svn_ra_session_t *ra_session, const char **url, apr_pool_t *pool)
Set *url to the session URL – the URL to which ra_session was opened or most recently reparented.
svn_cancel_func_t cancel_func
Cancellation function.
apr_hash_t * svn_mergeinfo_catalog_t
A hash mapping paths (const char *) to svn_mergeinfo_t.
const char * name
The proper name of the RA library, (like "ra_serf" or "ra_local")
struct svn_ra_plugin_t svn_ra_plugin_t
Using this callback struct is similar to calling the newer public interface that is based on svn_ra_s...
void(* svn_ra_progress_notify_func_t)(apr_off_t progress, apr_off_t total, void *baton, apr_pool_t *pool)
Callback function type for progress notification.
svn_error_t * svn_ra_open2(svn_ra_session_t **session_p, const char *repos_URL, const svn_ra_callbacks2_t *callbacks, void *callback_baton, apr_hash_t *config, apr_pool_t *pool)
Similar to svn_ra_open3(), but with uuid set to NULL.
void * tunnel_baton
A baton used with open_tunnel_func and close_tunnel_func.
Similar to svn_ra_reporter3_t, but without support for depths.
svn_error_t * svn_ra_stat(svn_ra_session_t *session, const char *path, svn_revnum_t revision, svn_dirent_t **dirent, apr_pool_t *pool)
Set *dirent to an svn_dirent_t associated with path at revision.
svn_depth_t
The concept of depth for directories.
svn_error_t *(* svn_ra_invalidate_wc_props_func_t)(void *baton, const char *path, const char *name, apr_pool_t *pool)
This is a function type which allows the RA layer to invalidate (i.e., remove) wcprops recursively.
struct svn_ra_reporter_t svn_ra_reporter_t
Similar to svn_ra_reporter2_t, but without support for lock tokens.
svn_error_t * svn_ra_get_log2(svn_ra_session_t *session, const apr_array_header_t *paths, svn_revnum_t start, svn_revnum_t end, int limit, svn_boolean_t discover_changed_paths, svn_boolean_t strict_node_history, svn_boolean_t include_merged_revisions, const apr_array_header_t *revprops, svn_log_entry_receiver_t receiver, void *receiver_baton, apr_pool_t *pool)
Invoke receiver with receiver_baton on each log message from start to end.
svn_error_t * svn_ra_get_location_segments(svn_ra_session_t *session, const char *path, svn_revnum_t peg_revision, svn_revnum_t start_rev, svn_revnum_t end_rev, svn_location_segment_receiver_t receiver, void *receiver_baton, apr_pool_t *pool)
Call receiver (with receiver_baton) for each segment in the location history of path in peg_revision,...
svn_mergeinfo_inheritance_t
The three ways to request mergeinfo affecting a given path.
svn_error_t *(* svn_log_message_receiver_t)(void *baton, apr_hash_t *changed_paths, svn_revnum_t revision, const char *author, const char *date, const char *message, apr_pool_t *pool)
Similar to svn_log_entry_receiver_t, except this uses separate parameters for each part of the log en...
A lock object, for client & server to share.
svn_auth_baton_t * auth_baton
An authentication baton, created by the application, which is capable of retrieving all known types o...
svn_error_t * svn_ra_do_status(svn_ra_session_t *session, const svn_ra_reporter2_t **reporter, void **report_baton, const char *status_target, svn_revnum_t revision, svn_boolean_t recurse, const svn_delta_editor_t *status_editor, void *status_baton, apr_pool_t *pool)
Similar to svn_ra_do_status2(), but taking svn_ra_reporter2_t instead of svn_ra_reporter3_t,...
svn_error_t * svn_ra_get_repos_root2(svn_ra_session_t *session, const char **url, apr_pool_t *pool)
Set *url to the repository's root URL, allocated in pool.
svn_error_t *(* svn_commit_callback2_t)(const svn_commit_info_t *commit_info, void *baton, apr_pool_t *pool)
Callback function type for commits.
svn_error_t * svn_ra_create_callbacks(svn_ra_callbacks2_t **callbacks, apr_pool_t *pool)
Initialize a callback structure.
struct svn_ra_session_t svn_ra_session_t
A repository access session.
svn_error_t * svn_ra_replay_range(svn_ra_session_t *session, svn_revnum_t start_revision, svn_revnum_t end_revision, svn_revnum_t low_water_mark, svn_boolean_t send_deltas, svn_ra_replay_revstart_callback_t revstart_func, svn_ra_replay_revfinish_callback_t revfinish_func, void *replay_baton, apr_pool_t *pool)
Replay the changes from a range of revisions between start_revision and end_revision (inclusive).
svn_error_t * svn_ra_change_rev_prop2(svn_ra_session_t *session, svn_revnum_t rev, const char *name, const svn_string_t *const *old_value_p, const svn_string_t *value, apr_pool_t *pool)
Set the property name to value on revision rev in the repository of session.
svn_error_t * svn_ra_unlock(svn_ra_session_t *session, apr_hash_t *path_tokens, svn_boolean_t break_lock, svn_ra_lock_callback_t lock_func, void *lock_baton, apr_pool_t *pool)
Remove the repository lock for each path in path_tokens.
svn_error_t *(* svn_commit_callback_t)(svn_revnum_t new_revision, const char *date, const char *author, void *baton)
Same as svn_commit_callback2_t, but uses individual data elements instead of the svn_commit_info_t st...
Similar to svn_ra_callbacks2_t, except that the progress notification function and baton is missing.
svn_ra_get_wc_prop_func_t get_wc_prop
Fetch working copy properties.
svn_error_t * svn_ra_get_locks2(svn_ra_session_t *session, apr_hash_t **locks, const char *path, svn_depth_t depth, apr_pool_t *pool)
Set *locks to a hashtable which represents all locks on or below path.
svn_error_t *(* svn_location_segment_receiver_t)(svn_location_segment_t *segment, void *baton, apr_pool_t *pool)
A callback invoked by generators of svn_location_segment_t objects, used to report information about ...
svn_error_t * svn_ra_check_path(svn_ra_session_t *session, const char *path, svn_revnum_t revision, svn_node_kind_t *kind, apr_pool_t *pool)
Set *kind to the node kind associated with path at revision.
struct svn_ra_reporter2_t svn_ra_reporter2_t
Similar to svn_ra_reporter3_t, but without support for depths.
struct svn_ra_callbacks2_t svn_ra_callbacks2_t
A collection of callbacks implemented by libsvn_client which allows an RA layer to "pull" information...
svn_error_t * svn_ra_get_latest_revnum(svn_ra_session_t *session, svn_revnum_t *latest_revnum, apr_pool_t *pool)
Get the latest revision number from the repository of session.
svn_error_t * svn_ra_reparent(svn_ra_session_t *ra_session, const char *url, apr_pool_t *pool)
Change the root URL of an open ra_session to point to a new path in the same repository.
svn_error_t *(* svn_ra_dirent_receiver_t)(const char *rel_path, svn_dirent_t *dirent, void *baton, apr_pool_t *scratch_pool)
Callback type to be used with svn_ra_list().
svn_error_t * svn_ra_get_ra_library(svn_ra_plugin_t **library, void *ra_baton, const char *url, apr_pool_t *pool)
Return an RA vtable-library which can handle URL.
const svn_version_t * svn_ra_version(void)
Get libsvn_ra version information.
A general subversion directory entry.
svn_error_t * svn_ra_open4(svn_ra_session_t **session_p, const char **corrected_url, const char *repos_URL, const char *uuid, const svn_ra_callbacks2_t *callbacks, void *callback_baton, apr_hash_t *config, apr_pool_t *pool)
Similar to svn_ra_open5(), but with redirect_url always passed as NULL.
svn_error_t * svn_ra_get_dir(svn_ra_session_t *session, const char *path, svn_revnum_t revision, apr_hash_t **dirents, svn_revnum_t *fetched_rev, apr_hash_t **props, apr_pool_t *pool)
Similar to svn_ra_get_dir2, but with SVN_DIRENT_ALL for the dirent_fields parameter.
svn_error_t *(* svn_txdelta_window_handler_t)(svn_txdelta_window_t *window, void *baton)
A typedef for functions that consume a series of delta windows, for use in caller-pushes interfaces.
svn_boolean_t(* svn_ra_check_tunnel_func_t)(void *tunnel_baton, const char *tunnel_name)
Callback function that checks if an ra_svn tunnel called tunnel_name is handled by the callbakcs or t...
svn_error_t * svn_ra_get_path_relative_to_root(svn_ra_session_t *ra_session, const char **rel_path, const char *url, apr_pool_t *pool)
Convert url into a path relative to the repository root URL of the repository with which ra_session i...
int svn_boolean_t
YABT: Yet Another Boolean Type.
#define SVN_DEPRECATED
Macro used to mark deprecated functions.
svn_ra_check_tunnel_func_t check_tunnel_func
Check-tunnel callback.
long int svn_revnum_t
A revision number.
svn_node_kind_t
The various types of nodes in the Subversion filesystem.
svn_error_t *(* svn_log_entry_receiver_t)(void *baton, svn_log_entry_t *log_entry, apr_pool_t *pool)
The callback invoked by log message loopers, such as svn_ra_plugin_t.get_log() and svn_repos_get_logs...
svn_error_t * svn_ra_do_diff2(svn_ra_session_t *session, const svn_ra_reporter2_t **reporter, void **report_baton, svn_revnum_t revision, const char *diff_target, svn_boolean_t recurse, svn_boolean_t ignore_ancestry, svn_boolean_t text_deltas, const char *versus_url, const svn_delta_editor_t *diff_editor, void *diff_baton, apr_pool_t *pool)
Similar to svn_ra_do_diff3(), but taking svn_ra_reporter2_t instead of svn_ra_reporter3_t,...
svn_error_t * svn_ra_get_inherited_props(svn_ra_session_t *session, apr_array_header_t **inherited_props, const char *path, svn_revnum_t revision, apr_pool_t *result_pool, apr_pool_t *scratch_pool)
Set *inherited_props to a depth-first ordered array of svn_prop_inherited_item_t * structures represe...
svn_error_t * svn_ra_get_uuid2(svn_ra_session_t *session, const char **uuid, apr_pool_t *pool)
Set *uuid to the repository's UUID, allocated in pool.
svn_error_t * svn_ra_get_locations(svn_ra_session_t *session, apr_hash_t **locations, const char *path, svn_revnum_t peg_revision, const apr_array_header_t *location_revisions, apr_pool_t *pool)
Set *locations to the locations (at the repository revisions location_revisions) of the file identifi...
svn_error_t *(* svn_cancel_func_t)(void *cancel_baton)
A user defined callback that subversion will call with a user defined baton to see if the current ope...
svn_error_t *(* svn_ra_replay_revfinish_callback_t)(svn_revnum_t revision, void *replay_baton, const svn_delta_editor_t *editor, void *edit_baton, apr_hash_t *rev_props, apr_pool_t *pool)
Callback function type for replay_range actions.
svn_error_t * svn_ra_print_modules(svn_stringbuf_t *output, apr_pool_t *pool)
Append a textual list of all available RA modules to the stringbuf output.
A structure full of callback functions the delta source will invoke as it produces the delta.
svn_ra_push_wc_prop_func_t push_wc_prop
Schedule new values for working copy properties.
svn_error_t * svn_ra_get_commit_editor(svn_ra_session_t *session, const svn_delta_editor_t **editor, void **edit_baton, const char *log_msg, svn_commit_callback_t callback, void *callback_baton, apr_hash_t *lock_tokens, svn_boolean_t keep_locks, apr_pool_t *pool)
Same as svn_ra_get_commit_editor2(), but uses svn_commit_callback_t.
svn_error_t * svn_ra_do_switch3(svn_ra_session_t *session, const svn_ra_reporter3_t **reporter, void **report_baton, svn_revnum_t revision_to_switch_to, const char *switch_target, svn_depth_t depth, const char *switch_url, svn_boolean_t send_copyfrom_args, svn_boolean_t ignore_ancestry, const svn_delta_editor_t *switch_editor, void *switch_baton, apr_pool_t *result_pool, apr_pool_t *scratch_pool)
Ask the RA layer to switch a working copy to a new revision and URL.
svn_error_t * svn_ra_do_update(svn_ra_session_t *session, const svn_ra_reporter2_t **reporter, void **report_baton, svn_revnum_t revision_to_update_to, const char *update_target, svn_boolean_t recurse, const svn_delta_editor_t *update_editor, void *update_baton, apr_pool_t *pool)
Similar to svn_ra_do_update2(), but taking svn_ra_reporter2_t instead of svn_ra_reporter3_t; if recur...
svn_error_t * svn_ra_print_ra_libraries(svn_stringbuf_t **descriptions, void *ra_baton, apr_pool_t *pool)
Similar to svn_ra_print_modules().
A collection of callbacks implemented by libsvn_client which allows an RA layer to "pull" information...
svn_error_t *(* svn_file_rev_handler_t)(void *baton, const char *path, svn_revnum_t rev, apr_hash_t *rev_props, svn_boolean_t result_of_merge, svn_txdelta_window_handler_t *delta_handler, void **delta_baton, apr_array_header_t *prop_diffs, apr_pool_t *pool)
The callback invoked by file rev loopers, such as svn_ra_plugin_t.get_file_revs2() and svn_repos_get_...
svn_error_t * svn_ra_rev_prop(svn_ra_session_t *session, svn_revnum_t rev, const char *name, svn_string_t **value, apr_pool_t *pool)
Set *value to the value of unversioned property name attached to revision rev in the repository of se...
svn_error_t *(* svn_ra_lock_callback_t)(void *baton, const char *path, svn_boolean_t do_lock, const svn_lock_t *lock, svn_error_t *ra_err, apr_pool_t *pool)
Callback function type for locking and unlocking actions.
void(* svn_ra_close_tunnel_func_t)(void *close_baton, void *tunnel_baton)
Callback function for closing a tunnel in ra_svn.
svn_error_t *(* svn_ra_get_client_string_func_t)(void *baton, const char **name, apr_pool_t *pool)
A function type which allows the RA layer to ask about any customizations to the client name string.
svn_ra_progress_notify_func_t progress_func
Notification callback used for progress information.
A buffered string, capable of appending without an allocation and copy for each append.
svn_ra_invalidate_wc_props_func_t invalidate_wc_props
Invalidate working copy properties.
svn_error_t * svn_ra_get_log(svn_ra_session_t *session, const apr_array_header_t *paths, svn_revnum_t start, svn_revnum_t end, int limit, svn_boolean_t discover_changed_paths, svn_boolean_t strict_node_history, svn_log_message_receiver_t receiver, void *receiver_baton, apr_pool_t *pool)
Similar to svn_ra_get_log2(), but uses svn_log_message_receiver_t instead of svn_log_entry_receiver_t...
struct svn_auth_baton_t svn_auth_baton_t
The type of a Subversion authentication object.
mergeinfo handling and processing
svn_error_t *(* svn_ra_set_wc_prop_func_t)(void *baton, const char *path, const char *name, const svn_string_t *value, apr_pool_t *pool)
This is a function type which allows the RA layer to store new working copy properties during update-...
svn_error_t * svn_ra_rev_proplist(svn_ra_session_t *session, svn_revnum_t rev, apr_hash_t **props, apr_pool_t *pool)
Set *props to the list of unversioned properties attached to revision rev in the repository of sessio...
const char * description
Short doc string printed out by svn --version
svn_error_t * svn_ra_do_diff3(svn_ra_session_t *session, const svn_ra_reporter3_t **reporter, void **report_baton, svn_revnum_t revision, const char *diff_target, svn_depth_t depth, svn_boolean_t ignore_ancestry, svn_boolean_t text_deltas, const char *versus_url, const svn_delta_editor_t *diff_editor, void *diff_baton, apr_pool_t *pool)
Ask the RA layer to 'diff' a working copy against versus_url; it's another form of svn_ra_do_update2(...
svn_ra_open_tunnel_func_t open_tunnel_func
Open-tunnel callback.
svn_error_t * svn_ra_get_dir2(svn_ra_session_t *session, apr_hash_t **dirents, svn_revnum_t *fetched_rev, apr_hash_t **props, const char *path, svn_revnum_t revision, apr_uint32_t dirent_fields, apr_pool_t *pool)
If dirents is non NULL, set *dirents to contain all the entries of directory path at revision.
svn_error_t * svn_ra_open5(svn_ra_session_t **session_p, const char **corrected_url, const char **redirect_url, const char *repos_URL, const char *uuid, const svn_ra_callbacks2_t *callbacks, void *callback_baton, apr_hash_t *config, apr_pool_t *pool)
Open a repository access session to the repository at repos_URL, or inform the caller regarding a cor...
svn_error_t * svn_ra_get_mergeinfo(svn_ra_session_t *session, svn_mergeinfo_catalog_t *catalog, const apr_array_header_t *paths, svn_revnum_t revision, svn_mergeinfo_inheritance_t inherit, svn_boolean_t include_descendants, apr_pool_t *pool)
Set *catalog to a mergeinfo catalog for the paths in paths.
struct svn_ra_reporter3_t svn_ra_reporter3_t
The update Reporter.
svn_error_t * svn_ra_do_status2(svn_ra_session_t *session, const svn_ra_reporter3_t **reporter, void **report_baton, const char *status_target, svn_revnum_t revision, svn_depth_t depth, const svn_delta_editor_t *status_editor, void *status_baton, apr_pool_t *pool)
Ask the RA layer to describe the status of a working copy with respect to revision of the repository ...