# Dynamically query the server's capabilities.

## Defines
#define | SVN_RA_CAPABILITY_DEPTH "depth"
| The capability of understanding `svn_depth_t` (e.g., the server understands what the client means when the client describes the depth of a working copy to the server.
#define | SVN_RA_CAPABILITY_MERGEINFO "mergeinfo"
| The capability of doing the right thing with merge-tracking information.
#define | SVN_RA_CAPABILITY_LOG_REVPROPS "log-revprops"
| The capability of retrieving arbitrary revprops in svn_ra_get_log2.
#define | SVN_RA_CAPABILITY_PARTIAL_REPLAY "partial-replay"
| The capability of replaying a directory in the repository (partial replay).
#define | SVN_RA_CAPABILITY_COMMIT_REVPROPS "commit-revprops"
| The capability of including revision properties in a commit.
#define | SVN_RA_CAPABILITY_ATOMIC_REVPROPS "atomic-revprops"
| The capability of specifying (and atomically verifying) expected preexisting values when modifying revprops.
## Functions
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 beginning with `"SVN_RA_CAPABILITY_"`), else set *has to FALSE.

## Define Documentation

#define SVN_RA_CAPABILITY_ATOMIC_REVPROPS "atomic-revprops"

The capability of specifying (and atomically verifying) expected preexisting values when modifying revprops.

Since:
  New in 1.7.

Definition at line 1958 of file svn_ra.h.

#define SVN_RA_CAPABILITY_COMMIT_REVPROPS "commit-revprops"

The capability of including revision properties in a commit.

Since:
  New in 1.5.

Definition at line 1950 of file svn_ra.h.

#define SVN_RA_CAPABILITY_DEPTH "depth"

The capability of understanding `svn_depth_t` (e.g., the server understands what the client means when the client describes the depth of a working copy to the server.

)

Since:
  New in 1.5.

Definition at line 1919 of file svn_ra.h.

#define SVN_RA_CAPABILITY_LOG_REVPROPS "log-revprops"

The capability of retrieving arbitrary revprops in svn_ra_get_log2.

Since:
  New in 1.5.

Definition at line 1936 of file svn_ra.h.

#define SVN_RA_CAPABILITY_MERGEINFO "mergeinfo"

The capability of doing the right thing with merge-tracking information.

This capability should be reported bidirectionally, because some repositories may want to reject clients that do not self-report as knowing how to handle merge-tracking.

Since:
  New in 1.5.

Definition at line 1929 of file svn_ra.h.

#define SVN_RA_CAPABILITY_PARTIAL_REPLAY "partial-replay"

The capability of replaying a directory in the repository (partial replay).

Since:
  New in 1.5.

Definition at line 1943 of file svn_ra.h.

## Function Documentation

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 beginning with `"SVN_RA_CAPABILITY_"`), else set *has to FALSE.

If capability isn't recognized, throw `SVN_ERR_UNKNOWN_CAPABILITY`, with the effect on *has undefined.

Use pool for all allocation.

Since:
  New in 1.5.

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines