1#ifndef CONNECT_H
2#define CONNECT_H
3
4#include "protocol.h"
5
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)
10extern struct child_process *git_connect(int fd[2], const char *url, const char *prog, int flags);
11extern int finish_connect(struct child_process *conn);
12extern int git_connection_is_socket(struct child_process *conn);
13extern int server_supports(const char *feature);
14extern int parse_feature_request(const char *features, const char *feature);
15extern const char *server_feature_value(const char *feature, int *len_ret);
16extern int url_is_local_not_ssh(const char *url);
17
18struct packet_reader;
19extern enum protocol_version discover_version(struct packet_reader *reader);
20
21extern int server_supports_v2(const char *c, int die_on_error);
22extern int server_supports_feature(const char *c, const char *feature,
23 int die_on_error);
24
25#endif
26