--- tcltls-1.5.0.dfsg.orig/debian/dirs +++ tcltls-1.5.0.dfsg/debian/dirs @@ -0,0 +1 @@ +usr/share/tcltk --- tcltls-1.5.0.dfsg.orig/debian/control +++ tcltls-1.5.0.dfsg/debian/control @@ -0,0 +1,19 @@ +Source: tcltls +Section: libs +Priority: optional +Maintainer: Muammar El Khatib +Build-Depends: debhelper (>= 6), libssl-dev, autotools-dev, dpatch, tcl-dev +Standards-Version: 3.8.4 +Homepage: http://tls.sourceforge.net + +Package: tcl-tls +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends}, ${tclsh:Depends} +Provides: tcltls +Replaces: libtls0, tcltls +Conflicts: libtls0, tcltls +Description: the TLS OpenSSL extension to Tcl + This package enables communication over SSL-encrypted channels in Tcl. + . + Both client and server-side sockets are possible. Additionally, full + filevent semantics should be intact. --- tcltls-1.5.0.dfsg.orig/debian/changelog +++ tcltls-1.5.0.dfsg/debian/changelog @@ -0,0 +1,118 @@ +tcltls (1.5.0.dfsg-10) unstable; urgency=low + + * debian/watch file has been fixed in this revision. + * Bump Standard-Version to 3.8.4. + * debian/copyright file has been changed in order to avoid lintian complaints. + * debian/README.source has been added to let know how to handle the dpatch + system. + + -- Muammar El Khatib Mon, 01 Feb 2010 22:01:29 -0430 + +tcltls (1.5.0.dfsg-9) unstable; urgency=low + + * Library name has been named to tcl-tls, and it now complies with Debian + Tcl/Tk Policy. (Closes: #482607) + * A lintian override has been added because the name changed from libtls0 to + tcl-tls which fits better to Debian Tcl/Tk policy. + * Bump Standards-Version to 3.8.0 + * A watch file has been added in this revision. + * Two more patches were added in order to change from tclsh8.3 to tclsh. + They were 04_changing_simpleclient and 05_changing_simpleserver. + * Additionally, pkgIndex.tcl and pkgIndex.tcl.in patches were changed for + making possible that Tcl interpreter loads tls package from + /usr/share/tcltk/ instead of /usr/lib/tls1.50. + * Thanks to Sergei Golovan for helping and the upload. + + -- Muammar El Khatib Sat, 07 Jun 2008 09:16:46 -0430 + +tcltls (1.5.0.dfsg-8) unstable; urgency=low + + * Bug 'tcltls: FTBFS: /bin/sh: -O2: command not found' has been fixed in + this revision. (Closes: #476030) + * debian/copyright file was updated. It was copyrighted under GPL when It + should have been copyrighted under BSD. Thanks to Jeff Hobbs for clarifying + this. + * The debhelper version was changed to >= 6. + * debian/control file has been updated to add following fields: Provides, + Conflicts and Replace. + * Package name has been changed from tcltls to libtls0, so there is no more + lintian overrides. + + -- Muammar El Khatib Mon, 14 Apr 2008 18:49:32 -0430 + +tcltls (1.5.0.dfsg-7) unstable; urgency=low + + * Bump Standards-Version to 3.7.3 + * The package now Build-Depends on tcl8.5 + * Webpage was moved from tcltls' description to control tag. + * Debian copyright file is valid UTF-8, now. + * The package is now compiled against tcl8.5 (Closes: #458901) + + -- Muammar El Khatib Thu, 03 Jan 2008 10:54:49 -0430 + +tcltls (1.5.0.dfsg-6) unstable; urgency=low + + * New maintainer (Closes: #417832) + * Problem with source package declaring the debhelper compatibility version + both in the debian/compat file and in the rules file has been fixed to avoid + fails in the build of the package. + * The debhelper version was changed to >= 5. + * Description of the package was corrected because it didn't have the webpage + of the upstream author. + * Commented lines in rules file were removed since they were useless. + * debian/dirs file was removed since it was useless. + * 02_change_pkgIndex patch was applied to fix Error in pkgIndex.tcl + (Closes: 390566) + * Copyright file was corrected. + * Thanks to Nico Golde. + + -- Muammar El Khatib Tue, 10 Apr 2007 18:48:40 -0400 + +tcltls (1.5.0-5) unstable; urgency=low + + * Orphaned. + + -- Søren Boll Overgaard Fri, 06 Apr 2007 20:17:29 +0000 + +tcltls (1.5.0-4) unstable; urgency=low + + * Don't build-depend on automake (Closes: Bug#376631) + * Update standards version to 3.7.2 (no changes) + + -- Søren Boll Overgaard Mon, 7 Aug 2006 20:17:50 +0000 + +tcltls (1.5.0-3) unstable; urgency=low + + * Introduce dpatch + * Add debian/patches/01_load_ssl_configuration.dpatch which + Closes: Bug#338446 + + -- Søren Boll Overgaard Fri, 20 Jan 2006 12:24:25 +0000 + +tcltls (1.5.0-2) unstable; urgency=low + + * Include html formatted "man" page (Closes: Bug#275945) + + -- Søren Boll Overgaard Sun, 17 Oct 2004 09:13:23 +0000 + +tcltls (1.5.0-1) unstable; urgency=low + + * New upstream release + + -- Søren Boll Overgaard Wed, 16 Jun 2004 19:22:30 +0000 + +tcltls (1.4-2) unstable; urgency=low + + * Fix maintainer name. + + -- Søren Boll Overgaard Sun, 21 Dec 2003 22:22:09 +0000 + +tcltls (1.4-1) unstable; urgency=high + + * Initial Release (closes: Bug#216222). + * Urgency set to high, since amsn currently in unstable is broken until + this package gets accepted. Breakage is due to MSN deciding to change + its protocols to keep third party clients out. + + -- Søren Boll Overgaard Mon, 20 Oct 2003 12:00:22 +0000 + --- tcltls-1.5.0.dfsg.orig/debian/compat +++ tcltls-1.5.0.dfsg/debian/compat @@ -0,0 +1 @@ +6 --- tcltls-1.5.0.dfsg.orig/debian/tcl-tls.override +++ tcltls-1.5.0.dfsg/debian/tcl-tls.override @@ -0,0 +1 @@ +tcl-tls: package-name-doesnt-match-sonames libtls0 --- tcltls-1.5.0.dfsg.orig/debian/rules +++ tcltls-1.5.0.dfsg/debian/rules @@ -0,0 +1,108 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# GNU copyright 1997 to 1999 by Joey Hess. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + + +# These are used for cross-compiling and for saving the configure script +# from having to guess our platform (since we know it already) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + + +include /usr/share/dpatch/dpatch.make + +#CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif + +config.status: configure + dh_testdir + cp -f /usr/share/misc/config.sub config/config.sub + cp -f /usr/share/misc/config.guess config/config.guess + touch aclocal.m4 + # Add here commands to configure the package. + ./configure \ + --host=$(DEB_HOST_GNU_TYPE) \ + --build=$(DEB_BUILD_GNU_TYPE) \ + --prefix=/usr \ + --mandir=\$${prefix}/share/man \ + --infodir=\$${prefix}/share/info \ + --with-ssl-dir=/usr \ + --with-tcl=/usr/lib/ \ + --with-tclinclude=/usr/include/tcl + +build: patch-stamp build-stamp + +build-stamp: config.status + dh_testdir + + # Add here commands to compile the package. + $(MAKE) + #/usr/bin/docbook-to-man debian/tcltls.sgml > tcltls.1 + + touch build-stamp + +clean: unpatch + dh_testdir + dh_testroot + # Add here commands to clean up after the build process. + [ ! -f Makefile ] || $(MAKE) distclean + rm -f config/config.guess config/config.sub aclocal.m4 + rm -rf debian/tcl-tls debian/patched debian/*.substvars + rm -rf debian/files + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/tcltls. + $(MAKE) install prefix=$(CURDIR)/debian/tcl-tls/usr + install -m 0644 libtls1.50.so \ + $(CURDIR)/debian/tcl-tls/usr/lib/libtls1.50.so + rm -rf $(CURDIR)/debian/tcl-tls/usr/bin + mv $(CURDIR)/debian/tcl-tls/usr/lib/tls1.50/ \ + $(CURDIR)/debian/tcl-tls/usr/share/tcltk/ + install -D -m 0644 debian/tcl-tls.override \ + $(CURDIR)/debian/tcl-tls/usr/share/lintian/overrides/tcl-tls + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs tls.htm + dh_installexamples tests/* + dh_installman + dh_link usr/lib/libtls1.50.so usr/lib/libtls.so.0 + dh_strip + dh_compress + dh_fixperms + dh_makeshlibs + dh_installdeb + tcltk-depends + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install patch unpatch --- tcltls-1.5.0.dfsg.orig/debian/watch +++ tcltls-1.5.0.dfsg/debian/watch @@ -0,0 +1,4 @@ +# Compulsory line, this is a version 3 file +version=3 +opts=dversionmangle=s/\.dfsg// \ + http://sf.net/tls/tls(.*)-src(.*)\.tar\.gz --- tcltls-1.5.0.dfsg.orig/debian/docs +++ tcltls-1.5.0.dfsg/debian/docs @@ -0,0 +1 @@ +README.txt --- tcltls-1.5.0.dfsg.orig/debian/README.source +++ tcltls-1.5.0.dfsg/debian/README.source @@ -0,0 +1,24 @@ +Tarball: +======== +The source directory has been renamed because it contained some CVS files and +directories that weren't needed. In order to get the same orig.tar.gz which has +been uploaded to debian you have to download the upstream source from +http://sourceforge.net/projects/tls/files/ and erase the following directories: + + * config/CVS + * tests/oldTests/CVS + * tests/CVS + * tests/certs/CVS + * CVS + +After removing them, the source directory has to be renamed from tls1.5/ to +tcltls-1.5.0.dfsg and then it has to be compressed using gzip -9 in order to +comply with Debian Policy. + +dpatch: +====== +The source package itself uses a mixture of dpatch and .diff.gz for the +modifications of the upstream source. If you want to change something it is +best to use the dpatch approach as documented in + + /usr/share/doc/dpatch/README.source.gz --- tcltls-1.5.0.dfsg.orig/debian/copyright +++ tcltls-1.5.0.dfsg/debian/copyright @@ -0,0 +1,50 @@ +This package was debianized by Søren Boll Overgaard on +Thu, 16 Oct 2003 22:33:45 +0000. + +The current Debian maintainer is Muammar El Khatib + +It was downloaded from http://tls.sf.net/ + +Upstream Author: Matt Newman + + +Copyright: © 2000 - 2008, Matt Newman. + +License: + +The authors hereby grant permission to use, copy, modify, distribute, +and license this software and its documentation for any purpose, provided +that existing copyright notices are retained in all copies and that this +notice is included verbatim in any distributions. No written agreement, +license, or royalty fee is required for any of the authorized uses. +Modifications to this software may be copyrighted by their authors +and need not follow the licensing terms described here, provided that +the new terms are clearly indicated on the first page of each file where +they apply. + +IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY +FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES +ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY +DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE +IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE +NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR +MODIFICATIONS. + +GOVERNMENT USE: If you are acquiring this software on behalf of the +U.S. government, the Government shall have only "Restricted Rights" +in the software and related documentation as defined in the Federal +Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2). If you +are acquiring the software on behalf of the Department of Defense, the +software shall be classified as "Commercial Computer Software" and the +Government shall have only "Restricted Rights" as defined in Clause +252.227-7013 (c) (1) of DFARs. Notwithstanding the foregoing, the +authors grant the U.S. Government and others acting in its behalf +permission to use and distribute the software in accordance with the +terms specified in this license. + +The Debian packaging is © 2008, Muammar El Khatib . --- tcltls-1.5.0.dfsg.orig/debian/patches/00list +++ tcltls-1.5.0.dfsg/debian/patches/00list @@ -0,0 +1,5 @@ +01_load_ssl_configuration +02_change_pkgIndex +03_change_pkgIndex.in +04_changing_simpleclient +05_changing_simpleserver --- tcltls-1.5.0.dfsg.orig/debian/patches/05_changing_simpleserver.dpatch +++ tcltls-1.5.0.dfsg/debian/patches/05_changing_simpleserver.dpatch @@ -0,0 +1,18 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 05_changing_simpleserver.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: A patch to change simpleserver + +@DPATCH@ + +--- simpleServer.tcl 2008-06-09 18:23:06.000000000 -0430 ++++ tcltls-1.5.0.dfsg/tests/simpleServer.tcl 2008-04-20 19:08:37.000000000 -0430 +@@ -1,6 +1,6 @@ + #!/bin/sh + # The next line is executed by /bin/sh, but not tcl \ +-exec tclsh8.3 "$0" ${1+"$@"} ++exec tclsh "$0" ${1+"$@"} + + package require tls + --- tcltls-1.5.0.dfsg.orig/debian/patches/03_change_pkgIndex.in.dpatch +++ tcltls-1.5.0.dfsg/debian/patches/03_change_pkgIndex.in.dpatch @@ -0,0 +1,17 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 03_change_pkgIndex.in.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Changing pkgIndex.in + +@DPATCH@ + +--- tcltls-1.5.0/pkgIndex.tcl.in 2003-12-15 14:46:20.000000000 -0400 ++++ pkgIndex.tcl.in 2007-04-11 13:26:57.000000000 -0400 +@@ -5,5 +5,5 @@ + # replace the original which didn't include the commands from "tls.tcl". + # + +-package ifneeded tls 1.5 "[list load [file join $dir @RELPATH@ @tls_LIB_FILE@] ] ; [list source [file join $dir tls.tcl] ]" ++package ifneeded tls 1.50 "[list load [file join /usr lib @tls_LIB_FILE@] ] ; [list source [file join $dir tls.tcl] ]" + --- tcltls-1.5.0.dfsg.orig/debian/patches/01_load_ssl_configuration.dpatch +++ tcltls-1.5.0.dfsg/debian/patches/01_load_ssl_configuration.dpatch @@ -0,0 +1,196 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 01_load_ssl_configuration.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Load SSL configuration + +@DPATCH@ +diff -urNad tcltls-1.5.0~/tls.c tcltls-1.5.0/tls.c +--- tcltls-1.5.0~/tls.c 2004-02-13 02:09:21.000000000 +0000 ++++ tcltls-1.5.0/tls.c 2006-01-20 12:32:31.000000000 +0000 +@@ -26,7 +26,12 @@ + #include "tlsInt.h" + #include "tclOpts.h" + #include +- ++#if OPENSSL_VERSION_NUMBER >= 0x0090800 ++#include ++#ifndef OPENSSL_NO_ENGINE ++#include ++#endif ++#endif + /* + * External functions + */ +@@ -1155,8 +1160,10 @@ + * A standard Tcl result. + * + * Side effects: +- * None. +- * ++ * req - none ++ * config - Openssl configuration file is loaded ++ * engine - specifig engine is loaded or configured ++ * + *------------------------------------------------------------------- + */ + static int +@@ -1166,8 +1173,22 @@ + int objc; + Tcl_Obj *CONST objv[]; + { +- const char *commands [] = { "req", NULL }; +- enum command { C_REQ, C_DUMMY }; ++ const char *commands [] = { "req", ++#if OPENSSL_VERSION_NUMBER >= 0x0090800L ++ "config", ++#ifndef OPENSSL_NO_ENGINE ++ "engine", ++#endif ++#endif ++ NULL }; ++ enum command { C_REQ, ++#if OPENSSL_VERSION_NUMBER >= 0x0090800L ++ C_CONFIG, ++#ifndef OPENSSL_NO_ENGINE ++ C_ENGINE, ++#endif ++#endif ++ C_DUMMY }; + int cmd; + + if (objc < 2) { +@@ -1302,6 +1323,48 @@ + } + } + break; ++#if OPENSSL_VERSION_NUMBER >= 0x0090800L ++ case C_CONFIG: ++ if (objc<2 || objc>3) { ++ Tcl_WrongNumArgs(interp,2,objv,"?filename?"); ++ return TCL_ERROR; ++ } else if (objc == 2) { ++ OPENSSL_config(NULL); ++ } else { ++ OPENSSL_config(Tcl_GetString(objv[2])); ++ } ++ break; ++#ifndef OPENSSL_NO_ENGINE ++ case C_ENGINE: ++ { ENGINE *e; ++ static int loaded_engines = 0; ++ if (objc!=3) { ++ Tcl_WrongNumArgs(interp,2,objv,"engine_id"); ++ return TCL_ERROR; ++ } ++ if (!loaded_engines) { ++ ENGINE_load_builtin_engines(); ++ loaded_engines=1; ++ } ++ if ((e= ENGINE_by_id(Tcl_GetString(objv[2])))==NULL) { ++ Tcl_AppendResult(interp,"failed to load engine ", ++ Tcl_GetString(objv[2]), ++ "\n",ERR_error_string(ERR_get_error(),NULL), ++ NULL); ++ return TCL_ERROR; ++ } ++ if (!ENGINE_set_default(e,ENGINE_METHOD_ALL)) { ++ Tcl_AppendResult(interp,"Failed to enable engine ", ++ Tcl_GetString(objv[2]), ++ "\n",ERR_error_string(ERR_get_error(),NULL), ++ NULL); ++ return TCL_ERROR; ++ } ++ ENGINE_free(e); ++ } ++ break; ++#endif ++#endif + } + return TCL_OK; + } +diff -urNad tcltls-1.5.0~/tls.htm tcltls-1.5.0/tls.htm +--- tcltls-1.5.0~/tls.htm 2004-02-13 02:09:21.000000000 +0000 ++++ tcltls-1.5.0/tls.htm 2006-01-20 12:32:31.000000000 +0000 +@@ -31,6 +31,7 @@ +
tls::import channel ?options?
+
tls::ciphers protocol ?verbose?
+
tls::version
++
tls::misc subcommand ?args?
+ + +
COMMANDS
+@@ -62,7 +63,8 @@ + tls::import channel ?options?
+ tls::ciphers + protocol ?verbose?
+-tls::version ++tls::version
++tls::misc subcommand ?args?
+

