2013-07-09 04:56:53 +08:00
|
|
|
#ifndef CONNECT_H
|
|
|
|
#define CONNECT_H
|
|
|
|
|
2018-07-10 05:35:39 +08:00
|
|
|
#include "protocol.h"
|
2018-07-10 03:25:32 +08:00
|
|
|
|
2013-07-09 04:56:53 +08:00
|
|
|
#define CONNECT_VERBOSE (1u << 0)
|
2013-11-29 03:49:17 +08:00
|
|
|
#define CONNECT_DIAG_URL (1u << 1)
|
2016-02-03 12:09:14 +08:00
|
|
|
#define CONNECT_IPV4 (1u << 2)
|
|
|
|
#define CONNECT_IPV6 (1u << 3)
|
2019-04-29 16:28:14 +08:00
|
|
|
struct child_process *git_connect(int fd[2], const char *url, const char *prog, int flags);
|
|
|
|
int finish_connect(struct child_process *conn);
|
|
|
|
int git_connection_is_socket(struct child_process *conn);
|
|
|
|
int server_supports(const char *feature);
|
|
|
|
int parse_feature_request(const char *features, const char *feature);
|
|
|
|
const char *server_feature_value(const char *feature, int *len_ret);
|
|
|
|
int url_is_local_not_ssh(const char *url);
|
2013-07-09 04:56:53 +08:00
|
|
|
|
2018-03-15 02:31:45 +08:00
|
|
|
struct packet_reader;
|
2019-04-29 16:28:14 +08:00
|
|
|
enum protocol_version discover_version(struct packet_reader *reader);
|
2018-03-15 02:31:45 +08:00
|
|
|
|
2020-05-26 03:58:56 +08:00
|
|
|
int server_supports_hash(const char *desired, int *feature_supported);
|
2020-05-26 03:58:58 +08:00
|
|
|
const char *parse_feature_value(const char *feature_list, const char *feature, int *lenp, int *offset);
|
2019-04-29 16:28:14 +08:00
|
|
|
int server_supports_v2(const char *c, int die_on_error);
|
2020-05-26 03:58:53 +08:00
|
|
|
int server_feature_v2(const char *c, const char **v);
|
2019-04-29 16:28:14 +08:00
|
|
|
int server_supports_feature(const char *c, const char *feature,
|
2019-04-29 16:28:23 +08:00
|
|
|
int die_on_error);
|
2018-03-16 01:31:21 +08:00
|
|
|
|
2020-05-19 18:54:00 +08:00
|
|
|
void check_stateless_delimiter(int stateless_rpc,
|
|
|
|
struct packet_reader *reader,
|
|
|
|
const char *error);
|
|
|
|
|
2013-07-09 04:56:53 +08:00
|
|
|
#endif
|