Make the perl module compile and eliminate some of the warnings.
authorUlf Möller <ulf@openssl.org>
Thu, 22 Jul 1999 16:10:31 +0000 (16:10 +0000)
committerUlf Möller <ulf@openssl.org>
Thu, 22 Jul 1999 16:10:31 +0000 (16:10 +0000)
Still doesn't work (the destructor on BIO and SSL is called immediately
after creating the object. Why that??)

13 files changed:
Makefile.org
crypto/.cvsignore
crypto/ex_data.c
perl/MANIFEST
perl/Makefile.PL
perl/OpenSSL.pm
perl/OpenSSL.xs
perl/openssl.h
perl/openssl_bio.xs
perl/openssl_bn.xs
perl/openssl_cipher.xs
perl/openssl_digest.xs
perl/openssl_ssl.xs

index d53dbe6076a770e3ae17914ed455ebb5e186f79a..ec50e75c3a7385acf17229a90c3f6401160df0b1 100644 (file)
@@ -180,6 +180,7 @@ all: Makefile.ssl
        (cd $$i && echo "making all in $$i..." && \
        $(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' SDIRS='${SDIRS}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' all ) || exit 1; \
        done;
+       cd perl; $(PERL) Makefile.PL; make
 
 sub_all:
        @for i in $(DIRS) ;\
@@ -207,8 +208,7 @@ linux-shared:
 
 Makefile.ssl: Makefile.org
        @echo "Makefile.ssl is older than Makefile.org."
-       @echo "Reconfigure the source tree (via 'perl Configure' or 'sh config')"
-       @echo "and update the error lists (via 'make errors'), please."
+       @echo "Reconfigure the source tree (via './config' or 'perl Configure'), please."
        @false
 
 libclean:
index ce36d588f932d0620e86244a27c129fe14c31a66..6b86a0a8dc492e7389596eb8ee91890fd018850d 100644 (file)
@@ -1,4 +1,4 @@
 lib
-date.h
+buildinf.h
 opensslconf.h
 Makefile.save
index 741bb570f067d3a28ecfae8ea0fbb90b59c585c2..176574766b838f893c019e0e46f4a29848889db7 100644 (file)
@@ -141,7 +141,7 @@ char *CRYPTO_get_ex_data(CRYPTO_EX_DATA *ad, int idx)
                return(sk_value(ad->sk,idx));
        }
 
-/* The callback is called with the 'object', which is the origional data object
+/* The callback is called with the 'object', which is the original data object
  * being duplicated, a pointer to the
  * 'new' object to be inserted, the index, and the argi/argp
  */
index a7046cf28c840d43eeec7d9e4ad8decf159bc30b..80c900769d0b7a0f0e9d0471b88edea685b84911 100644 (file)
@@ -12,7 +12,6 @@ openssl_digest.xs
 openssl_err.xs
 openssl_ssl.xs
 openssl_x509.xs
-openssl_cb.c
 t/01-use.t
 t/02-version.t
 t/03-bio.t
index 09eb93653b62a89dd7e9eb4302fcf917f3daf53b..2a67ad061d5cefc1c13bcc1d0e6bb8aac32a239a 100644 (file)
@@ -2,7 +2,11 @@
 ##  Makefile.PL -- Perl MakeMaker specification
 ##
 
-$V = '0.9.2b';
+open(IN,"<../Makefile.ssl") || die "unable to open Makefile.ssl!\n";
+while(<IN>) {
+    $V=$1 if (/^VERSION=(.*)$/);
+}
+close(IN);
 print "Configuring companion Perl module for OpenSSL $V\n";
 
 use ExtUtils::MakeMaker;
@@ -18,7 +22,6 @@ WriteMakefile(
     'DEFINE'        => '',
     'INC'           => '-I../include',
     'H'             => ['openssl.h'],
-    'C'             => ['openssl_cb.c'],
     'OBJECT' =>
         'OpenSSL.o ' .
         'openssl_bio.o ' .
index 7711c332ca81d03d368064576f0c63f5301b6ee1..ae7265a21d9563b08581153f7df1e1cd9b0abe06 100644 (file)
@@ -11,7 +11,7 @@ use DynaLoader;
 @ISA    = qw(Exporter DynaLoader);
 @EXPORT = qw();
 
-$VERSION = '0.922';
+$VERSION = '0.94';
 bootstrap OpenSSL;
 
 @OpenSSL::BN::ISA        = qw(OpenSSL::ERR);
index 9af3113f76b0abb43d2a7d4deeaf5609b46decc0..2267168b79a95cea9b4998d17eb54ba0d2b49e4c 100644 (file)
@@ -64,6 +64,8 @@ ex_cleanup(obj, data, ad, idx, argl, argp)
 
 MODULE = OpenSSL  PACKAGE = OpenSSL
 
+PROTOTYPES: ENABLE
+
 BOOT:
     boot_bio();
     boot_cipher();
index 52e6cfc89a060e48295a409f534f1718eabe7fa7..2712324a302a3d60fa21e4cbfea67f02718080ad 100644 (file)
@@ -60,7 +60,7 @@ extern "C" {
 #endif
 
 #include "EXTERN.h"
-#include <openssl/perl.h>
+#include "perl.h"
 #include "XSUB.h"
 
 #ifdef __cplusplus
index 346ead441ff4312c9504b6788e244873bc0e4bd0..06d61af1305234d3a24c090a7256f424a47eed3c 100644 (file)
@@ -66,6 +66,7 @@ boot_bio(void)
 
 MODULE = OpenSSL::BIO  PACKAGE = OpenSSL::BIO  PREFIX = p5_BIO_
 
+PROTOTYPES: ENABLE
 VERSIONCHECK: DISABLE
 
 void
@@ -216,7 +217,7 @@ p5_BIO_pop(b)
              * perl library, in which case it will have a perl
              * SV, otherwise it will have been created internally,
              * inside OpenSSL.  For the 'pushed in', it needs
-             * the reference count decememted. */
+             * the reference count decremented. */
             arg = (SV *)BIO_get_ex_data(bio, p5_bio_ex_bio_ptr);
             if (arg == NULL) {
                 arg = new_ref("OpenSSL::BIO",(char *)bio,0);
index 359e9066519e380545986d92cb1b04300f87a1a3..f79bf879e8bca518063912fd20644d51cfa59461 100644 (file)
@@ -72,6 +72,7 @@ char *arg;
 
 MODULE =  OpenSSL::BN  PACKAGE = OpenSSL::BN   PREFIX = p5_BN_
 
+PROTOTYPES: ENABLE
 VERSIONCHECK: DISABLE
 
 void
index fb4c63299512eeb9d61510dd0eb74854374fc79d..e9ff2a8f7905c67bb39746cad142777119b00e5e 100644 (file)
@@ -9,13 +9,14 @@ int boot_cipher()
 
 MODULE =  OpenSSL::Cipher      PACKAGE = OpenSSL::Cipher PREFIX = p5_EVP_C_
 
+PROTOTYPES: ENABLE
 VERSIONCHECK: DISABLE
 
 void
 p5_EVP_C_new(...)
        PREINIT:
                EVP_CIPHER_CTX *ctx;
-               EVP_CIPHER *c;
+               const EVP_CIPHER *c;
                char *name;
        PPCODE:
                if ((items == 1) && SvPOK(ST(0)))
index e4bc29ea8950668aa618d560ffdcb317b1e9b6c5..6cd3018e9f210b1308b2d3f4940568c78ae2ab57 100644 (file)
@@ -23,7 +23,7 @@ void
 p5_EVP_MD_new(...)
        PREINIT:
                EVP_MD_CTX *ctx;
-               EVP_MD *md;
+               const EVP_MD *md;
                char *name;
        PPCODE:
                if ((items == 1) && SvPOK(ST(0)))
index 7022c468f2f7172f293c0adb7deb847eb74100e1..c7d1b171abfa8dabbb2e9264f643ccc8d8184270 100644 (file)
@@ -60,6 +60,7 @@ int boot_ssl()
 
 MODULE =  OpenSSL::SSL PACKAGE = OpenSSL::SSL::CTX PREFIX = p5_SSL_CTX_
 
+PROTOTYPES: ENABLE
 VERSIONCHECK: DISABLE
 
 void
@@ -75,7 +76,7 @@ p5_SSL_CTX_new(...)
                else if ((items == 2) && SvPOK(ST(1)))
                        method=SvPV(ST(1),na);
                else
-                       croak("Usage: OpenSSL::SSL_CTX::new(type)");
+                       croak("Usage: OpenSSL::SSL::CTX::new(type)");
                        
                if (strcmp(method,"SSLv3") == 0)
                        meth=SSLv3_method();
@@ -95,9 +96,15 @@ p5_SSL_CTX_new(...)
                        meth=SSLv2_client_method();
                else if (strcmp(method,"SSLv2_server") == 0)
                        meth=SSLv2_server_method();
+               else if (strcmp(method,"TLSv1") == 0)
+                       meth=TLSv1_method();
+               else if (strcmp(method,"TLSv1_client") == 0)
+                       meth=TLSv1_client_method();
+               else if (strcmp(method,"TLSv1_server") == 0)
+                       meth=TLSv1_server_method();
                else
                        {
-                       croak("Not passed a valid SSL method name, should be 'SSLv[23] [client|server]'");
+                       croak("Not a valid SSL method name, should be 'SSLv[23] [client|server]'");
                        }
                EXTEND(sp,1);
                PUSHs(sv_newmortal());
@@ -176,7 +183,6 @@ p5_SSL_new(...)
                SV *sv_ctx;
                SSL_CTX *ctx;
                SSL *ssl;
-               int i;
                SV *arg;
        PPCODE:
                pr_name("p5_SSL_new");
@@ -198,8 +204,8 @@ p5_SSL_new(...)
 
                /* Now this is being a little hairy, we keep a pointer to
                 * our perl reference.  We need to do a different one
-                * to the one we return because it will have it's reference
-                * count droped to 0 apon return and if we up its reference
+                * to the one we return because it will have its reference
+                * count dropped to 0 upon return and if we up its reference
                 * count, it will never be DESTROYED */
                arg=newSVsv(ST(0));
                SSL_set_ex_data(ssl,p5_ssl_ex_ssl_ptr,(char *)arg);
@@ -363,7 +369,9 @@ p5_SSL_DESTROY(ssl)
        SSL *ssl;
        CODE:
        pr_name_dd("p5_SSL_DESTROY",ssl->references,ssl->ctx->references);
+#ifdef DEBUG
        fprintf(stderr,"SSL_DESTROY %d\n",ssl->references);
+#endif
        SSL_free(ssl);
 
 int