Esempio n. 1
0
// TODO: export?
static gpointer
_gen_chunk_bean(struct service_info_s *si)
{
	gchar straddr[STRLEN_ADDRINFO], strid[STRLEN_CHUNKID];
	gchar *chunkid = NULL;
	struct bean_CHUNKS_s *chunk = NULL;

	grid_addrinfo_to_string(&(si->addr), straddr, sizeof(straddr));
	SHA256_randomized_string(strid, sizeof(strid));
	chunk = _bean_create(&descr_struct_CHUNKS);
	chunkid = m2v2_build_chunk_url (straddr, strid);
	CHUNKS_set2_id(chunk, chunkid);

	g_free(chunkid);
	return (gpointer)chunk;
}
// TODO: factorize with _gen_chunk() from meta2_utils.c
static gpointer
_gen_chunk_bean(const char *straddr)
{
	guint8 binid[32];
	gchar strid[65];
	gchar *chunkid = NULL;
	struct bean_CHUNKS_s *chunk = NULL;

	oio_buf_randomize (binid, sizeof(binid));
	oio_str_bin2hex (binid, sizeof(binid), strid, sizeof(strid));
	chunk = _bean_create(&descr_struct_CHUNKS);
	chunkid = m2v2_build_chunk_url (straddr, strid);
	CHUNKS_set2_id(chunk, chunkid);

	g_free(chunkid);
	return (gpointer)chunk;
}