Commit 0132cf64 by Carlos Martín Nieto Committed by Vicent Marti

git_pkt_send_wants

parent e1f4a761
......@@ -209,3 +209,29 @@ int git_pkt_send_flush(int s)
return gitno_send(s, flush, STRLEN(flush), 0);
}
/*
* All "want" packets have the same length and format, so what we do
* is overwrite the OID each time.
*/
#define WANT_PREFIX "0032want "
int git_pkt_send_wants(git_headarray *refs)
{
unsigned int i;
int ret = GIT_SUCCESS;
char buf[STRLEN(WANT_PREFIX) + GIT_OID_HEXSZ + 2];
git_remote_head *head;
memcpy(buf, WANT_PREFIX, STRLEN(WANT_PREFIX));
buf[sizeof(buf) - 2] = '\n';
buf[sizeof(buf) - 1] = '\0';
for (i = 0; i < refs->len; ++i) {
head = refs->heads[i];
git_oid_fmt(buf + STRLEN(WANT_PREFIX), &head->oid);
printf("would send %s\n", buf);
}
return ret;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment