Compare commits
	
		
			936 Commits
		
	
	
		
			BEFORE_eng
			...
			OpenSSL_0_
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					86cb01870c | ||
| 
						 | 
					19086ef67b | ||
| 
						 | 
					ce3fc3956d | ||
| 
						 | 
					787f25ab42 | ||
| 
						 | 
					85794e5556 | ||
| 
						 | 
					7f950bd8a2 | ||
| 
						 | 
					bf7b0d2d2b | ||
| 
						 | 
					83c4e75be9 | ||
| 
						 | 
					e5f3be2bbb | ||
| 
						 | 
					fbca4281c8 | ||
| 
						 | 
					a858b8036c | ||
| 
						 | 
					d2be2fb241 | ||
| 
						 | 
					4855eb75a7 | ||
| 
						 | 
					b1f88ec4e2 | ||
| 
						 | 
					44924fb2b4 | ||
| 
						 | 
					0e810cf6b0 | ||
| 
						 | 
					1777e3fd5e | ||
| 
						 | 
					509ca689b0 | ||
| 
						 | 
					3a1dbce19d | ||
| 
						 | 
					10f2bf6d81 | ||
| 
						 | 
					1714c07164 | ||
| 
						 | 
					4cc3d1728f | ||
| 
						 | 
					3ae82255a9 | ||
| 
						 | 
					9bcab53f49 | ||
| 
						 | 
					ae17135ab5 | ||
| 
						 | 
					1f6b757ae9 | ||
| 
						 | 
					a496f45f22 | ||
| 
						 | 
					3485cdb98e | ||
| 
						 | 
					3e3f04d4b7 | ||
| 
						 | 
					879d230da3 | ||
| 
						 | 
					2006dd12d6 | ||
| 
						 | 
					744b9066e2 | ||
| 
						 | 
					1e01dbfbb2 | ||
| 
						 | 
					6ebcd441d6 | ||
| 
						 | 
					ea09a504ef | ||
| 
						 | 
					2e3b3c7be5 | ||
| 
						 | 
					93389c86ca | ||
| 
						 | 
					8d82218269 | ||
| 
						 | 
					a8e738f9ad | ||
| 
						 | 
					bdcb9321ca | ||
| 
						 | 
					d239b734e1 | ||
| 
						 | 
					d91722f8e0 | ||
| 
						 | 
					b6282a2004 | ||
| 
						 | 
					f14aa30118 | ||
| 
						 | 
					a4c1a7e317 | ||
| 
						 | 
					b222cf0624 | ||
| 
						 | 
					68b08abb14 | ||
| 
						 | 
					cee3fffab5 | ||
| 
						 | 
					d1d8608464 | ||
| 
						 | 
					19d2a20a7f | ||
| 
						 | 
					0bf5d40787 | ||
| 
						 | 
					757d479536 | ||
| 
						 | 
					74c9ace6f0 | ||
| 
						 | 
					cfb8afc558 | ||
| 
						 | 
					e8acf5c6f8 | ||
| 
						 | 
					d5864a1dcb | ||
| 
						 | 
					9f56705f96 | ||
| 
						 | 
					7b5b22af5a | ||
| 
						 | 
					00ecca84a8 | ||
| 
						 | 
					38c3b405c8 | ||
| 
						 | 
					e486ec5e0e | ||
| 
						 | 
					eb272ac0b0 | ||
| 
						 | 
					9f06ce19dd | ||
| 
						 | 
					ba61b14f1d | ||
| 
						 | 
					63c43dcc59 | ||
| 
						 | 
					8562801137 | ||
| 
						 | 
					5d8094143e | ||
| 
						 | 
					5114966e00 | ||
| 
						 | 
					bb6dcb54f9 | ||
| 
						 | 
					eed7dd8d75 | ||
| 
						 | 
					0a3ea5d34a | ||
| 
						 | 
					a5e4c0bb9e | ||
| 
						 | 
					70bddeda24 | ||
| 
						 | 
					f66efab8f7 | ||
| 
						 | 
					0caa1c11f8 | ||
| 
						 | 
					c68f050647 | ||
| 
						 | 
					d58eb72f25 | ||
| 
						 | 
					11bfaf6cff | ||
| 
						 | 
					68a54ab591 | ||
| 
						 | 
					9693045170 | ||
| 
						 | 
					cad4b840c8 | ||
| 
						 | 
					37a92e9ce4 | ||
| 
						 | 
					311e4e9253 | ||
| 
						 | 
					1896ce3558 | ||
| 
						 | 
					1874366208 | ||
| 
						 | 
					0357422d14 | ||
| 
						 | 
					18c497dffb | ||
| 
						 | 
					15922ccdf6 | ||
| 
						 | 
					5098bc92f8 | ||
| 
						 | 
					a411eaa858 | ||
| 
						 | 
					42b848bcf1 | ||
| 
						 | 
					b670b1e3da | ||
| 
						 | 
					d3ee37c5d9 | ||
| 
						 | 
					a1c769a5f6 | ||
| 
						 | 
					2c89d56a1d | ||
| 
						 | 
					f51cf14b85 | ||
| 
						 | 
					194dd04699 | ||
| 
						 | 
					14f7ee4916 | ||
| 
						 | 
					a29d78e90b | ||
| 
						 | 
					5b054c6955 | ||
| 
						 | 
					10654d3a74 | ||
| 
						 | 
					6017e604f8 | ||
| 
						 | 
					3837491174 | ||
| 
						 | 
					86a921af06 | ||
| 
						 | 
					616df35633 | ||
| 
						 | 
					e44fcedadf | ||
| 
						 | 
					6f8f443170 | ||
| 
						 | 
					d18af3f37e | ||
| 
						 | 
					48fe4d6233 | ||
| 
						 | 
					7b8250053b | ||
| 
						 | 
					251cb4cfed | ||
| 
						 | 
					24a93e6cdd | ||
| 
						 | 
					142e22641e | ||
| 
						 | 
					40e15f9d78 | ||
| 
						 | 
					b4f682d32f | ||
| 
						 | 
					83d0e5e512 | ||
| 
						 | 
					4e20b1a656 | ||
| 
						 | 
					cc5ba6a7b6 | ||
| 
						 | 
					0396479dec | ||
| 
						 | 
					b9cc6148f4 | ||
| 
						 | 
					e34cfcf7e1 | ||
| 
						 | 
					c6a15854ee | ||
| 
						 | 
					1358835050 | ||
| 
						 | 
					754d494bef | ||
| 
						 | 
					42909e3968 | ||
| 
						 | 
					ba41d8a556 | ||
| 
						 | 
					c108108028 | ||
| 
						 | 
					5451e0d924 | ||
| 
						 | 
					f46a878e3f | ||
| 
						 | 
					fac683684b | ||
| 
						 | 
					4ea3855514 | ||
| 
						 | 
					20a9b1a7cf | ||
| 
						 | 
					156e85578d | ||
| 
						 | 
					b28ec12420 | ||
| 
						 | 
					bb62a8b0c5 | ||
| 
						 | 
					a75d8bebd2 | ||
| 
						 | 
					f51fee66ad | ||
| 
						 | 
					b72ff47037 | ||
| 
						 | 
					a2b03690a8 | ||
| 
						 | 
					abb48d5a5f | ||
| 
						 | 
					0e99546424 | ||
| 
						 | 
					bd9e2e4c53 | ||
| 
						 | 
					5fb0aa6487 | ||
| 
						 | 
					ff612904d2 | ||
| 
						 | 
					9c3cbe5d7f | ||
| 
						 | 
					429cf462d0 | ||
| 
						 | 
					c62b26fdc6 | ||
| 
						 | 
					e0a9ba9c3c | ||
| 
						 | 
					2dc769a1c1 | ||
| 
						 | 
					4f98cbabde | ||
| 
						 | 
					98499135d7 | ||
| 
						 | 
					3285076c8e | ||
| 
						 | 
					3b4cfea688 | ||
| 
						 | 
					de10f6900d | ||
| 
						 | 
					adfe54b7be | ||
| 
						 | 
					b576337e8b | ||
| 
						 | 
					4de633dd5f | ||
| 
						 | 
					91f29a38a0 | ||
| 
						 | 
					1d5bd6cf71 | ||
| 
						 | 
					226cc7ded4 | ||
| 
						 | 
					e869d4bd32 | ||
| 
						 | 
					60428dbf0a | ||
| 
						 | 
					70d70a3c81 | ||
| 
						 | 
					f1f25544e0 | ||
| 
						 | 
					2e0db07627 | ||
| 
						 | 
					58fc62296f | ||
| 
						 | 
					df9cc1535e | ||
| 
						 | 
					c4b36ff474 | ||
| 
						 | 
					f418f8c17c | ||
| 
						 | 
					5277d7cb7c | ||
| 
						 | 
					0657bf9c14 | ||
| 
						 | 
					5b438e9b0f | ||
| 
						 | 
					7b4c588f58 | ||
| 
						 | 
					1d00800e88 | ||
| 
						 | 
					774530f412 | ||
| 
						 | 
					fb171e534e | ||
| 
						 | 
					7d7db13e67 | ||
| 
						 | 
					45abac85a9 | ||
| 
						 | 
					24b8dc9a55 | ||
| 
						 | 
					d8c79c7f72 | ||
| 
						 | 
					3a12ce0137 | ||
| 
						 | 
					9bd35f6376 | ||
| 
						 | 
					62763f682b | ||
| 
						 | 
					38e3c5815c | ||
| 
						 | 
					f8fe20e0d9 | ||
| 
						 | 
					65e8167079 | ||
| 
						 | 
					3e0d891828 | ||
| 
						 | 
					757a8b4621 | ||
| 
						 | 
					5cac59b6c1 | ||
| 
						 | 
					bad4058574 | ||
| 
						 | 
					d8c2adae57 | ||
| 
						 | 
					786e0c2424 | ||
| 
						 | 
					794103d285 | ||
| 
						 | 
					c454dbcd32 | ||
| 
						 | 
					f3a3106807 | ||
| 
						 | 
					62dc5aad06 | ||
| 
						 | 
					45ecfb1973 | ||
| 
						 | 
					1c85e93c7c | ||
| 
						 | 
					95d334f2db | ||
| 
						 | 
					f23478c314 | ||
| 
						 | 
					3d2e469cfa | ||
| 
						 | 
					bf401a2aef | ||
| 
						 | 
					98486a9310 | ||
| 
						 | 
					06a2b07bb0 | ||
| 
						 | 
					8700e7b3cf | ||
| 
						 | 
					7f19d42e9d | ||
| 
						 | 
					d7bbd31efe | ||
| 
						 | 
					fafc7f9875 | ||
| 
						 | 
					d88a26c489 | ||
| 
						 | 
					64b48877fa | ||
| 
						 | 
					b31cc2d9f7 | ||
| 
						 | 
					4910cbf6db | ||
| 
						 | 
					f196522159 | ||
| 
						 | 
					75090e0365 | ||
| 
						 | 
					4ff18c8c3e | ||
| 
						 | 
					db4a465974 | ||
| 
						 | 
					3cdc8ad07a | ||
| 
						 | 
					6676457bba | ||
| 
						 | 
					ad45ed9f5c | ||
| 
						 | 
					2c1571b4ff | ||
| 
						 | 
					6767a53669 | ||
| 
						 | 
					ba93fd6a38 | ||
| 
						 | 
					d7c06e9ec7 | ||
| 
						 | 
					386828d029 | ||
| 
						 | 
					d339187b1a | ||
| 
						 | 
					61fca8b69b | ||
| 
						 | 
					bb5ea36b96 | ||
| 
						 | 
					e3a9164073 | ||
| 
						 | 
					f85c9904c6 | ||
| 
						 | 
					48bf4aae24 | ||
| 
						 | 
					6231576088 | ||
| 
						 | 
					4270144b39 | ||
| 
						 | 
					5031a89dc3 | ||
| 
						 | 
					bbd1c84e6e | ||
| 
						 | 
					a2cf08cc23 | ||
| 
						 | 
					32828e6ffd | ||
| 
						 | 
					d3a73875e2 | ||
| 
						 | 
					41d2a336ee | ||
| 
						 | 
					627774fd87 | ||
| 
						 | 
					a5bc1e8568 | ||
| 
						 | 
					c38171ba1f | ||
| 
						 | 
					bb3ee8e75d | ||
| 
						 | 
					32654e792b | ||
| 
						 | 
					19f2192136 | ||
| 
						 | 
					1961b327eb | ||
| 
						 | 
					2ae87d465e | ||
| 
						 | 
					e3ef8d2e6b | ||
| 
						 | 
					65a87c7d01 | ||
| 
						 | 
					72e3c20c14 | ||
| 
						 | 
					ec0f19597e | ||
| 
						 | 
					fa2b8db499 | ||
| 
						 | 
					1aa0d94781 | ||
| 
						 | 
					dc644fe229 | ||
| 
						 | 
					47ddf355b4 | ||
| 
						 | 
					a39ded513a | ||
| 
						 | 
					941181ec0f | ||
| 
						 | 
					d399fdf877 | ||
| 
						 | 
					487550b61d | ||
| 
						 | 
					35618bf6ad | ||
| 
						 | 
					460fe31f0c | ||
| 
						 | 
					14565bedaf | ||
| 
						 | 
					02cc82ff8a | ||
| 
						 | 
					38f3b3e29c | ||
| 
						 | 
					4dc719fc37 | ||
| 
						 | 
					48f2ef8d00 | ||
| 
						 | 
					be1bd9239f | ||
| 
						 | 
					b8feddae71 | ||
| 
						 | 
					a9daa46758 | ||
| 
						 | 
					569afce4b0 | ||
| 
						 | 
					a9aa3d580c | ||
| 
						 | 
					56a6ccc84f | ||
| 
						 | 
					03c4d82fa1 | ||
| 
						 | 
					7ab1a39181 | ||
| 
						 | 
					56dde3ebe6 | ||
| 
						 | 
					6525ced540 | ||
| 
						 | 
					32d0ad41a4 | ||
| 
						 | 
					e28e42a549 | ||
| 
						 | 
					ff055b5c89 | ||
| 
						 | 
					0069dbc4a5 | ||
| 
						 | 
					d8770f3ece | ||
| 
						 | 
					4981372d03 | ||
| 
						 | 
					3ebac273f5 | ||
| 
						 | 
					5af18f65f4 | ||
| 
						 | 
					a9b34991d9 | ||
| 
						 | 
					ac90362581 | ||
| 
						 | 
					6d82a20624 | ||
| 
						 | 
					bc36ee6227 | ||
| 
						 | 
					f2bc668429 | ||
| 
						 | 
					8120813066 | ||
| 
						 | 
					7242cd8f8f | ||
| 
						 | 
					12c2fe8d53 | ||
| 
						 | 
					28143c66e1 | ||
| 
						 | 
					6c66fcba5f | ||
| 
						 | 
					335c4f0966 | ||
| 
						 | 
					faa624f9f9 | ||
| 
						 | 
					5003a61b9f | ||
| 
						 | 
					15ed15d3e4 | ||
| 
						 | 
					7bd51947e5 | ||
| 
						 | 
					4901b41653 | ||
| 
						 | 
					54f7c8571f | ||
| 
						 | 
					74cd365b03 | ||
| 
						 | 
					2affbab9fc | ||
| 
						 | 
					cf1b7d9664 | ||
| 
						 | 
					649c5a2b09 | ||
| 
						 | 
					07247321c6 | ||
| 
						 | 
					0c43540433 | ||
| 
						 | 
					acba75c59d | ||
| 
						 | 
					267a1927eb | ||
| 
						 | 
					b0c8638650 | ||
| 
						 | 
					b36c170d1b | ||
| 
						 | 
					934397ec66 | ||
| 
						 | 
					0f8631495d | ||
| 
						 | 
					b6fefec364 | ||
| 
						 | 
					95ffe86dbc | ||
| 
						 | 
					87b79c3ef3 | ||
| 
						 | 
					2bf1c86d05 | ||
| 
						 | 
					52d160d85d | ||
| 
						 | 
					2147cd3540 | ||
| 
						 | 
					54ff1e6ae5 | ||
| 
						 | 
					a6b7ffddac | ||
| 
						 | 
					6a0fb6083c | ||
| 
						 | 
					f30d34f3a8 | ||
| 
						 | 
					84a2173797 | ||
| 
						 | 
					0dbfc1da4a | ||
| 
						 | 
					52b621db88 | ||
| 
						 | 
					a6ed5dd674 | ||
| 
						 | 
					1417f2dccb | ||
| 
						 | 
					f2e5ca84d4 | ||
| 
						 | 
					36fafffae2 | ||
| 
						 | 
					cdc7b8cc60 | ||
| 
						 | 
					f945040633 | ||
| 
						 | 
					720235eeec | ||
| 
						 | 
					8b8e03dc66 | ||
| 
						 | 
					56ec43a0dd | ||
| 
						 | 
					8e495e4ac7 | ||
| 
						 | 
					2afbd6fa08 | ||
| 
						 | 
					74ac7455c5 | ||
| 
						 | 
					166850e315 | ||
| 
						 | 
					f282ca7413 | ||
| 
						 | 
					67c1801924 | ||
| 
						 | 
					46a58ab946 | ||
| 
						 | 
					94fcd01349 | ||
| 
						 | 
					e15abbc69f | ||
| 
						 | 
					c6b523d3dd | ||
| 
						 | 
					9a04387362 | ||
| 
						 | 
					282d8b1c38 | ||
| 
						 | 
					1e376e41a2 | ||
| 
						 | 
					dc931b1fca | ||
| 
						 | 
					41ecaba97e | ||
| 
						 | 
					96dfab9e0e | ||
| 
						 | 
					1b65ce7db3 | ||
| 
						 | 
					7fcb1de839 | ||
| 
						 | 
					49b02a2d77 | ||
| 
						 | 
					7b9cb4a224 | ||
| 
						 | 
					bc2dfde4b3 | ||
| 
						 | 
					ec9dc137e7 | ||
| 
						 | 
					620cea37e0 | ||
| 
						 | 
					c15e036398 | ||
| 
						 | 
					ccb08f98ae | ||
| 
						 | 
					418a0d151e | ||
| 
						 | 
					e306892994 | ||
| 
						 | 
					836f996010 | ||
| 
						 | 
					1613c4d3bf | ||
| 
						 | 
					7b0cb7f08d | ||
| 
						 | 
					b5f6d9dc6e | ||
| 
						 | 
					c063f2c5ec | ||
| 
						 | 
					c47c619680 | ||
| 
						 | 
					93cd57a578 | ||
| 
						 | 
					1c08c320c5 | ||
| 
						 | 
					49ce63cd7c | ||
| 
						 | 
					b3f2e399d2 | ||
| 
						 | 
					8c950429a9 | ||
| 
						 | 
					c2bf70a27c | ||
| 
						 | 
					9235adbf47 | ||
| 
						 | 
					452b34a770 | ||
| 
						 | 
					a71b5abfa4 | ||
| 
						 | 
					928cc3a6de | ||
| 
						 | 
					466e4249ab | ||
| 
						 | 
					6bdb723259 | ||
| 
						 | 
					9fbc45b159 | ||
| 
						 | 
					792e2ce7f4 | ||
| 
						 | 
					31a74acfd3 | ||
| 
						 | 
					3952584571 | ||
| 
						 | 
					d82242169b | ||
| 
						 | 
					a0707e6170 | ||
| 
						 | 
					a5d2acfc79 | ||
| 
						 | 
					07fc72fea1 | ||
| 
						 | 
					35ed8cb8b6 | ||
| 
						 | 
					7edc5ed90a | ||
| 
						 | 
					420125f996 | ||
| 
						 | 
					813c7c415b | ||
| 
						 | 
					38b3a46ffa | ||
| 
						 | 
					57e7d3ce15 | ||
| 
						 | 
					a8ebe4697e | ||
| 
						 | 
					60b3b2c9d0 | ||
| 
						 | 
					deb2c1a1c5 | ||
| 
						 | 
					d4219c485b | ||
| 
						 | 
					73fc98a7bf | ||
| 
						 | 
					259810e05b | ||
| 
						 | 
					171cc53a96 | ||
| 
						 | 
					9eea2be6f1 | ||
| 
						 | 
					c7410f2693 | ||
| 
						 | 
					69a03c1799 | ||
| 
						 | 
					43a5e1409e | ||
| 
						 | 
					4327aae816 | ||
| 
						 | 
					741a9690df | ||
| 
						 | 
					cd4fad5488 | ||
| 
						 | 
					28b1bceb2f | ||
| 
						 | 
					e24e40657f | ||
| 
						 | 
					448361a86c | ||
| 
						 | 
					26e083ccb7 | ||
| 
						 | 
					4978361212 | ||
| 
						 | 
					247c1361f3 | ||
| 
						 | 
					1618bc7921 | ||
| 
						 | 
					1b843d3c69 | ||
| 
						 | 
					d4d76b9e83 | ||
| 
						 | 
					e1fee47759 | ||
| 
						 | 
					0bc6597d4d | ||
| 
						 | 
					2b916952a8 | ||
| 
						 | 
					02e4fbed3d | ||
| 
						 | 
					88e9984da5 | ||
| 
						 | 
					7403c34b0b | ||
| 
						 | 
					dac1169e82 | ||
| 
						 | 
					9022f2403b | ||
| 
						 | 
					53ab745f7a | ||
| 
						 | 
					08f3f07212 | ||
| 
						 | 
					2bbe747045 | ||
| 
						 | 
					55cd47ffb4 | ||
| 
						 | 
					8cbceba610 | ||
| 
						 | 
					88ce56f8c1 | ||
| 
						 | 
					664d83bb23 | ||
| 
						 | 
					2e1d669cba | ||
| 
						 | 
					8cff6331c9 | ||
| 
						 | 
					819d5cef08 | ||
| 
						 | 
					e9cba65a99 | ||
| 
						 | 
					cd6aa710b5 | ||
| 
						 | 
					3b1f393ae7 | ||
| 
						 | 
					903872d65e | ||
| 
						 | 
					16a44ae7e9 | ||
| 
						 | 
					739423fceb | ||
| 
						 | 
					61433519af | ||
| 
						 | 
					c032563a0a | ||
| 
						 | 
					943f8a46a4 | ||
| 
						 | 
					78f3a2aad7 | ||
| 
						 | 
					b847024026 | ||
| 
						 | 
					7a60df7dd3 | ||
| 
						 | 
					50d5199120 | ||
| 
						 | 
					9020b86250 | ||
| 
						 | 
					de0b3ab7fb | ||
| 
						 | 
					a342cc5a70 | ||
| 
						 | 
					2b8d087ba1 | ||
| 
						 | 
					67c3cf0675 | ||
| 
						 | 
					9a875a3574 | ||
| 
						 | 
					a43cf9fae9 | ||
| 
						 | 
					eec6e53851 | ||
| 
						 | 
					9ae9c221de | ||
| 
						 | 
					4256650d68 | ||
| 
						 | 
					9cd9ae3e3e | ||
| 
						 | 
					ae0665b8f1 | ||
| 
						 | 
					c4fd88f519 | ||
| 
						 | 
					0a0a261d64 | ||
| 
						 | 
					75802000c8 | ||
| 
						 | 
					325ae88efb | ||
| 
						 | 
					6610d4f3b9 | ||
| 
						 | 
					a25b265d27 | ||
| 
						 | 
					d0a8af61b1 | ||
| 
						 | 
					e58d808a4c | ||
| 
						 | 
					751b5e8ff2 | ||
| 
						 | 
					36f74d60b3 | ||
| 
						 | 
					9756da13dd | ||
| 
						 | 
					70f74dd946 | ||
| 
						 | 
					92fdeb37a0 | ||
| 
						 | 
					893b76c544 | ||
| 
						 | 
					b5a6f0a92d | ||
| 
						 | 
					ba8e28248f | ||
| 
						 | 
					bfcec27d61 | ||
| 
						 | 
					8e8972bb68 | ||
| 
						 | 
					ffac355834 | ||
| 
						 | 
					57108f0ad5 | ||
| 
						 | 
					73758d435b | ||
| 
						 | 
					2e72fde15f | ||
| 
						 | 
					90f63e8f83 | ||
| 
						 | 
					e8af92fcb1 | ||
| 
						 | 
					361ef5f4dc | ||
| 
						 | 
					aa9be09088 | ||
| 
						 | 
					b3466895e6 | ||
| 
						 | 
					81f169e95c | ||
| 
						 | 
					a068630a20 | ||
| 
						 | 
					dfebac32c0 | ||
| 
						 | 
					ab5db00717 | ||
| 
						 | 
					8bcceacf34 | ||
| 
						 | 
					6308af199d | ||
| 
						 | 
					8e5b6314ef | ||
| 
						 | 
					b4b1bdd5d3 | ||
| 
						 | 
					5782ceb298 | ||
| 
						 | 
					cc85ec447b | ||
| 
						 | 
					c67cdb50d2 | ||
| 
						 | 
					af5473c45a | ||
| 
						 | 
					f2c46006e7 | ||
| 
						 | 
					a5a4b34a5a | ||
| 
						 | 
					69e42952e1 | ||
| 
						 | 
					adf87b2df5 | ||
| 
						 | 
					40753f760d | ||
| 
						 | 
					d199858e89 | ||
| 
						 | 
					10a2975a27 | ||
| 
						 | 
					9b4dc8308f | ||
| 
						 | 
					b93642c5cc | ||
| 
						 | 
					a5435e8b29 | ||
| 
						 | 
					72e2d9138c | ||
| 
						 | 
					1dd080bca4 | ||
| 
						 | 
					f648590991 | ||
| 
						 | 
					a14280d41e | ||
| 
						 | 
					91b842c972 | ||
| 
						 | 
					eddf82a36a | ||
| 
						 | 
					673b3fde82 | ||
| 
						 | 
					a87e50a945 | ||
| 
						 | 
					b62a0c4cab | ||
| 
						 | 
					f99267cffc | ||
| 
						 | 
					c06648f7f0 | ||
| 
						 | 
					cd56182b41 | ||
| 
						 | 
					65a22e8e4d | ||
| 
						 | 
					5860ecb8ec | ||
| 
						 | 
					cbf0f45f90 | ||
| 
						 | 
					b2293b1e9b | ||
| 
						 | 
					04e53c273f | ||
| 
						 | 
					599c03530a | ||
| 
						 | 
					56a67adb64 | ||
| 
						 | 
					28e5428d5d | ||
| 
						 | 
					3c91484052 | ||
| 
						 | 
					98d517c5da | ||
| 
						 | 
					18602745de | ||
| 
						 | 
					ad2e032049 | ||
| 
						 | 
					601140b363 | ||
| 
						 | 
					e02cc10ea4 | ||
| 
						 | 
					b5524a3ac3 | ||
| 
						 | 
					0c61e299b3 | ||
| 
						 | 
					0b33bc65cd | ||
| 
						 | 
					0f5fa24a7c | ||
| 
						 | 
					8e96183506 | ||
| 
						 | 
					a8312c0e24 | ||
| 
						 | 
					bf0d176e48 | ||
| 
						 | 
					ec5add8784 | ||
| 
						 | 
					856d456a71 | ||
| 
						 | 
					7f2113a2d5 | ||
| 
						 | 
					97f56446a3 | ||
| 
						 | 
					5d92be8cc6 | ||
| 
						 | 
					e102a3dcfd | ||
| 
						 | 
					ecbe07817a | ||
| 
						 | 
					71db02813c | ||
| 
						 | 
					a6574c21eb | ||
| 
						 | 
					26da3e65ac | ||
| 
						 | 
					21cd437886 | ||
| 
						 | 
					f09628e42f | ||
| 
						 | 
					6f346c7115 | ||
| 
						 | 
					d8ecc56c9d | ||
| 
						 | 
					4e1209ebf8 | ||
| 
						 | 
					78d3b819f0 | ||
| 
						 | 
					200b24e391 | ||
| 
						 | 
					1690c2b26e | ||
| 
						 | 
					701adceb12 | ||
| 
						 | 
					3f07fe09b5 | ||
| 
						 | 
					f86c5c9ac7 | ||
| 
						 | 
					66a0def81b | ||
| 
						 | 
					73e92de577 | ||
| 
						 | 
					09ab755c55 | ||
| 
						 | 
					ec558b6548 | ||
| 
						 | 
					037a9f9c1a | ||
| 
						 | 
					799751bcff | ||
| 
						 | 
					29e1fdf3f2 | ||
| 
						 | 
					28ddfc61dc | ||
| 
						 | 
					725c88879c | ||
| 
						 | 
					beaea31a96 | ||
| 
						 | 
					a9c3dc60b9 | ||
| 
						 | 
					a0aae68cf6 | ||
| 
						 | 
					57d2f21782 | ||
| 
						 | 
					895959b736 | ||
| 
						 | 
					3c07b4c2ee | ||
| 
						 | 
					1cc0b0a66a | ||
| 
						 | 
					beb23252a6 | ||
| 
						 | 
					3ba25ee86a | ||
| 
						 | 
					0be35f5c51 | ||
| 
						 | 
					60f7492646 | ||
| 
						 | 
					1456d1860e | ||
| 
						 | 
					2fb0c899c6 | ||
| 
						 | 
					5755cab49d | ||
| 
						 | 
					975842f9fb | ||
| 
						 | 
					73bc0cfd93 | ||
| 
						 | 
					126fe085db | ||
| 
						 | 
					cbfa030de7 | ||
| 
						 | 
					123d24d600 | ||
| 
						 | 
					bb617a9646 | ||
| 
						 | 
					3880cd35ad | ||
| 
						 | 
					7947f98b9b | ||
| 
						 | 
					fc4868cb47 | ||
| 
						 | 
					cb38052b3a | ||
| 
						 | 
					f640ee90c3 | ||
| 
						 | 
					09f4278d25 | ||
| 
						 | 
					1f47ec53a2 | ||
| 
						 | 
					959f67d6a4 | ||
| 
						 | 
					b2e7419a1d | ||
| 
						 | 
					6546fdfaf8 | ||
| 
						 | 
					3a3ca1d474 | ||
| 
						 | 
					7522254b48 | ||
| 
						 | 
					f1a6a0d4dd | ||
| 
						 | 
					9c67ab2f26 | ||
| 
						 | 
					1a7b2d33f4 | ||
| 
						 | 
					6e2dad1cc7 | ||
| 
						 | 
					2c0d10123e | ||
| 
						 | 
					3ac82faae5 | ||
| 
						 | 
					c08523d862 | ||
| 
						 | 
					137e601277 | ||
| 
						 | 
					09f4bd2a39 | ||
| 
						 | 
					2fc0d1f15e | ||
| 
						 | 
					2a86064f95 | ||
| 
						 | 
					016d7d250a | ||
| 
						 | 
					2c15d426b9 | ||
| 
						 | 
					bdcfe1d165 | ||
| 
						 | 
					3b28dbce7e | ||
| 
						 | 
					555a8493cd | ||
| 
						 | 
					5a4fbc69c3 | ||
| 
						 | 
					2452e013aa | ||
| 
						 | 
					7e7c8952b5 | ||
| 
						 | 
					de487514ae | ||
| 
						 | 
					06db4253e2 | ||
| 
						 | 
					4ce7894c4a | ||
| 
						 | 
					36f554d43c | ||
| 
						 | 
					8d28d5f81b | ||
| 
						 | 
					53b407da84 | ||
| 
						 | 
					765e531159 | ||
| 
						 | 
					de282fe3ba | ||
| 
						 | 
					36ac656a1b | ||
| 
						 | 
					2aff7727f7 | ||
| 
						 | 
					cc93ae3ef4 | ||
| 
						 | 
					34d69d3b23 | ||
| 
						 | 
					a29b1a3f0f | ||
| 
						 | 
					daea0ff8a9 | ||
| 
						 | 
					448701473a | ||
| 
						 | 
					572f0017d5 | ||
| 
						 | 
					df2c442a6d | ||
| 
						 | 
					23e2947cc8 | ||
| 
						 | 
					44b51ca36c | ||
| 
						 | 
					bbf848ce8d | ||
| 
						 | 
					d0fa136ce2 | ||
| 
						 | 
					15156cce0e | ||
| 
						 | 
					9d6b1ce644 | ||
| 
						 | 
					66ebbb6a56 | ||
| 
						 | 
					c5e48d8b01 | ||
| 
						 | 
					8dea52fa42 | ||
| 
						 | 
					f7356b677b | ||
| 
						 | 
					80d89e6a6a | ||
| 
						 | 
					bc5f2740d2 | ||
| 
						 | 
					aa66eba7c8 | ||
| 
						 | 
					f27b45d237 | ||
| 
						 | 
					3bb4736289 | ||
| 
						 | 
					bac685417a | ||
| 
						 | 
					1a4d6400ae | ||
| 
						 | 
					322006dcb1 | ||
| 
						 | 
					db01d55671 | ||
| 
						 | 
					0a52d38b31 | ||
| 
						 | 
					902d1051b1 | ||
| 
						 | 
					f67868ff4c | ||
| 
						 | 
					a6576c56dd | ||
| 
						 | 
					240f516939 | ||
| 
						 | 
					ef8f14a882 | ||
| 
						 | 
					aecb0b018f | ||
| 
						 | 
					e4d56bab5b | ||
| 
						 | 
					1435ccfba1 | ||
| 
						 | 
					d766a23deb | ||
| 
						 | 
					b1e21f8fac | ||
| 
						 | 
					9347ba487c | ||
| 
						 | 
					c28500900e | ||
| 
						 | 
					e4c5391ddb | ||
| 
						 | 
					0c34556cbd | ||
| 
						 | 
					b50118ca3e | ||
| 
						 | 
					a57ecb95f6 | ||
| 
						 | 
					428a55a0fe | ||
| 
						 | 
					cc74659fcc | ||
| 
						 | 
					90e7ce363a | ||
| 
						 | 
					a47b505e37 | ||
| 
						 | 
					9f49524331 | ||
| 
						 | 
					6a2347ee45 | ||
| 
						 | 
					79370621ea | ||
| 
						 | 
					e5164b7041 | ||
| 
						 | 
					ebff44b83a | ||
| 
						 | 
					c0e7c3aab9 | ||
| 
						 | 
					733777275b | ||
| 
						 | 
					f1919c3df9 | ||
| 
						 | 
					97b1719583 | ||
| 
						 | 
					b0dc680f71 | ||
| 
						 | 
					addb309ad6 | ||
| 
						 | 
					4c4f1ee4de | ||
| 
						 | 
					152a689cf9 | ||
| 
						 | 
					fe772376ec | ||
| 
						 | 
					35a99b6380 | ||
| 
						 | 
					dfa46e502d | ||
| 
						 | 
					c21c35e6a4 | ||
| 
						 | 
					b26f84cbbd | ||
| 
						 | 
					0dba0613ea | ||
| 
						 | 
					e0c875081e | ||
| 
						 | 
					ea1b7fe6d4 | ||
| 
						 | 
					db88223baa | ||
| 
						 | 
					d29b63bc9b | ||
| 
						 | 
					1946cd8bc2 | ||
| 
						 | 
					111482cf2e | ||
| 
						 | 
					52a1bab2d9 | ||
| 
						 | 
					0826c85f4c | ||
| 
						 | 
					385d81380c | ||
| 
						 | 
					862e973b50 | ||
| 
						 | 
					2efff10cfa | ||
| 
						 | 
					33479d275a | ||
| 
						 | 
					3e7a6396ed | ||
| 
						 | 
					5a12df5c40 | ||
| 
						 | 
					b5a25a430a | ||
| 
						 | 
					592c784ffe | ||
| 
						 | 
					99cf5acd5c | ||
| 
						 | 
					17e757478a | ||
| 
						 | 
					a023052580 | ||
| 
						 | 
					4b757c830d | ||
| 
						 | 
					9b7a552f4b | ||
| 
						 | 
					8df788c97f | ||
| 
						 | 
					12cfcc128c | ||
| 
						 | 
					f9b3bff6f7 | ||
| 
						 | 
					d2c38b1c73 | ||
| 
						 | 
					fc2e05c2d5 | ||
| 
						 | 
					b2993bdea1 | ||
| 
						 | 
					470fa98f8a | ||
| 
						 | 
					de6e207db6 | ||
| 
						 | 
					1363155145 | ||
| 
						 | 
					db5bda670f | ||
| 
						 | 
					0ae485dc07 | ||
| 
						 | 
					19cda70045 | ||
| 
						 | 
					4751717cd8 | ||
| 
						 | 
					bd68b6b1f6 | ||
| 
						 | 
					cd9b7d7c35 | ||
| 
						 | 
					058123afb6 | ||
| 
						 | 
					a4614bf06d | ||
| 
						 | 
					23f80f46a4 | ||
| 
						 | 
					c4438dc0e5 | ||
| 
						 | 
					04ca16890b | ||
| 
						 | 
					20f88b9bd4 | ||
| 
						 | 
					25439b76ad | ||
| 
						 | 
					3465dd3853 | ||
| 
						 | 
					ac445acf69 | ||
| 
						 | 
					77ac92d00a | ||
| 
						 | 
					73c2522c7c | ||
| 
						 | 
					6b5d39e82d | ||
| 
						 | 
					cd2eebfd64 | ||
| 
						 | 
					06676624fc | ||
| 
						 | 
					ef8b601789 | ||
| 
						 | 
					01e62900c7 | ||
| 
						 | 
					d50f1bdfac | ||
| 
						 | 
					38b40c624c | ||
| 
						 | 
					eb1f1b0a34 | ||
| 
						 | 
					a9376dbff9 | ||
| 
						 | 
					673d7ac121 | ||
| 
						 | 
					14697d9d6d | ||
| 
						 | 
					c6a926d9e2 | ||
| 
						 | 
					c1db5bfc08 | ||
| 
						 | 
					429b8162c6 | ||
| 
						 | 
					0dd2254d76 | ||
| 
						 | 
					03a0848922 | ||
| 
						 | 
					9161672950 | ||
| 
						 | 
					a08bcccc67 | ||
| 
						 | 
					bdec3c5323 | ||
| 
						 | 
					53d286797c | ||
| 
						 | 
					b6cafbd7d8 | ||
| 
						 | 
					499e167fda | ||
| 
						 | 
					0135e33511 | ||
| 
						 | 
					f2cc7559dd | ||
| 
						 | 
					fe8686ba4b | ||
| 
						 | 
					4aa69fe0b6 | ||
| 
						 | 
					b984cd2b01 | ||
| 
						 | 
					adcc64cd9e | ||
| 
						 | 
					c94b6de017 | ||
| 
						 | 
					666d437538 | ||
| 
						 | 
					000e21779c | ||
| 
						 | 
					f1d6f64c8e | ||
| 
						 | 
					d79cab27a5 | ||
| 
						 | 
					24b44446e2 | ||
| 
						 | 
					87739b2c53 | ||
| 
						 | 
					c782089611 | ||
| 
						 | 
					265592b99a | ||
| 
						 | 
					077ff61eef | ||
| 
						 | 
					dcbd0d74d5 | ||
| 
						 | 
					1ec0a3862e | ||
| 
						 | 
					946cd9a540 | ||
| 
						 | 
					0ac87024e3 | ||
| 
						 | 
					7abe830501 | ||
| 
						 | 
					5acaa49504 | ||
| 
						 | 
					535b9b5724 | ||
| 
						 | 
					78a0c1f18d | ||
| 
						 | 
					6cc5e19d47 | ||
| 
						 | 
					7e0c5264e7 | ||
| 
						 | 
					73343ac38a | ||
| 
						 | 
					d53d271728 | ||
| 
						 | 
					37fc8c3747 | ||
| 
						 | 
					01412ec600 | ||
| 
						 | 
					c4f3542abf | ||
| 
						 | 
					c799770060 | ||
| 
						 | 
					cd26e6c79d | ||
| 
						 | 
					4e773226f5 | ||
| 
						 | 
					646d56956b | ||
| 
						 | 
					0cc1115643 | ||
| 
						 | 
					257341b5b4 | ||
| 
						 | 
					83f2571782 | ||
| 
						 | 
					baa257f1ed | ||
| 
						 | 
					e06cc57118 | ||
| 
						 | 
					0450d28759 | ||
| 
						 | 
					7f56097c65 | ||
| 
						 | 
					7396958515 | ||
| 
						 | 
					3c758be86e | ||
| 
						 | 
					227385b719 | ||
| 
						 | 
					f7a059316f | ||
| 
						 | 
					b1d6e3f551 | ||
| 
						 | 
					db70a3fd6e | ||
| 
						 | 
					28fd5c60de | ||
| 
						 | 
					cbd48ba626 | ||
| 
						 | 
					67d93e6f49 | ||
| 
						 | 
					afb83c45e6 | ||
| 
						 | 
					43fcc1b096 | ||
| 
						 | 
					d5695a26a6 | ||
| 
						 | 
					8bfc8f934f | ||
| 
						 | 
					ef02b10a16 | ||
| 
						 | 
					803e4e93d4 | ||
| 
						 | 
					60b8607727 | ||
| 
						 | 
					159564ae9f | ||
| 
						 | 
					cd1bf28e2c | ||
| 
						 | 
					74e10aa58b | ||
| 
						 | 
					5f524accc1 | ||
| 
						 | 
					451e60e99f | ||
| 
						 | 
					89c16ab53e | ||
| 
						 | 
					820aaa5fc5 | ||
| 
						 | 
					993ea851f5 | ||
| 
						 | 
					305db17b5f | ||
| 
						 | 
					6a8ba34f9d | ||
| 
						 | 
					f777408fc5 | ||
| 
						 | 
					2984b0ae24 | ||
| 
						 | 
					3d6001f7b9 | ||
| 
						 | 
					f6a8898fc3 | ||
| 
						 | 
					757e392d4e | ||
| 
						 | 
					2f9f0c72de | ||
| 
						 | 
					cb4ae6c0d3 | ||
| 
						 | 
					359fd02fec | ||
| 
						 | 
					e1a8ac495b | ||
| 
						 | 
					0b5806b5f5 | ||
| 
						 | 
					ccb9643f02 | ||
| 
						 | 
					ddf72ed59f | ||
| 
						 | 
					7f7b8d6871 | ||
| 
						 | 
					bb7e632aef | ||
| 
						 | 
					55d892e373 | ||
| 
						 | 
					f971ccb264 | ||
| 
						 | 
					a4aba800d9 | ||
| 
						 | 
					669cefdd35 | ||
| 
						 | 
					7be7c2eda5 | ||
| 
						 | 
					8de2910b5c | ||
| 
						 | 
					74489a3668 | ||
| 
						 | 
					e06433d9ba | ||
| 
						 | 
					e0bf5c11ea | ||
| 
						 | 
					58f0f52e67 | ||
| 
						 | 
					55b3c877c7 | ||
| 
						 | 
					bbbc96a87e | ||
| 
						 | 
					5e4ca4220e | ||
| 
						 | 
					e5828cd46f | ||
| 
						 | 
					7081f3bd89 | ||
| 
						 | 
					0413ba429c | ||
| 
						 | 
					29c1f0615b | ||
| 
						 | 
					10e473e930 | ||
| 
						 | 
					e7ef1a561a | ||
| 
						 | 
					458d356db9 | ||
| 
						 | 
					020fc820dc | ||
| 
						 | 
					bc8a9f1f0f | ||
| 
						 | 
					6b77e6d7f3 | ||
| 
						 | 
					361c7f2b52 | ||
| 
						 | 
					9f6fe8dbe7 | ||
| 
						 | 
					ee78e1fc8b | ||
| 
						 | 
					864170286a | ||
| 
						 | 
					02af65b347 | ||
| 
						 | 
					2f13ee21ea | ||
| 
						 | 
					1d833a9910 | ||
| 
						 | 
					11c0f1201c | ||
| 
						 | 
					69e7805f54 | ||
| 
						 | 
					e264cfe17a | ||
| 
						 | 
					8224b0cbe5 | ||
| 
						 | 
					15d52ddb55 | ||
| 
						 | 
					d48f487e2c | ||
| 
						 | 
					ce23b0f73e | ||
| 
						 | 
					d313047f63 | ||
| 
						 | 
					d1855cc7af | ||
| 
						 | 
					14c6d27d63 | ||
| 
						 | 
					dcea8e12e2 | ||
| 
						 | 
					26b264795d | ||
| 
						 | 
					501ebf16b6 | ||
| 
						 | 
					815c83f70a | ||
| 
						 | 
					92125ffaec | ||
| 
						 | 
					7db2fcaa81 | ||
| 
						 | 
					7d09713d09 | ||
| 
						 | 
					3aba98e787 | ||
| 
						 | 
					32d862ede4 | ||
| 
						 | 
					a44f26d5c9 | ||
| 
						 | 
					6502735b9c | ||
| 
						 | 
					31a266cb93 | ||
| 
						 | 
					b703bce788 | ||
| 
						 | 
					3e126d3610 | ||
| 
						 | 
					0188a53d19 | ||
| 
						 | 
					5660eb489e | ||
| 
						 | 
					e7ce15846d | ||
| 
						 | 
					1433ae4790 | ||
| 
						 | 
					a506153219 | ||
| 
						 | 
					bee4756251 | ||
| 
						 | 
					7c155330de | ||
| 
						 | 
					8bb4ad88d8 | ||
| 
						 | 
					eb64730b9c | ||
| 
						 | 
					34a1488220 | ||
| 
						 | 
					5270e7025e | ||
| 
						 | 
					b3f4fb1f72 | ||
| 
						 | 
					38654b070d | ||
| 
						 | 
					82c31e1496 | ||
| 
						 | 
					4c3853abea | ||
| 
						 | 
					5b88fe121d | ||
| 
						 | 
					a46db6ecce | ||
| 
						 | 
					f4d52a896e | ||
| 
						 | 
					57b6a64eed | ||
| 
						 | 
					c0a86cd5dd | ||
| 
						 | 
					43cbb1e3dd | ||
| 
						 | 
					2cb3c3b2bf | ||
| 
						 | 
					24802a6d91 | ||
| 
						 | 
					c125ea2767 | ||
| 
						 | 
					df4fd356df | ||
| 
						 | 
					1f1f23a882 | ||
| 
						 | 
					ee4462d2b1 | ||
| 
						 | 
					41faea737a | ||
| 
						 | 
					7c69ce8bc0 | ||
| 
						 | 
					eb3633164e | ||
| 
						 | 
					a08d14fef4 | ||
| 
						 | 
					b73ff18078 | ||
| 
						 | 
					9beaae61ec | 
							
								
								
									
										278
									
								
								CHANGES
									
									
									
									
									
								
							
							
						
						
									
										278
									
								
								CHANGES
									
									
									
									
									
								
							@@ -2,35 +2,240 @@
 | 
			
		||||
 OpenSSL CHANGES
 | 
			
		||||
 _______________
 | 
			
		||||
 | 
			
		||||
 Changes between 0.9.6 and 0.9.7  [xx XXX 2000]
 | 
			
		||||
 Changes between 0.9.6 and 0.9.6a  [xx XXX 2001]
 | 
			
		||||
 | 
			
		||||
  *) Rework the filename-translation in the DSO code. It is now possible to
 | 
			
		||||
     have far greater control over how a "name" is turned into a filename
 | 
			
		||||
     depending on the operating environment and any oddities about the
 | 
			
		||||
     different shared library filenames on each system.
 | 
			
		||||
  *) Fix for asn1_GetSequence() for indefinite length constructed data.
 | 
			
		||||
     If SEQUENCE is length is indefinite just set c->slen to the total
 | 
			
		||||
     amount of data available.
 | 
			
		||||
     [Steve Henson, reported by shige@FreeBSD.org]
 | 
			
		||||
     [This change does not apply to 0.9.7.]
 | 
			
		||||
 | 
			
		||||
  *) Change bctest to avoid here-documents inside command substitution
 | 
			
		||||
     (workaround for FreeBSD /bin/sh bug).
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Rename 'des_encrypt' to 'des_encrypt1'.  This avoids the clashes
 | 
			
		||||
     with des_encrypt() defined on some operating systems, like Solaris
 | 
			
		||||
     and UnixWare.
 | 
			
		||||
     [Richard Levitte]
 | 
			
		||||
 | 
			
		||||
  *) Check the result of RSA-CRT (see D. Boneh, R. DeMillo, R. Lipton:
 | 
			
		||||
     On the Importance of Eliminating Errors in Cryptographic
 | 
			
		||||
     Computations, J. Cryptology 14 (2001) 2, 101-119,
 | 
			
		||||
     http://theory.stanford.edu/~dabo/papers/faults.ps.gz).
 | 
			
		||||
     [Ulf Moeller]
 | 
			
		||||
  
 | 
			
		||||
  *) MIPS assembler BIGNUM division bug fix. 
 | 
			
		||||
     [Andy Polyakov]
 | 
			
		||||
 | 
			
		||||
  *) Fix PKCS#7 decode routines so they correctly update the length
 | 
			
		||||
     after reading an EOC for the EXPLICIT tag.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
     [This change does not apply to 0.9.7.]
 | 
			
		||||
 | 
			
		||||
  *) Fix bug in PKCS#12 key generation routines. This was triggered
 | 
			
		||||
     if a 3DES key was generated with a 0 initial byte. Include
 | 
			
		||||
     PKCS12_BROKEN_KEYGEN compilation option to retain the old
 | 
			
		||||
     (but broken) behaviour.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
 | 
			
		||||
  *) Enhance bctest to search for a working bc along $PATH and print
 | 
			
		||||
     it when found.
 | 
			
		||||
     [Tim Rice <tim@multitalents.net> via Richard Levitte]
 | 
			
		||||
 | 
			
		||||
  *) Fix memory leaks in err.c: free err_data string if necessary;
 | 
			
		||||
     don't write to the wrong index in ERR_set_error_data.
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Implement ssl23_peek (analogous to ssl23_read), which previously
 | 
			
		||||
     did not exist.
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Replace rdtsc with _emit statements for VC++ version 5.
 | 
			
		||||
     [Jeremy Cooper <jeremy@baymoo.org>]
 | 
			
		||||
 | 
			
		||||
  *) Make it possible to reuse SSLv2 sessions.
 | 
			
		||||
     [Richard Levitte]
 | 
			
		||||
 | 
			
		||||
  *) In copy_email() check for >= 0 as a return value for
 | 
			
		||||
     X509_NAME_get_index_by_NID() since 0 is a valid index.
 | 
			
		||||
     [Steve Henson reported by Massimiliano Pala <madwolf@opensca.org>]
 | 
			
		||||
 | 
			
		||||
  *) Avoid coredump with unsupported or invalid public keys by checking if
 | 
			
		||||
     X509_get_pubkey() fails in PKCS7_verify(). Fix memory leak when
 | 
			
		||||
     PKCS7_verify() fails with non detached data.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
 | 
			
		||||
  *) Don't use getenv in library functions when run as setuid/setgid.
 | 
			
		||||
     New function OPENSSL_issetugid().
 | 
			
		||||
     [Ulf Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Avoid false positives in memory leak detection code (crypto/mem_dbg.c)
 | 
			
		||||
     due to incorrect handling of multi-threading:
 | 
			
		||||
 | 
			
		||||
     1. Fix timing glitch in the MemCheck_off() portion of CRYPTO_mem_ctrl().
 | 
			
		||||
 | 
			
		||||
     2. Fix logical glitch in is_MemCheck_on() aka CRYPTO_is_mem_check_on().
 | 
			
		||||
 | 
			
		||||
     3. Count how many times MemCheck_off() has been called so that
 | 
			
		||||
        nested use can be treated correctly.  This also avoids 
 | 
			
		||||
        inband-signalling in the previous code (which relied on the
 | 
			
		||||
        assumption that thread ID 0 is impossible).
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Add "-rand" option also to s_client and s_server.
 | 
			
		||||
     [Lutz Jaenicke]
 | 
			
		||||
 | 
			
		||||
  *) Fix CPU detection on Irix 6.x.
 | 
			
		||||
     [Kurt Hockenbury <khockenb@stevens-tech.edu> and
 | 
			
		||||
      "Bruce W. Forsberg" <bruce.forsberg@baesystems.com>]
 | 
			
		||||
 | 
			
		||||
  *) Fix X509_NAME bug which produced incorrect encoding if X509_NAME
 | 
			
		||||
     was empty.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
     [This change does not apply to 0.9.7.]
 | 
			
		||||
 | 
			
		||||
  *) Use the cached encoding of an X509_NAME structure rather than
 | 
			
		||||
     copying it. This is apparently the reason for the libsafe "errors"
 | 
			
		||||
     but the code is actually correct.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
 | 
			
		||||
  *) Add new function BN_rand_range(), and fix DSA_sign_setup() to prevent
 | 
			
		||||
     Bleichenbacher's DSA attack.
 | 
			
		||||
     Extend BN_[pseudo_]rand: As before, top=1 forces the highest two bits
 | 
			
		||||
     to be set and top=0 forces the highest bit to be set; top=-1 is new
 | 
			
		||||
     and leaves the highest bit random.
 | 
			
		||||
     [Ulf Moeller, Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) In the NCONF_...-based implementations for CONF_... queries
 | 
			
		||||
     (crypto/conf/conf_lib.c), if the input LHASH is NULL, avoid using
 | 
			
		||||
     a temporary CONF structure with the data component set to NULL
 | 
			
		||||
     (which gives segmentation faults in lh_retrieve).
 | 
			
		||||
     Instead, use NULL for the CONF pointer in CONF_get_string and
 | 
			
		||||
     CONF_get_number (which may use environment variables) and directly
 | 
			
		||||
     return NULL from CONF_get_section.
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Fix potential buffer overrun for EBCDIC.
 | 
			
		||||
     [Ulf Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Tolerate nonRepudiation as being valid for S/MIME signing and certSign
 | 
			
		||||
     keyUsage if basicConstraints absent for a CA.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
 | 
			
		||||
  *) Make SMIME_write_PKCS7() write mail header values with a format that
 | 
			
		||||
     is more generally accepted (no spaces before the semicolon), since
 | 
			
		||||
     some programs can't parse those values properly otherwise.  Also make
 | 
			
		||||
     sure BIO's that break lines after each write do not create invalid
 | 
			
		||||
     headers.
 | 
			
		||||
     [Richard Levitte]
 | 
			
		||||
 | 
			
		||||
  *) Make the CRL encoding routines work with empty SEQUENCE OF. The
 | 
			
		||||
     macros previously used would not encode an empty SEQUENCE OF
 | 
			
		||||
     and break the signature.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
     [This change does not apply to 0.9.7.]
 | 
			
		||||
 | 
			
		||||
  *) Zero the premaster secret after deriving the master secret in
 | 
			
		||||
     DH ciphersuites.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
 | 
			
		||||
  *) Add some EVP_add_digest_alias registrations (as found in
 | 
			
		||||
     OpenSSL_add_all_digests()) to SSL_library_init()
 | 
			
		||||
     aka OpenSSL_add_ssl_algorithms().  This provides improved
 | 
			
		||||
     compatibility with peers using X.509 certificates
 | 
			
		||||
     with unconventional AlgorithmIdentifier OIDs.
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Fix for Irix with NO_ASM.
 | 
			
		||||
     ["Bruce W. Forsberg" <bruce.forsberg@baesystems.com>]
 | 
			
		||||
 | 
			
		||||
  *) ./config script fixes.
 | 
			
		||||
     [Ulf Moeller, Richard Levitte]
 | 
			
		||||
 | 
			
		||||
  *) Fix 'openssl passwd -1'.
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Change PKCS12_key_gen_asc() so it can cope with non null
 | 
			
		||||
     terminated strings whose length is passed in the passlen
 | 
			
		||||
     parameter, for example from PEM callbacks. This was done
 | 
			
		||||
     by adding an extra length parameter to asc2uni().
 | 
			
		||||
     [Steve Henson, reported by <oddissey@samsung.co.kr>]
 | 
			
		||||
 | 
			
		||||
  *) Fix C code generated by 'openssl dsaparam -C': If a BN_bin2bn
 | 
			
		||||
     call failed, free the DSA structure.
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Fix to uni2asc() to cope with zero length Unicode strings.
 | 
			
		||||
     These are present in some PKCS#12 files.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
 | 
			
		||||
  *) Increase s2->wbuf allocation by one byte in ssl2_new (ssl/s2_lib.c).
 | 
			
		||||
     Otherwise do_ssl_write (ssl/s2_pkt.c) will write beyond buffer limits
 | 
			
		||||
     when writing a 32767 byte record.
 | 
			
		||||
     [Bodo Moeller; problem reported by Eric Day <eday@concentric.net>]
 | 
			
		||||
 | 
			
		||||
  *) In RSA_eay_public_{en,ed}crypt and RSA_eay_mod_exp (rsa_eay.c),
 | 
			
		||||
     obtain lock CRYPTO_LOCK_RSA before setting rsa->_method_mod_{n,p,q}.
 | 
			
		||||
 | 
			
		||||
     (RSA objects have a reference count access to which is protected
 | 
			
		||||
     by CRYPTO_LOCK_RSA [see rsa_lib.c, s3_srvr.c, ssl_cert.c, ssl_rsa.c],
 | 
			
		||||
     so they are meant to be shared between threads.)
 | 
			
		||||
     [Bodo Moeller, Geoff Thorpe; original patch submitted by
 | 
			
		||||
     "Reddie, Steven" <Steven.Reddie@ca.com>]
 | 
			
		||||
 | 
			
		||||
  *) Fix a deadlock in CRYPTO_mem_leaks().
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Use better test patterns in bntest.
 | 
			
		||||
     [Ulf M<>ller]
 | 
			
		||||
 | 
			
		||||
  *) rand_win.c fix for Borland C.
 | 
			
		||||
     [Ulf M<>ller]
 | 
			
		||||
 
 | 
			
		||||
  *) BN_rshift bugfix for n == 0.
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Add a 'bctest' script that checks for some known 'bc' bugs
 | 
			
		||||
     so that 'make test' does not abort just because 'bc' is broken.
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Store verify_result within SSL_SESSION also for client side to
 | 
			
		||||
     avoid potential security hole. (Re-used sessions on the client side
 | 
			
		||||
     always resulted in verify_result==X509_V_OK, not using the original
 | 
			
		||||
     result of the server certificate verification.)
 | 
			
		||||
     [Lutz Jaenicke]
 | 
			
		||||
 | 
			
		||||
  *) Fix ssl3_pending: If the record in s->s3->rrec is not of type
 | 
			
		||||
     SSL3_RT_APPLICATION_DATA, return 0.
 | 
			
		||||
     Similarly, change ssl2_pending to return 0 if SSL_in_init(s) is true.
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Fix SSL_peek:
 | 
			
		||||
     Both ssl2_peek and ssl3_peek, which were totally broken in earlier
 | 
			
		||||
     releases, have been re-implemented by renaming the previous
 | 
			
		||||
     implementations of ssl2_read and ssl3_read to ssl2_read_internal
 | 
			
		||||
     and ssl3_read_internal, respectively, and adding 'peek' parameters
 | 
			
		||||
     to them.  The new ssl[23]_{read,peek} functions are calls to
 | 
			
		||||
     ssl[23]_read_internal with the 'peek' flag set appropriately.
 | 
			
		||||
     A 'peek' parameter has also been added to ssl3_read_bytes, which
 | 
			
		||||
     does the actual work for ssl3_read_internal.
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Initialise "ex_data" member of RSA/DSA/DH structures prior to calling
 | 
			
		||||
     the method-specific "init()" handler. Also clean up ex_data after
 | 
			
		||||
     calling the method-specific "finish()" handler. Previously, this was
 | 
			
		||||
     happening the other way round.
 | 
			
		||||
     [Geoff Thorpe]
 | 
			
		||||
 | 
			
		||||
  *) Support threads on FreeBSD-elf in Configure.
 | 
			
		||||
     [Richard Levitte]
 | 
			
		||||
  *) Increase BN_CTX_NUM (the number of BIGNUMs in a BN_CTX) to 16.
 | 
			
		||||
     The previous value, 12, was not always sufficient for BN_mod_exp().
 | 
			
		||||
     [Bodo Moeller]
 | 
			
		||||
 | 
			
		||||
  *) Add the possibility to create shared libraries on HP-UX
 | 
			
		||||
     [Richard Levitte]
 | 
			
		||||
 | 
			
		||||
  *) Fix for SHA1 assembly problem with MASM: it produces
 | 
			
		||||
     warnings about corrupt line number information when assembling
 | 
			
		||||
     with debugging information. This is caused by the overlapping
 | 
			
		||||
     of two sections.
 | 
			
		||||
     [Bernd Matthes <mainbug@celocom.de>, Steve Henson]
 | 
			
		||||
 | 
			
		||||
  *) NCONF changes.
 | 
			
		||||
     NCONF_get_number() has no error checking at all.  As a replacement,
 | 
			
		||||
     NCONF_get_number_e() is defined (_e for "error checking") and is
 | 
			
		||||
     promoted strongly.  The old NCONF_get_number is kept around for
 | 
			
		||||
     binary backward compatibility.
 | 
			
		||||
     Make it possible for methods to load from something other than a BIO,
 | 
			
		||||
     by providing a function pointer that is given a name instead of a BIO.
 | 
			
		||||
     For example, this could be used to load configuration data from an
 | 
			
		||||
     LDAP server.
 | 
			
		||||
  *) Make sure that shared libraries get the internal name engine with
 | 
			
		||||
     the full version number and not just 0.  This should mark the
 | 
			
		||||
     shared libraries as not backward compatible.  Of course, this should
 | 
			
		||||
     be changed again when we can guarantee backward binary compatibility.
 | 
			
		||||
     [Richard Levitte]
 | 
			
		||||
 | 
			
		||||
  *) Fix typo in get_cert_by_subject() in by_dir.c
 | 
			
		||||
@@ -51,26 +256,6 @@
 | 
			
		||||
       static ones.
 | 
			
		||||
     [Richard Levitte]
 | 
			
		||||
 | 
			
		||||
  *) Fix for non blocking accept BIOs. Added new I/O special reason
 | 
			
		||||
     BIO_RR_ACCEPT to cover this case. Previously use of accept BIOs
 | 
			
		||||
     with non blocking I/O was not possible because no retry code was
 | 
			
		||||
     implemented. Also added new SSL code SSL_WANT_ACCEPT to cover
 | 
			
		||||
     this case.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
 | 
			
		||||
  *) Added the beginnings of Rijndael support.
 | 
			
		||||
     [Ben Laurie]
 | 
			
		||||
 | 
			
		||||
  *) Fix for bug in DirectoryString mask setting. Add support for
 | 
			
		||||
     X509_NAME_print_ex() in 'req' and X509_print_ex() function
 | 
			
		||||
     to allow certificate printing to more controllable, additional
 | 
			
		||||
     'certopt' option to 'x509' to allow new printing options to be
 | 
			
		||||
     set.
 | 
			
		||||
     [Steve Henson]
 | 
			
		||||
 | 
			
		||||
  *) Clean old EAY MD5 hack from e_os.h.
 | 
			
		||||
     [Richard Levitte]
 | 
			
		||||
 | 
			
		||||
  *) Fix SSL_CTX_set_read_ahead macro to actually use its argument.
 | 
			
		||||
 | 
			
		||||
     Copy SSL_CTX's read_ahead flag to SSL object directly in SSL_new
 | 
			
		||||
@@ -84,6 +269,9 @@
 | 
			
		||||
     matter what.
 | 
			
		||||
     [Richard Levitte]
 | 
			
		||||
 | 
			
		||||
  *) Added several new manual pages for SSL_* function.
 | 
			
		||||
     [Lutz Jaenicke]
 | 
			
		||||
 | 
			
		||||
 Changes between 0.9.5a and 0.9.6  [24 Sep 2000]
 | 
			
		||||
 | 
			
		||||
  *) In ssl23_get_client_hello, generate an error message when faced
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										122
									
								
								Configure
									
									
									
									
									
								
							
							
						
						
									
										122
									
								
								Configure
									
									
									
									
									
								
							@@ -89,6 +89,11 @@ my $x86_elf_asm="asm/bn86-elf.o asm/co86-elf.o:asm/dx86-elf.o asm/yx86-elf.o:asm
 | 
			
		||||
my $x86_out_asm="asm/bn86-out.o asm/co86-out.o:asm/dx86-out.o asm/yx86-out.o:asm/bx86-out.o:asm/mx86-out.o:asm/sx86-out.o:asm/cx86-out.o:asm/rx86-out.o:asm/rm86-out.o:asm/r586-out.o";
 | 
			
		||||
my $x86_bsdi_asm="asm/bn86bsdi.o asm/co86bsdi.o:asm/dx86bsdi.o asm/yx86bsdi.o:asm/bx86bsdi.o:asm/mx86bsdi.o:asm/sx86bsdi.o:asm/cx86bsdi.o:asm/rx86bsdi.o:asm/rm86bsdi.o:asm/r586bsdi.o";
 | 
			
		||||
 | 
			
		||||
my $mips3_irix_asm="asm/mips3.o::::::::";
 | 
			
		||||
# There seems to be boundary faults in asm/alpha.s.
 | 
			
		||||
#my $alpha_asm="asm/alpha.o::::::::";
 | 
			
		||||
my $alpha_asm="::::::::";
 | 
			
		||||
 | 
			
		||||
# -DB_ENDIAN slows things down on a sparc for md5, but helps sha1.
 | 
			
		||||
# So the md5_locl.h file has an undef B_ENDIAN if sun is defined
 | 
			
		||||
 | 
			
		||||
@@ -127,18 +132,18 @@ my %table=(
 | 
			
		||||
# surrounds it with #APP #NO_APP comment pair which (at least Solaris
 | 
			
		||||
# 7_x86) /usr/ccs/bin/as fails to assemble with "Illegal mnemonic"
 | 
			
		||||
# error message.
 | 
			
		||||
"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DNO_INLINE_ASM::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_sol_asm}:dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DNO_INLINE_ASM::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_sol_asm}:dlfcn:gnu-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
 | 
			
		||||
#### SPARC Solaris with GNU C setups
 | 
			
		||||
"solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris-sparcv8-gcc","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris-sparcv9-gcc","gcc:-mcpu=ultrasparc -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::::::::dlfcn:gnu-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris-sparcv8-gcc","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:gnu-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris-sparcv9-gcc","gcc:-mcpu=ultrasparc -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:gnu-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
# gcc pre-2.8 doesn't understand -mcpu=ultrasparc, so fall down to -mv8
 | 
			
		||||
# but keep the assembler modules.
 | 
			
		||||
"solaris-sparcv9-gcc27","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus-gcc27.o:::asm/md5-sparcv8plus-gcc27.o::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris-sparcv9-gcc27","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus-gcc27.o:::asm/md5-sparcv8plus-gcc27.o::::::dlfcn:gnu-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
####
 | 
			
		||||
"debug-solaris-sparcv8-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"debug-solaris-sparcv9-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mcpu=ultrasparc -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"debug-solaris-sparcv8-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:gnu-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"debug-solaris-sparcv9-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mcpu=ultrasparc -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::::::::dlfcn:gnu-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
 | 
			
		||||
#### SPARC Solaris with Sun C setups
 | 
			
		||||
# DO NOT use /xO[34] on sparc with SC3.0.  It is broken, and will not pass the tests
 | 
			
		||||
@@ -149,7 +154,7 @@ my %table=(
 | 
			
		||||
"solaris-sparcv7-cc","cc:-xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris-sparcv8-cc","cc:-xarch=v8 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris-sparcv9-cc","cc:-xtarget=ultra -xarch=v8plus -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris64-sparcv9-cc","cc:-xtarget=ultra -xarch=v9 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::asm/md5-sparcv9.o::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"solaris64-sparcv9-cc","cc:-xtarget=ultra -xarch=v9 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::asm/md5-sparcv9.o::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):/usr/ccs/bin/ar rs",
 | 
			
		||||
####
 | 
			
		||||
"debug-solaris-sparcv8-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"debug-solaris-sparcv9-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
@@ -178,11 +183,11 @@ my %table=(
 | 
			
		||||
# Only N32 and N64 ABIs are supported. If you need O32 ABI build, invoke
 | 
			
		||||
# './Configure irix-[g]cc' manually.
 | 
			
		||||
# -mips4 flag is added by ./config when appropriate.
 | 
			
		||||
"irix-mips3-gcc","gcc:-mabi=n32 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::MD2_CHAR RC4_INDEX RC4_CHAR RC4_CHUNK_LL DES_UNROLL DES_RISC2 DES_PTR BF_PTR SIXTY_FOUR_BIT:asm/mips3.o::",
 | 
			
		||||
"irix-mips3-cc", "cc:-n32 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::DES_PTR RC4_CHAR RC4_CHUNK_LL DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT:asm/mips3.o::",
 | 
			
		||||
"irix-mips3-gcc","gcc:-mabi=n32 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::MD2_CHAR RC4_INDEX RC4_CHAR RC4_CHUNK_LL DES_UNROLL DES_RISC2 DES_PTR BF_PTR SIXTY_FOUR_BIT:${mips3_irix_asm}",
 | 
			
		||||
"irix-mips3-cc", "cc:-n32 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::DES_PTR RC4_CHAR RC4_CHUNK_LL DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT:${mips3_irix_asm}",
 | 
			
		||||
# N64 ABI builds.
 | 
			
		||||
"irix64-mips4-gcc","gcc:-mabi=64 -mips4 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:asm/mips3.o::",
 | 
			
		||||
"irix64-mips4-cc", "cc:-64 -mips4 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:asm/mips3.o::",
 | 
			
		||||
"irix64-mips4-gcc","gcc:-mabi=64 -mips4 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:${mips3_irix_asm}",
 | 
			
		||||
"irix64-mips4-cc", "cc:-64 -mips4 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:${mips3_irix_asm}",
 | 
			
		||||
 | 
			
		||||
#### Unified HP-UX ANSI C configs.
 | 
			
		||||
# Special notes:
 | 
			
		||||
@@ -214,41 +219,41 @@ my %table=(
 | 
			
		||||
#
 | 
			
		||||
#!#"hpux-parisc-cc","cc:-Ae +O3 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
# Since there is mention of this in shlib/hpux10-cc.sh
 | 
			
		||||
"hpux-parisc-cc-o4","cc:-Ae +O4 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux-parisc-gcc","gcc:-O3 -DB_ENDIAN -DBN_DIV2W:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux64-parisc-cc","cc:-Ae +DD64 +O3 +ESlit -z -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dlfcn:hpux64-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux-parisc-cc-o4","cc:-Ae +O4 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
"hpux-parisc-gcc","gcc:-O3 -DB_ENDIAN -DBN_DIV2W:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
"hpux64-parisc-cc","cc:-Ae +DD64 +O3 +ESlit -z -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dlfcn",
 | 
			
		||||
 | 
			
		||||
# More attempts at unified 10.X and 11.X targets for HP C compiler.
 | 
			
		||||
#
 | 
			
		||||
# Chris Ruemmler <ruemmler@cup.hp.com>
 | 
			
		||||
# Kevin Steves <ks@hp.se>
 | 
			
		||||
"hpux-parisc-cc","cc:+O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY::-D_REENTRANT:-ldld:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux-parisc2-cc","cc:+DA2.0 +DS2.0 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldld:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2.o:::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux64-parisc2-cc","cc:+DD64 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2W.o:::::::::dlfcn:hpux64-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux-parisc1_1-cc","cc:+DA1.1 +DS1.1 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldld:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux-parisc-cc","cc:+O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY::-D_REENTRANT:-ldld:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl",
 | 
			
		||||
"hpux-parisc2-cc","cc:+DA2.0 +DS2.0 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldld:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2.o:::::::::dl",
 | 
			
		||||
"hpux64-parisc2-cc","cc:+DD64 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2W.o:::::::::dlfcn",
 | 
			
		||||
"hpux-parisc1_1-cc","cc:+DA1.1 +DS1.1 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldld:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl",
 | 
			
		||||
 | 
			
		||||
# HPUX 9.X config.
 | 
			
		||||
# Don't use the bundled cc.  It is broken.  Use HP ANSI C if possible, or
 | 
			
		||||
# egcs.  gcc 2.8.1 is also broken.
 | 
			
		||||
 | 
			
		||||
"hpux-cc",	"cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::(unknown):-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux-cc",	"cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::(unknown):-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
# If hpux-cc fails (e.g. during "make test"), try the next one; otherwise,
 | 
			
		||||
# please report your OS and compiler version to the openssl-bugs@openssl.org
 | 
			
		||||
# mailing list.
 | 
			
		||||
"hpux-brokencc",	"cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux-brokencc",	"cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
 | 
			
		||||
"hpux-gcc",	"gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux-gcc",	"gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
# If hpux-gcc fails, try this one:
 | 
			
		||||
"hpux-brokengcc",	"gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux-brokengcc",	"gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
 | 
			
		||||
# HPUX 10.X config.  Supports threads.
 | 
			
		||||
"hpux10-cc",	"cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux10-cc",	"cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
# If hpux10-cc fails, try this one (if still fails, try deleting BN_LLONG):
 | 
			
		||||
"hpux10-brokencc",	"cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux10-brokencc",	"cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
 | 
			
		||||
"hpux10-gcc",	"gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux10-gcc",	"gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
# If hpux10-gcc fails, try this one:
 | 
			
		||||
"hpux10-brokengcc",	"gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT:-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"hpux10-brokengcc",	"gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT:-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
 | 
			
		||||
 | 
			
		||||
# HPUX 11.X from www.globus.org.
 | 
			
		||||
# Only works on PA-RISC 2.0 cpus, and not optimized.  Why?
 | 
			
		||||
@@ -262,9 +267,9 @@ my %table=(
 | 
			
		||||
# Dec Alpha, OSF/1 - the alpha164-cc is the flags for a 21164A with
 | 
			
		||||
# the new compiler
 | 
			
		||||
# For gcc, the following gave a %50 speedup on a 164 over the 'DES_INT' version
 | 
			
		||||
"alpha-gcc","gcc:-O3::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_RISC1:asm/alpha.o:::::::::dlfcn:true64-shared::.so",
 | 
			
		||||
"alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:asm/alpha.o:::::::::dlfcn:true64-shared::.so",
 | 
			
		||||
"alpha164-cc", "cc:-std1 -tune host -fast -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:asm/alpha.o:::::::::dlfcn:true64-shared::.so",
 | 
			
		||||
"alpha-gcc","gcc:-O3::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_RISC1:${alpha_asm}:dlfcn:tru64-shared::.so",
 | 
			
		||||
"alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${alpha_asm}:dlfcn:tru64-shared::.so",
 | 
			
		||||
"alpha164-cc", "cc:-std1 -tune host -fast -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${alpha_asm}:dlfcn:tru64-shared::.so",
 | 
			
		||||
"FreeBSD-alpha","gcc:-DTERMIOS -O -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC2::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
 | 
			
		||||
#### Alpha Linux with GNU C and Compaq C setups
 | 
			
		||||
@@ -280,13 +285,13 @@ my %table=(
 | 
			
		||||
#
 | 
			
		||||
#					<appro@fy.chalmers.se>
 | 
			
		||||
#
 | 
			
		||||
"linux-alpha-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o:::::::::dlfcn:linux-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"linux-alpha+bwx-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o:::::::::dlfcn:linux-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::",
 | 
			
		||||
"linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::",
 | 
			
		||||
"linux-alpha-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"linux-alpha+bwx-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${alpha_asm}",
 | 
			
		||||
"linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${alpha_asm}",
 | 
			
		||||
 | 
			
		||||
# assembler versions -- currently defunct:
 | 
			
		||||
##"OpenBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown):SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2:asm/alpha.o::",
 | 
			
		||||
##"OpenBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown):SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2:${alpha_asm}",
 | 
			
		||||
 | 
			
		||||
# The intel boxes :-), It would be worth seeing if bsdi-gcc can use the
 | 
			
		||||
# bn86-elf.o file file since it is hand tweaked assembler.
 | 
			
		||||
@@ -297,14 +302,15 @@ my %table=(
 | 
			
		||||
"linux-mips",   "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::(unknown)::BN_LLONG:::",
 | 
			
		||||
"linux-ppc",    "gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::",
 | 
			
		||||
"linux-m68k",   "gcc:-DB_ENDIAN -DTERMIO -O2 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::",
 | 
			
		||||
"linux-s390",	"gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::",
 | 
			
		||||
"linux-ia64",   "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::(unknown)::SIXTY_FOUR_BIT_LONG::",
 | 
			
		||||
"NetBSD-sparc",	"gcc:-DTERMIOS -O3 -fomit-frame-pointer -mv8 -Wall -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"NetBSD-m68",	"gcc:-DTERMIOS -O3 -fomit-frame-pointer -Wall -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"NetBSD-x86",	"gcc:-DTERMIOS -O3 -fomit-frame-pointer -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"FreeBSD-elf",  "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::-pthread -D_REENTRANT -D_THREAD_SAFE -D_THREADSAFE::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"FreeBSD-elf",  "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"FreeBSD",      "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
 | 
			
		||||
"bsdi-gcc",     "gcc:-O3 -ffast-math -DL_ENDIAN -DPERL5 -m486::(unknown)::RSA_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_bsdi_asm}",
 | 
			
		||||
"bsdi-elf-gcc",     "gcc:-DPERL5 -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"bsdi-elf-gcc",     "gcc:-DPERL5 -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown):-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
"nextstep",	"cc:-O -Wall:<libc.h>:(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::",
 | 
			
		||||
"nextstep3.3",	"cc:-O3 -Wall:<libc.h>:(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::",
 | 
			
		||||
# NCR MP-RAS UNIX ver 02.03.01
 | 
			
		||||
@@ -316,9 +322,14 @@ my %table=(
 | 
			
		||||
# Linux on ARM
 | 
			
		||||
"linux-elf-arm","gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::::::::::dlfcn:linux-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
 | 
			
		||||
 | 
			
		||||
# UnixWare 2.0
 | 
			
		||||
"unixware-2.0","cc:-O -DFILIO_H::(unknown):-lsocket -lnsl:${x86_gcc_des} ${x86_gcc_opts}:::",
 | 
			
		||||
"unixware-2.0-pentium","cc:-O -DFILIO_H -Kpentium -Kthread::(unknown):-lsocket -lnsl:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
 | 
			
		||||
# UnixWare 2.0x fails destest with -O
 | 
			
		||||
"unixware-2.0","cc:-DFILIO_H::-Kthread:-lsocket -lnsl -lx:${x86_gcc_des} ${x86_gcc_opts}:::",
 | 
			
		||||
"unixware-2.0-pentium","cc:-DFILIO_H -Kpentium:-Kthread:-lsocket -lnsl -lx:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
 | 
			
		||||
 | 
			
		||||
# UnixWare 2.1
 | 
			
		||||
"unixware-2.1","cc:-O -DFILIO_H::-Kthread:-lsocket -lnsl -lx:${x86_gcc_des} ${x86_gcc_opts}:::",
 | 
			
		||||
"unixware-2.1-pentium","cc:-O -DFILIO_H -Kpentium::-Kthread:-lsocket -lnsl -lx:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
 | 
			
		||||
"unixware-2.1-p6","cc:-O -DFILIO_H -Kp6::-Kthread:-lsocket -lnsl -lx:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
 | 
			
		||||
 | 
			
		||||
# UnixWare 7
 | 
			
		||||
"unixware-7","cc:-O -DFILIO_H -Kalloca::-Kthread:-lsocket -lnsl:MD2_CHAR RC4_INDEX ${x86_gcc_des}::",
 | 
			
		||||
@@ -326,6 +337,8 @@ my %table=(
 | 
			
		||||
# IBM's AIX.
 | 
			
		||||
"aix-cc",   "cc:-O -DAIX -DB_ENDIAN -qmaxmem=16384::(unknown)::BN_LLONG RC4_CHAR:::",
 | 
			
		||||
"aix-gcc",  "gcc:-O3 -DAIX -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR:::",
 | 
			
		||||
"aix43-cc",   "cc:-O -DAIX -DB_ENDIAN -qmaxmem=16384::(unknown)::BN_LLONG RC4_CHAR::::::::::dlfcn:",
 | 
			
		||||
"aix43-gcc",  "gcc:-O3 -DAIX -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR::::::::::dlfcn:",
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
# Cray T90 (SDSC)
 | 
			
		||||
@@ -355,9 +368,13 @@ my %table=(
 | 
			
		||||
"dgux-R4-gcc",	"gcc:-O3 -fomit-frame-pointer::(unknown):-lnsl -lsocket:RC4_INDEX:RC4_INDEX DES_UNROLL:::",
 | 
			
		||||
"dgux-R4-x86-gcc",	"gcc:-O3 -fomit-frame-pointer -DL_ENDIAN::(unknown):-lnsl -lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}",
 | 
			
		||||
 | 
			
		||||
# SCO 3 - Tim Rice <tim@multitalents.net>
 | 
			
		||||
"sco3-gcc",  "gcc:-O3 -fomit-frame-pointer -Dssize_t=int -DNO_SYS_UN_H::(unknown)::-lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::", # the SCO assembler doesn't seem to like our assembler files ...
 | 
			
		||||
 | 
			
		||||
# SCO 5 - Ben Laurie <ben@algroup.co.uk> says the -O breaks the
 | 
			
		||||
# SCO cc.
 | 
			
		||||
"sco5-cc",  "cc:::(unknown):-lsocket:${x86_gcc_des} ${x86_gcc_opts}:::", # des options?
 | 
			
		||||
"sco5-cc-pentium",  "cc:-Kpentium::(unknown):-lsocket:${x86_gcc_des} ${x86_gcc_opts}:::", # des options?
 | 
			
		||||
"sco5-gcc",  "gcc:-O3 -fomit-frame-pointer::(unknown):-lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::", # the SCO assembler doesn't seem to like our assembler files ...
 | 
			
		||||
 | 
			
		||||
# Sinix/ReliantUNIX RM400
 | 
			
		||||
@@ -442,10 +459,10 @@ my $md5_obj="";
 | 
			
		||||
my $sha1_obj="";
 | 
			
		||||
my $rmd160_obj="";
 | 
			
		||||
my $processor="";
 | 
			
		||||
my $ranlib;
 | 
			
		||||
my $default_ranlib;
 | 
			
		||||
my $perl;
 | 
			
		||||
 | 
			
		||||
$ranlib=&which("ranlib") or $ranlib="true";
 | 
			
		||||
$default_ranlib= &which("ranlib") or $default_ranlib="true";
 | 
			
		||||
$perl=$ENV{'PERL'} or $perl=&which("perl5") or $perl=&which("perl")
 | 
			
		||||
  or $perl="perl";
 | 
			
		||||
 | 
			
		||||
@@ -632,7 +649,7 @@ $openssldir=$prefix . "/" . $openssldir if $openssldir !~ /^\//;
 | 
			
		||||
print "IsWindows=$IsWindows\n";
 | 
			
		||||
 | 
			
		||||
(my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops,my $bn_obj,my $des_obj,my $bf_obj,
 | 
			
		||||
 $md5_obj,$sha1_obj,my $cast_obj,my $rc4_obj,$rmd160_obj,my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag,my $shared_extension)=
 | 
			
		||||
 $md5_obj,$sha1_obj,my $cast_obj,my $rc4_obj,$rmd160_obj,my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag,my $shared_extension,my $ranlib)=
 | 
			
		||||
	split(/\s*:\s*/,$table{$target} . ":" x 30 , -1);
 | 
			
		||||
$cflags="$flags$cflags" if ($flags ne "");
 | 
			
		||||
 | 
			
		||||
@@ -725,6 +742,11 @@ else
 | 
			
		||||
	$no_shared = 1;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
if ($ranlib eq "")
 | 
			
		||||
	{
 | 
			
		||||
	$ranlib = $default_ranlib;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
#my ($bn1)=split(/\s+/,$bn_obj);
 | 
			
		||||
#$bn1 = "" unless defined $bn1;
 | 
			
		||||
#$bn1=$bn_asm unless ($bn1 =~ /\.o$/);
 | 
			
		||||
@@ -831,16 +853,7 @@ while (<IN>)
 | 
			
		||||
	s/^SHLIB_TARGET=.*/SHLIB_TARGET=$shared_target/;
 | 
			
		||||
	s/^SHLIB_MARK=.*/SHLIB_MARK=$shared_mark/;
 | 
			
		||||
	s/^SHARED_LIBS=.*/SHARED_LIBS=\$(SHARED_CRYPTO) \$(SHARED_SSL)/ if (!$no_shared);
 | 
			
		||||
	if ($shared_extension ne "" && $shared_extension =~ /^\.s([ol])\.[^\.]*$/)
 | 
			
		||||
		{
 | 
			
		||||
		my $sotmp = $1;
 | 
			
		||||
		s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp/
 | 
			
		||||
		}
 | 
			
		||||
	elsif ($shared_extension ne "" && $shared_extension =~ /^\.s([ol])\.[^\.]*\.[^\.]*$/)
 | 
			
		||||
		{
 | 
			
		||||
		my $sotmp = $1;
 | 
			
		||||
		s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp.\$(SHLIB_MAJOR) .s$sotmp/;
 | 
			
		||||
		}
 | 
			
		||||
	s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.so.\$(SHLIB_MAJOR) .so/ if ($shared_extension ne "" && $shared_extension !~ /^\.s[ol]$/);
 | 
			
		||||
	print OUT $_."\n";
 | 
			
		||||
	}
 | 
			
		||||
close(IN);
 | 
			
		||||
@@ -1128,7 +1141,7 @@ sub print_table_entry
 | 
			
		||||
	my $bn_obj,my $des_obj,my $bf_obj,
 | 
			
		||||
	my $md5_obj,my $sha1_obj,my $cast_obj,my $rc4_obj,my $rmd160_obj,
 | 
			
		||||
	my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag,
 | 
			
		||||
	my $shared_extension)=
 | 
			
		||||
	my $shared_extension,my $ranlib)=
 | 
			
		||||
	split(/\s*:\s*/,$table{$target} . ":" x 30 , -1);
 | 
			
		||||
			
 | 
			
		||||
	print <<EOF
 | 
			
		||||
@@ -1153,5 +1166,6 @@ sub print_table_entry
 | 
			
		||||
\$shared_target= $shared_target
 | 
			
		||||
\$shared_cflag = $shared_cflag
 | 
			
		||||
\$shared_extension = $shared_extension
 | 
			
		||||
\$ranlib       = $ranlib
 | 
			
		||||
EOF
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										28
									
								
								FAQ
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								FAQ
									
									
									
									
									
								
							@@ -27,8 +27,6 @@ OpenSSL  -  Frequently Asked Questions
 | 
			
		||||
* Why does the OpenSSL test fail with "bc: 1 no implemented"?
 | 
			
		||||
* Why does the OpenSSL compilation fail on Alpha True64 Unix?
 | 
			
		||||
* Why does the OpenSSL compilation fail with "ar: command not found"?
 | 
			
		||||
* Why does the OpenSSL compilation fail on Win32 with VC++?
 | 
			
		||||
* Why aren't tools like 'autoconf' and 'libtool' used?
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* Which is the current version of OpenSSL?
 | 
			
		||||
@@ -432,29 +430,3 @@ and then redo the compilation.  What you should really do is make sure
 | 
			
		||||
'/usr/ccs/bin' is permanently in your $PATH, for example through your
 | 
			
		||||
'.profile' (again, assuming you use a sh-compatible shell).
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* Why does the OpenSSL compilation fail on Win32 with VC++?
 | 
			
		||||
 | 
			
		||||
Sometimes, you may get reports from VC++ command line (cl) that it
 | 
			
		||||
can't find standard include files like stdio.h and other weirdnesses.
 | 
			
		||||
One possible cause is that the environment isn't correctly set up.
 | 
			
		||||
To solve that problem, one should run VCVARS32.BAT which is found in
 | 
			
		||||
the 'bin' subdirectory of the VC++ installation directory (somewhere
 | 
			
		||||
under 'Program Files').  This needs to be done prior to running NMAKE,
 | 
			
		||||
and the changes are only valid for the current DOS session.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
* Why aren't tools like 'autoconf' and 'libtool' used?
 | 
			
		||||
 | 
			
		||||
autoconf is a nice tool, but is unfortunately very Unix-centric.
 | 
			
		||||
Although one can come up with solution to have ports keep in track,
 | 
			
		||||
there's also some work needed for that, and can be quite painful at
 | 
			
		||||
times.  If there was a 'autoconf'-like tool that generated perl
 | 
			
		||||
scripts or something similarly general, it would probably be used
 | 
			
		||||
in OpenSSL much earlier.
 | 
			
		||||
 | 
			
		||||
libtool has repeatadly been reported by some members of the OpenSSL
 | 
			
		||||
development and others to be a pain to use.  So far, those in the
 | 
			
		||||
development team who have said anything about this have expressed
 | 
			
		||||
a wish to avoid libtool for that reason.
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								LICENSE
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								LICENSE
									
									
									
									
									
								
							@@ -12,7 +12,7 @@
 | 
			
		||||
  ---------------
 | 
			
		||||
 | 
			
		||||
/* ====================================================================
 | 
			
		||||
 * Copyright (c) 1998-2000 The OpenSSL Project.  All rights reserved.
 | 
			
		||||
 * Copyright (c) 1998-2001 The OpenSSL Project.  All rights reserved.
 | 
			
		||||
 *
 | 
			
		||||
 * Redistribution and use in source and binary forms, with or without
 | 
			
		||||
 * modification, are permitted provided that the following conditions
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										55
									
								
								Makefile.org
									
									
									
									
									
								
							
							
						
						
									
										55
									
								
								Makefile.org
									
									
									
									
									
								
							@@ -57,7 +57,7 @@ CC= gcc
 | 
			
		||||
#CFLAG= -DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall -Wuninitialized -DSHA1_ASM -DMD5_ASM -DRMD160_ASM
 | 
			
		||||
CFLAG= -DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall -DSHA1_ASM -DMD5_ASM -DRMD160_ASM
 | 
			
		||||
DEPFLAG= 
 | 
			
		||||
PEX_LIBS= -L. -L.. -L../.. -L../../..
 | 
			
		||||
PEX_LIBS= 
 | 
			
		||||
EX_LIBS= 
 | 
			
		||||
AR=ar r
 | 
			
		||||
RANLIB= ranlib
 | 
			
		||||
@@ -161,7 +161,7 @@ SHLIBDIRS= crypto ssl
 | 
			
		||||
SDIRS=  \
 | 
			
		||||
	md2 md4 md5 sha mdc2 hmac ripemd \
 | 
			
		||||
	des rc2 rc4 rc5 idea bf cast \
 | 
			
		||||
	bn rsa dsa dh dso rijndael \
 | 
			
		||||
	bn rsa dsa dh dso \
 | 
			
		||||
	buffer bio stack lhash rand err objects \
 | 
			
		||||
	evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp
 | 
			
		||||
 | 
			
		||||
@@ -220,7 +220,7 @@ libcrypto$(SHLIB_EXT): libcrypto.a
 | 
			
		||||
	fi
 | 
			
		||||
libssl$(SHLIB_EXT): libcrypto$(SHLIB_EXT) libssl.a
 | 
			
		||||
	@if [ "$(SHLIB_TARGET)" != "" ]; then \
 | 
			
		||||
		$(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-L. -lcrypto' build-shared; \
 | 
			
		||||
		$(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-lcrypto' build-shared; \
 | 
			
		||||
	else \
 | 
			
		||||
		echo "There's no support for shared libraries on this platform" >&2; \
 | 
			
		||||
	fi
 | 
			
		||||
@@ -242,7 +242,7 @@ link-shared:
 | 
			
		||||
		if [ -n "$(SHARED_LIBS_LINK_EXTS)" ]; then \
 | 
			
		||||
			tmp="$(SHARED_LIBS_LINK_EXTS)"; \
 | 
			
		||||
			for j in $${tmp:-x}; do \
 | 
			
		||||
				( set -x; ln -s -f $$prev lib$$i$$j ); \
 | 
			
		||||
				( set -x; ln -f -s $$prev lib$$i$$j ); \
 | 
			
		||||
				prev=lib$$i$$j; \
 | 
			
		||||
			done; \
 | 
			
		||||
		fi; \
 | 
			
		||||
@@ -251,50 +251,33 @@ link-shared:
 | 
			
		||||
build-shared: clean-shared do_$(SHLIB_TARGET) link-shared
 | 
			
		||||
 | 
			
		||||
do_bsd-gcc-shared: linux-shared
 | 
			
		||||
do_linux-shared:
 | 
			
		||||
	libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
 | 
			
		||||
do_linux-shared: do_gnu-shared
 | 
			
		||||
do_gnu-shared:
 | 
			
		||||
	libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
 | 
			
		||||
	( set -x; ${CC}  -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
 | 
			
		||||
		-Wl,-S,-soname=lib$$i.so.${SHLIB_MAJOR} \
 | 
			
		||||
		-Wl,-S,-soname=lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
 | 
			
		||||
		-Wl,--whole-archive lib$$i.a \
 | 
			
		||||
		-Wl,--no-whole-archive $$libs ${EX_LIBS} -lc ) || exit 1; \
 | 
			
		||||
	libs="$$libs -L. -l$$i"; \
 | 
			
		||||
	libs="$$libs -l$$i"; \
 | 
			
		||||
	done
 | 
			
		||||
 | 
			
		||||
# This assumes that GNU utilities are *not* used
 | 
			
		||||
do_true64-shared:
 | 
			
		||||
	libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
 | 
			
		||||
do_tru64-shared:
 | 
			
		||||
	libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
 | 
			
		||||
	( set -x; ${CC}  -shared -no_archive -o lib$$i.so \
 | 
			
		||||
		-set_version "${SHLIB_VERSION_HISTORY}${SHLIB_VERSION_NUMBER}" \
 | 
			
		||||
		-all lib$$i.a -none $$libs ${EX_LIBS} -lc ) || exit 1; \
 | 
			
		||||
	libs="$$libs -L. -l$$i"; \
 | 
			
		||||
	libs="$$libs -l$$i"; \
 | 
			
		||||
	done
 | 
			
		||||
 | 
			
		||||
# This assumes that GNU utilities are *not* used
 | 
			
		||||
do_solaris-shared:
 | 
			
		||||
	libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
 | 
			
		||||
	( set -x; ${CC}  -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
 | 
			
		||||
		-h lib$$i.so.${SHLIB_MAJOR} \
 | 
			
		||||
	libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
 | 
			
		||||
	( PATH=/usr/ccs/bin:$$PATH ; export PATH; \
 | 
			
		||||
	  set -x; ${CC}  -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
 | 
			
		||||
		-h lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
 | 
			
		||||
		-z allextract lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
 | 
			
		||||
	libs="$$libs -L. -l$$i"; \
 | 
			
		||||
	done
 | 
			
		||||
 | 
			
		||||
# This assumes that GNU utilities are *not* used
 | 
			
		||||
do_hpux-shared:
 | 
			
		||||
	libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
 | 
			
		||||
	( set -x; /usr/ccs/bin/ld +vnocompatwarnings \
 | 
			
		||||
		-b -z -o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
 | 
			
		||||
		+h lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
 | 
			
		||||
		-Fl lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
 | 
			
		||||
	libs="$$libs -L. -l$$i"; \
 | 
			
		||||
	done
 | 
			
		||||
 | 
			
		||||
# This assumes that GNU utilities are *not* used
 | 
			
		||||
do_hpux64-shared:
 | 
			
		||||
	libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
 | 
			
		||||
	( set -x; /usr/ccs/bin/ld -b -z -o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
 | 
			
		||||
		+h lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
 | 
			
		||||
		+forceload lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
 | 
			
		||||
	libs="$$libs -L. -l$$i"; \
 | 
			
		||||
	libs="$$libs -l$$i"; \
 | 
			
		||||
	done
 | 
			
		||||
 | 
			
		||||
Makefile.ssl: Makefile.org
 | 
			
		||||
@@ -490,19 +473,19 @@ install_docs:
 | 
			
		||||
		$(INSTALL_PREFIX)$(MANDIR)/man3 \
 | 
			
		||||
		$(INSTALL_PREFIX)$(MANDIR)/man5 \
 | 
			
		||||
		$(INSTALL_PREFIX)$(MANDIR)/man7
 | 
			
		||||
	@echo installing man 1 and man 5
 | 
			
		||||
	@for i in doc/apps/*.pod; do \
 | 
			
		||||
		fn=`basename $$i .pod`; \
 | 
			
		||||
		sec=`[ "$$fn" = "config" ] && echo 5 || echo 1`; \
 | 
			
		||||
		echo "installing man$$sec/`basename $$i .pod`.$$sec"; \
 | 
			
		||||
		(cd `dirname $$i`; \
 | 
			
		||||
		$(PERL) ../../util/pod2man.pl --section=$$sec --center=OpenSSL \
 | 
			
		||||
			 --release=$(VERSION) `basename $$i`) \
 | 
			
		||||
			>  $(INSTALL_PREFIX)$(MANDIR)/man$$sec/`basename $$i .pod`.$$sec; \
 | 
			
		||||
	done
 | 
			
		||||
	@echo installing man 3 and man 7
 | 
			
		||||
	@for i in doc/crypto/*.pod doc/ssl/*.pod; do \
 | 
			
		||||
		fn=`basename $$i .pod`; \
 | 
			
		||||
		sec=`[ "$$fn" = "des_modes" ] && echo 7 || echo 3`; \
 | 
			
		||||
		echo "installing man$$sec/`basename $$i .pod`.$$sec"; \
 | 
			
		||||
		(cd `dirname $$i`; \
 | 
			
		||||
		$(PERL) ../../util/pod2man.pl --section=$$sec --center=OpenSSL \
 | 
			
		||||
			--release=$(VERSION) `basename $$i`) \
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										25
									
								
								NEWS
									
									
									
									
									
								
							
							
						
						
									
										25
									
								
								NEWS
									
									
									
									
									
								
							@@ -5,6 +5,31 @@
 | 
			
		||||
  This file gives a brief overview of the major changes between each OpenSSL
 | 
			
		||||
  release. For more details please read the CHANGES file.
 | 
			
		||||
 | 
			
		||||
  Major changes between OpenSSL 0.9.6 and OpenSSL 0.9.6a:
 | 
			
		||||
 | 
			
		||||
      o Security fix: change behavior of OpenSSL to avoid using
 | 
			
		||||
        environment variables when running as root.
 | 
			
		||||
      o Security fix: check the result of RSA-CRT to reduce the
 | 
			
		||||
        possibility of deducing the private key from an incorrectly
 | 
			
		||||
        calculated signature.
 | 
			
		||||
      o Security fix: prevent Bleichenbacher's DSA attack.
 | 
			
		||||
      o Security fix: Zero the premaster secret after deriving the
 | 
			
		||||
        master secret in DH ciphersuites.
 | 
			
		||||
      o Reimplement SSL_peek(), which had various problems.
 | 
			
		||||
      o Compatibility fix: the function des_encrypt() renamed to
 | 
			
		||||
        des_encrypt1() to avoid clashes with some Unixen libc.
 | 
			
		||||
      o Bug fixes for Win32, HP/UX and Irix.
 | 
			
		||||
      o Bug fixes in BIGNUM, SSL, PKCS#7, PKCS#12, X.509, CONF and
 | 
			
		||||
        memory checking routines.
 | 
			
		||||
      o Bug fixes for RSA operations in threaded enviroments.
 | 
			
		||||
      o Bug fixes in misc. openssl applications.
 | 
			
		||||
      o Remove a few potential memory leaks.
 | 
			
		||||
      o Add tighter checks of BIGNUM routines.
 | 
			
		||||
      o Shared library support has been reworked for generality.
 | 
			
		||||
      o More documentation.
 | 
			
		||||
      o New function BN_rand_range().
 | 
			
		||||
      o Add "-rand" option to openssl s_client and s_server.
 | 
			
		||||
 | 
			
		||||
  Major changes between OpenSSL 0.9.5a and OpenSSL 0.9.6:
 | 
			
		||||
 | 
			
		||||
      o Some documentation for BIO and SSL libraries.
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								README
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								README
									
									
									
									
									
								
							@@ -1,5 +1,5 @@
 | 
			
		||||
 | 
			
		||||
 OpenSSL 0.9.7-dev 24 Sep 2000
 | 
			
		||||
 OpenSSL 0.9.6a-beta3 30 Mar 2001
 | 
			
		||||
 | 
			
		||||
 Copyright (c) 1998-2000 The OpenSSL Project
 | 
			
		||||
 Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										66
									
								
								STATUS
									
									
									
									
									
								
							
							
						
						
									
										66
									
								
								STATUS
									
									
									
									
									
								
							@@ -1,10 +1,46 @@
 | 
			
		||||
 | 
			
		||||
  OpenSSL STATUS                           Last modified at
 | 
			
		||||
  ______________                           $Date: 2000/10/23 14:36:18 $
 | 
			
		||||
  ______________                           $Date: 2001/03/22 15:15:58 $
 | 
			
		||||
 | 
			
		||||
  DEVELOPMENT STATE
 | 
			
		||||
 | 
			
		||||
    o  OpenSSL 0.9.7:  Under development...
 | 
			
		||||
    o  OpenSSL 0.9.6a: Bugfix release -- under development...
 | 
			
		||||
                       Beta 1 released on March 13th, 2001
 | 
			
		||||
	HP-UX 10.20 (hpux-parisc-cc)		- PASSED [normal+engine]
 | 
			
		||||
	HP-UX 10.20 (hpux-parisc-gcc)		- PASSED [normal+engine]
 | 
			
		||||
	HP-UX 11.00 32bit (hpux-parisc-gcc)	- FAILED [engine]
 | 
			
		||||
		"openssl speed rsa1024 -engine cswift" fails unless
 | 
			
		||||
		libswift.sl is renamed to libswift.so.
 | 
			
		||||
		[CORRECTED]
 | 
			
		||||
	HP MPE/iX				- PASSED [presumed normal]
 | 
			
		||||
	Linux 2.2.17 SMP (linux-elf)		- PASSED [normal+engine]
 | 
			
		||||
	Windows (VC-WIN32)			- FAILED [presumed normal]
 | 
			
		||||
		Missing line in ms/32all.bat:
 | 
			
		||||
			perl util\mkfiles.pl >MINFO
 | 
			
		||||
		[CORRECTED]
 | 
			
		||||
		In randfile.c, line 214, signed and unsigned int are mixed.
 | 
			
		||||
		[CORRECTED]
 | 
			
		||||
		In s_client.c and s_server.c, RAND_status() needs to get
 | 
			
		||||
		declared (#include <openssl/rand.h>)
 | 
			
		||||
		[CORRECTED]
 | 
			
		||||
	OpenVMS (any version)			- FAILED [normal+engine]
 | 
			
		||||
		Missing instructions in building script.
 | 
			
		||||
		[CORRECTED]
 | 
			
		||||
	AIX 4.3					- FAILED [engine]
 | 
			
		||||
		Needs -DDSO_DLFCN and -DHAVE_DLFCN_H to work.
 | 
			
		||||
		[CORRECTED] (but will not be automagically configured)
 | 
			
		||||
	Irix 6.5.11				- FAILED [presumed normal]
 | 
			
		||||
		BN_sqr test fails.
 | 
			
		||||
        solaris64-sparcv9-cc (SunOS 5.8)        - PASSED [normal+engine]
 | 
			
		||||
	BSDI 4.0.1 (bsdi-elf-gcc)		- FAILED [engine]
 | 
			
		||||
		Needs -DDSO_DLFCN, -DHAVE_DLFCN_H and -ldl to work.
 | 
			
		||||
		[CORRECTED]
 | 
			
		||||
	mingw32 w/ gcc 2.95.2			- PASSED [presumed normal]
 | 
			
		||||
 | 
			
		||||
                       Beta 2 released on March 21st, 2001
 | 
			
		||||
	OpenVMS (tested on VMS 7.2-1 for Alpha)	- PASSED [presumed normal]
 | 
			
		||||
        solaris64-sparcv9-cc (SunOS 5.8)        - PASSED [normal]
 | 
			
		||||
 | 
			
		||||
    o  OpenSSL 0.9.6:  Released on September 24th, 2000
 | 
			
		||||
    o  OpenSSL 0.9.5a: Released on April      1st, 2000
 | 
			
		||||
    o  OpenSSL 0.9.5:  Released on February  28th, 2000
 | 
			
		||||
@@ -18,14 +54,13 @@
 | 
			
		||||
 | 
			
		||||
  AVAILABLE PATCHES
 | 
			
		||||
 | 
			
		||||
    o CA.pl patch (Damien Miller)
 | 
			
		||||
 | 
			
		||||
  IN PROGRESS
 | 
			
		||||
 | 
			
		||||
    o Steve is currently working on (in no particular order):
 | 
			
		||||
        ASN1 code redesign, butchery, replacement.
 | 
			
		||||
        OCSP
 | 
			
		||||
        EVP cipher enhancement.
 | 
			
		||||
     /* Proper (or at least usable) certificate chain verification. */
 | 
			
		||||
        Enhanced certificate chain verification.
 | 
			
		||||
	Private key, certificate and CRL API and implementation.
 | 
			
		||||
	Developing and bugfixing PKCS#7 (S/MIME code).
 | 
			
		||||
        Various X509 issues: character sets, certificate request extensions.
 | 
			
		||||
@@ -34,17 +69,30 @@
 | 
			
		||||
    o Richard is currently working on:
 | 
			
		||||
	UTIL (a new set of library functions to support some higher level
 | 
			
		||||
	      functionality that is currently missing).
 | 
			
		||||
	Dynamic thread-lock support.
 | 
			
		||||
	Shared library support for VMS.
 | 
			
		||||
	OCSP
 | 
			
		||||
	Kerberos 5 authentication
 | 
			
		||||
	Constification
 | 
			
		||||
 | 
			
		||||
  NEEDS PATCH
 | 
			
		||||
 | 
			
		||||
    o  non-blocking socket on AIX
 | 
			
		||||
    o  $(PERL) in */Makefile.ssl
 | 
			
		||||
    o  "Sign the certificate?" - "n" creates empty certificate file
 | 
			
		||||
    o  apps/ca.c: "Sign the certificate?" - "n" creates empty certificate file
 | 
			
		||||
 | 
			
		||||
    o  OpenSSL_0_9_6-stable:
 | 
			
		||||
       #include <openssl/e_os.h> in exported header files is illegal since
 | 
			
		||||
       e_os.h is suitable only for library-internal use.
 | 
			
		||||
 | 
			
		||||
    o  Whenever strncpy is used, make sure the resulting string is NULL-terminated
 | 
			
		||||
       or an error is reported
 | 
			
		||||
 | 
			
		||||
  OPEN ISSUES
 | 
			
		||||
 | 
			
		||||
    o  crypto/ex_data.c is not really thread-safe and so must be used
 | 
			
		||||
       with care (e.g., extra locking where necessary, or don't call
 | 
			
		||||
       CRYPTO_get_ex_new_index once multiple threads exist).
 | 
			
		||||
       The current API is not suitable for everything that it pretends
 | 
			
		||||
       to offer.
 | 
			
		||||
 | 
			
		||||
    o  The Makefile hierarchy and build mechanism is still not a round thing:
 | 
			
		||||
 | 
			
		||||
       1. The config vs. Configure scripts
 | 
			
		||||
 
 | 
			
		||||
@@ -158,7 +158,6 @@ app_rand.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
app_rand.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
 | 
			
		||||
app_rand.o: ../include/openssl/rand.h ../include/openssl/rc2.h
 | 
			
		||||
app_rand.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
app_rand.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
app_rand.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
app_rand.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
app_rand.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -179,8 +178,7 @@ apps.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
apps.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
apps.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
 | 
			
		||||
apps.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
apps.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
apps.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
apps.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
apps.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
apps.o: ../include/openssl/sha.h ../include/openssl/stack.h
 | 
			
		||||
apps.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 | 
			
		||||
@@ -201,7 +199,6 @@ asn1pars.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
asn1pars.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
asn1pars.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
asn1pars.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
asn1pars.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
asn1pars.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
asn1pars.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
asn1pars.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -221,8 +218,7 @@ ca.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
ca.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
 | 
			
		||||
ca.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
 | 
			
		||||
ca.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
ca.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
ca.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
ca.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
ca.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
ca.o: ../include/openssl/sha.h ../include/openssl/stack.h
 | 
			
		||||
ca.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
 | 
			
		||||
@@ -244,8 +240,7 @@ ciphers.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
ciphers.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
 | 
			
		||||
ciphers.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
 | 
			
		||||
ciphers.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
ciphers.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
ciphers.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
ciphers.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
ciphers.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
ciphers.o: ../include/openssl/sha.h ../include/openssl/ssl.h
 | 
			
		||||
ciphers.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
 | 
			
		||||
@@ -268,7 +263,6 @@ crl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
crl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
crl.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
crl.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
crl.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
crl.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
crl.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
crl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -290,7 +284,6 @@ crl2p7.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
crl2p7.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
crl2p7.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
crl2p7.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
crl2p7.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
crl2p7.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
crl2p7.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
crl2p7.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -311,7 +304,6 @@ dgst.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
dgst.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
dgst.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
dgst.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
dgst.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
dgst.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
dgst.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
dgst.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -331,8 +323,7 @@ dh.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
dh.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
 | 
			
		||||
dh.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
 | 
			
		||||
dh.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
dh.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
dh.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
dh.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
dh.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
dh.o: ../include/openssl/sha.h ../include/openssl/stack.h
 | 
			
		||||
dh.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 | 
			
		||||
@@ -353,7 +344,6 @@ dsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
dsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
dsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
dsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
dsa.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
dsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
dsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
dsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -374,7 +364,6 @@ dsaparam.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
dsaparam.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
dsaparam.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
dsaparam.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
dsaparam.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
dsaparam.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
dsaparam.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
dsaparam.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -395,8 +384,7 @@ enc.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
enc.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
enc.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
 | 
			
		||||
enc.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
enc.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
enc.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
enc.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
enc.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
enc.o: ../include/openssl/sha.h ../include/openssl/stack.h
 | 
			
		||||
enc.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 | 
			
		||||
@@ -417,8 +405,7 @@ errstr.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
errstr.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
 | 
			
		||||
errstr.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
 | 
			
		||||
errstr.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
errstr.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
errstr.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
errstr.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
errstr.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
errstr.o: ../include/openssl/sha.h ../include/openssl/ssl.h
 | 
			
		||||
errstr.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
 | 
			
		||||
@@ -441,8 +428,7 @@ gendh.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
gendh.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
gendh.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
 | 
			
		||||
gendh.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
gendh.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
gendh.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
gendh.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
gendh.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
gendh.o: ../include/openssl/sha.h ../include/openssl/stack.h
 | 
			
		||||
gendh.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 | 
			
		||||
@@ -463,7 +449,6 @@ gendsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
gendsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
gendsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
gendsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
gendsa.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
gendsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
gendsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
gendsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -484,7 +469,6 @@ genrsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
genrsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
genrsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
genrsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
genrsa.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
genrsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
genrsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
genrsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -505,7 +489,6 @@ nseq.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
nseq.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
nseq.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
nseq.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
nseq.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
nseq.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
nseq.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
nseq.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -526,8 +509,7 @@ openssl.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
openssl.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
 | 
			
		||||
openssl.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
 | 
			
		||||
openssl.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
openssl.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
openssl.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
openssl.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
openssl.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
openssl.o: ../include/openssl/sha.h ../include/openssl/ssl.h
 | 
			
		||||
openssl.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
 | 
			
		||||
@@ -550,8 +532,7 @@ passwd.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
 | 
			
		||||
passwd.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
passwd.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
 | 
			
		||||
passwd.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
passwd.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
passwd.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
passwd.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
passwd.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
passwd.o: ../include/openssl/sha.h ../include/openssl/stack.h
 | 
			
		||||
passwd.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 | 
			
		||||
@@ -572,8 +553,7 @@ pkcs12.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
pkcs12.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
pkcs12.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
 | 
			
		||||
pkcs12.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
pkcs12.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
pkcs12.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
pkcs12.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
pkcs12.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
pkcs12.o: ../include/openssl/sha.h ../include/openssl/stack.h
 | 
			
		||||
pkcs12.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 | 
			
		||||
@@ -594,7 +574,6 @@ pkcs7.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
pkcs7.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
pkcs7.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
pkcs7.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
pkcs7.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
pkcs7.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
pkcs7.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
pkcs7.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -615,8 +594,7 @@ pkcs8.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
pkcs8.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
pkcs8.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
 | 
			
		||||
pkcs8.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
pkcs8.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
pkcs8.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
pkcs8.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
pkcs8.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
pkcs8.o: ../include/openssl/sha.h ../include/openssl/stack.h
 | 
			
		||||
pkcs8.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 | 
			
		||||
@@ -636,8 +614,7 @@ rand.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
 | 
			
		||||
rand.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
rand.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
 | 
			
		||||
rand.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
rand.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
rand.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
rand.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
rand.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
rand.o: ../include/openssl/sha.h ../include/openssl/stack.h
 | 
			
		||||
rand.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 | 
			
		||||
@@ -658,7 +635,6 @@ req.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
req.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
req.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
req.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
req.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
req.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
req.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
req.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -680,7 +656,6 @@ rsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
rsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
rsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
rsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
rsa.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
rsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
rsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
rsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -701,7 +676,6 @@ rsautl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
rsautl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
rsautl.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
rsautl.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
rsautl.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
rsautl.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
rsautl.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
rsautl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -722,8 +696,7 @@ s_cb.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
s_cb.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
 | 
			
		||||
s_cb.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
 | 
			
		||||
s_cb.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
s_cb.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
s_cb.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
s_cb.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
s_cb.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
s_cb.o: ../include/openssl/sha.h ../include/openssl/ssl.h
 | 
			
		||||
s_cb.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
 | 
			
		||||
@@ -745,16 +718,15 @@ s_client.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
 | 
			
		||||
s_client.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
s_client.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
 | 
			
		||||
s_client.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
 | 
			
		||||
s_client.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
s_client.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
s_client.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
s_client.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
s_client.o: ../include/openssl/sha.h ../include/openssl/ssl.h
 | 
			
		||||
s_client.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
 | 
			
		||||
s_client.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
 | 
			
		||||
s_client.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 | 
			
		||||
s_client.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
 | 
			
		||||
s_client.o: s_apps.h
 | 
			
		||||
s_client.o: ../include/openssl/rand.h ../include/openssl/rc2.h
 | 
			
		||||
s_client.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
s_client.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
s_client.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
s_client.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
 | 
			
		||||
s_client.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
 | 
			
		||||
s_client.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
s_client.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 | 
			
		||||
s_client.o: ../include/openssl/x509_vfy.h apps.h s_apps.h
 | 
			
		||||
s_server.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 | 
			
		||||
s_server.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
 | 
			
		||||
s_server.o: ../include/openssl/buffer.h ../include/openssl/cast.h
 | 
			
		||||
@@ -770,16 +742,15 @@ s_server.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
 | 
			
		||||
s_server.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
s_server.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
 | 
			
		||||
s_server.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
 | 
			
		||||
s_server.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
s_server.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
s_server.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
s_server.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
s_server.o: ../include/openssl/sha.h ../include/openssl/ssl.h
 | 
			
		||||
s_server.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
 | 
			
		||||
s_server.o: ../include/openssl/ssl3.h ../include/openssl/stack.h
 | 
			
		||||
s_server.o: ../include/openssl/symhacks.h ../include/openssl/tls1.h
 | 
			
		||||
s_server.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h
 | 
			
		||||
s_server.o: s_apps.h
 | 
			
		||||
s_server.o: ../include/openssl/rand.h ../include/openssl/rc2.h
 | 
			
		||||
s_server.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
s_server.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
s_server.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
s_server.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
 | 
			
		||||
s_server.o: ../include/openssl/ssl23.h ../include/openssl/ssl3.h
 | 
			
		||||
s_server.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
s_server.o: ../include/openssl/tls1.h ../include/openssl/x509.h
 | 
			
		||||
s_server.o: ../include/openssl/x509_vfy.h apps.h s_apps.h
 | 
			
		||||
s_socket.o: ../include/openssl/asn1.h ../include/openssl/bio.h
 | 
			
		||||
s_socket.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
 | 
			
		||||
s_socket.o: ../include/openssl/buffer.h ../include/openssl/cast.h
 | 
			
		||||
@@ -796,7 +767,6 @@ s_socket.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
s_socket.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
s_socket.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
s_socket.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
s_socket.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
s_socket.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
s_socket.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
s_socket.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
 | 
			
		||||
@@ -820,8 +790,7 @@ s_time.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
s_time.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
 | 
			
		||||
s_time.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
 | 
			
		||||
s_time.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
s_time.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
s_time.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
s_time.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
s_time.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
s_time.o: ../include/openssl/sha.h ../include/openssl/ssl.h
 | 
			
		||||
s_time.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
 | 
			
		||||
@@ -845,8 +814,7 @@ sess_id.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
sess_id.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
 | 
			
		||||
sess_id.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
 | 
			
		||||
sess_id.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
sess_id.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
sess_id.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
sess_id.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
sess_id.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
sess_id.o: ../include/openssl/sha.h ../include/openssl/ssl.h
 | 
			
		||||
sess_id.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
 | 
			
		||||
@@ -869,7 +837,6 @@ smime.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
smime.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
smime.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
smime.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
smime.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
smime.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
smime.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
smime.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -890,7 +857,6 @@ speed.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
speed.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
 | 
			
		||||
speed.o: ../include/openssl/rand.h ../include/openssl/rc2.h
 | 
			
		||||
speed.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
speed.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
speed.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
speed.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
speed.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -912,7 +878,6 @@ spkac.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
spkac.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
spkac.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
spkac.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
spkac.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
spkac.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
spkac.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
spkac.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -933,7 +898,6 @@ verify.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
verify.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
verify.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
verify.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
verify.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
verify.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
verify.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
verify.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
@@ -953,8 +917,7 @@ version.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
 | 
			
		||||
version.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
 | 
			
		||||
version.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
 | 
			
		||||
version.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
 | 
			
		||||
version.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
version.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
 | 
			
		||||
version.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h
 | 
			
		||||
version.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
 | 
			
		||||
version.o: ../include/openssl/sha.h ../include/openssl/stack.h
 | 
			
		||||
version.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
 | 
			
		||||
@@ -975,7 +938,6 @@ x509.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 | 
			
		||||
x509.o: ../include/openssl/pem.h ../include/openssl/pem2.h
 | 
			
		||||
x509.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
 | 
			
		||||
x509.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
 | 
			
		||||
x509.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
 | 
			
		||||
x509.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
 | 
			
		||||
x509.o: ../include/openssl/safestack.h ../include/openssl/sha.h
 | 
			
		||||
x509.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
 
 | 
			
		||||
@@ -142,21 +142,18 @@ int app_RAND_load_file(const char *file, BIO *bio_e, int dont_warn)
 | 
			
		||||
		}
 | 
			
		||||
	if (file == NULL || !RAND_load_file(file, -1))
 | 
			
		||||
		{
 | 
			
		||||
		if (RAND_status() == 0)
 | 
			
		||||
		if (RAND_status() == 0 && !dont_warn)
 | 
			
		||||
			{
 | 
			
		||||
			if (!dont_warn)
 | 
			
		||||
			BIO_printf(bio_e,"unable to load 'random state'\n");
 | 
			
		||||
			BIO_printf(bio_e,"This means that the random number generator has not been seeded\n");
 | 
			
		||||
			BIO_printf(bio_e,"with much random data.\n");
 | 
			
		||||
			if (consider_randfile) /* explanation does not apply when a file is explicitly named */
 | 
			
		||||
				{
 | 
			
		||||
				BIO_printf(bio_e,"unable to load 'random state'\n");
 | 
			
		||||
				BIO_printf(bio_e,"This means that the random number generator has not been seeded\n");
 | 
			
		||||
				BIO_printf(bio_e,"with much random data.\n");
 | 
			
		||||
				if (consider_randfile) /* explanation does not apply when a file is explicitly named */
 | 
			
		||||
					{
 | 
			
		||||
					BIO_printf(bio_e,"Consider setting the RANDFILE environment variable to point at a file that\n");
 | 
			
		||||
					BIO_printf(bio_e,"'random' data can be kept in (the file will be overwritten).\n");
 | 
			
		||||
					}
 | 
			
		||||
				BIO_printf(bio_e,"Consider setting the RANDFILE environment variable to point at a file that\n");
 | 
			
		||||
				BIO_printf(bio_e,"'random' data can be kept in (the file will be overwritten).\n");
 | 
			
		||||
				}
 | 
			
		||||
			return 0;
 | 
			
		||||
			}
 | 
			
		||||
		return 0;
 | 
			
		||||
		}
 | 
			
		||||
	seeded = 1;
 | 
			
		||||
	return 1;
 | 
			
		||||
@@ -180,8 +177,10 @@ long app_RAND_load_files(char *name)
 | 
			
		||||
		if (*n == '\0') break;
 | 
			
		||||
 | 
			
		||||
		egd=RAND_egd(n);
 | 
			
		||||
		if (egd > 0) tot+=egd;
 | 
			
		||||
		tot+=RAND_load_file(n,-1);
 | 
			
		||||
		if (egd > 0)
 | 
			
		||||
			tot+=egd;
 | 
			
		||||
		else
 | 
			
		||||
			tot+=RAND_load_file(n,-1);
 | 
			
		||||
		if (last) break;
 | 
			
		||||
		}
 | 
			
		||||
	if (tot > 512)
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										57
									
								
								apps/apps.c
									
									
									
									
									
								
							
							
						
						
									
										57
									
								
								apps/apps.c
									
									
									
									
									
								
							@@ -74,14 +74,6 @@
 | 
			
		||||
#  include "bss_file.c"
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
typedef struct {
 | 
			
		||||
	char *name;
 | 
			
		||||
	unsigned long flag;
 | 
			
		||||
	unsigned long mask;
 | 
			
		||||
} NAME_EX_TBL;
 | 
			
		||||
 | 
			
		||||
static int set_table_opts(unsigned long *flags, const char *arg, const NAME_EX_TBL *in_tbl);
 | 
			
		||||
 | 
			
		||||
int app_init(long mesgwin);
 | 
			
		||||
#ifdef undef /* never finished - probably never will be :-) */
 | 
			
		||||
int args_from_file(char *file, int *argc, char **argv[])
 | 
			
		||||
@@ -702,43 +694,16 @@ end:
 | 
			
		||||
	return(othercerts);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define X509V3_EXT_UNKNOWN_MASK		(0xfL << 16)
 | 
			
		||||
/* Return error for unknown extensions */
 | 
			
		||||
#define X509V3_EXT_DEFAULT		0
 | 
			
		||||
/* Print error for unknown extensions */
 | 
			
		||||
#define X509V3_EXT_ERROR_UNKNOWN	(1L << 16)
 | 
			
		||||
/* ASN1 parse unknown extensions */
 | 
			
		||||
#define X509V3_EXT_PARSE_UNKNOWN	(2L << 16)
 | 
			
		||||
/* BIO_dump unknown extensions */
 | 
			
		||||
#define X509V3_EXT_DUMP_UNKNOWN		(3L << 16)
 | 
			
		||||
 | 
			
		||||
int set_cert_ex(unsigned long *flags, const char *arg)
 | 
			
		||||
{
 | 
			
		||||
	static const NAME_EX_TBL cert_tbl[] = {
 | 
			
		||||
		{ "compatible", X509_FLAG_COMPAT, 0xffffffffl},
 | 
			
		||||
		{ "no_header", X509_FLAG_NO_HEADER, 0},
 | 
			
		||||
		{ "no_version", X509_FLAG_NO_VERSION, 0},
 | 
			
		||||
		{ "no_serial", X509_FLAG_NO_SERIAL, 0},
 | 
			
		||||
		{ "no_signame", X509_FLAG_NO_SIGNAME, 0},
 | 
			
		||||
		{ "no_validity", X509_FLAG_NO_VALIDITY, 0},
 | 
			
		||||
		{ "no_subject", X509_FLAG_NO_SUBJECT, 0},
 | 
			
		||||
		{ "no_pubkey", X509_FLAG_NO_PUBKEY, 0},
 | 
			
		||||
		{ "no_extensions", X509_FLAG_NO_EXTENSIONS, 0},
 | 
			
		||||
		{ "no_sigdump", X509_FLAG_NO_SIGDUMP, 0},
 | 
			
		||||
		{ "no_aux", X509_FLAG_NO_AUX, 0},
 | 
			
		||||
		{ "ext_default", X509V3_EXT_DEFAULT, X509V3_EXT_UNKNOWN_MASK},
 | 
			
		||||
		{ "ext_error", X509V3_EXT_ERROR_UNKNOWN, X509V3_EXT_UNKNOWN_MASK},
 | 
			
		||||
		{ "ext_parse", X509V3_EXT_PARSE_UNKNOWN, X509V3_EXT_UNKNOWN_MASK},
 | 
			
		||||
		{ "ext_dump", X509V3_EXT_DUMP_UNKNOWN, X509V3_EXT_UNKNOWN_MASK},
 | 
			
		||||
		{ NULL, 0, 0}
 | 
			
		||||
	};
 | 
			
		||||
	return set_table_opts(flags, arg, cert_tbl);
 | 
			
		||||
}
 | 
			
		||||
typedef struct {
 | 
			
		||||
	char *name;
 | 
			
		||||
	unsigned long flag;
 | 
			
		||||
	unsigned long mask;
 | 
			
		||||
} NAME_EX_TBL;
 | 
			
		||||
 | 
			
		||||
int set_name_ex(unsigned long *flags, const char *arg)
 | 
			
		||||
{
 | 
			
		||||
	static const NAME_EX_TBL ex_tbl[] = {
 | 
			
		||||
	char c;
 | 
			
		||||
	const NAME_EX_TBL *ptbl, ex_tbl[] = {
 | 
			
		||||
		{ "esc_2253", ASN1_STRFLGS_ESC_2253, 0},
 | 
			
		||||
		{ "esc_ctrl", ASN1_STRFLGS_ESC_CTRL, 0},
 | 
			
		||||
		{ "esc_msb", ASN1_STRFLGS_ESC_MSB, 0},
 | 
			
		||||
@@ -766,13 +731,7 @@ int set_name_ex(unsigned long *flags, const char *arg)
 | 
			
		||||
		{ "multiline", XN_FLAG_MULTILINE, 0xffffffffL},
 | 
			
		||||
		{ NULL, 0, 0}
 | 
			
		||||
	};
 | 
			
		||||
	return set_table_opts(flags, arg, ex_tbl);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static int set_table_opts(unsigned long *flags, const char *arg, const NAME_EX_TBL *in_tbl)
 | 
			
		||||
{
 | 
			
		||||
	char c;
 | 
			
		||||
	const NAME_EX_TBL *ptbl;
 | 
			
		||||
	c = arg[0];
 | 
			
		||||
 | 
			
		||||
	if(c == '-') {
 | 
			
		||||
@@ -783,7 +742,7 @@ static int set_table_opts(unsigned long *flags, const char *arg, const NAME_EX_T
 | 
			
		||||
		arg++;
 | 
			
		||||
	} else c = 1;
 | 
			
		||||
 | 
			
		||||
	for(ptbl = in_tbl; ptbl->name; ptbl++) {
 | 
			
		||||
	for(ptbl = ex_tbl; ptbl->name; ptbl++) {
 | 
			
		||||
		if(!strcmp(arg, ptbl->name)) {
 | 
			
		||||
			*flags &= ~ptbl->mask;
 | 
			
		||||
			if(c) *flags |= ptbl->flag;
 | 
			
		||||
 
 | 
			
		||||
@@ -147,7 +147,6 @@ int chopup_args(ARGS *arg,char *buf, int *argc, char **argv[]);
 | 
			
		||||
int dump_cert_text(BIO *out, X509 *x);
 | 
			
		||||
void print_name(BIO *out, char *title, X509_NAME *nm, unsigned long lflags);
 | 
			
		||||
#endif
 | 
			
		||||
int set_cert_ex(unsigned long *flags, const char *arg);
 | 
			
		||||
int set_name_ex(unsigned long *flags, const char *arg);
 | 
			
		||||
int app_passwd(BIO *err, char *arg1, char *arg2, char **pass1, char **pass2);
 | 
			
		||||
int add_oid_section(BIO *err, LHASH *conf);
 | 
			
		||||
 
 | 
			
		||||
@@ -311,7 +311,7 @@ bad:
 | 
			
		||||
		printf("\tdsa->g=BN_bin2bn(dsa%d_g,sizeof(dsa%d_g),NULL);\n",
 | 
			
		||||
			bits_p,bits_p);
 | 
			
		||||
		printf("\tif ((dsa->p == NULL) || (dsa->q == NULL) || (dsa->g == NULL))\n");
 | 
			
		||||
		printf("\t\treturn(NULL);\n");
 | 
			
		||||
		printf("\t\t{ DSA_free(dsa); return(NULL); }\n");
 | 
			
		||||
		printf("\treturn(dsa);\n\t}\n");
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -308,11 +308,6 @@ bad:
 | 
			
		||||
				LN_rc5_cfb64, LN_rc5_ofb64);
 | 
			
		||||
			BIO_printf(bio_err," -%-4s (%s)\n","rc5", LN_rc5_cbc);
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef NO_RIJNDAEL
 | 
			
		||||
			BIO_printf(bio_err," -%-12s -%-12s -%-12s -%-12s\n",
 | 
			
		||||
				   LN_rijndael_ecb_k128_b128,"","","","");
 | 
			
		||||
#endif
 | 
			
		||||
			
 | 
			
		||||
			goto end;
 | 
			
		||||
			}
 | 
			
		||||
		argc--;
 | 
			
		||||
 
 | 
			
		||||
@@ -272,6 +272,7 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
			}
 | 
			
		||||
		while (!done);
 | 
			
		||||
		}
 | 
			
		||||
	ret = 0;
 | 
			
		||||
 | 
			
		||||
err:
 | 
			
		||||
	ERR_print_errors(bio_err);
 | 
			
		||||
@@ -315,7 +316,7 @@ static char *md5crypt(const char *passwd, const char *magic, const char *salt)
 | 
			
		||||
	strncat(out_buf, "$", 1);
 | 
			
		||||
	strncat(out_buf, salt, 8);
 | 
			
		||||
	assert(strlen(out_buf) <= 6 + 8); /* "$apr1$..salt.." */
 | 
			
		||||
	salt_out = out_buf + 6;
 | 
			
		||||
	salt_out = out_buf + 2 + strlen(magic);
 | 
			
		||||
	salt_len = strlen(salt_out);
 | 
			
		||||
	assert(salt_len <= 8);
 | 
			
		||||
	
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										29
									
								
								apps/req.c
									
									
									
									
									
								
							
							
						
						
									
										29
									
								
								apps/req.c
									
									
									
									
									
								
							@@ -143,7 +143,6 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
#ifndef NO_DSA
 | 
			
		||||
	DSA *dsa_params=NULL;
 | 
			
		||||
#endif
 | 
			
		||||
	unsigned long nmflag = 0;
 | 
			
		||||
	int ex=1,x509=0,days=30;
 | 
			
		||||
	X509 *x509ss=NULL;
 | 
			
		||||
	X509_REQ *req=NULL;
 | 
			
		||||
@@ -151,7 +150,7 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
	int i,badops=0,newreq=0,newkey= -1,pkey_type=0;
 | 
			
		||||
	BIO *in=NULL,*out=NULL;
 | 
			
		||||
	int informat,outformat,verify=0,noout=0,text=0,keyform=FORMAT_PEM;
 | 
			
		||||
	int nodes=0,kludge=0,newhdr=0,subject=0;
 | 
			
		||||
	int nodes=0,kludge=0,newhdr=0;
 | 
			
		||||
	char *infile,*outfile,*prog,*keyfile=NULL,*template=NULL,*keyout=NULL;
 | 
			
		||||
	char *extensions = NULL;
 | 
			
		||||
	char *req_exts = NULL;
 | 
			
		||||
@@ -323,13 +322,6 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
			nodes=1;
 | 
			
		||||
		else if (strcmp(*argv,"-noout") == 0)
 | 
			
		||||
			noout=1;
 | 
			
		||||
		else if (strcmp(*argv,"-nameopt") == 0)
 | 
			
		||||
			{
 | 
			
		||||
			if (--argc < 1) goto bad;
 | 
			
		||||
			if (!set_name_ex(&nmflag, *(++argv))) goto bad;
 | 
			
		||||
			}
 | 
			
		||||
		else if (strcmp(*argv,"-subject") == 0)
 | 
			
		||||
			subject=1;
 | 
			
		||||
		else if (strcmp(*argv,"-text") == 0)
 | 
			
		||||
			text=1;
 | 
			
		||||
		else if (strcmp(*argv,"-x509") == 0)
 | 
			
		||||
@@ -693,16 +685,15 @@ loop:
 | 
			
		||||
 | 
			
		||||
	if (newreq || x509)
 | 
			
		||||
		{
 | 
			
		||||
#ifndef NO_DSA
 | 
			
		||||
		if (pkey->type == EVP_PKEY_DSA)
 | 
			
		||||
			digest=EVP_dss1();
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
		if (pkey == NULL)
 | 
			
		||||
			{
 | 
			
		||||
			BIO_printf(bio_err,"you need to specify a private key\n");
 | 
			
		||||
			goto end;
 | 
			
		||||
			}
 | 
			
		||||
#ifndef NO_DSA
 | 
			
		||||
		if (pkey->type == EVP_PKEY_DSA)
 | 
			
		||||
			digest=EVP_dss1();
 | 
			
		||||
#endif
 | 
			
		||||
		if (req == NULL)
 | 
			
		||||
			{
 | 
			
		||||
			req=X509_REQ_new();
 | 
			
		||||
@@ -811,7 +802,7 @@ loop:
 | 
			
		||||
			BIO_printf(bio_err,"verify OK\n");
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	if (noout && !text && !modulus && !subject)
 | 
			
		||||
	if (noout && !text && !modulus)
 | 
			
		||||
		{
 | 
			
		||||
		ex=0;
 | 
			
		||||
		goto end;
 | 
			
		||||
@@ -848,14 +839,6 @@ loop:
 | 
			
		||||
			X509_REQ_print(out,req);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	if(subject) 
 | 
			
		||||
		{
 | 
			
		||||
		if(x509)
 | 
			
		||||
			print_name(out, "subject=", X509_get_subject_name(x509ss), nmflag);
 | 
			
		||||
		else
 | 
			
		||||
			print_name(out, "subject=", X509_REQ_get_subject_name(req), nmflag);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	if (modulus)
 | 
			
		||||
		{
 | 
			
		||||
		EVP_PKEY *pubkey;
 | 
			
		||||
 
 | 
			
		||||
@@ -79,6 +79,7 @@ typedef unsigned int u_int;
 | 
			
		||||
#include <openssl/ssl.h>
 | 
			
		||||
#include <openssl/err.h>
 | 
			
		||||
#include <openssl/pem.h>
 | 
			
		||||
#include <openssl/rand.h>
 | 
			
		||||
#include "s_apps.h"
 | 
			
		||||
 | 
			
		||||
#ifdef WINDOWS
 | 
			
		||||
@@ -152,6 +153,7 @@ static void sc_usage(void)
 | 
			
		||||
	BIO_printf(bio_err," -bugs         - Switch on all SSL implementation bug workarounds\n");
 | 
			
		||||
	BIO_printf(bio_err," -cipher       - preferred cipher to use, use the 'openssl ciphers'\n");
 | 
			
		||||
	BIO_printf(bio_err,"                 command to see what is available\n");
 | 
			
		||||
	BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR);
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
@@ -179,6 +181,7 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
	int prexit = 0;
 | 
			
		||||
	SSL_METHOD *meth=NULL;
 | 
			
		||||
	BIO *sbio;
 | 
			
		||||
	char *inrand=NULL;
 | 
			
		||||
#ifdef WINDOWS
 | 
			
		||||
	struct timeval tv;
 | 
			
		||||
#endif
 | 
			
		||||
@@ -316,6 +319,11 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
		else if (strcmp(*argv,"-nbio") == 0)
 | 
			
		||||
			{ c_nbio=1; }
 | 
			
		||||
#endif
 | 
			
		||||
		else if (strcmp(*argv,"-rand") == 0)
 | 
			
		||||
			{
 | 
			
		||||
			if (--argc < 1) goto bad;
 | 
			
		||||
			inrand= *(++argv);
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
			{
 | 
			
		||||
			BIO_printf(bio_err,"unknown option %s\n",*argv);
 | 
			
		||||
@@ -332,7 +340,14 @@ bad:
 | 
			
		||||
		goto end;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	app_RAND_load_file(NULL, bio_err, 0);
 | 
			
		||||
	if (!app_RAND_load_file(NULL, bio_err, 1) && inrand == NULL
 | 
			
		||||
		&& !RAND_status())
 | 
			
		||||
		{
 | 
			
		||||
		BIO_printf(bio_err,"warning, not much extra random data, consider using the -rand option\n");
 | 
			
		||||
		}
 | 
			
		||||
	if (inrand != NULL)
 | 
			
		||||
		BIO_printf(bio_err,"%ld semi-random bytes loaded\n",
 | 
			
		||||
			app_RAND_load_files(inrand));
 | 
			
		||||
 | 
			
		||||
	if (bio_c_out == NULL)
 | 
			
		||||
		{
 | 
			
		||||
 
 | 
			
		||||
@@ -83,6 +83,7 @@ typedef unsigned int u_int;
 | 
			
		||||
#include <openssl/pem.h>
 | 
			
		||||
#include <openssl/x509.h>
 | 
			
		||||
#include <openssl/ssl.h>
 | 
			
		||||
#include <openssl/rand.h>
 | 
			
		||||
#include "s_apps.h"
 | 
			
		||||
 | 
			
		||||
#ifdef WINDOWS
 | 
			
		||||
@@ -242,6 +243,7 @@ static void sv_usage(void)
 | 
			
		||||
	BIO_printf(bio_err," -bugs         - Turn on SSL bug compatibility\n");
 | 
			
		||||
	BIO_printf(bio_err," -www          - Respond to a 'GET /' with a status page\n");
 | 
			
		||||
	BIO_printf(bio_err," -WWW          - Respond to a 'GET /<path> HTTP/1.0' with file ./<path>\n");
 | 
			
		||||
	BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
static int local_argc=0;
 | 
			
		||||
@@ -411,6 +413,7 @@ int MAIN(int argc, char *argv[])
 | 
			
		||||
	int no_tmp_rsa=0,no_dhe=0,nocert=0;
 | 
			
		||||
	int state=0;
 | 
			
		||||
	SSL_METHOD *meth=NULL;
 | 
			
		||||
	char *inrand=NULL;
 | 
			
		||||
#ifndef NO_DH
 | 
			
		||||
	DH *dh=NULL;
 | 
			
		||||
#endif
 | 
			
		||||
@@ -565,6 +568,11 @@ int MAIN(int argc, char *argv[])
 | 
			
		||||
		else if	(strcmp(*argv,"-tls1") == 0)
 | 
			
		||||
			{ meth=TLSv1_server_method(); }
 | 
			
		||||
#endif
 | 
			
		||||
		else if (strcmp(*argv,"-rand") == 0)
 | 
			
		||||
			{
 | 
			
		||||
			if (--argc < 1) goto bad;
 | 
			
		||||
			inrand= *(++argv);
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
			{
 | 
			
		||||
			BIO_printf(bio_err,"unknown option %s\n",*argv);
 | 
			
		||||
@@ -581,7 +589,14 @@ bad:
 | 
			
		||||
		goto end;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	app_RAND_load_file(NULL, bio_err, 0);
 | 
			
		||||
	if (!app_RAND_load_file(NULL, bio_err, 1) && inrand == NULL
 | 
			
		||||
		&& !RAND_status())
 | 
			
		||||
		{
 | 
			
		||||
		BIO_printf(bio_err,"warning, not much extra random data, consider using the -rand option\n");
 | 
			
		||||
		}
 | 
			
		||||
	if (inrand != NULL)
 | 
			
		||||
		BIO_printf(bio_err,"%ld semi-random bytes loaded\n",
 | 
			
		||||
			app_RAND_load_files(inrand));
 | 
			
		||||
 | 
			
		||||
	if (bio_s_out == NULL)
 | 
			
		||||
		{
 | 
			
		||||
@@ -676,7 +691,8 @@ bad:
 | 
			
		||||
 | 
			
		||||
#ifndef NO_RSA
 | 
			
		||||
#if 1
 | 
			
		||||
	SSL_CTX_set_tmp_rsa_callback(ctx,tmp_rsa_cb);
 | 
			
		||||
	if (!no_tmp_rsa)
 | 
			
		||||
		SSL_CTX_set_tmp_rsa_callback(ctx,tmp_rsa_cb);
 | 
			
		||||
#else
 | 
			
		||||
	if (!no_tmp_rsa && SSL_CTX_need_tmp_RSA(ctx))
 | 
			
		||||
		{
 | 
			
		||||
@@ -1336,15 +1352,29 @@ static int www_body(char *hostname, int s, unsigned char *context)
 | 
			
		||||
 | 
			
		||||
			/* skip the '/' */
 | 
			
		||||
			p= &(buf[5]);
 | 
			
		||||
			dot=0;
 | 
			
		||||
 | 
			
		||||
			dot = 1;
 | 
			
		||||
			for (e=p; *e != '\0'; e++)
 | 
			
		||||
				{
 | 
			
		||||
				if (e[0] == ' ') break;
 | 
			
		||||
				if (	(e[0] == '.') &&
 | 
			
		||||
					(strncmp(&(e[-1]),"/../",4) == 0))
 | 
			
		||||
					dot=1;
 | 
			
		||||
				if (e[0] == ' ')
 | 
			
		||||
					break;
 | 
			
		||||
 | 
			
		||||
				switch (dot)
 | 
			
		||||
					{
 | 
			
		||||
				case 1:
 | 
			
		||||
					dot = (e[0] == '.') ? 2 : 0;
 | 
			
		||||
					break;
 | 
			
		||||
				case 2:
 | 
			
		||||
					dot = (e[0] == '.') ? 3 : 0;
 | 
			
		||||
					break;
 | 
			
		||||
				case 3:
 | 
			
		||||
					dot = (e[0] == '/') ? -1 : 0;
 | 
			
		||||
					break;
 | 
			
		||||
					}
 | 
			
		||||
				if (dot == 0)
 | 
			
		||||
					dot = (e[0] == '/') ? 1 : 0;
 | 
			
		||||
				}
 | 
			
		||||
			
 | 
			
		||||
			dot = (dot == 3) || (dot == -1); /* filename contains ".." component */
 | 
			
		||||
 | 
			
		||||
			if (*e == '\0')
 | 
			
		||||
				{
 | 
			
		||||
 
 | 
			
		||||
@@ -831,6 +831,7 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
		}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifndef NO_DSA
 | 
			
		||||
	dsa_c[R_DSA_512][0]=count/1000;
 | 
			
		||||
	dsa_c[R_DSA_512][1]=count/1000/2;
 | 
			
		||||
	for (i=1; i<DSA_NUM; i++)
 | 
			
		||||
@@ -848,6 +849,7 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
				}
 | 
			
		||||
			}				
 | 
			
		||||
		}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#define COND(d)	(count < (d))
 | 
			
		||||
#define COUNT(d) (d)
 | 
			
		||||
@@ -1173,7 +1175,7 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
			{
 | 
			
		||||
			BIO_printf(bio_err,"RSA verify failure.  No RSA verify will be done.\n");
 | 
			
		||||
			ERR_print_errors(bio_err);
 | 
			
		||||
			dsa_doit[j] = 0;
 | 
			
		||||
			rsa_doit[j] = 0;
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
			{
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										12
									
								
								apps/x509.c
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								apps/x509.c
									
									
									
									
									
								
							@@ -129,7 +129,6 @@ static char *x509_usage[]={
 | 
			
		||||
" -extensions     - section from config file with X509V3 extensions to add\n",
 | 
			
		||||
" -clrext         - delete extensions before signing and input certificate\n",
 | 
			
		||||
" -nameopt arg    - various certificate name options\n",
 | 
			
		||||
" -certopt arg    - various certificate text options\n",
 | 
			
		||||
NULL
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
@@ -175,7 +174,7 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
	char *extsect = NULL, *extfile = NULL, *passin = NULL, *passargin = NULL;
 | 
			
		||||
	int need_rand = 0;
 | 
			
		||||
	int checkend=0,checkoffset=0;
 | 
			
		||||
	unsigned long nmflag = 0, certflag = 0;
 | 
			
		||||
	unsigned long nmflag = 0;
 | 
			
		||||
 | 
			
		||||
	reqfile=0;
 | 
			
		||||
 | 
			
		||||
@@ -327,11 +326,6 @@ int MAIN(int argc, char **argv)
 | 
			
		||||
			alias= *(++argv);
 | 
			
		||||
			trustout = 1;
 | 
			
		||||
			}
 | 
			
		||||
		else if (strcmp(*argv,"-certopt") == 0)
 | 
			
		||||
			{
 | 
			
		||||
			if (--argc < 1) goto bad;
 | 
			
		||||
			if (!set_cert_ex(&certflag, *(++argv))) goto bad;
 | 
			
		||||
			}
 | 
			
		||||
		else if (strcmp(*argv,"-nameopt") == 0)
 | 
			
		||||
			{
 | 
			
		||||
			if (--argc < 1) goto bad;
 | 
			
		||||
@@ -780,7 +774,7 @@ bad:
 | 
			
		||||
				}
 | 
			
		||||
			else if (text == i)
 | 
			
		||||
				{
 | 
			
		||||
				X509_print_ex(out,x,nmflag, certflag);
 | 
			
		||||
				X509_print(out,x);
 | 
			
		||||
				}
 | 
			
		||||
			else if (startdate == i)
 | 
			
		||||
				{
 | 
			
		||||
@@ -873,8 +867,10 @@ bad:
 | 
			
		||||
 | 
			
		||||
				BIO_printf(bio_err,"Generating certificate request\n");
 | 
			
		||||
 | 
			
		||||
#ifndef NO_DSA
 | 
			
		||||
		                if (pk->type == EVP_PKEY_DSA)
 | 
			
		||||
		                        digest=EVP_dss1();
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
				rq=X509_to_X509_REQ(x,pk,digest);
 | 
			
		||||
				EVP_PKEY_free(pk);
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										46
									
								
								config
									
									
									
									
									
								
							
							
						
						
									
										46
									
								
								config
									
									
									
									
									
								
							@@ -49,10 +49,18 @@ if [ "x$XREL" != "x" ]; then
 | 
			
		||||
		echo "whatever-whatever-sco5"; exit 0
 | 
			
		||||
		;;
 | 
			
		||||
	    4.2MP)
 | 
			
		||||
		if [ "x$VERSION" = "x2.1.1" ]; then
 | 
			
		||||
		if [ "x$VERSION" = "x2.01" ]; then
 | 
			
		||||
		    echo "${MACHINE}-whatever-unixware201"; exit 0
 | 
			
		||||
		elif [ "x$VERSION" = "x2.02" ]; then
 | 
			
		||||
		    echo "${MACHINE}-whatever-unixware202"; exit 0
 | 
			
		||||
		elif [ "x$VERSION" = "x2.03" ]; then
 | 
			
		||||
		    echo "${MACHINE}-whatever-unixware203"; exit 0
 | 
			
		||||
		elif [ "x$VERSION" = "x2.1.1" ]; then
 | 
			
		||||
		    echo "${MACHINE}-whatever-unixware211"; exit 0
 | 
			
		||||
		elif [ "x$VERSION" = "x2.1.2" ]; then
 | 
			
		||||
		    echo "${MACHINE}-whatever-unixware212"; exit 0
 | 
			
		||||
		elif [ "x$VERSION" = "x2.1.3" ]; then
 | 
			
		||||
		    echo "${MACHINE}-whatever-unixware213"; exit 0
 | 
			
		||||
		else
 | 
			
		||||
		    echo "${MACHINE}-whatever-unixware2"; exit 0
 | 
			
		||||
		fi
 | 
			
		||||
@@ -79,6 +87,14 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
 | 
			
		||||
	echo "m68k-apple-aux3"; exit 0
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    AIX:[3456789]:4:*)
 | 
			
		||||
	echo "${MACHINE}-ibm-aix43"; exit 0
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    AIX:*:[56789]:*)
 | 
			
		||||
	echo "${MACHINE}-ibm-aix43"; exit 0
 | 
			
		||||
	;;
 | 
			
		||||
 | 
			
		||||
    AIX:*)
 | 
			
		||||
	echo "${MACHINE}-ibm-aix"; exit 0
 | 
			
		||||
	;;
 | 
			
		||||
@@ -393,10 +409,16 @@ case "$GUESSOS" in
 | 
			
		||||
	;;
 | 
			
		||||
  mips4-sgi-irix64)
 | 
			
		||||
	echo "WARNING! If you wish to build 64-bit library, then you have to"
 | 
			
		||||
	echo "         invoke './Configre irix64-mips4-$CC' *manually*."
 | 
			
		||||
	echo "         Type Ctrl-C if you don't want to continue."
 | 
			
		||||
	echo "         invoke './Configure irix64-mips4-$CC' *manually*."
 | 
			
		||||
	echo "         Type return if you want to continue, Ctrl-C to abort."
 | 
			
		||||
	read waste < /dev/tty
 | 
			
		||||
	options="$options -mips4"
 | 
			
		||||
        CPU=`(hinv -t cpu) 2>/dev/null | sed 's/^CPU:[^R]*R\([0-9]*\).*/\1/'`
 | 
			
		||||
        CPU=${CPU:-0}
 | 
			
		||||
        if [ $CPU -ge 5000 ]; then
 | 
			
		||||
                options="$options -mips4"
 | 
			
		||||
        else
 | 
			
		||||
                options="$options -mips3"
 | 
			
		||||
        fi
 | 
			
		||||
	OUT="irix-mips3-$CC"
 | 
			
		||||
	;;
 | 
			
		||||
  alpha-*-linux2)
 | 
			
		||||
@@ -423,11 +445,11 @@ case "$GUESSOS" in
 | 
			
		||||
	#till 64-bit glibc for SPARC is operational:-(
 | 
			
		||||
	#echo "WARNING! If you wish to build 64-bit library, then you have to"
 | 
			
		||||
	#echo "         invoke './Configure linux64-sparcv9' *manually*."
 | 
			
		||||
	#echo "         Type Ctrl-C if you don't want to continue."
 | 
			
		||||
	#echo "         Type return if you want to continue, Ctrl-C to abort."
 | 
			
		||||
	#read waste < /dev/tty
 | 
			
		||||
	OUT="linux-sparcv9" ;;
 | 
			
		||||
  sparc-*-linux2)
 | 
			
		||||
	KARCH=`awk '/type/{print$3}' /proc/cpuinfo`
 | 
			
		||||
	KARCH=`awk '/^type/{print$3}' /proc/cpuinfo`
 | 
			
		||||
	case ${KARCH:-sun4} in
 | 
			
		||||
	sun4u*)	OUT="linux-sparcv9" ;;
 | 
			
		||||
	sun4m)	OUT="linux-sparcv8" ;;
 | 
			
		||||
@@ -435,6 +457,7 @@ case "$GUESSOS" in
 | 
			
		||||
	*)	OUT="linux-sparcv7" ;;
 | 
			
		||||
	esac ;;
 | 
			
		||||
  arm*-*-linux2) OUT="linux-elf-arm" ;;
 | 
			
		||||
  s390-*-linux2) OUT="linux-s390" ;;
 | 
			
		||||
  *-*-linux2) OUT="linux-elf" ;;
 | 
			
		||||
  *-*-linux1) OUT="linux-aout" ;;
 | 
			
		||||
  sun4u*-*-solaris2)
 | 
			
		||||
@@ -442,7 +465,7 @@ case "$GUESSOS" in
 | 
			
		||||
	if [ "$ISA64" != "" -a "$CC" = "cc" -a $CCVER -ge 50 ]; then
 | 
			
		||||
		echo "WARNING! If you wish to build 64-bit library, then you have to"
 | 
			
		||||
		echo "         invoke './Configure solaris64-sparcv9-cc' *manually*."
 | 
			
		||||
		echo "         Type Ctrl-C if you don't want to continue."
 | 
			
		||||
		echo "         Type return if you want to continue, Ctrl-C to abort."
 | 
			
		||||
		read waste < /dev/tty
 | 
			
		||||
	fi
 | 
			
		||||
	OUT="solaris-sparcv9-$CC" ;;
 | 
			
		||||
@@ -466,9 +489,12 @@ case "$GUESSOS" in
 | 
			
		||||
  *-*-unixware7) OUT="unixware-7" ;;
 | 
			
		||||
  *-*-UnixWare7) OUT="unixware-7" ;;
 | 
			
		||||
  *-*-Unixware7) OUT="unixware-7" ;;
 | 
			
		||||
  *-*-unixware[1-2]*) OUT="unixware-2.0" ;;
 | 
			
		||||
  *-*-UnixWare[1-2]*) OUT="unixware-2.0" ;;
 | 
			
		||||
  *-*-Unixware[1-2]*) OUT="unixware-2.0" ;;
 | 
			
		||||
  *-*-unixware20*) OUT="unixware-2.0" ;;
 | 
			
		||||
  *-*-unixware21*) OUT="unixware-2.1" ;;
 | 
			
		||||
  *-*-UnixWare20*) OUT="unixware-2.0" ;;
 | 
			
		||||
  *-*-UnixWare21*) OUT="unixware-2.1" ;;
 | 
			
		||||
  *-*-Unixware20*) OUT="unixware-2.0" ;;
 | 
			
		||||
  *-*-Unixware21*) OUT="unixware-2.1" ;;
 | 
			
		||||
  BS2000-siemens-sysv4) OUT="BS2000-OSD" ;;
 | 
			
		||||
  RM*-siemens-sysv4) OUT="ReliantUNIX" ;;
 | 
			
		||||
  *-siemens-sysv4) OUT="SINIX" ;;
 | 
			
		||||
 
 | 
			
		||||
@@ -29,13 +29,13 @@ SDIRS=	md2 md5 sha mdc2 hmac ripemd \
 | 
			
		||||
	des rc2 rc4 rc5 idea bf cast \
 | 
			
		||||
	bn rsa dsa dh dso \
 | 
			
		||||
	buffer bio stack lhash rand err objects \
 | 
			
		||||
	evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp rijndael
 | 
			
		||||
	evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp
 | 
			
		||||
 | 
			
		||||
GENERAL=Makefile README crypto-lib.com install.com
 | 
			
		||||
 | 
			
		||||
LIB= $(TOP)/libcrypto.a
 | 
			
		||||
LIBSRC=	cryptlib.c mem.c mem_dbg.c cversion.c ex_data.c tmdiff.c cpt_err.c ebcdic.c
 | 
			
		||||
LIBOBJ= cryptlib.o mem.o mem_dbg.o cversion.o ex_data.o tmdiff.o cpt_err.o ebcdic.o
 | 
			
		||||
LIBSRC=	cryptlib.c mem.c mem_dbg.c cversion.c ex_data.c tmdiff.c cpt_err.c ebcdic.c uid.c
 | 
			
		||||
LIBOBJ= cryptlib.o mem.o mem_dbg.o cversion.o ex_data.o tmdiff.o cpt_err.o ebcdic.o uid.o
 | 
			
		||||
 | 
			
		||||
SRC= $(LIBSRC)
 | 
			
		||||
 | 
			
		||||
@@ -198,3 +198,6 @@ tmdiff.o: ../include/openssl/lhash.h ../include/openssl/opensslconf.h
 | 
			
		||||
tmdiff.o: ../include/openssl/opensslv.h ../include/openssl/safestack.h
 | 
			
		||||
tmdiff.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 | 
			
		||||
tmdiff.o: ../include/openssl/tmdiff.h cryptlib.h
 | 
			
		||||
uid.o: ../include/openssl/crypto.h ../include/openssl/opensslv.h
 | 
			
		||||
uid.o: ../include/openssl/safestack.h ../include/openssl/stack.h
 | 
			
		||||
uid.o: ../include/openssl/symhacks.h
 | 
			
		||||
 
 | 
			
		||||
@@ -171,9 +171,7 @@ a_digest.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
a_digest.o: ../../include/openssl/opensslconf.h
 | 
			
		||||
a_digest.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
a_digest.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
a_digest.o: ../../include/openssl/rc5.h
 | 
			
		||||
a_digest.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
a_digest.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
a_digest.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
a_digest.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
a_digest.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
a_digest.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -298,12 +296,11 @@ a_sign.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
a_sign.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
a_sign.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
a_sign.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
a_sign.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
a_sign.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
a_sign.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
a_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
a_sign.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
a_sign.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
a_sign.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
a_sign.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
a_sign.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
a_sign.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
a_sign.o: ../cryptlib.h
 | 
			
		||||
a_strex.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
a_strex.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
a_strex.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -317,12 +314,11 @@ a_strex.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
a_strex.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
a_strex.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
a_strex.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
a_strex.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
a_strex.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
a_strex.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
a_strex.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
a_strex.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
a_strex.o: ../../include/openssl/x509_vfy.h charmap.h
 | 
			
		||||
a_strex.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
a_strex.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
a_strex.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
a_strex.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
a_strex.o: charmap.h
 | 
			
		||||
a_strnid.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
a_strnid.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 | 
			
		||||
a_strnid.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
 | 
			
		||||
@@ -378,9 +374,7 @@ a_verify.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
a_verify.o: ../../include/openssl/opensslconf.h
 | 
			
		||||
a_verify.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
a_verify.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
a_verify.o: ../../include/openssl/rc5.h
 | 
			
		||||
a_verify.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
a_verify.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
a_verify.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
a_verify.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
a_verify.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
a_verify.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -459,8 +453,7 @@ d2i_pr.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
d2i_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
d2i_pr.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
d2i_pr.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
d2i_pr.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
d2i_pr.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
d2i_pr.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
d2i_pr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
d2i_pr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
d2i_pr.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -477,8 +470,7 @@ d2i_pu.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
d2i_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
d2i_pu.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
d2i_pu.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
d2i_pu.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
d2i_pu.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
d2i_pu.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
d2i_pu.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
d2i_pu.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
d2i_pu.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -589,8 +581,7 @@ i2d_pr.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
i2d_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
i2d_pr.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
i2d_pr.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
i2d_pr.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
i2d_pr.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
i2d_pr.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
i2d_pr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
i2d_pr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
i2d_pr.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -607,8 +598,7 @@ i2d_pu.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
i2d_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
i2d_pu.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
i2d_pu.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
i2d_pu.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
i2d_pu.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
i2d_pu.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
i2d_pu.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
i2d_pu.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
i2d_pu.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -668,8 +658,7 @@ n_pkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
n_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
n_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
n_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
n_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
n_pkey.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
n_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
n_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
n_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
n_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -688,12 +677,10 @@ nsseq.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
nsseq.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
nsseq.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
nsseq.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
nsseq.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
nsseq.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
nsseq.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
nsseq.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
nsseq.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
nsseq.o: ../../include/openssl/x509_vfy.h
 | 
			
		||||
nsseq.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
nsseq.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
nsseq.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
nsseq.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 | 
			
		||||
@@ -709,12 +696,11 @@ p5_pbe.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
p5_pbe.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
p5_pbe.o: ../cryptlib.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 | 
			
		||||
@@ -730,12 +716,11 @@ p5_pbev2.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
p5_pbev2.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
p5_pbev2.o: ../cryptlib.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 | 
			
		||||
@@ -750,8 +735,7 @@ p7_dgst.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p7_dgst.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -770,8 +754,7 @@ p7_enc.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p7_enc.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p7_enc.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p7_enc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p7_enc.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p7_enc.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_enc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_enc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p7_enc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p7_enc.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -790,9 +773,7 @@ p7_enc_c.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p7_enc_c.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p7_enc_c.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p7_enc_c.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p7_enc_c.o: ../../include/openssl/rc5.h
 | 
			
		||||
p7_enc_c.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p7_enc_c.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_enc_c.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_enc_c.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p7_enc_c.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p7_enc_c.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -811,8 +792,7 @@ p7_evp.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p7_evp.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p7_evp.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p7_evp.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p7_evp.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p7_evp.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_evp.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_evp.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p7_evp.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p7_evp.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -831,8 +811,7 @@ p7_i_s.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p7_i_s.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p7_i_s.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p7_i_s.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p7_i_s.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p7_i_s.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_i_s.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_i_s.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p7_i_s.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p7_i_s.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -851,8 +830,7 @@ p7_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p7_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p7_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p7_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p7_lib.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p7_lib.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p7_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p7_lib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -871,9 +849,7 @@ p7_recip.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p7_recip.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p7_recip.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p7_recip.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p7_recip.o: ../../include/openssl/rc5.h
 | 
			
		||||
p7_recip.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p7_recip.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_recip.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_recip.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p7_recip.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p7_recip.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -892,8 +868,7 @@ p7_s_e.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p7_s_e.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p7_s_e.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p7_s_e.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p7_s_e.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p7_s_e.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_s_e.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_s_e.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p7_s_e.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p7_s_e.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -912,9 +887,7 @@ p7_signd.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p7_signd.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p7_signd.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p7_signd.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p7_signd.o: ../../include/openssl/rc5.h
 | 
			
		||||
p7_signd.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p7_signd.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_signd.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_signd.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p7_signd.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p7_signd.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -933,9 +906,7 @@ p7_signi.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p7_signi.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p7_signi.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p7_signi.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p7_signi.o: ../../include/openssl/rc5.h
 | 
			
		||||
p7_signi.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p7_signi.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_signi.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p7_signi.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p7_signi.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p7_signi.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -954,8 +925,7 @@ p8_pkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p8_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p8_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p8_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p8_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p8_pkey.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p8_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p8_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p8_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p8_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -975,13 +945,11 @@ t_bitst.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
 | 
			
		||||
t_bitst.o: ../cryptlib.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
t_bitst.o: ../../include/openssl/x509v3.h ../cryptlib.h
 | 
			
		||||
t_crl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
t_crl.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
t_crl.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -997,13 +965,11 @@ t_crl.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
t_crl.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
t_crl.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
t_crl.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
t_crl.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
t_crl.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
t_crl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
t_crl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
t_crl.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
t_crl.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
 | 
			
		||||
t_crl.o: ../cryptlib.h
 | 
			
		||||
t_crl.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
t_crl.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
t_crl.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
t_crl.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
t_crl.o: ../../include/openssl/x509v3.h ../cryptlib.h
 | 
			
		||||
t_pkey.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
 | 
			
		||||
t_pkey.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 | 
			
		||||
t_pkey.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
 | 
			
		||||
@@ -1028,13 +994,11 @@ t_req.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
t_req.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
t_req.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
t_req.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
t_req.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
t_req.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
t_req.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
t_req.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
t_req.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
t_req.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
 | 
			
		||||
t_req.o: ../cryptlib.h
 | 
			
		||||
t_req.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
t_req.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
t_req.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
t_req.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
t_req.o: ../../include/openssl/x509v3.h ../cryptlib.h
 | 
			
		||||
t_spki.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 | 
			
		||||
t_spki.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 | 
			
		||||
t_spki.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 | 
			
		||||
@@ -1049,8 +1013,7 @@ t_spki.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
t_spki.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
t_spki.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
t_spki.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
t_spki.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
t_spki.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
t_spki.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
t_spki.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
t_spki.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
t_spki.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1070,13 +1033,11 @@ t_x509.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
t_x509.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
t_x509.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
t_x509.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
t_x509.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
t_x509.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
t_x509.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
t_x509.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
t_x509.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
t_x509.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
 | 
			
		||||
t_x509.o: ../cryptlib.h
 | 
			
		||||
t_x509.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
t_x509.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
t_x509.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
t_x509.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
t_x509.o: ../../include/openssl/x509v3.h ../cryptlib.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
 | 
			
		||||
@@ -1091,8 +1052,7 @@ t_x509a.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
t_x509a.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1111,8 +1071,7 @@ x_algor.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_algor.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_algor.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_algor.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_algor.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_algor.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_algor.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_algor.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_algor.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_algor.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1131,9 +1090,7 @@ x_attrib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_attrib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_attrib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_attrib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_attrib.o: ../../include/openssl/rc5.h
 | 
			
		||||
x_attrib.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_attrib.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_attrib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_attrib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_attrib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_attrib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1152,8 +1109,7 @@ x_cinf.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_cinf.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_cinf.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_cinf.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_cinf.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_cinf.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_cinf.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_cinf.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_cinf.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_cinf.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1172,8 +1128,7 @@ x_crl.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_crl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_crl.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_crl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_crl.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_crl.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_crl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_crl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_crl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_crl.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1192,8 +1147,7 @@ x_exten.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_exten.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_exten.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_exten.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_exten.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_exten.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_exten.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_exten.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_exten.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_exten.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1212,8 +1166,7 @@ x_info.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_info.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_info.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_info.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_info.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_info.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_info.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_info.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_info.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_info.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1232,8 +1185,7 @@ x_name.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_name.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_name.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_name.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_name.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_name.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_name.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_name.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_name.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_name.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1252,8 +1204,7 @@ x_pkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_pkey.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1272,9 +1223,7 @@ x_pubkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_pubkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_pubkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_pubkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_pubkey.o: ../../include/openssl/rc5.h
 | 
			
		||||
x_pubkey.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_pubkey.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_pubkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_pubkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_pubkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_pubkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1293,8 +1242,7 @@ x_req.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_req.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_req.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_req.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_req.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_req.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_req.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_req.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_req.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_req.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1313,8 +1261,7 @@ x_sig.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_sig.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_sig.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_sig.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_sig.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_sig.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_sig.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_sig.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_sig.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_sig.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1333,8 +1280,7 @@ x_spki.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_spki.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_spki.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_spki.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_spki.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_spki.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_spki.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_spki.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_spki.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_spki.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1353,8 +1299,7 @@ x_val.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_val.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_val.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_val.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_val.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_val.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_val.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_val.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_val.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_val.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1374,8 +1319,7 @@ x_x509.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_x509.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_x509.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_x509.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_x509.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_x509.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_x509.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_x509.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_x509.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_x509.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -1395,8 +1339,7 @@ x_x509a.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
x_x509a.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
x_x509a.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
x_x509a.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
x_x509a.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
x_x509a.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_x509a.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
x_x509a.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
x_x509a.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
x_x509a.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
 
 | 
			
		||||
@@ -491,24 +491,12 @@ static int do_name_ex(char_io *io_ch, void *arg, X509_NAME *n,
 | 
			
		||||
 | 
			
		||||
int X509_NAME_print_ex(BIO *out, X509_NAME *nm, int indent, unsigned long flags)
 | 
			
		||||
{
 | 
			
		||||
	if(flags == XN_FLAG_COMPAT)
 | 
			
		||||
		return X509_NAME_print(out, nm, indent);
 | 
			
		||||
	return do_name_ex(send_bio_chars, out, nm, indent, flags);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
int X509_NAME_print_ex_fp(FILE *fp, X509_NAME *nm, int indent, unsigned long flags)
 | 
			
		||||
{
 | 
			
		||||
	if(flags == XN_FLAG_COMPAT)
 | 
			
		||||
		{
 | 
			
		||||
		BIO *btmp;
 | 
			
		||||
		int ret;
 | 
			
		||||
		btmp = BIO_new_fp(fp, BIO_NOCLOSE);
 | 
			
		||||
		if(!btmp) return -1;
 | 
			
		||||
		ret = X509_NAME_print(btmp, nm, indent);
 | 
			
		||||
		BIO_free(btmp);
 | 
			
		||||
		return ret;
 | 
			
		||||
		}
 | 
			
		||||
	return do_name_ex(send_fp_chars, fp, nm, indent, flags);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -301,7 +301,7 @@ int asn1_GetSequence(ASN1_CTX *c, long *length)
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	if (c->inf == (1|V_ASN1_CONSTRUCTED))
 | 
			
		||||
		c->slen= *length+ *(c->pp)-c->p;
 | 
			
		||||
		c->slen= *length;
 | 
			
		||||
	c->eos=0;
 | 
			
		||||
	return(1);
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -196,6 +196,9 @@ err:\
 | 
			
		||||
	if ((a != NULL) && (sk_##type##_num(a) != 0)) \
 | 
			
		||||
		M_ASN1_I2D_put_SEQUENCE_type(type,a,f);
 | 
			
		||||
 | 
			
		||||
#define M_ASN1_I2D_put_SEQUENCE_opt_ex_type(type,a,f) \
 | 
			
		||||
	if (a) M_ASN1_I2D_put_SEQUENCE_type(type,a,f);
 | 
			
		||||
 | 
			
		||||
#define M_ASN1_D2I_get_IMP_set_opt(b,func,free_func,tag) \
 | 
			
		||||
	if ((c.slen != 0) && \
 | 
			
		||||
		(M_ASN1_next == \
 | 
			
		||||
@@ -389,6 +392,9 @@ err:\
 | 
			
		||||
		if ((a != NULL) && (sk_##type##_num(a) != 0)) \
 | 
			
		||||
			M_ASN1_I2D_len_SEQUENCE_type(type,a,f);
 | 
			
		||||
 | 
			
		||||
#define M_ASN1_I2D_len_SEQUENCE_opt_ex_type(type,a,f) \
 | 
			
		||||
		if (a) M_ASN1_I2D_len_SEQUENCE_type(type,a,f);
 | 
			
		||||
 | 
			
		||||
#define M_ASN1_I2D_len_IMP_SET(a,f,x) \
 | 
			
		||||
		ret+=i2d_ASN1_SET(a,NULL,f,x,V_ASN1_CONTEXT_SPECIFIC,IS_SET);
 | 
			
		||||
 | 
			
		||||
@@ -452,6 +458,15 @@ err:\
 | 
			
		||||
			ret+=ASN1_object_size(1,v,mtag); \
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
#define M_ASN1_I2D_len_EXP_SEQUENCE_opt_ex_type(type,a,f,mtag,tag,v) \
 | 
			
		||||
		if (a)\
 | 
			
		||||
			{ \
 | 
			
		||||
			v=i2d_ASN1_SET_OF_##type(a,NULL,f,tag, \
 | 
			
		||||
						 V_ASN1_UNIVERSAL, \
 | 
			
		||||
						 IS_SEQUENCE); \
 | 
			
		||||
			ret+=ASN1_object_size(1,v,mtag); \
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
/* Put Macros */
 | 
			
		||||
#define M_ASN1_I2D_put(a,f)	f(a,&p)
 | 
			
		||||
 | 
			
		||||
@@ -536,6 +551,14 @@ err:\
 | 
			
		||||
					       IS_SEQUENCE); \
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
#define M_ASN1_I2D_put_EXP_SEQUENCE_opt_ex_type(type,a,f,mtag,tag,v) \
 | 
			
		||||
		if (a) \
 | 
			
		||||
			{ \
 | 
			
		||||
			ASN1_put_object(&p,1,v,mtag,V_ASN1_CONTEXT_SPECIFIC); \
 | 
			
		||||
			i2d_ASN1_SET_OF_##type(a,&p,f,tag,V_ASN1_UNIVERSAL, \
 | 
			
		||||
					       IS_SEQUENCE); \
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
#define M_ASN1_I2D_seq_total() \
 | 
			
		||||
		r=ASN1_object_size(1,ret,V_ASN1_SEQUENCE); \
 | 
			
		||||
		if (pp == NULL) return(r); \
 | 
			
		||||
 
 | 
			
		||||
@@ -307,12 +307,14 @@ PKCS7 *d2i_PKCS7(PKCS7 **a, unsigned char **pp, long length)
 | 
			
		||||
			}
 | 
			
		||||
		if (Tinf == (1|V_ASN1_CONSTRUCTED))
 | 
			
		||||
			{
 | 
			
		||||
			c.q=c.p;
 | 
			
		||||
			if (!ASN1_check_infinite_end(&c.p,c.slen))
 | 
			
		||||
				{
 | 
			
		||||
				c.error=ERR_R_MISSING_ASN1_EOS;
 | 
			
		||||
				c.line=__LINE__;
 | 
			
		||||
				goto err;
 | 
			
		||||
				}
 | 
			
		||||
			c.slen-=(c.p-c.q);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
 
 | 
			
		||||
@@ -72,11 +72,6 @@
 | 
			
		||||
 | 
			
		||||
#ifndef NO_FP_API
 | 
			
		||||
int X509_print_fp(FILE *fp, X509 *x)
 | 
			
		||||
	{
 | 
			
		||||
	return X509_print_ex_fp(fp, x, XN_FLAG_COMPAT, X509_FLAG_COMPAT);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
int X509_print_ex_fp(FILE *fp, X509 *x, unsigned long nmflag, unsigned long cflag)
 | 
			
		||||
        {
 | 
			
		||||
        BIO *b;
 | 
			
		||||
        int ret;
 | 
			
		||||
@@ -87,23 +82,17 @@ int X509_print_ex_fp(FILE *fp, X509 *x, unsigned long nmflag, unsigned long cfla
 | 
			
		||||
                return(0);
 | 
			
		||||
		}
 | 
			
		||||
        BIO_set_fp(b,fp,BIO_NOCLOSE);
 | 
			
		||||
        ret=X509_print_ex(b, x, nmflag, cflag);
 | 
			
		||||
        ret=X509_print(b, x);
 | 
			
		||||
        BIO_free(b);
 | 
			
		||||
        return(ret);
 | 
			
		||||
        }
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
int X509_print(BIO *bp, X509 *x)
 | 
			
		||||
{
 | 
			
		||||
	return X509_print_ex(bp, x, XN_FLAG_COMPAT, X509_FLAG_COMPAT);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int X509_print_ex(BIO *bp, X509 *x, unsigned long nmflags, unsigned long cflag)
 | 
			
		||||
	{
 | 
			
		||||
	long l;
 | 
			
		||||
	int ret=0,i,j,n;
 | 
			
		||||
	char *m=NULL,*s, mlch = ' ';
 | 
			
		||||
	int nmindent = 0;
 | 
			
		||||
	char *m=NULL,*s;
 | 
			
		||||
	X509_CINF *ci;
 | 
			
		||||
	ASN1_INTEGER *bs;
 | 
			
		||||
	EVP_PKEY *pkey=NULL;
 | 
			
		||||
@@ -111,127 +100,89 @@ int X509_print_ex(BIO *bp, X509 *x, unsigned long nmflags, unsigned long cflag)
 | 
			
		||||
	X509_EXTENSION *ex;
 | 
			
		||||
	ASN1_STRING *str=NULL;
 | 
			
		||||
 | 
			
		||||
	if((nmflags & XN_FLAG_SEP_MASK) == XN_FLAG_SEP_MULTILINE) {
 | 
			
		||||
			mlch = '\n';
 | 
			
		||||
			nmindent = 16;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if(nmflags == X509_FLAG_COMPAT)
 | 
			
		||||
		nmindent = 16;
 | 
			
		||||
 | 
			
		||||
	ci=x->cert_info;
 | 
			
		||||
	if(!(cflag & X509_FLAG_NO_HEADER))
 | 
			
		||||
		{
 | 
			
		||||
		if (BIO_write(bp,"Certificate:\n",13) <= 0) goto err;
 | 
			
		||||
		if (BIO_write(bp,"    Data:\n",10) <= 0) goto err;
 | 
			
		||||
		}
 | 
			
		||||
	if(!(cflag & X509_FLAG_NO_VERSION))
 | 
			
		||||
		{
 | 
			
		||||
		l=X509_get_version(x);
 | 
			
		||||
		if (BIO_printf(bp,"%8sVersion: %lu (0x%lx)\n","",l+1,l) <= 0) goto err;
 | 
			
		||||
		}
 | 
			
		||||
	if(!(cflag & X509_FLAG_NO_SERIAL))
 | 
			
		||||
		{
 | 
			
		||||
	if (BIO_write(bp,"Certificate:\n",13) <= 0) goto err;
 | 
			
		||||
	if (BIO_write(bp,"    Data:\n",10) <= 0) goto err;
 | 
			
		||||
	l=X509_get_version(x);
 | 
			
		||||
	if (BIO_printf(bp,"%8sVersion: %lu (0x%lx)\n","",l+1,l) <= 0) goto err;
 | 
			
		||||
	if (BIO_write(bp,"        Serial Number:",22) <= 0) goto err;
 | 
			
		||||
 | 
			
		||||
		if (BIO_write(bp,"        Serial Number:",22) <= 0) goto err;
 | 
			
		||||
 | 
			
		||||
		bs=X509_get_serialNumber(x);
 | 
			
		||||
		if (bs->length <= 4)
 | 
			
		||||
	bs=X509_get_serialNumber(x);
 | 
			
		||||
	if (bs->length <= 4)
 | 
			
		||||
		{
 | 
			
		||||
		l=ASN1_INTEGER_get(bs);
 | 
			
		||||
		if (l < 0)
 | 
			
		||||
			{
 | 
			
		||||
			l=ASN1_INTEGER_get(bs);
 | 
			
		||||
			if (l < 0)
 | 
			
		||||
				{
 | 
			
		||||
				l= -l;
 | 
			
		||||
				neg="-";
 | 
			
		||||
				}
 | 
			
		||||
			else
 | 
			
		||||
				neg="";
 | 
			
		||||
			if (BIO_printf(bp," %s%lu (%s0x%lx)\n",neg,l,neg,l) <= 0)
 | 
			
		||||
			l= -l;
 | 
			
		||||
			neg="-";
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
			neg="";
 | 
			
		||||
		if (BIO_printf(bp," %s%lu (%s0x%lx)\n",neg,l,neg,l) <= 0)
 | 
			
		||||
			goto err;
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		{
 | 
			
		||||
		neg=(bs->type == V_ASN1_NEG_INTEGER)?" (Negative)":"";
 | 
			
		||||
		if (BIO_printf(bp,"\n%12s%s","",neg) <= 0) goto err;
 | 
			
		||||
 | 
			
		||||
		for (i=0; i<bs->length; i++)
 | 
			
		||||
			{
 | 
			
		||||
			if (BIO_printf(bp,"%02x%c",bs->data[i],
 | 
			
		||||
				((i+1 == bs->length)?'\n':':')) <= 0)
 | 
			
		||||
				goto err;
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
			{
 | 
			
		||||
			neg=(bs->type == V_ASN1_NEG_INTEGER)?" (Negative)":"";
 | 
			
		||||
			if (BIO_printf(bp,"\n%12s%s","",neg) <= 0) goto err;
 | 
			
		||||
 | 
			
		||||
			for (i=0; i<bs->length; i++)
 | 
			
		||||
				{
 | 
			
		||||
				if (BIO_printf(bp,"%02x%c",bs->data[i],
 | 
			
		||||
					((i+1 == bs->length)?'\n':':')) <= 0)
 | 
			
		||||
					goto err;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	if(!(cflag & X509_FLAG_NO_SIGNAME))
 | 
			
		||||
		{
 | 
			
		||||
		i=OBJ_obj2nid(ci->signature->algorithm);
 | 
			
		||||
		if (BIO_printf(bp,"%8sSignature Algorithm: %s\n","",
 | 
			
		||||
			(i == NID_undef)?"UNKNOWN":OBJ_nid2ln(i)) <= 0)
 | 
			
		||||
			goto err;
 | 
			
		||||
		}
 | 
			
		||||
	i=OBJ_obj2nid(ci->signature->algorithm);
 | 
			
		||||
	if (BIO_printf(bp,"%8sSignature Algorithm: %s\n","",
 | 
			
		||||
		(i == NID_undef)?"UNKNOWN":OBJ_nid2ln(i)) <= 0)
 | 
			
		||||
		goto err;
 | 
			
		||||
 | 
			
		||||
	if(!(cflag & X509_FLAG_NO_ISSUER))
 | 
			
		||||
		{
 | 
			
		||||
		if (BIO_printf(bp,"        Issuer:%c",mlch) <= 0) goto err;
 | 
			
		||||
		if (!X509_NAME_print_ex(bp,X509_get_issuer_name(x),nmindent, nmflags)) goto err;
 | 
			
		||||
		}
 | 
			
		||||
	if(!(cflag & X509_FLAG_NO_VALIDITY))
 | 
			
		||||
		{
 | 
			
		||||
		if (BIO_write(bp,"\n        Validity\n",18) <= 0) goto err;
 | 
			
		||||
		if (BIO_write(bp,"            Not Before: ",24) <= 0) goto err;
 | 
			
		||||
		if (!ASN1_TIME_print(bp,X509_get_notBefore(x))) goto err;
 | 
			
		||||
		if (BIO_write(bp,"\n            Not After : ",25) <= 0) goto err;
 | 
			
		||||
		if (!ASN1_TIME_print(bp,X509_get_notAfter(x))) goto err;
 | 
			
		||||
		if (BIO_write(bp,"\n",1) <= 0) goto err;
 | 
			
		||||
		}
 | 
			
		||||
	if(!(cflag & X509_FLAG_NO_SUBJECT))
 | 
			
		||||
		{
 | 
			
		||||
		if (BIO_printf(bp,"        Subject:%c",mlch) <= 0) goto err;
 | 
			
		||||
		if (!X509_NAME_print_ex(bp,X509_get_subject_name(x),nmindent, nmflags)) goto err;
 | 
			
		||||
		}
 | 
			
		||||
	if(!(cflag & X509_FLAG_NO_PUBKEY))
 | 
			
		||||
		{
 | 
			
		||||
		if (BIO_write(bp,"\n        Subject Public Key Info:\n",34) <= 0)
 | 
			
		||||
			goto err;
 | 
			
		||||
		i=OBJ_obj2nid(ci->key->algor->algorithm);
 | 
			
		||||
		if (BIO_printf(bp,"%12sPublic Key Algorithm: %s\n","",
 | 
			
		||||
			(i == NID_undef)?"UNKNOWN":OBJ_nid2ln(i)) <= 0) goto err;
 | 
			
		||||
	if (BIO_write(bp,"        Issuer: ",16) <= 0) goto err;
 | 
			
		||||
	if (!X509_NAME_print(bp,X509_get_issuer_name(x),16)) goto err;
 | 
			
		||||
	if (BIO_write(bp,"\n        Validity\n",18) <= 0) goto err;
 | 
			
		||||
	if (BIO_write(bp,"            Not Before: ",24) <= 0) goto err;
 | 
			
		||||
	if (!ASN1_TIME_print(bp,X509_get_notBefore(x))) goto err;
 | 
			
		||||
	if (BIO_write(bp,"\n            Not After : ",25) <= 0) goto err;
 | 
			
		||||
	if (!ASN1_TIME_print(bp,X509_get_notAfter(x))) goto err;
 | 
			
		||||
	if (BIO_write(bp,"\n        Subject: ",18) <= 0) goto err;
 | 
			
		||||
	if (!X509_NAME_print(bp,X509_get_subject_name(x),16)) goto err;
 | 
			
		||||
	if (BIO_write(bp,"\n        Subject Public Key Info:\n",34) <= 0)
 | 
			
		||||
		goto err;
 | 
			
		||||
	i=OBJ_obj2nid(ci->key->algor->algorithm);
 | 
			
		||||
	if (BIO_printf(bp,"%12sPublic Key Algorithm: %s\n","",
 | 
			
		||||
		(i == NID_undef)?"UNKNOWN":OBJ_nid2ln(i)) <= 0) goto err;
 | 
			
		||||
 | 
			
		||||
		pkey=X509_get_pubkey(x);
 | 
			
		||||
		if (pkey == NULL)
 | 
			
		||||
			{
 | 
			
		||||
			BIO_printf(bp,"%12sUnable to load Public Key\n","");
 | 
			
		||||
			ERR_print_errors(bp);
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
	pkey=X509_get_pubkey(x);
 | 
			
		||||
	if (pkey == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		BIO_printf(bp,"%12sUnable to load Public Key\n","");
 | 
			
		||||
		ERR_print_errors(bp);
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
#ifndef NO_RSA
 | 
			
		||||
		if (pkey->type == EVP_PKEY_RSA)
 | 
			
		||||
			{
 | 
			
		||||
			BIO_printf(bp,"%12sRSA Public Key: (%d bit)\n","",
 | 
			
		||||
			BN_num_bits(pkey->pkey.rsa->n));
 | 
			
		||||
			RSA_print(bp,pkey->pkey.rsa,16);
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
	if (pkey->type == EVP_PKEY_RSA)
 | 
			
		||||
		{
 | 
			
		||||
		BIO_printf(bp,"%12sRSA Public Key: (%d bit)\n","",
 | 
			
		||||
		BN_num_bits(pkey->pkey.rsa->n));
 | 
			
		||||
		RSA_print(bp,pkey->pkey.rsa,16);
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef NO_DSA
 | 
			
		||||
		if (pkey->type == EVP_PKEY_DSA)
 | 
			
		||||
			{
 | 
			
		||||
			BIO_printf(bp,"%12sDSA Public Key:\n","");
 | 
			
		||||
			DSA_print(bp,pkey->pkey.dsa,16);
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
#endif
 | 
			
		||||
			BIO_printf(bp,"%12sUnknown Public Key:\n","");
 | 
			
		||||
 | 
			
		||||
		EVP_PKEY_free(pkey);
 | 
			
		||||
	if (pkey->type == EVP_PKEY_DSA)
 | 
			
		||||
		{
 | 
			
		||||
		BIO_printf(bp,"%12sDSA Public Key:\n","");
 | 
			
		||||
		DSA_print(bp,pkey->pkey.dsa,16);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	if (cflag & X509_FLAG_NO_EXTENSIONS)
 | 
			
		||||
		n = 0;
 | 
			
		||||
	else
 | 
			
		||||
		n=X509_get_ext_count(x);
 | 
			
		||||
#endif
 | 
			
		||||
		BIO_printf(bp,"%12sUnknown Public Key:\n","");
 | 
			
		||||
 | 
			
		||||
	EVP_PKEY_free(pkey);
 | 
			
		||||
 | 
			
		||||
	n=X509_get_ext_count(x);
 | 
			
		||||
	if (n > 0)
 | 
			
		||||
		{
 | 
			
		||||
		BIO_printf(bp,"%8sX509v3 extensions:\n","");
 | 
			
		||||
@@ -245,7 +196,7 @@ int X509_print_ex(BIO *bp, X509 *x, unsigned long nmflags, unsigned long cflag)
 | 
			
		||||
			j=X509_EXTENSION_get_critical(ex);
 | 
			
		||||
			if (BIO_printf(bp,": %s\n",j?"critical":"","") <= 0)
 | 
			
		||||
				goto err;
 | 
			
		||||
			if(!X509V3_EXT_print(bp, ex, cflag, 16))
 | 
			
		||||
			if(!X509V3_EXT_print(bp, ex, 0, 16))
 | 
			
		||||
				{
 | 
			
		||||
				BIO_printf(bp, "%16s", "");
 | 
			
		||||
				M_ASN1_OCTET_STRING_print(bp,ex->value);
 | 
			
		||||
@@ -254,27 +205,21 @@ int X509_print_ex(BIO *bp, X509 *x, unsigned long nmflags, unsigned long cflag)
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	if(!(cflag & X509_FLAG_NO_SIGDUMP))
 | 
			
		||||
		{
 | 
			
		||||
		i=OBJ_obj2nid(x->sig_alg->algorithm);
 | 
			
		||||
		if (BIO_printf(bp,"%4sSignature Algorithm: %s","",
 | 
			
		||||
			(i == NID_undef)?"UNKNOWN":OBJ_nid2ln(i)) <= 0) goto err;
 | 
			
		||||
	i=OBJ_obj2nid(x->sig_alg->algorithm);
 | 
			
		||||
	if (BIO_printf(bp,"%4sSignature Algorithm: %s","",
 | 
			
		||||
		(i == NID_undef)?"UNKNOWN":OBJ_nid2ln(i)) <= 0) goto err;
 | 
			
		||||
 | 
			
		||||
		n=x->signature->length;
 | 
			
		||||
		s=(char *)x->signature->data;
 | 
			
		||||
		for (i=0; i<n; i++)
 | 
			
		||||
			{
 | 
			
		||||
			if ((i%18) == 0)
 | 
			
		||||
				if (BIO_write(bp,"\n        ",9) <= 0) goto err;
 | 
			
		||||
			if (BIO_printf(bp,"%02x%s",(unsigned char)s[i],
 | 
			
		||||
				((i+1) == n)?"":":") <= 0) goto err;
 | 
			
		||||
			}
 | 
			
		||||
		if (BIO_write(bp,"\n",1) != 1) goto err;
 | 
			
		||||
		}
 | 
			
		||||
	if(!(cflag & X509_FLAG_NO_AUX))
 | 
			
		||||
	n=x->signature->length;
 | 
			
		||||
	s=(char *)x->signature->data;
 | 
			
		||||
	for (i=0; i<n; i++)
 | 
			
		||||
		{
 | 
			
		||||
		if (!X509_CERT_AUX_print(bp, x->aux, 0)) goto err;
 | 
			
		||||
		if ((i%18) == 0)
 | 
			
		||||
			if (BIO_write(bp,"\n        ",9) <= 0) goto err;
 | 
			
		||||
		if (BIO_printf(bp,"%02x%s",(unsigned char)s[i],
 | 
			
		||||
			((i+1) == n)?"":":") <= 0) goto err;
 | 
			
		||||
		}
 | 
			
		||||
	if (BIO_write(bp,"\n",1) != 1) goto err;
 | 
			
		||||
	if (!X509_CERT_AUX_print(bp, x->aux, 0)) goto err;
 | 
			
		||||
	ret=1;
 | 
			
		||||
err:
 | 
			
		||||
	if (str != NULL) ASN1_STRING_free(str);
 | 
			
		||||
 
 | 
			
		||||
@@ -71,14 +71,14 @@ int i2d_X509_REVOKED(X509_REVOKED *a, unsigned char **pp)
 | 
			
		||||
 | 
			
		||||
	M_ASN1_I2D_len(a->serialNumber,i2d_ASN1_INTEGER);
 | 
			
		||||
	M_ASN1_I2D_len(a->revocationDate,i2d_ASN1_TIME);
 | 
			
		||||
	M_ASN1_I2D_len_SEQUENCE_opt_type(X509_EXTENSION,a->extensions,
 | 
			
		||||
	M_ASN1_I2D_len_SEQUENCE_opt_ex_type(X509_EXTENSION,a->extensions,
 | 
			
		||||
					 i2d_X509_EXTENSION);
 | 
			
		||||
 | 
			
		||||
	M_ASN1_I2D_seq_total();
 | 
			
		||||
 | 
			
		||||
	M_ASN1_I2D_put(a->serialNumber,i2d_ASN1_INTEGER);
 | 
			
		||||
	M_ASN1_I2D_put(a->revocationDate,i2d_ASN1_TIME);
 | 
			
		||||
	M_ASN1_I2D_put_SEQUENCE_opt_type(X509_EXTENSION,a->extensions,
 | 
			
		||||
	M_ASN1_I2D_put_SEQUENCE_opt_ex_type(X509_EXTENSION,a->extensions,
 | 
			
		||||
					 i2d_X509_EXTENSION);
 | 
			
		||||
 | 
			
		||||
	M_ASN1_I2D_finish();
 | 
			
		||||
@@ -121,7 +121,7 @@ int i2d_X509_CRL_INFO(X509_CRL_INFO *a, unsigned char **pp)
 | 
			
		||||
		{ M_ASN1_I2D_len(a->nextUpdate,i2d_ASN1_TIME); }
 | 
			
		||||
	M_ASN1_I2D_len_SEQUENCE_opt_type(X509_REVOKED,a->revoked,
 | 
			
		||||
					 i2d_X509_REVOKED);
 | 
			
		||||
	M_ASN1_I2D_len_EXP_SEQUENCE_opt_type(X509_EXTENSION,a->extensions,
 | 
			
		||||
	M_ASN1_I2D_len_EXP_SEQUENCE_opt_ex_type(X509_EXTENSION,a->extensions,
 | 
			
		||||
					     i2d_X509_EXTENSION,0,
 | 
			
		||||
					     V_ASN1_SEQUENCE,v1);
 | 
			
		||||
 | 
			
		||||
@@ -138,7 +138,7 @@ int i2d_X509_CRL_INFO(X509_CRL_INFO *a, unsigned char **pp)
 | 
			
		||||
		{ M_ASN1_I2D_put(a->nextUpdate,i2d_ASN1_TIME); }
 | 
			
		||||
	M_ASN1_I2D_put_SEQUENCE_opt_type(X509_REVOKED,a->revoked,
 | 
			
		||||
					 i2d_X509_REVOKED);
 | 
			
		||||
	M_ASN1_I2D_put_EXP_SEQUENCE_opt_type(X509_EXTENSION,a->extensions,
 | 
			
		||||
	M_ASN1_I2D_put_EXP_SEQUENCE_opt_ex_type(X509_EXTENSION,a->extensions,
 | 
			
		||||
					     i2d_X509_EXTENSION,0,
 | 
			
		||||
					     V_ASN1_SEQUENCE,v1);
 | 
			
		||||
 | 
			
		||||
@@ -260,7 +260,7 @@ X509_CRL_INFO *X509_CRL_INFO_new(void)
 | 
			
		||||
	M_ASN1_New(ret->lastUpdate,M_ASN1_UTCTIME_new);
 | 
			
		||||
	ret->nextUpdate=NULL;
 | 
			
		||||
	M_ASN1_New(ret->revoked,sk_X509_REVOKED_new_null);
 | 
			
		||||
	M_ASN1_New(ret->extensions,sk_X509_EXTENSION_new_null);
 | 
			
		||||
	ret->extensions = NULL;
 | 
			
		||||
	sk_X509_REVOKED_set_cmp_func(ret->revoked,X509_REVOKED_cmp);
 | 
			
		||||
	return(ret);
 | 
			
		||||
	M_ASN1_New_Error(ASN1_F_X509_CRL_INFO_NEW);
 | 
			
		||||
 
 | 
			
		||||
@@ -141,10 +141,12 @@ static int i2d_X509_NAME_entries(X509_NAME *a)
 | 
			
		||||
			}
 | 
			
		||||
		size+=i2d_X509_NAME_ENTRY(ne,NULL);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	ret+=ASN1_object_size(1,size,V_ASN1_SET);
 | 
			
		||||
	if (fe != NULL)
 | 
			
		||||
		{
 | 
			
		||||
		/* SET OF needed only if entries is non empty */
 | 
			
		||||
		ret+=ASN1_object_size(1,size,V_ASN1_SET);
 | 
			
		||||
		fe->size=size;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	r=ASN1_object_size(1,ret,V_ASN1_SEQUENCE);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -123,8 +123,7 @@ bf_buff.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
bf_buff.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
bf_buff.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
bf_buff.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
bf_buff.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
bf_buff.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
bf_buff.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
bf_buff.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
bf_buff.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
bf_buff.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -142,11 +141,10 @@ bf_nbio.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
bf_nbio.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
bf_nbio.o: ../cryptlib.h
 | 
			
		||||
bf_null.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
bf_null.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
bf_null.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -160,8 +158,7 @@ bf_null.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
bf_null.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
bf_null.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
bf_null.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
bf_null.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
bf_null.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
bf_null.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
bf_null.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
bf_null.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
bf_null.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
 
 | 
			
		||||
@@ -151,7 +151,7 @@ static void _dopr(char **sbuffer, char **buffer,
 | 
			
		||||
 | 
			
		||||
/* some handy macros */
 | 
			
		||||
#define char_to_int(p) (p - '0')
 | 
			
		||||
#define OSSL_MAX(p,q) ((p >= q) ? p : q)
 | 
			
		||||
#define MAX(p,q) ((p >= q) ? p : q)
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
_dopr(
 | 
			
		||||
@@ -502,13 +502,13 @@ fmtint(
 | 
			
		||||
    convert[place] = 0;
 | 
			
		||||
 | 
			
		||||
    zpadlen = max - place;
 | 
			
		||||
    spadlen = min - OSSL_MAX(max, place) - (signvalue ? 1 : 0);
 | 
			
		||||
    spadlen = min - MAX(max, place) - (signvalue ? 1 : 0);
 | 
			
		||||
    if (zpadlen < 0)
 | 
			
		||||
        zpadlen = 0;
 | 
			
		||||
    if (spadlen < 0)
 | 
			
		||||
        spadlen = 0;
 | 
			
		||||
    if (flags & DP_F_ZERO) {
 | 
			
		||||
        zpadlen = OSSL_MAX(zpadlen, spadlen);
 | 
			
		||||
        zpadlen = MAX(zpadlen, spadlen);
 | 
			
		||||
        spadlen = 0;
 | 
			
		||||
    }
 | 
			
		||||
    if (flags & DP_F_MINUS)
 | 
			
		||||
 
 | 
			
		||||
@@ -519,10 +519,10 @@ int BIO_get_accept_socket(char *host, int bind_mode)
 | 
			
		||||
	{
 | 
			
		||||
	int ret=0;
 | 
			
		||||
	struct sockaddr_in server,client;
 | 
			
		||||
	int s= -1,cs;
 | 
			
		||||
	int s=INVALID_SOCKET,cs;
 | 
			
		||||
	unsigned char ip[4];
 | 
			
		||||
	unsigned short port;
 | 
			
		||||
	char *str,*e;
 | 
			
		||||
	char *str=NULL,*e;
 | 
			
		||||
	const char *h,*p;
 | 
			
		||||
	unsigned long l;
 | 
			
		||||
	int err_num;
 | 
			
		||||
@@ -553,7 +553,7 @@ int BIO_get_accept_socket(char *host, int bind_mode)
 | 
			
		||||
		h="*";
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	if (!BIO_get_port(p,&port)) return(INVALID_SOCKET);
 | 
			
		||||
	if (!BIO_get_port(p,&port)) goto err;
 | 
			
		||||
 | 
			
		||||
	memset((char *)&server,0,sizeof(server));
 | 
			
		||||
	server.sin_family=AF_INET;
 | 
			
		||||
@@ -563,7 +563,7 @@ int BIO_get_accept_socket(char *host, int bind_mode)
 | 
			
		||||
		server.sin_addr.s_addr=INADDR_ANY;
 | 
			
		||||
	else
 | 
			
		||||
		{
 | 
			
		||||
		if (!BIO_get_host_ip(h,&(ip[0]))) return(INVALID_SOCKET);
 | 
			
		||||
                if (!BIO_get_host_ip(h,&(ip[0]))) goto err;
 | 
			
		||||
		l=(unsigned long)
 | 
			
		||||
			((unsigned long)ip[0]<<24L)|
 | 
			
		||||
			((unsigned long)ip[1]<<16L)|
 | 
			
		||||
@@ -661,7 +661,6 @@ int BIO_accept(int sock, char **addr)
 | 
			
		||||
	ret=accept(sock,(struct sockaddr *)&from,(void *)&len);
 | 
			
		||||
	if (ret == INVALID_SOCKET)
 | 
			
		||||
		{
 | 
			
		||||
		if(BIO_sock_should_retry(ret)) return -2;
 | 
			
		||||
		SYSerr(SYS_F_ACCEPT,get_last_socket_error());
 | 
			
		||||
		BIOerr(BIO_F_BIO_ACCEPT,BIO_R_ACCEPT_ERROR);
 | 
			
		||||
		goto end;
 | 
			
		||||
 
 | 
			
		||||
@@ -179,7 +179,7 @@ extern "C" {
 | 
			
		||||
#define BIO_retry_type(a)		((a)->flags & BIO_FLAGS_RWS)
 | 
			
		||||
#define BIO_should_retry(a)		((a)->flags & BIO_FLAGS_SHOULD_RETRY)
 | 
			
		||||
 | 
			
		||||
/* The next three are used in conjunction with the
 | 
			
		||||
/* The next two are used in conjunction with the
 | 
			
		||||
 * BIO_should_io_special() condition.  After this returns true,
 | 
			
		||||
 * BIO *BIO_get_retry_BIO(BIO *bio, int *reason); will walk the BIO 
 | 
			
		||||
 * stack and return the 'reason' for the special and the offending BIO.
 | 
			
		||||
@@ -188,8 +188,6 @@ extern "C" {
 | 
			
		||||
#define BIO_RR_SSL_X509_LOOKUP		0x01
 | 
			
		||||
/* Returned from the connect BIO when a connect would have blocked */
 | 
			
		||||
#define BIO_RR_CONNECT			0x02
 | 
			
		||||
/* Returned from the accept BIO when an accept would have blocked */
 | 
			
		||||
#define BIO_RR_ACCEPT			0x03
 | 
			
		||||
 | 
			
		||||
/* These are passed by the BIO callback */
 | 
			
		||||
#define BIO_CB_FREE	0x01
 | 
			
		||||
 
 | 
			
		||||
@@ -236,20 +236,8 @@ again:
 | 
			
		||||
			c->state=ACPT_S_OK;
 | 
			
		||||
			goto again;
 | 
			
		||||
			}
 | 
			
		||||
		BIO_clear_retry_flags(b);
 | 
			
		||||
		b->retry_reason=0;
 | 
			
		||||
		i=BIO_accept(c->accept_sock,&(c->addr));
 | 
			
		||||
 | 
			
		||||
		/* -2 return means we should retry */
 | 
			
		||||
		if(i == -2)
 | 
			
		||||
			{
 | 
			
		||||
			BIO_set_retry_special(b);
 | 
			
		||||
			b->retry_reason=BIO_RR_ACCEPT;
 | 
			
		||||
			return -1;
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		if (i < 0) return(i);
 | 
			
		||||
 | 
			
		||||
		bio=BIO_new_socket(i,BIO_CLOSE);
 | 
			
		||||
		if (bio == NULL) goto err;
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -586,13 +586,13 @@ LEAF(bn_div_3_words)
 | 
			
		||||
	ld	a0,(a3)
 | 
			
		||||
	move	ta2,a1
 | 
			
		||||
	ld	a1,-8(a3)
 | 
			
		||||
	move	ta3,ra
 | 
			
		||||
	move	v1,zero
 | 
			
		||||
	bne	a0,a2,.L_bn_div_3_words_proceed
 | 
			
		||||
	li	v0,-1
 | 
			
		||||
	beq	a0,a2,.L_bn_div_3_words_skip_div
 | 
			
		||||
	jr	ra
 | 
			
		||||
.L_bn_div_3_words_proceed:
 | 
			
		||||
	move	ta3,ra
 | 
			
		||||
	bal	bn_div_words
 | 
			
		||||
	move	ra,ta3
 | 
			
		||||
.L_bn_div_3_words_skip_div:
 | 
			
		||||
	dmultu	ta2,v0
 | 
			
		||||
	ld	t2,-16(a3)
 | 
			
		||||
	move	ta0,zero
 | 
			
		||||
 
 | 
			
		||||
@@ -239,7 +239,7 @@ typedef struct bignum_st
 | 
			
		||||
	} BIGNUM;
 | 
			
		||||
 | 
			
		||||
/* Used for temp variables */
 | 
			
		||||
#define BN_CTX_NUM	12
 | 
			
		||||
#define BN_CTX_NUM	16
 | 
			
		||||
#define BN_CTX_NUM_POS	12
 | 
			
		||||
typedef struct bignum_ctx
 | 
			
		||||
	{
 | 
			
		||||
@@ -328,6 +328,7 @@ BIGNUM *BN_CTX_get(BN_CTX *ctx);
 | 
			
		||||
void	BN_CTX_end(BN_CTX *ctx);
 | 
			
		||||
int     BN_rand(BIGNUM *rnd, int bits, int top,int bottom);
 | 
			
		||||
int     BN_pseudo_rand(BIGNUM *rnd, int bits, int top,int bottom);
 | 
			
		||||
int	BN_rand_range(BIGNUM *rnd, BIGNUM *range);
 | 
			
		||||
int	BN_num_bits(const BIGNUM *a);
 | 
			
		||||
int	BN_num_bits_word(BN_ULONG);
 | 
			
		||||
BIGNUM *BN_new(void);
 | 
			
		||||
@@ -467,6 +468,8 @@ BN_ULONG bn_sub_words(BN_ULONG *rp, BN_ULONG *ap, BN_ULONG *bp,int num);
 | 
			
		||||
# define bn_dump(a,b)
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
int BN_bntest_rand(BIGNUM *rnd, int bits, int top,int bottom);
 | 
			
		||||
 | 
			
		||||
/* BEGIN ERROR CODES */
 | 
			
		||||
/* The following lines are auto generated by the script mkerr.pl. Any changes
 | 
			
		||||
 * made after this point may be overwritten when the script is next run.
 | 
			
		||||
@@ -493,16 +496,19 @@ BN_ULONG bn_sub_words(BN_ULONG *rp, BN_ULONG *ap, BN_ULONG *bp,int num);
 | 
			
		||||
#define BN_F_BN_MPI2BN					 112
 | 
			
		||||
#define BN_F_BN_NEW					 113
 | 
			
		||||
#define BN_F_BN_RAND					 114
 | 
			
		||||
#define BN_F_BN_RAND_RANGE				 122
 | 
			
		||||
#define BN_F_BN_USUB					 115
 | 
			
		||||
 | 
			
		||||
/* Reason codes. */
 | 
			
		||||
#define BN_R_ARG2_LT_ARG3				 100
 | 
			
		||||
#define BN_R_BAD_RECIPROCAL				 101
 | 
			
		||||
#define BN_R_BIGNUM_TOO_LONG				 114
 | 
			
		||||
#define BN_R_CALLED_WITH_EVEN_MODULUS			 102
 | 
			
		||||
#define BN_R_DIV_BY_ZERO				 103
 | 
			
		||||
#define BN_R_ENCODING_ERROR				 104
 | 
			
		||||
#define BN_R_EXPAND_ON_STATIC_BIGNUM_DATA		 105
 | 
			
		||||
#define BN_R_INVALID_LENGTH				 106
 | 
			
		||||
#define BN_R_INVALID_RANGE				 115
 | 
			
		||||
#define BN_R_NOT_INITIALIZED				 107
 | 
			
		||||
#define BN_R_NO_INVERSE					 108
 | 
			
		||||
#define BN_R_TOO_MANY_TEMPORARY_VARIABLES		 109
 | 
			
		||||
 
 | 
			
		||||
@@ -180,13 +180,13 @@ int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor,
 | 
			
		||||
 | 
			
		||||
	BN_CTX_start(ctx);
 | 
			
		||||
	tmp=BN_CTX_get(ctx);
 | 
			
		||||
	tmp->neg=0;
 | 
			
		||||
	snum=BN_CTX_get(ctx);
 | 
			
		||||
	sdiv=BN_CTX_get(ctx);
 | 
			
		||||
	if (dv == NULL)
 | 
			
		||||
		res=BN_CTX_get(ctx);
 | 
			
		||||
	else	res=dv;
 | 
			
		||||
	if (res == NULL) goto err;
 | 
			
		||||
	if (sdiv==NULL || res == NULL) goto err;
 | 
			
		||||
	tmp->neg=0;
 | 
			
		||||
 | 
			
		||||
	/* First we normalise the numbers */
 | 
			
		||||
	norm_shift=BN_BITS2-((BN_num_bits(divisor))%BN_BITS2);
 | 
			
		||||
@@ -237,7 +237,8 @@ int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor,
 | 
			
		||||
	for (i=0; i<loop-1; i++)
 | 
			
		||||
		{
 | 
			
		||||
		BN_ULONG q,l0;
 | 
			
		||||
#ifdef BN_DIV3W
 | 
			
		||||
#if defined(BN_DIV3W) && !defined(NO_ASM)
 | 
			
		||||
		BN_ULONG bn_div_3_words(BN_ULONG*,BN_ULONG,BN_ULONG);
 | 
			
		||||
		q=bn_div_3_words(wnump,d1,d0);
 | 
			
		||||
#else
 | 
			
		||||
		BN_ULONG n0,n1,rem=0;
 | 
			
		||||
 
 | 
			
		||||
@@ -84,6 +84,7 @@ static ERR_STRING_DATA BN_str_functs[]=
 | 
			
		||||
{ERR_PACK(0,BN_F_BN_MPI2BN,0),	"BN_mpi2bn"},
 | 
			
		||||
{ERR_PACK(0,BN_F_BN_NEW,0),	"BN_new"},
 | 
			
		||||
{ERR_PACK(0,BN_F_BN_RAND,0),	"BN_rand"},
 | 
			
		||||
{ERR_PACK(0,BN_F_BN_RAND_RANGE,0),	"BN_rand_range"},
 | 
			
		||||
{ERR_PACK(0,BN_F_BN_USUB,0),	"BN_usub"},
 | 
			
		||||
{0,NULL}
 | 
			
		||||
	};
 | 
			
		||||
@@ -92,11 +93,13 @@ static ERR_STRING_DATA BN_str_reasons[]=
 | 
			
		||||
	{
 | 
			
		||||
{BN_R_ARG2_LT_ARG3                       ,"arg2 lt arg3"},
 | 
			
		||||
{BN_R_BAD_RECIPROCAL                     ,"bad reciprocal"},
 | 
			
		||||
{BN_R_BIGNUM_TOO_LONG                    ,"bignum too long"},
 | 
			
		||||
{BN_R_CALLED_WITH_EVEN_MODULUS           ,"called with even modulus"},
 | 
			
		||||
{BN_R_DIV_BY_ZERO                        ,"div by zero"},
 | 
			
		||||
{BN_R_ENCODING_ERROR                     ,"encoding error"},
 | 
			
		||||
{BN_R_EXPAND_ON_STATIC_BIGNUM_DATA       ,"expand on static bignum data"},
 | 
			
		||||
{BN_R_INVALID_LENGTH                     ,"invalid length"},
 | 
			
		||||
{BN_R_INVALID_RANGE                      ,"invalid range"},
 | 
			
		||||
{BN_R_NOT_INITIALIZED                    ,"not initialized"},
 | 
			
		||||
{BN_R_NO_INVERSE                         ,"no inverse"},
 | 
			
		||||
{BN_R_TOO_MANY_TEMPORARY_VARIABLES       ,"too many temporary variables"},
 | 
			
		||||
 
 | 
			
		||||
@@ -62,6 +62,7 @@
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#include <assert.h>
 | 
			
		||||
#include <limits.h>
 | 
			
		||||
#include <stdio.h>
 | 
			
		||||
#include "cryptlib.h"
 | 
			
		||||
#include "bn_lcl.h"
 | 
			
		||||
@@ -319,6 +320,12 @@ BIGNUM *bn_expand2(BIGNUM *b, int words)
 | 
			
		||||
 | 
			
		||||
	if (words > b->dmax)
 | 
			
		||||
		{
 | 
			
		||||
		if (words > (INT_MAX/(4*BN_BITS2)))
 | 
			
		||||
			{
 | 
			
		||||
			BNerr(BN_F_BN_EXPAND2,BN_R_BIGNUM_TOO_LONG);
 | 
			
		||||
			return NULL;
 | 
			
		||||
			}
 | 
			
		||||
			
 | 
			
		||||
		bn_check_top(b);	
 | 
			
		||||
		if (BN_get_flags(b,BN_FLG_STATIC_DATA))
 | 
			
		||||
			{
 | 
			
		||||
 
 | 
			
		||||
@@ -76,7 +76,7 @@ static int bnrand(int pseudorand, BIGNUM *rnd, int bits, int top, int bottom)
 | 
			
		||||
 | 
			
		||||
	bytes=(bits+7)/8;
 | 
			
		||||
	bit=(bits-1)%8;
 | 
			
		||||
	mask=0xff<<bit;
 | 
			
		||||
	mask=0xff<<(bit+1);
 | 
			
		||||
 | 
			
		||||
	buf=(unsigned char *)OPENSSL_malloc(bytes);
 | 
			
		||||
	if (buf == NULL)
 | 
			
		||||
@@ -100,25 +100,48 @@ static int bnrand(int pseudorand, BIGNUM *rnd, int bits, int top, int bottom)
 | 
			
		||||
			goto err;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	if (top)
 | 
			
		||||
#if 1
 | 
			
		||||
	if (pseudorand == 2)
 | 
			
		||||
		{
 | 
			
		||||
		if (bit == 0)
 | 
			
		||||
		/* generate patterns that are more likely to trigger BN
 | 
			
		||||
		   library bugs */
 | 
			
		||||
		int i;
 | 
			
		||||
		unsigned char c;
 | 
			
		||||
 | 
			
		||||
		for (i = 0; i < bytes; i++)
 | 
			
		||||
			{
 | 
			
		||||
			buf[0]=1;
 | 
			
		||||
			buf[1]|=0x80;
 | 
			
		||||
			RAND_pseudo_bytes(&c, 1);
 | 
			
		||||
			if (c >= 128 && i > 0)
 | 
			
		||||
				buf[i] = buf[i-1];
 | 
			
		||||
			else if (c < 42)
 | 
			
		||||
				buf[i] = 0;
 | 
			
		||||
			else if (c < 84)
 | 
			
		||||
				buf[i] = 255;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
	if (top != -1)
 | 
			
		||||
		{
 | 
			
		||||
		if (top)
 | 
			
		||||
			{
 | 
			
		||||
			if (bit == 0)
 | 
			
		||||
				{
 | 
			
		||||
				buf[0]=1;
 | 
			
		||||
				buf[1]|=0x80;
 | 
			
		||||
				}
 | 
			
		||||
			else
 | 
			
		||||
				{
 | 
			
		||||
				buf[0]|=(3<<(bit-1));
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
			{
 | 
			
		||||
			buf[0]|=(3<<(bit-1));
 | 
			
		||||
			buf[0]&= ~(mask<<1);
 | 
			
		||||
			buf[0]|=(1<<bit);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		{
 | 
			
		||||
		buf[0]|=(1<<bit);
 | 
			
		||||
		buf[0]&= ~(mask<<1);
 | 
			
		||||
		}
 | 
			
		||||
	if (bottom) /* set bottom bits to whatever odd is */
 | 
			
		||||
	buf[0] &= ~mask;
 | 
			
		||||
	if (bottom) /* set bottom bit if requested */
 | 
			
		||||
		buf[bytes-1]|=1;
 | 
			
		||||
	if (!BN_bin2bn(buf,bytes,rnd)) goto err;
 | 
			
		||||
	ret=1;
 | 
			
		||||
@@ -140,3 +163,61 @@ int     BN_pseudo_rand(BIGNUM *rnd, int bits, int top, int bottom)
 | 
			
		||||
	{
 | 
			
		||||
	return bnrand(1, rnd, bits, top, bottom);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
#if 1
 | 
			
		||||
int     BN_bntest_rand(BIGNUM *rnd, int bits, int top, int bottom)
 | 
			
		||||
	{
 | 
			
		||||
	return bnrand(2, rnd, bits, top, bottom);
 | 
			
		||||
	}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
/* random number r:  0 <= r < range */
 | 
			
		||||
int	BN_rand_range(BIGNUM *r, BIGNUM *range)
 | 
			
		||||
	{
 | 
			
		||||
	int n;
 | 
			
		||||
 | 
			
		||||
	if (range->neg || BN_is_zero(range))
 | 
			
		||||
		{
 | 
			
		||||
		BNerr(BN_F_BN_RAND_RANGE, BN_R_INVALID_RANGE);
 | 
			
		||||
		return 0;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	n = BN_num_bits(range); /* n > 0 */
 | 
			
		||||
 | 
			
		||||
	if (n == 1)
 | 
			
		||||
		{
 | 
			
		||||
		if (!BN_zero(r)) return 0;
 | 
			
		||||
		}
 | 
			
		||||
	else if (BN_is_bit_set(range, n - 2))
 | 
			
		||||
		{
 | 
			
		||||
		do
 | 
			
		||||
			{
 | 
			
		||||
			/* range = 11..._2, so each iteration succeeds with probability >= .75 */
 | 
			
		||||
			if (!BN_rand(r, n, -1, 0)) return 0;
 | 
			
		||||
			}
 | 
			
		||||
		while (BN_cmp(r, range) >= 0);
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		{
 | 
			
		||||
		/* range = 10..._2,
 | 
			
		||||
		 * so  3*range (= 11..._2)  is exactly one bit longer than  range */
 | 
			
		||||
		do
 | 
			
		||||
			{
 | 
			
		||||
			if (!BN_rand(r, n + 1, -1, 0)) return 0;
 | 
			
		||||
			/* If  r < 3*range,  use  r := r MOD range
 | 
			
		||||
			 * (which is either  r, r - range,  or  r - 2*range).
 | 
			
		||||
			 * Otherwise, iterate once more.
 | 
			
		||||
			 * Since  3*range = 11..._2, each iteration succeeds with
 | 
			
		||||
			 * probability >= .75. */
 | 
			
		||||
			if (BN_cmp(r ,range) >= 0)
 | 
			
		||||
				{
 | 
			
		||||
				if (!BN_sub(r, r, range)) return 0;
 | 
			
		||||
				if (BN_cmp(r, range) >= 0)
 | 
			
		||||
					if (!BN_sub(r, r, range)) return 0;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		while (BN_cmp(r, range) >= 0);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	return 1;
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -172,6 +172,11 @@ int BN_rshift(BIGNUM *r, BIGNUM *a, int n)
 | 
			
		||||
		r->neg=a->neg;
 | 
			
		||||
		if (bn_wexpand(r,a->top-nw+1) == NULL) return(0);
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		{
 | 
			
		||||
		if (n == 0)
 | 
			
		||||
			return 1; /* or the copying loop will go berserk */
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	f= &(a->d[nw]);
 | 
			
		||||
	t=r->d;
 | 
			
		||||
 
 | 
			
		||||
@@ -107,11 +107,9 @@ static const char rnd_seed[] = "string to make the random number generator think
 | 
			
		||||
static void message(BIO *out, char *m)
 | 
			
		||||
	{
 | 
			
		||||
	fprintf(stderr, "test %s\n", m);
 | 
			
		||||
#if defined(linux) || defined(__FreeBSD__) /* can we use GNU bc features? */
 | 
			
		||||
	BIO_puts(out, "print \"test ");
 | 
			
		||||
	BIO_puts(out, m);
 | 
			
		||||
	BIO_puts(out, "\\n\"\n");
 | 
			
		||||
#endif
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
int main(int argc, char *argv[])
 | 
			
		||||
@@ -122,9 +120,7 @@ int main(int argc, char *argv[])
 | 
			
		||||
 | 
			
		||||
	results = 0;
 | 
			
		||||
 | 
			
		||||
	RAND_seed(rnd_seed, sizeof rnd_seed); /* or BN_rand may fail, and we don't
 | 
			
		||||
	                                       * even check its return value
 | 
			
		||||
	                                       * (which we should) */
 | 
			
		||||
	RAND_seed(rnd_seed, sizeof rnd_seed); /* or BN_generate_prime may fail */
 | 
			
		||||
 | 
			
		||||
	argc--;
 | 
			
		||||
	argv++;
 | 
			
		||||
@@ -253,10 +249,10 @@ int test_add(BIO *bp)
 | 
			
		||||
	BN_init(&b);
 | 
			
		||||
	BN_init(&c);
 | 
			
		||||
 | 
			
		||||
	BN_rand(&a,512,0,0);
 | 
			
		||||
	BN_bntest_rand(&a,512,0,0);
 | 
			
		||||
	for (i=0; i<num0; i++)
 | 
			
		||||
		{
 | 
			
		||||
		BN_rand(&b,450+i,0,0);
 | 
			
		||||
		BN_bntest_rand(&b,450+i,0,0);
 | 
			
		||||
		a.neg=rand_neg();
 | 
			
		||||
		b.neg=rand_neg();
 | 
			
		||||
		if (bp == NULL)
 | 
			
		||||
@@ -305,14 +301,14 @@ int test_sub(BIO *bp)
 | 
			
		||||
		{
 | 
			
		||||
		if (i < num1)
 | 
			
		||||
			{
 | 
			
		||||
			BN_rand(&a,512,0,0);
 | 
			
		||||
			BN_bntest_rand(&a,512,0,0);
 | 
			
		||||
			BN_copy(&b,&a);
 | 
			
		||||
			if (BN_set_bit(&a,i)==0) return(0);
 | 
			
		||||
			BN_add_word(&b,i);
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
			{
 | 
			
		||||
			BN_rand(&b,400+i-num1,0,0);
 | 
			
		||||
			BN_bntest_rand(&b,400+i-num1,0,0);
 | 
			
		||||
			a.neg=rand_neg();
 | 
			
		||||
			b.neg=rand_neg();
 | 
			
		||||
			}
 | 
			
		||||
@@ -362,13 +358,13 @@ int test_div(BIO *bp, BN_CTX *ctx)
 | 
			
		||||
		{
 | 
			
		||||
		if (i < num1)
 | 
			
		||||
			{
 | 
			
		||||
			BN_rand(&a,400,0,0);
 | 
			
		||||
			BN_bntest_rand(&a,400,0,0);
 | 
			
		||||
			BN_copy(&b,&a);
 | 
			
		||||
			BN_lshift(&a,&a,i);
 | 
			
		||||
			BN_add_word(&a,i);
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
			BN_rand(&b,50+3*(i-num1),0,0);
 | 
			
		||||
			BN_bntest_rand(&b,50+3*(i-num1),0,0);
 | 
			
		||||
		a.neg=rand_neg();
 | 
			
		||||
		b.neg=rand_neg();
 | 
			
		||||
		if (bp == NULL)
 | 
			
		||||
@@ -432,13 +428,13 @@ int test_div_recp(BIO *bp, BN_CTX *ctx)
 | 
			
		||||
		{
 | 
			
		||||
		if (i < num1)
 | 
			
		||||
			{
 | 
			
		||||
			BN_rand(&a,400,0,0);
 | 
			
		||||
			BN_bntest_rand(&a,400,0,0);
 | 
			
		||||
			BN_copy(&b,&a);
 | 
			
		||||
			BN_lshift(&a,&a,i);
 | 
			
		||||
			BN_add_word(&a,i);
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
			BN_rand(&b,50+3*(i-num1),0,0);
 | 
			
		||||
			BN_bntest_rand(&b,50+3*(i-num1),0,0);
 | 
			
		||||
		a.neg=rand_neg();
 | 
			
		||||
		b.neg=rand_neg();
 | 
			
		||||
		BN_RECP_CTX_set(&recp,&b,ctx);
 | 
			
		||||
@@ -509,11 +505,11 @@ int test_mul(BIO *bp)
 | 
			
		||||
		{
 | 
			
		||||
		if (i <= num1)
 | 
			
		||||
			{
 | 
			
		||||
			BN_rand(&a,100,0,0);
 | 
			
		||||
			BN_rand(&b,100,0,0);
 | 
			
		||||
			BN_bntest_rand(&a,100,0,0);
 | 
			
		||||
			BN_bntest_rand(&b,100,0,0);
 | 
			
		||||
			}
 | 
			
		||||
		else
 | 
			
		||||
			BN_rand(&b,i-num1,0,0);
 | 
			
		||||
			BN_bntest_rand(&b,i-num1,0,0);
 | 
			
		||||
		a.neg=rand_neg();
 | 
			
		||||
		b.neg=rand_neg();
 | 
			
		||||
		if (bp == NULL)
 | 
			
		||||
@@ -562,7 +558,7 @@ int test_sqr(BIO *bp, BN_CTX *ctx)
 | 
			
		||||
 | 
			
		||||
	for (i=0; i<num0; i++)
 | 
			
		||||
		{
 | 
			
		||||
		BN_rand(&a,40+i*10,0,0);
 | 
			
		||||
		BN_bntest_rand(&a,40+i*10,0,0);
 | 
			
		||||
		a.neg=rand_neg();
 | 
			
		||||
		if (bp == NULL)
 | 
			
		||||
			for (j=0; j<100; j++)
 | 
			
		||||
@@ -613,15 +609,15 @@ int test_mont(BIO *bp, BN_CTX *ctx)
 | 
			
		||||
 | 
			
		||||
	mont=BN_MONT_CTX_new();
 | 
			
		||||
 | 
			
		||||
	BN_rand(&a,100,0,0); /**/
 | 
			
		||||
	BN_rand(&b,100,0,0); /**/
 | 
			
		||||
	BN_bntest_rand(&a,100,0,0); /**/
 | 
			
		||||
	BN_bntest_rand(&b,100,0,0); /**/
 | 
			
		||||
	for (i=0; i<num2; i++)
 | 
			
		||||
		{
 | 
			
		||||
		int bits = (200*(i+1))/num2;
 | 
			
		||||
 | 
			
		||||
		if (bits == 0)
 | 
			
		||||
			continue;
 | 
			
		||||
		BN_rand(&n,bits,0,1);
 | 
			
		||||
		BN_bntest_rand(&n,bits,0,1);
 | 
			
		||||
		BN_MONT_CTX_set(mont,&n,ctx);
 | 
			
		||||
 | 
			
		||||
		BN_to_montgomery(&A,&a,mont,ctx);
 | 
			
		||||
@@ -683,10 +679,10 @@ int test_mod(BIO *bp, BN_CTX *ctx)
 | 
			
		||||
	d=BN_new();
 | 
			
		||||
	e=BN_new();
 | 
			
		||||
 | 
			
		||||
	BN_rand(a,1024,0,0); /**/
 | 
			
		||||
	BN_bntest_rand(a,1024,0,0); /**/
 | 
			
		||||
	for (i=0; i<num0; i++)
 | 
			
		||||
		{
 | 
			
		||||
		BN_rand(b,450+i*10,0,0); /**/
 | 
			
		||||
		BN_bntest_rand(b,450+i*10,0,0); /**/
 | 
			
		||||
		a->neg=rand_neg();
 | 
			
		||||
		b->neg=rand_neg();
 | 
			
		||||
		if (bp == NULL)
 | 
			
		||||
@@ -732,11 +728,11 @@ int test_mod_mul(BIO *bp, BN_CTX *ctx)
 | 
			
		||||
	d=BN_new();
 | 
			
		||||
	e=BN_new();
 | 
			
		||||
 | 
			
		||||
	BN_rand(c,1024,0,0); /**/
 | 
			
		||||
	BN_bntest_rand(c,1024,0,0); /**/
 | 
			
		||||
	for (i=0; i<num0; i++)
 | 
			
		||||
		{
 | 
			
		||||
		BN_rand(a,475+i*10,0,0); /**/
 | 
			
		||||
		BN_rand(b,425+i*11,0,0); /**/
 | 
			
		||||
		BN_bntest_rand(a,475+i*10,0,0); /**/
 | 
			
		||||
		BN_bntest_rand(b,425+i*11,0,0); /**/
 | 
			
		||||
		a->neg=rand_neg();
 | 
			
		||||
		b->neg=rand_neg();
 | 
			
		||||
	/*	if (bp == NULL)
 | 
			
		||||
@@ -794,11 +790,11 @@ int test_mod_exp(BIO *bp, BN_CTX *ctx)
 | 
			
		||||
	d=BN_new();
 | 
			
		||||
	e=BN_new();
 | 
			
		||||
 | 
			
		||||
	BN_rand(c,30,0,1); /* must be odd for montgomery */
 | 
			
		||||
	BN_bntest_rand(c,30,0,1); /* must be odd for montgomery */
 | 
			
		||||
	for (i=0; i<num2; i++)
 | 
			
		||||
		{
 | 
			
		||||
		BN_rand(a,20+i*5,0,0); /**/
 | 
			
		||||
		BN_rand(b,2+i,0,0); /**/
 | 
			
		||||
		BN_bntest_rand(a,20+i*5,0,0); /**/
 | 
			
		||||
		BN_bntest_rand(b,2+i,0,0); /**/
 | 
			
		||||
 | 
			
		||||
		if (!BN_mod_exp(d,a,b,c,ctx))
 | 
			
		||||
			return(00);
 | 
			
		||||
@@ -848,8 +844,8 @@ int test_exp(BIO *bp, BN_CTX *ctx)
 | 
			
		||||
 | 
			
		||||
	for (i=0; i<num2; i++)
 | 
			
		||||
		{
 | 
			
		||||
		BN_rand(a,20+i*5,0,0); /**/
 | 
			
		||||
		BN_rand(b,2+i,0,0); /**/
 | 
			
		||||
		BN_bntest_rand(a,20+i*5,0,0); /**/
 | 
			
		||||
		BN_bntest_rand(b,2+i,0,0); /**/
 | 
			
		||||
 | 
			
		||||
		if (!BN_exp(d,a,b,ctx))
 | 
			
		||||
			return(00);
 | 
			
		||||
@@ -899,7 +895,7 @@ int test_lshift(BIO *bp,BN_CTX *ctx,BIGNUM *a_)
 | 
			
		||||
	else
 | 
			
		||||
	    {
 | 
			
		||||
	    a=BN_new();
 | 
			
		||||
	    BN_rand(a,200,0,0); /**/
 | 
			
		||||
	    BN_bntest_rand(a,200,0,0); /**/
 | 
			
		||||
	    a->neg=rand_neg();
 | 
			
		||||
	    }
 | 
			
		||||
	for (i=0; i<num0; i++)
 | 
			
		||||
@@ -951,7 +947,7 @@ int test_lshift1(BIO *bp)
 | 
			
		||||
	b=BN_new();
 | 
			
		||||
	c=BN_new();
 | 
			
		||||
 | 
			
		||||
	BN_rand(a,200,0,0); /**/
 | 
			
		||||
	BN_bntest_rand(a,200,0,0); /**/
 | 
			
		||||
	a->neg=rand_neg();
 | 
			
		||||
	for (i=0; i<num0; i++)
 | 
			
		||||
		{
 | 
			
		||||
@@ -995,7 +991,7 @@ int test_rshift(BIO *bp,BN_CTX *ctx)
 | 
			
		||||
	e=BN_new();
 | 
			
		||||
	BN_one(c);
 | 
			
		||||
 | 
			
		||||
	BN_rand(a,200,0,0); /**/
 | 
			
		||||
	BN_bntest_rand(a,200,0,0); /**/
 | 
			
		||||
	a->neg=rand_neg();
 | 
			
		||||
	for (i=0; i<num0; i++)
 | 
			
		||||
		{
 | 
			
		||||
@@ -1038,7 +1034,7 @@ int test_rshift1(BIO *bp)
 | 
			
		||||
	b=BN_new();
 | 
			
		||||
	c=BN_new();
 | 
			
		||||
 | 
			
		||||
	BN_rand(a,200,0,0); /**/
 | 
			
		||||
	BN_bntest_rand(a,200,0,0); /**/
 | 
			
		||||
	a->neg=rand_neg();
 | 
			
		||||
	for (i=0; i<num0; i++)
 | 
			
		||||
		{
 | 
			
		||||
 
 | 
			
		||||
@@ -90,11 +90,10 @@ struct conf_method_st
 | 
			
		||||
	int (MS_FAR *init)(CONF *conf);
 | 
			
		||||
	int (MS_FAR *destroy)(CONF *conf);
 | 
			
		||||
	int (MS_FAR *destroy_data)(CONF *conf);
 | 
			
		||||
	int (MS_FAR *load_bio)(CONF *conf, BIO *bp, long *eline);
 | 
			
		||||
	int (MS_FAR *load)(CONF *conf, BIO *bp, long *eline);
 | 
			
		||||
	int (MS_FAR *dump)(CONF *conf, BIO *bp);
 | 
			
		||||
	int (MS_FAR *is_number)(CONF *conf, char c);
 | 
			
		||||
	int (MS_FAR *to_int)(CONF *conf, char c);
 | 
			
		||||
	int (MS_FAR *load)(CONF *conf, const char *name, long *eline);
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
int CONF_set_default_method(CONF_METHOD *meth);
 | 
			
		||||
@@ -137,17 +136,10 @@ int NCONF_load_fp(CONF *conf, FILE *fp,long *eline);
 | 
			
		||||
int NCONF_load_bio(CONF *conf, BIO *bp,long *eline);
 | 
			
		||||
STACK_OF(CONF_VALUE) *NCONF_get_section(CONF *conf,char *section);
 | 
			
		||||
char *NCONF_get_string(CONF *conf,char *group,char *name);
 | 
			
		||||
int NCONF_get_number_e(CONF *conf,char *group,char *name,long *result);
 | 
			
		||||
long NCONF_get_number(CONF *conf,char *group,char *name);
 | 
			
		||||
int NCONF_dump_fp(CONF *conf, FILE *out);
 | 
			
		||||
int NCONF_dump_bio(CONF *conf, BIO *out);
 | 
			
		||||
 | 
			
		||||
#if 0 /* The following function has no error checking,
 | 
			
		||||
	 and should therefore be avoided */
 | 
			
		||||
long NCONF_get_number(CONF *conf,char *group,char *name);
 | 
			
		||||
#else
 | 
			
		||||
#define NCONF_get_number(c,g,n,r) NCONF_get_number_e(c,g,n,r);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* BEGIN ERROR CODES */
 | 
			
		||||
/* The following lines are auto generated by the script mkerr.pl. Any changes
 | 
			
		||||
@@ -164,12 +156,9 @@ long NCONF_get_number(CONF *conf,char *group,char *name);
 | 
			
		||||
#define CONF_F_NCONF_DUMP_BIO				 105
 | 
			
		||||
#define CONF_F_NCONF_DUMP_FP				 106
 | 
			
		||||
#define CONF_F_NCONF_GET_NUMBER				 107
 | 
			
		||||
#define CONF_F_NCONF_GET_NUMBER_E			 112
 | 
			
		||||
#define CONF_F_NCONF_GET_SECTION			 108
 | 
			
		||||
#define CONF_F_NCONF_GET_STRING				 109
 | 
			
		||||
#define CONF_F_NCONF_LOAD				 113
 | 
			
		||||
#define CONF_F_NCONF_LOAD_BIO				 110
 | 
			
		||||
#define CONF_F_NCONF_LOAD_FP				 114
 | 
			
		||||
#define CONF_F_NCONF_NEW				 111
 | 
			
		||||
#define CONF_F_STR_COPY					 101
 | 
			
		||||
 | 
			
		||||
@@ -180,7 +169,6 @@ long NCONF_get_number(CONF *conf,char *group,char *name);
 | 
			
		||||
#define CONF_R_NO_CONF					 105
 | 
			
		||||
#define CONF_R_NO_CONF_OR_ENVIRONMENT_VARIABLE		 106
 | 
			
		||||
#define CONF_R_NO_SECTION				 107
 | 
			
		||||
#define CONF_R_NO_VALUE					 108
 | 
			
		||||
#define CONF_R_UNABLE_TO_CREATE_NEW_SECTION		 103
 | 
			
		||||
#define CONF_R_VARIABLE_HAS_NO_VALUE			 104
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -153,9 +153,6 @@ char *_CONF_get_string(CONF *conf, char *section, char *name)
 | 
			
		||||
		return(Getenv(name));
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
#if 0 /* There's no way to provide error checking with this function, so
 | 
			
		||||
	 force implementors of the higher levels to get a string and read
 | 
			
		||||
	 the number themselves. */
 | 
			
		||||
long _CONF_get_number(CONF *conf, char *section, char *name)
 | 
			
		||||
	{
 | 
			
		||||
	char *str;
 | 
			
		||||
@@ -172,7 +169,6 @@ long _CONF_get_number(CONF *conf, char *section, char *name)
 | 
			
		||||
		str++;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
int _CONF_new_data(CONF *conf)
 | 
			
		||||
	{
 | 
			
		||||
 
 | 
			
		||||
@@ -81,8 +81,7 @@ static int def_init_default(CONF *conf);
 | 
			
		||||
static int def_init_WIN32(CONF *conf);
 | 
			
		||||
static int def_destroy(CONF *conf);
 | 
			
		||||
static int def_destroy_data(CONF *conf);
 | 
			
		||||
static int def_load(CONF *conf, const char *name, long *eline);
 | 
			
		||||
static int def_load_bio(CONF *conf, BIO *bp, long *eline);
 | 
			
		||||
static int def_load(CONF *conf, BIO *bp, long *eline);
 | 
			
		||||
static int def_dump(CONF *conf, BIO *bp);
 | 
			
		||||
static int def_is_number(CONF *conf, char c);
 | 
			
		||||
static int def_to_int(CONF *conf, char c);
 | 
			
		||||
@@ -95,11 +94,10 @@ static CONF_METHOD default_method = {
 | 
			
		||||
	def_init_default,
 | 
			
		||||
	def_destroy,
 | 
			
		||||
	def_destroy_data,
 | 
			
		||||
	def_load_bio,
 | 
			
		||||
	def_load,
 | 
			
		||||
	def_dump,
 | 
			
		||||
	def_is_number,
 | 
			
		||||
	def_to_int,
 | 
			
		||||
	def_load
 | 
			
		||||
	def_to_int
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
static CONF_METHOD WIN32_method = {
 | 
			
		||||
@@ -108,11 +106,10 @@ static CONF_METHOD WIN32_method = {
 | 
			
		||||
	def_init_WIN32,
 | 
			
		||||
	def_destroy,
 | 
			
		||||
	def_destroy_data,
 | 
			
		||||
	def_load_bio,
 | 
			
		||||
	def_load,
 | 
			
		||||
	def_dump,
 | 
			
		||||
	def_is_number,
 | 
			
		||||
	def_to_int,
 | 
			
		||||
	def_load
 | 
			
		||||
	def_to_int
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
CONF_METHOD *NCONF_default()
 | 
			
		||||
@@ -180,29 +177,7 @@ static int def_destroy_data(CONF *conf)
 | 
			
		||||
	return 1;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
static int def_load(CONF *conf, const char *name, long *line)
 | 
			
		||||
	{
 | 
			
		||||
	int ret;
 | 
			
		||||
	BIO *in=NULL;
 | 
			
		||||
 | 
			
		||||
#ifdef VMS
 | 
			
		||||
	in=BIO_new_file(name, "r");
 | 
			
		||||
#else
 | 
			
		||||
	in=BIO_new_file(name, "rb");
 | 
			
		||||
#endif
 | 
			
		||||
	if (in == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		CONFerr(CONF_F_CONF_LOAD,ERR_R_SYS_LIB);
 | 
			
		||||
		return 0;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	ret = def_load_bio(conf, in, line);
 | 
			
		||||
	BIO_free(in);
 | 
			
		||||
 | 
			
		||||
	return ret;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
static int def_load_bio(CONF *conf, BIO *in, long *line)
 | 
			
		||||
static int def_load(CONF *conf, BIO *in, long *line)
 | 
			
		||||
	{
 | 
			
		||||
#define BUFSIZE	512
 | 
			
		||||
	char btmp[16];
 | 
			
		||||
 
 | 
			
		||||
@@ -73,12 +73,9 @@ static ERR_STRING_DATA CONF_str_functs[]=
 | 
			
		||||
{ERR_PACK(0,CONF_F_NCONF_DUMP_BIO,0),	"NCONF_dump_bio"},
 | 
			
		||||
{ERR_PACK(0,CONF_F_NCONF_DUMP_FP,0),	"NCONF_dump_fp"},
 | 
			
		||||
{ERR_PACK(0,CONF_F_NCONF_GET_NUMBER,0),	"NCONF_get_number"},
 | 
			
		||||
{ERR_PACK(0,CONF_F_NCONF_GET_NUMBER_E,0),	"NCONF_get_number_e"},
 | 
			
		||||
{ERR_PACK(0,CONF_F_NCONF_GET_SECTION,0),	"NCONF_get_section"},
 | 
			
		||||
{ERR_PACK(0,CONF_F_NCONF_GET_STRING,0),	"NCONF_get_string"},
 | 
			
		||||
{ERR_PACK(0,CONF_F_NCONF_LOAD,0),	"NCONF_load"},
 | 
			
		||||
{ERR_PACK(0,CONF_F_NCONF_LOAD_BIO,0),	"NCONF_load_bio"},
 | 
			
		||||
{ERR_PACK(0,CONF_F_NCONF_LOAD_FP,0),	"NCONF_load_fp"},
 | 
			
		||||
{ERR_PACK(0,CONF_F_NCONF_NEW,0),	"NCONF_new"},
 | 
			
		||||
{ERR_PACK(0,CONF_F_STR_COPY,0),	"STR_COPY"},
 | 
			
		||||
{0,NULL}
 | 
			
		||||
@@ -92,7 +89,6 @@ static ERR_STRING_DATA CONF_str_reasons[]=
 | 
			
		||||
{CONF_R_NO_CONF                          ,"no conf"},
 | 
			
		||||
{CONF_R_NO_CONF_OR_ENVIRONMENT_VARIABLE  ,"no conf or environment variable"},
 | 
			
		||||
{CONF_R_NO_SECTION                       ,"no section"},
 | 
			
		||||
{CONF_R_NO_VALUE                         ,"no value"},
 | 
			
		||||
{CONF_R_UNABLE_TO_CREATE_NEW_SECTION     ,"unable to create new section"},
 | 
			
		||||
{CONF_R_VARIABLE_HAS_NO_VALUE            ,"variable has no value"},
 | 
			
		||||
{0,NULL}
 | 
			
		||||
 
 | 
			
		||||
@@ -131,46 +131,59 @@ LHASH *CONF_load_bio(LHASH *conf, BIO *bp,long *eline)
 | 
			
		||||
 | 
			
		||||
STACK_OF(CONF_VALUE) *CONF_get_section(LHASH *conf,char *section)
 | 
			
		||||
	{
 | 
			
		||||
	CONF ctmp;
 | 
			
		||||
	if (conf == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		return NULL;
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		{
 | 
			
		||||
		CONF ctmp;
 | 
			
		||||
 | 
			
		||||
	if (default_CONF_method == NULL)
 | 
			
		||||
		default_CONF_method = NCONF_default();
 | 
			
		||||
		if (default_CONF_method == NULL)
 | 
			
		||||
			default_CONF_method = NCONF_default();
 | 
			
		||||
 | 
			
		||||
	default_CONF_method->init(&ctmp);
 | 
			
		||||
	ctmp.data = conf;
 | 
			
		||||
	return NCONF_get_section(&ctmp, section);
 | 
			
		||||
		default_CONF_method->init(&ctmp);
 | 
			
		||||
		ctmp.data = conf;
 | 
			
		||||
		return NCONF_get_section(&ctmp, section);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
char *CONF_get_string(LHASH *conf,char *group,char *name)
 | 
			
		||||
	{
 | 
			
		||||
	CONF ctmp;
 | 
			
		||||
	if (conf == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		return NCONF_get_string(NULL, group, name);
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		{
 | 
			
		||||
		CONF ctmp;
 | 
			
		||||
 | 
			
		||||
	if (default_CONF_method == NULL)
 | 
			
		||||
		default_CONF_method = NCONF_default();
 | 
			
		||||
		if (default_CONF_method == NULL)
 | 
			
		||||
			default_CONF_method = NCONF_default();
 | 
			
		||||
 | 
			
		||||
	default_CONF_method->init(&ctmp);
 | 
			
		||||
	ctmp.data = conf;
 | 
			
		||||
	return NCONF_get_string(&ctmp, group, name);
 | 
			
		||||
		default_CONF_method->init(&ctmp);
 | 
			
		||||
		ctmp.data = conf;
 | 
			
		||||
		return NCONF_get_string(&ctmp, group, name);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
long CONF_get_number(LHASH *conf,char *group,char *name)
 | 
			
		||||
	{
 | 
			
		||||
	CONF ctmp;
 | 
			
		||||
	int status;
 | 
			
		||||
	long result = 0;
 | 
			
		||||
 | 
			
		||||
	if (default_CONF_method == NULL)
 | 
			
		||||
		default_CONF_method = NCONF_default();
 | 
			
		||||
 | 
			
		||||
	default_CONF_method->init(&ctmp);
 | 
			
		||||
	ctmp.data = conf;
 | 
			
		||||
	status = NCONF_get_number_e(&ctmp, group, name, &result);
 | 
			
		||||
	if (status == 0)
 | 
			
		||||
	if (conf == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		/* This function does not believe in errors... */
 | 
			
		||||
		ERR_get_error();
 | 
			
		||||
		return NCONF_get_number(NULL, group, name);
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		{
 | 
			
		||||
		CONF ctmp;
 | 
			
		||||
 | 
			
		||||
		if (default_CONF_method == NULL)
 | 
			
		||||
			default_CONF_method = NCONF_default();
 | 
			
		||||
 | 
			
		||||
		default_CONF_method->init(&ctmp);
 | 
			
		||||
		ctmp.data = conf;
 | 
			
		||||
		return NCONF_get_number(&ctmp, group, name);
 | 
			
		||||
		}
 | 
			
		||||
	return result;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
void CONF_free(LHASH *conf)
 | 
			
		||||
@@ -252,13 +265,24 @@ void NCONF_free_data(CONF *conf)
 | 
			
		||||
 | 
			
		||||
int NCONF_load(CONF *conf, const char *file, long *eline)
 | 
			
		||||
	{
 | 
			
		||||
	if (conf == NULL)
 | 
			
		||||
	int ret;
 | 
			
		||||
	BIO *in=NULL;
 | 
			
		||||
 | 
			
		||||
#ifdef VMS
 | 
			
		||||
	in=BIO_new_file(file, "r");
 | 
			
		||||
#else
 | 
			
		||||
	in=BIO_new_file(file, "rb");
 | 
			
		||||
#endif
 | 
			
		||||
	if (in == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		CONFerr(CONF_F_NCONF_LOAD,CONF_R_NO_CONF);
 | 
			
		||||
		CONFerr(CONF_F_CONF_LOAD,ERR_R_SYS_LIB);
 | 
			
		||||
		return 0;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	return conf->meth->load(conf, file, eline);
 | 
			
		||||
	ret = NCONF_load_bio(conf, in, eline);
 | 
			
		||||
	BIO_free(in);
 | 
			
		||||
 | 
			
		||||
	return ret;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
#ifndef NO_FP_API
 | 
			
		||||
@@ -268,7 +292,7 @@ int NCONF_load_fp(CONF *conf, FILE *fp,long *eline)
 | 
			
		||||
	int ret;
 | 
			
		||||
	if(!(btmp = BIO_new_fp(fp, BIO_NOCLOSE)))
 | 
			
		||||
		{
 | 
			
		||||
		CONFerr(CONF_F_NCONF_LOAD_FP,ERR_R_BUF_LIB);
 | 
			
		||||
		CONFerr(CONF_F_CONF_LOAD_FP,ERR_R_BUF_LIB);
 | 
			
		||||
		return 0;
 | 
			
		||||
		}
 | 
			
		||||
	ret = NCONF_load_bio(conf, btmp, eline);
 | 
			
		||||
@@ -285,7 +309,7 @@ int NCONF_load_bio(CONF *conf, BIO *bp,long *eline)
 | 
			
		||||
		return 0;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	return conf->meth->load_bio(conf, bp, eline);
 | 
			
		||||
	return conf->meth->load(conf, bp, eline);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
STACK_OF(CONF_VALUE) *NCONF_get_section(CONF *conf,char *section)
 | 
			
		||||
@@ -319,33 +343,25 @@ char *NCONF_get_string(CONF *conf,char *group,char *name)
 | 
			
		||||
                        CONF_R_NO_CONF_OR_ENVIRONMENT_VARIABLE);
 | 
			
		||||
		return NULL;
 | 
			
		||||
		}
 | 
			
		||||
	CONFerr(CONF_F_NCONF_GET_STRING,
 | 
			
		||||
		CONF_R_NO_VALUE);
 | 
			
		||||
	return NULL;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
int NCONF_get_number_e(CONF *conf,char *group,char *name,long *result)
 | 
			
		||||
long NCONF_get_number(CONF *conf,char *group,char *name)
 | 
			
		||||
	{
 | 
			
		||||
	char *str;
 | 
			
		||||
 | 
			
		||||
	if (result == NULL)
 | 
			
		||||
#if 0 /* As with _CONF_get_string(), we rely on the possibility of finding
 | 
			
		||||
         an environment variable with a suitable name.  Unfortunately, there's
 | 
			
		||||
         no way with the current API to see if we found one or not...
 | 
			
		||||
         The meaning of this is that if a number is not found anywhere, it
 | 
			
		||||
         will always default to 0. */
 | 
			
		||||
	if (conf == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		CONFerr(CONF_F_NCONF_GET_NUMBER_E,ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
		CONFerr(CONF_F_NCONF_GET_NUMBER,
 | 
			
		||||
                        CONF_R_NO_CONF_OR_ENVIRONMENT_VARIABLE);
 | 
			
		||||
		return 0;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	str = NCONF_get_string(conf,group,name);
 | 
			
		||||
 | 
			
		||||
	if (str == NULL)
 | 
			
		||||
		return 0;
 | 
			
		||||
 | 
			
		||||
	for (;conf->meth->is_number(conf, *str);)
 | 
			
		||||
		{
 | 
			
		||||
		*result = (*result)*10 + conf->meth->to_int(conf, *str);
 | 
			
		||||
		str++;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	return 1;
 | 
			
		||||
#endif
 | 
			
		||||
	
 | 
			
		||||
	return _CONF_get_number(conf, group, name);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
#ifndef NO_FP_API
 | 
			
		||||
@@ -374,19 +390,3 @@ int NCONF_dump_bio(CONF *conf, BIO *out)
 | 
			
		||||
	return conf->meth->dump(conf, out);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* This function should be avoided */
 | 
			
		||||
#undef NCONF_get_number
 | 
			
		||||
long NCONF_get_number(CONF *conf,char *group,char *name)
 | 
			
		||||
	{
 | 
			
		||||
	int status;
 | 
			
		||||
	long ret=0;
 | 
			
		||||
 | 
			
		||||
	status = NCONF_get_number_e(conf, group, name, &ret);
 | 
			
		||||
	if (status == 0)
 | 
			
		||||
		{
 | 
			
		||||
		/* This function does not believe in errors... */
 | 
			
		||||
		ERR_get_error();
 | 
			
		||||
		}
 | 
			
		||||
	return ret;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -174,7 +174,7 @@ $!
 | 
			
		||||
$ APPS_DES = "DES/DES,CBC3_ENC"
 | 
			
		||||
$ APPS_PKCS7 = "ENC/ENC;DEC/DEC;SIGN/SIGN;VERIFY/VERIFY,EXAMPLE"
 | 
			
		||||
$
 | 
			
		||||
$ LIB_ = "cryptlib,mem,mem_dbg,cversion,ex_data,tmdiff,cpt_err"
 | 
			
		||||
$ LIB_ = "cryptlib,mem,mem_dbg,cversion,ex_data,tmdiff,cpt_err,ebcdic,uid"
 | 
			
		||||
$ LIB_MD2 = "md2_dgst,md2_one"
 | 
			
		||||
$ LIB_MD4 = "md4_dgst,md4_one"
 | 
			
		||||
$ LIB_MD5 = "md5_dgst,md5_one"
 | 
			
		||||
 
 | 
			
		||||
@@ -277,6 +277,8 @@ int CRYPTO_is_mem_check_on(void);
 | 
			
		||||
const char *SSLeay_version(int type);
 | 
			
		||||
unsigned long SSLeay(void);
 | 
			
		||||
 | 
			
		||||
int OPENSSL_issetugid(void);
 | 
			
		||||
 | 
			
		||||
int CRYPTO_get_ex_new_index(int idx, STACK_OF(CRYPTO_EX_DATA_FUNCS) **skp, long argl, void *argp,
 | 
			
		||||
	     CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
 | 
			
		||||
int CRYPTO_set_ex_data(CRYPTO_EX_DATA *ad, int idx, void *val);
 | 
			
		||||
 
 | 
			
		||||
@@ -20,11 +20,11 @@ $L="edi";
 | 
			
		||||
$R="esi";
 | 
			
		||||
 | 
			
		||||
&external_label("des_SPtrans");
 | 
			
		||||
&des_encrypt("des_encrypt",1);
 | 
			
		||||
&des_encrypt("des_encrypt1",1);
 | 
			
		||||
&des_encrypt("des_encrypt2",0);
 | 
			
		||||
&des_encrypt3("des_encrypt3",1);
 | 
			
		||||
&des_encrypt3("des_decrypt3",0);
 | 
			
		||||
&cbc("des_ncbc_encrypt","des_encrypt","des_encrypt",0,4,5,3,5,-1);
 | 
			
		||||
&cbc("des_ncbc_encrypt","des_encrypt1","des_encrypt1",0,4,5,3,5,-1);
 | 
			
		||||
&cbc("des_ede3_cbc_encrypt","des_encrypt3","des_decrypt3",0,6,7,3,4,5);
 | 
			
		||||
 | 
			
		||||
&asm_finish();
 | 
			
		||||
 
 | 
			
		||||
@@ -46,7 +46,7 @@ EOF
 | 
			
		||||
$L="edi";
 | 
			
		||||
$R="esi";
 | 
			
		||||
 | 
			
		||||
&des_encrypt("des_encrypt",1);
 | 
			
		||||
&des_encrypt("des_encrypt1",1);
 | 
			
		||||
&des_encrypt("des_encrypt2",0);
 | 
			
		||||
 | 
			
		||||
&des_encrypt3("des_encrypt3",1);
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ assembler for the inner DES routines in libdes :-).
 | 
			
		||||
 | 
			
		||||
The file to implement in assembler is des_enc.c.  Replace the following
 | 
			
		||||
4 functions
 | 
			
		||||
des_encrypt(DES_LONG data[2],des_key_schedule ks, int encrypt);
 | 
			
		||||
des_encrypt1(DES_LONG data[2],des_key_schedule ks, int encrypt);
 | 
			
		||||
des_encrypt2(DES_LONG data[2],des_key_schedule ks, int encrypt);
 | 
			
		||||
des_encrypt3(DES_LONG data[2],des_key_schedule ks1,ks2,ks3);
 | 
			
		||||
des_decrypt3(DES_LONG data[2],des_key_schedule ks1,ks2,ks3);
 | 
			
		||||
 
 | 
			
		||||
@@ -82,7 +82,7 @@ DES_LONG des_cbc_cksum(const unsigned char *in, des_cblock *output,
 | 
			
		||||
			
 | 
			
		||||
		tin0^=tout0; tin[0]=tin0;
 | 
			
		||||
		tin1^=tout1; tin[1]=tin1;
 | 
			
		||||
		des_encrypt((DES_LONG *)tin,schedule,DES_ENCRYPT);
 | 
			
		||||
		des_encrypt1((DES_LONG *)tin,schedule,DES_ENCRYPT);
 | 
			
		||||
		/* fix 15/10/91 eay - thanks to keithr@sco.COM */
 | 
			
		||||
		tout0=tin[0];
 | 
			
		||||
		tout1=tin[1];
 | 
			
		||||
 
 | 
			
		||||
@@ -82,7 +82,7 @@ void des_cfb64_encrypt(const unsigned char *in, unsigned char *out,
 | 
			
		||||
				{
 | 
			
		||||
				c2l(iv,v0); ti[0]=v0;
 | 
			
		||||
				c2l(iv,v1); ti[1]=v1;
 | 
			
		||||
				des_encrypt(ti,schedule,DES_ENCRYPT);
 | 
			
		||||
				des_encrypt1(ti,schedule,DES_ENCRYPT);
 | 
			
		||||
				iv = &(*ivec)[0];
 | 
			
		||||
				v0=ti[0]; l2c(v0,iv);
 | 
			
		||||
				v0=ti[1]; l2c(v0,iv);
 | 
			
		||||
@@ -102,7 +102,7 @@ void des_cfb64_encrypt(const unsigned char *in, unsigned char *out,
 | 
			
		||||
				{
 | 
			
		||||
				c2l(iv,v0); ti[0]=v0;
 | 
			
		||||
				c2l(iv,v1); ti[1]=v1;
 | 
			
		||||
				des_encrypt(ti,schedule,DES_ENCRYPT);
 | 
			
		||||
				des_encrypt1(ti,schedule,DES_ENCRYPT);
 | 
			
		||||
				iv = &(*ivec)[0];
 | 
			
		||||
				v0=ti[0]; l2c(v0,iv);
 | 
			
		||||
				v0=ti[1]; l2c(v0,iv);
 | 
			
		||||
 
 | 
			
		||||
@@ -100,7 +100,7 @@ void des_cfb_encrypt(const unsigned char *in, unsigned char *out, int numbits,
 | 
			
		||||
			l-=n;
 | 
			
		||||
			ti[0]=v0;
 | 
			
		||||
			ti[1]=v1;
 | 
			
		||||
			des_encrypt((DES_LONG *)ti,schedule,DES_ENCRYPT);
 | 
			
		||||
			des_encrypt1((DES_LONG *)ti,schedule,DES_ENCRYPT);
 | 
			
		||||
			c2ln(in,d0,d1,n);
 | 
			
		||||
			in+=n;
 | 
			
		||||
			d0=(d0^ti[0])&mask0;
 | 
			
		||||
@@ -132,7 +132,7 @@ void des_cfb_encrypt(const unsigned char *in, unsigned char *out, int numbits,
 | 
			
		||||
			l-=n;
 | 
			
		||||
			ti[0]=v0;
 | 
			
		||||
			ti[1]=v1;
 | 
			
		||||
			des_encrypt((DES_LONG *)ti,schedule,DES_ENCRYPT);
 | 
			
		||||
			des_encrypt1((DES_LONG *)ti,schedule,DES_ENCRYPT);
 | 
			
		||||
			c2ln(in,d0,d1,n);
 | 
			
		||||
			in+=n;
 | 
			
		||||
			/* 30-08-94 - eay - changed because l>>32 and
 | 
			
		||||
 
 | 
			
		||||
@@ -147,14 +147,14 @@ void des_ecb_encrypt(const_des_cblock *input,des_cblock *output,
 | 
			
		||||
	Data is a pointer to 2 unsigned long's and ks is the
 | 
			
		||||
	des_key_schedule to use.  enc, is non zero specifies encryption,
 | 
			
		||||
	zero if decryption. */
 | 
			
		||||
void des_encrypt(DES_LONG *data,des_key_schedule ks, int enc);
 | 
			
		||||
void des_encrypt1(DES_LONG *data,des_key_schedule ks, int enc);
 | 
			
		||||
 | 
			
		||||
/* 	This functions is the same as des_encrypt() except that the DES
 | 
			
		||||
/* 	This functions is the same as des_encrypt1() except that the DES
 | 
			
		||||
	initial permutation (IP) and final permutation (FP) have been left
 | 
			
		||||
	out.  As for des_encrypt(), you should not use this function.
 | 
			
		||||
	out.  As for des_encrypt1(), you should not use this function.
 | 
			
		||||
	It is used by the routines in the library that implement triple DES.
 | 
			
		||||
	IP() des_encrypt2() des_encrypt2() des_encrypt2() FP() is the same
 | 
			
		||||
	as des_encrypt() des_encrypt() des_encrypt() except faster :-). */
 | 
			
		||||
	as des_encrypt1() des_encrypt1() des_encrypt1() except faster :-). */
 | 
			
		||||
void des_encrypt2(DES_LONG *data,des_key_schedule ks, int enc);
 | 
			
		||||
 | 
			
		||||
void des_encrypt3(DES_LONG *data, des_key_schedule ks1,
 | 
			
		||||
 
 | 
			
		||||
@@ -58,7 +58,7 @@
 | 
			
		||||
 | 
			
		||||
#include "des_locl.h"
 | 
			
		||||
 | 
			
		||||
void des_encrypt(DES_LONG *data, des_key_schedule ks, int enc)
 | 
			
		||||
void des_encrypt1(DES_LONG *data, des_key_schedule ks, int enc)
 | 
			
		||||
	{
 | 
			
		||||
	register DES_LONG l,r,t,u;
 | 
			
		||||
#ifdef DES_PTR
 | 
			
		||||
 
 | 
			
		||||
@@ -118,7 +118,7 @@ extern void exit();
 | 
			
		||||
#undef DES_RISC2
 | 
			
		||||
#undef DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#define des_encrypt  des_encrypt_u4_cisc_idx
 | 
			
		||||
#define des_encrypt1 des_encrypt_u4_cisc_idx
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u4_cisc_idx
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u4_cisc_idx
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u4_cisc_idx
 | 
			
		||||
@@ -130,11 +130,11 @@ extern void exit();
 | 
			
		||||
#undef DES_RISC2
 | 
			
		||||
#undef DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u16_cisc_idx
 | 
			
		||||
#define des_encrypt1 des_encrypt_u16_cisc_idx
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u16_cisc_idx
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u16_cisc_idx
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u16_cisc_idx
 | 
			
		||||
@@ -146,11 +146,11 @@ extern void exit();
 | 
			
		||||
#undef DES_RISC2
 | 
			
		||||
#undef DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u4_risc1_idx
 | 
			
		||||
#define des_encrypt1 des_encrypt_u4_risc1_idx
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u4_risc1_idx
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u4_risc1_idx
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u4_risc1_idx
 | 
			
		||||
@@ -166,11 +166,11 @@ extern void exit();
 | 
			
		||||
#define DES_RISC2
 | 
			
		||||
#undef DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u4_risc2_idx
 | 
			
		||||
#define des_encrypt1 des_encrypt_u4_risc2_idx
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u4_risc2_idx
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u4_risc2_idx
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u4_risc2_idx
 | 
			
		||||
@@ -182,11 +182,11 @@ extern void exit();
 | 
			
		||||
#undef DES_RISC2
 | 
			
		||||
#undef DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u16_risc1_idx
 | 
			
		||||
#define des_encrypt1 des_encrypt_u16_risc1_idx
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u16_risc1_idx
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u16_risc1_idx
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u16_risc1_idx
 | 
			
		||||
@@ -198,11 +198,11 @@ extern void exit();
 | 
			
		||||
#define DES_RISC2
 | 
			
		||||
#undef DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u16_risc2_idx
 | 
			
		||||
#define des_encrypt1 des_encrypt_u16_risc2_idx
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u16_risc2_idx
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u16_risc2_idx
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u16_risc2_idx
 | 
			
		||||
@@ -218,11 +218,11 @@ extern void exit();
 | 
			
		||||
#undef DES_RISC2
 | 
			
		||||
#define DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u4_cisc_ptr
 | 
			
		||||
#define des_encrypt1 des_encrypt_u4_cisc_ptr
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u4_cisc_ptr
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u4_cisc_ptr
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u4_cisc_ptr
 | 
			
		||||
@@ -234,11 +234,11 @@ extern void exit();
 | 
			
		||||
#undef DES_RISC2
 | 
			
		||||
#define DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u16_cisc_ptr
 | 
			
		||||
#define des_encrypt1 des_encrypt_u16_cisc_ptr
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u16_cisc_ptr
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u16_cisc_ptr
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u16_cisc_ptr
 | 
			
		||||
@@ -250,11 +250,11 @@ extern void exit();
 | 
			
		||||
#undef DES_RISC2
 | 
			
		||||
#define DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u4_risc1_ptr
 | 
			
		||||
#define des_encrypt1 des_encrypt_u4_risc1_ptr
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u4_risc1_ptr
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u4_risc1_ptr
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u4_risc1_ptr
 | 
			
		||||
@@ -270,11 +270,11 @@ extern void exit();
 | 
			
		||||
#define DES_RISC2
 | 
			
		||||
#define DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u4_risc2_ptr
 | 
			
		||||
#define des_encrypt1 des_encrypt_u4_risc2_ptr
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u4_risc2_ptr
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u4_risc2_ptr
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u4_risc2_ptr
 | 
			
		||||
@@ -286,11 +286,11 @@ extern void exit();
 | 
			
		||||
#undef DES_RISC2
 | 
			
		||||
#define DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u16_risc1_ptr
 | 
			
		||||
#define des_encrypt1 des_encrypt_u16_risc1_ptr
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u16_risc1_ptr
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u16_risc1_ptr
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u16_risc1_ptr
 | 
			
		||||
@@ -302,11 +302,11 @@ extern void exit();
 | 
			
		||||
#define DES_RISC2
 | 
			
		||||
#define DES_PTR
 | 
			
		||||
#undef D_ENCRYPT
 | 
			
		||||
#undef des_encrypt
 | 
			
		||||
#undef des_encrypt1
 | 
			
		||||
#undef des_encrypt2
 | 
			
		||||
#undef des_encrypt3
 | 
			
		||||
#undef des_decrypt3
 | 
			
		||||
#define des_encrypt  des_encrypt_u16_risc2_ptr
 | 
			
		||||
#define des_encrypt1 des_encrypt_u16_risc2_ptr
 | 
			
		||||
#define des_encrypt2 des_encrypt2_u16_risc2_ptr
 | 
			
		||||
#define des_encrypt3 des_encrypt3_u16_risc2_ptr
 | 
			
		||||
#define des_decrypt3 des_decrypt3_u16_risc2_ptr
 | 
			
		||||
@@ -453,7 +453,7 @@ int main(int argc, char **argv)
 | 
			
		||||
		count*=2;
 | 
			
		||||
		Time_F(START);
 | 
			
		||||
		for (i=count; i; i--)
 | 
			
		||||
			des_encrypt(data,&(sch[0]),DES_ENCRYPT);
 | 
			
		||||
			des_encrypt1(data,&(sch[0]),DES_ENCRYPT);
 | 
			
		||||
		d=Time_F(STOP);
 | 
			
		||||
		} while (d < 3.0);
 | 
			
		||||
	ca=count;
 | 
			
		||||
 
 | 
			
		||||
@@ -45,19 +45,19 @@ void main(int argc,char *argv[])
 | 
			
		||||
		{
 | 
			
		||||
		for (i=0; i<1000; i++) /**/
 | 
			
		||||
			{
 | 
			
		||||
			des_encrypt(&data[0],key,1);
 | 
			
		||||
			des_encrypt1(&data[0],key,1);
 | 
			
		||||
			GetTSC(s1);
 | 
			
		||||
			des_encrypt(&data[0],key,1);
 | 
			
		||||
			des_encrypt(&data[0],key,1);
 | 
			
		||||
			des_encrypt(&data[0],key,1);
 | 
			
		||||
			des_encrypt1(&data[0],key,1);
 | 
			
		||||
			des_encrypt1(&data[0],key,1);
 | 
			
		||||
			des_encrypt1(&data[0],key,1);
 | 
			
		||||
			GetTSC(e1);
 | 
			
		||||
			GetTSC(s2);
 | 
			
		||||
			des_encrypt(&data[0],key,1);
 | 
			
		||||
			des_encrypt(&data[0],key,1);
 | 
			
		||||
			des_encrypt(&data[0],key,1);
 | 
			
		||||
			des_encrypt(&data[0],key,1);
 | 
			
		||||
			des_encrypt1(&data[0],key,1);
 | 
			
		||||
			des_encrypt1(&data[0],key,1);
 | 
			
		||||
			des_encrypt1(&data[0],key,1);
 | 
			
		||||
			des_encrypt1(&data[0],key,1);
 | 
			
		||||
			GetTSC(e2);
 | 
			
		||||
			des_encrypt(&data[0],key,1);
 | 
			
		||||
			des_encrypt1(&data[0],key,1);
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		printf("des %d %d (%d)\n",
 | 
			
		||||
 
 | 
			
		||||
@@ -114,7 +114,7 @@ void des_ecb_encrypt(const_des_cblock *input, des_cblock *output,
 | 
			
		||||
 | 
			
		||||
	c2l(in,l); ll[0]=l;
 | 
			
		||||
	c2l(in,l); ll[1]=l;
 | 
			
		||||
	des_encrypt(ll,ks,enc);
 | 
			
		||||
	des_encrypt1(ll,ks,enc);
 | 
			
		||||
	l=ll[0]; l2c(l,out);
 | 
			
		||||
	l=ll[1]; l2c(l,out);
 | 
			
		||||
	l=ll[0]=ll[1]=0;
 | 
			
		||||
 
 | 
			
		||||
@@ -95,7 +95,7 @@ void des_ede3_cbcm_encrypt(const unsigned char *in, unsigned char *out,
 | 
			
		||||
	    {
 | 
			
		||||
	    tin[0]=m0;
 | 
			
		||||
	    tin[1]=m1;
 | 
			
		||||
	    des_encrypt(tin,ks3,1);
 | 
			
		||||
	    des_encrypt1(tin,ks3,1);
 | 
			
		||||
	    m0=tin[0];
 | 
			
		||||
	    m1=tin[1];
 | 
			
		||||
 | 
			
		||||
@@ -113,13 +113,13 @@ void des_ede3_cbcm_encrypt(const unsigned char *in, unsigned char *out,
 | 
			
		||||
 | 
			
		||||
	    tin[0]=tin0;
 | 
			
		||||
	    tin[1]=tin1;
 | 
			
		||||
	    des_encrypt(tin,ks1,1);
 | 
			
		||||
	    des_encrypt1(tin,ks1,1);
 | 
			
		||||
	    tin[0]^=m0;
 | 
			
		||||
	    tin[1]^=m1;
 | 
			
		||||
	    des_encrypt(tin,ks2,0);
 | 
			
		||||
	    des_encrypt1(tin,ks2,0);
 | 
			
		||||
	    tin[0]^=m0;
 | 
			
		||||
	    tin[1]^=m1;
 | 
			
		||||
	    des_encrypt(tin,ks1,1);
 | 
			
		||||
	    des_encrypt1(tin,ks1,1);
 | 
			
		||||
	    tout0=tin[0];
 | 
			
		||||
	    tout1=tin[1];
 | 
			
		||||
 | 
			
		||||
@@ -146,7 +146,7 @@ void des_ede3_cbcm_encrypt(const unsigned char *in, unsigned char *out,
 | 
			
		||||
	    {
 | 
			
		||||
	    tin[0]=m0;
 | 
			
		||||
	    tin[1]=m1;
 | 
			
		||||
	    des_encrypt(tin,ks3,1);
 | 
			
		||||
	    des_encrypt1(tin,ks3,1);
 | 
			
		||||
	    m0=tin[0];
 | 
			
		||||
	    m1=tin[1];
 | 
			
		||||
 | 
			
		||||
@@ -158,13 +158,13 @@ void des_ede3_cbcm_encrypt(const unsigned char *in, unsigned char *out,
 | 
			
		||||
 | 
			
		||||
	    tin[0]=tin0;
 | 
			
		||||
	    tin[1]=tin1;
 | 
			
		||||
	    des_encrypt(tin,ks1,0);
 | 
			
		||||
	    des_encrypt1(tin,ks1,0);
 | 
			
		||||
	    tin[0]^=m0;
 | 
			
		||||
	    tin[1]^=m1;
 | 
			
		||||
	    des_encrypt(tin,ks2,1);
 | 
			
		||||
	    des_encrypt1(tin,ks2,1);
 | 
			
		||||
	    tin[0]^=m0;
 | 
			
		||||
	    tin[1]^=m1;
 | 
			
		||||
	    des_encrypt(tin,ks1,0);
 | 
			
		||||
	    des_encrypt1(tin,ks1,0);
 | 
			
		||||
	    tout0=tin[0];
 | 
			
		||||
	    tout1=tin[1];
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -89,7 +89,7 @@ void des_ncbc_encrypt(const unsigned char *in, unsigned char *out, long length,
 | 
			
		||||
			c2l(in,tin1);
 | 
			
		||||
			tin0^=tout0; tin[0]=tin0;
 | 
			
		||||
			tin1^=tout1; tin[1]=tin1;
 | 
			
		||||
			des_encrypt((DES_LONG *)tin,schedule,DES_ENCRYPT);
 | 
			
		||||
			des_encrypt1((DES_LONG *)tin,schedule,DES_ENCRYPT);
 | 
			
		||||
			tout0=tin[0]; l2c(tout0,out);
 | 
			
		||||
			tout1=tin[1]; l2c(tout1,out);
 | 
			
		||||
			}
 | 
			
		||||
@@ -98,7 +98,7 @@ void des_ncbc_encrypt(const unsigned char *in, unsigned char *out, long length,
 | 
			
		||||
			c2ln(in,tin0,tin1,l+8);
 | 
			
		||||
			tin0^=tout0; tin[0]=tin0;
 | 
			
		||||
			tin1^=tout1; tin[1]=tin1;
 | 
			
		||||
			des_encrypt((DES_LONG *)tin,schedule,DES_ENCRYPT);
 | 
			
		||||
			des_encrypt1((DES_LONG *)tin,schedule,DES_ENCRYPT);
 | 
			
		||||
			tout0=tin[0]; l2c(tout0,out);
 | 
			
		||||
			tout1=tin[1]; l2c(tout1,out);
 | 
			
		||||
			}
 | 
			
		||||
@@ -116,7 +116,7 @@ void des_ncbc_encrypt(const unsigned char *in, unsigned char *out, long length,
 | 
			
		||||
			{
 | 
			
		||||
			c2l(in,tin0); tin[0]=tin0;
 | 
			
		||||
			c2l(in,tin1); tin[1]=tin1;
 | 
			
		||||
			des_encrypt((DES_LONG *)tin,schedule,DES_DECRYPT);
 | 
			
		||||
			des_encrypt1((DES_LONG *)tin,schedule,DES_DECRYPT);
 | 
			
		||||
			tout0=tin[0]^xor0;
 | 
			
		||||
			tout1=tin[1]^xor1;
 | 
			
		||||
			l2c(tout0,out);
 | 
			
		||||
@@ -128,7 +128,7 @@ void des_ncbc_encrypt(const unsigned char *in, unsigned char *out, long length,
 | 
			
		||||
			{
 | 
			
		||||
			c2l(in,tin0); tin[0]=tin0;
 | 
			
		||||
			c2l(in,tin1); tin[1]=tin1;
 | 
			
		||||
			des_encrypt((DES_LONG *)tin,schedule,DES_DECRYPT);
 | 
			
		||||
			des_encrypt1((DES_LONG *)tin,schedule,DES_DECRYPT);
 | 
			
		||||
			tout0=tin[0]^xor0;
 | 
			
		||||
			tout1=tin[1]^xor1;
 | 
			
		||||
			l2cn(tout0,tout1,out,l+8);
 | 
			
		||||
 
 | 
			
		||||
@@ -87,7 +87,7 @@ void des_ofb64_encrypt(register const unsigned char *in,
 | 
			
		||||
		{
 | 
			
		||||
		if (n == 0)
 | 
			
		||||
			{
 | 
			
		||||
			des_encrypt(ti,schedule,DES_ENCRYPT);
 | 
			
		||||
			des_encrypt1(ti,schedule,DES_ENCRYPT);
 | 
			
		||||
			dp=d;
 | 
			
		||||
			t=ti[0]; l2c(t,dp);
 | 
			
		||||
			t=ti[1]; l2c(t,dp);
 | 
			
		||||
 
 | 
			
		||||
@@ -101,7 +101,7 @@ void des_ofb_encrypt(const unsigned char *in, unsigned char *out, int numbits,
 | 
			
		||||
		{
 | 
			
		||||
		ti[0]=v0;
 | 
			
		||||
		ti[1]=v1;
 | 
			
		||||
		des_encrypt((DES_LONG *)ti,schedule,DES_ENCRYPT);
 | 
			
		||||
		des_encrypt1((DES_LONG *)ti,schedule,DES_ENCRYPT);
 | 
			
		||||
		vv0=ti[0];
 | 
			
		||||
		vv1=ti[1];
 | 
			
		||||
		c2ln(in,d0,d1,n);
 | 
			
		||||
 
 | 
			
		||||
@@ -85,7 +85,7 @@ void des_pcbc_encrypt(const unsigned char *input, unsigned char *output,
 | 
			
		||||
				c2ln(in,sin0,sin1,length);
 | 
			
		||||
			tin[0]=sin0^xor0;
 | 
			
		||||
			tin[1]=sin1^xor1;
 | 
			
		||||
			des_encrypt((DES_LONG *)tin,schedule,DES_ENCRYPT);
 | 
			
		||||
			des_encrypt1((DES_LONG *)tin,schedule,DES_ENCRYPT);
 | 
			
		||||
			tout0=tin[0];
 | 
			
		||||
			tout1=tin[1];
 | 
			
		||||
			xor0=sin0^tout0;
 | 
			
		||||
@@ -103,7 +103,7 @@ void des_pcbc_encrypt(const unsigned char *input, unsigned char *output,
 | 
			
		||||
			c2l(in,sin1);
 | 
			
		||||
			tin[0]=sin0;
 | 
			
		||||
			tin[1]=sin1;
 | 
			
		||||
			des_encrypt((DES_LONG *)tin,schedule,DES_DECRYPT);
 | 
			
		||||
			des_encrypt1((DES_LONG *)tin,schedule,DES_DECRYPT);
 | 
			
		||||
			tout0=tin[0]^xor0;
 | 
			
		||||
			tout1=tin[1]^xor1;
 | 
			
		||||
			if (length >= 8)
 | 
			
		||||
 
 | 
			
		||||
@@ -204,7 +204,7 @@ int main(int argc, char **argv)
 | 
			
		||||
		count*=2;
 | 
			
		||||
		Time_F(START);
 | 
			
		||||
		for (i=count; i; i--)
 | 
			
		||||
			des_encrypt(data,&(sch[0]),DES_ENCRYPT);
 | 
			
		||||
			des_encrypt1(data,&(sch[0]),DES_ENCRYPT);
 | 
			
		||||
		d=Time_F(STOP);
 | 
			
		||||
		} while (d < 3.0);
 | 
			
		||||
	ca=count;
 | 
			
		||||
@@ -241,7 +241,7 @@ int main(int argc, char **argv)
 | 
			
		||||
		{
 | 
			
		||||
		DES_LONG data[2];
 | 
			
		||||
 | 
			
		||||
		des_encrypt(data,&(sch[0]),DES_ENCRYPT);
 | 
			
		||||
		des_encrypt1(data,&(sch[0]),DES_ENCRYPT);
 | 
			
		||||
		}
 | 
			
		||||
	d=Time_F(STOP);
 | 
			
		||||
	printf("%ld des_encrypt's in %.2f second\n",count,d);
 | 
			
		||||
 
 | 
			
		||||
@@ -138,7 +138,7 @@ void des_xcbc_encrypt(const unsigned char *in, unsigned char *out,
 | 
			
		||||
			c2l(in,tin1);
 | 
			
		||||
			tin0^=tout0^inW0; tin[0]=tin0;
 | 
			
		||||
			tin1^=tout1^inW1; tin[1]=tin1;
 | 
			
		||||
			des_encrypt(tin,schedule,DES_ENCRYPT);
 | 
			
		||||
			des_encrypt1(tin,schedule,DES_ENCRYPT);
 | 
			
		||||
			tout0=tin[0]^outW0; l2c(tout0,out);
 | 
			
		||||
			tout1=tin[1]^outW1; l2c(tout1,out);
 | 
			
		||||
			}
 | 
			
		||||
@@ -147,7 +147,7 @@ void des_xcbc_encrypt(const unsigned char *in, unsigned char *out,
 | 
			
		||||
			c2ln(in,tin0,tin1,l+8);
 | 
			
		||||
			tin0^=tout0^inW0; tin[0]=tin0;
 | 
			
		||||
			tin1^=tout1^inW1; tin[1]=tin1;
 | 
			
		||||
			des_encrypt(tin,schedule,DES_ENCRYPT);
 | 
			
		||||
			des_encrypt1(tin,schedule,DES_ENCRYPT);
 | 
			
		||||
			tout0=tin[0]^outW0; l2c(tout0,out);
 | 
			
		||||
			tout1=tin[1]^outW1; l2c(tout1,out);
 | 
			
		||||
			}
 | 
			
		||||
@@ -163,7 +163,7 @@ void des_xcbc_encrypt(const unsigned char *in, unsigned char *out,
 | 
			
		||||
			{
 | 
			
		||||
			c2l(in,tin0); tin[0]=tin0^outW0;
 | 
			
		||||
			c2l(in,tin1); tin[1]=tin1^outW1;
 | 
			
		||||
			des_encrypt(tin,schedule,DES_DECRYPT);
 | 
			
		||||
			des_encrypt1(tin,schedule,DES_DECRYPT);
 | 
			
		||||
			tout0=tin[0]^xor0^inW0;
 | 
			
		||||
			tout1=tin[1]^xor1^inW1;
 | 
			
		||||
			l2c(tout0,out);
 | 
			
		||||
@@ -175,7 +175,7 @@ void des_xcbc_encrypt(const unsigned char *in, unsigned char *out,
 | 
			
		||||
			{
 | 
			
		||||
			c2l(in,tin0); tin[0]=tin0^outW0;
 | 
			
		||||
			c2l(in,tin1); tin[1]=tin1^outW1;
 | 
			
		||||
			des_encrypt(tin,schedule,DES_DECRYPT);
 | 
			
		||||
			des_encrypt1(tin,schedule,DES_DECRYPT);
 | 
			
		||||
			tout0=tin[0]^xor0^inW0;
 | 
			
		||||
			tout1=tin[1]^xor1^inW1;
 | 
			
		||||
			l2cn(tout0,tout1,out,l+8);
 | 
			
		||||
 
 | 
			
		||||
@@ -99,7 +99,6 @@ DH_METHOD *DH_OpenSSL(void)
 | 
			
		||||
static int generate_key(DH *dh)
 | 
			
		||||
	{
 | 
			
		||||
	int ok=0;
 | 
			
		||||
	unsigned int i;
 | 
			
		||||
	BN_CTX ctx;
 | 
			
		||||
	BN_MONT_CTX *mont;
 | 
			
		||||
	BIGNUM *pub_key=NULL,*priv_key=NULL;
 | 
			
		||||
@@ -108,15 +107,11 @@ static int generate_key(DH *dh)
 | 
			
		||||
 | 
			
		||||
	if (dh->priv_key == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		i=dh->length;
 | 
			
		||||
		if (i == 0)
 | 
			
		||||
			{
 | 
			
		||||
			/* Make the number p-1 bits long */
 | 
			
		||||
			i=BN_num_bits(dh->p)-1;
 | 
			
		||||
			}
 | 
			
		||||
		priv_key=BN_new();
 | 
			
		||||
		if (priv_key == NULL) goto err;
 | 
			
		||||
		if (!BN_rand(priv_key,i,0,0)) goto err;
 | 
			
		||||
		do
 | 
			
		||||
			if (!BN_rand_range(priv_key, dh->p)) goto err;
 | 
			
		||||
		while (BN_is_zero(priv_key));
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		priv_key=dh->priv_key;
 | 
			
		||||
 
 | 
			
		||||
@@ -120,13 +120,13 @@ DH *DH_new_method(DH_METHOD *meth)
 | 
			
		||||
	ret->method_mont_p=NULL;
 | 
			
		||||
	ret->references = 1;
 | 
			
		||||
	ret->flags=ret->meth->flags;
 | 
			
		||||
	CRYPTO_new_ex_data(dh_meth,ret,&ret->ex_data);
 | 
			
		||||
	if ((ret->meth->init != NULL) && !ret->meth->init(ret))
 | 
			
		||||
		{
 | 
			
		||||
		CRYPTO_free_ex_data(dh_meth,ret,&ret->ex_data);
 | 
			
		||||
		OPENSSL_free(ret);
 | 
			
		||||
		ret=NULL;
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		CRYPTO_new_ex_data(dh_meth,ret,&ret->ex_data);
 | 
			
		||||
	return(ret);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
@@ -147,10 +147,10 @@ void DH_free(DH *r)
 | 
			
		||||
	}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
	CRYPTO_free_ex_data(dh_meth, r, &r->ex_data);
 | 
			
		||||
 | 
			
		||||
	if(r->meth->finish) r->meth->finish(r);
 | 
			
		||||
 | 
			
		||||
	CRYPTO_free_ex_data(dh_meth, r, &r->ex_data);
 | 
			
		||||
 | 
			
		||||
	if (r->p != NULL) BN_clear_free(r->p);
 | 
			
		||||
	if (r->g != NULL) BN_clear_free(r->g);
 | 
			
		||||
	if (r->q != NULL) BN_clear_free(r->q);
 | 
			
		||||
 
 | 
			
		||||
@@ -68,7 +68,6 @@
 | 
			
		||||
int DSA_generate_key(DSA *dsa)
 | 
			
		||||
	{
 | 
			
		||||
	int ok=0;
 | 
			
		||||
	unsigned int i;
 | 
			
		||||
	BN_CTX *ctx=NULL;
 | 
			
		||||
	BIGNUM *pub_key=NULL,*priv_key=NULL;
 | 
			
		||||
 | 
			
		||||
@@ -81,15 +80,9 @@ int DSA_generate_key(DSA *dsa)
 | 
			
		||||
	else
 | 
			
		||||
		priv_key=dsa->priv_key;
 | 
			
		||||
 | 
			
		||||
	i=BN_num_bits(dsa->q);
 | 
			
		||||
	for (;;)
 | 
			
		||||
		{
 | 
			
		||||
		if (!BN_rand(priv_key,i,0,0))
 | 
			
		||||
			goto err;
 | 
			
		||||
		if (BN_cmp(priv_key,dsa->q) >= 0)
 | 
			
		||||
			BN_sub(priv_key,priv_key,dsa->q);
 | 
			
		||||
		if (!BN_is_zero(priv_key)) break;
 | 
			
		||||
		}
 | 
			
		||||
	do
 | 
			
		||||
		if (!BN_rand_range(priv_key,dsa->q)) goto err;
 | 
			
		||||
	while (BN_is_zero(priv_key));
 | 
			
		||||
 | 
			
		||||
	if (dsa->pub_key == NULL)
 | 
			
		||||
		{
 | 
			
		||||
 
 | 
			
		||||
@@ -125,13 +125,13 @@ DSA *DSA_new_method(DSA_METHOD *meth)
 | 
			
		||||
 | 
			
		||||
	ret->references=1;
 | 
			
		||||
	ret->flags=ret->meth->flags;
 | 
			
		||||
	CRYPTO_new_ex_data(dsa_meth,ret,&ret->ex_data);
 | 
			
		||||
	if ((ret->meth->init != NULL) && !ret->meth->init(ret))
 | 
			
		||||
		{
 | 
			
		||||
		CRYPTO_free_ex_data(dsa_meth,ret,&ret->ex_data);
 | 
			
		||||
		OPENSSL_free(ret);
 | 
			
		||||
		ret=NULL;
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		CRYPTO_new_ex_data(dsa_meth,ret,&ret->ex_data);
 | 
			
		||||
	
 | 
			
		||||
	return(ret);
 | 
			
		||||
	}
 | 
			
		||||
@@ -155,10 +155,10 @@ void DSA_free(DSA *r)
 | 
			
		||||
		}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
	CRYPTO_free_ex_data(dsa_meth, r, &r->ex_data);
 | 
			
		||||
 | 
			
		||||
	if(r->meth->finish) r->meth->finish(r);
 | 
			
		||||
 | 
			
		||||
	CRYPTO_free_ex_data(dsa_meth, r, &r->ex_data);
 | 
			
		||||
 | 
			
		||||
	if (r->p != NULL) BN_clear_free(r->p);
 | 
			
		||||
	if (r->q != NULL) BN_clear_free(r->q);
 | 
			
		||||
	if (r->g != NULL) BN_clear_free(r->g);
 | 
			
		||||
 
 | 
			
		||||
@@ -179,13 +179,9 @@ static int dsa_sign_setup(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp)
 | 
			
		||||
	kinv=NULL;
 | 
			
		||||
 | 
			
		||||
	/* Get random k */
 | 
			
		||||
	for (;;)
 | 
			
		||||
		{
 | 
			
		||||
		if (!BN_rand(&k, BN_num_bits(dsa->q), 0, 0)) goto err;
 | 
			
		||||
		if (BN_cmp(&k,dsa->q) >= 0)
 | 
			
		||||
			BN_sub(&k,&k,dsa->q);
 | 
			
		||||
		if (!BN_is_zero(&k)) break;
 | 
			
		||||
		}
 | 
			
		||||
	do
 | 
			
		||||
		if (!BN_rand_range(&k, dsa->q)) goto err;
 | 
			
		||||
	while (BN_is_zero(&k));
 | 
			
		||||
 | 
			
		||||
	if ((dsa->method_mont_p == NULL) && (dsa->flags & DSA_FLAG_CACHE_MONT_P))
 | 
			
		||||
		{
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,16 @@
 | 
			
		||||
TODO
 | 
			
		||||
----
 | 
			
		||||
 | 
			
		||||
Find a way where name-translation can be done in a way that is
 | 
			
		||||
sensitive to particular methods (ie. generic code could still do
 | 
			
		||||
different path/filename substitutions on win32 to what it does on
 | 
			
		||||
*nix) but doesn't assume some canonical form. Already one case
 | 
			
		||||
exists where the "blah -> (libblah.so,blah.dll)" mapping doesn't
 | 
			
		||||
suffice. I suspect a callback with an enumerated (or string?)
 | 
			
		||||
parameter could be the way to go here ... DSO_ctrl the callback
 | 
			
		||||
into place and it can be invoked to handle name translation with
 | 
			
		||||
some clue to the calling code as to what kind of system it is.
 | 
			
		||||
 | 
			
		||||
NOTES
 | 
			
		||||
-----
 | 
			
		||||
 | 
			
		||||
@@ -8,15 +21,4 @@ according to their man page, prefer developers to move to that.
 | 
			
		||||
I'll leave Richard's changes there as I guess dso_dl is needed
 | 
			
		||||
for HPUX10.20.
 | 
			
		||||
 | 
			
		||||
There is now a callback scheme in place where filename conversion can
 | 
			
		||||
(a) be turned off altogether through the use of the
 | 
			
		||||
    DSO_FLAG_NO_NAME_TRANSLATION flag,
 | 
			
		||||
(b) be handled by default using the default DSO_METHOD's converter
 | 
			
		||||
(c) overriden per-DSO by setting the override callback
 | 
			
		||||
(d) a mix of (b) and (c) - eg. implement an override callback that;
 | 
			
		||||
    (i) checks if we're win32 (if(strstr(dso->meth->name, "win32")....)
 | 
			
		||||
        and if so, convert "blah" into "blah32.dll" (the default is
 | 
			
		||||
	otherwise to make it "blah.dll").
 | 
			
		||||
    (ii) default to the normal behaviour - we're not on win32, eg.
 | 
			
		||||
         finish with (return dso->meth->dso_name_converter(dso,NULL)).
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										159
									
								
								crypto/dso/dso.h
									
									
									
									
									
								
							
							
						
						
									
										159
									
								
								crypto/dso/dso.h
									
									
									
									
									
								
							@@ -70,51 +70,31 @@ extern "C" {
 | 
			
		||||
#define DSO_CTRL_SET_FLAGS	2
 | 
			
		||||
#define DSO_CTRL_OR_FLAGS	3
 | 
			
		||||
 | 
			
		||||
/* By default, DSO_load() will translate the provided filename into a form
 | 
			
		||||
 * typical for the platform (more specifically the DSO_METHOD) using the
 | 
			
		||||
 * dso_name_converter function of the method. Eg. win32 will transform "blah"
 | 
			
		||||
 * into "blah.dll", and dlfcn will transform it into "libblah.so". The
 | 
			
		||||
 * behaviour can be overriden by setting the name_converter callback in the DSO
 | 
			
		||||
 * object (using DSO_set_name_converter()). This callback could even utilise
 | 
			
		||||
 * the DSO_METHOD's converter too if it only wants to override behaviour for
 | 
			
		||||
 * one or two possible DSO methods. However, the following flag can be set in a
 | 
			
		||||
 * DSO to prevent *any* native name-translation at all - eg. if the caller has
 | 
			
		||||
 * prompted the user for a path to a driver library so the filename should be
 | 
			
		||||
 * interpreted as-is. */
 | 
			
		||||
#define DSO_FLAG_NO_NAME_TRANSLATION		0x01
 | 
			
		||||
/* An extra flag to give if only the extension should be added as
 | 
			
		||||
 * translation.  This is obviously only of importance on Unix and
 | 
			
		||||
 * other operating systems where the translation also may prefix
 | 
			
		||||
 * the name with something, like 'lib', and ignored everywhere else.
 | 
			
		||||
 * This flag is also ignored if DSO_FLAG_NO_NAME_TRANSLATION is used
 | 
			
		||||
 * at the same time. */
 | 
			
		||||
#define DSO_FLAG_NAME_TRANSLATION_EXT_ONLY	0x02
 | 
			
		||||
/* These flags control the translation of file-names from canonical to
 | 
			
		||||
 * native. Eg. in the CryptoSwift support, the "dl" and "dlfcn"
 | 
			
		||||
 * methods will translate "swift" -> "libswift.so" whereas the "win32"
 | 
			
		||||
 * method will translate "swift" -> "swift.dll". NB: Until I can figure
 | 
			
		||||
 * out how to be more "conventional" with this, the methods will only
 | 
			
		||||
 * honour this flag if it looks like it was passed a file without any
 | 
			
		||||
 * path and if the filename is small enough.
 | 
			
		||||
 */
 | 
			
		||||
#define DSO_FLAG_NAME_TRANSLATION 0x01
 | 
			
		||||
 | 
			
		||||
/* The following flag controls the translation of symbol names to upper
 | 
			
		||||
 * case.  This is currently only being implemented for OpenVMS.
 | 
			
		||||
 */
 | 
			
		||||
#define DSO_FLAG_UPCASE_SYMBOL			0x10
 | 
			
		||||
#define DSO_FLAG_UPCASE_SYMBOL    0x02
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
typedef void (*DSO_FUNC_TYPE)(void);
 | 
			
		||||
 | 
			
		||||
typedef struct dso_st DSO;
 | 
			
		||||
 | 
			
		||||
/* The function prototype used for method functions (or caller-provided
 | 
			
		||||
 * callbacks) that transform filenames. They are passed a DSO structure pointer
 | 
			
		||||
 * (or NULL if they are to be used independantly of a DSO object) and a
 | 
			
		||||
 * filename to transform. They should either return NULL (if there is an error
 | 
			
		||||
 * condition) or a newly allocated string containing the transformed form that
 | 
			
		||||
 * the caller will need to free with OPENSSL_free() when done. */
 | 
			
		||||
typedef char* (*DSO_NAME_CONVERTER_FUNC)(DSO *, const char *);
 | 
			
		||||
 | 
			
		||||
typedef struct dso_meth_st
 | 
			
		||||
	{
 | 
			
		||||
	const char *name;
 | 
			
		||||
	/* Loads a shared library, NB: new DSO_METHODs must ensure that a
 | 
			
		||||
	 * successful load populates the loaded_filename field, and likewise a
 | 
			
		||||
	 * successful unload OPENSSL_frees and NULLs it out. */
 | 
			
		||||
	int (*dso_load)(DSO *dso);
 | 
			
		||||
	/* Loads a shared library */
 | 
			
		||||
	int (*dso_load)(DSO *dso, const char *filename);
 | 
			
		||||
	/* Unloads a shared library */
 | 
			
		||||
	int (*dso_unload)(DSO *dso);
 | 
			
		||||
	/* Binds a variable */
 | 
			
		||||
@@ -137,9 +117,6 @@ typedef struct dso_meth_st
 | 
			
		||||
	/* The generic (yuck) "ctrl()" function. NB: Negative return
 | 
			
		||||
	 * values (rather than zero) indicate errors. */
 | 
			
		||||
	long (*dso_ctrl)(DSO *dso, int cmd, long larg, void *parg);
 | 
			
		||||
	/* The default DSO_METHOD-specific function for converting filenames to
 | 
			
		||||
	 * a canonical native form. */
 | 
			
		||||
	DSO_NAME_CONVERTER_FUNC dso_name_converter;
 | 
			
		||||
 | 
			
		||||
	/* [De]Initialisation handlers. */
 | 
			
		||||
	int (*init)(DSO *dso);
 | 
			
		||||
@@ -163,23 +140,6 @@ struct dso_st
 | 
			
		||||
	/* For use by applications etc ... use this for your bits'n'pieces,
 | 
			
		||||
	 * don't touch meth_data! */
 | 
			
		||||
	CRYPTO_EX_DATA ex_data;
 | 
			
		||||
	/* If this callback function pointer is set to non-NULL, then it will
 | 
			
		||||
	 * be used on DSO_load() in place of meth->dso_name_converter. NB: This
 | 
			
		||||
	 * should normally set using DSO_set_name_converter(). */
 | 
			
		||||
	DSO_NAME_CONVERTER_FUNC name_converter;
 | 
			
		||||
	/* This is populated with (a copy of) the platform-independant
 | 
			
		||||
	 * filename used for this DSO. */
 | 
			
		||||
	char *filename;
 | 
			
		||||
	/* This is populated with (a copy of) the translated filename by which
 | 
			
		||||
	 * the DSO was actually loaded. It is NULL iff the DSO is not currently
 | 
			
		||||
	 * loaded. NB: This is here because the filename translation process
 | 
			
		||||
	 * may involve a callback being invoked more than once not only to
 | 
			
		||||
	 * convert to a platform-specific form, but also to try different
 | 
			
		||||
	 * filenames in the process of trying to perform a load. As such, this
 | 
			
		||||
	 * variable can be used to indicate (a) whether this DSO structure
 | 
			
		||||
	 * corresponds to a loaded library or not, and (b) the filename with
 | 
			
		||||
	 * which it was actually loaded. */
 | 
			
		||||
	char *loaded_filename;
 | 
			
		||||
	};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -190,35 +150,7 @@ int	DSO_flags(DSO *dso);
 | 
			
		||||
int	DSO_up(DSO *dso);
 | 
			
		||||
long	DSO_ctrl(DSO *dso, int cmd, long larg, void *parg);
 | 
			
		||||
 | 
			
		||||
/* This function sets the DSO's name_converter callback. If it is non-NULL,
 | 
			
		||||
 * then it will be used instead of the associated DSO_METHOD's function. If
 | 
			
		||||
 * oldcb is non-NULL then it is set to the function pointer value being
 | 
			
		||||
 * replaced. Return value is non-zero for success. */
 | 
			
		||||
int	DSO_set_name_converter(DSO *dso, DSO_NAME_CONVERTER_FUNC cb,
 | 
			
		||||
				DSO_NAME_CONVERTER_FUNC *oldcb);
 | 
			
		||||
/* These functions can be used to get/set the platform-independant filename
 | 
			
		||||
 * used for a DSO. NB: set will fail if the DSO is already loaded. */
 | 
			
		||||
const char *DSO_get_filename(DSO *dso);
 | 
			
		||||
int	DSO_set_filename(DSO *dso, const char *filename);
 | 
			
		||||
/* This function will invoke the DSO's name_converter callback to translate a
 | 
			
		||||
 * filename, or if the callback isn't set it will instead use the DSO_METHOD's
 | 
			
		||||
 * converter. If "filename" is NULL, the "filename" in the DSO itself will be
 | 
			
		||||
 * used. If the DSO_FLAG_NO_NAME_TRANSLATION flag is set, then the filename is
 | 
			
		||||
 * simply duplicated. NB: This function is usually called from within a
 | 
			
		||||
 * DSO_METHOD during the processing of a DSO_load() call, and is exposed so that
 | 
			
		||||
 * caller-created DSO_METHODs can do the same thing. A non-NULL return value
 | 
			
		||||
 * will need to be OPENSSL_free()'d. */
 | 
			
		||||
char	*DSO_convert_filename(DSO *dso, const char *filename);
 | 
			
		||||
/* If the DSO is currently loaded, this returns the filename that it was loaded
 | 
			
		||||
 * under, otherwise it returns NULL. So it is also useful as a test as to
 | 
			
		||||
 * whether the DSO is currently loaded. NB: This will not necessarily return
 | 
			
		||||
 * the same value as DSO_convert_filename(dso, dso->filename), because the
 | 
			
		||||
 * DSO_METHOD's load function may have tried a variety of filenames (with
 | 
			
		||||
 * and/or without the aid of the converters) before settling on the one it
 | 
			
		||||
 * actually loaded. */
 | 
			
		||||
const char *DSO_get_loaded_filename(DSO *dso);
 | 
			
		||||
 | 
			
		||||
void	DSO_set_default_method(DSO_METHOD *meth);
 | 
			
		||||
void DSO_set_default_method(DSO_METHOD *meth);
 | 
			
		||||
DSO_METHOD *DSO_get_default_method(void);
 | 
			
		||||
DSO_METHOD *DSO_get_method(DSO *dso);
 | 
			
		||||
DSO_METHOD *DSO_set_method(DSO *dso, DSO_METHOD *meth);
 | 
			
		||||
@@ -274,47 +206,40 @@ void ERR_load_DSO_strings(void);
 | 
			
		||||
/* Function codes. */
 | 
			
		||||
#define DSO_F_DLFCN_BIND_FUNC				 100
 | 
			
		||||
#define DSO_F_DLFCN_BIND_VAR				 101
 | 
			
		||||
#define DSO_F_DLFCN_LOAD				 102
 | 
			
		||||
#define DSO_F_DLFCN_NAME_CONVERTER			 123
 | 
			
		||||
#define DSO_F_DLFCN_UNLOAD				 103
 | 
			
		||||
#define DSO_F_DL_BIND_FUNC				 104
 | 
			
		||||
#define DSO_F_DL_BIND_VAR				 105
 | 
			
		||||
#define DSO_F_DL_LOAD					 106
 | 
			
		||||
#define DSO_F_DL_NAME_CONVERTER				 124
 | 
			
		||||
#define DSO_F_DL_UNLOAD					 107
 | 
			
		||||
#define DSO_F_DSO_BIND_FUNC				 108
 | 
			
		||||
#define DSO_F_DSO_BIND_VAR				 109
 | 
			
		||||
#define DSO_F_DSO_CONVERT_FILENAME			 126
 | 
			
		||||
#define DSO_F_DSO_CTRL					 110
 | 
			
		||||
#define DSO_F_DSO_FREE					 111
 | 
			
		||||
#define DSO_F_DSO_GET_FILENAME				 127
 | 
			
		||||
#define DSO_F_DSO_GET_LOADED_FILENAME			 128
 | 
			
		||||
#define DSO_F_DSO_LOAD					 112
 | 
			
		||||
#define DSO_F_DSO_NEW_METHOD				 113
 | 
			
		||||
#define DSO_F_DSO_SET_FILENAME				 129
 | 
			
		||||
#define DSO_F_DSO_SET_NAME_CONVERTER			 122
 | 
			
		||||
#define DSO_F_DSO_UP					 114
 | 
			
		||||
#define DSO_F_VMS_BIND_VAR				 115
 | 
			
		||||
#define DSO_F_VMS_LOAD					 116
 | 
			
		||||
#define DSO_F_VMS_UNLOAD				 117
 | 
			
		||||
#define DSO_F_WIN32_BIND_FUNC				 118
 | 
			
		||||
#define DSO_F_WIN32_BIND_VAR				 119
 | 
			
		||||
#define DSO_F_DLFCN_CTRL				 102
 | 
			
		||||
#define DSO_F_DLFCN_LOAD				 103
 | 
			
		||||
#define DSO_F_DLFCN_UNLOAD				 104
 | 
			
		||||
#define DSO_F_DL_BIND_FUNC				 105
 | 
			
		||||
#define DSO_F_DL_BIND_VAR				 106
 | 
			
		||||
#define DSO_F_DL_CTRL					 107
 | 
			
		||||
#define DSO_F_DL_LOAD					 108
 | 
			
		||||
#define DSO_F_DL_UNLOAD					 109
 | 
			
		||||
#define DSO_F_DSO_BIND_FUNC				 110
 | 
			
		||||
#define DSO_F_DSO_BIND_VAR				 111
 | 
			
		||||
#define DSO_F_DSO_CTRL					 112
 | 
			
		||||
#define DSO_F_DSO_FREE					 113
 | 
			
		||||
#define DSO_F_DSO_LOAD					 114
 | 
			
		||||
#define DSO_F_DSO_NEW_METHOD				 115
 | 
			
		||||
#define DSO_F_DSO_UP					 116
 | 
			
		||||
#define DSO_F_VMS_BIND_VAR				 122
 | 
			
		||||
#define DSO_F_VMS_CTRL					 123
 | 
			
		||||
#define DSO_F_VMS_LOAD					 124
 | 
			
		||||
#define DSO_F_VMS_UNLOAD				 125
 | 
			
		||||
#define DSO_F_WIN32_BIND_FUNC				 117
 | 
			
		||||
#define DSO_F_WIN32_BIND_VAR				 118
 | 
			
		||||
#define DSO_F_WIN32_CTRL				 119
 | 
			
		||||
#define DSO_F_WIN32_LOAD				 120
 | 
			
		||||
#define DSO_F_WIN32_NAME_CONVERTER			 125
 | 
			
		||||
#define DSO_F_WIN32_UNLOAD				 121
 | 
			
		||||
 | 
			
		||||
/* Reason codes. */
 | 
			
		||||
#define DSO_R_CTRL_FAILED				 100
 | 
			
		||||
#define DSO_R_DSO_ALREADY_LOADED			 110
 | 
			
		||||
#define DSO_R_FILENAME_TOO_BIG				 101
 | 
			
		||||
#define DSO_R_FINISH_FAILED				 102
 | 
			
		||||
#define DSO_R_LOAD_FAILED				 103
 | 
			
		||||
#define DSO_R_NAME_TRANSLATION_FAILED			 109
 | 
			
		||||
#define DSO_R_NO_FILENAME				 111
 | 
			
		||||
#define DSO_R_NULL_HANDLE				 104
 | 
			
		||||
#define DSO_R_SET_FILENAME_FAILED			 112
 | 
			
		||||
#define DSO_R_STACK_ERROR				 105
 | 
			
		||||
#define DSO_R_SYM_FAILURE				 106
 | 
			
		||||
#define DSO_R_FILENAME_TOO_BIG				 109
 | 
			
		||||
#define DSO_R_FINISH_FAILED				 101
 | 
			
		||||
#define DSO_R_LOAD_FAILED				 102
 | 
			
		||||
#define DSO_R_NULL_HANDLE				 103
 | 
			
		||||
#define DSO_R_STACK_ERROR				 104
 | 
			
		||||
#define DSO_R_SYM_FAILURE				 105
 | 
			
		||||
#define DSO_R_UNKNOWN_COMMAND				 106
 | 
			
		||||
#define DSO_R_UNLOAD_FAILED				 107
 | 
			
		||||
#define DSO_R_UNSUPPORTED				 108
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -72,7 +72,7 @@ DSO_METHOD *DSO_METHOD_dl(void)
 | 
			
		||||
/* Part of the hack in "dl_load" ... */
 | 
			
		||||
#define DSO_MAX_TRANSLATED_SIZE 256
 | 
			
		||||
 | 
			
		||||
static int dl_load(DSO *dso);
 | 
			
		||||
static int dl_load(DSO *dso, const char *filename);
 | 
			
		||||
static int dl_unload(DSO *dso);
 | 
			
		||||
static void *dl_bind_var(DSO *dso, const char *symname);
 | 
			
		||||
static DSO_FUNC_TYPE dl_bind_func(DSO *dso, const char *symname);
 | 
			
		||||
@@ -81,9 +81,8 @@ static int dl_unbind_var(DSO *dso, char *symname, void *symptr);
 | 
			
		||||
static int dl_unbind_func(DSO *dso, char *symname, DSO_FUNC_TYPE symptr);
 | 
			
		||||
static int dl_init(DSO *dso);
 | 
			
		||||
static int dl_finish(DSO *dso);
 | 
			
		||||
static int dl_ctrl(DSO *dso, int cmd, long larg, void *parg);
 | 
			
		||||
#endif
 | 
			
		||||
static char *dl_name_converter(DSO *dso, const char *filename);
 | 
			
		||||
static long dl_ctrl(DSO *dso, int cmd, long larg, void *parg);
 | 
			
		||||
 | 
			
		||||
static DSO_METHOD dso_meth_dl = {
 | 
			
		||||
	"OpenSSL 'dl' shared library method",
 | 
			
		||||
@@ -96,8 +95,7 @@ static DSO_METHOD dso_meth_dl = {
 | 
			
		||||
	NULL, /* unbind_var */
 | 
			
		||||
	NULL, /* unbind_func */
 | 
			
		||||
#endif
 | 
			
		||||
	NULL, /* ctrl */
 | 
			
		||||
	dl_name_converter,
 | 
			
		||||
	dl_ctrl,
 | 
			
		||||
	NULL, /* init */
 | 
			
		||||
	NULL  /* finish */
 | 
			
		||||
	};
 | 
			
		||||
@@ -113,41 +111,40 @@ DSO_METHOD *DSO_METHOD_dl(void)
 | 
			
		||||
 * type so the cast is safe.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
static int dl_load(DSO *dso)
 | 
			
		||||
#if defined(__hpux)
 | 
			
		||||
static const char extension[] = ".sl";
 | 
			
		||||
#else
 | 
			
		||||
static const char extension[] = ".so";
 | 
			
		||||
#endif
 | 
			
		||||
static int dl_load(DSO *dso, const char *filename)
 | 
			
		||||
	{
 | 
			
		||||
	shl_t ptr = NULL;
 | 
			
		||||
	/* We don't do any fancy retries or anything, just take the method's
 | 
			
		||||
	 * (or DSO's if it has the callback set) best translation of the
 | 
			
		||||
	 * platform-independant filename and try once with that. */
 | 
			
		||||
	char *filename= DSO_convert_filename(dso, NULL);
 | 
			
		||||
	shl_t ptr;
 | 
			
		||||
	char translated[DSO_MAX_TRANSLATED_SIZE];
 | 
			
		||||
	int len;
 | 
			
		||||
 | 
			
		||||
	if(filename == NULL)
 | 
			
		||||
	/* The same comment as in dlfcn_load applies here. bleurgh. */
 | 
			
		||||
	len = strlen(filename) + strlen(extension);
 | 
			
		||||
	if((dso->flags & DSO_FLAG_NAME_TRANSLATION) &&
 | 
			
		||||
			(len + 3 < DSO_MAX_TRANSLATED_SIZE) &&
 | 
			
		||||
			(strstr(filename, "/") == NULL))
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DL_LOAD,DSO_R_NO_FILENAME);
 | 
			
		||||
		goto err;
 | 
			
		||||
		sprintf(translated, "lib%s%s", filename, extension);
 | 
			
		||||
		ptr = shl_load(translated, BIND_IMMEDIATE, NULL);
 | 
			
		||||
		}
 | 
			
		||||
	ptr = shl_load(filename, BIND_IMMEDIATE, NULL);
 | 
			
		||||
	else
 | 
			
		||||
		ptr = shl_load(filename, BIND_IMMEDIATE, NULL);
 | 
			
		||||
	if(ptr == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DL_LOAD,DSO_R_LOAD_FAILED);
 | 
			
		||||
		goto err;
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	if(!sk_push(dso->meth_data, (char *)ptr))
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DL_LOAD,DSO_R_STACK_ERROR);
 | 
			
		||||
		goto err;
 | 
			
		||||
		}
 | 
			
		||||
	/* Success, stick the converted filename we've loaded under into the DSO
 | 
			
		||||
	 * (it also serves as the indicator that we are currently loaded). */
 | 
			
		||||
	dso->loaded_filename = filename;
 | 
			
		||||
	return(1);
 | 
			
		||||
err:
 | 
			
		||||
	/* Cleanup! */
 | 
			
		||||
	if(filename != NULL)
 | 
			
		||||
		OPENSSL_free(filename);
 | 
			
		||||
	if(ptr != NULL)
 | 
			
		||||
		shl_unload(ptr);
 | 
			
		||||
	return(0);
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	return(1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
static int dl_unload(DSO *dso)
 | 
			
		||||
@@ -232,47 +229,28 @@ static DSO_FUNC_TYPE dl_bind_func(DSO *dso, const char *symname)
 | 
			
		||||
	return((DSO_FUNC_TYPE)sym);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* This function is identical to the one in dso_dlfcn.c, but as it is highly
 | 
			
		||||
 * unlikely that both the "dl" *and* "dlfcn" variants are being compiled at the
 | 
			
		||||
 * same time, there's no great duplicating the code. Figuring out an elegant 
 | 
			
		||||
 * way to share one copy of the code would be more difficult and would not
 | 
			
		||||
 * leave the implementations independant. */
 | 
			
		||||
#if defined(__hpux)
 | 
			
		||||
static const char extension[] = ".sl";
 | 
			
		||||
#else
 | 
			
		||||
static const char extension[] = ".so";
 | 
			
		||||
#endif
 | 
			
		||||
static char *dl_name_converter(DSO *dso, const char *filename)
 | 
			
		||||
static long dl_ctrl(DSO *dso, int cmd, long larg, void *parg)
 | 
			
		||||
	{
 | 
			
		||||
	char *translated;
 | 
			
		||||
	int len, rsize, transform;
 | 
			
		||||
 | 
			
		||||
	len = strlen(filename);
 | 
			
		||||
	rsize = len + 1;
 | 
			
		||||
	transform = (strstr(filename, "/") == NULL);
 | 
			
		||||
	if(dso == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		/* We will convert this to "%s.s?" or "lib%s.s?" */
 | 
			
		||||
		rsize += strlen(extension);/* The length of ".s?" */
 | 
			
		||||
		if ((DSO_flags(dso) & DSO_FLAG_NAME_TRANSLATION_EXT_ONLY) == 0)
 | 
			
		||||
			rsize += 3; /* The length of "lib" */
 | 
			
		||||
		DSOerr(DSO_F_DL_CTRL,ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
		return(-1);
 | 
			
		||||
		}
 | 
			
		||||
	translated = OPENSSL_malloc(rsize);
 | 
			
		||||
	if(translated == NULL)
 | 
			
		||||
	switch(cmd)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DL_NAME_CONVERTER,
 | 
			
		||||
				DSO_R_NAME_TRANSLATION_FAILED); 
 | 
			
		||||
		return(NULL);   
 | 
			
		||||
	case DSO_CTRL_GET_FLAGS:
 | 
			
		||||
		return dso->flags;
 | 
			
		||||
	case DSO_CTRL_SET_FLAGS:
 | 
			
		||||
		dso->flags = larg;
 | 
			
		||||
		return(0);
 | 
			
		||||
	case DSO_CTRL_OR_FLAGS:
 | 
			
		||||
		dso->flags |= larg;
 | 
			
		||||
		return(0);
 | 
			
		||||
	default:
 | 
			
		||||
		break;
 | 
			
		||||
		}
 | 
			
		||||
	if(transform)
 | 
			
		||||
		{
 | 
			
		||||
		if ((DSO_flags(dso) & DSO_FLAG_NAME_TRANSLATION_EXT_ONLY) == 0)
 | 
			
		||||
			sprintf(translated, "lib%s%s", filename, extension);
 | 
			
		||||
		else
 | 
			
		||||
			sprintf(translated, "%s%s", filename, extension);
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		sprintf(translated, "%s", filename);
 | 
			
		||||
	return(translated);
 | 
			
		||||
	DSOerr(DSO_F_DL_CTRL,DSO_R_UNKNOWN_COMMAND);
 | 
			
		||||
	return(-1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
#endif /* DSO_DL */
 | 
			
		||||
 
 | 
			
		||||
@@ -74,7 +74,7 @@ DSO_METHOD *DSO_METHOD_dlfcn(void)
 | 
			
		||||
/* Part of the hack in "dlfcn_load" ... */
 | 
			
		||||
#define DSO_MAX_TRANSLATED_SIZE 256
 | 
			
		||||
 | 
			
		||||
static int dlfcn_load(DSO *dso);
 | 
			
		||||
static int dlfcn_load(DSO *dso, const char *filename);
 | 
			
		||||
static int dlfcn_unload(DSO *dso);
 | 
			
		||||
static void *dlfcn_bind_var(DSO *dso, const char *symname);
 | 
			
		||||
static DSO_FUNC_TYPE dlfcn_bind_func(DSO *dso, const char *symname);
 | 
			
		||||
@@ -82,9 +82,8 @@ static DSO_FUNC_TYPE dlfcn_bind_func(DSO *dso, const char *symname);
 | 
			
		||||
static int dlfcn_unbind(DSO *dso, char *symname, void *symptr);
 | 
			
		||||
static int dlfcn_init(DSO *dso);
 | 
			
		||||
static int dlfcn_finish(DSO *dso);
 | 
			
		||||
static long dlfcn_ctrl(DSO *dso, int cmd, long larg, void *parg);
 | 
			
		||||
#endif
 | 
			
		||||
static char *dlfcn_name_converter(DSO *dso, const char *filename);
 | 
			
		||||
static long dlfcn_ctrl(DSO *dso, int cmd, long larg, void *parg);
 | 
			
		||||
 | 
			
		||||
static DSO_METHOD dso_meth_dlfcn = {
 | 
			
		||||
	"OpenSSL 'dlfcn' shared library method",
 | 
			
		||||
@@ -97,8 +96,7 @@ static DSO_METHOD dso_meth_dlfcn = {
 | 
			
		||||
	NULL, /* unbind_var */
 | 
			
		||||
	NULL, /* unbind_func */
 | 
			
		||||
#endif
 | 
			
		||||
	NULL, /* ctrl */
 | 
			
		||||
	dlfcn_name_converter,
 | 
			
		||||
	dlfcn_ctrl,
 | 
			
		||||
	NULL, /* init */
 | 
			
		||||
	NULL  /* finish */
 | 
			
		||||
	};
 | 
			
		||||
@@ -132,39 +130,41 @@ DSO_METHOD *DSO_METHOD_dlfcn(void)
 | 
			
		||||
 * (i) the handle (void*) returned from dlopen().
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
static int dlfcn_load(DSO *dso)
 | 
			
		||||
static int dlfcn_load(DSO *dso, const char *filename)
 | 
			
		||||
	{
 | 
			
		||||
	void *ptr = NULL;
 | 
			
		||||
	/* See applicable comments in dso_dl.c */
 | 
			
		||||
	char *filename = DSO_convert_filename(dso, NULL);
 | 
			
		||||
	void *ptr;
 | 
			
		||||
	char translated[DSO_MAX_TRANSLATED_SIZE];
 | 
			
		||||
	int len;
 | 
			
		||||
 | 
			
		||||
	if(filename == NULL)
 | 
			
		||||
	/* NB: This is a hideous hack, but I'm not yet sure what
 | 
			
		||||
	 * to replace it with. This attempts to convert any filename,
 | 
			
		||||
	 * that looks like it has no path information, into a
 | 
			
		||||
	 * translated form, e. "blah" -> "libblah.so" */
 | 
			
		||||
	len = strlen(filename);
 | 
			
		||||
	if((dso->flags & DSO_FLAG_NAME_TRANSLATION) &&
 | 
			
		||||
			(len + 6 < DSO_MAX_TRANSLATED_SIZE) &&
 | 
			
		||||
			(strstr(filename, "/") == NULL))
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DLFCN_LOAD,DSO_R_NO_FILENAME);
 | 
			
		||||
		goto err;
 | 
			
		||||
		sprintf(translated, "lib%s.so", filename);
 | 
			
		||||
		ptr = dlopen(translated, DLOPEN_FLAG);
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		{
 | 
			
		||||
		ptr = dlopen(filename, DLOPEN_FLAG);
 | 
			
		||||
		}
 | 
			
		||||
	ptr = dlopen(filename, DLOPEN_FLAG);
 | 
			
		||||
	if(ptr == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DLFCN_LOAD,DSO_R_LOAD_FAILED);
 | 
			
		||||
		goto err;
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	if(!sk_push(dso->meth_data, (char *)ptr))
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DLFCN_LOAD,DSO_R_STACK_ERROR);
 | 
			
		||||
		goto err;
 | 
			
		||||
		}
 | 
			
		||||
	/* Success */
 | 
			
		||||
	dso->loaded_filename = filename;
 | 
			
		||||
	return(1);
 | 
			
		||||
err:
 | 
			
		||||
	/* Cleanup! */
 | 
			
		||||
	if(filename != NULL)
 | 
			
		||||
		OPENSSL_free(filename);
 | 
			
		||||
	if(ptr != NULL)
 | 
			
		||||
		dlclose(ptr);
 | 
			
		||||
	return(0);
 | 
			
		||||
}
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	return(1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
static int dlfcn_unload(DSO *dso)
 | 
			
		||||
	{
 | 
			
		||||
@@ -249,38 +249,28 @@ static DSO_FUNC_TYPE dlfcn_bind_func(DSO *dso, const char *symname)
 | 
			
		||||
	return(sym);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
static char *dlfcn_name_converter(DSO *dso, const char *filename)
 | 
			
		||||
static long dlfcn_ctrl(DSO *dso, int cmd, long larg, void *parg)
 | 
			
		||||
	{
 | 
			
		||||
	char *translated;
 | 
			
		||||
	int len, rsize, transform;
 | 
			
		||||
 | 
			
		||||
	len = strlen(filename);
 | 
			
		||||
	rsize = len + 1;
 | 
			
		||||
	transform = (strstr(filename, "/") == NULL);
 | 
			
		||||
	if(transform)
 | 
			
		||||
	if(dso == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		/* We will convert this to "%s.so" or "lib%s.so" */
 | 
			
		||||
		rsize += 3;	/* The length of ".so" */
 | 
			
		||||
		if ((DSO_flags(dso) & DSO_FLAG_NAME_TRANSLATION_EXT_ONLY) == 0)
 | 
			
		||||
			rsize += 3; /* The length of "lib" */
 | 
			
		||||
		DSOerr(DSO_F_DLFCN_CTRL,ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
		return(-1);
 | 
			
		||||
		}
 | 
			
		||||
	translated = OPENSSL_malloc(rsize);
 | 
			
		||||
	if(translated == NULL)
 | 
			
		||||
	switch(cmd)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DLFCN_NAME_CONVERTER,
 | 
			
		||||
				DSO_R_NAME_TRANSLATION_FAILED);
 | 
			
		||||
		return(NULL);
 | 
			
		||||
	case DSO_CTRL_GET_FLAGS:
 | 
			
		||||
		return dso->flags;
 | 
			
		||||
	case DSO_CTRL_SET_FLAGS:
 | 
			
		||||
		dso->flags = (int)larg;
 | 
			
		||||
		return(0);
 | 
			
		||||
	case DSO_CTRL_OR_FLAGS:
 | 
			
		||||
		dso->flags |= (int)larg;
 | 
			
		||||
		return(0);
 | 
			
		||||
	default:
 | 
			
		||||
		break;
 | 
			
		||||
		}
 | 
			
		||||
	if(transform)
 | 
			
		||||
		{
 | 
			
		||||
		if ((DSO_flags(dso) & DSO_FLAG_NAME_TRANSLATION_EXT_ONLY) == 0)
 | 
			
		||||
			sprintf(translated, "lib%s.so", filename);
 | 
			
		||||
		else
 | 
			
		||||
			sprintf(translated, "%s.so", filename);
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		sprintf(translated, "%s", filename);
 | 
			
		||||
	return(translated);
 | 
			
		||||
	DSOerr(DSO_F_DLFCN_CTRL,DSO_R_UNKNOWN_COMMAND);
 | 
			
		||||
	return(-1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
#endif /* DSO_DLFCN */
 | 
			
		||||
 
 | 
			
		||||
@@ -68,33 +68,29 @@ static ERR_STRING_DATA DSO_str_functs[]=
 | 
			
		||||
	{
 | 
			
		||||
{ERR_PACK(0,DSO_F_DLFCN_BIND_FUNC,0),	"DLFCN_BIND_FUNC"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DLFCN_BIND_VAR,0),	"DLFCN_BIND_VAR"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DLFCN_CTRL,0),	"DLFCN_CTRL"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DLFCN_LOAD,0),	"DLFCN_LOAD"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DLFCN_NAME_CONVERTER,0),	"DLFCN_NAME_CONVERTER"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DLFCN_UNLOAD,0),	"DLFCN_UNLOAD"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DL_BIND_FUNC,0),	"DL_BIND_FUNC"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DL_BIND_VAR,0),	"DL_BIND_VAR"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DL_CTRL,0),	"DL_CTRL"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DL_LOAD,0),	"DL_LOAD"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DL_NAME_CONVERTER,0),	"DL_NAME_CONVERTER"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DL_UNLOAD,0),	"DL_UNLOAD"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_BIND_FUNC,0),	"DSO_bind_func"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_BIND_VAR,0),	"DSO_bind_var"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_CONVERT_FILENAME,0),	"DSO_convert_filename"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_CTRL,0),	"DSO_ctrl"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_FREE,0),	"DSO_free"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_GET_FILENAME,0),	"DSO_get_filename"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_GET_LOADED_FILENAME,0),	"DSO_get_loaded_filename"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_LOAD,0),	"DSO_load"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_NEW_METHOD,0),	"DSO_new_method"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_SET_FILENAME,0),	"DSO_set_filename"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_SET_NAME_CONVERTER,0),	"DSO_set_name_converter"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_DSO_UP,0),	"DSO_up"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_VMS_BIND_VAR,0),	"VMS_BIND_VAR"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_VMS_CTRL,0),	"VMS_CTRL"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_VMS_LOAD,0),	"VMS_LOAD"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_VMS_UNLOAD,0),	"VMS_UNLOAD"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_WIN32_BIND_FUNC,0),	"WIN32_BIND_FUNC"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_WIN32_BIND_VAR,0),	"WIN32_BIND_VAR"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_WIN32_CTRL,0),	"WIN32_CTRL"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_WIN32_LOAD,0),	"WIN32_LOAD"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_WIN32_NAME_CONVERTER,0),	"WIN32_NAME_CONVERTER"},
 | 
			
		||||
{ERR_PACK(0,DSO_F_WIN32_UNLOAD,0),	"WIN32_UNLOAD"},
 | 
			
		||||
{0,NULL}
 | 
			
		||||
	};
 | 
			
		||||
@@ -102,16 +98,13 @@ static ERR_STRING_DATA DSO_str_functs[]=
 | 
			
		||||
static ERR_STRING_DATA DSO_str_reasons[]=
 | 
			
		||||
	{
 | 
			
		||||
{DSO_R_CTRL_FAILED                       ,"control command failed"},
 | 
			
		||||
{DSO_R_DSO_ALREADY_LOADED                ,"dso already loaded"},
 | 
			
		||||
{DSO_R_FILENAME_TOO_BIG                  ,"filename too big"},
 | 
			
		||||
{DSO_R_FINISH_FAILED                     ,"cleanup method function failed"},
 | 
			
		||||
{DSO_R_LOAD_FAILED                       ,"could not load the shared library"},
 | 
			
		||||
{DSO_R_NAME_TRANSLATION_FAILED           ,"name translation failed"},
 | 
			
		||||
{DSO_R_NO_FILENAME                       ,"no filename"},
 | 
			
		||||
{DSO_R_NULL_HANDLE                       ,"a null shared library handle was used"},
 | 
			
		||||
{DSO_R_SET_FILENAME_FAILED               ,"set filename failed"},
 | 
			
		||||
{DSO_R_STACK_ERROR                       ,"the meth_data stack is corrupt"},
 | 
			
		||||
{DSO_R_SYM_FAILURE                       ,"could not bind to the requested symbol name"},
 | 
			
		||||
{DSO_R_UNKNOWN_COMMAND                   ,"unknown control command"},
 | 
			
		||||
{DSO_R_UNLOAD_FAILED                     ,"could not unload the shared library"},
 | 
			
		||||
{DSO_R_UNSUPPORTED                       ,"functionality not supported"},
 | 
			
		||||
{0,NULL}
 | 
			
		||||
 
 | 
			
		||||
@@ -164,10 +164,6 @@ int DSO_free(DSO *dso)
 | 
			
		||||
		}
 | 
			
		||||
	
 | 
			
		||||
	sk_free(dso->meth_data);
 | 
			
		||||
	if(dso->filename != NULL)
 | 
			
		||||
		OPENSSL_free(dso->filename);
 | 
			
		||||
	if(dso->loaded_filename != NULL)
 | 
			
		||||
		OPENSSL_free(dso->loaded_filename);
 | 
			
		||||
 
 | 
			
		||||
	OPENSSL_free(dso);
 | 
			
		||||
	return(1);
 | 
			
		||||
@@ -196,61 +192,48 @@ DSO *DSO_load(DSO *dso, const char *filename, DSO_METHOD *meth, int flags)
 | 
			
		||||
	DSO *ret;
 | 
			
		||||
	int allocated = 0;
 | 
			
		||||
 | 
			
		||||
	if(filename == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_LOAD,ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
		return(NULL);
 | 
			
		||||
		}
 | 
			
		||||
	if(dso == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		ret = DSO_new_method(meth);
 | 
			
		||||
		if(ret == NULL)
 | 
			
		||||
			{
 | 
			
		||||
			DSOerr(DSO_F_DSO_LOAD,ERR_R_MALLOC_FAILURE);
 | 
			
		||||
			goto err;
 | 
			
		||||
			return(NULL);
 | 
			
		||||
			}
 | 
			
		||||
		allocated = 1;
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		ret = dso;
 | 
			
		||||
	/* Don't load if we're currently already loaded */
 | 
			
		||||
	if(dso->filename != NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_LOAD,DSO_R_DSO_ALREADY_LOADED);
 | 
			
		||||
		goto err;
 | 
			
		||||
		}
 | 
			
		||||
	/* filename can only be NULL if we were passed a dso that already has
 | 
			
		||||
	 * one set. */
 | 
			
		||||
	if(filename != NULL)
 | 
			
		||||
		if(!DSO_set_filename(dso, filename))
 | 
			
		||||
			{
 | 
			
		||||
			DSOerr(DSO_F_DSO_LOAD,DSO_R_SET_FILENAME_FAILED);
 | 
			
		||||
			goto err;
 | 
			
		||||
			}
 | 
			
		||||
	filename = dso->filename;
 | 
			
		||||
	if(filename == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_LOAD,DSO_R_NO_FILENAME);
 | 
			
		||||
		goto err;
 | 
			
		||||
		}
 | 
			
		||||
	/* Bleurgh ... have to check for negative return values for
 | 
			
		||||
	 * errors. <grimace> */
 | 
			
		||||
	if(DSO_ctrl(ret, DSO_CTRL_SET_FLAGS, flags, NULL) < 0)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_LOAD,DSO_R_CTRL_FAILED);
 | 
			
		||||
		goto err;
 | 
			
		||||
		if(allocated)
 | 
			
		||||
			DSO_free(ret);
 | 
			
		||||
		return(NULL);
 | 
			
		||||
		}
 | 
			
		||||
	if(ret->meth->dso_load == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_LOAD,DSO_R_UNSUPPORTED);
 | 
			
		||||
		goto err;
 | 
			
		||||
		if(allocated)
 | 
			
		||||
			DSO_free(ret);
 | 
			
		||||
		return(NULL);
 | 
			
		||||
		}
 | 
			
		||||
	if(!ret->meth->dso_load(ret))
 | 
			
		||||
	if(!ret->meth->dso_load(ret, filename))
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_LOAD,DSO_R_LOAD_FAILED);
 | 
			
		||||
		goto err;
 | 
			
		||||
		if(allocated)
 | 
			
		||||
			DSO_free(ret);
 | 
			
		||||
		return(NULL);
 | 
			
		||||
		}
 | 
			
		||||
	/* Load succeeded */
 | 
			
		||||
	return(ret);
 | 
			
		||||
err:
 | 
			
		||||
	if(allocated)
 | 
			
		||||
		DSO_free(ret);
 | 
			
		||||
	return(NULL);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
void *DSO_bind_var(DSO *dso, const char *symname)
 | 
			
		||||
@@ -314,22 +297,6 @@ long DSO_ctrl(DSO *dso, int cmd, long larg, void *parg)
 | 
			
		||||
		DSOerr(DSO_F_DSO_CTRL,ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
		return(-1);
 | 
			
		||||
		}
 | 
			
		||||
	/* We should intercept certain generic commands and only pass control
 | 
			
		||||
	 * to the method-specific ctrl() function if it's something we don't
 | 
			
		||||
	 * handle. */
 | 
			
		||||
	switch(cmd)
 | 
			
		||||
		{
 | 
			
		||||
	case DSO_CTRL_GET_FLAGS:
 | 
			
		||||
		return dso->flags;
 | 
			
		||||
	case DSO_CTRL_SET_FLAGS:
 | 
			
		||||
		dso->flags = (int)larg;
 | 
			
		||||
		return(0);
 | 
			
		||||
	case DSO_CTRL_OR_FLAGS:
 | 
			
		||||
		dso->flags |= (int)larg;
 | 
			
		||||
		return(0);
 | 
			
		||||
	default:
 | 
			
		||||
		break;
 | 
			
		||||
		}
 | 
			
		||||
	if((dso->meth == NULL) || (dso->meth->dso_ctrl == NULL))
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_CTRL,DSO_R_UNSUPPORTED);
 | 
			
		||||
@@ -337,104 +304,3 @@ long DSO_ctrl(DSO *dso, int cmd, long larg, void *parg)
 | 
			
		||||
		}
 | 
			
		||||
	return(dso->meth->dso_ctrl(dso,cmd,larg,parg));
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
int DSO_set_name_converter(DSO *dso, DSO_NAME_CONVERTER_FUNC cb,
 | 
			
		||||
			DSO_NAME_CONVERTER_FUNC *oldcb)
 | 
			
		||||
	{
 | 
			
		||||
	if(dso == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_SET_NAME_CONVERTER,
 | 
			
		||||
				ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	if(oldcb)
 | 
			
		||||
		*oldcb = dso->name_converter;
 | 
			
		||||
	dso->name_converter = cb;
 | 
			
		||||
	return(1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
const char *DSO_get_filename(DSO *dso)
 | 
			
		||||
	{
 | 
			
		||||
	if(dso == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_GET_FILENAME,ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
		return(NULL);
 | 
			
		||||
		}
 | 
			
		||||
	return(dso->filename);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
int DSO_set_filename(DSO *dso, const char *filename)
 | 
			
		||||
	{
 | 
			
		||||
	char *copied;
 | 
			
		||||
 | 
			
		||||
	if((dso == NULL) || (filename == NULL))
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_SET_FILENAME,ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	if(dso->loaded_filename)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_SET_FILENAME,DSO_R_DSO_ALREADY_LOADED);
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	/* We'll duplicate filename */
 | 
			
		||||
	copied = OPENSSL_malloc(strlen(filename) + 1);
 | 
			
		||||
	if(copied == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_SET_FILENAME,ERR_R_MALLOC_FAILURE);
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	strcpy(copied, filename);
 | 
			
		||||
	if(dso->filename)
 | 
			
		||||
		OPENSSL_free(dso->filename);
 | 
			
		||||
	dso->filename = copied;
 | 
			
		||||
	return(1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
char *DSO_convert_filename(DSO *dso, const char *filename)
 | 
			
		||||
	{
 | 
			
		||||
	char *result = NULL;
 | 
			
		||||
 | 
			
		||||
	if(dso == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_CONVERT_FILENAME,ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
		return(NULL);
 | 
			
		||||
		}
 | 
			
		||||
	if(filename == NULL)
 | 
			
		||||
		filename = dso->filename;
 | 
			
		||||
	if(filename == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_CONVERT_FILENAME,DSO_R_NO_FILENAME);
 | 
			
		||||
		return(NULL);
 | 
			
		||||
		}
 | 
			
		||||
	if((dso->flags & DSO_FLAG_NO_NAME_TRANSLATION) == 0)
 | 
			
		||||
		{
 | 
			
		||||
		if(dso->name_converter != NULL)
 | 
			
		||||
			result = dso->name_converter(dso, filename);
 | 
			
		||||
		else if(dso->meth->dso_name_converter != NULL)
 | 
			
		||||
			result = dso->meth->dso_name_converter(dso, filename);
 | 
			
		||||
		}
 | 
			
		||||
	if(result == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		result = OPENSSL_malloc(strlen(filename) + 1);
 | 
			
		||||
		if(result == NULL)
 | 
			
		||||
			{
 | 
			
		||||
			DSOerr(DSO_F_DSO_CONVERT_FILENAME,
 | 
			
		||||
					ERR_R_MALLOC_FAILURE);
 | 
			
		||||
			return(NULL);
 | 
			
		||||
			}
 | 
			
		||||
		strcpy(result, filename);
 | 
			
		||||
		}
 | 
			
		||||
	return(result);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
const char *DSO_get_loaded_filename(DSO *dso)
 | 
			
		||||
	{
 | 
			
		||||
	if(dso == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_DSO_GET_LOADED_FILENAME,
 | 
			
		||||
				ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
		return(NULL);
 | 
			
		||||
		}
 | 
			
		||||
	return(dso->loaded_filename);
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -78,7 +78,7 @@ DSO_METHOD *DSO_METHOD_vms(void)
 | 
			
		||||
#else
 | 
			
		||||
#pragma message disable DOLLARID
 | 
			
		||||
 | 
			
		||||
static int vms_load(DSO *dso);
 | 
			
		||||
static int vms_load(DSO *dso, const char *filename);
 | 
			
		||||
static int vms_unload(DSO *dso);
 | 
			
		||||
static void *vms_bind_var(DSO *dso, const char *symname);
 | 
			
		||||
static DSO_FUNC_TYPE vms_bind_func(DSO *dso, const char *symname);
 | 
			
		||||
@@ -87,9 +87,8 @@ static int vms_unbind_var(DSO *dso, char *symname, void *symptr);
 | 
			
		||||
static int vms_unbind_func(DSO *dso, char *symname, DSO_FUNC_TYPE symptr);
 | 
			
		||||
static int vms_init(DSO *dso);
 | 
			
		||||
static int vms_finish(DSO *dso);
 | 
			
		||||
static long vms_ctrl(DSO *dso, int cmd, long larg, void *parg);
 | 
			
		||||
#endif
 | 
			
		||||
static char *vms_name_converter(DSO *dso);
 | 
			
		||||
static long vms_ctrl(DSO *dso, int cmd, long larg, void *parg);
 | 
			
		||||
 | 
			
		||||
static DSO_METHOD dso_meth_vms = {
 | 
			
		||||
	"OpenSSL 'VMS' shared library method",
 | 
			
		||||
@@ -102,8 +101,7 @@ static DSO_METHOD dso_meth_vms = {
 | 
			
		||||
	NULL, /* unbind_var */
 | 
			
		||||
	NULL, /* unbind_func */
 | 
			
		||||
#endif
 | 
			
		||||
	NULL, /* ctrl */
 | 
			
		||||
	vms_name_converter,
 | 
			
		||||
	vms_ctrl,
 | 
			
		||||
	NULL, /* init */
 | 
			
		||||
	NULL  /* finish */
 | 
			
		||||
	};
 | 
			
		||||
@@ -131,9 +129,8 @@ DSO_METHOD *DSO_METHOD_vms(void)
 | 
			
		||||
	return(&dso_meth_vms);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
static int vms_load(DSO *dso)
 | 
			
		||||
static int vms_load(DSO *dso, const char *filename)
 | 
			
		||||
	{
 | 
			
		||||
#if 0
 | 
			
		||||
	DSO_VMS_INTERNAL *p;
 | 
			
		||||
	const char *sp1, *sp2;	/* Search result */
 | 
			
		||||
 | 
			
		||||
@@ -211,12 +208,6 @@ static int vms_load(DSO *dso)
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	return(1);
 | 
			
		||||
#else
 | 
			
		||||
	/* See the comments lower down in the vms_name_converter
 | 
			
		||||
	 * "implementation" :-) */
 | 
			
		||||
	please_break_compilation();
 | 
			
		||||
	return(bother_richard);
 | 
			
		||||
#endif
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
/* Note that this doesn't actually unload the shared image, as there is no
 | 
			
		||||
@@ -353,26 +344,28 @@ static DSO_FUNC_TYPE vms_bind_func(DSO *dso, const char *symname)
 | 
			
		||||
	return sym;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
static char *vms_name_converter(DSO *dso)
 | 
			
		||||
	{
 | 
			
		||||
	/* Implementation note: on VMS is it preferable to do real conversions
 | 
			
		||||
	 * here, or to actually have it performed in-line with the bind calls
 | 
			
		||||
	 * (given that VMS never actually does a load except implicitly within
 | 
			
		||||
	 * the bind functions). Another note: normally (eg. dlfcn), the
 | 
			
		||||
	 * DSO_load call will either load, put the loaded filename into the DSO
 | 
			
		||||
	 * (which marks it effectively as "read-only"), and return success - or
 | 
			
		||||
	 * it will fail. VMS needs to work out what to do - otherwise DSO_load
 | 
			
		||||
	 * will always succeed, but leave the DSO looking unloaded (because the
 | 
			
		||||
	 * loaded_filename will be NULL still) and then real loading (and
 | 
			
		||||
	 * setting of loaded_filename) will only happen during the first bind
 | 
			
		||||
	 * call (which should have error checking anyway to prevent you calling
 | 
			
		||||
	 * it on an "unloaded" DSO - thus giving VMS *serious* grief). Richard,
 | 
			
		||||
	 * what do you think? Is it worth having DSO_load() try to find and pin
 | 
			
		||||
	 * itself to a library file (and populate loaded_filename) even though
 | 
			
		||||
	 * it's unecessary to actually do a load prior to the first bind call?
 | 
			
		||||
	 * I leave it to you ... :-) */
 | 
			
		||||
	deliberately_break_compilation_here();
 | 
			
		||||
	return(1);
 | 
			
		||||
	}
 | 
			
		||||
static long vms_ctrl(DSO *dso, int cmd, long larg, void *parg)
 | 
			
		||||
        {
 | 
			
		||||
        if(dso == NULL)
 | 
			
		||||
                {
 | 
			
		||||
                DSOerr(DSO_F_VMS_CTRL,ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
                return(-1);
 | 
			
		||||
                }
 | 
			
		||||
        switch(cmd)
 | 
			
		||||
                {
 | 
			
		||||
        case DSO_CTRL_GET_FLAGS:
 | 
			
		||||
                return dso->flags;
 | 
			
		||||
        case DSO_CTRL_SET_FLAGS:
 | 
			
		||||
                dso->flags = (int)larg;
 | 
			
		||||
                return(0);
 | 
			
		||||
        case DSO_CTRL_OR_FLAGS:
 | 
			
		||||
                dso->flags |= (int)larg;
 | 
			
		||||
                return(0);
 | 
			
		||||
        default:
 | 
			
		||||
                break;
 | 
			
		||||
                }
 | 
			
		||||
        DSOerr(DSO_F_VMS_CTRL,DSO_R_UNKNOWN_COMMAND);
 | 
			
		||||
        return(-1);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
#endif /* VMS */
 | 
			
		||||
 
 | 
			
		||||
@@ -71,7 +71,7 @@ DSO_METHOD *DSO_METHOD_win32(void)
 | 
			
		||||
/* Part of the hack in "win32_load" ... */
 | 
			
		||||
#define DSO_MAX_TRANSLATED_SIZE 256
 | 
			
		||||
 | 
			
		||||
static int win32_load(DSO *dso);
 | 
			
		||||
static int win32_load(DSO *dso, const char *filename);
 | 
			
		||||
static int win32_unload(DSO *dso);
 | 
			
		||||
static void *win32_bind_var(DSO *dso, const char *symname);
 | 
			
		||||
static DSO_FUNC_TYPE win32_bind_func(DSO *dso, const char *symname);
 | 
			
		||||
@@ -80,9 +80,8 @@ static int win32_unbind_var(DSO *dso, char *symname, void *symptr);
 | 
			
		||||
static int win32_unbind_func(DSO *dso, char *symname, DSO_FUNC_TYPE symptr);
 | 
			
		||||
static int win32_init(DSO *dso);
 | 
			
		||||
static int win32_finish(DSO *dso);
 | 
			
		||||
static long win32_ctrl(DSO *dso, int cmd, long larg, void *parg);
 | 
			
		||||
#endif
 | 
			
		||||
static char *win32_name_converter(DSO *dso, const char *filename);
 | 
			
		||||
static long win32_ctrl(DSO *dso, int cmd, long larg, void *parg);
 | 
			
		||||
 | 
			
		||||
static DSO_METHOD dso_meth_win32 = {
 | 
			
		||||
	"OpenSSL 'win32' shared library method",
 | 
			
		||||
@@ -95,8 +94,7 @@ static DSO_METHOD dso_meth_win32 = {
 | 
			
		||||
	NULL, /* unbind_var */
 | 
			
		||||
	NULL, /* unbind_func */
 | 
			
		||||
#endif
 | 
			
		||||
	NULL, /* ctrl */
 | 
			
		||||
	win32_name_converter,
 | 
			
		||||
	win32_ctrl,
 | 
			
		||||
	NULL, /* init */
 | 
			
		||||
	NULL  /* finish */
 | 
			
		||||
	};
 | 
			
		||||
@@ -111,47 +109,50 @@ DSO_METHOD *DSO_METHOD_win32(void)
 | 
			
		||||
 *     LoadLibrary(), and copied.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
static int win32_load(DSO *dso)
 | 
			
		||||
static int win32_load(DSO *dso, const char *filename)
 | 
			
		||||
	{
 | 
			
		||||
	HINSTANCE h = NULL, *p = NULL;
 | 
			
		||||
	/* See applicable comments from dso_dl.c */
 | 
			
		||||
	char *filename = DSO_convert_filename(dso, NULL);
 | 
			
		||||
	HINSTANCE h, *p;
 | 
			
		||||
	char translated[DSO_MAX_TRANSLATED_SIZE];
 | 
			
		||||
	int len;
 | 
			
		||||
 | 
			
		||||
	if(filename == NULL)
 | 
			
		||||
	/* NB: This is a hideous hack, but I'm not yet sure what
 | 
			
		||||
	 * to replace it with. This attempts to convert any filename,
 | 
			
		||||
	 * that looks like it has no path information, into a
 | 
			
		||||
	 * translated form, e. "blah" -> "blah.dll" ... I'm more
 | 
			
		||||
	 * comfortable putting hacks into win32 code though ;-) */
 | 
			
		||||
	len = strlen(filename);
 | 
			
		||||
	if((dso->flags & DSO_FLAG_NAME_TRANSLATION) &&
 | 
			
		||||
			(len + 4 < DSO_MAX_TRANSLATED_SIZE) &&
 | 
			
		||||
			(strstr(filename, "/") == NULL) &&
 | 
			
		||||
			(strstr(filename, "\\") == NULL) &&
 | 
			
		||||
			(strstr(filename, ":") == NULL))
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_WIN32_LOAD,DSO_R_NO_FILENAME);
 | 
			
		||||
		goto err;
 | 
			
		||||
		sprintf(translated, "%s.dll", filename);
 | 
			
		||||
		h = LoadLibrary(translated);
 | 
			
		||||
		}
 | 
			
		||||
	h = LoadLibrary(filename);
 | 
			
		||||
	else
 | 
			
		||||
		h = LoadLibrary(filename);
 | 
			
		||||
	if(h == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_WIN32_LOAD,DSO_R_LOAD_FAILED);
 | 
			
		||||
		goto err;
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	p = (HINSTANCE *)OPENSSL_malloc(sizeof(HINSTANCE));
 | 
			
		||||
	if(p == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_WIN32_LOAD,ERR_R_MALLOC_FAILURE);
 | 
			
		||||
		goto err;
 | 
			
		||||
		FreeLibrary(h);
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	*p = h;
 | 
			
		||||
	if(!sk_push(dso->meth_data, (char *)p))
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_WIN32_LOAD,DSO_R_STACK_ERROR);
 | 
			
		||||
		goto err;
 | 
			
		||||
		}
 | 
			
		||||
	/* Success */
 | 
			
		||||
	dso->loaded_filename = filename;
 | 
			
		||||
	return(1);
 | 
			
		||||
err:
 | 
			
		||||
	/* Cleanup !*/
 | 
			
		||||
	if(filename != NULL)
 | 
			
		||||
		OPENSSL_free(filename);
 | 
			
		||||
	if(p != NULL)
 | 
			
		||||
		OPENSSL_free(p);
 | 
			
		||||
	if(h != NULL)
 | 
			
		||||
		FreeLibrary(h);
 | 
			
		||||
	return(0);
 | 
			
		||||
		OPENSSL_free(p);
 | 
			
		||||
		return(0);
 | 
			
		||||
		}
 | 
			
		||||
	return(1);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
static int win32_unload(DSO *dso)
 | 
			
		||||
@@ -245,32 +246,28 @@ static DSO_FUNC_TYPE win32_bind_func(DSO *dso, const char *symname)
 | 
			
		||||
	return((DSO_FUNC_TYPE)sym);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
static char *win32_name_converter(DSO *dso, const char *filename)
 | 
			
		||||
	{
 | 
			
		||||
	char *translated;
 | 
			
		||||
	int len, transform;
 | 
			
		||||
 | 
			
		||||
	len = strlen(filename);
 | 
			
		||||
	transform = ((strstr(filename, "/") == NULL) &&
 | 
			
		||||
			(strstr(filename, "\\") == NULL) &&
 | 
			
		||||
			(strstr(filename, ":") == NULL));
 | 
			
		||||
	if(transform)
 | 
			
		||||
		/* We will convert this to "%s.dll" */
 | 
			
		||||
		translated = OPENSSL_malloc(len + 5);
 | 
			
		||||
	else
 | 
			
		||||
		/* We will simply duplicate filename */
 | 
			
		||||
		translated = OPENSSL_malloc(len + 1);
 | 
			
		||||
	if(translated == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		DSOerr(DSO_F_WIN32_NAME_CONVERTER,
 | 
			
		||||
				DSO_R_NAME_TRANSLATION_FAILED); 
 | 
			
		||||
		return(NULL);   
 | 
			
		||||
		}
 | 
			
		||||
	if(transform)
 | 
			
		||||
		sprintf(translated, "%s.dll", filename);
 | 
			
		||||
	else
 | 
			
		||||
		sprintf(translated, "%s", filename);
 | 
			
		||||
	return(translated);
 | 
			
		||||
	}
 | 
			
		||||
static long win32_ctrl(DSO *dso, int cmd, long larg, void *parg)
 | 
			
		||||
        {
 | 
			
		||||
        if(dso == NULL)
 | 
			
		||||
                {
 | 
			
		||||
                DSOerr(DSO_F_WIN32_CTRL,ERR_R_PASSED_NULL_PARAMETER);
 | 
			
		||||
                return(-1);
 | 
			
		||||
                }
 | 
			
		||||
        switch(cmd)
 | 
			
		||||
                {
 | 
			
		||||
        case DSO_CTRL_GET_FLAGS:
 | 
			
		||||
                return dso->flags;
 | 
			
		||||
        case DSO_CTRL_SET_FLAGS:
 | 
			
		||||
                dso->flags = (int)larg;
 | 
			
		||||
                return(0);
 | 
			
		||||
        case DSO_CTRL_OR_FLAGS:
 | 
			
		||||
                dso->flags |= (int)larg;
 | 
			
		||||
                return(0);
 | 
			
		||||
        default:
 | 
			
		||||
                break;
 | 
			
		||||
                }
 | 
			
		||||
        DSOerr(DSO_F_WIN32_CTRL,DSO_R_UNKNOWN_COMMAND);
 | 
			
		||||
        return(-1);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
#endif /* WIN32 */
 | 
			
		||||
 
 | 
			
		||||
@@ -102,8 +102,7 @@ err_all.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
err_all.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs12.h
 | 
			
		||||
err_all.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
 | 
			
		||||
err_all.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
err_all.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
err_all.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
err_all.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
err_all.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
err_all.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
err_all.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
 
 | 
			
		||||
@@ -387,20 +387,18 @@ void ERR_put_error(int lib, int func, int reason, const char *file,
 | 
			
		||||
 | 
			
		||||
void ERR_clear_error(void)
 | 
			
		||||
	{
 | 
			
		||||
	int i;
 | 
			
		||||
	ERR_STATE *es;
 | 
			
		||||
 | 
			
		||||
	es=ERR_get_state();
 | 
			
		||||
 | 
			
		||||
#if 0
 | 
			
		||||
	/* hmm... is this needed */
 | 
			
		||||
	for (i=0; i<ERR_NUM_ERRORS; i++)
 | 
			
		||||
		{
 | 
			
		||||
		es->err_buffer[i]=0;
 | 
			
		||||
		err_clear_data(es,i);
 | 
			
		||||
		es->err_file[i]=NULL;
 | 
			
		||||
		es->err_line[i]= -1;
 | 
			
		||||
		err_clear_data(es,i);
 | 
			
		||||
		}
 | 
			
		||||
#endif
 | 
			
		||||
	es->top=es->bottom=0;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
@@ -462,7 +460,14 @@ static unsigned long get_error_values(int inc, const char **file, int *line,
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	if (data != NULL)
 | 
			
		||||
	if (data == NULL)
 | 
			
		||||
		{
 | 
			
		||||
		if (inc)
 | 
			
		||||
			{
 | 
			
		||||
			err_clear_data(es, i);
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	else
 | 
			
		||||
		{
 | 
			
		||||
		if (es->err_data[i] == NULL)
 | 
			
		||||
			{
 | 
			
		||||
@@ -747,8 +752,9 @@ void ERR_set_error_data(char *data, int flags)
 | 
			
		||||
	if (i == 0)
 | 
			
		||||
		i=ERR_NUM_ERRORS-1;
 | 
			
		||||
 | 
			
		||||
	err_clear_data(es,i);
 | 
			
		||||
	es->err_data[i]=data;
 | 
			
		||||
	es->err_data_flags[es->top]=flags;
 | 
			
		||||
	es->err_data_flags[i]=flags;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
void ERR_add_error_data(int num, ...)
 | 
			
		||||
@@ -757,7 +763,7 @@ void ERR_add_error_data(int num, ...)
 | 
			
		||||
	int i,n,s;
 | 
			
		||||
	char *str,*p,*a;
 | 
			
		||||
 | 
			
		||||
	s=64;
 | 
			
		||||
	s=80;
 | 
			
		||||
	str=OPENSSL_malloc(s+1);
 | 
			
		||||
	if (str == NULL) return;
 | 
			
		||||
	str[0]='\0';
 | 
			
		||||
 
 | 
			
		||||
@@ -24,7 +24,7 @@ APPS=
 | 
			
		||||
LIB=$(TOP)/libcrypto.a
 | 
			
		||||
LIBSRC= encode.c digest.c evp_enc.c evp_key.c \
 | 
			
		||||
	e_des.c e_bf.c e_idea.c e_des3.c \
 | 
			
		||||
	e_rc4.c e_rd.c names.c \
 | 
			
		||||
	e_rc4.c names.c \
 | 
			
		||||
	e_xcbc_d.c e_rc2.c e_cast.c e_rc5.c \
 | 
			
		||||
	m_null.c m_md2.c m_md4.c m_md5.c m_sha.c m_sha1.c \
 | 
			
		||||
	m_dss.c m_dss1.c m_mdc2.c m_ripemd.c \
 | 
			
		||||
@@ -35,7 +35,7 @@ LIBSRC= encode.c digest.c evp_enc.c evp_key.c \
 | 
			
		||||
 | 
			
		||||
LIBOBJ=	encode.o digest.o evp_enc.o evp_key.o \
 | 
			
		||||
	e_des.o e_bf.o e_idea.o e_des3.o \
 | 
			
		||||
	e_rc4.o e_rd.o names.o \
 | 
			
		||||
	e_rc4.o names.o \
 | 
			
		||||
	e_xcbc_d.o e_rc2.o e_cast.o e_rc5.o \
 | 
			
		||||
	m_null.o m_md2.o m_md4.o m_md5.o m_sha.o m_sha1.o \
 | 
			
		||||
	m_dss.o m_dss1.o m_mdc2.o m_ripemd.o \
 | 
			
		||||
@@ -111,8 +111,7 @@ bio_b64.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
bio_b64.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
bio_b64.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
bio_b64.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
bio_b64.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
bio_b64.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
bio_b64.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
bio_b64.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
bio_b64.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
bio_b64.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -129,8 +128,7 @@ bio_enc.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
bio_enc.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
bio_enc.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
bio_enc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
bio_enc.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
bio_enc.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
bio_enc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
bio_enc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
bio_enc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
bio_enc.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -147,8 +145,7 @@ bio_md.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
bio_md.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
bio_md.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
bio_md.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
bio_md.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
bio_md.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
bio_md.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
bio_md.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
bio_md.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
bio_md.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -166,11 +163,10 @@ bio_ok.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
bio_ok.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
bio_ok.o: ../cryptlib.h
 | 
			
		||||
c_all.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
c_all.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
c_all.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -184,8 +180,7 @@ c_all.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
c_all.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
c_all.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
c_all.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
c_all.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
c_all.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
c_all.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
c_all.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
c_all.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
c_all.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -203,8 +198,7 @@ c_allc.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
c_allc.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
c_allc.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
 | 
			
		||||
c_allc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
c_allc.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
c_allc.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
c_allc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
c_allc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
c_allc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
c_allc.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -223,8 +217,7 @@ c_alld.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
c_alld.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
c_alld.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
 | 
			
		||||
c_alld.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
c_alld.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
c_alld.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
c_alld.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
c_alld.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
c_alld.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
c_alld.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -242,8 +235,7 @@ digest.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
digest.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
digest.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
digest.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
digest.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
digest.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
digest.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
digest.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
digest.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
digest.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -260,8 +252,7 @@ e_bf.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
e_bf.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_bf.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
e_bf.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
e_bf.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_bf.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_bf.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_bf.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_bf.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_bf.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 | 
			
		||||
@@ -278,8 +269,7 @@ e_cast.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
e_cast.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_cast.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
e_cast.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
e_cast.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_cast.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_cast.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_cast.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_cast.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_cast.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 | 
			
		||||
@@ -296,8 +286,7 @@ e_des.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
e_des.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_des.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
e_des.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
e_des.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_des.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_des.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_des.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_des.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_des.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 | 
			
		||||
@@ -314,8 +303,7 @@ e_des3.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
e_des3.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_des3.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
e_des3.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
e_des3.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_des3.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_des3.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_des3.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_des3.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_des3.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 | 
			
		||||
@@ -332,8 +320,7 @@ e_idea.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
e_idea.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_idea.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
e_idea.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
e_idea.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_idea.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_idea.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_idea.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_idea.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_idea.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 | 
			
		||||
@@ -350,8 +337,7 @@ e_null.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
e_null.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_null.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
e_null.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
e_null.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_null.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_null.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_null.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_null.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_null.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -368,8 +354,7 @@ e_rc2.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
e_rc2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_rc2.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
e_rc2.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
e_rc2.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_rc2.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_rc2.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_rc2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_rc2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_rc2.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 | 
			
		||||
@@ -386,8 +371,7 @@ e_rc4.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
e_rc4.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_rc4.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
e_rc4.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
e_rc4.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_rc4.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_rc4.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_rc4.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_rc4.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_rc4.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -404,28 +388,10 @@ e_rc5.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
e_rc5.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_rc5.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
e_rc5.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
e_rc5.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_rc5.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_rc5.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_rc5.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_rc5.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_rc5.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 | 
			
		||||
e_rd.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
e_rd.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
e_rd.o: ../../include/openssl/cast.h ../../include/openssl/crypto.h
 | 
			
		||||
e_rd.o: ../../include/openssl/des.h ../../include/openssl/dh.h
 | 
			
		||||
e_rd.o: ../../include/openssl/dsa.h ../../include/openssl/e_os2.h
 | 
			
		||||
e_rd.o: ../../include/openssl/err.h ../../include/openssl/evp.h
 | 
			
		||||
e_rd.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
 | 
			
		||||
e_rd.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
 | 
			
		||||
e_rd.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
e_rd.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_rd.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
e_rd.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
e_rd.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_rd.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_rd.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_rd.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_rd.o: ../../include/openssl/symhacks.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -440,11 +406,10 @@ e_xcbc_d.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/opensslconf.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
e_xcbc_d.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
e_xcbc_d.o: ../cryptlib.h
 | 
			
		||||
encode.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
encode.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
encode.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -458,8 +423,7 @@ encode.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
encode.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
encode.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
encode.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
encode.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
encode.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
encode.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
encode.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
encode.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
encode.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -476,8 +440,7 @@ evp_enc.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
evp_enc.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
evp_enc.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
evp_enc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
evp_enc.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
evp_enc.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
evp_enc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
evp_enc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
evp_enc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
evp_enc.o: ../../include/openssl/symhacks.h ../cryptlib.h evp_locl.h
 | 
			
		||||
@@ -493,8 +456,7 @@ evp_err.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
evp_err.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
evp_err.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
evp_err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
evp_err.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
evp_err.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
evp_err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
evp_err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
evp_err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
evp_err.o: ../../include/openssl/symhacks.h
 | 
			
		||||
@@ -512,12 +474,11 @@ evp_key.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
evp_key.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
evp_key.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
evp_key.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
evp_key.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
evp_key.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
evp_key.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
evp_key.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
evp_key.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
evp_key.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
evp_key.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
evp_key.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
evp_key.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
evp_key.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
evp_key.o: ../cryptlib.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -531,8 +492,7 @@ evp_lib.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
evp_lib.o: ../../include/openssl/symhacks.h ../cryptlib.h
 | 
			
		||||
@@ -550,12 +510,11 @@ evp_pbe.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
evp_pbe.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
evp_pbe.o: ../cryptlib.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -571,12 +530,11 @@ evp_pkey.o: ../../include/openssl/opensslconf.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
evp_pkey.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
evp_pkey.o: ../cryptlib.h
 | 
			
		||||
m_dss.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
m_dss.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
m_dss.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -591,12 +549,11 @@ m_dss.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
m_dss.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
m_dss.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
m_dss.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
m_dss.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
m_dss.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_dss.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
m_dss.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
m_dss.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
m_dss.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
m_dss.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
m_dss.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
m_dss.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
m_dss.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
m_dss.o: ../cryptlib.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -611,12 +568,11 @@ m_dss1.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
m_dss1.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
m_dss1.o: ../cryptlib.h
 | 
			
		||||
m_md2.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
m_md2.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
m_md2.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -631,12 +587,11 @@ m_md2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
m_md2.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
m_md2.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
m_md2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
m_md2.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
m_md2.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_md2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
m_md2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
m_md2.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
m_md2.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
m_md2.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
m_md2.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
m_md2.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
m_md2.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
m_md2.o: ../cryptlib.h
 | 
			
		||||
m_md4.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
m_md4.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
m_md4.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -651,12 +606,11 @@ m_md4.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
m_md4.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
m_md4.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
m_md4.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
m_md4.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
m_md4.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_md4.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
m_md4.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
m_md4.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
m_md4.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
m_md4.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
m_md4.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
m_md4.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
m_md4.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
m_md4.o: ../cryptlib.h
 | 
			
		||||
m_md5.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
m_md5.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
m_md5.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -671,12 +625,11 @@ m_md5.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
m_md5.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
m_md5.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
m_md5.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
m_md5.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
m_md5.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_md5.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
m_md5.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
m_md5.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
m_md5.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
m_md5.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
m_md5.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
m_md5.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
m_md5.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
m_md5.o: ../cryptlib.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -691,12 +644,11 @@ m_mdc2.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
m_mdc2.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
m_mdc2.o: ../cryptlib.h
 | 
			
		||||
m_null.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
m_null.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
m_null.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -711,12 +663,11 @@ m_null.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
m_null.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
m_null.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
m_null.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
m_null.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
m_null.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_null.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
m_null.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
m_null.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
m_null.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
m_null.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
m_null.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
m_null.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
m_null.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
m_null.o: ../cryptlib.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -731,9 +682,7 @@ m_ripemd.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/opensslconf.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/rc5.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
m_ripemd.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -752,12 +701,11 @@ m_sha.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
m_sha.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
m_sha.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
m_sha.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
m_sha.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
m_sha.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_sha.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
m_sha.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
m_sha.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
m_sha.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
m_sha.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
m_sha.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
m_sha.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
m_sha.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
m_sha.o: ../cryptlib.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -772,12 +720,11 @@ m_sha1.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
m_sha1.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
m_sha1.o: ../cryptlib.h
 | 
			
		||||
names.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
names.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
names.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -792,12 +739,11 @@ names.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
names.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
names.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
names.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
names.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
names.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
names.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
names.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
names.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
names.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
names.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
names.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
names.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
names.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
names.o: ../cryptlib.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -812,12 +758,11 @@ p5_crpt.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
p5_crpt.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
p5_crpt.o: ../cryptlib.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -832,9 +777,7 @@ p5_crpt2.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/rc5.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p5_crpt2.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -853,8 +796,7 @@ p_dec.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
p_dec.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
p_dec.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
 | 
			
		||||
p_dec.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p_dec.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p_dec.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_dec.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_dec.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p_dec.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p_dec.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -873,8 +815,7 @@ p_enc.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
p_enc.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
p_enc.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
 | 
			
		||||
p_enc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p_enc.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p_enc.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_enc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_enc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p_enc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p_enc.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -893,8 +834,7 @@ p_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
p_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
p_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p_lib.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p_lib.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p_lib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -913,12 +853,11 @@ p_open.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
p_open.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
p_open.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
p_open.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
p_open.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p_open.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_open.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p_open.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p_open.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
p_open.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
p_open.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
p_open.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
p_open.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
p_open.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
p_open.o: ../cryptlib.h
 | 
			
		||||
p_seal.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
p_seal.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
p_seal.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -933,8 +872,7 @@ p_seal.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
p_seal.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
p_seal.o: ../../include/openssl/pkcs7.h ../../include/openssl/rand.h
 | 
			
		||||
p_seal.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p_seal.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p_seal.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_seal.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_seal.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p_seal.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p_seal.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -953,12 +891,11 @@ p_sign.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
p_sign.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
p_sign.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
p_sign.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
p_sign.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p_sign.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_sign.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p_sign.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
p_sign.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
p_sign.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
p_sign.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
p_sign.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
p_sign.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
p_sign.o: ../cryptlib.h
 | 
			
		||||
p_verify.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
p_verify.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
p_verify.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -973,9 +910,7 @@ p_verify.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
 | 
			
		||||
p_verify.o: ../../include/openssl/opensslconf.h
 | 
			
		||||
p_verify.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
 | 
			
		||||
p_verify.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
p_verify.o: ../../include/openssl/rc5.h
 | 
			
		||||
p_verify.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
p_verify.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_verify.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
p_verify.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
p_verify.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
p_verify.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
 
 | 
			
		||||
@@ -64,8 +64,6 @@
 | 
			
		||||
 | 
			
		||||
void OpenSSL_add_all_ciphers(void)
 | 
			
		||||
	{
 | 
			
		||||
	int i,j;
 | 
			
		||||
 | 
			
		||||
#ifndef NO_DES
 | 
			
		||||
	EVP_add_cipher(EVP_des_cfb());
 | 
			
		||||
	EVP_add_cipher(EVP_des_ede_cfb());
 | 
			
		||||
@@ -146,12 +144,6 @@ void OpenSSL_add_all_ciphers(void)
 | 
			
		||||
	EVP_add_cipher_alias(SN_rc5_cbc,"rc5");
 | 
			
		||||
	EVP_add_cipher_alias(SN_rc5_cbc,"RC5");
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifndef NO_RIJNDAEL
 | 
			
		||||
	for(i=0 ; i < 3 ; ++i)
 | 
			
		||||
	    for(j=0 ; j < 3 ; ++j)
 | 
			
		||||
		EVP_add_cipher(EVP_rijndael_ecb(i,j));
 | 
			
		||||
#endif
 | 
			
		||||
	PKCS12_PBE_add();
 | 
			
		||||
	PKCS5_PBE_add();
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,131 +0,0 @@
 | 
			
		||||
/* ====================================================================
 | 
			
		||||
 * Copyright (c) 2000 The OpenSSL Project.  All rights reserved.
 | 
			
		||||
 *
 | 
			
		||||
 * 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 above 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 acknowledgment:
 | 
			
		||||
 *    "This product includes software developed by the OpenSSL Project
 | 
			
		||||
 *    for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
 | 
			
		||||
 *
 | 
			
		||||
 * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
 | 
			
		||||
 *    endorse or promote products derived from this software without
 | 
			
		||||
 *    prior written permission. For written permission, please contact
 | 
			
		||||
 *    openssl-core@openssl.org.
 | 
			
		||||
 *
 | 
			
		||||
 * 5. Products derived from this software may not be called "OpenSSL"
 | 
			
		||||
 *    nor may "OpenSSL" appear in their names without prior written
 | 
			
		||||
 *    permission of the OpenSSL Project.
 | 
			
		||||
 *
 | 
			
		||||
 * 6. Redistributions of any form whatsoever must retain the following
 | 
			
		||||
 *    acknowledgment:
 | 
			
		||||
 *    "This product includes software developed by the OpenSSL Project
 | 
			
		||||
 *    for use in the OpenSSL Toolkit (http://www.openssl.org/)"
 | 
			
		||||
 *
 | 
			
		||||
 * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
 | 
			
		||||
 * EXPRESSED 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 OpenSSL PROJECT OR
 | 
			
		||||
 * ITS 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.
 | 
			
		||||
 * ====================================================================
 | 
			
		||||
 *
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include <openssl/evp.h>
 | 
			
		||||
#include <openssl/err.h>
 | 
			
		||||
#include <memory.h>
 | 
			
		||||
#include <assert.h>
 | 
			
		||||
 | 
			
		||||
static EVP_CIPHER rd_cipher[3][3];
 | 
			
		||||
 | 
			
		||||
static int anSizes[]={16,24,32};
 | 
			
		||||
static int anNIDs[3][3]=
 | 
			
		||||
    {
 | 
			
		||||
    { NID_rijndael_ecb_k128_b128,NID_rijndael_ecb_k192_b128,NID_rijndael_ecb_k256_b128 },
 | 
			
		||||
    { NID_rijndael_ecb_k128_b192,NID_rijndael_ecb_k192_b192,NID_rijndael_ecb_k256_b192 },
 | 
			
		||||
    { NID_rijndael_ecb_k128_b256,NID_rijndael_ecb_k192_b256,NID_rijndael_ecb_k256_b256 }
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
static int rd_init_ecb(EVP_CIPHER_CTX *ctx, const unsigned char *key,
 | 
			
		||||
		       const unsigned char *iv, int enc)
 | 
			
		||||
    {
 | 
			
		||||
    RIJNDAEL_KEY *k=&ctx->c.rijndael;
 | 
			
		||||
 | 
			
		||||
    k->enc=enc;
 | 
			
		||||
    k->rounds=ctx->cipher->key_len/4+6;
 | 
			
		||||
    rijndaelKeySched((const word8 (*)[4])key,k->keySched,k->rounds);
 | 
			
		||||
    if(!k->enc)
 | 
			
		||||
	rijndaelKeyEncToDec(k->keySched,k->rounds);
 | 
			
		||||
    memcpy(k->iv,iv,ctx->cipher->iv_len);
 | 
			
		||||
 | 
			
		||||
    return 1;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
static int rd_cipher_ecb(EVP_CIPHER_CTX *ctx, unsigned char *out,
 | 
			
		||||
			 const unsigned char *in, unsigned int inl)
 | 
			
		||||
    {
 | 
			
		||||
    while(inl > 0)
 | 
			
		||||
	{
 | 
			
		||||
	if(ctx->c.rijndael.enc)
 | 
			
		||||
	    rijndaelEncrypt(in,out,ctx->c.rijndael.keySched,
 | 
			
		||||
			    ctx->c.rijndael.rounds);
 | 
			
		||||
	else
 | 
			
		||||
	    rijndaelDecrypt(in,out,ctx->c.rijndael.keySched,
 | 
			
		||||
			    ctx->c.rijndael.rounds);
 | 
			
		||||
	inl-=16;
 | 
			
		||||
	in+=16;
 | 
			
		||||
	out+=16;
 | 
			
		||||
	}
 | 
			
		||||
    assert(inl == 0);
 | 
			
		||||
 | 
			
		||||
    return 1;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
EVP_CIPHER *EVP_rijndael_ecb(int nBlockLength,int nKeyLength)
 | 
			
		||||
    {
 | 
			
		||||
    EVP_CIPHER *c;
 | 
			
		||||
 | 
			
		||||
    if(nBlockLength < 0 || nBlockLength > 2)
 | 
			
		||||
	{
 | 
			
		||||
	EVPerr(EVP_F_EVP_RIJNDAEL,EVP_R_BAD_BLOCK_LENGTH);
 | 
			
		||||
	return NULL;
 | 
			
		||||
	}
 | 
			
		||||
    if(nKeyLength < 0 || nKeyLength > 2)
 | 
			
		||||
	{
 | 
			
		||||
	EVPerr(EVP_F_EVP_RIJNDAEL,EVP_R_BAD_KEY_LENGTH);
 | 
			
		||||
	return NULL;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
    c=&rd_cipher[nKeyLength][nBlockLength];
 | 
			
		||||
 | 
			
		||||
    memset(c,'\0',sizeof *c);
 | 
			
		||||
 | 
			
		||||
    c->nid=anNIDs[nBlockLength][nKeyLength];
 | 
			
		||||
    c->block_size=anSizes[nBlockLength];
 | 
			
		||||
    c->key_len=anSizes[nKeyLength];
 | 
			
		||||
    c->iv_len=16;
 | 
			
		||||
    c->flags=EVP_CIPH_ECB_MODE;
 | 
			
		||||
    c->init=rd_init_ecb;
 | 
			
		||||
    c->do_cipher=rd_cipher_ecb;
 | 
			
		||||
    c->ctx_size=sizeof(EVP_CIPHER_CTX)-sizeof((((EVP_CIPHER_CTX *)NULL)->c))+
 | 
			
		||||
		sizeof((((EVP_CIPHER_CTX *)NULL)->c.rijndael));
 | 
			
		||||
 | 
			
		||||
    return c;
 | 
			
		||||
    }
 | 
			
		||||
@@ -109,9 +109,6 @@
 | 
			
		||||
#ifndef NO_MDC2
 | 
			
		||||
#include <openssl/mdc2.h>
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef NO_RIJNDAEL
 | 
			
		||||
#include <openssl/rijndael.h>
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#define EVP_RC2_KEY_SIZE		16
 | 
			
		||||
#define EVP_RC4_KEY_SIZE		16
 | 
			
		||||
@@ -119,8 +116,8 @@
 | 
			
		||||
#define EVP_CAST5_KEY_SIZE		16
 | 
			
		||||
#define EVP_RC5_32_12_16_KEY_SIZE	16
 | 
			
		||||
#define EVP_MAX_MD_SIZE			(16+20) /* The SSLv3 md5+sha1 type */
 | 
			
		||||
#define EVP_MAX_KEY_LENGTH		32
 | 
			
		||||
#define EVP_MAX_IV_LENGTH		16
 | 
			
		||||
#define EVP_MAX_KEY_LENGTH		24
 | 
			
		||||
#define EVP_MAX_IV_LENGTH		8
 | 
			
		||||
 | 
			
		||||
#define PKCS5_SALT_LEN			8
 | 
			
		||||
/* Default PKCS#5 iteration count */
 | 
			
		||||
@@ -401,8 +398,7 @@ struct evp_cipher_ctx_st
 | 
			
		||||
 | 
			
		||||
	void *app_data;		/* application stuff */
 | 
			
		||||
	int key_len;		/* May change for variable length cipher */
 | 
			
		||||
	union
 | 
			
		||||
		{
 | 
			
		||||
	union	{
 | 
			
		||||
#ifndef NO_RC4
 | 
			
		||||
		struct
 | 
			
		||||
			{
 | 
			
		||||
@@ -429,27 +425,22 @@ struct evp_cipher_ctx_st
 | 
			
		||||
		IDEA_KEY_SCHEDULE idea_ks;/* key schedule */
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef NO_RC2
 | 
			
		||||
		struct
 | 
			
		||||
			{
 | 
			
		||||
		struct {
 | 
			
		||||
			int key_bits;	/* effective key bits */
 | 
			
		||||
			RC2_KEY ks;/* key schedule */
 | 
			
		||||
			} rc2;
 | 
			
		||||
		} rc2;
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef NO_RC5
 | 
			
		||||
		struct
 | 
			
		||||
			{
 | 
			
		||||
		struct {
 | 
			
		||||
			int rounds;	/* number of rounds */
 | 
			
		||||
			RC5_32_KEY ks;/* key schedule */
 | 
			
		||||
			} rc5;
 | 
			
		||||
		} rc5;
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef NO_BF
 | 
			
		||||
		BF_KEY bf_ks;/* key schedule */
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef NO_CAST
 | 
			
		||||
		CAST_KEY cast_ks;/* key schedule */
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef NO_RIJNDAEL
 | 
			
		||||
		RIJNDAEL_KEY rijndael;
 | 
			
		||||
#endif
 | 
			
		||||
		} c;
 | 
			
		||||
	};
 | 
			
		||||
@@ -702,10 +693,6 @@ EVP_CIPHER *EVP_rc5_32_12_16_ecb(void);
 | 
			
		||||
EVP_CIPHER *EVP_rc5_32_12_16_cfb(void);
 | 
			
		||||
EVP_CIPHER *EVP_rc5_32_12_16_ofb(void);
 | 
			
		||||
#endif
 | 
			
		||||
#ifndef NO_RIJNDAEL
 | 
			
		||||
EVP_CIPHER *EVP_rijndael_ecb(int nBlockLength,int nKeyLength);
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
void OpenSSL_add_all_algorithms(void);
 | 
			
		||||
void OpenSSL_add_all_ciphers(void);
 | 
			
		||||
void OpenSSL_add_all_digests(void);
 | 
			
		||||
@@ -813,7 +800,6 @@ void EVP_PBE_cleanup(void);
 | 
			
		||||
#define EVP_F_EVP_PKEY_GET1_DSA				 120
 | 
			
		||||
#define EVP_F_EVP_PKEY_GET1_RSA				 121
 | 
			
		||||
#define EVP_F_EVP_PKEY_NEW				 106
 | 
			
		||||
#define EVP_F_EVP_RIJNDAEL				 126
 | 
			
		||||
#define EVP_F_EVP_SIGNFINAL				 107
 | 
			
		||||
#define EVP_F_EVP_VERIFYFINAL				 108
 | 
			
		||||
#define EVP_F_PKCS5_PBE_KEYIVGEN			 117
 | 
			
		||||
@@ -822,9 +808,7 @@ void EVP_PBE_cleanup(void);
 | 
			
		||||
#define EVP_F_RC5_CTRL					 125
 | 
			
		||||
 | 
			
		||||
/* Reason codes. */
 | 
			
		||||
#define EVP_R_BAD_BLOCK_LENGTH				 136
 | 
			
		||||
#define EVP_R_BAD_DECRYPT				 100
 | 
			
		||||
#define EVP_R_BAD_KEY_LENGTH				 137
 | 
			
		||||
#define EVP_R_BN_DECODE_ERROR				 112
 | 
			
		||||
#define EVP_R_BN_PUBKEY_ERROR				 113
 | 
			
		||||
#define EVP_R_CIPHER_PARAMETER_ERROR			 122
 | 
			
		||||
 
 | 
			
		||||
@@ -85,7 +85,6 @@ static ERR_STRING_DATA EVP_str_functs[]=
 | 
			
		||||
{ERR_PACK(0,EVP_F_EVP_PKEY_GET1_DSA,0),	"EVP_PKEY_get1_DSA"},
 | 
			
		||||
{ERR_PACK(0,EVP_F_EVP_PKEY_GET1_RSA,0),	"EVP_PKEY_get1_RSA"},
 | 
			
		||||
{ERR_PACK(0,EVP_F_EVP_PKEY_NEW,0),	"EVP_PKEY_new"},
 | 
			
		||||
{ERR_PACK(0,EVP_F_EVP_RIJNDAEL,0),	"EVP_RIJNDAEL"},
 | 
			
		||||
{ERR_PACK(0,EVP_F_EVP_SIGNFINAL,0),	"EVP_SignFinal"},
 | 
			
		||||
{ERR_PACK(0,EVP_F_EVP_VERIFYFINAL,0),	"EVP_VerifyFinal"},
 | 
			
		||||
{ERR_PACK(0,EVP_F_PKCS5_PBE_KEYIVGEN,0),	"PKCS5_PBE_keyivgen"},
 | 
			
		||||
@@ -97,9 +96,7 @@ static ERR_STRING_DATA EVP_str_functs[]=
 | 
			
		||||
 | 
			
		||||
static ERR_STRING_DATA EVP_str_reasons[]=
 | 
			
		||||
	{
 | 
			
		||||
{EVP_R_BAD_BLOCK_LENGTH                  ,"bad block length"},
 | 
			
		||||
{EVP_R_BAD_DECRYPT                       ,"bad decrypt"},
 | 
			
		||||
{EVP_R_BAD_KEY_LENGTH                    ,"bad key length"},
 | 
			
		||||
{EVP_R_BN_DECODE_ERROR                   ,"bn decode error"},
 | 
			
		||||
{EVP_R_BN_PUBKEY_ERROR                   ,"bn pubkey error"},
 | 
			
		||||
{EVP_R_CIPHER_PARAMETER_ERROR            ,"cipher parameter error"},
 | 
			
		||||
 
 | 
			
		||||
@@ -91,8 +91,6 @@ hmac.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
 | 
			
		||||
hmac.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
hmac.o: ../../include/openssl/opensslv.h ../../include/openssl/rc2.h
 | 
			
		||||
hmac.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
hmac.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
hmac.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
hmac.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
hmac.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
hmac.o: ../../include/openssl/symhacks.h
 | 
			
		||||
hmac.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
hmac.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
hmac.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
 
 | 
			
		||||
@@ -136,11 +136,11 @@ static void mdc2_body(MDC2_CTX *c, const unsigned char *in, unsigned int len)
 | 
			
		||||
 | 
			
		||||
		des_set_odd_parity(&c->h);
 | 
			
		||||
		des_set_key_unchecked(&c->h,k);
 | 
			
		||||
		des_encrypt(d,k,1);
 | 
			
		||||
		des_encrypt1(d,k,1);
 | 
			
		||||
 | 
			
		||||
		des_set_odd_parity(&c->hh);
 | 
			
		||||
		des_set_key_unchecked(&c->hh,k);
 | 
			
		||||
		des_encrypt(dd,k,1);
 | 
			
		||||
		des_encrypt1(dd,k,1);
 | 
			
		||||
 | 
			
		||||
		ttin0=tin0^dd[0];
 | 
			
		||||
		ttin1=tin1^dd[1];
 | 
			
		||||
 
 | 
			
		||||
@@ -81,7 +81,8 @@ static int mh_mode=CRYPTO_MEM_CHECK_OFF;
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
static unsigned long order = 0; /* number of memory requests */
 | 
			
		||||
static LHASH *mh=NULL; /* hash-table of memory requests (address as key) */
 | 
			
		||||
static LHASH *mh=NULL; /* hash-table of memory requests (address as key);
 | 
			
		||||
                        * access requires MALLOC2 lock */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
typedef struct app_mem_info_st
 | 
			
		||||
@@ -103,7 +104,8 @@ typedef struct app_mem_info_st
 | 
			
		||||
 | 
			
		||||
static LHASH *amih=NULL; /* hash-table with those app_mem_info_st's
 | 
			
		||||
                          * that are at the top of their thread's stack
 | 
			
		||||
                          * (with `thread' as key) */
 | 
			
		||||
                          * (with `thread' as key);
 | 
			
		||||
                          * access requires MALLOC2 lock */
 | 
			
		||||
 | 
			
		||||
typedef struct mem_st
 | 
			
		||||
/* memory-block description */
 | 
			
		||||
@@ -128,7 +130,15 @@ static long options =             /* extra information to be recorded */
 | 
			
		||||
	0;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
static unsigned long disabling_thread = 0;
 | 
			
		||||
static unsigned int num_disable = 0; /* num_disable > 0
 | 
			
		||||
                                      *     iff
 | 
			
		||||
                                      * mh_mode == CRYPTO_MEM_CHECK_ON (w/o ..._ENABLE)
 | 
			
		||||
                                      */
 | 
			
		||||
static unsigned long disabling_thread = 0; /* Valid iff num_disable > 0.
 | 
			
		||||
                                            * CRYPTO_LOCK_MALLOC2 is locked
 | 
			
		||||
                                            * exactly in this case (by the
 | 
			
		||||
                                            * thread named in disabling_thread).
 | 
			
		||||
                                            */
 | 
			
		||||
 | 
			
		||||
int CRYPTO_mem_ctrl(int mode)
 | 
			
		||||
	{
 | 
			
		||||
@@ -137,22 +147,23 @@ int CRYPTO_mem_ctrl(int mode)
 | 
			
		||||
	CRYPTO_w_lock(CRYPTO_LOCK_MALLOC);
 | 
			
		||||
	switch (mode)
 | 
			
		||||
		{
 | 
			
		||||
	/* for applications: */
 | 
			
		||||
	/* for applications (not to be called while multiple threads
 | 
			
		||||
	 * use the library): */
 | 
			
		||||
	case CRYPTO_MEM_CHECK_ON: /* aka MemCheck_start() */
 | 
			
		||||
		mh_mode = CRYPTO_MEM_CHECK_ON|CRYPTO_MEM_CHECK_ENABLE;
 | 
			
		||||
		disabling_thread = 0;
 | 
			
		||||
		num_disable = 0;
 | 
			
		||||
		break;
 | 
			
		||||
	case CRYPTO_MEM_CHECK_OFF: /* aka MemCheck_stop() */
 | 
			
		||||
		mh_mode = 0;
 | 
			
		||||
		disabling_thread = 0;
 | 
			
		||||
		num_disable = 0; /* should be true *before* MemCheck_stop is used,
 | 
			
		||||
		                    or there'll be a lot of confusion */
 | 
			
		||||
		break;
 | 
			
		||||
 | 
			
		||||
	/* switch off temporarily (for library-internal use): */
 | 
			
		||||
	case CRYPTO_MEM_CHECK_DISABLE: /* aka MemCheck_off() */
 | 
			
		||||
		if (mh_mode & CRYPTO_MEM_CHECK_ON)
 | 
			
		||||
			{
 | 
			
		||||
			mh_mode&= ~CRYPTO_MEM_CHECK_ENABLE;
 | 
			
		||||
			if (disabling_thread != CRYPTO_thread_id()) /* otherwise we already have the MALLOC2 lock */
 | 
			
		||||
			if (!num_disable || (disabling_thread != CRYPTO_thread_id())) /* otherwise we already have the MALLOC2 lock */
 | 
			
		||||
				{
 | 
			
		||||
				/* Long-time lock CRYPTO_LOCK_MALLOC2 must not be claimed while
 | 
			
		||||
				 * we're holding CRYPTO_LOCK_MALLOC, or we'll deadlock if
 | 
			
		||||
@@ -169,18 +180,23 @@ int CRYPTO_mem_ctrl(int mode)
 | 
			
		||||
				 * OpenSSL threads. */
 | 
			
		||||
				CRYPTO_w_lock(CRYPTO_LOCK_MALLOC2);
 | 
			
		||||
				CRYPTO_w_lock(CRYPTO_LOCK_MALLOC);
 | 
			
		||||
				mh_mode &= ~CRYPTO_MEM_CHECK_ENABLE;
 | 
			
		||||
				disabling_thread=CRYPTO_thread_id();
 | 
			
		||||
				}
 | 
			
		||||
			num_disable++;
 | 
			
		||||
			}
 | 
			
		||||
		break;
 | 
			
		||||
	case CRYPTO_MEM_CHECK_ENABLE: /* aka MemCheck_on() */
 | 
			
		||||
		if (mh_mode & CRYPTO_MEM_CHECK_ON)
 | 
			
		||||
			{
 | 
			
		||||
			mh_mode|=CRYPTO_MEM_CHECK_ENABLE;
 | 
			
		||||
			if (disabling_thread != 0)
 | 
			
		||||
			if (num_disable) /* always true, or something is going wrong */
 | 
			
		||||
				{
 | 
			
		||||
				disabling_thread=0;
 | 
			
		||||
				CRYPTO_w_unlock(CRYPTO_LOCK_MALLOC2);
 | 
			
		||||
				num_disable--;
 | 
			
		||||
				if (num_disable == 0)
 | 
			
		||||
					{
 | 
			
		||||
					mh_mode|=CRYPTO_MEM_CHECK_ENABLE;
 | 
			
		||||
					CRYPTO_w_unlock(CRYPTO_LOCK_MALLOC2);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		break;
 | 
			
		||||
@@ -198,12 +214,12 @@ int CRYPTO_is_mem_check_on(void)
 | 
			
		||||
 | 
			
		||||
	if (mh_mode & CRYPTO_MEM_CHECK_ON)
 | 
			
		||||
		{
 | 
			
		||||
		CRYPTO_w_lock(CRYPTO_LOCK_MALLOC);
 | 
			
		||||
		CRYPTO_r_lock(CRYPTO_LOCK_MALLOC);
 | 
			
		||||
 | 
			
		||||
		ret = (mh_mode & CRYPTO_MEM_CHECK_ENABLE)
 | 
			
		||||
			&& disabling_thread != CRYPTO_thread_id();
 | 
			
		||||
			|| (disabling_thread != CRYPTO_thread_id());
 | 
			
		||||
 | 
			
		||||
		CRYPTO_w_unlock(CRYPTO_LOCK_MALLOC);
 | 
			
		||||
		CRYPTO_r_unlock(CRYPTO_LOCK_MALLOC);
 | 
			
		||||
		}
 | 
			
		||||
	return(ret);
 | 
			
		||||
	}	
 | 
			
		||||
@@ -293,7 +309,7 @@ int CRYPTO_push_info_(const char *info, const char *file, int line)
 | 
			
		||||
 | 
			
		||||
	if (is_MemCheck_on())
 | 
			
		||||
		{
 | 
			
		||||
		MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
		MemCheck_off(); /* obtain MALLOC2 lock */
 | 
			
		||||
 | 
			
		||||
		if ((ami = (APP_INFO *)OPENSSL_malloc(sizeof(APP_INFO))) == NULL)
 | 
			
		||||
			{
 | 
			
		||||
@@ -330,7 +346,7 @@ int CRYPTO_push_info_(const char *info, const char *file, int line)
 | 
			
		||||
			ami->next=amim;
 | 
			
		||||
			}
 | 
			
		||||
 err:
 | 
			
		||||
		MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
		MemCheck_on(); /* release MALLOC2 lock */
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
	return(ret);
 | 
			
		||||
@@ -342,11 +358,11 @@ int CRYPTO_pop_info(void)
 | 
			
		||||
 | 
			
		||||
	if (is_MemCheck_on()) /* _must_ be true, or something went severely wrong */
 | 
			
		||||
		{
 | 
			
		||||
		MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
		MemCheck_off(); /* obtain MALLOC2 lock */
 | 
			
		||||
 | 
			
		||||
		ret=(pop_info() != NULL);
 | 
			
		||||
 | 
			
		||||
		MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
		MemCheck_on(); /* release MALLOC2 lock */
 | 
			
		||||
		}
 | 
			
		||||
	return(ret);
 | 
			
		||||
	}
 | 
			
		||||
@@ -357,12 +373,12 @@ int CRYPTO_remove_all_info(void)
 | 
			
		||||
 | 
			
		||||
	if (is_MemCheck_on()) /* _must_ be true */
 | 
			
		||||
		{
 | 
			
		||||
		MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
		MemCheck_off(); /* obtain MALLOC2 lock */
 | 
			
		||||
 | 
			
		||||
		while(pop_info() != NULL)
 | 
			
		||||
			ret++;
 | 
			
		||||
 | 
			
		||||
		MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
		MemCheck_on(); /* release MALLOC2 lock */
 | 
			
		||||
		}
 | 
			
		||||
	return(ret);
 | 
			
		||||
	}
 | 
			
		||||
@@ -385,11 +401,12 @@ void CRYPTO_dbg_malloc(void *addr, int num, const char *file, int line,
 | 
			
		||||
 | 
			
		||||
		if (is_MemCheck_on())
 | 
			
		||||
			{
 | 
			
		||||
			MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
			MemCheck_off(); /* make sure we hold MALLOC2 lock */
 | 
			
		||||
			if ((m=(MEM *)OPENSSL_malloc(sizeof(MEM))) == NULL)
 | 
			
		||||
				{
 | 
			
		||||
				OPENSSL_free(addr);
 | 
			
		||||
				MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
				MemCheck_on(); /* release MALLOC2 lock
 | 
			
		||||
				                * if num_disabled drops to 0 */
 | 
			
		||||
				return;
 | 
			
		||||
				}
 | 
			
		||||
			if (mh == NULL)
 | 
			
		||||
@@ -448,7 +465,8 @@ void CRYPTO_dbg_malloc(void *addr, int num, const char *file, int line,
 | 
			
		||||
				OPENSSL_free(mm);
 | 
			
		||||
				}
 | 
			
		||||
		err:
 | 
			
		||||
			MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
			MemCheck_on(); /* release MALLOC2 lock
 | 
			
		||||
			                * if num_disabled drops to 0 */
 | 
			
		||||
			}
 | 
			
		||||
		break;
 | 
			
		||||
		}
 | 
			
		||||
@@ -467,7 +485,7 @@ void CRYPTO_dbg_free(void *addr, int before_p)
 | 
			
		||||
 | 
			
		||||
		if (is_MemCheck_on() && (mh != NULL))
 | 
			
		||||
			{
 | 
			
		||||
			MemCheck_off();
 | 
			
		||||
			MemCheck_off(); /* make sure we hold MALLOC2 lock */
 | 
			
		||||
 | 
			
		||||
			m.addr=addr;
 | 
			
		||||
			mp=(MEM *)lh_delete(mh,(char *)&m);
 | 
			
		||||
@@ -484,7 +502,8 @@ void CRYPTO_dbg_free(void *addr, int before_p)
 | 
			
		||||
				OPENSSL_free(mp);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
			MemCheck_on(); /* release MALLOC2 lock
 | 
			
		||||
			                * if num_disabled drops to 0 */
 | 
			
		||||
			}
 | 
			
		||||
		break;
 | 
			
		||||
	case 1:
 | 
			
		||||
@@ -518,7 +537,7 @@ void CRYPTO_dbg_realloc(void *addr1, void *addr2, int num,
 | 
			
		||||
 | 
			
		||||
		if (is_MemCheck_on())
 | 
			
		||||
			{
 | 
			
		||||
			MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
			MemCheck_off(); /* make sure we hold MALLOC2 lock */
 | 
			
		||||
 | 
			
		||||
			m.addr=addr1;
 | 
			
		||||
			mp=(MEM *)lh_delete(mh,(char *)&m);
 | 
			
		||||
@@ -535,7 +554,8 @@ void CRYPTO_dbg_realloc(void *addr1, void *addr2, int num,
 | 
			
		||||
				lh_insert(mh,(char *)mp);
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
			MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
			MemCheck_on(); /* release MALLOC2 lock
 | 
			
		||||
			                * if num_disabled drops to 0 */
 | 
			
		||||
			}
 | 
			
		||||
		break;
 | 
			
		||||
		}
 | 
			
		||||
@@ -642,10 +662,12 @@ void CRYPTO_mem_leaks(BIO *b)
 | 
			
		||||
 | 
			
		||||
	if (mh == NULL && amih == NULL)
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	MemCheck_off(); /* obtain MALLOC2 lock */
 | 
			
		||||
 | 
			
		||||
	ml.bio=b;
 | 
			
		||||
	ml.bytes=0;
 | 
			
		||||
	ml.chunks=0;
 | 
			
		||||
	MemCheck_off(); /* obtains CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
	if (mh != NULL)
 | 
			
		||||
		lh_doall_arg(mh,(void (*)())print_leak,(char *)&ml);
 | 
			
		||||
	if (ml.chunks != 0)
 | 
			
		||||
@@ -671,7 +693,15 @@ void CRYPTO_mem_leaks(BIO *b)
 | 
			
		||||
		 * void_fn_to_char kludge in CRYPTO_mem_leaks_cb.
 | 
			
		||||
		 * Otherwise the code police will come and get us.)
 | 
			
		||||
		 */
 | 
			
		||||
		int old_mh_mode;
 | 
			
		||||
 | 
			
		||||
		CRYPTO_w_lock(CRYPTO_LOCK_MALLOC);
 | 
			
		||||
 | 
			
		||||
		/* avoid deadlock when lh_free() uses CRYPTO_dbg_free(),
 | 
			
		||||
		 * which uses CRYPTO_is_mem_check_on */
 | 
			
		||||
		old_mh_mode = mh_mode;
 | 
			
		||||
		mh_mode = CRYPTO_MEM_CHECK_OFF;
 | 
			
		||||
 | 
			
		||||
		if (mh != NULL)
 | 
			
		||||
			{
 | 
			
		||||
			lh_free(mh);
 | 
			
		||||
@@ -685,15 +715,11 @@ void CRYPTO_mem_leaks(BIO *b)
 | 
			
		||||
				amih = NULL;
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		mh_mode = old_mh_mode;
 | 
			
		||||
		CRYPTO_w_unlock(CRYPTO_LOCK_MALLOC);
 | 
			
		||||
		}
 | 
			
		||||
	MemCheck_on(); /* releases CRYPTO_LOCK_MALLOC2 */
 | 
			
		||||
 | 
			
		||||
#if 0
 | 
			
		||||
	lh_stats_bio(mh,b);
 | 
			
		||||
	lh_node_stats_bio(mh,b);
 | 
			
		||||
	lh_node_usage_stats_bio(mh,b);
 | 
			
		||||
#endif
 | 
			
		||||
	MemCheck_on(); /* release MALLOC2 lock */
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
#ifndef NO_FP_API
 | 
			
		||||
 
 | 
			
		||||
@@ -43,12 +43,6 @@ lib:	$(LIBOBJ)
 | 
			
		||||
	- $(RANLIB) $(LIB)
 | 
			
		||||
	@touch lib
 | 
			
		||||
 | 
			
		||||
obj_dat.h: objects.h objects.txt obj_mac.h
 | 
			
		||||
	perl obj_dat.pl obj_mac.h obj_dat.h
 | 
			
		||||
 | 
			
		||||
obj_mac.h: objects.txt obj_mac.num
 | 
			
		||||
	perl objects.pl objects.txt obj_mac.num obj_mac.h
 | 
			
		||||
 | 
			
		||||
files:
 | 
			
		||||
	$(PERL) $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -61,9 +61,9 @@
 | 
			
		||||
 * perl obj_dat.pl objects.h obj_dat.h
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#define NUM_NID 405
 | 
			
		||||
#define NUM_SN 401
 | 
			
		||||
#define NUM_LN 401
 | 
			
		||||
#define NUM_NID 393
 | 
			
		||||
#define NUM_SN 392
 | 
			
		||||
#define NUM_LN 392
 | 
			
		||||
#define NUM_OBJ 366
 | 
			
		||||
 | 
			
		||||
static unsigned char lvalues[2896]={
 | 
			
		||||
@@ -1045,27 +1045,6 @@ static ASN1_OBJECT nid_objs[NUM_NID]={
 | 
			
		||||
{"dcobject","dcObject",NID_dcObject,3,&(lvalues[2872]),0},
 | 
			
		||||
{"DC","domainComponent",NID_domainComponent,10,&(lvalues[2875]),0},
 | 
			
		||||
{"domain","Domain",NID_Domain,10,&(lvalues[2885]),0},
 | 
			
		||||
{NULL,NULL,NID_undef,0,NULL},
 | 
			
		||||
{NULL,NULL,NID_undef,0,NULL},
 | 
			
		||||
{NULL,NULL,NID_undef,0,NULL},
 | 
			
		||||
{"RIJNDAEL-ECB-K128-B128","rijndael-ecb-k128-b128",
 | 
			
		||||
	NID_rijndael_ecb_k128_b128,0,NULL},
 | 
			
		||||
{"RIJNDAEL-ECB-K192-B128","rijndael-ecb-k192-b128",
 | 
			
		||||
	NID_rijndael_ecb_k192_b128,0,NULL},
 | 
			
		||||
{"RIJNDAEL-ECB-K256-B128","rijndael-ecb-k256-b128",
 | 
			
		||||
	NID_rijndael_ecb_k256_b128,0,NULL},
 | 
			
		||||
{"RIJNDAEL-ECB-K128-B192","rijndael-ecb-k128-b192",
 | 
			
		||||
	NID_rijndael_ecb_k128_b192,0,NULL},
 | 
			
		||||
{"RIJNDAEL-ECB-K192-B192","rijndael-ecb-k192-b192",
 | 
			
		||||
	NID_rijndael_ecb_k192_b192,0,NULL},
 | 
			
		||||
{"RIJNDAEL-ECB-K256-B192","rijndael-ecb-k256-b192",
 | 
			
		||||
	NID_rijndael_ecb_k256_b192,0,NULL},
 | 
			
		||||
{"RIJNDAEL-ECB-K128-B256","rijndael-ecb-k128-b256",
 | 
			
		||||
	NID_rijndael_ecb_k128_b256,0,NULL},
 | 
			
		||||
{"RIJNDAEL-ECB-K192-B256","rijndael-ecb-k192-b256",
 | 
			
		||||
	NID_rijndael_ecb_k192_b256,0,NULL},
 | 
			
		||||
{"RIJNDAEL-ECB-K256-B256","rijndael-ecb-k256-b256",
 | 
			
		||||
	NID_rijndael_ecb_k256_b256,0,NULL},
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static ASN1_OBJECT *sn_objs[NUM_SN]={
 | 
			
		||||
@@ -1155,15 +1134,6 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={
 | 
			
		||||
&(nid_objs[122]),/* "RC5-CFB" */
 | 
			
		||||
&(nid_objs[121]),/* "RC5-ECB" */
 | 
			
		||||
&(nid_objs[123]),/* "RC5-OFB" */
 | 
			
		||||
&(nid_objs[396]),/* "RIJNDAEL-ECB-K128-B128" */
 | 
			
		||||
&(nid_objs[399]),/* "RIJNDAEL-ECB-K128-B192" */
 | 
			
		||||
&(nid_objs[402]),/* "RIJNDAEL-ECB-K128-B256" */
 | 
			
		||||
&(nid_objs[397]),/* "RIJNDAEL-ECB-K192-B128" */
 | 
			
		||||
&(nid_objs[400]),/* "RIJNDAEL-ECB-K192-B192" */
 | 
			
		||||
&(nid_objs[403]),/* "RIJNDAEL-ECB-K192-B256" */
 | 
			
		||||
&(nid_objs[398]),/* "RIJNDAEL-ECB-K256-B128" */
 | 
			
		||||
&(nid_objs[401]),/* "RIJNDAEL-ECB-K256-B192" */
 | 
			
		||||
&(nid_objs[404]),/* "RIJNDAEL-ECB-K256-B256" */
 | 
			
		||||
&(nid_objs[117]),/* "RIPEMD160" */
 | 
			
		||||
&(nid_objs[124]),/* "RLE" */
 | 
			
		||||
&(nid_objs[19]),/* "RSA" */
 | 
			
		||||
@@ -1834,15 +1804,6 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={
 | 
			
		||||
&(nid_objs[122]),/* "rc5-cfb" */
 | 
			
		||||
&(nid_objs[121]),/* "rc5-ecb" */
 | 
			
		||||
&(nid_objs[123]),/* "rc5-ofb" */
 | 
			
		||||
&(nid_objs[396]),/* "rijndael-ecb-k128-b128" */
 | 
			
		||||
&(nid_objs[399]),/* "rijndael-ecb-k128-b192" */
 | 
			
		||||
&(nid_objs[402]),/* "rijndael-ecb-k128-b256" */
 | 
			
		||||
&(nid_objs[397]),/* "rijndael-ecb-k192-b128" */
 | 
			
		||||
&(nid_objs[400]),/* "rijndael-ecb-k192-b192" */
 | 
			
		||||
&(nid_objs[403]),/* "rijndael-ecb-k192-b256" */
 | 
			
		||||
&(nid_objs[398]),/* "rijndael-ecb-k256-b128" */
 | 
			
		||||
&(nid_objs[401]),/* "rijndael-ecb-k256-b192" */
 | 
			
		||||
&(nid_objs[404]),/* "rijndael-ecb-k256-b256" */
 | 
			
		||||
&(nid_objs[117]),/* "ripemd160" */
 | 
			
		||||
&(nid_objs[119]),/* "ripemd160WithRSA" */
 | 
			
		||||
&(nid_objs[19]),/* "rsa" */
 | 
			
		||||
 
 | 
			
		||||
@@ -1796,39 +1796,3 @@
 | 
			
		||||
#define NID_zlib_compression		125
 | 
			
		||||
#define OBJ_zlib_compression		1L,1L,1L,1L,666L,2L
 | 
			
		||||
 | 
			
		||||
#define SN_rijndael_ecb_k128_b128		"RIJNDAEL-ECB-K128-B128"
 | 
			
		||||
#define LN_rijndael_ecb_k128_b128		"rijndael-ecb-k128-b128"
 | 
			
		||||
#define NID_rijndael_ecb_k128_b128		396
 | 
			
		||||
 | 
			
		||||
#define SN_rijndael_ecb_k192_b128		"RIJNDAEL-ECB-K192-B128"
 | 
			
		||||
#define LN_rijndael_ecb_k192_b128		"rijndael-ecb-k192-b128"
 | 
			
		||||
#define NID_rijndael_ecb_k192_b128		397
 | 
			
		||||
 | 
			
		||||
#define SN_rijndael_ecb_k256_b128		"RIJNDAEL-ECB-K256-B128"
 | 
			
		||||
#define LN_rijndael_ecb_k256_b128		"rijndael-ecb-k256-b128"
 | 
			
		||||
#define NID_rijndael_ecb_k256_b128		398
 | 
			
		||||
 | 
			
		||||
#define SN_rijndael_ecb_k128_b192		"RIJNDAEL-ECB-K128-B192"
 | 
			
		||||
#define LN_rijndael_ecb_k128_b192		"rijndael-ecb-k128-b192"
 | 
			
		||||
#define NID_rijndael_ecb_k128_b192		399
 | 
			
		||||
 | 
			
		||||
#define SN_rijndael_ecb_k192_b192		"RIJNDAEL-ECB-K192-B192"
 | 
			
		||||
#define LN_rijndael_ecb_k192_b192		"rijndael-ecb-k192-b192"
 | 
			
		||||
#define NID_rijndael_ecb_k192_b192		400
 | 
			
		||||
 | 
			
		||||
#define SN_rijndael_ecb_k256_b192		"RIJNDAEL-ECB-K256-B192"
 | 
			
		||||
#define LN_rijndael_ecb_k256_b192		"rijndael-ecb-k256-b192"
 | 
			
		||||
#define NID_rijndael_ecb_k256_b192		401
 | 
			
		||||
 | 
			
		||||
#define SN_rijndael_ecb_k128_b256		"RIJNDAEL-ECB-K128-B256"
 | 
			
		||||
#define LN_rijndael_ecb_k128_b256		"rijndael-ecb-k128-b256"
 | 
			
		||||
#define NID_rijndael_ecb_k128_b256		402
 | 
			
		||||
 | 
			
		||||
#define SN_rijndael_ecb_k192_b256		"RIJNDAEL-ECB-K192-B256"
 | 
			
		||||
#define LN_rijndael_ecb_k192_b256		"rijndael-ecb-k192-b256"
 | 
			
		||||
#define NID_rijndael_ecb_k192_b256		403
 | 
			
		||||
 | 
			
		||||
#define SN_rijndael_ecb_k256_b256		"RIJNDAEL-ECB-K256-B256"
 | 
			
		||||
#define LN_rijndael_ecb_k256_b256		"rijndael-ecb-k256-b256"
 | 
			
		||||
#define NID_rijndael_ecb_k256_b256		404
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -390,15 +390,3 @@ Enterprises		389
 | 
			
		||||
dcObject		390
 | 
			
		||||
domainComponent		391
 | 
			
		||||
Domain		392
 | 
			
		||||
ld_ce		393
 | 
			
		||||
rd_ecb		394
 | 
			
		||||
rijndael_ecb		395
 | 
			
		||||
rijndael_ecb_k128_b128		396
 | 
			
		||||
rijndael_ecb_k192_b128		397
 | 
			
		||||
rijndael_ecb_k256_b128		398
 | 
			
		||||
rijndael_ecb_k128_b192		399
 | 
			
		||||
rijndael_ecb_k192_b192		400
 | 
			
		||||
rijndael_ecb_k256_b192		401
 | 
			
		||||
rijndael_ecb_k128_b256		402
 | 
			
		||||
rijndael_ecb_k192_b256		403
 | 
			
		||||
rijndael_ecb_k256_b256		404
 | 
			
		||||
 
 | 
			
		||||
@@ -591,13 +591,3 @@ enterprises 1466 344	: dcobject		: dcObject
 | 
			
		||||
!Cname zlib-compression
 | 
			
		||||
1 1 1 1 666 2		: ZLIB			: zlib compression
 | 
			
		||||
 | 
			
		||||
# Rijndael
 | 
			
		||||
			: RIJNDAEL-ECB-K128-B128: rijndael-ecb-k128-b128
 | 
			
		||||
			: RIJNDAEL-ECB-K192-B128: rijndael-ecb-k192-b128
 | 
			
		||||
			: RIJNDAEL-ECB-K256-B128: rijndael-ecb-k256-b128
 | 
			
		||||
			: RIJNDAEL-ECB-K128-B192: rijndael-ecb-k128-b192
 | 
			
		||||
			: RIJNDAEL-ECB-K192-B192: rijndael-ecb-k192-b192
 | 
			
		||||
			: RIJNDAEL-ECB-K256-B192: rijndael-ecb-k256-b192
 | 
			
		||||
			: RIJNDAEL-ECB-K128-B256: rijndael-ecb-k128-b256
 | 
			
		||||
			: RIJNDAEL-ECB-K192-B256: rijndael-ecb-k192-b256
 | 
			
		||||
			: RIJNDAEL-ECB-K256-B256: rijndael-ecb-k256-b256
 | 
			
		||||
 
 | 
			
		||||
@@ -25,8 +25,8 @@
 | 
			
		||||
 * (Prior to 0.9.5a beta1, a different scheme was used: MMNNFFRBB for
 | 
			
		||||
 *  major minor fix final patch/beta)
 | 
			
		||||
 */
 | 
			
		||||
#define OPENSSL_VERSION_NUMBER	0x00907000L
 | 
			
		||||
#define OPENSSL_VERSION_TEXT	"OpenSSL 0.9.7-dev 24 Sep 2000"
 | 
			
		||||
#define OPENSSL_VERSION_NUMBER	0x00906013L
 | 
			
		||||
#define OPENSSL_VERSION_TEXT	"OpenSSL 0.9.6a-beta3 30 Mar 2001"
 | 
			
		||||
#define OPENSSL_VERSION_PTEXT	" part of " OPENSSL_VERSION_TEXT
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -79,7 +79,7 @@
 | 
			
		||||
 * should only keep the versions that are binary compatible with the current.
 | 
			
		||||
 */
 | 
			
		||||
#define SHLIB_VERSION_HISTORY ""
 | 
			
		||||
#define SHLIB_VERSION_NUMBER "0.9.7"
 | 
			
		||||
#define SHLIB_VERSION_NUMBER "0.9.6"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#endif /* HEADER_OPENSSLV_H */
 | 
			
		||||
 
 | 
			
		||||
@@ -95,12 +95,11 @@ pem_all.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
 | 
			
		||||
pem_all.o: ../../include/openssl/pem.h ../../include/openssl/pem2.h
 | 
			
		||||
pem_all.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
 | 
			
		||||
pem_all.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
pem_all.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
pem_all.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
pem_all.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
pem_all.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
pem_all.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
pem_all.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
pem_all.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
pem_all.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
pem_all.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
pem_all.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
pem_all.o: ../cryptlib.h
 | 
			
		||||
pem_err.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
pem_err.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
pem_err.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -115,8 +114,7 @@ pem_err.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 | 
			
		||||
pem_err.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 | 
			
		||||
pem_err.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
 | 
			
		||||
pem_err.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
pem_err.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
pem_err.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
pem_err.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
pem_err.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
pem_err.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
pem_err.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -136,9 +134,7 @@ pem_info.o: ../../include/openssl/opensslconf.h
 | 
			
		||||
pem_info.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 | 
			
		||||
pem_info.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
 | 
			
		||||
pem_info.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
 | 
			
		||||
pem_info.o: ../../include/openssl/rc5.h
 | 
			
		||||
pem_info.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
pem_info.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
pem_info.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
 | 
			
		||||
pem_info.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
pem_info.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
pem_info.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
@@ -159,12 +155,11 @@ pem_lib.o: ../../include/openssl/pem.h ../../include/openssl/pem2.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/pkcs12.h ../../include/openssl/pkcs7.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
pem_lib.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
pem_lib.o: ../cryptlib.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -181,12 +176,11 @@ pem_seal.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
pem_seal.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
pem_seal.o: ../cryptlib.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
 | 
			
		||||
@@ -203,9 +197,8 @@ pem_sign.o: ../../include/openssl/opensslv.h ../../include/openssl/pem.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/pem2.h ../../include/openssl/pkcs7.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/rijndael-alg-fst.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
 | 
			
		||||
pem_sign.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 | 
			
		||||
pem_sign.o: ../cryptlib.h
 | 
			
		||||
 
 | 
			
		||||
@@ -305,7 +305,7 @@ int PEM_X509_INFO_write_bio(BIO *bp, X509_INFO *xi, EVP_CIPHER *enc,
 | 
			
		||||
		{
 | 
			
		||||
		if ( (xi->enc_data!=NULL) && (xi->enc_len>0) )
 | 
			
		||||
			{
 | 
			
		||||
			/* copy from wierdo names into more normal things */
 | 
			
		||||
			/* copy from weirdo names into more normal things */
 | 
			
		||||
			iv=xi->enc_cipher.iv;
 | 
			
		||||
			data=(unsigned char *)xi->enc_data;
 | 
			
		||||
			i=xi->enc_len;
 | 
			
		||||
 
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user