Sync with 'maint'
[git/gitster.git] / connect.h
blob1645126c17f889659d84174210a43939ef67507f
1 #ifndef CONNECT_H
2 #define CONNECT_H
4 #include "protocol.h"
6 #define CONNECT_VERBOSE (1u << 0)
7 #define CONNECT_DIAG_URL (1u << 1)
8 #define CONNECT_IPV4 (1u << 2)
9 #define CONNECT_IPV6 (1u << 3)
10 struct child_process *git_connect(int fd[2], const char *url, const char *name, const char *prog, int flags);
11 int finish_connect(struct child_process *conn);
12 int git_connection_is_socket(struct child_process *conn);
13 int server_supports(const char *feature);
14 int parse_feature_request(const char *features, const char *feature);
15 const char *server_feature_value(const char *feature, size_t *len_ret);
16 int url_is_local_not_ssh(const char *url);
18 struct packet_reader;
19 enum protocol_version discover_version(struct packet_reader *reader);
21 int server_supports_hash(const char *desired, int *feature_supported);
22 const char *parse_feature_value(const char *feature_list, const char *feature, size_t *lenp, size_t *offset);
23 int server_supports_v2(const char *c);
24 void ensure_server_supports_v2(const char *c);
25 int server_feature_v2(const char *c, const char **v);
26 int server_supports_feature(const char *c, const char *feature,
27 int die_on_error);
29 void check_stateless_delimiter(int stateless_rpc,
30 struct packet_reader *reader,
31 const char *error);
33 #endif