[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r25120 - gnunet/src/fs
From: |
gnunet |
Subject: |
[GNUnet-SVN] r25120 - gnunet/src/fs |
Date: |
Sun, 25 Nov 2012 00:09:36 +0100 |
Author: grothoff
Date: 2012-11-25 00:09:36 +0100 (Sun, 25 Nov 2012)
New Revision: 25120
Added:
gnunet/src/fs/test_gnunet_service_fs_p2p_stream.conf
Modified:
gnunet/src/fs/Makefile.am
gnunet/src/fs/fs.conf.in
gnunet/src/fs/fs_test_lib_data.conf
gnunet/src/fs/gnunet-service-fs.c
gnunet/src/fs/perf_gnunet_service_fs_p2p.c
gnunet/src/fs/test_gnunet_service_fs_migration.c
gnunet/src/fs/test_gnunet_service_fs_p2p.c
Log:
-add multi-peer testcase for stream-based transfers (expected to fail right
now), and option to disable anonymous transfers --- to force stream-based
transfers
Modified: gnunet/src/fs/Makefile.am
===================================================================
--- gnunet/src/fs/Makefile.am 2012-11-24 22:49:52 UTC (rev 25119)
+++ gnunet/src/fs/Makefile.am 2012-11-24 23:09:36 UTC (rev 25120)
@@ -235,6 +235,7 @@
test_fs_uri \
test_gnunet_service_fs_migration \
test_gnunet_service_fs_p2p \
+ test_gnunet_service_fs_p2p_stream \
$(FS_BENCHMARKS)
test_plugin_block_fs_SOURCES = \
@@ -279,6 +280,7 @@
test_fs_test_lib \
test_gnunet_service_fs_migration \
test_gnunet_service_fs_p2p \
+ test_gnunet_service_fs_p2p_stream \
perf_gnunet_service_fs_p2p \
perf_gnunet_service_fs_p2p_index \
perf_gnunet_service_fs_p2p_respect \
@@ -433,6 +435,14 @@
$(top_builddir)/src/fs/libgnunetfs.la \
$(top_builddir)/src/util/libgnunetutil.la
+test_gnunet_service_fs_p2p_stream_SOURCES = \
+ test_gnunet_service_fs_p2p.c
+test_gnunet_service_fs_p2p_stream_LDADD = \
+ $(top_builddir)/src/fs/libgnunetfstest.a \
+ $(top_builddir)/src/testbed/libgnunettestbed.la \
+ $(top_builddir)/src/fs/libgnunetfs.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+
test_gnunet_service_fs_migration_SOURCES = \
test_gnunet_service_fs_migration.c
test_gnunet_service_fs_migration_LDADD = \
@@ -513,6 +523,7 @@
test_fs_unindex_data.conf \
test_fs_uri_data.conf \
test_gnunet_service_fs_migration_data.conf \
+ test_gnunet_service_fs_p2p_stream.conf \
test_gnunet_fs_idx_data.conf \
test_gnunet_fs_ns_data.conf \
test_gnunet_fs_psd_data.conf \
Modified: gnunet/src/fs/fs.conf.in
===================================================================
--- gnunet/src/fs/fs.conf.in 2012-11-24 22:49:52 UTC (rev 25119)
+++ gnunet/src/fs/fs.conf.in 2012-11-24 23:09:36 UTC (rev 25120)
@@ -50,7 +50,11 @@
# Enable monkey?
# PREFIX = @MONKEYPREFIX@
+# Disable anonymous file-sharing (but keep non-anonymous transfers)?
+# This option is mostly for testing.
+DISABLE_ANON_TRANSFER = NO
+
[gnunet-auto-share]
BINARY = gnunet-auto-share
Modified: gnunet/src/fs/fs_test_lib_data.conf
===================================================================
--- gnunet/src/fs/fs_test_lib_data.conf 2012-11-24 22:49:52 UTC (rev 25119)
+++ gnunet/src/fs/fs_test_lib_data.conf 2012-11-24 23:09:36 UTC (rev 25120)
@@ -9,3 +9,5 @@
[datastore]
QUOTA = 2 GB
+[testbed]
+OVERLAY_TOPOLOGY = CLIQUE
Modified: gnunet/src/fs/gnunet-service-fs.c
===================================================================
--- gnunet/src/fs/gnunet-service-fs.c 2012-11-24 22:49:52 UTC (rev 25119)
+++ gnunet/src/fs/gnunet-service-fs.c 2012-11-24 23:09:36 UTC (rev 25120)
@@ -562,6 +562,9 @@
main_init (struct GNUNET_SERVER_Handle *server,
const struct GNUNET_CONFIGURATION_Handle *c)
{
+ static const struct GNUNET_CORE_MessageHandler no_p2p_handlers[] = {
+ {NULL, 0, 0}
+ };
static const struct GNUNET_CORE_MessageHandler p2p_handlers[] = {
{&handle_p2p_get,
GNUNET_MESSAGE_TYPE_FS_GET, 0},
@@ -584,11 +587,21 @@
0},
{NULL, NULL, 0, 0}
};
+ int anon_p2p_off;
+ /* this option is really only for testcases that need to disable
+ _anonymous_ file-sharing for some reason */
+ anon_p2p_off = (GNUNET_YES ==
+ GNUNET_CONFIGURATION_get_value_yesno (GSF_cfg,
+ "fs",
+
"DISABLE_ANON_TRANSFER"));
GSF_core =
GNUNET_CORE_connect (GSF_cfg, NULL, &peer_init_handler,
&peer_connect_handler,
&GSF_peer_disconnect_handler_,
- NULL, GNUNET_NO, NULL, GNUNET_NO, p2p_handlers);
+ NULL, GNUNET_NO, NULL, GNUNET_NO,
+ (GNUNET_YES == anon_p2p_off)
+ ? no_p2p_handlers
+ : p2p_handlers);
if (NULL == GSF_core)
{
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
Modified: gnunet/src/fs/perf_gnunet_service_fs_p2p.c
===================================================================
--- gnunet/src/fs/perf_gnunet_service_fs_p2p.c 2012-11-24 22:49:52 UTC (rev
25119)
+++ gnunet/src/fs/perf_gnunet_service_fs_p2p.c 2012-11-24 23:09:36 UTC (rev
25120)
@@ -294,21 +294,17 @@
static void
-do_publish (void *cls,
- struct GNUNET_TESTBED_Operation *op,
- const char *emsg)
+do_publish (void *cls,
+ unsigned int num_peers,
+ struct GNUNET_TESTBED_Peer **peers)
{
+ unsigned int i;
int do_index;
int anonymity;
-
- GNUNET_TESTBED_operation_done (op);
- if (NULL != emsg)
- {
- GNUNET_SCHEDULER_shutdown ();
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR, "Error trying to connect: %s\n",
emsg);
- ok = 1;
- return;
- }
+
+ GNUNET_assert (NUM_DAEMONS == num_peers);
+ for (i=0;i<num_peers;i++)
+ daemons[i] = peers[i];
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Publishing %llu bytes\n",
(unsigned long long) FILESIZE);
if (NULL != strstr (progname, "index"))
@@ -319,32 +315,12 @@
anonymity = 0;
else
anonymity = 1;
-
GNUNET_FS_TEST_publish (daemons[NUM_DAEMONS - 1], TIMEOUT, anonymity,
do_index, FILESIZE, SEED, VERBOSE, &do_download,
NULL);
}
-static void
-do_connect (void *cls,
- unsigned int num_peers,
- struct GNUNET_TESTBED_Peer **peers)
-{
- unsigned int i;
-
- GNUNET_assert (NUM_DAEMONS == num_peers);
- for (i=0;i<num_peers;i++)
- daemons[i] = peers[i];
- GNUNET_TESTBED_overlay_connect (NULL,
- &do_publish,
- NULL,
- peers[0],
- peers[1]);
- // FIXME: was supposed to connect in line...
-}
-
-
int
main (int argc, char *argv[])
{
@@ -353,7 +329,7 @@
"perf_gnunet_service_fs_p2p.conf",
NUM_DAEMONS,
0, NULL, NULL,
- &do_connect, NULL);
+ &do_publish, NULL);
GNUNET_DISK_directory_remove ("/tmp/gnunet-test-fs-lib/");
return ok;
}
Modified: gnunet/src/fs/test_gnunet_service_fs_migration.c
===================================================================
--- gnunet/src/fs/test_gnunet_service_fs_migration.c 2012-11-24 22:49:52 UTC
(rev 25119)
+++ gnunet/src/fs/test_gnunet_service_fs_migration.c 2012-11-24 23:09:36 UTC
(rev 25120)
@@ -142,30 +142,6 @@
static void
do_publish (void *cls,
- struct GNUNET_TESTBED_Operation *oparg,
- const char *emsg)
-{
- GNUNET_assert (op == oparg);
- GNUNET_TESTBED_operation_done (op);
- op = NULL;
- if (NULL != emsg)
- {
- GNUNET_SCHEDULER_shutdown ();
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Error connecting peers: %s\n",
- emsg);
- ok = 1;
- return;
- }
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Publishing %llu bytes\n",
- (unsigned long long) FILESIZE);
- GNUNET_FS_TEST_publish (daemons[1], TIMEOUT, 1, GNUNET_NO, FILESIZE, SEED,
- VERBOSE, &do_wait, NULL);
-}
-
-
-static void
-do_connect (void *cls,
unsigned int num_peers,
struct GNUNET_TESTBED_Peer **peers)
{
@@ -174,11 +150,10 @@
GNUNET_assert (2 == num_peers);
for (i=0;i<num_peers;i++)
daemons[i] = peers[i];
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Daemons started, will now try to connect them\n");
- op = GNUNET_TESTBED_overlay_connect (NULL,
- &do_publish, NULL,
- daemons[0], daemons[1]);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Publishing %llu bytes\n",
+ (unsigned long long) FILESIZE);
+ GNUNET_FS_TEST_publish (daemons[1], TIMEOUT, 1, GNUNET_NO, FILESIZE, SEED,
+ VERBOSE, &do_wait, NULL);
}
@@ -189,7 +164,7 @@
"fs_test_lib_data.conf",
2,
0, NULL, NULL,
- &do_connect,
+ &do_publish,
NULL);
GNUNET_DISK_directory_remove ("/tmp/test-gnunet-service-fs-migration/");
return ok;
Modified: gnunet/src/fs/test_gnunet_service_fs_p2p.c
===================================================================
--- gnunet/src/fs/test_gnunet_service_fs_p2p.c 2012-11-24 22:49:52 UTC (rev
25119)
+++ gnunet/src/fs/test_gnunet_service_fs_p2p.c 2012-11-24 23:09:36 UTC (rev
25120)
@@ -42,15 +42,17 @@
#define SEED 42
+static const char *progname;
+
+static unsigned int anonymity_level;
+
static struct GNUNET_TESTBED_Peer *daemons[NUM_DAEMONS];
static int ok;
static struct GNUNET_TIME_Absolute start_time;
-static struct GNUNET_TESTBED_Operation *op;
-
static void
do_stop (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
{
@@ -94,62 +96,51 @@
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Downloading %llu bytes\n",
(unsigned long long) FILESIZE);
start_time = GNUNET_TIME_absolute_get ();
- GNUNET_FS_TEST_download (daemons[0], TIMEOUT, 1, SEED, uri, VERBOSE,
&do_stop,
+ GNUNET_FS_TEST_download (daemons[0], TIMEOUT,
+ anonymity_level, SEED, uri,
+ VERBOSE, &do_stop,
NULL);
}
static void
do_publish (void *cls,
- struct GNUNET_TESTBED_Operation *opret,
- const char *emsg)
-{
- GNUNET_assert (op == opret);
- GNUNET_TESTBED_operation_done (op);
- op = NULL;
-
- if (NULL != emsg)
- {
- GNUNET_SCHEDULER_shutdown ();
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Timeout during connect attempt, shutting down with error:
%s\n",
- emsg);
- ok = 1;
- return;
- }
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Publishing %llu bytes\n",
- (unsigned long long) FILESIZE);
- GNUNET_FS_TEST_publish (daemons[1], TIMEOUT, 1, GNUNET_NO, FILESIZE, SEED,
- VERBOSE, &do_download, NULL);
-}
-
-
-static void
-do_connect (void *cls,
unsigned int num_peers,
struct GNUNET_TESTBED_Peer **peers)
{
unsigned int i;
+ if (NULL != strstr (progname, "stream"))
+ anonymity_level = 0;
+ else
+ anonymity_level = 1;
GNUNET_assert (NUM_DAEMONS == num_peers);
for (i=0;i<num_peers;i++)
daemons[i] = peers[i];
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Daemons started, will now try to connect them\n");
- op = GNUNET_TESTBED_overlay_connect (NULL,
- &do_publish, NULL,
- daemons[0], daemons[1]);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Publishing %llu bytes\n",
+ (unsigned long long) FILESIZE);
+ GNUNET_FS_TEST_publish (daemons[1], TIMEOUT,
+ anonymity_level, GNUNET_NO,
+ FILESIZE, SEED,
+ VERBOSE, &do_download, NULL);
}
int
main (int argc, char *argv[])
{
+ const char *config;
+
+ progname = argv[0];
+ if (NULL != strstr (progname, "stream"))
+ config = "test_gnunet_service_fs_p2p_stream.conf";
+ else
+ config = "fs_test_lib_data.conf";
GNUNET_TESTBED_test_run ("test-gnunet-service-fs-p2p",
- "fs_test_lib_data.conf",
+ config,
NUM_DAEMONS,
0, NULL, NULL,
- &do_connect, NULL);
+ &do_publish, NULL);
GNUNET_DISK_directory_remove ("/tmp/gnunet-test-fs-lib/");
return ok;
}
Added: gnunet/src/fs/test_gnunet_service_fs_p2p_stream.conf
===================================================================
--- gnunet/src/fs/test_gnunet_service_fs_p2p_stream.conf
(rev 0)
+++ gnunet/src/fs/test_gnunet_service_fs_p2p_stream.conf 2012-11-24
23:09:36 UTC (rev 25120)
@@ -0,0 +1,15 @@
address@hidden@ test_fs_defaults.conf
+[PATHS]
+SERVICEHOME = /tmp/test-gnunet-test-fs-lib/
+
+
+[ats]
+WAN_QUOTA_IN = 3932160
+WAN_QUOTA_OUT = 3932160
+
+[fs]
+# FIXME: this option needs to be set for the
+# testcase to truly work; however, as the code
+# is not finished, not setting the option should
+# allow the test to at least pass for now...
+# DISABLE_ANON_TRANSFER = YES
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r25120 - gnunet/src/fs,
gnunet <=