Check-in [7530d26995]
Bounty program for improvements to Tcl and certain Tcl packages.
Overview
Comment: * win/makefile.vc: bump version to 1.6 * configure.in: use -L and -R where necessary. [Bug 1742859]
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 7530d26995228c52c6141b453b3abb4b26ba028d
User & Date: hobbs2 on 2008-03-19 22:38:26
Other Links: manifest | tags
Context
2008-03-19
22:49
made more relevant for 1.6 release check-in: b9edfb2437 user: hobbs2 tags: trunk
22:38
* win/makefile.vc: bump version to 1.6 * configure.in: use -L and -R where necessary. [Bug 1742859] check-in: 7530d26995 user: hobbs2 tags: trunk
22:09
* aclocal.m4: improve --with-ssl-dir check. check-in: 0adce51010 user: hobbs2 tags: trunk
Changes

Modified ChangeLog from [68ad21e5fc] to [5e20b36f4b].

1
2



3
4
5
6
7
8
9
2008-03-19  Jeff Hobbs  <[email protected]>




	* aclocal.m4: improve --with-ssl-dir check.

	* tests/tlsIO.test (tlsIO-14.*):   Add tls::unimport for symmetry
	* tls.htm, tls.c (UnimportObjCmd): to tls::import. [Bug 1203273]

	* tls.c (Tls_Clean, ImportObjCmd): Fix cleanup mem leak [Bug 1414045]
	Use better Eval APIs, cleaner Tcl_Obj-handling.

>
>
>







1
2
3
4
5
6
7
8
9
10
11
12
2008-03-19  Jeff Hobbs  <[email protected]>

	* win/makefile.vc: bump version to 1.6
	* configure.in: use -L and -R where necessary. [Bug 1742859]

	* aclocal.m4: improve --with-ssl-dir check.

	* tests/tlsIO.test (tlsIO-14.*):   Add tls::unimport for symmetry
	* tls.htm, tls.c (UnimportObjCmd): to tls::import. [Bug 1203273]

	* tls.c (Tls_Clean, ImportObjCmd): Fix cleanup mem leak [Bug 1414045]
	Use better Eval APIs, cleaner Tcl_Obj-handling.

Modified configure from [ad243148d7] to [6f660f87a3].

1
2
3
4
5
6
7
8
9
10
...
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
...
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
...
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
...
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
...
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
....
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789
9790
9791
9792
9793
9794
9795
9796
9797
9798
9799
9800
9801
9802
9803
9804
9805
9806
9807
9808
9809
9810
9811
9812
9813
9814
9815
....
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
....
9902
9903
9904
9905
9906
9907
9908


























9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
9930
9931
9932
9933
9934
9935
....
9936
9937
9938
9939
9940
9941
9942
9943
9944
9945
9946
9947
9948
9949
9950
.....
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082












10083
10084
10085
10086
10087
10088
10089
10090
10091
10092


10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107

10108
10109
10110
10111
10112
10113
10114
10115
10116
10117
10118
10119
10120


10121
10122

10123
10124
10125
10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
.....
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
.....
10649
10650
10651
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.59 for tls 1.5.1.
#
# Copyright (C) 2003 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
## --------------------- ##
## M4sh Initialization.  ##
## --------------------- ##
................................................................................
# This variable seems obsolete.  It should probably be removed, and
# only ac_max_sed_lines should be used.
: ${ac_max_here_lines=38}

# Identity of this package.
PACKAGE_NAME='tls'
PACKAGE_TARNAME='tls'
PACKAGE_VERSION='1.5.1'
PACKAGE_STRING='tls 1.5.1'
PACKAGE_BUGREPORT=''

# Factoring default headers for most tests.
ac_includes_default="\
#include <stdio.h>
#if HAVE_SYS_TYPES_H
# include <sys/types.h>
................................................................................
#
# Report the --help message.
#
if test "$ac_init_help" = "long"; then
  # Omit some internal or obsolete options to make the list less imposing.
  # This message is too long to be a string in the A/UX 3.1 sh.
  cat <<_ACEOF