+ +

DESCRIPTION

+@@ -223,7 +225,62 @@ +
tls::version
+
Returns the version string defined by OpenSSL.
+ +- ++
tls::misc ++
Miscellaneous openssl functions. This command provides functions ++which are not directly related to TLS, but neccessary for proper ++operations. Following subcommands are supportd ++
++
rec keysize keyfile certfile ?info?
++

++Generates private key and certificate request in the keyfile and ++certfile. Currently only RSA keys are supported. Keysize is specified in ++bits. It is typically ++1024, because 512-bit keys are totally insecure, and 2048 bits too ++computational expensive. ++

++

++This command is here, because some tls applications, notably web ++browsers should have ability to generate requests for client ++certificates. ++

++

++Optional info argument is the list of key-value pairs which ++can contain following request attributes: ++

    ++
  1. days - how long certificate should be valid ++
  2. serial - serial number of certificate ++
  3. C - Country part of certificate subject ++
  4. ST - State part of certificate subject ++
  5. L -locality ++
  6. O - organization ++
  7. OU - organization unit ++
  8. CN - Common Name ++
  9. Email email address of certificate subject ++
++Default values for these options are obtained from OpenSSL configuration ++file if one is loaded by tls::misc config. ++
++
config ?filename? ++
Loads an OpenSSL configuration file. If no filename ++argument is provided, loads default configuration file, which is ++hardcoded into OpenSSL. Otherwise loads specified file. This command ++doesn't report error if file doesn't exist. ++
++
engine engine_id ++

