doxygen
[oweals/gnunet.git] / src / transport / Makefile.am
index 3d637759a1c9bb23616336f595d94330e365bfcf..21a76e2a70385e738e51a3d1a22957a81edf2fe6 100644 (file)
@@ -4,6 +4,12 @@ plugindir = $(libdir)/gnunet
 
 if MINGW
   WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
+  NATBIN = gnunet-nat-server gnunet-nat-client
+  NATSERVER = gnunet-nat-server-windows.c
+  NATCLIENT = gnunet-nat-client-windows.c
+else
+  NATSERVER = gnunet-nat-server.c
+  NATCLIENT = gnunet-nat-client.c
 endif
 
 if HAVE_MHD
@@ -12,27 +18,39 @@ if HAVE_MHD
  HTTP_PLUGIN_TEST = test_plugin_transport_http
  HTTP_API_TEST = test_transport_api_http
  HTTP_REL_TEST = test_transport_api_reliability_http
-                     
+ HTTP_QUOTA_TEST = test_quota_compliance_http \
+                  test_quota_compliance_http_asymmetric_recv_constant
  HTTPS_PLUGIN_LA = libgnunet_plugin_transport_https.la
  HTTPS_PLUGIN_TEST = test_plugin_transport_https
  HTTPS_API_TEST = test_transport_api_https
- HTTPS_REL_TEST = test_transport_api_reliability_https                     
+ HTTPS_REL_TEST = test_transport_api_reliability_https
+ HTTPS_QUOTA_TEST = test_quota_compliance_https \
+               test_quota_compliance_https_asymmetric_recv_constant
 endif
 
 if USE_COVERAGE
   AM_CFLAGS = --coverage -O0
 endif
 
+if HAVE_PCAP
+if LINUX
+ WANBIN = gnunet-transport-wlan-helper
+ WLAN_PLUGIN_LA = libgnunet_plugin_transport_wlan.la
+ WLAN_API_TEST =
+# WLAN_API_TEST = test_transport_api_wlan
+endif
+endif
+
 if LINUX
 NATBIN = gnunet-nat-server gnunet-nat-client
 install-exec-hook:
-       chown root $(bindir)/gnunet-nat-server $(bindir)/gnunet-nat-client || true
-       chmod u+s $(bindir)/gnunet-nat-server $(bindir)/gnunet-nat-client || true
+       chown root $(bindir)/gnunet-nat-server $(bindir)/gnunet-nat-client $(bindir)/gnunet-wlan || true
+       chmod u+s $(bindir)/gnunet-nat-server $(bindir)/gnunet-nat-client $(bindir)/gnunet-wlan || true
 else
 install-exec-hook:
-       gnunet-transport-certificate-creation
 endif
 
+#noinst_PROGRAMS = ${check_PROGRAMS}
 
 lib_LTLIBRARIES = \
   libgnunettransport.la
@@ -52,16 +70,24 @@ libgnunettransport_la_LDFLAGS = \
 
 bin_PROGRAMS = \
  gnunet-transport \
+ $(WANBIN) \
  gnunet-service-transport $(NATBIN)
+
 bin_SCRIPTS = \
  gnunet-transport-certificate-creation
 
 gnunet_nat_server_SOURCES = \
- gnunet-nat-server.c         
+ $(NATSERVER)
+
+    
+gnunet_transport_wlan_helper_SOURCES = \
+ gnunet-transport-wlan-helper.c
+gnunet_transport_wlan_helper_LDADD = \
+  $(top_builddir)/src/util/libgnunetutil.la \
+ -lpcap
 
 gnunet_nat_client_SOURCES = \
- gnunet-nat-client.c         
+ $(NATCLIENT)         
 
 gnunet_transport_SOURCES = \
  gnunet-transport.c         
@@ -69,6 +95,8 @@ gnunet_transport_LDADD = \
   $(top_builddir)/src/transport/libgnunettransport.la \
   $(top_builddir)/src/util/libgnunetutil.la \
   $(GN_LIBINTL)