\`configure' configures tls 1.5.1 to adapt to many kinds of systems.

Usage: $0 [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE.  See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.
................................................................................

  cat <<\_ACEOF
_ACEOF
fi

if test -n "$ac_init_help"; then
  case $ac_init_help in
     short | recursive ) echo "Configuration of tls 1.5.1:";;
   esac
  cat <<\_ACEOF

Optional Features:
  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
  --enable-threads        build with threads
................................................................................
  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
  --with-tcl              directory containing tcl configuration
                          (tclConfig.sh)
  --with-tclinclude       directory containing the public Tcl header files
  --with-celib=DIR        use Windows/CE support library from DIR
  --with-ssl-dir=DIR      SSL root directory
  --with-gcclib	       link with libgcc to resolve symbols in a gcc-built openssl library

Some influential environment variables:
  CC          C compiler command
  CFLAGS      C compiler flags
  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
              nonstandard directory <lib dir>
  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
................................................................................
    cd $ac_popdir
  done
fi

test -n "$ac_init_help" && exit 0
if $ac_init_version; then
  cat <<\_ACEOF
tls configure 1.5.1
generated by GNU Autoconf 2.59

Copyright (C) 2003 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
  exit 0
fi
exec 5>config.log
cat >&5 <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by tls $as_me 1.5.1, which was
generated by GNU Autoconf 2.59.  Invocation command line was

  $ $0 [email protected]

_ACEOF
{
cat <<_ASUNAME
................................................................................
# libraries instead of the default OpenSSL libaries.
#--------------------------------------------------------------------

OPENSSL="1"



#--------------------------------------------------------------------
# If the variable OPENSSL is set, we will build with the OpenSSL
# libraries.  If it is not set, then we will use RSA BSAFE SSL-C
# libraries instead of the default OpenSSL libaries.
#--------------------------------------------------------------------

    # Check whether --enable-bsafe or --disable-bsafe was given.
if test "${enable_bsafe+set}" = set; then
  enableval="$enable_bsafe"
  OPENSSL=""
else
  OPENSSL="1"
fi;

#--------------------------------------------------------------------
# Establish the location of the root directory for OpenSSL.
# If we're not using OpenSSL, set the root for BSAFE SSL-C.
# If we're using BSAFE, define the BSAFE compiler flag.
# The "FLAT_INC" flag is used in the BSAFE ssl.h header file and
# doesn't seem to be referenced anywhere else.
#--------------------------------------------------------------------
    if test -n "${OPENSSL}"; then
	SSL_DIR='/usr/local/ssl'
	cat >>confdefs.h <<\_ACEOF
#define NO_IDEA 1
_ACEOF

	cat >>confdefs.h <<\_ACEOF
#define NO_RC5 1
_ACEOF

    else
	SSL_DIR='/use/local/sslc'
	cat >>confdefs.h <<\_ACEOF
#define BSAFE 1
_ACEOF

	cat >>confdefs.h <<\_ACEOF
#define FLAT_INC 1
_ACEOF
................................................................................
   { (exit 1); exit 1; }; }
    else
	SSL_DIR=${ac_cv_c_ssldir}
	echo "$as_me:$LINENO: result: ${SSL_DIR}" >&5
echo "${ECHO_T}${SSL_DIR}" >&6
    fi

    #--------------------------------------------------------------------
    # If we're using RSA BSAFE SSL-C, we need to establish what platform
    # we're running on before we can figure out some paths.
    # This step isn't necessary if we're using OpenSSL.
    #--------------------------------------------------------------------

    if test -z "${OPENSSL}"; then
	echo "$as_me:$LINENO: checking host type" >&5
echo $ECHO_N "checking host type... $ECHO_C" >&6
	case "`uname -s`" in
	    *win32* | *WIN32* | *CYGWIN_NT*|*CYGWIN_98*|*CYGWIN_95*)
		PLATFORM=WIN32
		;;
	    *SunOS*)
		PLATFORM=SOLARIS
		;;
	    HP-UX)
		PLATFORM=HPUX
		;;
	    *)
		PLATFORM=LINUX
		;;
	esac
	echo "$as_me:$LINENO: result: ${PLATFORM}" >&5
echo "${ECHO_T}${PLATFORM}" >&6
    fi

    #--------------------------------------------------------------------
    # The OpenSSL and BSAFE SSL-C directory structures differ.
    #--------------------------------------------------------------------

    if test -n "${OPENSSL}"; then
	SSL_LIB_DIR=${SSL_DIR}/lib
................................................................................
	SSL_INCLUDE_DIR=${SSL_DIR}/include
	if test ! -f "${SSL_INCLUDE_DIR}/openssl/opensslv.h"; then
	    { { echo "$as_me:$LINENO: error: bad ssl-dir: cannot find openssl/opensslv.h under ${SSL_INCLUDE_DIR}" >&5
echo "$as_me: error: bad ssl-dir: cannot find openssl/opensslv.h under ${SSL_INCLUDE_DIR}" >&2;}
   { (exit 1); exit 1; }; }
	fi
    else


























	SSL_LIB_DIR=${SSL_DIR}/${PLATFORM}/library/lib
	SSL_INCLUDE_DIR=${SSL_DIR}/${PLATFORM}/library/include
	if test ! -f "${SSL_INCLUDE_DIR}/crypto.h"; then
	    { { echo "$as_me:$LINENO: error: bad ssl-dir: cannot find crypto.h under ${SSL_INCLUDE_DIR}" >&5
echo "$as_me: error: bad ssl-dir: cannot find crypto.h under ${SSL_INCLUDE_DIR}" >&2;}
   { (exit 1); exit 1; }; }
	fi
    fi





    if test "$PLATFORM" = "WIN32" -a "$GCC" != "yes"; then
        SSL_INCLUDE_DIR_NATIVE=\"`echo ${SSL_INCLUDE_DIR}|sed 's%/%\\\\%g'`\"
        SSL_LIB_DIR_NATIVE=\"`echo ${SSL_LIB_DIR}|sed 's%/%\\\\%g'`\"
    else
        SSL_INCLUDE_DIR_NATIVE=\"`${CYGPATH} ${SSL_INCLUDE_DIR}`\"
        SSL_LIB_DIR_NATIVE=\"`${CYGPATH} ${SSL_LIB_DIR}`\"
    fi



    #--------------------------------------------------------------------
    # If OpenSSL was built with gcc then there may be some symbols that need
    # resolving before we can load it into tclsh (__udivd3i on solaris.
    # Let the user specify if we need to add libgcc to the link line to
................................................................................
    # resolve these symbols.
    #
    # This doesn't seem to be necessary if the RSA BSAFE SSL-C libraries
    # are used instead of OpenSSL.
    #--------------------------------------------------------------------

    if test -n "${OPENSSL}"; then

	echo "$as_me:$LINENO: checking if libgcc is needed to resolve openssl symbols" >&5
echo $ECHO_N "checking if libgcc is needed to resolve openssl symbols... $ECHO_C" >&6


# Check whether --with-gcclib or --without-gcclib was given.
if test "${with_gcclib+set}" = set; then
  withval="$with_gcclib"
................................................................................
#--------------------------------------------------------------------
# Shared libraries and static libraries have different names.
# Also, windows libraries and unix libraries have different names.
# For the OpenSSL version, I chose to use the same library names that
# OpenSSL uses as its default names.
#--------------------------------------------------------------------

if test -n "${OPENSSL}"; then
    if test "${TEA_PLATFORM}" = "windows" ; then
        if test "$GCC" = "yes"; then

    vars="-L${SSL_LIB_DIR_NATIVE} -lssleay32 -llibeay32"












    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done


        else



    vars="-libpath:${SSL_LIB_DIR_NATIVE} ssleay32.lib libeay32.lib"
    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done


        fi
    else

    vars="-L${SSL_LIB_DIR} -lssl -lcrypto ${GCCPATH} ${GCCLIB}"

    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done


    fi
else
    if test "${TEA_PLATFORM}" = "windows" ; then
        if test "$GCC" = "yes"; then



    vars="-L${SSL_LIB_DIR_NATIVE} -lsslc32"

    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done


        else

    vars="-libpath:${SSL_LIB_DIR_NATIVE} sslc32.lib"
    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done


        fi
    else

    vars="-L${SSL_LIB_DIR} -lsslc"
    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done
................................................................................
  echo
  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## Running $as_me. ##
_ASBOX
} >&5
cat >&5 <<_CSEOF

This file was extended by tls $as_me 1.5.1, which was
generated by GNU Autoconf 2.59.  Invocation command line was

  CONFIG_FILES    = $CONFIG_FILES
  CONFIG_HEADERS  = $CONFIG_HEADERS
  CONFIG_LINKS    = $CONFIG_LINKS
  CONFIG_COMMANDS = $CONFIG_COMMANDS
  $ $0 [email protected]
................................................................................
$config_files

Report bugs to <[email protected]>."
_ACEOF

cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
tls config.status 1.5.1
configured by $0, generated by GNU Autoconf 2.59,
  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"

Copyright (C) 2003 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
srcdir=$srcdir

|







 







|
|







 







|







 







|







 







|







 







|













|







 







|
|
|
|
|









|
|
|
|
|
|
|

|









|







 







<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<







 







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>













<
<
<
<
|
|
<







 







<







 







<
|
|

|
>
>
>
>
>
>
>
>
>
>
>
>









<
>
>

|









<


<
>











|
|
>
>

<
>









|

<
<
<
<
<
<
<
<
<
<
<
<
<
|







 







|







 







|







1
2
3
4
5
6
7
8
9
10
...
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
...
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
...
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
...
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
...
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
....
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789
9790
9791
9792
9793
9794
9795
9796
9797
9798
9799
9800
9801
9802
9803
9804
9805
9806
9807
9808
9809
9810
9811
9812
9813
9814
9815
....
9862
9863
9864
9865
9866
9867
9868


























9869
9870
9871
9872
9873
9874
9875
....
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921




9922
9923

9924
9925
9926
9927
9928
9929
9930
....
9931
9932
9933
9934
9935
9936
9937

9938
9939
9940
9941
9942
9943
9944
.....
10065
10066
10067
10068
10069
10070
10071

10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
10095
10096

10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109

10110
10111

10112
10113
10114
10115
10116
10117
10118
10119
10120
10121
10122
10123
10124
10125
10126
10127
10128

10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140













10141
10142
10143
10144
10145
10146
10147
10148
.....
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
.....
10643
10644
10645
10646
10647
10648
10649
10650
10651
10652
10653
10654
10655
10656
10657
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.59 for tls 1.6.
#
# Copyright (C) 2003 Free Software Foundation, Inc.
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
## --------------------- ##
## M4sh Initialization.  ##
## --------------------- ##
................................................................................
# This variable seems obsolete.  It should probably be removed, and
# only ac_max_sed_lines should be used.
: ${ac_max_here_lines=38}

# Identity of this package.
PACKAGE_NAME='tls'
PACKAGE_TARNAME='tls'
PACKAGE_VERSION='1.6'
PACKAGE_STRING='tls 1.6'
PACKAGE_BUGREPORT=''

# Factoring default headers for most tests.
ac_includes_default="\
#include <stdio.h>
#if HAVE_SYS_TYPES_H
# include <sys/types.h>
................................................................................
#
# Report the --help message.
#
if test "$ac_init_help" = "long"; then
  # Omit some internal or obsolete options to make the list less imposing.
  # This message is too long to be a string in the A/UX 3.1 sh.
  cat <<_ACEOF
\`configure' configures tls 1.6 to adapt to many kinds of systems.

Usage: $0 [OPTION]... [VAR=VALUE]...

To assign environment variables (e.g., CC, CFLAGS...), specify them as
VAR=VALUE.  See below for descriptions of some of the useful variables.

Defaults for the options are specified in brackets.
................................................................................

  cat <<\_ACEOF
_ACEOF
fi

if test -n "$ac_init_help"; then
  case $ac_init_help in
     short | recursive ) echo "Configuration of tls 1.6:";;
   esac
  cat <<\_ACEOF

Optional Features:
  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
  --enable-threads        build with threads
................................................................................
  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
  --with-tcl              directory containing tcl configuration
                          (tclConfig.sh)
  --with-tclinclude       directory containing the public Tcl header files
  --with-celib=DIR        use Windows/CE support library from DIR
  --with-ssl-dir=DIR      SSL root directory
  --with-gcclib           link with libgcc to resolve symbols in a gcc-built openssl library

Some influential environment variables:
  CC          C compiler command
  CFLAGS      C compiler flags
  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
              nonstandard directory <lib dir>
  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
................................................................................
    cd $ac_popdir
  done
fi

test -n "$ac_init_help" && exit 0
if $ac_init_version; then
  cat <<\_ACEOF
tls configure 1.6
generated by GNU Autoconf 2.59

Copyright (C) 2003 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
_ACEOF
  exit 0
fi
exec 5>config.log
cat >&5 <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by tls $as_me 1.6, which was
generated by GNU Autoconf 2.59.  Invocation command line was

  $ $0 [email protected]

_ACEOF
{
cat <<_ASUNAME
................................................................................
# libraries instead of the default OpenSSL libaries.
#--------------------------------------------------------------------

OPENSSL="1"



    #--------------------------------------------------------------------
    # If the variable OPENSSL is set, we will build with the OpenSSL
    # libraries.  If it is not set, then we will use RSA BSAFE SSL-C
    # libraries instead of the default OpenSSL libaries.
    #--------------------------------------------------------------------

    # Check whether --enable-bsafe or --disable-bsafe was given.
if test "${enable_bsafe+set}" = set; then
  enableval="$enable_bsafe"
  OPENSSL=""
else
  OPENSSL="1"
fi;

    #--------------------------------------------------------------------
    # Establish the location of the root directory for OpenSSL.
    # If we're not using OpenSSL, set the root for BSAFE SSL-C.
    # If we're using BSAFE, define the BSAFE compiler flag.
    # The "FLAT_INC" flag is used in the BSAFE ssl.h header file and
    # doesn't seem to be referenced anywhere else.
    #--------------------------------------------------------------------
    if test -n "${OPENSSL}"; then
	SSL_DIR='/usr /usr/local'
	cat >>confdefs.h <<\_ACEOF
#define NO_IDEA 1
_ACEOF

	cat >>confdefs.h <<\_ACEOF
#define NO_RC5 1
_ACEOF

    else
	SSL_DIR='/usr/sslc /usr/local/sslc'
	cat >>confdefs.h <<\_ACEOF
#define BSAFE 1
_ACEOF

	cat >>confdefs.h <<\_ACEOF
#define FLAT_INC 1
_ACEOF
................................................................................
   { (exit 1); exit 1; }; }
    else
	SSL_DIR=${ac_cv_c_ssldir}
	echo "$as_me:$LINENO: result: ${SSL_DIR}" >&5
echo "${ECHO_T}${SSL_DIR}" >&6
    fi




























    #--------------------------------------------------------------------
    # The OpenSSL and BSAFE SSL-C directory structures differ.
    #--------------------------------------------------------------------

    if test -n "${OPENSSL}"; then
	SSL_LIB_DIR=${SSL_DIR}/lib
................................................................................
	SSL_INCLUDE_DIR=${SSL_DIR}/include
	if test ! -f "${SSL_INCLUDE_DIR}/openssl/opensslv.h"; then
	    { { echo "$as_me:$LINENO: error: bad ssl-dir: cannot find openssl/opensslv.h under ${SSL_INCLUDE_DIR}" >&5
echo "$as_me: error: bad ssl-dir: cannot find openssl/opensslv.h under ${SSL_INCLUDE_DIR}" >&2;}
   { (exit 1); exit 1; }; }
	fi
    else
	#--------------------------------------------------------------------
	# If we're using RSA BSAFE SSL-C, we need to establish what platform
	# we're running on before we can figure out some paths.
	# This step isn't necessary if we're using OpenSSL.
	#--------------------------------------------------------------------

	if test -z "${OPENSSL}"; then
	    echo "$as_me:$LINENO: checking host type" >&5
echo $ECHO_N "checking host type... $ECHO_C" >&6
	    case "`uname -s`" in
		*win32* | *WIN32* | *CYGWIN_NT*|*CYGWIN_98*|*CYGWIN_95*)
		    PLATFORM=WIN32
		    ;;
		*SunOS*)
		    PLATFORM=SOLARIS
		    ;;
		HP-UX)
		    PLATFORM=HPUX
		    ;;
		*)
		    PLATFORM=LINUX
		    ;;
	    esac
	    echo "$as_me:$LINENO: result: ${PLATFORM}" >&5
echo "${ECHO_T}${PLATFORM}" >&6
	fi
	SSL_LIB_DIR=${SSL_DIR}/${PLATFORM}/library/lib
	SSL_INCLUDE_DIR=${SSL_DIR}/${PLATFORM}/library/include
	if test ! -f "${SSL_INCLUDE_DIR}/crypto.h"; then
	    { { echo "$as_me:$LINENO: error: bad ssl-dir: cannot find crypto.h under ${SSL_INCLUDE_DIR}" >&5
echo "$as_me: error: bad ssl-dir: cannot find crypto.h under ${SSL_INCLUDE_DIR}" >&2;}
   { (exit 1); exit 1; }; }
	fi
    fi









    SSL_INCLUDE_DIR_NATIVE=\"`${CYGPATH} ${SSL_INCLUDE_DIR}`\"
    SSL_LIB_DIR_NATIVE=\"`${CYGPATH} ${SSL_LIB_DIR}`\"




    #--------------------------------------------------------------------
    # If OpenSSL was built with gcc then there may be some symbols that need
    # resolving before we can load it into tclsh (__udivd3i on solaris.
    # Let the user specify if we need to add libgcc to the link line to
................................................................................
    # resolve these symbols.
    #
    # This doesn't seem to be necessary if the RSA BSAFE SSL-C libraries
    # are used instead of OpenSSL.
    #--------------------------------------------------------------------

    if test -n "${OPENSSL}"; then

	echo "$as_me:$LINENO: checking if libgcc is needed to resolve openssl symbols" >&5
echo $ECHO_N "checking if libgcc is needed to resolve openssl symbols... $ECHO_C" >&6


# Check whether --with-gcclib or --without-gcclib was given.
if test "${with_gcclib+set}" = set; then
  withval="$with_gcclib"
................................................................................
#--------------------------------------------------------------------
# Shared libraries and static libraries have different names.
# Also, windows libraries and unix libraries have different names.
# For the OpenSSL version, I chose to use the same library names that
# OpenSSL uses as its default names.
#--------------------------------------------------------------------


if test "${TEA_PLATFORM}" = "windows" ; then
    if test "$GCC" = "yes"; then

    vars="-L${SSL_LIB_DIR_NATIVE}"
    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done


    else

    vars="-libpath:${SSL_LIB_DIR_NATIVE}"
    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done



    fi
    if test -n "${OPENSSL}"; then

    vars="ssleay32.lib libeay32.lib"
    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done



    else


    vars="sslc32.lib"
    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done


    fi
else
    # Subst runtime dir here, use -R and -L where necessary. [Bug 1742859]
    LIB_RUNTIME_DIR=${SSL_LIB_DIR}
    eval "LD_SEARCH_FLAGS=\"${LD_SEARCH_FLAGS}\""
    if test -n "${OPENSSL}"; then


    vars="${LD_SEARCH_FLAGS} -L${SSL_LIB_DIR} -lssl -lcrypto ${GCCPATH} ${GCCLIB}"
    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done


    else














    vars="${LD_SEARCH_FLAGS} -L${SSL_LIB_DIR} -lsslc"
    for i in $vars; do
	if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then
	    # Convert foo.lib to -lfoo for GCC.  No-op if not *.lib
	    i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'`
	fi
	PKG_LIBS="$PKG_LIBS $i"
    done
