libgit2

git_smart_subtransport_definition

Version:

Definition for a "subtransport"

The smart transport knows how to speak the git protocol, but it has no knowledge of how to establish a connection between it and another endpoint, or how to move data back and forth. For this, a subtransport interface is declared, and the smart transport delegates this work to the subtransports.

Three subtransports are provided by libgit2: ssh, git, http(s).

Subtransports can either be RPC = 0 (persistent connection) or RPC = 1 (request/response). The smart transport handles the differences in its own logic. The git subtransport is RPC = 0, while http is RPC = 1.

Signature

typedef struct git_smart_subtransport_definition { git_smart_subtransport_cb callback unsigned int rpc void *param };

Members

callback

The function to use to create the git_smart_subtransport

unsigned int
rpc

True if the protocol is stateless; false otherwise. For example, http:// is stateless, but git:// is not.

void *
param

User-specified parameter passed to the callback

Versions