+gnunet_transport_DEPENDENCIES = \
+  libgnunettransport.la                                
 
 gnunet_service_transport_SOURCES = \
  gnunet-service-transport.c plugin_transport.h 
@@ -78,6 +106,8 @@ gnunet_service_transport_LDADD = \
   $(top_builddir)/src/statistics/libgnunetstatistics.la \
   $(top_builddir)/src/util/libgnunetutil.la \
   $(GN_LIBINTL)
+gnunet_service_transport_DEPENDENCIES = \
+  libgnunettransport.la                                
 
 
 plugin_LTLIBRARIES = \
@@ -85,6 +115,7 @@ plugin_LTLIBRARIES = \
   libgnunet_plugin_transport_udp.la \
   $(HTTP_PLUGIN_LA) \
   $(HTTPS_PLUGIN_LA) \
+  $(WLAN_PLUGIN_LA) \
   libgnunet_plugin_transport_template.la
 # TODO: add nat, etc.
 
@@ -94,6 +125,7 @@ libgnunet_plugin_transport_tcp_la_LIBADD = \
   $(top_builddir)/src/hello/libgnunethello.la \
   $(top_builddir)/src/statistics/libgnunetstatistics.la \
   $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
+  $(top_builddir)/src/nat/libgnunetnat.la \
   $(top_builddir)/src/util/libgnunetutil.la 
 libgnunet_plugin_transport_tcp_la_LDFLAGS = \
  $(GN_PLUGIN_LDFLAGS)
@@ -105,6 +137,20 @@ libgnunet_plugin_transport_template_la_LIBADD = \
 libgnunet_plugin_transport_template_la_LDFLAGS = \
  $(GN_PLUGIN_LDFLAGS)
 
+if HAVE_PCAP
+if LINUX
+libgnunet_plugin_transport_wlan_la_SOURCES = \
+       plugin_transport_wlan.c
+libgnunet_plugin_transport_wlan_la_LIBADD = \
+       $(top_builddir)/src/hello/libgnunethello.la \
+       $(top_builddir)/src/statistics/libgnunetstatistics.la \
+       $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
+       $(top_builddir)/src/util/libgnunetutil.la 
+libgnunet_plugin_transport_wlan_la_LDFLAGS = \
+       $(GN_PLUGIN_LDFLAGS)
+endif
+endif
+
 libgnunet_plugin_transport_udp_la_SOURCES = \
   plugin_transport_udp.c
 libgnunet_plugin_transport_udp_la_LIBADD = \
@@ -137,9 +183,9 @@ libgnunet_plugin_transport_http_la_LIBADD = \
 libgnunet_plugin_transport_http_la_LDFLAGS = \
  $(GN_LIBMHD) \
  $(GN_PLUGIN_LDFLAGS)
+
 libgnunet_plugin_transport_https_la_SOURCES = \
-  plugin_transport_https.c
+  plugin_transport_http.c
 libgnunet_plugin_transport_https_la_LIBADD = \
   $(top_builddir)/src/hello/libgnunethello.la \
   $(top_builddir)/src/statistics/libgnunetstatistics.la \
@@ -148,9 +194,12 @@ libgnunet_plugin_transport_https_la_LIBADD = \
   $(top_builddir)/src/util/libgnunetutil.la 
 libgnunet_plugin_transport_https_la_LDFLAGS = \
  $(GN_LIBMHD) \
- $(GN_PLUGIN_LDFLAGS) 
+ $(GN_PLUGIN_LDFLAGS)
+libgnunet_plugin_transport_https_la_CFLAGS = \
+ $(CFLAGS) -DBUILD_HTTPS  
 endif
 
+
 check_PROGRAMS = \
  test_transport_api_tcp \
  test_transport_api_tcp_nat \
@@ -160,13 +209,22 @@ check_PROGRAMS = \
  $(HTTP_API_TEST) \
  $(HTTPS_PLUGIN_TEST) \
  $(HTTPS_API_TEST) \