................................................................................
  echo
  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## Running $as_me. ##
_ASBOX
} >&5
cat >&5 <<_CSEOF

This file was extended by tls $as_me 1.6, which was
generated by GNU Autoconf 2.59.  Invocation command line was

  CONFIG_FILES    = $CONFIG_FILES
  CONFIG_HEADERS  = $CONFIG_HEADERS
  CONFIG_LINKS    = $CONFIG_LINKS
  CONFIG_COMMANDS = $CONFIG_COMMANDS
  $ $0 [email protected]
................................................................................
$config_files

Report bugs to <[email protected]>."
_ACEOF

cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
tls config.status 1.6
configured by $0, generated by GNU Autoconf 2.59,
  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"

Copyright (C) 2003 Free Software Foundation, Inc.
This config.status script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it."
srcdir=$srcdir

Modified configure.in from [78803775c2] to [b438258c7f].

7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
...
167
168
169
170
171
172
173
174
175
176
177
178
179
180


181
182

183
184
185
186
187
188
189
190

191
192
193
194
195
196
197
198
199
dnl OpenSSL libraries or libraries from the commercial BSAFE SSL-C
dnl product from RSA Security.  In the United States, it is necessary
dnl to use the RSA BSAFE libraries for any product developed for
dnl commercial use. Licensing information for BSAFE SSL-C may be
dnl obtained from RSA Data Scurity Inc., San Mateo, California, USA.
dnl Their home page on the web is "www.rsasecurity.com". 
#
# RCS: @(#) $Id: configure.in,v 1.23 2007/06/22 21:19:12 hobbs2 Exp $


