From: Junio C Hamano Date: Wed, 28 Dec 2011 19:32:36 +0000 (-0800) Subject: Merge branch 'jk/fetch-no-tail-match-refs' into maint X-Git-Tag: v1.7.8.2~16 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/7a5638a1597da222dde484074392223d8daebd15?ds=inline;hp=-c Merge branch 'jk/fetch-no-tail-match-refs' into maint * jk/fetch-no-tail-match-refs: connect.c: drop path_match function fetch-pack: match refs exactly t5500: give fully-qualified refs to fetch-pack drop "match" parameter from get_remote_heads --- 7a5638a1597da222dde484074392223d8daebd15 diff --combined connect.c index d0f59ef0de,2a0a0401af..c8d0ea5d75 --- a/connect.c +++ b/connect.c @@@ -53,7 -53,6 +53,6 @@@ static void add_extra_have(struct extra * Read all the refs from the other end */ struct ref **get_remote_heads(int in, struct ref **list, - int nr_match, char **match, unsigned int flags, struct extra_have_objects *extra_have) { @@@ -92,8 -91,6 +91,6 @@@ if (!check_ref(name, name_len, flags)) continue; - if (nr_match && !path_match(name, nr_match, match)) - continue; ref = alloc_ref(buffer + 41); hashcpy(ref->old_sha1, old_sha1); *list = ref; @@@ -108,27 -105,6 +105,6 @@@ int server_supports(const char *feature strstr(server_capabilities, feature) != NULL; } - int path_match(const char *path, int nr, char **match) - { - int i; - int pathlen = strlen(path); - - for (i = 0; i < nr; i++) { - char *s = match[i]; - int len = strlen(s); - - if (!len || len > pathlen) - continue; - if (memcmp(path + pathlen - len, s, len)) - continue; - if (pathlen > len && path[pathlen - len - 1] != '/') - continue; - *s = 0; - return (i + 1); - } - return 0; - } - enum protocol { PROTO_LOCAL = 1, PROTO_SSH, @@@ -175,15 -151,6 +151,15 @@@ static void get_host_and_port(char **ho } } +static void enable_keepalive(int sockfd) +{ + int ka = 1; + + if (setsockopt(sockfd, SOL_SOCKET, SO_KEEPALIVE, &ka, sizeof(ka)) < 0) + fprintf(stderr, "unable to set SO_KEEPALIVE on socket: %s\n", + strerror(errno)); +} + #ifndef NO_IPV6 static const char *ai_name(const struct addrinfo *ai) @@@ -248,8 -215,6 +224,8 @@@ static int git_tcp_connect_sock(char *h if (sockfd < 0) die("unable to connect to %s:\n%s", host, error_message.buf); + enable_keepalive(sockfd); + if (flags & CONNECT_VERBOSE) fprintf(stderr, "done.\n"); @@@ -323,8 -288,6 +299,8 @@@ static int git_tcp_connect_sock(char *h if (sockfd < 0) die("unable to connect to %s:\n%s", host, error_message.buf); + enable_keepalive(sockfd); + if (flags & CONNECT_VERBOSE) fprintf(stderr, "done.\n");