diff options
Diffstat (limited to 'src/transport')
-rwxr-xr-x | src/transport/gnunet-service-transport-new | 148 | ||||
-rw-r--r-- | src/transport/plugin_transport_wlan.c | 46 | ||||
-rw-r--r-- | src/transport/test_transport_api_wlan_peer1.conf | 3 | ||||
-rw-r--r-- | src/transport/test_transport_api_wlan_peer2.conf | 2 |
4 files changed, 193 insertions, 6 deletions
diff --git a/src/transport/gnunet-service-transport-new b/src/transport/gnunet-service-transport-new new file mode 100755 index 000000000..b6a531f8f --- /dev/null +++ b/src/transport/gnunet-service-transport-new | |||
@@ -0,0 +1,148 @@ | |||
1 | #! /bin/bash | ||
2 | |||
3 | # gnunet-service-transport-new - temporary wrapper script for .libs/gnunet-service-transport-new | ||
4 | # Generated by ltmain.sh (GNU libtool) 2.2.6b Debian-2.2.6b-2ubuntu1 | ||
5 | # | ||
6 | # The gnunet-service-transport-new program cannot be directly executed until all the libtool | ||
7 | # libraries that it depends on are installed. | ||
8 | # | ||
9 | # This wrapper script should never be moved out of the build directory. | ||
10 | # If it is, it will not operate correctly. | ||
11 | |||
12 | # Sed substitution that helps us do robust quoting. It backslashifies | ||
13 | # metacharacters that are still active within double-quoted strings. | ||
14 | Xsed='/bin/sed -e 1s/^X//' | ||
15 | sed_quote_subst='s/\([`"$\\]\)/\\\1/g' | ||
16 | |||
17 | # Be Bourne compatible | ||
18 | if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then | ||
19 | emulate sh | ||
20 | NULLCMD=: | ||
21 | # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which | ||
22 | # is contrary to our usage. Disable this feature. | ||
23 | alias -g '${1+"$@"}'='"$@"' | ||
24 | setopt NO_GLOB_SUBST | ||
25 | else | ||
26 | case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac | ||
27 | fi | ||
28 | BIN_SH=xpg4; export BIN_SH # for Tru64 | ||
29 | DUALCASE=1; export DUALCASE # for MKS sh | ||
30 | |||
31 | # The HP-UX ksh and POSIX shell print the target directory to stdout | ||
32 | # if CDPATH is set. | ||
33 | (unset CDPATH) >/dev/null 2>&1 && unset CDPATH | ||
34 | |||
35 | relink_command="(cd /home/david/Dokumente/gnunet/src/transport; { test -z \"\${LIBRARY_PATH+set}\" || unset LIBRARY_PATH || { LIBRARY_PATH=; export LIBRARY_PATH; }; }; { test -z \"\${COMPILER_PATH+set}\" || unset COMPILER_PATH || { COMPILER_PATH=; export COMPILER_PATH; }; }; { test -z \"\${GCC_EXEC_PREFIX+set}\" || unset GCC_EXEC_PREFIX || { GCC_EXEC_PREFIX=; export GCC_EXEC_PREFIX; }; }; { test -z \"\${LD_RUN_PATH+set}\" || unset LD_RUN_PATH || { LD_RUN_PATH=; export LD_RUN_PATH; }; }; { test -z \"\${LD_LIBRARY_PATH+set}\" || unset LD_LIBRARY_PATH || { LD_LIBRARY_PATH=; export LD_LIBRARY_PATH; }; }; PATH=/home/david/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games; export PATH; gcc -fno-strict-aliasing -Wall -Wall -Werror -o \$progdir/\$file gnunet-service-transport-new.o gnunet-service-transport_blacklist.o gnunet-service-transport_clients.o gnunet-service-transport_hello.o gnunet-service-transport_neighbours.o gnunet-service-transport_plugins.o gnunet-service-transport_validation.o -L/home/david/lib ../../src/ats/.libs/libgnunetats.so ../../src/hello/.libs/libgnunethello.so ../../src/peerinfo/.libs/libgnunetpeerinfo.so ../../src/statistics/.libs/libgnunetstatistics.so ../../src/util/.libs/libgnunetutil.so -ldl -Wl,-rpath -Wl,/home/david/Dokumente/gnunet/src/ats/.libs -Wl,-rpath -Wl,/home/david/Dokumente/gnunet/src/hello/.libs -Wl,-rpath -Wl,/home/david/Dokumente/gnunet/src/peerinfo/.libs -Wl,-rpath -Wl,/home/david/Dokumente/gnunet/src/statistics/.libs -Wl,-rpath -Wl,/home/david/Dokumente/gnunet/src/util/.libs -Wl,-rpath -Wl,/home/david/lib)" | ||
36 | |||
37 | # This environment variable determines our operation mode. | ||
38 | if test "$libtool_install_magic" = "%%%MAGIC variable%%%"; then | ||
39 | # install mode needs the following variables: | ||
40 | generated_by_libtool_version='2.2.6b' | ||
41 | notinst_deplibs=' ../../src/ats/libgnunetats.la ../../src/hello/libgnunethello.la ../../src/peerinfo/libgnunetpeerinfo.la ../../src/statistics/libgnunetstatistics.la ../../src/util/libgnunetutil.la' | ||
42 | else | ||
43 | # When we are sourced in execute mode, $file and $ECHO are already set. | ||
44 | if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then | ||
45 | ECHO="echo" | ||
46 | file="$0" | ||
47 | # Make sure echo works. | ||
48 | if test "X$1" = X--no-reexec; then | ||
49 | # Discard the --no-reexec flag, and continue. | ||
50 | shift | ||
51 | elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t'; then | ||
52 | # Yippee, $ECHO works! | ||
53 | : | ||
54 | else | ||
55 | # Restart under the correct shell, and then maybe $ECHO will work. | ||
56 | exec /bin/bash "$0" --no-reexec ${1+"$@"} | ||
57 | fi | ||
58 | fi | ||
59 | |||
60 | # Find the directory that this script lives in. | ||
61 | thisdir=`$ECHO "X$file" | $Xsed -e 's%/[^/]*$%%'` | ||
62 | test "x$thisdir" = "x$file" && thisdir=. | ||
63 | |||
64 | # Follow symbolic links until we get to the real thisdir. | ||
65 | file=`ls -ld "$file" | /bin/sed -n 's/.*-> //p'` | ||
66 | while test -n "$file"; do | ||
67 | destdir=`$ECHO "X$file" | $Xsed -e 's%/[^/]*$%%'` | ||
68 | |||
69 | # If there was a directory component, then change thisdir. | ||
70 | if test "x$destdir" != "x$file"; then | ||
71 | case "$destdir" in | ||
72 | [\\/]* | [A-Za-z]:[\\/]*) thisdir="$destdir" ;; | ||
73 | *) thisdir="$thisdir/$destdir" ;; | ||
74 | esac | ||
75 | fi | ||
76 | |||
77 | file=`$ECHO "X$file" | $Xsed -e 's%^.*/%%'` | ||
78 | file=`ls -ld "$thisdir/$file" | /bin/sed -n 's/.*-> //p'` | ||
79 | done | ||
80 | |||
81 | |||
82 | # Usually 'no', except on cygwin/mingw when embedded into | ||
83 | # the cwrapper. | ||
84 | WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=no | ||
85 | if test "$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR" = "yes"; then | ||
86 | # special case for '.' | ||
87 | if test "$thisdir" = "."; then | ||
88 | thisdir=`pwd` | ||
89 | fi | ||
90 | # remove .libs from thisdir | ||
91 | case "$thisdir" in | ||
92 | *[\\/].libs ) thisdir=`$ECHO "X$thisdir" | $Xsed -e 's%[\\/][^\\/]*$%%'` ;; | ||
93 | .libs ) thisdir=. ;; | ||
94 | esac | ||
95 | fi | ||
96 | |||
97 | # Try to get the absolute directory name. | ||
98 | absdir=`cd "$thisdir" && pwd` | ||
99 | test -n "$absdir" && thisdir="$absdir" | ||
100 | |||
101 | program=lt-'gnunet-service-transport-new' | ||
102 | progdir="$thisdir/.libs" | ||
103 | |||
104 | if test ! -f "$progdir/$program" || | ||
105 | { file=`ls -1dt "$progdir/$program" "$progdir/../$program" 2>/dev/null | /bin/sed 1q`; \ | ||
106 | test "X$file" != "X$progdir/$program"; }; then | ||
107 | |||
108 | file="$$-$program" | ||
109 | |||
110 | if test ! -d "$progdir"; then | ||
111 | mkdir "$progdir" | ||
112 | else | ||
113 | rm -f "$progdir/$file" | ||
114 | fi | ||
115 | |||
116 | # relink executable if necessary | ||
117 | if test -n "$relink_command"; then | ||
118 | if relink_command_output=`eval $relink_command 2>&1`; then : | ||
119 | else | ||
120 | echo "$relink_command_output" >&2 | ||
121 | rm -f "$progdir/$file" | ||
122 | exit 1 | ||
123 | fi | ||
124 | fi | ||
125 | |||
126 | mv -f "$progdir/$file" "$progdir/$program" 2>/dev/null || | ||
127 | { rm -f "$progdir/$program"; | ||
128 | mv -f "$progdir/$file" "$progdir/$program"; } | ||
129 | rm -f "$progdir/$file" | ||
130 | fi | ||
131 | |||
132 | if test -f "$progdir/$program"; then | ||
133 | if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then | ||
134 | # Run the actual program with our arguments. | ||
135 | |||
136 | exec "$progdir/$program" ${1+"$@"} | ||
137 | |||
138 | $ECHO "$0: cannot exec $program $*" 1>&2 | ||
139 | exit 1 | ||
140 | fi | ||
141 | else | ||
142 | # The program doesn't exist. | ||
143 | $ECHO "$0: error: \`$progdir/$program' does not exist" 1>&2 | ||
144 | $ECHO "This script is just a wrapper for $program." 1>&2 | ||
145 | echo "See the libtool documentation for more information." 1>&2 | ||
146 | exit 1 | ||
147 | fi | ||
148 | fi | ||
diff --git a/src/transport/plugin_transport_wlan.c b/src/transport/plugin_transport_wlan.c index fa638ac0f..dd21d5eff 100644 --- a/src/transport/plugin_transport_wlan.c +++ b/src/transport/plugin_transport_wlan.c | |||
@@ -2754,10 +2754,26 @@ wlan_transport_start_wlan_helper (struct Plugin *plugin, int testmode) | |||
2754 | filenamehw, plugin->interface, testmode); | 2754 | filenamehw, plugin->interface, testmode); |
2755 | #endif | 2755 | #endif |
2756 | 2756 | ||
2757 | plugin->server_proc = | 2757 | if (GNUNET_OS_check_helper_binary(filenameloopback) == GNUNET_YES) |
2758 | GNUNET_OS_start_process (plugin->server_stdin, plugin->server_stdout, | 2758 | { |
2759 | filenamehw, filenamehw, plugin->interface, | 2759 | plugin->server_proc = |
2760 | NULL); | 2760 | GNUNET_OS_start_process (plugin->server_stdin, plugin->server_stdout, |
2761 | filenamehw, filenamehw, plugin->interface, | ||
2762 | NULL); | ||
2763 | } | ||
2764 | else if (GNUNET_OS_check_helper_binary(filenameloopback) == GNUNET_NO) | ||
2765 | { | ||
2766 | GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, PLUGIN_LOG_NAME, | ||
2767 | "gnunet-transport-wlan-helper is not suid, please change it or look at the doku\n"); | ||
2768 | GNUNET_break(0); | ||
2769 | } | ||
2770 | else | ||
2771 | { | ||
2772 | GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, PLUGIN_LOG_NAME, | ||
2773 | "gnunet-transport-wlan-helper not found, please look if it exists and is the $PATH variable!\n"); | ||
2774 | GNUNET_break(0); | ||
2775 | } | ||
2776 | |||
2761 | } | 2777 | } |
2762 | else if (testmode == 1) | 2778 | else if (testmode == 1) |
2763 | { | 2779 | { |
@@ -2768,9 +2784,18 @@ wlan_transport_start_wlan_helper (struct Plugin *plugin, int testmode) | |||
2768 | filenameloopback, plugin->interface, testmode); | 2784 | filenameloopback, plugin->interface, testmode); |
2769 | #endif | 2785 | #endif |
2770 | 2786 | ||
2771 | plugin->server_proc = | 2787 | if (GNUNET_OS_check_helper_binary(filenameloopback) != GNUNET_SYSERR) |
2788 | { | ||
2789 | plugin->server_proc = | ||
2772 | GNUNET_OS_start_process (plugin->server_stdin, plugin->server_stdout, | 2790 | GNUNET_OS_start_process (plugin->server_stdin, plugin->server_stdout, |
2773 | filenameloopback, filenameloopback, "1", NULL); | 2791 | filenameloopback, filenameloopback, "1", NULL); |
2792 | } | ||
2793 | else | ||
2794 | { | ||
2795 | GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, PLUGIN_LOG_NAME, | ||
2796 | "gnunet-transport-wlan-helper-dummy not found, please look if it exists and is the $PATH variable!\n"); | ||
2797 | GNUNET_break(0); | ||
2798 | } | ||
2774 | } | 2799 | } |
2775 | else if (testmode == 2) | 2800 | else if (testmode == 2) |
2776 | { | 2801 | { |
@@ -2779,9 +2804,18 @@ wlan_transport_start_wlan_helper (struct Plugin *plugin, int testmode) | |||
2779 | "Starting gnunet-wlan-helper loopback 2 process cmd: %s %s %i\n", | 2804 | "Starting gnunet-wlan-helper loopback 2 process cmd: %s %s %i\n", |
2780 | filenameloopback, plugin->interface, testmode); | 2805 | filenameloopback, plugin->interface, testmode); |
2781 | #endif | 2806 | #endif |
2782 | plugin->server_proc = | 2807 | if (GNUNET_OS_check_helper_binary(filenameloopback) != GNUNET_SYSERR) |
2808 | { | ||
2809 | plugin->server_proc = | ||
2783 | GNUNET_OS_start_process (plugin->server_stdin, plugin->server_stdout, | 2810 | GNUNET_OS_start_process (plugin->server_stdin, plugin->server_stdout, |
2784 | filenameloopback, filenameloopback, "2", NULL); | 2811 | filenameloopback, filenameloopback, "2", NULL); |
2812 | } | ||
2813 | else | ||
2814 | { | ||
2815 | GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, PLUGIN_LOG_NAME, | ||
2816 | "gnunet-transport-wlan-helper-dummy not found, please look if it exists and is in the $PATH variable!\n"); | ||
2817 | GNUNET_break(0); | ||
2818 | } | ||
2785 | } | 2819 | } |
2786 | if (plugin->server_proc == NULL) | 2820 | if (plugin->server_proc == NULL) |
2787 | { | 2821 | { |
diff --git a/src/transport/test_transport_api_wlan_peer1.conf b/src/transport/test_transport_api_wlan_peer1.conf index 704fd55b1..50351a63a 100644 --- a/src/transport/test_transport_api_wlan_peer1.conf +++ b/src/transport/test_transport_api_wlan_peer1.conf | |||
@@ -4,9 +4,11 @@ SERVICEHOME = /tmp/test-transport/api-wlan-p1/ | |||
4 | DEFAULTCONFIG = test_transport_api_wlan_peer1.conf | 4 | DEFAULTCONFIG = test_transport_api_wlan_peer1.conf |
5 | 5 | ||
6 | [transport-wlan] | 6 | [transport-wlan] |
7 | INTERFACE = mon0 | ||
7 | TESTMODE = 1 | 8 | TESTMODE = 1 |
8 | 9 | ||
9 | [arm] | 10 | [arm] |
11 | DEBUG = YES | ||
10 | PORT = 12164 | 12 | PORT = 12164 |
11 | UNIXPATH = /tmp/gnunet-p1-service-arm.sock | 13 | UNIXPATH = /tmp/gnunet-p1-service-arm.sock |
12 | 14 | ||
@@ -25,6 +27,7 @@ UNIXPATH = /tmp/gnunet-p1-service-peerinfo.sock | |||
25 | [transport] | 27 | [transport] |
26 | PORT = 12160 | 28 | PORT = 12160 |
27 | PLUGINS = wlan | 29 | PLUGINS = wlan |
30 | DEBUG = YES | ||
28 | UNIXPATH = /tmp/gnunet-p1-service-transport.sock | 31 | UNIXPATH = /tmp/gnunet-p1-service-transport.sock |
29 | 32 | ||
30 | 33 | ||
diff --git a/src/transport/test_transport_api_wlan_peer2.conf b/src/transport/test_transport_api_wlan_peer2.conf index 2ab9811ea..daadec3c8 100644 --- a/src/transport/test_transport_api_wlan_peer2.conf +++ b/src/transport/test_transport_api_wlan_peer2.conf | |||
@@ -9,6 +9,7 @@ TESTMODE = 2 | |||
9 | 9 | ||
10 | [arm] | 10 | [arm] |
11 | PORT = 12174 | 11 | PORT = 12174 |
12 | DEBUG = YES | ||
12 | UNIXPATH = /tmp/gnunet-p2-service-arm.sock | 13 | UNIXPATH = /tmp/gnunet-p2-service-arm.sock |
13 | 14 | ||
14 | [statistics] | 15 | [statistics] |
@@ -26,5 +27,6 @@ UNIXPATH = /tmp/gnunet-p2-service-peerinfo.sock | |||
26 | [transport] | 27 | [transport] |
27 | PORT = 12170 | 28 | PORT = 12170 |
28 | PLUGINS = wlan | 29 | PLUGINS = wlan |
30 | DEBUG = YES | ||
29 | UNIXPATH = /tmp/gnunet-p2-service-transport.sock | 31 | UNIXPATH = /tmp/gnunet-p2-service-transport.sock |
30 | 32 | ||