#--------------------------------------------------------------------
# macro used to verify that the configure script can find the sources
#--------------------------------------------------------------------

AC_INIT([tls], [1.5.1])

TEA_INIT([3.6])

AC_CONFIG_AUX_DIR(tclconfig)

#--------------------------------------------------------------------
# Load the tclConfig.sh file
................................................................................
#--------------------------------------------------------------------
# Shared libraries and static libraries have different names.
# Also, windows libraries and unix libraries have different names.
# For the OpenSSL version, I chose to use the same library names that
# OpenSSL uses as its default names.
#--------------------------------------------------------------------

if test -n "${OPENSSL}"; then
    if test "${TEA_PLATFORM}" = "windows" ; then
        if test "$GCC" = "yes"; then
            TEA_ADD_LIBS([-L${SSL_LIB_DIR_NATIVE} -lssleay32 -llibeay32])
        else
            TEA_ADD_LIBS([-libpath:${SSL_LIB_DIR_NATIVE} ssleay32.lib libeay32.lib])
        fi


    else
	TEA_ADD_LIBS([-L${SSL_LIB_DIR} -lssl -lcrypto ${GCCPATH} ${GCCLIB}])

    fi
else
    if test "${TEA_PLATFORM}" = "windows" ; then
        if test "$GCC" = "yes"; then
            TEA_ADD_LIBS([-L${SSL_LIB_DIR_NATIVE} -lsslc32])
        else
            TEA_ADD_LIBS([-libpath:${SSL_LIB_DIR_NATIVE} sslc32.lib])
        fi

    else
	TEA_ADD_LIBS([-L${SSL_LIB_DIR} -lsslc])
    fi
