path: root/transport.h
diff options
authorDaniel Barkalow <>2007-10-30 01:05:40 (GMT)
committerJunio C Hamano <>2007-11-03 05:40:43 (GMT)
commit4577370e9bfeca8652880b99b8499f76d18865ba (patch)
tree3df529fad99232d7f82f0389d0d8f5dc571319c8 /transport.h
parente3d6d56f1c2097f13a427e158638e5e0918e5705 (diff)
Miscellaneous const changes and utilities
The list of remote refs in struct transport should be const, because builtin-fetch will get confused if it changes. The url in git_connect should be const (and work on a copy) instead of requiring the caller to copy it. match_refs doesn't modify the refspecs it gets. get_fetch_map and get_remote_ref don't change the list they get. Allow transport get_refs_list methods to modify the struct transport. Add a function to copy a list of refs, when a function needs a mutable copy of a const list. Add a function to check the type of a ref, as per the code in connect.c Signed-off-by: Daniel Barkalow <> Signed-off-by: Junio C Hamano <>
Diffstat (limited to 'transport.h')
1 files changed, 3 insertions, 3 deletions
diff --git a/transport.h b/transport.h
index df12ea7..d27f562 100644
--- a/transport.h
+++ b/transport.h
@@ -8,7 +8,7 @@ struct transport {
struct remote *remote;
const char *url;
void *data;
- struct ref *remote_refs;
+ const struct ref *remote_refs;
* Returns 0 if successful, positive if the option is not
@@ -18,7 +18,7 @@ struct transport {
int (*set_option)(struct transport *connection, const char *name,
const char *value);
- struct ref *(*get_refs_list)(const struct transport *transport);
+ struct ref *(*get_refs_list)(struct transport *transport);
int (*fetch)(struct transport *transport, int refs_nr, struct ref **refs);
int (*push)(struct transport *connection, int refspec_nr, const char **refspec, int flags);
@@ -61,7 +61,7 @@ int transport_set_option(struct transport *transport, const char *name,
int transport_push(struct transport *connection,
int refspec_nr, const char **refspec, int flags);
-struct ref *transport_get_remote_refs(struct transport *transport);
+const struct ref *transport_get_remote_refs(struct transport *transport);
int transport_fetch_refs(struct transport *transport, struct ref *refs);
void transport_unlock_pack(struct transport *transport);