+ $(WLAN_API_TEST) \
+ test_transport_api_multi \
  test_transport_api_reliability_tcp \
  test_transport_api_reliability_tcp_nat \
  test_transport_api_reliability_udp \
  $(HTTP_REL_TEST) \
- $(HTTPS_REL_TEST)
+ $(HTTPS_REL_TEST) \
+ test_quota_compliance_tcp \
+ test_quota_compliance_tcp_asymmetric_recv_constant \
+ test_quota_compliance_udp \
+ test_quota_compliance_udp_asymmetric_recv_constant \
+ $(HTTP_QUOTA_TEST) \
+ $(HTTPS_QUOTA_TEST)
 # TODO: add tests for nat, etc.
 
+if !DISABLE_TEST_RUN
 TESTS = \
  test_transport_api_tcp \
  test_transport_api_tcp_nat \
@@ -176,10 +234,19 @@ TESTS = \
  $(HTTP_API_TEST) \
  $(HTTPS_PLUGIN_TEST) \
  $(HTTPS_API_TEST) \
+ $(WLAN_API_TEST) \
+ test_transport_api_multi \
  test_transport_api_reliability_tcp \
  test_transport_api_reliability_tcp_nat \
  $(HTTP_REL_TEST) \
- $(HTTPS_REL_TEST)
+ $(HTTPS_REL_TEST) \
+ test_quota_compliance_tcp \
+ test_quota_compliance_tcp_asymmetric_recv_constant \
+ test_quota_compliance_udp \
+ test_quota_compliance_udp_asymmetric_recv_constant \
+ $(HTTP_QUOTA_TEST) \
+ $(HTTPS_QUOTA_TEST)
+endif
 
 test_transport_api_tcp_SOURCES = \
  test_transport_api.c
@@ -223,8 +290,6 @@ test_transport_api_udp_nat_LDADD = \
  $(top_builddir)/src/transport/libgnunettransport.la \
  $(top_builddir)/src/util/libgnunetutil.la  
 
-if HAVE_MHD
-
 test_plugin_transport_http_SOURCES = \
  test_plugin_transport_http.c
 test_plugin_transport_http_LDADD = \
@@ -244,7 +309,7 @@ test_transport_api_reliability_http_SOURCES = \
 test_transport_api_reliability_http_LDADD = \
  $(top_builddir)/src/transport/libgnunettransport.la \
  $(top_builddir)/src/util/libgnunetutil.la
+
 test_plugin_transport_https_SOURCES = \
  test_plugin_transport_https.c
 test_plugin_transport_https_LDADD = \
@@ -258,14 +323,100 @@ test_transport_api_https_SOURCES = \
 test_transport_api_https_LDADD = \
  $(top_builddir)/src/transport/libgnunettransport.la \
  $(top_builddir)/src/util/libgnunetutil.la  
+
 test_transport_api_reliability_https_SOURCES = \
  test_transport_api_reliability.c
 test_transport_api_reliability_https_LDADD = \
  $(top_builddir)/src/transport/libgnunettransport.la \