fi

#--------------------------------------------------------------------
# Find tclsh so that we can run pkg_mkIndex to generate the pkgIndex.tcl
# file during the install process.  Don't run the TCLSH_PROG through
# ${CYGPATH} because it's being used directly by make.






|






|







 







<
|
|
|
|
|
|
>
>

<
>


<
|
|
|
|
<
>

|







7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
...
167
168
169
170
171
172
173

174
175
176
177
178
179
180
181
182

183
184
185

186
187
188
189

190
191
192
193
194
195
196
197
198
199
dnl OpenSSL libraries or libraries from the commercial BSAFE SSL-C
dnl product from RSA Security.  In the United States, it is necessary
dnl to use the RSA BSAFE libraries for any product developed for
dnl commercial use. Licensing information for BSAFE SSL-C may be
dnl obtained from RSA Data Scurity Inc., San Mateo, California, USA.
dnl Their home page on the web is "www.rsasecurity.com". 
#
# RCS: @(#) $Id: configure.in,v 1.24 2008/03/19 22:38:26 hobbs2 Exp $


#--------------------------------------------------------------------
# macro used to verify that the configure script can find the sources
#--------------------------------------------------------------------

AC_INIT([tls], [1.6])

TEA_INIT([3.6])

AC_CONFIG_AUX_DIR(tclconfig)

