[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r16303 - gnunet/src/transport
From: |
gnunet |
Subject: |
[GNUnet-SVN] r16303 - gnunet/src/transport |
Date: |
Mon, 1 Aug 2011 22:55:56 +0200 |
Author: grothoff
Date: 2011-08-01 22:55:56 +0200 (Mon, 01 Aug 2011)
New Revision: 16303
Modified:
gnunet/src/transport/gnunet-transport-certificate-creation
gnunet/src/transport/plugin_transport_http.c
Log:
a bit cleanr
Modified: gnunet/src/transport/gnunet-transport-certificate-creation
===================================================================
--- gnunet/src/transport/gnunet-transport-certificate-creation 2011-08-01
20:51:55 UTC (rev 16302)
+++ gnunet/src/transport/gnunet-transport-certificate-creation 2011-08-01
20:55:56 UTC (rev 16303)
@@ -1,27 +1,148 @@
-#!/bin/sh
+#! /bin/bash
-# GNUnet TLS certificate shell scricpt
-# Creates a TSL certificate to use with HTTPS transport plugin
+# gnunet-transport-certificate-creation - temporary wrapper script for
.libs/gnunet-transport-certificate-creation
+# Generated by ltmain.sh (GNU libtool) 2.2.6b Debian-2.2.6b-2ubuntu3
+#
+# The gnunet-transport-certificate-creation program cannot be directly
executed until all the libtool
+# libraries that it depends on are installed.
+#
+# This wrapper script should never be moved out of the build directory.
+# If it is, it will not operate correctly.
-if [ $# -ne 2 ]; then
- exit 1
+# Sed substitution that helps us do robust quoting. It backslashifies
+# metacharacters that are still active within double-quoted strings.
+Xsed='/bin/sed -e 1s/^X//'
+sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+ setopt NO_GLOB_SUBST
+else
+ case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
fi
+BIN_SH=xpg4; export BIN_SH # for Tru64
+DUALCASE=1; export DUALCASE # for MKS sh
-rm -f $1 $2
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-# Create RSA Private Key
-openssl genrsa -out $1 1024 2> /dev/null
-if [ $? -ne 0 ]; then
- rm -f $1 $2
- exit 1
-fi
-# Create a self-signed certificate in batch mode using rsa key
- openssl req -batch -days 365 -out $2 -new -x509 -key $1 2> /dev/null
-if [ $? -ne 0 ]; then
- rm -f $1 $2
- exit 1
-fi
+relink_command="(cd /home/grothoff/svn/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; }; };
LD_LIBRARY_PATH=/usr/lib/debug:/home/grothoff/lib; export LD_LIBRARY_PATH;
PATH=/opt/jdk1.6.0_22/bin:/usr/lib/jvm/java-6-sun//bin:.:/home/grothoff/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games;
export PATH; gcc -fno-strict-aliasing -Wall -g -Wall -Werror -O0
-I/home/grothoff//include -o \$progdir/\$file
gnunet-transport-certificate-creation.o -L/home/grothoff//lib
../../src/util/.libs/libgnunetutil.so -ldl -Wl,-rpath
-Wl,/home/grothoff/svn/gnunet/src/util/.libs -Wl
,-rpath -Wl,/home/grothoff/lib)"
-chmod 0400 $1 $2
+# This environment variable determines our operation mode.
+if test "$libtool_install_magic" = "%%%MAGIC variable%%%"; then
+ # install mode needs the following variables:
+ generated_by_libtool_version='2.2.6b'
+ notinst_deplibs=' ../../src/util/libgnunetutil.la'
+else
+ # When we are sourced in execute mode, $file and $ECHO are already set.
+ if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then
+ ECHO="echo"
+ file="$0"
+ # Make sure echo works.
+ if test "X$1" = X--no-reexec; then
+ # Discard the --no-reexec flag, and continue.
+ shift
+ elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t'; then
+ # Yippee, $ECHO works!
+ :
+ else
+ # Restart under the correct shell, and then maybe $ECHO will work.
+ exec /bin/bash "$0" --no-reexec ${1+"$@"}
+ fi
+ fi
-exit 0
+ # Find the directory that this script lives in.
+ thisdir=`$ECHO "X$file" | $Xsed -e 's%/[^/]*$%%'`
+ test "x$thisdir" = "x$file" && thisdir=.
+
+ # Follow symbolic links until we get to the real thisdir.
+ file=`ls -ld "$file" | /bin/sed -n 's/.*-> //p'`
+ while test -n "$file"; do
+ destdir=`$ECHO "X$file" | $Xsed -e 's%/[^/]*$%%'`
+
+ # If there was a directory component, then change thisdir.
+ if test "x$destdir" != "x$file"; then
+ case "$destdir" in
+ [\\/]* | [A-Za-z]:[\\/]*) thisdir="$destdir" ;;
+ *) thisdir="$thisdir/$destdir" ;;
+ esac
+ fi
+
+ file=`$ECHO "X$file" | $Xsed -e 's%^.*/%%'`
+ file=`ls -ld "$thisdir/$file" | /bin/sed -n 's/.*-> //p'`
+ done
+
+
+ # Usually 'no', except on cygwin/mingw when embedded into
+ # the cwrapper.
+ WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=no
+ if test "$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR" = "yes"; then
+ # special case for '.'
+ if test "$thisdir" = "."; then
+ thisdir=`pwd`
+ fi
+ # remove .libs from thisdir
+ case "$thisdir" in
+ *[\\/].libs ) thisdir=`$ECHO "X$thisdir" | $Xsed -e 's%[\\/][^\\/]*$%%'` ;;
+ .libs ) thisdir=. ;;
+ esac
+ fi
+
+ # Try to get the absolute directory name.
+ absdir=`cd "$thisdir" && pwd`
+ test -n "$absdir" && thisdir="$absdir"
+
+ program=lt-'gnunet-transport-certificate-creation'
+ progdir="$thisdir/.libs"
+
+ if test ! -f "$progdir/$program" ||
+ { file=`ls -1dt "$progdir/$program" "$progdir/../$program" 2>/dev/null |
/bin/sed 1q`; \
+ test "X$file" != "X$progdir/$program"; }; then
+
+ file="$$-$program"
+
+ if test ! -d "$progdir"; then
+ mkdir "$progdir"
+ else
+ rm -f "$progdir/$file"
+ fi
+
+ # relink executable if necessary
+ if test -n "$relink_command"; then
+ if relink_command_output=`eval $relink_command 2>&1`; then :
+ else
+ echo "$relink_command_output" >&2
+ rm -f "$progdir/$file"
+ exit 1
+ fi
+ fi
+
+ mv -f "$progdir/$file" "$progdir/$program" 2>/dev/null ||
+ { rm -f "$progdir/$program";
+ mv -f "$progdir/$file" "$progdir/$program"; }
+ rm -f "$progdir/$file"
+ fi
+
+ if test -f "$progdir/$program"; then
+ if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then
+ # Run the actual program with our arguments.
+
+ exec "$progdir/$program" ${1+"$@"}
+
+ $ECHO "$0: cannot exec $program $*" 1>&2
+ exit 1
+ fi
+ else
+ # The program doesn't exist.
+ $ECHO "$0: error: \`$progdir/$program' does not exist" 1>&2
+ $ECHO "This script is just a wrapper for $program." 1>&2
+ echo "See the libtool documentation for more information." 1>&2
+ exit 1
+ fi
+fi
Modified: gnunet/src/transport/plugin_transport_http.c
===================================================================
--- gnunet/src/transport/plugin_transport_http.c 2011-08-01 20:51:55 UTC
(rev 16302)
+++ gnunet/src/transport/plugin_transport_http.c 2011-08-01 20:55:56 UTC
(rev 16303)
@@ -3482,7 +3482,7 @@
if ( (plugin->key==NULL) || (plugin->cert==NULL) )
{
- struct GNUNET_OS_Process *certcreation = NULL;
+ struct GNUNET_OS_Process *certcreation;
enum GNUNET_OS_ProcessStatusType status_type = GNUNET_OS_PROCESS_UNKNOWN;
unsigned long code = 0;
int ret = 0;
@@ -3491,15 +3491,21 @@
plugin->key = NULL;
GNUNET_free_non_null (plugin->cert);
plugin->cert = NULL;
+#if DEBUG_HTTP
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"No usable TLS certificate found, creating certificate\n");
+#endif
errno = 0;
- certcreation = GNUNET_OS_start_process (NULL, NULL,
"gnunet-transport-certificate-creation",
"gnunet-transport-certificate-creation", key_file, cert_file, NULL);
- if (certcreation == NULL
- || (ret = 1) != 1 || GNUNET_OS_process_wait (certcreation) !=
GNUNET_OK
- || (ret = 2) != 2 || (GNUNET_OS_process_status (certcreation,
&status_type, &code) != GNUNET_OK
- || (ret = 3) != 3 || status_type != GNUNET_OS_PROCESS_EXITED
- || (ret = 4) != 4 || code != 0))
+ certcreation = GNUNET_OS_start_process (NULL, NULL,
+
"gnunet-transport-certificate-creation",
+
"gnunet-transport-certificate-creation",
+ key_file, cert_file,
+ NULL);
+ if ( (certcreation == NULL) ||
+ (1 != (ret = 1) ) || (GNUNET_OS_process_wait (certcreation) !=
GNUNET_OK) ||
+ (2 != (ret = 2) ) || (GNUNET_OS_process_status (certcreation,
&status_type, &code) != GNUNET_OK) ||
+ (3 != (ret = 3) ) || (status_type != GNUNET_OS_PROCESS_EXITED) ||
+ (4 != (ret = 4) ) || (code != 0) )
{
GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR,
"https",
@@ -3509,11 +3515,11 @@
GNUNET_free (cert_file);
GNUNET_free (component_name);
if (certcreation != NULL)
- {
- GNUNET_OS_process_kill (certcreation, SIGTERM);
- GNUNET_OS_process_close (certcreation);
- }
- LIBGNUNET_PLUGIN_TRANSPORT_DONE(api);
+ {
+ GNUNET_OS_process_kill (certcreation, SIGTERM);
+ GNUNET_OS_process_close (certcreation);
+ }
+ LIBGNUNET_PLUGIN_TRANSPORT_DONE (api);
return NULL;
}
GNUNET_OS_process_close (certcreation);
@@ -3537,9 +3543,11 @@
GNUNET_free (cert_file);
GNUNET_assert((plugin->key!=NULL) && (plugin->cert!=NULL));
+#if DEBUG_HTTP
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"TLS certificate loaded\n");
#endif
+#endif
GNUNET_assert ((port > 0) && (port <= 65535));
plugin->port_inbound = port;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r16303 - gnunet/src/transport,
gnunet <=