Loading CHANGES +3 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,9 @@ Changes between 0.9.2b and 0.9.3 *) Don't auto-generate pem.h. [Bodo Moeller] *) Introduce type-safe ASN.1 SETs. [Ben Laurie] Loading Configure +26 −26 Original line number Diff line number Diff line Loading @@ -236,9 +236,9 @@ my %table=( # Miscellaneous hacks: this is designed to allow environments where the "one # makefile" option does not auto build all files. # The first six fields are the hard coded versions of the stuff generated by # ctx_size for pem.h: that is EVP_ENCODE_CTX_SIZE, EVP_MD_SIZE EVP_MD_CTX_SIZE, # EVP_CIPHER_SIZE, EVP_CIPHER_CTX_SIZE and EVP_MAX_MD_SIZE respectively. ## # The first six fields are the hard coded versions of the stuff generated by ## # ctx_size for pem.h: that is EVP_ENCODE_CTX_SIZE, EVP_MD_SIZE EVP_MD_CTX_SIZE, ## # EVP_CIPHER_SIZE, EVP_CIPHER_CTX_SIZE and EVP_MAX_MD_SIZE respectively. # If the seventh field is 1 then auto generate # crypto/date.h # Need to add Win16 and others here. Loading Loading @@ -636,12 +636,12 @@ if(defined $misc_table{$target}) { $max_md_size, $date_fix) = split(/\s*:\s*/,$misc_table{$target} . ":", -1); #print "EVP_ENCODE_CTX_SIZE $enc_ctx\n"; #print "EVP_MD_SIZE $md_size\n"; #print "EVP_MD_CTX_SIZE $md_ctx_size\n"; #print "EVP_CIPHER_SIZE $cipher_size\n"; #print "EVP_CIPHER_CTX_SIZE $cipher_ctx_size\n"; #print "EVP_MAX_MD_SIZE $max_md_size\n"; ## #print "EVP_ENCODE_CTX_SIZE $enc_ctx\n"; ## #print "EVP_MD_SIZE $md_size\n"; ## #print "EVP_MD_CTX_SIZE $md_ctx_size\n"; ## #print "EVP_CIPHER_SIZE $cipher_size\n"; ## #print "EVP_CIPHER_CTX_SIZE $cipher_ctx_size\n"; ## #print "EVP_MAX_MD_SIZE $max_md_size\n"; #printf "Date fix: %s\n", $date_fix ? "Yes" : "No"; # Fix the date Loading @@ -652,23 +652,23 @@ if($date_fix) { close(OUT); } open (IN, "crypto/pem/pem.org") || die "Can't open crypto/pem/pem.org"; open (OUT, ">crypto/pem/pem.h") || die "Can't create crypto/pem/pem.h"; # Now fix up pem.h while(<IN>) { chop; s/^(#define EVP_ENCODE_CTX_SIZE).*$/$1 $enc_ctx/; s/^(#define EVP_MD_SIZE).*$/$1 $md_size/; s/^(#define EVP_MD_CTX_SIZE).*$/$1 $md_ctx_size/; s/^(#define EVP_CIPHER_SIZE).*$/$1 $cipher_size/; s/^(#define EVP_CIPHER_CTX_SIZE).*$/$1 $cipher_ctx_size/; s/^(#define EVP_MAX_MD_SIZE).*$/$1 $max_md_size/; print OUT "$_\n"; } close (IN); close (OUT); ## open (IN, "crypto/pem/pem.org") || die "Can't open crypto/pem/pem.org"; ## open (OUT, ">crypto/pem/pem.h") || die "Can't create crypto/pem/pem.h"; ## ## # Now fix up pem.h ## while(<IN>) { ## chop; ## s/^(#define EVP_ENCODE_CTX_SIZE).*$/$1 $enc_ctx/; ## s/^(#define EVP_MD_SIZE).*$/$1 $md_size/; ## s/^(#define EVP_MD_CTX_SIZE).*$/$1 $md_ctx_size/; ## s/^(#define EVP_CIPHER_SIZE).*$/$1 $cipher_size/; ## s/^(#define EVP_CIPHER_CTX_SIZE).*$/$1 $cipher_ctx_size/; ## s/^(#define EVP_MAX_MD_SIZE).*$/$1 $max_md_size/; ## print OUT "$_\n"; ## } ## ## close (IN); ## close (OUT); } Loading crypto/pem/Makefile.ssl +3 −13 Original line number Diff line number Diff line Loading @@ -21,8 +21,6 @@ GENERAL=Makefile TEST= APPS= CTX_SIZE= ctx_size LIB=$(TOP)/libcrypto.a LIBSRC= pem_sign.c pem_seal.c pem_info.c pem_lib.c pem_all.c $(ERRC).c Loading @@ -38,15 +36,7 @@ ALL= $(GENERAL) $(SRC) $(HEADER) top: (cd ../..; $(MAKE) DIRS=crypto SDIRS=$(DIR) sub_all) all: pem.h lib pem.h: $(CTX_SIZE) pem.org ./$(CTX_SIZE) <pem.org >pem.new if [ -f pem.h ]; then mv -f pem.h pem.old; fi mv -f pem.new pem.h $(CTX_SIZE): $(CTX_SIZE).o $(CC) $(CFLAGS) -o $(CTX_SIZE) $(CTX_SIZE).o all: lib lib: $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ) Loading Loading @@ -78,14 +68,14 @@ lint: lint -DLINT $(INCLUDES) $(SRC)>fluff depend: $(MAKEDEPEND) $(INCLUDES) $(CTX_SIZE).c $(LIBSRC) $(MAKEDEPEND) $(INCLUDES) $(LIBSRC) dclean: $(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new mv -f Makefile.new $(MAKEFILE) clean: rm -f $(CTX_SIZE) *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff errors: $(ERRC).c Loading crypto/pem/ctx_size.cdeleted 100644 → 0 +0 −122 Original line number Diff line number Diff line /* crypto/pem/ctx_size.c */ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) * All rights reserved. * * This package is an SSL implementation written * by Eric Young (eay@cryptsoft.com). * The implementation was written so as to conform with Netscapes SSL. * * This library is free for commercial and non-commercial use as long as * the following conditions are aheared to. The following conditions * apply to all code found in this distribution, be it the RC4, RSA, * lhash, DES, etc., code; not just the SSL code. The SSL documentation * included with this distribution is covered by the same copyright terms * except that the holder is Tim Hudson (tjh@cryptsoft.com). * * Copyright remains Eric Young's, and as such any Copyright notices in * the code are not to be removed. * If this package is used in a product, Eric Young should be given attribution * as the author of the parts of the library used. * This can be in the form of a textual message at program startup or * in documentation (online or textual) provided with the package. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * "This product includes cryptographic software written by * Eric Young (eay@cryptsoft.com)" * The word 'cryptographic' can be left out if the rouines from the library * being used are not cryptographic related :-). * 4. If you include any Windows specific code (or a derivative thereof) from * the apps directory (application code) you must include an acknowledgement: * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" * * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * The licence and distribution terms for any publically available version or * derivative of this code cannot be changed. i.e. this code cannot simply be * copied and put under another distribution licence * [including the GNU Public Licence.] */ #include <stdio.h> #include <string.h> #include "evp.h" int main(argc,argv) int argc; char *argv[]; { int i,j; char buf[256]; for (;;) { char *str; buf[0]='\0'; fgets(buf,256,stdin); if (buf[0] == '\0') break; str="#define EVP_ENCODE_CTX_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { printf("%s %d\n",str,(int)sizeof(EVP_ENCODE_CTX)); continue; } str="#define EVP_MD_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { printf("%s %d\n",str,(int)sizeof(EVP_MD)); continue; } str="#define EVP_MD_CTX_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { printf("%s %d\n",str,(int)sizeof(EVP_MD_CTX)); continue; } str="#define EVP_CIPHER_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { printf("%s %d\n",str,(int)sizeof(EVP_CIPHER)); continue; } str="#define EVP_CIPHER_CTX_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { printf("%s %d\n",str,(int)sizeof(EVP_CIPHER_CTX)); continue; } str="#define EVP_MAX_MD_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { i=MD2_DIGEST_LENGTH; j=MD5_DIGEST_LENGTH; if (j > i) i=j; j=SHA_DIGEST_LENGTH; if (j > i) i=j; printf("%s %d\n",str,i); continue; } fputs(buf,stdout); } exit(0); } crypto/pem/pem.org→crypto/pem/pem.h +0 −30 Original line number Diff line number Diff line Loading @@ -121,36 +121,6 @@ extern "C" { #define PEM_STRING_SSL_SESSION "SSL SESSION PARAMETERS" #define PEM_STRING_DSAPARAMS "DSA PARAMETERS" #ifndef HEADER_ENVELOPE_H #define EVP_ENCODE_CTX_SIZE 92 #define EVP_MD_SIZE 48 #define EVP_MD_CTX_SIZE 152 #define EVP_CIPHER_SIZE 28 #define EVP_CIPHER_CTX_SIZE 4212 #define EVP_MAX_MD_SIZE 20 typedef struct evp_encode_ctx_st { char data[EVP_ENCODE_CTX_SIZE]; } EVP_ENCODE_CTX; typedef struct env_md_ctx_st { char data[EVP_MD_CTX_SIZE]; } EVP_MD_CTX; typedef struct evp_cipher_st { char data[EVP_CIPHER_SIZE]; } EVP_CIPHER; typedef struct evp_cipher_ctx_st { char data[EVP_CIPHER_CTX_SIZE]; } EVP_CIPHER_CTX; #endif typedef struct PEM_Encode_Seal_st { Loading Loading
CHANGES +3 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,9 @@ Changes between 0.9.2b and 0.9.3 *) Don't auto-generate pem.h. [Bodo Moeller] *) Introduce type-safe ASN.1 SETs. [Ben Laurie] Loading
Configure +26 −26 Original line number Diff line number Diff line Loading @@ -236,9 +236,9 @@ my %table=( # Miscellaneous hacks: this is designed to allow environments where the "one # makefile" option does not auto build all files. # The first six fields are the hard coded versions of the stuff generated by # ctx_size for pem.h: that is EVP_ENCODE_CTX_SIZE, EVP_MD_SIZE EVP_MD_CTX_SIZE, # EVP_CIPHER_SIZE, EVP_CIPHER_CTX_SIZE and EVP_MAX_MD_SIZE respectively. ## # The first six fields are the hard coded versions of the stuff generated by ## # ctx_size for pem.h: that is EVP_ENCODE_CTX_SIZE, EVP_MD_SIZE EVP_MD_CTX_SIZE, ## # EVP_CIPHER_SIZE, EVP_CIPHER_CTX_SIZE and EVP_MAX_MD_SIZE respectively. # If the seventh field is 1 then auto generate # crypto/date.h # Need to add Win16 and others here. Loading Loading @@ -636,12 +636,12 @@ if(defined $misc_table{$target}) { $max_md_size, $date_fix) = split(/\s*:\s*/,$misc_table{$target} . ":", -1); #print "EVP_ENCODE_CTX_SIZE $enc_ctx\n"; #print "EVP_MD_SIZE $md_size\n"; #print "EVP_MD_CTX_SIZE $md_ctx_size\n"; #print "EVP_CIPHER_SIZE $cipher_size\n"; #print "EVP_CIPHER_CTX_SIZE $cipher_ctx_size\n"; #print "EVP_MAX_MD_SIZE $max_md_size\n"; ## #print "EVP_ENCODE_CTX_SIZE $enc_ctx\n"; ## #print "EVP_MD_SIZE $md_size\n"; ## #print "EVP_MD_CTX_SIZE $md_ctx_size\n"; ## #print "EVP_CIPHER_SIZE $cipher_size\n"; ## #print "EVP_CIPHER_CTX_SIZE $cipher_ctx_size\n"; ## #print "EVP_MAX_MD_SIZE $max_md_size\n"; #printf "Date fix: %s\n", $date_fix ? "Yes" : "No"; # Fix the date Loading @@ -652,23 +652,23 @@ if($date_fix) { close(OUT); } open (IN, "crypto/pem/pem.org") || die "Can't open crypto/pem/pem.org"; open (OUT, ">crypto/pem/pem.h") || die "Can't create crypto/pem/pem.h"; # Now fix up pem.h while(<IN>) { chop; s/^(#define EVP_ENCODE_CTX_SIZE).*$/$1 $enc_ctx/; s/^(#define EVP_MD_SIZE).*$/$1 $md_size/; s/^(#define EVP_MD_CTX_SIZE).*$/$1 $md_ctx_size/; s/^(#define EVP_CIPHER_SIZE).*$/$1 $cipher_size/; s/^(#define EVP_CIPHER_CTX_SIZE).*$/$1 $cipher_ctx_size/; s/^(#define EVP_MAX_MD_SIZE).*$/$1 $max_md_size/; print OUT "$_\n"; } close (IN); close (OUT); ## open (IN, "crypto/pem/pem.org") || die "Can't open crypto/pem/pem.org"; ## open (OUT, ">crypto/pem/pem.h") || die "Can't create crypto/pem/pem.h"; ## ## # Now fix up pem.h ## while(<IN>) { ## chop; ## s/^(#define EVP_ENCODE_CTX_SIZE).*$/$1 $enc_ctx/; ## s/^(#define EVP_MD_SIZE).*$/$1 $md_size/; ## s/^(#define EVP_MD_CTX_SIZE).*$/$1 $md_ctx_size/; ## s/^(#define EVP_CIPHER_SIZE).*$/$1 $cipher_size/; ## s/^(#define EVP_CIPHER_CTX_SIZE).*$/$1 $cipher_ctx_size/; ## s/^(#define EVP_MAX_MD_SIZE).*$/$1 $max_md_size/; ## print OUT "$_\n"; ## } ## ## close (IN); ## close (OUT); } Loading
crypto/pem/Makefile.ssl +3 −13 Original line number Diff line number Diff line Loading @@ -21,8 +21,6 @@ GENERAL=Makefile TEST= APPS= CTX_SIZE= ctx_size LIB=$(TOP)/libcrypto.a LIBSRC= pem_sign.c pem_seal.c pem_info.c pem_lib.c pem_all.c $(ERRC).c Loading @@ -38,15 +36,7 @@ ALL= $(GENERAL) $(SRC) $(HEADER) top: (cd ../..; $(MAKE) DIRS=crypto SDIRS=$(DIR) sub_all) all: pem.h lib pem.h: $(CTX_SIZE) pem.org ./$(CTX_SIZE) <pem.org >pem.new if [ -f pem.h ]; then mv -f pem.h pem.old; fi mv -f pem.new pem.h $(CTX_SIZE): $(CTX_SIZE).o $(CC) $(CFLAGS) -o $(CTX_SIZE) $(CTX_SIZE).o all: lib lib: $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ) Loading Loading @@ -78,14 +68,14 @@ lint: lint -DLINT $(INCLUDES) $(SRC)>fluff depend: $(MAKEDEPEND) $(INCLUDES) $(CTX_SIZE).c $(LIBSRC) $(MAKEDEPEND) $(INCLUDES) $(LIBSRC) dclean: $(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new mv -f Makefile.new $(MAKEFILE) clean: rm -f $(CTX_SIZE) *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff rm -f *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff errors: $(ERRC).c Loading
crypto/pem/ctx_size.cdeleted 100644 → 0 +0 −122 Original line number Diff line number Diff line /* crypto/pem/ctx_size.c */ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) * All rights reserved. * * This package is an SSL implementation written * by Eric Young (eay@cryptsoft.com). * The implementation was written so as to conform with Netscapes SSL. * * This library is free for commercial and non-commercial use as long as * the following conditions are aheared to. The following conditions * apply to all code found in this distribution, be it the RC4, RSA, * lhash, DES, etc., code; not just the SSL code. The SSL documentation * included with this distribution is covered by the same copyright terms * except that the holder is Tim Hudson (tjh@cryptsoft.com). * * Copyright remains Eric Young's, and as such any Copyright notices in * the code are not to be removed. * If this package is used in a product, Eric Young should be given attribution * as the author of the parts of the library used. * This can be in the form of a textual message at program startup or * in documentation (online or textual) provided with the package. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * "This product includes cryptographic software written by * Eric Young (eay@cryptsoft.com)" * The word 'cryptographic' can be left out if the rouines from the library * being used are not cryptographic related :-). * 4. If you include any Windows specific code (or a derivative thereof) from * the apps directory (application code) you must include an acknowledgement: * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" * * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * The licence and distribution terms for any publically available version or * derivative of this code cannot be changed. i.e. this code cannot simply be * copied and put under another distribution licence * [including the GNU Public Licence.] */ #include <stdio.h> #include <string.h> #include "evp.h" int main(argc,argv) int argc; char *argv[]; { int i,j; char buf[256]; for (;;) { char *str; buf[0]='\0'; fgets(buf,256,stdin); if (buf[0] == '\0') break; str="#define EVP_ENCODE_CTX_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { printf("%s %d\n",str,(int)sizeof(EVP_ENCODE_CTX)); continue; } str="#define EVP_MD_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { printf("%s %d\n",str,(int)sizeof(EVP_MD)); continue; } str="#define EVP_MD_CTX_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { printf("%s %d\n",str,(int)sizeof(EVP_MD_CTX)); continue; } str="#define EVP_CIPHER_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { printf("%s %d\n",str,(int)sizeof(EVP_CIPHER)); continue; } str="#define EVP_CIPHER_CTX_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { printf("%s %d\n",str,(int)sizeof(EVP_CIPHER_CTX)); continue; } str="#define EVP_MAX_MD_SIZE "; if (strncmp(buf,str,strlen(str)) == 0) { i=MD2_DIGEST_LENGTH; j=MD5_DIGEST_LENGTH; if (j > i) i=j; j=SHA_DIGEST_LENGTH; if (j > i) i=j; printf("%s %d\n",str,i); continue; } fputs(buf,stdout); } exit(0); }
crypto/pem/pem.org→crypto/pem/pem.h +0 −30 Original line number Diff line number Diff line Loading @@ -121,36 +121,6 @@ extern "C" { #define PEM_STRING_SSL_SESSION "SSL SESSION PARAMETERS" #define PEM_STRING_DSAPARAMS "DSA PARAMETERS" #ifndef HEADER_ENVELOPE_H #define EVP_ENCODE_CTX_SIZE 92 #define EVP_MD_SIZE 48 #define EVP_MD_CTX_SIZE 152 #define EVP_CIPHER_SIZE 28 #define EVP_CIPHER_CTX_SIZE 4212 #define EVP_MAX_MD_SIZE 20 typedef struct evp_encode_ctx_st { char data[EVP_ENCODE_CTX_SIZE]; } EVP_ENCODE_CTX; typedef struct env_md_ctx_st { char data[EVP_MD_CTX_SIZE]; } EVP_MD_CTX; typedef struct evp_cipher_st { char data[EVP_CIPHER_SIZE]; } EVP_CIPHER; typedef struct evp_cipher_ctx_st { char data[EVP_CIPHER_CTX_SIZE]; } EVP_CIPHER_CTX; #endif typedef struct PEM_Encode_Seal_st { Loading