#--------------------------------------------------------------------
# Load the tclConfig.sh file
................................................................................
#--------------------------------------------------------------------
# Shared libraries and static libraries have different names.
# Also, windows libraries and unix libraries have different names.
# For the OpenSSL version, I chose to use the same library names that
# OpenSSL uses as its default names.
#--------------------------------------------------------------------


if test "${TEA_PLATFORM}" = "windows" ; then
    if test "$GCC" = "yes"; then
	TEA_ADD_LIBS([-L${SSL_LIB_DIR_NATIVE}])
    else
	TEA_ADD_LIBS([-libpath:${SSL_LIB_DIR_NATIVE}])
    fi
    if test -n "${OPENSSL}"; then
        TEA_ADD_LIBS([ssleay32.lib libeay32.lib])
    else

        TEA_ADD_LIBS([sslc32.lib])
    fi
else

    # Subst runtime dir here, use -R and -L where necessary. [Bug 1742859]
    LIB_RUNTIME_DIR=${SSL_LIB_DIR}
    eval "LD_SEARCH_FLAGS=\"${LD_SEARCH_FLAGS}\""
    if test -n "${OPENSSL}"; then

	TEA_ADD_LIBS([${LD_SEARCH_FLAGS} -L${SSL_LIB_DIR} -lssl -lcrypto ${GCCPATH} ${GCCLIB}])
    else
	TEA_ADD_LIBS([${LD_SEARCH_FLAGS} -L${SSL_LIB_DIR} -lsslc])
    fi