- $(top_builddir)/src/util/libgnunetutil.la    
+ $(top_builddir)/src/util/libgnunetutil.la
+
+if HAVE_PCAP
+if LINUX
+test_transport_api_wlan_SOURCES = \
+ test_transport_api.c
+test_transport_api_wlan_LDADD = \
+ $(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/util/libgnunetutil.la  
 endif
+endif
+
+test_quota_compliance_tcp_SOURCES = \
+ test_quota_compliance.c
+test_quota_compliance_tcp_LDADD = \
+ $(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+
+test_quota_compliance_tcp_asymmetric_recv_constant_SOURCES = \
+ test_quota_compliance.c
+test_quota_compliance_tcp_asymmetric_recv_constant_LDADD = \
+ $(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+
+#test_quota_compliance_tcp_asymmetric_send_constant_SOURCES = \
+# test_quota_compliance.c
+#test_quota_compliance_tcp_asymmetric_send_constant_LDADD = \
+# $(top_builddir)/src/transport/libgnunettransport.la \
+# $(top_builddir)/src/util/libgnunetutil.la
+
+test_quota_compliance_http_SOURCES = \
+ test_quota_compliance.c
+test_quota_compliance_http_LDADD = \
+ $(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+
+ test_quota_compliance_http_asymmetric_recv_constant_SOURCES = \
+ test_quota_compliance.c
+test_quota_compliance_http_asymmetric_recv_constant_LDADD = \
+ $(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+
+#test_quota_compliance_http_asymmetric_send_constant_SOURCES = \
+# test_quota_compliance.c
+#test_quota_compliance_http_asymmetric_send_constant_LDADD = \
+# $(top_builddir)/src/transport/libgnunettransport.la \
+# $(top_builddir)/src/util/libgnunetutil.la
+
+test_quota_compliance_https_SOURCES = \
+ test_quota_compliance.c
+test_quota_compliance_https_LDADD = \
+ $(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/util/libgnunetutil.la
 
+ test_quota_compliance_https_asymmetric_recv_constant_SOURCES = \
+ test_quota_compliance.c
+test_quota_compliance_https_asymmetric_recv_constant_LDADD = \
+ $(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+
+#test_quota_compliance_https_asymmetric_send_constant_SOURCES = \
+# test_quota_compliance.c
+#test_quota_compliance_https_asymmetric_send_constant_LDADD = \
+# $(top_builddir)/src/transport/libgnunettransport.la \
+# $(top_builddir)/src/util/libgnunetutil.la
+
+test_quota_compliance_udp_SOURCES = \
+ test_quota_compliance.c
+test_quota_compliance_udp_LDADD = \
+ $(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+
+test_quota_compliance_udp_asymmetric_recv_constant_SOURCES = \
+ test_quota_compliance.c
+test_quota_compliance_udp_asymmetric_recv_constant_LDADD = \
+ $(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/util/libgnunetutil.la
+
+#test_quota_compliance_udp_asymmetric_send_constant_SOURCES = \
+# test_quota_compliance.c
+#test_quota_compliance_udp_asymmetric_send_constant_LDADD = \
+# $(top_builddir)/src/transport/libgnunettransport.la \
+# $(top_builddir)/src/util/libgnunetutil.la 
+
+test_transport_api_multi_SOURCES = \
+ test_transport_api.c
+test_transport_api_multi_LDADD = \
+ $(top_builddir)/src/transport/libgnunettransport.la \
+ $(top_builddir)/src/util/libgnunetutil.la  
 EXTRA_DIST = \
   test_transport_api_data.conf \
   test_transport_api_tcp_peer1.conf \
@@ -281,8 +432,22 @@ EXTRA_DIST = \
   test_transport_api_http_peer2.conf \
   test_transport_api_https_peer1.conf \
   test_transport_api_https_peer2.conf \
+  test_transport_api_wlan_peer1.conf \
+  test_transport_api_wlan_peer2.conf \
+  test_transport_api_multi_peer1.conf \
+  test_transport_api_multi_peer2.conf \
   test_transport_api_rel_http_peer1.conf \
   test_transport_api_rel_http_peer2.conf \
   test_transport_api_rel_https_peer1.conf \
   test_transport_api_rel_https_peer2.conf \
-  test_plugin_transport_data_http.conf
\ No newline at end of file
+  test_plugin_transport_data_http.conf \
+  test_plugin_transport_data.conf \
+  test_quota_compliance_data.conf \
+  test_quota_compliance_tcp_peer1.conf \
+  test_quota_compliance_tcp_peer2.conf \
+  test_quota_compliance_http_peer1.conf \
+  test_quota_compliance_http_peer2.conf \
+  test_quota_compliance_https_peer1.conf \
+  test_quota_compliance_https_peer2.conf \
+  test_quota_compliance_udp_peer1.conf \
+  test_quota_compliance_udp_peer2.conf