diff options
Diffstat (limited to 'transport-internal.h')
-rw-r--r-- | transport-internal.h | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/transport-internal.h b/transport-internal.h index 1cde625..90ea749 100644 --- a/transport-internal.h +++ b/transport-internal.h @@ -3,7 +3,8 @@ struct ref; struct transport; -struct argv_array; +struct strvec; +struct transport_ls_refs_options; struct transport_vtable { /** @@ -18,19 +19,19 @@ struct transport_vtable { * the transport to try to share connections, for_push is a * hint as to whether the ultimate operation is a push or a fetch. * - * If communicating using protocol v2 a list of prefixes can be - * provided to be sent to the server to enable it to limit the ref - * advertisement. Since ref filtering is done on the server's end, and - * only when using protocol v2, this list will be ignored when not - * using protocol v2 meaning this function can return refs which don't - * match the provided ref_prefixes. - * * If the transport is able to determine the remote hash for * the ref without a huge amount of effort, it should store it * in the ref's old_sha1 field; otherwise it should be all 0. **/ struct ref *(*get_refs_list)(struct transport *transport, int for_push, - const struct argv_array *ref_prefixes); + struct transport_ls_refs_options *transport_options); + + /** + * Populates the remote side's bundle-uri under protocol v2, + * if the "bundle-uri" capability was advertised. Returns 0 if + * OK, negative values on error. + */ + int (*get_bundle_uri)(struct transport *transport); /** * Fetch the objects for the given refs. Note that this gets @@ -40,7 +41,7 @@ struct transport_vtable { * get_refs_list(), it should set the old_sha1 fields in the * provided refs now. **/ - int (*fetch)(struct transport *transport, int refs_nr, struct ref **refs); + int (*fetch_refs)(struct transport *transport, int refs_nr, struct ref **refs); /** * Push the objects and refs. Send the necessary objects, and |