fi

#--------------------------------------------------------------------
# Find tclsh so that we can run pkg_mkIndex to generate the pkgIndex.tcl
# file during the install process.  Don't run the TCLSH_PROG through
# ${CYGPATH} because it's being used directly by make.

Modified win/makefile.vc from [1ecdb77483] to [a996142e02].

14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
...
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
# Copyright (c) 1995-1996 Sun Microsystems, Inc.
# Copyright (c) 1998-2000 Ajuba Solutions.
# Copyright (c) 2001 ActiveState Corporation.
# Copyright (c) 2001-2002 David Gravereaux.
# Copyright (c) 2003-2006 Pat Thoyts
#
#-------------------------------------------------------------------------
# RCS: @(#)$Id: makefile.vc,v 1.5 2008/03/19 02:34:21 patthoyts Exp $
#-------------------------------------------------------------------------

# Check to see we are configured to build with MSVC (MSDEVDIR or MSVCDIR)
# or with the MS Platform SDK (MSSDK). Visual Studio .NET 2003 and 2005 define
# VCINSTALLDIR instead. The MSVC Toolkit release defines yet another.
!if !defined(MSDEVDIR) && !defined(MSVCDIR) && !defined(MSSDK) && !defined(VCINSTALLDIR) && !defined(VCToolkitInstallDir)
MSG = ^
................................................................................