Loads alternate (hardware) implementation of cryptoalgorithms - ++engine in OpenSSL terminology and makes this implementation default for ++all algorithms, supported by particular engine. ++

++

++For now there is no way to send control commands to engine and specify ++path to dynamically loadable engine explicitely. So, only builtin ++engines and engines located in the default OpenSSL engine directory ++could be loaded. ++

++
++
++
++
+

CALLBACK OPTIONS

+ +

--- tcltls-1.5.0.dfsg.orig/debian/patches/02_change_pkgIndex.dpatch +++ tcltls-1.5.0.dfsg/debian/patches/02_change_pkgIndex.dpatch @@ -0,0 +1,16 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 02_change_pkgIndex.dpatch by Muammar El Khatib +## +## DP: Changing pkgIndex + +@DPATCH@ + +--- tcltls-1.5.0/pkgIndex.tcl 2007-04-10 20:30:26.000000000 -0400 ++++ pkgIndex.tcl 2007-04-11 13:26:57.000000000 -0400 +@@ -5,5 +5,5 @@ + # replace the original which didn't include the commands from "tls.tcl". + # + +-package ifneeded tls 1.5 "[list load [file join $dir .. libtls1.50.so] ] ; [list source [file join $dir tls.tcl] ]" ++package ifneeded tls 1.50 "[list load [file join /usr lib libtls1.50.so] ] ; [list source [file join $dir tls.tcl] ]" + --- tcltls-1.5.0.dfsg.orig/debian/patches/04_changing_simpleclient.dpatch +++ tcltls-1.5.0.dfsg/debian/patches/04_changing_simpleclient.dpatch @@ -0,0 +1,18 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 04_changing_simpleclient.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: A patch to change simpleclient + +@DPATCH@ + +--- simpleClient.tcl 2008-06-09 18:11:05.000000000 -0430 ++++ tcltls-1.5.0.dfsg/tests/simpleClient.tcl 2008-04-20 19:08:37.000000000 -0430 +@@ -1,6 +1,6 @@ + #!/bin/sh + # The next line is executed by /bin/sh, but not tcl \ +-exec tclsh8.3 "$0" ${1+"$@"} ++exec tclsh "$0" ${1+"$@"} + + package require tls +