Beispiel #1
0
static int http_get_request(struct http_request *r)
{
	int ret = -1;
	assert(r && r->c);

	if (0 > r->content_id) {
		r->content_id = server_tsplit(cos_spd_id(), td_root, r->path, 
					      r->path_len, TOR_READ, r->c->evt_id);
		if (r->content_id < 0) return r->content_id;
		ret = 0;
	}
	return ret;
}
td_t 
tsplit(spdid_t spdid, td_t tid, char *param, int len, 
       tor_flags_t tflags, long evtid)
{
	td_t ret = -ENOMEM, ntd;
	struct torrent *t;

	printc("3 tsplit cos_ip\n");

	if (tid != td_root) return -EINVAL;
	ntd = server_tsplit(cos_spd_id(), tid, param, len, tflags, evtid);
	if (ntd <= 0) ERR_THROW(ntd, err);

	t = tor_alloc((void*)ntd, tflags);
	if (!t) ERR_THROW(-ENOMEM, err);
	ret = t->td;
err:
	return ret;
}