PROJECT = tls

# Uncomment the following line if this is a Tk extension.
#PROJECT_REQUIRES_TK=1
!include "rules.vc"

DOTVERSION      = 1.5.1
VERSION         = $(DOTVERSION:.=)
STUBPREFIX      = $(PROJECT)stub

DLLOBJS = \
	$(TMP_DIR)\tls.obj \
	$(TMP_DIR)\tlsBIO.obj \
	$(TMP_DIR)\tlsIO.obj \






|







 







|







14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
...
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
# Copyright (c) 1995-1996 Sun Microsystems, Inc.
# Copyright (c) 1998-2000 Ajuba Solutions.
# Copyright (c) 2001 ActiveState Corporation.
# Copyright (c) 2001-2002 David Gravereaux.
# Copyright (c) 2003-2006 Pat Thoyts
#
#-------------------------------------------------------------------------
# RCS: @(#)$Id: makefile.vc,v 1.6 2008/03/19 22:38:26 hobbs2 Exp $
#-------------------------------------------------------------------------

# Check to see we are configured to build with MSVC (MSDEVDIR or MSVCDIR)
# or with the MS Platform SDK (MSSDK). Visual Studio .NET 2003 and 2005 define
# VCINSTALLDIR instead. The MSVC Toolkit release defines yet another.
!if !defined(MSDEVDIR) && !defined(MSVCDIR) && !defined(MSSDK) && !defined(VCINSTALLDIR) && !defined(VCToolkitInstallDir)
MSG = ^
................................................................................

PROJECT = tls

# Uncomment the following line if this is a Tk extension.
#PROJECT_REQUIRES_TK=1
!include "rules.vc"

DOTVERSION      = 1.6
VERSION         = $(DOTVERSION:.=)
STUBPREFIX      = $(PROJECT)stub

DLLOBJS = \
	$(TMP_DIR)\tls.obj \
	$(TMP_DIR)\tlsBIO.obj \
	$(TMP_DIR)\tlsIO.obj \