mirror of https://github.com/openssl/openssl.git
				
				
				
			Don#t auto-generate crypto/pem/pem.h -- a fixed file is fine for it.
Submitted by: Reviewed by: PR:
This commit is contained in:
		
							parent
							
								
									f73e07cf42
								
							
						
					
					
						commit
						5fd4e2b16b
					
				
							
								
								
									
										3
									
								
								CHANGES
								
								
								
								
							
							
						
						
									
										3
									
								
								CHANGES
								
								
								
								
							|  | @ -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] | ||||
| 
 | ||||
|  |  | |||
							
								
								
									
										52
									
								
								Configure
								
								
								
								
							
							
						
						
									
										52
									
								
								Configure
								
								
								
								
							|  | @ -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. | ||||
|  | @ -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 | ||||
|  | @ -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); | ||||
| 
 | ||||
| 
 | ||||
| } | ||||
|  |  | |||
|  | @ -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 | ||||
| 
 | ||||
|  | @ -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) | ||||
|  | @ -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 | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,122 +0,0 @@ | |||
| /* 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); | ||||
| 	} | ||||
|  | @ -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…
	
		Reference in New Issue