summaryrefslogtreecommitdiff
path: root/src/transport.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/transport.h')
-rw-r--r--src/transport.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/transport.h b/src/transport.h
index 23b83b690..2ed8ad32a 100644
--- a/src/transport.h
+++ b/src/transport.h
@@ -7,7 +7,6 @@
#ifndef INCLUDE_transport_h__
#define INCLUDE_transport_h__
-#include "git2/transport.h"
#include "git2/net.h"
#include "vector.h"
@@ -61,7 +60,7 @@ struct git_transport {
/**
* Give a list of references, useful for ls-remote
*/
- int (*ls)(struct git_transport *transport, git_headarray *headarray);
+ int (*ls)(struct git_transport *transport, git_headlist_cb list_cb, void *opaque);
/**
* Push the changes over
*/
@@ -74,7 +73,7 @@ struct git_transport {
* Negotiate the minimal amount of objects that need to be
* retrieved
*/
- int (*negotiate_fetch)(struct git_transport *transport, git_repository *repo, git_headarray *list);
+ int (*negotiate_fetch)(struct git_transport *transport, git_repository *repo, const git_vector *wants);
/**
* Send a flush
*/
@@ -97,9 +96,15 @@ struct git_transport {
void (*free)(struct git_transport *transport);
};
+
+int git_transport_new(struct git_transport **transport, const char *url);
int git_transport_local(struct git_transport **transport);
int git_transport_git(struct git_transport **transport);
int git_transport_http(struct git_transport **transport);
int git_transport_dummy(struct git_transport **transport);
+int git_transport_valid_url(const char *url);
+
+typedef struct git_transport git_transport;
+typedef int (*git_transport_cb)(git_transport **transport);
#endif