-fix linkage issue that could cause a transport service crash on exit for certain...
authorChristian Grothoff <christian@grothoff.org>
Fri, 7 Mar 2014 10:54:40 +0000 (10:54 +0000)
committerChristian Grothoff <christian@grothoff.org>
Fri, 7 Mar 2014 10:54:40 +0000 (10:54 +0000)
src/nat/nat_mini.c
src/peerinfo-tool/Makefile.am
src/transport/Makefile.am

index 7a2b08f46ea66f7711d88a6fd6acc612275007c9..877c385d5bd450c3c2e6b1a0867c7581c7c8c006 100644 (file)
@@ -625,7 +625,7 @@ GNUNET_NAT_mini_map_start (uint16_t port,
 /**
  * Process output from our 'unmap' command.
  *
- * @param cls the 'struct GNUNET_NAT_MiniHandle'
+ * @param cls the `struct GNUNET_NAT_MiniHandle`
  * @param line line of output, NULL at the end
  */
 static void
index 01c1f3473c1d2856703144d832a553531c190a50..74f1edbadbf0df56ca643c2f4a8b196e3c4f915a 100644 (file)
@@ -10,7 +10,7 @@ if USE_COVERAGE
 endif
 
 bin_PROGRAMS = \
- gnunet-peerinfo 
+ gnunet-peerinfo
 
 gnunet_peerinfo_SOURCES = \
  gnunet-peerinfo.c \
@@ -18,14 +18,15 @@ gnunet_peerinfo_SOURCES = \
 
 gnunet_peerinfo_LDADD = \
   $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
+  $(top_builddir)/src/nat/libgnunetnat.la \
   $(top_builddir)/src/transport/libgnunettransport.la \
   $(top_builddir)/src/hello/libgnunethello.la \
   $(top_builddir)/src/statistics/libgnunetstatistics.la \
-  $(top_builddir)/src/util/libgnunetutil.la 
+  $(top_builddir)/src/util/libgnunetutil.la
 
 if HAVE_PYTHON
 check_SCRIPTS = \
- test_gnunet_peerinfo.py 
+ test_gnunet_peerinfo.py
 endif
 
 if ENABLE_TEST_RUN
index 3112f0f304b0cb76237f49af153b585bef55f343..d95e7e31d245c4e65dfb7f778a0e35c568339baa 100644 (file)
@@ -105,7 +105,7 @@ UNIX_QUOTA_TEST = test_quota_compliance_unix \
      test_quota_compliance_unix_asymmetric
 if LINUX
  UNIX_API_ABSTRACT_TEST = test_transport_api_unix_abstract
-endif     
+endif
 endif
 
 noinst_PROGRAMS = \
@@ -212,11 +212,17 @@ gnunet_service_transport_SOURCES = \
  gnunet-service-transport_plugins.h gnunet-service-transport_plugins.c \
  gnunet-service-transport_validation.h gnunet-service-transport_validation.c \
  gnunet-service-transport_manipulation.h gnunet-service-transport_manipulation.c
+# Note that while gnunet-service-transport does not use libgnunetnat
+# directly, we must link against it as GNUNET_NAT_mini_map_stop will
+# leave a 'dangling' task to process_unmap_output which will cause
+# a crash on unloading of a plugin unless the service links against
+# that library as well.
 gnunet_service_transport_LDADD = \
   $(top_builddir)/src/transport/libgnunettransport.la \
   $(top_builddir)/src/ats/libgnunetats.la \
   $(top_builddir)/src/hello/libgnunethello.la \
   $(top_builddir)/src/peerinfo/libgnunetpeerinfo.la \
+  $(top_builddir)/src/nat/libgnunetnat.la \
   $(top_builddir)/src/statistics/libgnunetstatistics.la \
   $(top_builddir)/src/util/libgnunetutil.la \
   $(GN_GLPK) \
@@ -1095,6 +1101,7 @@ test_quota_compliance_wlan_asymmetric_LDADD = \
 test_quota_compliance_bluetooth_SOURCES = \
  test_quota_compliance.c
 test_quota_compliance_bluetooth_LDADD = \
+ $(top_builddir)/src/nat/libgnunetnat.la \
  $(top_builddir)/src/transport/libgnunettransport.la \
  $(top_builddir)/src/hello/libgnunethello.la \
  $(top_builddir)/src/util/libgnunetutil.la \