From e8d628156ff5fc354e309b51bfbf909a9f75e60f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ulf=20M=C3=B6ller?= Date: Tue, 6 Apr 1999 15:22:55 +0000 Subject: [PATCH] Remove obsolete files from SSLeay 0.8. --- apps/bss_file.c | 324 ------------------ apps/c512-key.pem | 9 - apps/c512-req.pem | 8 - apps/crl.out | 8 - apps/stuff/pkcs7.ex1 | 25 -- apps/stuff/pkcs7.ex2 | 11 - apps/stuff/pkcs7.ex3 | 12 - apps/stuff/pkcs7.pem | 46 --- apps/test.ssl | 16 - certs/vsign4.pem | 16 - crypto/asn1/pk.c | 117 ------- crypto/asn1/test.c | 253 -------------- crypto/bf/asm/bx86-cpp.s | 666 ------------------------------------- crypto/bf/asm/win32.asm | 663 ------------------------------------ crypto/bn/asm/x86-bsdi.s | 272 --------------- crypto/bn/asm/x86-lnx.s | 282 ---------------- crypto/bn/asm/x86-lnxa.s | 282 ---------------- crypto/bn/asm/x86-sol.s | 224 ------------- crypto/bn/asm/x86nt32.asm | 288 ---------------- crypto/bn/bn_bld.c | 144 -------- crypto/bn/bn_mod.c | 97 ------ crypto/bn/bn_sub.c | 180 ---------- crypto/bn/m.pl | 32 -- crypto/bn/stuff/bn_knuth.c | 378 --------------------- crypto/bn/stuff/div.c | 340 ------------------- crypto/bn/stuff/mont.doc | 17 - crypto/bn/stuff/wei_mulw.c | 410 ----------------------- crypto/pkcs7/mf.p7 | 18 - crypto/pkcs7/p7.tst | 33 -- crypto/rc4/rc4_enc.org | 195 ----------- 30 files changed, 5366 deletions(-) delete mode 100644 apps/bss_file.c delete mode 100644 apps/c512-key.pem delete mode 100644 apps/c512-req.pem delete mode 100644 apps/crl.out delete mode 100644 apps/stuff/pkcs7.ex1 delete mode 100644 apps/stuff/pkcs7.ex2 delete mode 100644 apps/stuff/pkcs7.ex3 delete mode 100644 apps/stuff/pkcs7.pem delete mode 100644 apps/test.ssl delete mode 100644 certs/vsign4.pem delete mode 100644 crypto/asn1/pk.c delete mode 100644 crypto/asn1/test.c delete mode 100644 crypto/bf/asm/bx86-cpp.s delete mode 100644 crypto/bf/asm/win32.asm delete mode 100644 crypto/bn/asm/x86-bsdi.s delete mode 100644 crypto/bn/asm/x86-lnx.s delete mode 100644 crypto/bn/asm/x86-lnxa.s delete mode 100644 crypto/bn/asm/x86-sol.s delete mode 100644 crypto/bn/asm/x86nt32.asm delete mode 100644 crypto/bn/bn_bld.c delete mode 100644 crypto/bn/bn_mod.c delete mode 100644 crypto/bn/bn_sub.c delete mode 100644 crypto/bn/m.pl delete mode 100644 crypto/bn/stuff/bn_knuth.c delete mode 100644 crypto/bn/stuff/div.c delete mode 100644 crypto/bn/stuff/mont.doc delete mode 100644 crypto/bn/stuff/wei_mulw.c delete mode 100644 crypto/pkcs7/mf.p7 delete mode 100644 crypto/pkcs7/p7.tst delete mode 100644 crypto/rc4/rc4_enc.org diff --git a/apps/bss_file.c b/apps/bss_file.c deleted file mode 100644 index 9aa71f9d0f..0000000000 --- a/apps/bss_file.c +++ /dev/null @@ -1,324 +0,0 @@ -/* crypto/bio/bss_file.c */ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ - -#define APPS_WIN16 -#include -#include -#include "cryptlib.h" -#include "bio.h" -#include "err.h" - -#ifndef NOPROTO -static int MS_CALLBACK file_write(BIO *h,char *buf,int num); -static int MS_CALLBACK file_read(BIO *h,char *buf,int size); -static int MS_CALLBACK file_puts(BIO *h,char *str); -static int MS_CALLBACK file_gets(BIO *h,char *str,int size); -static long MS_CALLBACK file_ctrl(BIO *h,int cmd,long arg1,char *arg2); -static int MS_CALLBACK file_new(BIO *h); -static int MS_CALLBACK file_free(BIO *data); -#else -static int MS_CALLBACK file_write(); -static int MS_CALLBACK file_read(); -static int MS_CALLBACK file_puts(); -static int MS_CALLBACK file_gets(); -static long MS_CALLBACK file_ctrl(); -static int MS_CALLBACK file_new(); -static int MS_CALLBACK file_free(); -#endif - -static BIO_METHOD methods_filep= - { - BIO_TYPE_FILE,"FILE pointer", - file_write, - file_read, - file_puts, - file_gets, - file_ctrl, - file_new, - file_free, - }; - -BIO *BIO_new_file(filename,mode) -char *filename; -char *mode; - { - BIO *ret; - FILE *file; - - if ((file=fopen(filename,mode)) == NULL) - { - SYSerr(SYS_F_FOPEN,errno); - BIOerr(BIO_F_BIO_NEW_FILE,ERR_R_SYS_LIB); - return(NULL); - } - if ((ret=BIO_new_fp(file,BIO_CLOSE)) == NULL) - { - fclose(file); - return(NULL); - } - return(ret); - } - -BIO *BIO_new_fp(stream,close_flag) -FILE *stream; -int close_flag; - { - BIO *ret; - - if ((ret=BIO_new(BIO_s_file())) == NULL) - return(NULL); - BIO_set_fp(ret,stream,close_flag); - return(ret); - } - -#if !defined(WIN16) || defined(APPS_WIN16) - -BIO_METHOD *BIO_s_file() - { - return(&methods_filep); - } - -#else - -BIO_METHOD *BIO_s_file_internal_w16() - { - return(&methods_filep); - } - -#endif - -static int MS_CALLBACK file_new(bi) -BIO *bi; - { - bi->init=0; - bi->num=0; - bi->ptr=NULL; - return(1); - } - -static int MS_CALLBACK file_free(a) -BIO *a; - { - if (a == NULL) return(0); - if (a->shutdown) - { - if ((a->init) && (a->ptr != NULL)) - { - fclose((FILE *)a->ptr); - a->ptr=NULL; - } - a->init=0; - } - return(1); - } - -static int MS_CALLBACK file_read(b,out,outl) -BIO *b; -char *out; -int outl; - { - int ret=0; - - if (b->init && (out != NULL)) - { - ret=fread(out,1,(int)outl,(FILE *)b->ptr); - } - return(ret); - } - -static int MS_CALLBACK file_write(b,in,inl) -BIO *b; -char *in; -int inl; - { - int ret=0; - - if (b->init && (in != NULL)) - { - if (fwrite(in,(int)inl,1,(FILE *)b->ptr)) - ret=inl; - /* ret=fwrite(in,1,(int)inl,(FILE *)b->ptr); */ - /* acording to Tim Hudson , the commented - * out version above can cause 'inl' write calls under - * some stupid stdio implementations (VMS) */ - } - return(ret); - } - -static long MS_CALLBACK file_ctrl(b,cmd,num,ptr) -BIO *b; -int cmd; -long num; -char *ptr; - { - long ret=1; - FILE *fp=(FILE *)b->ptr; - FILE **fpp; - char p[4]; - - switch (cmd) - { - case BIO_CTRL_RESET: - ret=(long)fseek(fp,num,0); - break; - case BIO_CTRL_EOF: - ret=(long)feof(fp); - break; - case BIO_CTRL_INFO: - ret=ftell(fp); - break; - case BIO_C_SET_FILE_PTR: - file_free(b); - b->shutdown=(int)num; - b->ptr=(char *)ptr; - b->init=1; - break; - case BIO_C_SET_FILENAME: - file_free(b); - b->shutdown=(int)num&BIO_CLOSE; - if (num & BIO_FP_APPEND) - { - if (num & BIO_FP_READ) - strcpy(p,"a+"); - else strcpy(p,"a"); - } - else if ((num & BIO_FP_READ) && (num & BIO_FP_WRITE)) - strcpy(p,"r+"); - else if (num & BIO_FP_WRITE) - strcpy(p,"w"); - else if (num & BIO_FP_READ) - strcpy(p,"r"); - else - { - BIOerr(BIO_F_FILE_CTRL,BIO_R_BAD_FOPEN_MODE); - ret=0; - break; - } -#if defined(MSDOS) || defined(WINDOWS) - if (!(num & BIO_FP_TEXT)) - strcat(p,"b"); - else - strcat(p,"t"); -#endif - fp=fopen(ptr,p); - if (fp == NULL) - { - SYSerr(SYS_F_FOPEN,errno); - BIOerr(BIO_F_FILE_CTRL,ERR_R_SYS_LIB); - ret=0; - break; - } - b->ptr=(char *)fp; - b->init=1; - break; - case BIO_C_GET_FILE_PTR: - /* the ptr parameter is actually a FILE ** in this case. */ - if (ptr != NULL) - { - fpp=(FILE **)ptr; - *fpp=(FILE *)b->ptr; - } - break; - case BIO_CTRL_GET_CLOSE: - ret=(long)b->shutdown; - break; - case BIO_CTRL_SET_CLOSE: - b->shutdown=(int)num; - break; - case BIO_CTRL_FLUSH: - fflush((FILE *)b->ptr); - break; - case BIO_CTRL_DUP: - ret=1; - break; - - case BIO_CTRL_PENDING: - case BIO_CTRL_PUSH: - case BIO_CTRL_POP: - default: - ret=0; - break; - } - return(ret); - } - -static int MS_CALLBACK file_gets(bp,buf,size) -BIO *bp; -char *buf; -int size; - { - int ret=0; - - buf[0]='\0'; - fgets(buf,size,(FILE *)bp->ptr); - if (buf[0] != '\0') - ret=strlen(buf); - return(ret); - } - -static int MS_CALLBACK file_puts(bp,str) -BIO *bp; -char *str; - { - int n,ret; - - n=strlen(str); - ret=file_write(bp,str,n); - return(ret); - } - diff --git a/apps/c512-key.pem b/apps/c512-key.pem deleted file mode 100644 index a1ea82e644..0000000000 --- a/apps/c512-key.pem +++ /dev/null @@ -1,9 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIBOwIBAAJBALtv55QyzG6i2PlwZ1pah7++Gv8L5j6Hnyr/uTZE1NLG0ABDDexm -q/R4KedLjFEIYjocDui+IXs62NNtXrT8odkCAwEAAQJAbwXq0vJ/+uyEvsNgxLko -/V86mGXQ/KrSkeKlL0r4ENxjcyeMAGoKu6J9yMY7+X9+Zm4nxShNfTsf/+Freoe1 -HQIhAPOSm5Q1YI+KIsII2GeVJx1U69+wnd71OasIPakS1L1XAiEAxQAW+J3/JWE0 -ftEYakbhUOKL8tD1OaFZS71/5GdG7E8CIQCefUMmySSvwd6kC0VlATSWbW+d+jp/ -nWmM1KvqnAo5uQIhALqEADu5U1Wvt8UN8UDGBRPQulHWNycuNV45d3nnskWPAiAw -ueTyr6WsZ5+SD8g/Hy3xuvF3nPmJRH+rwvVihlcFOg== ------END RSA PRIVATE KEY----- diff --git a/apps/c512-req.pem b/apps/c512-req.pem deleted file mode 100644 index e8d0fea538..0000000000 --- a/apps/c512-req.pem +++ /dev/null @@ -1,8 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIIBGzCBxgIBADBjMQswCQYDVQQGEwJBVTETMBEGA1UECBMKUXVlZW5zbGFuZDEa -MBgGA1UEChMRQ3J5cHRTb2Z0IFB0eSBMdGQxIzAhBgNVBAMTGkNsaWVudCB0ZXN0 -IGNlcnQgKDUxMiBiaXQpMFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBALtv55QyzG6i -2PlwZ1pah7++Gv8L5j6Hnyr/uTZE1NLG0ABDDexmq/R4KedLjFEIYjocDui+IXs6 -2NNtXrT8odkCAwEAATANBgkqhkiG9w0BAQQFAANBAC5JBTeji7RosqMaUIDzIW13 -oO6+kPhx9fXSpMFHIsY3aH92Milkov/2A4SuZTcnv/P6+8klmS0EaiUKcRzak4E= ------END CERTIFICATE REQUEST----- diff --git a/apps/crl.out b/apps/crl.out deleted file mode 100644 index 85d10e989b..0000000000 --- a/apps/crl.out +++ /dev/null @@ -1,8 +0,0 @@ ------BEGIN X509 CRL----- -MIIBDjCBuTANBgkqhkiG9w0BAQQFADBgMQswCQYDVQQGEwJBVTEMMAoGA1UECBMD -UUxEMRkwFwYDVQQKExBNaW5jb20gUHR5LiBMdGQuMQswCQYDVQQLEwJDUzEbMBkG -A1UEAxMSU1NMZWF5IGRlbW8gc2VydmVyFw05NzA3MDkwMDAwMjJaFw05NzA4MDgw -MDAwMjJaMCgwEgIBARcNOTUxMDA5MjMzMjA1WjASAgEDFw05NTEyMDEwMTAwMDBa -MA0GCSqGSIb3DQEBBAUAA0EAcEBIWVZPXxSlLMPPLfBi4s0N3lzTgskZkgO6pjZi -oQRwh5vi5zFqDNQteGx7RTHpUYntgyoAZ87FZE0GOJgBaQ== ------END X509 CRL----- diff --git a/apps/stuff/pkcs7.ex1 b/apps/stuff/pkcs7.ex1 deleted file mode 100644 index 0eed41b6dc..0000000000 --- a/apps/stuff/pkcs7.ex1 +++ /dev/null @@ -1,25 +0,0 @@ ------BEGIN xxx----- -MIAGCSqGSIb3DQEHAqCAMIACAQExADCABgkqhkiG9w0BBwEAAKCAMIIB -rTCCAUkCAgC2MA0GCSqGSIb3DQEBAgUAME0xCzAJBgNVBAYTAlVTMSAw -HgYDVQQKExdSU0EgRGF0YSBTZWN1cml0eSwgSW5jLjEcMBoGA1UECxMT -UGVyc29uYSBDZXJ0aWZpY2F0ZTAeFw05NDA0MDkwMDUwMzdaFw05NDA4 -MDIxODM4NTdaMGcxCzAJBgNVBAYTAlVTMSAwHgYDVQQKExdSU0EgRGF0 -YSBTZWN1cml0eSwgSW5jLjEcMBoGA1UECxMTUGVyc29uYSBDZXJ0aWZp -Y2F0ZTEYMBYGA1UEAxMPU2V0ZWMgQXN0cm9ub215MFwwDQYJKoZIhvcN -AQEBBQADSwAwSAJBAMy8QcW7RMrB4sTdQ8Nmb2DFmJmkWn+el+NdeamI -DElX/qw9mIQu4xNj1FfepfJNxzPvA0OtMKhy6+bkrlyMEU8CAwEAATAN -BgkqhkiG9w0BAQIFAANPAAYn7jDgirhiIL4wnP8nGzUisGSpsFsF4/7z -2P2wqne6Qk8Cg/Dstu3RyaN78vAMGP8d82H5+Ndfhi2mRp4YHiGHz0Hl -K6VbPfnyvS2wdjCCAccwggFRAgUCQAAAFDANBgkqhkiG9w0BAQIFADBf -MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXUlNBIERhdGEgU2VjdXJpdHks -IEluYy4xLjAsBgNVBAsTJUxvdyBBc3N1cmFuY2UgQ2VydGlmaWNhdGlv -biBBdXRob3JpdHkwHhcNOTQwMTA3MDAwMDAwWhcNOTYwMTA3MjM1OTU5 -WjBNMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXUlNBIERhdGEgU2VjdXJp -dHksIEluYy4xHDAaBgNVBAsTE1BlcnNvbmEgQ2VydGlmaWNhdGUwaTAN -BgkqhkiG9w0BAQEFAANYADBVAk4GqghQDa9Xi/2zAdYEqJVIcYhlLN1F -pI9tXQ1m6zZ39PYXK8Uhoj0Es7kWRv8hC04vqkOKwndWbzVtvoHQOmP8 -nOkkuBi+AQvgFoRcgOUCAwEAATANBgkqhkiG9w0BAQIFAANhAD/5Uo7x -Ddp49oZm9GoNcPhZcW1e+nojLvHXWAU/CBkwfcR+FSf4hQ5eFu1AjYv6 -Wqf430Xe9Et5+jgnMTiq4LnwgTdA8xQX4elJz9QzQobkE3XVOjVAtCFc -miin80RB8AAAMYAAAAAAAAAAAA== ------END xxx----- diff --git a/apps/stuff/pkcs7.ex2 b/apps/stuff/pkcs7.ex2 deleted file mode 100644 index 2b21a67ca5..0000000000 --- a/apps/stuff/pkcs7.ex2 +++ /dev/null @@ -1,11 +0,0 @@ ------BEGIN PRIVACY-ENHANCED MESSAGE----- -MIAGCSqGSIb3DQEHBqCAMIACAQAwgAYJKoZIhvcNAQcBMBEGBSsOAwIHBAifqtdy -x6uIMYCCARgvFzJtOZBn773DtmXlx037ck3giqnV0WC0QAx5f+fesAiGaxMqWcir -r9XvT0nT0LgSQ/8tiLCDBEKdyCNgdcJAduy3D0r2sb5sNTT0TyL9uydG3w55vTnW -aPbCPCWLudArI1UHDZbnoJICrVehxG/sYX069M8v6VO8PsJS7//hh1yM+0nekzQ5 -l1p0j7uWKu4W0csrlGqhLvEJanj6dQAGSTNCOoH3jzEXGQXntgesk8poFPfHdtj0 -5RH4MuJRajDmoEjlrNcnGl/BdHAd2JaCo6uZWGcnGAgVJ/TVfSVSwN5nlCK87tXl -nL7DJwaPRYwxb3mnPKNq7ATiJPf5u162MbwxrddmiE7e3sST7naSN+GS0ateY5X7 -AAAAAAAAAAA= ------END PRIVACY-ENHANCED MESSAGE----- - diff --git a/apps/stuff/pkcs7.ex3 b/apps/stuff/pkcs7.ex3 deleted file mode 100644 index b2eabefc5b..0000000000 --- a/apps/stuff/pkcs7.ex3 +++ /dev/null @@ -1,12 +0,0 @@ ------BEGIN PRIVACY-ENHANCED MESSAGE----- -MIAGCSqGSIb3DQEHA6CAMIACAQAxgDCBqQIBADBTME0xCzAJBgNVBAYTAlVTMSAw -HgYDVQQKExdSU0EgRGF0YSBTZWN1cml0eSwgSW5jLjEcMBoGA1UECxMTUGVyc29u -YSBDZXJ0aWZpY2F0ZQICALYwDQYJKoZIhvcNAQEBBQAEQCU/R+YCJSUsV6XLilHG -cNVzwqKcWzmT/rZ+duOv8Ggb7oO/d8H3xUVGQ2LsX4kYGq2szwj8Q6eWhsmhf4oz -lvMAADCABgkqhkiG9w0BBwEwEQYFKw4DAgcECFif7BadXlw3oIAEgZBNcMexKe16 -+mNxx8YQPukBCL0bWqS86lvws/AgRkKPELmysBi5lco8MBCsWK/fCyrnxIRHs1oK -BXBVlsAhKkkusk1kCf/GbXSAphdSgG+d6LxrNZwHbBFOX6A2hYS63Iczd5bOVDDW -Op2gcgUtMJq6k2LFrs4L7HHqRPPlqNJ6j5mFP4xkzOCNIQynpD1rV6EECMIk/T7k -1JLSAAAAAAAAAAAAAA== ------END PRIVACY-ENHANCED MESSAGE----- - diff --git a/apps/stuff/pkcs7.pem b/apps/stuff/pkcs7.pem deleted file mode 100644 index eef654ca81..0000000000 --- a/apps/stuff/pkcs7.pem +++ /dev/null @@ -1,46 +0,0 @@ ------BEGIN PKCS7----- -MIIIEgYJKoZIhvcNAQcCMIIIAwIBATEAMAsGCSqGSIb3DQEHAaCCBDUwggIhMIIB -jgIFAnIAAGcwDQYJKoZIhvcNAQECBQAwXzELMAkGA1UEBhMCVVMxIDAeBgNVBAoT -F1JTQSBEYXRhIFNlY3VyaXR5LCBJbmMuMS4wLAYDVQQLEyVTZWN1cmUgU2VydmVy -IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk1MDUxNzAwMDAwMFoXDTk1MTEx -NjIzNTk1OVowdzELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5h -MRIwEAYDVQQHEwlDaGFybG90dGUxIzAhBgNVBAoTGlZuZXQgSW50ZXJuZXQgQWNj -ZXNzLCBJbmMuMRYwFAYDVQQDFA13d3cqLnZuZXQubmV0MHwwDQYJKoZIhvcNAQEB -BQADawAwaAJhAOngW+io4W1lAp1b2k4+KqICaLHatp6AWkPLpa3Li2mwmggSGeRD -AmTI4FQB0EFrDMfKLOteHgGoDJ0vifmV5cKvevRt5Gn+xPn54Halu7i145iUldyv -oViUNpWmLJhKTQIDAQABMA0GCSqGSIb3DQEBAgUAA34AQkyfJje6H8fxtN68TvXV -RibnPpQol2jMbh0VnK9cP9ePvsXy+7JoGuWxj6zlgjZGwia49xITggZ+0b+wP51l -5e8xEEc2K7eC5QVD0qh/NSqdPcVP+UG6UK/LT25w/yLuZgqJ3g87kGbOo9myLhkZ -3jr3kXnsriBmwmqcjgUwggIMMIIBlgIFAkAAAEUwDQYJKoZIhvcNAQECBQAwXzEL -MAkGA1UEBhMCVVMxIDAeBgNVBAoTF1JTQSBEYXRhIFNlY3VyaXR5LCBJbmMuMS4w -LAYDVQQLEyVMb3cgQXNzdXJhbmNlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4X -DTk0MTEwOTIzMTk0NFoXDTk5MTIzMTIzMTk0NFowXzELMAkGA1UEBhMCVVMxIDAe -BgNVBAoTF1JTQSBEYXRhIFNlY3VyaXR5LCBJbmMuMS4wLAYDVQQLEyVTZWN1cmUg -U2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGbMA0GCSqGSIb3DQEBAQUA -A4GJADCBhQJ+AJLOesGugz5aqomDV6wlAXYMra6OLDfO6zV4ZFQD5YRAUcm/jwji -ioII0haGN1XpsSECrXZogZoFokvJSyVmIlZsiAeP94FZbYQHZXATcXY+m3dM41CJ -VphIuR2nKRoTLkoRWZweFdVJVCxzOmmCsZc5nG1wZ0jl3S3WyB57AgMBAAEwDQYJ -KoZIhvcNAQECBQADYQAjOCnuhWTdRq+8PhUBSzKbOhmafQQPQ8Ltw+49U8N1zgq9 -1ROaW46znUQykAPUdaAIflEfV2e0ULuyOWCwDJ2ME7NUmWL86SLkk6QLC9iItjva -h+tdpLV/+TerjmrxCWChggOyMIICjTCCAfowDQYJKoZIhvcNAQECBQAwXzELMAkG -A1UEBhMCVVMxIDAeBgNVBAoTF1JTQSBEYXRhIFNlY3VyaXR5LCBJbmMuMS4wLAYD -VQQLEyVTZWN1cmUgU2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5Fw05NTA1 -MDIwMjEyMjZaFw05NTA2MDEwMDAxNDlaMIIBaDAWAgUCQQAABBcNOTUwMjAxMTcy -NDI2WjAWAgUCQQAACRcNOTUwMjEwMDIxNjM5WjAWAgUCQQAADxcNOTUwMjI0MDAx -MjQ5WjAWAgUCQQAADBcNOTUwMjI1MDA0NjQ0WjAWAgUCQQAAGxcNOTUwMzEzMTg0 -MDQ5WjAWAgUCQQAAFhcNOTUwMzE1MTkxNjU0WjAWAgUCQQAAGhcNOTUwMzE1MTk0 -MDQxWjAWAgUCQQAAHxcNOTUwMzI0MTk0NDMzWjAWAgUCcgAABRcNOTUwMzI5MjAw -NzExWjAWAgUCcgAAERcNOTUwMzMwMDIzNDI2WjAWAgUCQQAAIBcNOTUwNDA3MDEx -MzIxWjAWAgUCcgAAHhcNOTUwNDA4MDAwMjU5WjAWAgUCcgAAQRcNOTUwNDI4MTcx -NzI0WjAWAgUCcgAAOBcNOTUwNDI4MTcyNzIxWjAWAgUCcgAATBcNOTUwNTAyMDIx -MjI2WjANBgkqhkiG9w0BAQIFAAN+AHqOEJXSDejYy0UwxxrH/9+N2z5xu/if0J6q -QmK92W0hW158wpJg+ovV3+wQwvIEPRL2rocL0tKfAsVq1IawSJzSNgxG0lrcla3M -rJBnZ4GaZDu4FutZh72MR3GtJaAL3iTJHJD55kK2D/VoyY1djlsPuNh6AEgdVwFA -yp0vMIIBHTCBqDANBgkqhkiG9w0BAQIFADBfMQswCQYDVQQGEwJVUzEgMB4GA1UE -ChMXUlNBIERhdGEgU2VjdXJpdHksIEluYy4xLjAsBgNVBAsTJUxvdyBBc3N1cmFu -Y2UgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkXDTk1MDUwMTE5MjcyOVoXDTk1MDYw -MTA4MDAwMFowGDAWAgUCQAAAXhcNOTUwMjA4MDE0NjIyWjANBgkqhkiG9w0BAQIF -AANhAF70VxEAKgGlS2otYkWSqYJ286MMDbdAIoEGCDTtVuLCOP3YKHOSTjFhbIhL -5mBd+Q/W+lKSqdoyYhdObaBk4I4Wk+/BE2QK1x4QhtYG144spESXIRIKAbhffg1g -rRe/ETEA ------END PKCS7----- diff --git a/apps/test.ssl b/apps/test.ssl deleted file mode 100644 index d0566e0d05..0000000000 --- a/apps/test.ssl +++ /dev/null @@ -1,16 +0,0 @@ -www.microsoft.com:443 -sectest.microsoft.com:443 -https://sectest.microsoft.com/ClientAuth/test.asp -ssl3.netscape.com:443 -ssl3.netscape.com:444 -www.openmarket.com:443 - no session ID caching. - no swap - -Servers -bad www.openmarket.com Open-Market-Secure-WebServer/V2.1 -bad www.microsoft.com Server: Microsoft-IIS/3.0 -good transact.netscape.com Netscape-Enterprise/2.01 - -clients -good netscape -hmm MSIE - diff --git a/certs/vsign4.pem b/certs/vsign4.pem deleted file mode 100644 index b5bcef4d0d..0000000000 --- a/certs/vsign4.pem +++ /dev/null @@ -1,16 +0,0 @@ - subject=/C=US/O=VeriSign, Inc./OU=Class 4 Public Primary Certification Authority - issuer= /C=US/O=VeriSign, Inc./OU=Class 4 Public Primary Certification Authority ------BEGIN CERTIFICATE----- -MIICMTCCAZoCBQKmAAABMA0GCSqGSIb3DQEBAgUAMF8xCzAJBgNVBAYTAlVTMRcw -FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE3MDUGA1UECxMuQ2xhc3MgNCBQdWJsaWMg -UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw05NjAxMjkwMDAwMDBa -Fw05OTEyMzEyMzU5NTlaMF8xCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2ln -biwgSW5jLjE3MDUGA1UECxMuQ2xhc3MgNCBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZp -Y2F0aW9uIEF1dGhvcml0eTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA0LJ1 -9njQrlpQ9OlQqZ+M1++RlHDo0iSQdomF1t+s5gEXMoDwnZNHvJplnR+Xrr/phnVj -IIm9gFidBAydqMEk6QvlMXi9/C0MN2qeeIDpRnX57aP7E3vIwUzSo+/1PLBij0pd -O92VZ48TucE81qcmm+zDO3rZTbxtm+gVAePwR6kCAwEAATANBgkqhkiG9w0BAQIF -AAOBgQBT3dPwnCR+QKri/AAa19oM/DJhuBUNlvP6Vxt/M3yv6ZiaYch6s7f/sdyZ -g9ysEvxwyR84Qu1E9oAuW2szaayc01znX1oYx7EteQSWQZGZQbE8DbqEOcY7l/Am -yY7uvcxClf8exwI/VAx49byqYHwCaejcrOICdmHEPgPq0ook0Q== ------END CERTIFICATE----- diff --git a/crypto/asn1/pk.c b/crypto/asn1/pk.c deleted file mode 100644 index b96f22d139..0000000000 --- a/crypto/asn1/pk.c +++ /dev/null @@ -1,117 +0,0 @@ -/* crypto/asn1/pk.c */ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ - -#include -#include "../error/err.h" -#include "./asn1.h" -#include "rsa.h" -#include "x509.h" -#include "pkcs7.h" - -main() - { - PKCS7 *x; - FILE *in; - unsigned char buf[10240],buf2[10240],*p; - int num,i; - - PKCS7 *nx=NULL,*mx=NULL; - - in=fopen("pkcs7.der","r"); - if (in == NULL) - { - perror("pkcs7.der"); - exit(1); - } - num=fread(buf,1,10240,in); - fclose(in); - - - p=buf; - if (d2i_PKCS7(&nx,&p,num) == NULL) goto err; - printf("num=%d p-buf=%d\n",num,p-buf); - -exit(0); - p=buf2; - num=i2d_PKCS7(nx,&p); - printf("num=%d p-buf=%d\n",num,p-buf2); - - if (memcmp(buf,buf2,num) != 0) - { - fprintf(stderr,"data difference\n"); - for (i=0; i\n", - (buf[i] == buf2[i])?' ':'*',i, - buf[i],buf2[i]); - fprintf(stderr,"\n"); - exit(1); - } - - p=buf2; - if (d2i_PKCS7(&mx,&p,num) == NULL) goto err; - printf("num=%d p-buf=%d\n",num,p-buf2); - -/* X509_print(stdout,mx);*/ - - exit(0); -err: - ERR_load_crypto_strings(); - ERR_print_errors(stderr); - exit(1); - } - diff --git a/crypto/asn1/test.c b/crypto/asn1/test.c deleted file mode 100644 index fe46cd0e76..0000000000 --- a/crypto/asn1/test.c +++ /dev/null @@ -1,253 +0,0 @@ -/* crypto/asn1/test.c */ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ - -#include -#include "../error/err.h" -#include "./asn1.h" -#include "rsa.h" -#include "../x509/x509.h" -#include "x509.h" - -main() - { - main1(); - main2(); - main3(); - main4(); - } - -main1() - { - FILE *in; - unsigned char buf[10240],buf2[10240],*p; - int num,i; - - X509 *nx=NULL,*mx=NULL; - - in=fopen("x.der","r"); - if (in == NULL) - { - perror("x.der"); - exit(1); - } - num=fread(buf,1,10240,in); - fclose(in); - - - p=buf; - if (d2i_X509(&nx,&p,num) == NULL) goto err; - printf("num=%d p-buf=%d\n",num,p-buf); - - p=buf2; - num=i2d_X509(nx,&p); - printf("num=%d p-buf=%d\n",num,p-buf2); - - if (memcmp(buf,buf2,num) != 0) - { - fprintf(stderr,"data difference\n"); - for (i=0; i\n", - (buf[i] == buf2[i])?' ':'*',i, - buf[i],buf2[i]); - fprintf(stderr,"\n"); - exit(1); - } - - p=buf2; - if (d2i_X509(&mx,&p,num) == NULL) goto err; - printf("num=%d p-buf=%d\n",num,p-buf2); - - return(1); -err: - ERR_load_crypto_strings(); - ERR_print_errors(stderr); - return(0); - } - -main2() - { - FILE *in; - unsigned char buf[10240],buf2[10240],*p; - int num,i; - - X509_CRL *nx=NULL,*mx=NULL; - - in=fopen("crl.der","r"); - if (in == NULL) - { - perror("crl.der"); - exit(1); - } - num=fread(buf,1,10240,in); - fclose(in); - - - p=buf; - if (d2i_X509_CRL(&nx,&p,num) == NULL) goto err; - printf("num=%d p-buf=%d\n",num,p-buf); - - p=buf2; - num=i2d_X509_CRL(nx,&p); - printf("num=%d p-buf=%d\n",num,p-buf2); - - if (memcmp(buf,buf2,num) != 0) - { - fprintf(stderr,"data difference\n"); - for (i=0; i\n", - (buf[i] == buf2[i])?' ':'*',i, - buf[i],buf2[i]); - fprintf(stderr,"\n"); - exit(1); - } - - return(1); -err: - ERR_load_crypto_strings(); - ERR_print_errors(stderr); - return(0); - } - -main3() - { - FILE *in; - unsigned char buf[10240],buf2[10240],*p; - int num,i; - - X509_REQ *nx=NULL,*mx=NULL; - - in=fopen("req.der","r"); - if (in == NULL) - { - perror("req.der"); - exit(1); - } - num=fread(buf,1,10240,in); - fclose(in); - - - p=buf; - if (d2i_X509_REQ(&nx,&p,num) == NULL) goto err; - printf("num=%d p-buf=%d\n",num,p-buf); - - p=buf2; - num=i2d_X509_REQ(nx,&p); - printf("num=%d p-buf=%d\n",num,p-buf2); - - if (memcmp(buf,buf2,num) != 0) - { - fprintf(stderr,"data difference\n"); - for (i=0; i\n", - (buf[i] == buf2[i])?' ':'*',i, - buf[i],buf2[i]); - fprintf(stderr,"\n"); - exit(1); - } - - return(1); -err: - ERR_load_crypto_strings(); - ERR_print_errors(stderr); - return(0); - } - -main4() - { - FILE *in; - unsigned char buf[10240],buf2[10240],*p; - int num,i; - - RSA *nx=NULL,*mx=NULL; - - in=fopen("rsa.der","r"); - if (in == NULL) - { - perror("rsa.der"); - exit(1); - } - num=fread(buf,1,10240,in); - fclose(in); - - - p=buf; - if (d2i_RSAPrivateKey(&nx,&p,num) == NULL) goto err; - printf("num=%d p-buf=%d\n",num,p-buf); - - p=buf2; - num=i2d_RSAPrivateKey(nx,&p); - printf("num=%d p-buf=%d\n",num,p-buf2); - - if (memcmp(buf,buf2,num) != 0) - { - fprintf(stderr,"data difference\n"); - for (i=0; i\n", - (buf[i] == buf2[i])?' ':'*',i, - buf[i],buf2[i]); - fprintf(stderr,"\n"); - exit(1); - } - - return(1); -err: - ERR_load_crypto_strings(); - ERR_print_errors(stderr); - return(0); - } - diff --git a/crypto/bf/asm/bx86-cpp.s b/crypto/bf/asm/bx86-cpp.s deleted file mode 100644 index 0925137a6d..0000000000 --- a/crypto/bf/asm/bx86-cpp.s +++ /dev/null @@ -1,666 +0,0 @@ - /* Don't even think of reading this code */ - /* It was automatically generated by bf586.pl */ - /* Which is a perl program used to generate the x86 assember for */ - /* any of elf, a.out, Win32, or Solaris */ - /* It can be found in SSLeay 0.7.0+ */ - /* eric */ - - .file "bfx86xxxx.s" - .version "01.01" -gcc2_compiled.: -.text - .align ALIGN -.globl BF_encrypt - TYPE(BF_encrypt,@function) -BF_encrypt: - pushl %ebp - pushl %ebx - pushl %esi - pushl %edi - - - /* Load the 2 words */ - movl 20(%esp), %eax - movl (%eax), %ecx - movl 4(%eax), %edx - - /* P pointer, s and enc flag */ - movl 24(%esp), %edi - xorl %eax, %eax - xorl %ebx, %ebx - movl 28(%esp), %ebp - cmpl $0, %ebp - je .L000start_decrypt - xorl (%edi), %ecx - - /* Round 0 */ - rorl $16, %ecx - movl 4(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 1 */ - rorl $16, %edx - movl 8(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 2 */ - rorl $16, %ecx - movl 12(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 3 */ - rorl $16, %edx - movl 16(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 4 */ - rorl $16, %ecx - movl 20(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 5 */ - rorl $16, %edx - movl 24(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 6 */ - rorl $16, %ecx - movl 28(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 7 */ - rorl $16, %edx - movl 32(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 8 */ - rorl $16, %ecx - movl 36(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 9 */ - rorl $16, %edx - movl 40(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 10 */ - rorl $16, %ecx - movl 44(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 11 */ - rorl $16, %edx - movl 48(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 12 */ - rorl $16, %ecx - movl 52(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 13 */ - rorl $16, %edx - movl 56(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 14 */ - rorl $16, %ecx - movl 60(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 15 */ - rorl $16, %edx - movl 64(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - xorl 68(%edi), %edx - movl 20(%esp), %eax - movl %edx, (%eax) - movl %ecx, 4(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.align ALIGN -.L000start_decrypt: - xorl 68(%edi), %ecx - - /* Round 16 */ - rorl $16, %ecx - movl 64(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 15 */ - rorl $16, %edx - movl 60(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 14 */ - rorl $16, %ecx - movl 56(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 13 */ - rorl $16, %edx - movl 52(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 12 */ - rorl $16, %ecx - movl 48(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 11 */ - rorl $16, %edx - movl 44(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 10 */ - rorl $16, %ecx - movl 40(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 9 */ - rorl $16, %edx - movl 36(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 8 */ - rorl $16, %ecx - movl 32(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 7 */ - rorl $16, %edx - movl 28(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 6 */ - rorl $16, %ecx - movl 24(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 5 */ - rorl $16, %edx - movl 20(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 4 */ - rorl $16, %ecx - movl 16(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 3 */ - rorl $16, %edx - movl 12(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - - /* Round 2 */ - rorl $16, %ecx - movl 8(%edi), %esi - movb %ch, %al - movb %cl, %bl - rorl $16, %ecx - xorl %esi, %edx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %ch, %al - movb %cl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %edx - - /* Round 1 */ - rorl $16, %edx - movl 4(%edi), %esi - movb %dh, %al - movb %dl, %bl - rorl $16, %edx - xorl %esi, %ecx - movl 72(%edi,%eax,4),%esi - movl 1096(%edi,%ebx,4),%ebp - movb %dh, %al - movb %dl, %bl - addl %ebp, %esi - movl 2120(%edi,%eax,4),%eax - xorl %eax, %esi - movl 3144(%edi,%ebx,4),%ebp - addl %ebp, %esi - xorl %eax, %eax - xorl %esi, %ecx - xorl (%edi), %edx - movl 20(%esp), %eax - movl %edx, (%eax) - movl %ecx, 4(%eax) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret -.BF_encrypt_end: - SIZE(BF_encrypt,.BF_encrypt_end-BF_encrypt) -.ident "desasm.pl" diff --git a/crypto/bf/asm/win32.asm b/crypto/bf/asm/win32.asm deleted file mode 100644 index 6d2333f323..0000000000 --- a/crypto/bf/asm/win32.asm +++ /dev/null @@ -1,663 +0,0 @@ - ; Don't even think of reading this code - ; It was automatically generated by bf586.pl - ; Which is a perl program used to generate the x86 assember for - ; any of elf, a.out, Win32, or Solaris - ; It can be found in SSLeay 0.7.0+ - ; eric - ; - TITLE bfx86xxxx.asm - .386 -.model FLAT -_TEXT SEGMENT -PUBLIC _BF_encrypt -EXTRN _des_SPtrans:DWORD -_BF_encrypt PROC NEAR - push ebp - push ebx - push esi - push edi - ; - ; Load the 2 words - mov eax, DWORD PTR 20[esp] - mov ecx, DWORD PTR [eax] - mov edx, DWORD PTR 4[eax] - ; - ; P pointer, s and enc flag - mov edi, DWORD PTR 24[esp] - xor eax, eax - xor ebx, ebx - mov ebp, DWORD PTR 28[esp] - cmp ebp, 0 - je $L000start_decrypt - xor ecx, DWORD PTR [edi] - ; - ; Round 0 - ror ecx, 16 - mov esi, DWORD PTR 4[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 1 - ror edx, 16 - mov esi, DWORD PTR 8[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 2 - ror ecx, 16 - mov esi, DWORD PTR 12[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 3 - ror edx, 16 - mov esi, DWORD PTR 16[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 4 - ror ecx, 16 - mov esi, DWORD PTR 20[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 5 - ror edx, 16 - mov esi, DWORD PTR 24[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 6 - ror ecx, 16 - mov esi, DWORD PTR 28[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 7 - ror edx, 16 - mov esi, DWORD PTR 32[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 8 - ror ecx, 16 - mov esi, DWORD PTR 36[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 9 - ror edx, 16 - mov esi, DWORD PTR 40[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 10 - ror ecx, 16 - mov esi, DWORD PTR 44[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 11 - ror edx, 16 - mov esi, DWORD PTR 48[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 12 - ror ecx, 16 - mov esi, DWORD PTR 52[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 13 - ror edx, 16 - mov esi, DWORD PTR 56[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 14 - ror ecx, 16 - mov esi, DWORD PTR 60[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 15 - ror edx, 16 - mov esi, DWORD PTR 64[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - xor edx, DWORD PTR 68[edi] - mov eax, DWORD PTR 20[esp] - mov DWORD PTR [eax],edx - mov DWORD PTR 4[eax],ecx - pop edi - pop esi - pop ebx - pop ebp - ret -$L000start_decrypt: - xor ecx, DWORD PTR 68[edi] - ; - ; Round 16 - ror ecx, 16 - mov esi, DWORD PTR 64[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 15 - ror edx, 16 - mov esi, DWORD PTR 60[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 14 - ror ecx, 16 - mov esi, DWORD PTR 56[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 13 - ror edx, 16 - mov esi, DWORD PTR 52[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 12 - ror ecx, 16 - mov esi, DWORD PTR 48[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 11 - ror edx, 16 - mov esi, DWORD PTR 44[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 10 - ror ecx, 16 - mov esi, DWORD PTR 40[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 9 - ror edx, 16 - mov esi, DWORD PTR 36[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 8 - ror ecx, 16 - mov esi, DWORD PTR 32[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 7 - ror edx, 16 - mov esi, DWORD PTR 28[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 6 - ror ecx, 16 - mov esi, DWORD PTR 24[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 5 - ror edx, 16 - mov esi, DWORD PTR 20[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 4 - ror ecx, 16 - mov esi, DWORD PTR 16[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 3 - ror edx, 16 - mov esi, DWORD PTR 12[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - ; - ; Round 2 - ror ecx, 16 - mov esi, DWORD PTR 8[edi] - mov al, ch - mov bl, cl - ror ecx, 16 - xor edx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, ch - mov bl, cl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor edx, esi - ; - ; Round 1 - ror edx, 16 - mov esi, DWORD PTR 4[edi] - mov al, dh - mov bl, dl - ror edx, 16 - xor ecx, esi - mov esi, DWORD PTR 72[eax*4+edi] - mov ebp, DWORD PTR 1096[ebx*4+edi] - mov al, dh - mov bl, dl - add esi, ebp - mov eax, DWORD PTR 2120[eax*4+edi] - xor esi, eax - mov ebp, DWORD PTR 3144[ebx*4+edi] - add esi, ebp - xor eax, eax - xor ecx, esi - xor edx, DWORD PTR [edi] - mov eax, DWORD PTR 20[esp] - mov DWORD PTR [eax],edx - mov DWORD PTR 4[eax],ecx - pop edi - pop esi - pop ebx - pop ebp - ret -_BF_encrypt ENDP -_TEXT ENDS -END diff --git a/crypto/bn/asm/x86-bsdi.s b/crypto/bn/asm/x86-bsdi.s deleted file mode 100644 index ca6687648e..0000000000 --- a/crypto/bn/asm/x86-bsdi.s +++ /dev/null @@ -1,272 +0,0 @@ - .file "bn_mulw.c" - .version "01.01" -gcc2_compiled.: -.text - .align 4 -.globl _bn_mul_add_word -_bn_mul_add_word: - pushl %ebp - pushl %edi - pushl %esi - pushl %ebx - - # ax L(t) - # dx H(t) - # bx a - # cx w - # di r - # si c - # bp num - xorl %esi,%esi # c=0 - movl 20(%esp),%edi # r => edi - movl 24(%esp),%ebx # a => exb - movl 32(%esp),%ecx # w => ecx - movl 28(%esp),%ebp # num => ebp - - shrl $2,%ebp # num/4 - je .L910 - -# .align 4 -.L110: - # Round 1 - movl %ecx,%eax # w => eax - mull (%ebx) # w * *a - addl (%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+= carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - # Round 2 - movl %ecx,%eax # w => eax - mull 4(%ebx) # w * *a - addl 4(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+= carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,4(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - # Round 3 - movl %ecx,%eax # w => eax - mull 8(%ebx) # w * *a - addl 8(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,8(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - # Round 4 - movl %ecx,%eax # w => eax - mull 12(%ebx) # w * *a - addl 12(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,12(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - addl $16,%ebx # a+=4 (4 words) - addl $16,%edi # r+=4 (4 words) - - decl %ebp # --num - je .L910 - jmp .L110 -# .align 4 -.L910: - movl 28(%esp),%ebp # num => ebp - andl $3,%ebp - je .L111 - - # Round 1 - movl %ecx,%eax # w => eax - mull (%ebx) # w * *a - addl (%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L111 - - # Round 2 - movl %ecx,%eax # w => eax - mull 4(%ebx) # w * *a - addl 4(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,4(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L111 - - # Round 3 - movl %ecx,%eax # w => eax - mull 8(%ebx) # w * *a - addl 8(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,8(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - -# .align 4 -.L111: - movl %esi,%eax # return(c) - popl %ebx - popl %esi - popl %edi - popl %ebp - ret -.Lfe1: - .align 4 -.globl _bn_mul_word -_bn_mul_word: - pushl %ebp - pushl %edi - pushl %esi - pushl %ebx - - # ax L(t) - # dx H(t) - # bx a - # cx w - # di r - # num bp - # si c - xorl %esi,%esi # c=0 - movl 20(%esp),%edi # r => edi - movl 24(%esp),%ebx # a => exb - movl 28(%esp),%ebp # num => bp - movl 32(%esp),%ecx # w => ecx - -# .align 4 -.L210: - movl %ecx,%eax # w => eax - mull (%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - movl %ecx,%eax # w => eax - mull 4(%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,4(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - movl %ecx,%eax # w => eax - mull 8(%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,8(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - movl %ecx,%eax # w => eax - mull 12(%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,12(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - addl $16,%ebx # a+=4 (4 words) - addl $16,%edi # r+=4 (4 words) - - jmp .L210 -# .align 4 -.L211: - movl %esi,%eax # return(c) - popl %ebx - popl %esi - popl %edi - popl %ebp - ret -.Lfe2: - .align 4 -.globl _bn_sqr_words -_bn_sqr_words: - pushl %edi - pushl %esi - pushl %ebx - movl 16(%esp),%esi # r - movl 20(%esp),%edi # a - movl 24(%esp),%ebx # n -# .align 4 - shrl $2,%ebx - jz .L99 -.L28: - movl (%edi),%eax # get a - mull %eax # a*a - movl %eax,(%esi) # put low into return addr - movl %edx,4(%esi) # put high into return addr - - movl 4(%edi),%eax # get a - mull %eax # a*a - movl %eax,8(%esi) # put low into return addr - movl %edx,12(%esi) # put high into return addr - - movl 8(%edi),%eax # get a - mull %eax # a*a - movl %eax,16(%esi) # put low into return addr - movl %edx,20(%esi) # put high into return addr - - movl 12(%edi),%eax # get a - mull %eax # a*a - movl %eax,24(%esi) # put low into return addr - movl %edx,28(%esi) # put high into return addr - - addl $16,%edi - addl $32,%esi - decl %ebx # n-=4; - jz .L99 - jmp .L28 -# .align 4 -.L99: - movl 24(%esp),%ebx # n - andl $3,%ebx - jz .L29 - movl (%edi),%eax # get a - mull %eax # a*a - movl %eax,(%esi) # put low into return addr - movl %edx,4(%esi) # put high into return addr - decl %ebx # n--; - jz .L29 - movl 4(%edi),%eax # get a - mull %eax # a*a - movl %eax,8(%esi) # put low into return addr - movl %edx,12(%esi) # put high into return addr - decl %ebx # n--; - jz .L29 - movl 8(%edi),%eax # get a - mull %eax # a*a - movl %eax,16(%esi) # put low into return addr - movl %edx,20(%esi) # put high into return addr - -.L29: - popl %ebx - popl %esi - popl %edi - ret -.Lfe3: - .align 4 -.globl _bn_div64 -_bn_div64: - movl 4(%esp),%edx # a - movl 8(%esp),%eax # b - divl 12(%esp) # ab/c - ret -.Lfe4: - .ident "GCC: (GNU) 2.6.3" diff --git a/crypto/bn/asm/x86-lnx.s b/crypto/bn/asm/x86-lnx.s deleted file mode 100644 index 5123867440..0000000000 --- a/crypto/bn/asm/x86-lnx.s +++ /dev/null @@ -1,282 +0,0 @@ - .file "bn_mulw.c" - .version "01.01" -gcc2_compiled.: -.text - .align 16 -.globl bn_mul_add_word - .type bn_mul_add_word,@function -bn_mul_add_word: - pushl %ebp - pushl %edi - pushl %esi - pushl %ebx - - # ax L(t) - # dx H(t) - # bx a - # cx w - # di r - # si c - # bp num - xorl %esi,%esi # c=0 - movl 20(%esp),%edi # r => edi - movl 24(%esp),%ebx # a => exb - movl 32(%esp),%ecx # w => ecx - movl 28(%esp),%ebp # num => ebp - - shrl $2,%ebp # num/4 - je .L910 - - .align 4 -.L110: - # Round 1 - movl %ecx,%eax # w => eax - mull (%ebx) # w * *a - addl (%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+= carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - # Round 2 - movl %ecx,%eax # w => eax - mull 4(%ebx) # w * *a - addl 4(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+= carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,4(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - # Round 3 - movl %ecx,%eax # w => eax - mull 8(%ebx) # w * *a - addl 8(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,8(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - # Round 4 - movl %ecx,%eax # w => eax - mull 12(%ebx) # w * *a - addl 12(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,12(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - addl $16,%ebx # a+=4 (4 words) - addl $16,%edi # r+=4 (4 words) - - decl %ebp # --num - je .L910 - jmp .L110 - .align 4 -.L910: - movl 28(%esp),%ebp # num => ebp - andl $3,%ebp - je .L111 - - # Round 1 - movl %ecx,%eax # w => eax - mull (%ebx) # w * *a - addl (%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L111 - - # Round 2 - movl %ecx,%eax # w => eax - mull 4(%ebx) # w * *a - addl 4(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,4(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L111 - - # Round 3 - movl %ecx,%eax # w => eax - mull 8(%ebx) # w * *a - addl 8(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,8(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - .align 4 -.L111: - movl %esi,%eax # return(c) - popl %ebx - popl %esi - popl %edi - popl %ebp - ret -.Lfe1: - .size bn_mul_add_word,.Lfe1-bn_mul_add_word - .align 16 -.globl bn_mul_word - .type bn_mul_word,@function -bn_mul_word: - pushl %ebp - pushl %edi - pushl %esi - pushl %ebx - - # ax L(t) - # dx H(t) - # bx a - # cx w - # di r - # num bp - # si c - xorl %esi,%esi # c=0 - movl 20(%esp),%edi # r => edi - movl 24(%esp),%ebx # a => exb - movl 28(%esp),%ebp # num => bp - movl 32(%esp),%ecx # w => ecx - - .align 4 -.L210: - movl %ecx,%eax # w => eax - mull (%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - movl %ecx,%eax # w => eax - mull 4(%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,4(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - movl %ecx,%eax # w => eax - mull 8(%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,8(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - movl %ecx,%eax # w => eax - mull 12(%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,12(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - addl $16,%ebx # a+=4 (4 words) - addl $16,%edi # r+=4 (4 words) - - jmp .L210 - .align 16 -.L211: - movl %esi,%eax # return(c) - popl %ebx - popl %esi - popl %edi - popl %ebp - ret -.Lfe2: - .size bn_mul_word,.Lfe2-bn_mul_word - - .align 16 -.globl bn_sqr_words - .type bn_sqr_words,@function -bn_sqr_words: - pushl %edi - pushl %esi - pushl %ebx - movl 16(%esp),%esi # r - movl 20(%esp),%edi # a - movl 24(%esp),%ebx # n - .align 4 - shrl $2,%ebx - jz .L99 -.L28: - movl (%edi),%eax # get a - mull %eax # a*a - movl %eax,(%esi) # put low into return addr - movl %edx,4(%esi) # put high into return addr - - movl 4(%edi),%eax # get a - mull %eax # a*a - movl %eax,8(%esi) # put low into return addr - movl %edx,12(%esi) # put high into return addr - - movl 8(%edi),%eax # get a - mull %eax # a*a - movl %eax,16(%esi) # put low into return addr - movl %edx,20(%esi) # put high into return addr - - movl 12(%edi),%eax # get a - mull %eax # a*a - movl %eax,24(%esi) # put low into return addr - movl %edx,28(%esi) # put high into return addr - - addl $16,%edi - addl $32,%esi - decl %ebx # n-=4; - jz .L99 - jmp .L28 - .align 16 -.L99: - movl 24(%esp),%ebx # n - andl $3,%ebx - jz .L29 - movl (%edi),%eax # get a - mull %eax # a*a - movl %eax,(%esi) # put low into return addr - movl %edx,4(%esi) # put high into return addr - decl %ebx # n--; - jz .L29 - movl 4(%edi),%eax # get a - mull %eax # a*a - movl %eax,8(%esi) # put low into return addr - movl %edx,12(%esi) # put high into return addr - decl %ebx # n--; - jz .L29 - movl 8(%edi),%eax # get a - mull %eax # a*a - movl %eax,16(%esi) # put low into return addr - movl %edx,20(%esi) # put high into return addr - -.L29: - popl %ebx - popl %esi - popl %edi - ret -.Lfe3: - .size bn_sqr_words,.Lfe3-bn_sqr_words - - .align 16 -.globl bn_div64 - .type bn_div64,@function -bn_div64: - movl 4(%esp),%edx # a - movl 8(%esp),%eax # b - divl 12(%esp) # ab/c - ret -.Lfe4: - .size bn_div64,.Lfe4-bn_div64 - .ident "GCC: (GNU) 2.6.3" diff --git a/crypto/bn/asm/x86-lnxa.s b/crypto/bn/asm/x86-lnxa.s deleted file mode 100644 index 74855dc74d..0000000000 --- a/crypto/bn/asm/x86-lnxa.s +++ /dev/null @@ -1,282 +0,0 @@ - .file "bn_mulw.c" - .version "01.01" -gcc2_compiled.: -.text - .align 4 -.globl _bn_mul_add_word - .type _bn_mul_add_word,@function -_bn_mul_add_word: - pushl %ebp - pushl %edi - pushl %esi - pushl %ebx - - # ax L(t) - # dx H(t) - # bx a - # cx w - # di r - # si c - # bp num - xorl %esi,%esi # c=0 - movl 20(%esp),%edi # r => edi - movl 24(%esp),%ebx # a => exb - movl 32(%esp),%ecx # w => ecx - movl 28(%esp),%ebp # num => ebp - - shrl $2,%ebp # num/4 - je .L910 - -# .align 4 -.L110: - # Round 1 - movl %ecx,%eax # w => eax - mull (%ebx) # w * *a - addl (%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+= carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - # Round 2 - movl %ecx,%eax # w => eax - mull 4(%ebx) # w * *a - addl 4(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+= carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,4(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - # Round 3 - movl %ecx,%eax # w => eax - mull 8(%ebx) # w * *a - addl 8(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,8(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - # Round 4 - movl %ecx,%eax # w => eax - mull 12(%ebx) # w * *a - addl 12(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,12(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - - addl $16,%ebx # a+=4 (4 words) - addl $16,%edi # r+=4 (4 words) - - decl %ebp # --num - je .L910 - jmp .L110 -# .align 4 -.L910: - movl 28(%esp),%ebp # num => ebp - andl $3,%ebp - je .L111 - - # Round 1 - movl %ecx,%eax # w => eax - mull (%ebx) # w * *a - addl (%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L111 - - # Round 2 - movl %ecx,%eax # w => eax - mull 4(%ebx) # w * *a - addl 4(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,4(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L111 - - # Round 3 - movl %ecx,%eax # w => eax - mull 8(%ebx) # w * *a - addl 8(%edi),%eax # *r+=L(t) - adcl $0,%edx # H(t)+=carry - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,8(%edi) # *r+=L(t) - movl %edx,%esi # c=H(t) - -# .align 4 -.L111: - movl %esi,%eax # return(c) - popl %ebx - popl %esi - popl %edi - popl %ebp - ret -.Lfe1: - .size _bn_mul_add_word,.Lfe1-_bn_mul_add_word - .align 4 -.globl _bn_mul_word - .type _bn_mul_word,@function -_bn_mul_word: - pushl %ebp - pushl %edi - pushl %esi - pushl %ebx - - # ax L(t) - # dx H(t) - # bx a - # cx w - # di r - # num bp - # si c - xorl %esi,%esi # c=0 - movl 20(%esp),%edi # r => edi - movl 24(%esp),%ebx # a => exb - movl 28(%esp),%ebp # num => bp - movl 32(%esp),%ecx # w => ecx - -# .align 4 -.L210: - movl %ecx,%eax # w => eax - mull (%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - movl %ecx,%eax # w => eax - mull 4(%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,4(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - movl %ecx,%eax # w => eax - mull 8(%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,8(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - movl %ecx,%eax # w => eax - mull 12(%ebx) # w * *a - addl %esi,%eax # L(t)+=c - adcl $0,%edx # H(t)+=carry - movl %eax,12(%edi) # *r=L(t) - movl %edx,%esi # c=H(t) - decl %ebp # --num - je .L211 - - addl $16,%ebx # a+=4 (4 words) - addl $16,%edi # r+=4 (4 words) - - jmp .L210 -# .align 4 -.L211: - movl %esi,%eax # return(c) - popl %ebx - popl %esi - popl %edi - popl %ebp - ret -.Lfe2: - .size _bn_mul_word,.Lfe2-_bn_mul_word - - .align 4 -.globl _bn_sqr_words - .type _bn_sqr_words,@function -_bn_sqr_words: - pushl %edi - pushl %esi - pushl %ebx - movl 16(%esp),%esi # r - movl 20(%esp),%edi # a - movl 24(%esp),%ebx # n -# .align 4 - shrl $2,%ebx - jz .L99 -.L28: - movl (%edi),%eax # get a - mull %eax # a*a - movl %eax,(%esi) # put low into return addr - movl %edx,4(%esi) # put high into return addr - - movl 4(%edi),%eax # get a - mull %eax # a*a - movl %eax,8(%esi) # put low into return addr - movl %edx,12(%esi) # put high into return addr - - movl 8(%edi),%eax # get a - mull %eax # a*a - movl %eax,16(%esi) # put low into return addr - movl %edx,20(%esi) # put high into return addr - - movl 12(%edi),%eax # get a - mull %eax # a*a - movl %eax,24(%esi) # put low into return addr - movl %edx,28(%esi) # put high into return addr - - addl $16,%edi - addl $32,%esi - decl %ebx # n-=4; - jz .L99 - jmp .L28 -# .align 4 -.L99: - movl 24(%esp),%ebx # n - andl $3,%ebx - jz .L29 - movl (%edi),%eax # get a - mull %eax # a*a - movl %eax,(%esi) # put low into return addr - movl %edx,4(%esi) # put high into return addr - decl %ebx # n--; - jz .L29 - movl 4(%edi),%eax # get a - mull %eax # a*a - movl %eax,8(%esi) # put low into return addr - movl %edx,12(%esi) # put high into return addr - decl %ebx # n--; - jz .L29 - movl 8(%edi),%eax # get a - mull %eax # a*a - movl %eax,16(%esi) # put low into return addr - movl %edx,20(%esi) # put high into return addr - -.L29: - popl %ebx - popl %esi - popl %edi - ret -.Lfe3: - .size _bn_sqr_words,.Lfe3-_bn_sqr_words - - .align 4 -.globl _bn_div64 - .type _bn_div64,@function -_bn_div64: - movl 4(%esp),%edx # a - movl 8(%esp),%eax # b - divl 12(%esp) # ab/c - ret -.Lfe4: - .size _bn_div64,.Lfe4-_bn_div64 - .ident "GCC: (GNU) 2.6.3" diff --git a/crypto/bn/asm/x86-sol.s b/crypto/bn/asm/x86-sol.s deleted file mode 100644 index c961e64fa0..0000000000 --- a/crypto/bn/asm/x86-sol.s +++ /dev/null @@ -1,224 +0,0 @@ - .file "bn_mulw.c" - .version "01.01" -gcc2_compiled.: -.text - .align 16 -.globl bn_mul_add_word - .type bn_mul_add_word,@function -bn_mul_add_word: - pushl %ebp - pushl %edi - pushl %esi - pushl %ebx - - / ax L(t) - / dx H(t) - / bx a - / cx w - / di r - / si c - / bp num - xorl %esi,%esi / c=0 - movl 20(%esp),%edi / r => edi - movl 24(%esp),%ebx / a => exb - movl 28(%esp),%ebp / num => ebp - movl 32(%esp),%ecx / w => ecx - - .align 4 -.L110: - movl %ecx,%eax / w => eax - mull (%ebx) / w * *a - addl (%edi),%eax / L(t)+= *r - adcl $0,%edx / H(t)+= carry - addl %esi,%eax / L(t)+=c - adcl $0,%edx / H(t)+=carry - movl %eax,(%edi) / *r=L(t) - movl %edx,%esi / c=H(t) - decl %ebp / --num - je .L111 - - movl %ecx,%eax / w => eax - mull 4(%ebx) / w * *a - addl 4(%edi),%eax / L(t)+= *r - adcl $0,%edx / H(t)+= carry - addl %esi,%eax / L(t)+=c - adcl $0,%edx / H(t)+=carry - movl %eax,4(%edi) / *r=L(t) - movl %edx,%esi / c=H(t) - decl %ebp / --num - je .L111 - - movl %ecx,%eax / w => eax - mull 8(%ebx) / w * *a - addl 8(%edi),%eax / L(t)+= *r - adcl $0,%edx / H(t)+= carry - addl %esi,%eax / L(t)+=c - adcl $0,%edx / H(t)+=carry - movl %eax,8(%edi) / *r=L(t) - movl %edx,%esi / c=H(t) - decl %ebp / --num - je .L111 - - movl %ecx,%eax / w => eax - mull 12(%ebx) / w * *a - addl 12(%edi),%eax / L(t)+= *r - adcl $0,%edx / H(t)+= carry - addl %esi,%eax / L(t)+=c - adcl $0,%edx / H(t)+=carry - movl %eax,12(%edi) / *r=L(t) - movl %edx,%esi / c=H(t) - decl %ebp / --num - je .L111 - - addl $16,%ebx / a+=4 (4 words) - addl $16,%edi / r+=4 (4 words) - - jmp .L110 - .align 16 -.L111: - movl %esi,%eax / return(c) - popl %ebx - popl %esi - popl %edi - popl %ebp - ret -.Lfe1: - .size bn_mul_add_word,.Lfe1-bn_mul_add_word - .align 16 -.globl bn_mul_word - .type bn_mul_word,@function -bn_mul_word: - pushl %ebp - pushl %edi - pushl %esi - pushl %ebx - - / ax L(t) - / dx H(t) - / bx a - / cx w - / di r - / num bp - / si c - xorl %esi,%esi / c=0 - movl 20(%esp),%edi / r => edi - movl 24(%esp),%ebx / a => exb - movl 28(%esp),%ebp / num => ebp - movl 32(%esp),%ecx / w => ecx - - .align 4 -.L210: - movl %ecx,%eax / w => eax - mull (%ebx) / w * *a - addl %esi,%eax / L(t)+=c - adcl $0,%edx / H(t)+=carry - movl %eax,(%edi) / *r=L(t) - movl %edx,%esi / c=H(t) - decl %ebp / --num - je .L211 - - movl %ecx,%eax / w => eax - mull 4(%ebx) / w * *a - addl %esi,%eax / L(t)+=c - adcl $0,%edx / H(t)+=carry - movl %eax,4(%edi) / *r=L(t) - movl %edx,%esi / c=H(t) - decl %ebp / --num - je .L211 - - movl %ecx,%eax / w => eax - mull 8(%ebx) / w * *a - addl %esi,%eax / L(t)+=c - adcl $0,%edx / H(t)+=carry - movl %eax,8(%edi) / *r=L(t) - movl %edx,%esi / c=H(t) - decl %ebp / --num - je .L211 - - movl %ecx,%eax / w => eax - mull 12(%ebx) / w * *a - addl %esi,%eax / L(t)+=c - adcl $0,%edx / H(t)+=carry - movl %eax,12(%edi) / *r=L(t) - movl %edx,%esi / c=H(t) - decl %ebp / --num - je .L211 - - addl $16,%ebx / a+=4 (4 words) - addl $16,%edi / r+=4 (4 words) - - jmp .L210 - .align 16 -.L211: - movl %esi,%eax / return(c) - popl %ebx - popl %esi - popl %edi - popl %ebp - ret -.Lfe2: - .size bn_mul_word,.Lfe2-bn_mul_word - - .align 16 -.globl bn_sqr_words - .type bn_sqr_words,@function -bn_sqr_words: - pushl %edi - pushl %esi - pushl %ebx - movl 16(%esp),%esi / r - movl 20(%esp),%edi / a - movl 24(%esp),%ebx / n - .align 4 -.L28: - movl (%edi),%eax / get a - mull %eax / a*a - movl %eax,(%esi) / put low into return addr - movl %edx,4(%esi) / put high into return addr - decl %ebx / n--; - je .L29 - - movl 4(%edi),%eax / get a - mull %eax / a*a - movl %eax,8(%esi) / put low into return addr - movl %edx,12(%esi) / put high into return addr - decl %ebx / n--; - je .L29 - - movl 8(%edi),%eax / get a - mull %eax / a*a - movl %eax,16(%esi) / put low into return addr - movl %edx,20(%esi) / put high into return addr - decl %ebx / n--; - je .L29 - - movl 12(%edi),%eax / get a - mull %eax / a*a - movl %eax,24(%esi) / put low into return addr - movl %edx,28(%esi) / put high into return addr - decl %ebx / n--; - je .L29 - - addl $16,%edi - addl $32,%esi - jmp .L28 - .align 16 -.L29: - popl %ebx - popl %esi - popl %edi - ret -.Lfe3: - .size bn_sqr_words,.Lfe3-bn_sqr_words - - .align 16 -.globl bn_div64 - .type bn_div64,@function -bn_div64: - movl 4(%esp),%edx / a - movl 8(%esp),%eax / b - divl 12(%esp) / ab/c - ret -.Lfe4: - .size bn_div64,.Lfe4-bn_div64 - .ident "GCC: (GNU) 2.6.3" diff --git a/crypto/bn/asm/x86nt32.asm b/crypto/bn/asm/x86nt32.asm deleted file mode 100644 index 0198c2c583..0000000000 --- a/crypto/bn/asm/x86nt32.asm +++ /dev/null @@ -1,288 +0,0 @@ - TITLE bn_mulw.c - .386P -.model FLAT -PUBLIC _bn_mul_add_word -_TEXT SEGMENT -; File bn_mulw.c -_bn_mul_add_word PROC NEAR - push ebp - push ebx - push esi - push edi - mov edi,DWORD PTR 20[esp] ; r - mov ebx,DWORD PTR 24[esp] ; a - mov ecx,DWORD PTR 32[esp] ; w - xor esi,esi ; c=0 - - mov ebp,DWORD PTR 28[esp] ; num - shr ebp,2 ; num/4 - jz $L666 - -$L546: - ; Round one - mov eax,DWORD PTR [ebx] ; edx:eax = *a * w - mul ecx - add eax,DWORD PTR [edi] ; *r+=ax - adc edx,0 - add eax,esi ; edx:eax += c - adc edx,0 - mov DWORD PTR [edi],eax ; *r+=ax - mov esi,edx ; c = overflow - - ; Round two - mov eax,DWORD PTR 4[ebx] ; edx:eax = *a * w - mul ecx - add eax,DWORD PTR 4[edi] ; *r+=ax - adc edx,0 - add eax,esi ; edx:eax += c - adc edx,0 - mov DWORD PTR 4[edi],eax ; *r+=ax - mov esi,edx ; c = overflow - - ; Round three - mov eax,DWORD PTR 8[ebx] ; edx:eax = *a * w - mul ecx - add eax,DWORD PTR 8[edi] ; *r+=ax - adc edx,0 - add eax,esi ; edx:eax += c - adc edx,0 - mov DWORD PTR 8[edi],eax ; *r+=ax - mov esi,edx ; c = overflow - - ; Round four - mov eax,DWORD PTR 12[ebx] ; edx:eax = *a * w - mul ecx - add eax,DWORD PTR 12[edi] ; *r+=ax - adc edx,0 - add eax,esi ; edx:eax += c - adc edx,0 - mov DWORD PTR 12[edi],eax ; *r+=ax - mov esi,edx ; c = overflow - - add ebx,16 - add edi,16 - - dec ebp - jz $L666 - jmp $L546 -$L666: - mov ebp,DWORD PTR 28[esp] ; num - and ebp,3 ; num%4 - jz $L547 - - ; Round one - mov eax,DWORD PTR [ebx] ; edx:eax = *a * w - mul ecx - add eax,DWORD PTR [edi] ; *r+=ax - adc edx,0 - add eax,esi ; edx:eax += c - adc edx,0 - mov DWORD PTR [edi],eax ; *r+=ax - mov esi,edx ; c = overflow - dec ebp - jz $L547 - ; Round two - mov eax,DWORD PTR 4[ebx] ; edx:eax = *a * w - mul ecx - add eax,DWORD PTR 4[edi] ; *r+=ax - adc edx,0 - add eax,esi ; edx:eax += c - adc edx,0 - mov DWORD PTR 4[edi],eax ; *r+=ax - mov esi,edx ; c = overflow - dec ebp - jz $L547 - ; Round three - mov eax,DWORD PTR 8[ebx] ; edx:eax = *a * w - mul ecx - add eax,DWORD PTR 8[edi] ; *r+=ax - adc edx,0 - add eax,esi ; edx:eax += c - adc edx,0 - mov DWORD PTR 8[edi],eax ; *r+=ax - mov esi,edx ; c = overflow - -$L547: - mov eax,esi - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_mul_add_word ENDP -_TEXT ENDS -PUBLIC _bn_mul_word -_TEXT SEGMENT -_bn_mul_word PROC NEAR - push ebp - push ebx - push esi - push edi - - mov edi,DWORD PTR 20[esp] ; r - mov ebx,DWORD PTR 24[esp] ; a - mov ebp,DWORD PTR 28[esp] ; num - mov ecx,DWORD PTR 32[esp] ; w - xor esi,esi ; c=0 - - shr ebp,2 ; num/4 - jz $L266 - -$L593: - ; Round one - mov eax,DWORD PTR [ebx] ; edx:eax= w * *a - mul ecx - add eax,esi ; edx:eax+=c - adc edx,0 - mov DWORD PTR [edi],eax ; *r=eax - mov esi,edx ; c=edx - ; Round two - mov eax,DWORD PTR 4[ebx] ; edx:eax= w * *a - mul ecx - add eax,esi ; edx:eax+=c - adc edx,0 - mov DWORD PTR 4[edi],eax ; *r=eax - mov esi,edx ; c=edx - ; Round three - mov eax,DWORD PTR 8[ebx] ; edx:eax= w * *a - mul ecx - add eax,esi ; edx:eax+=c - adc edx,0 - mov DWORD PTR 8[edi],eax ; *r=eax - mov esi,edx ; c=edx - ; Round four - mov eax,DWORD PTR 12[ebx] ; edx:eax= w * *a - mul ecx - add eax,esi ; edx:eax+=c - adc edx,0 - mov DWORD PTR 12[edi],eax ; *r=eax - mov esi,edx ; c=edx - - add ebx,16 - add edi,16 - - dec ebp - jz $L266 - jmp $L593 -$L266: - mov ebp,DWORD PTR 28[esp] ; num - and ebp,3 - jz $L601 - - ; Round one - mov eax,DWORD PTR [ebx] ; edx:eax= w * *a - mul ecx - add eax,esi ; edx:eax+=c - adc edx,0 - mov DWORD PTR [edi],eax ; *r=eax - mov esi,edx ; c=edx - dec ebp - jz $L601 - ; Round two - mov eax,DWORD PTR 4[ebx] ; edx:eax= w * *a - mul ecx - add eax,esi ; edx:eax+=c - adc edx,0 - mov DWORD PTR 4[edi],eax ; *r=eax - mov esi,edx ; c=edx - dec ebp - jz $L601 - ; Round three - mov eax,DWORD PTR 8[ebx] ; edx:eax= w * *a - mul ecx - add eax,esi ; edx:eax+=c - adc edx,0 - mov DWORD PTR 8[edi],eax ; *r=eax - mov esi,edx ; c=edx - -$L601: - mov eax,esi - pop edi - pop esi - pop ebx - pop ebp - ret -_bn_mul_word ENDP -_TEXT ENDS -PUBLIC _bn_sqr_words -_TEXT SEGMENT -_bn_sqr_words PROC NEAR - push ebx - push esi - push edi - mov esi,DWORD PTR 16[esp] ; r - mov edi,DWORD PTR 20[esp] ; a - mov ebx,DWORD PTR 24[esp] ; num - - shr ebx,2 ; num/4 - jz $L111 -$L640: - ; Round 1 - mov eax, DWORD PTR [edi] - mul eax ; *a * *a - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],edx - ; Round 2 - mov eax, DWORD PTR 4[edi] - mul eax ; *a * *a - mov DWORD PTR 8[esi],eax - mov DWORD PTR 12[esi],edx - ; Round 3 - mov eax, DWORD PTR 8[edi] - mul eax ; *a * *a - mov DWORD PTR 16[esi],eax - mov DWORD PTR 20[esi],edx - ; Round 4 - mov eax, DWORD PTR 12[edi] - mul eax ; *a * *a - mov DWORD PTR 24[esi],eax - mov DWORD PTR 28[esi],edx - - add edi,16 - add esi,32 - - dec ebx - jz $L111 - jmp $L640 -$L111: - mov ebx,DWORD PTR 24[esp] ; num - and ebx,3 ; num%3 - jz $L645 - - ; Round 1 - mov eax, DWORD PTR [edi] - mul eax ; *a * *a - mov DWORD PTR [esi],eax - mov DWORD PTR 4[esi],edx - dec ebx - jz $L645 - ; Round 2 - mov eax, DWORD PTR 4[edi] - mul eax ; *a * *a - mov DWORD PTR 8[esi],eax - mov DWORD PTR 12[esi],edx - dec ebx - jz $L645 - ; Round 3 - mov eax, DWORD PTR 8[edi] - mul eax ; *a * *a - mov DWORD PTR 16[esi],eax - mov DWORD PTR 20[esi],edx - -$L645: - pop edi - pop esi - pop ebx - ret -_bn_sqr_words ENDP -_TEXT ENDS -PUBLIC _bn_div64 -_TEXT SEGMENT -_bn_div64 PROC NEAR - mov edx, DWORD PTR 4[esp] - mov eax, DWORD PTR 8[esp] - div DWORD PTR 12[esp] - ret -_bn_div64 ENDP -_TEXT ENDS -END diff --git a/crypto/bn/bn_bld.c b/crypto/bn/bn_bld.c deleted file mode 100644 index 966db43962..0000000000 --- a/crypto/bn/bn_bld.c +++ /dev/null @@ -1,144 +0,0 @@ -/* crypto/bn/bn_bld.c */ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ - -#include -#include "cryptlib.h" -#include "bn_lcl.h" - -BN_BL_CTX *BN_BL_CTX_new() - { - BN_BL_CTX *ret; - - if ((ret=(BN_BL_CTX *)Malloc(sizeof(BN_BL_CTX))) == NULL) - { - BNerr(BN_F_BN_BL_CTX_NEW,ERR_R_MALLOC_FAILURE); - return(NULL); - } - if ((ret->num=BN_new()) == NULL) goto err; - if ((ret->mod=BN_new()) == NULL) goto err; - ret->inum=NULL; - ret->count=16; - ret->count=1; - return(ret); - } - -int BN_BL_CTX_Init(a,mod) -BN_BL_CTX *a; -BIGNUM *mod; - { - int i; - BN_CTX *ctx; - - if ((ctx=BN_CTX_new()) == NULL) goto m_err; - - if (BN_copy(a->mod,mod) == NULL) goto err; - i=BN_num_bits(mod); - if (!BN_rand(a->num,i,1,0)) goto err; - - if (a->inum != NULL) BN_clear_free(a->inum); - a->inum=BN_mod_inverse(a->num,a->mod,ctx) - ret->count=16; - return(1); -m_err: - BNerr(BN_F_BN_BL_CTX_INIT,ERR_R_MALLOC_FAILURE); -err: - return(0); - } - -BN_BL_CTX *BN_BL_CTX_Update(a) -BN_BL_CTX *a; - { - BN_CTX *ctx; - BN_BL_CTX *new; - - if (--a->count > 0) - return(1); - - new=BN_BL_CTX_new(); - /* set/get lock */ - if ((ctx=BN_CTX_new()) == NULL) - return(NULL); - new->inum=BN_new(); - - BN_mod_mul(new->num,a->num,a->num,a->mod,ctx); - BN_mod_mul(new->inum,a->inum,a->inum,a->mod,ctx); - BN_copy(new->mod,a->mod); - BN_BL_CTX_free(a); - return(new); - } - -void BN_BL_CTX_free(a) -BN_BL_CTX *a; - { - int i; - - if (a == NULL) return; - - i=CRYPTO_add(&a->references,-1,CRYPTO_LOCK_RSA); - if (i > 0) return; -#ifdef REF_CHECK - if (i < 0) - { - fprintf(stderr,"BN_BL_CTX_free, bad reference count\n"); - abort(); - } -#endif - if (a->num == NULL) BN_clear_free(a->num); - if (a->inum == NULL) BN_clear_free(a->inum); - if (a->mod == NULL) BN_clear_free(a->mod); - } diff --git a/crypto/bn/bn_mod.c b/crypto/bn/bn_mod.c deleted file mode 100644 index c351aac14f..0000000000 --- a/crypto/bn/bn_mod.c +++ /dev/null @@ -1,97 +0,0 @@ -/* crypto/bn/bn_mod.c */ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ - -#include -#include "cryptlib.h" -#include "bn_lcl.h" - -/* rem != m */ -int BN_mod(rem, m, d,ctx) -BIGNUM *rem; -BIGNUM *m; -BIGNUM *d; -BN_CTX *ctx; - { -#if 0 /* The old slow way */ - int i,nm,nd; - BIGNUM *dv; - - if (BN_ucmp(m,d) < 0) - return((BN_copy(rem,m) == NULL)?0:1); - - dv=ctx->bn[ctx->tos]; - - if (!BN_copy(rem,m)) return(0); - - nm=BN_num_bits(rem); - nd=BN_num_bits(d); - if (!BN_lshift(dv,d,nm-nd)) return(0); - for (i=nm-nd; i>=0; i--) - { - if (BN_cmp(rem,dv) >= 0) - { - if (!BN_sub(rem,rem,dv)) return(0); - } - if (!BN_rshift1(dv,dv)) return(0); - } - return(1); -#else - return(BN_div(NULL,rem,m,d,ctx)); -#endif - } - diff --git a/crypto/bn/bn_sub.c b/crypto/bn/bn_sub.c deleted file mode 100644 index bba80f8afb..0000000000 --- a/crypto/bn/bn_sub.c +++ /dev/null @@ -1,180 +0,0 @@ -/* crypto/bn/bn_sub.c */ -/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ - -#include -#include "cryptlib.h" -#include "bn_lcl.h" - -/* unsigned subtraction of b from a, a must be larger than b. */ -void bn_qsub(r, a, b) -BIGNUM *r; -BIGNUM *a; -BIGNUM *b; - { - int max,min; - register BN_ULONG t1,t2,*ap,*bp,*rp; - int i,carry; -#if defined(IRIX_CC_BUG) && !defined(LINT) - int dummy; -#endif - - max=a->top; - min=b->top; - ap=a->d; - bp=b->d; - rp=r->d; - - carry=0; - for (i=0; i t2) break; - } - } -#if 0 - memcpy(rp,ap,sizeof(*rp)*(max-i)); -#else - for (; itop=max; - bn_fix_top(r); - } - -int BN_sub(r, a, b) -BIGNUM *r; -BIGNUM *a; -BIGNUM *b; - { - int max,i; - int add=0,neg=0; - BIGNUM *tmp; - - /* a - b a-b - * a - -b a+b - * -a - b -(a+b) - * -a - -b b-a - */ - if (a->neg) - { - if (b->neg) - { tmp=a; a=b; b=tmp; } - else - { add=1; neg=1; } - } - else - { - if (b->neg) { add=1; neg=0; } - } - - if (add) - { - /* As a fast max size, do a a->top | b->top */ - i=(a->top | b->top)+1; - if (bn_wexpand(r,i) == NULL) - return(0); - if (i) - bn_qadd(r,a,b); - else - bn_qadd(r,b,a); - r->neg=neg; - return(1); - } - - /* We are actually doing a - b :-) */ - - max=(a->top > b->top)?a->top:b->top; - if (bn_wexpand(r,max) == NULL) return(0); - if (BN_ucmp(a,b) < 0) - { - bn_qsub(r,b,a); - r->neg=1; - } - else - { - bn_qsub(r,a,b); - r->neg=0; - } - return(1); - } - diff --git a/crypto/bn/m.pl b/crypto/bn/m.pl deleted file mode 100644 index f69b036666..0000000000 --- a/crypto/bn/m.pl +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/local/bin/perl - - -for ($i=0; $i<256; $i++) - { - for ($j=0; $j<256; $j++) - { - $a0=$i&0x0f; - $a1=($i>>4)&0x0f; - $b0=$j&0x0f; - $b1=($j>>4)&0x0f; - - $a0b0=$a0*$b0; - $a1b1=$a1*$b1; - - $a01=$a0-$a1; - $b10=$b1-$b0; - $a01b10=$a01*$b10; - - if ($a01b10 < 0) - { - $neg=1; - $a01b10= -$a01b10; - } - $t=($a0b0>>4)+($a0b0&0x0f)+($a1b1&0x0f); - if ($neg) - { $t-=($a01b10&0x0f); } - else { $t+=($a01b10&0x0f); } - printf("%02X %s%02X %02X\n",$a1b1,($neg)?"-":" ",$a01b10,$a0b0) - if ($t < 0) - } - } diff --git a/crypto/bn/stuff/bn_knuth.c b/crypto/bn/stuff/bn_knuth.c deleted file mode 100644 index 9a3f4130ed..0000000000 --- a/crypto/bn/stuff/bn_knuth.c +++ /dev/null @@ -1,378 +0,0 @@ -/* crypto/bn/bn_knuth.c */ - -#include -#include "cryptlib.h" -#include "bn.h" - -/* This is just a test implementation, it has not been modified for - * speed and it still has memory leaks. */ - -int BN_mask_bits(BIGNUM *a,int n); - -#undef DEBUG -#define MAIN - -/* r must be different to a and b - * Toom-Cook multiplication algorithm, taken from - * The Art Of Computer Programming, Volume 2, Donald Knuth - */ - -#define CODE1 ((BIGNUM *)0x01) -#define CODE2 ((BIGNUM *)0x02) -#define CODE3 ((BIGNUM *)0x03) -#define MAXK (30+1) - -#define C3 3 -#define C4 4 -#define C5 5 -#define C6 6 -#define C7 7 -#define C8 8 -#define C9 9 -#define C10 10 -#define DONE 11 - -int new_total=0; -int Free_total=0; -int max=0,max_total=0; - -BIGNUM *LBN_new(void ); -BIGNUM *LBN_dup(BIGNUM *a); -void LBN_free(BIGNUM *a); - -int BN_mul_knuth(w, a, b) -BIGNUM *w; -BIGNUM *a; -BIGNUM *b; - { - int ret=1; - int i,j,n,an,bn,y,z; - BIGNUM *U[MAXK],*V[MAXK],*T[MAXK]; - BIGNUM *C[(MAXK*2*3)]; - BIGNUM *W[(MAXK*2)],*t1,*t2,*t3,*t4; - int Utos,Vtos,Ctos,Wtos,Ttos; - unsigned int k,Q,R; - unsigned int q[MAXK]; - unsigned int r[MAXK]; - int state; - - /* C1 */ - Utos=Vtos=Ctos=Wtos=Ttos=0; - k=1; - q[0]=q[1]=64; - r[0]=r[1]=4; - Q=6; - R=2; - - if (!bn_expand(w,BN_BITS2*2)) goto err; - an=BN_num_bits(a); - bn=BN_num_bits(b); - n=(an > bn)?an:bn; - while ((q[k-1]+q[k]) < n) - { - k++; - Q+=R; - i=R+1; - if ((i*i) <= Q) R=i; - q[k]=(1<top == 0) || (t1->top == 0)) - w->top=0; - else - BN_mul(w,t1,t2); - - LBN_free(t1); /* FREE */ - LBN_free(t2); /* FREE */ - state=C10; - } - else - { - lr=r[k]; - lq=q[k]; - lp=q[k-1]+q[k]; - state=C4; - } - break; - case C4: - for (z=0; z<2; z++) /* do for u and v */ - { - /* break the item at C[Ctos-1] - * into lr+1 parts of lq bits each - * for j=0; j<=2r; j++ - */ - t1=C[--Ctos]; /* pop off u */ -#ifdef DEBUG - printf("Ctos=%d poped %d\n",Ctos,1); -#endif - if ((t2=LBN_dup(t1)) == NULL) goto err; - BN_mask_bits(t2,lq); - T[Ttos++]=t2; -#ifdef DEBUG - printf("C4 r=0 bits=%d\n",BN_num_bits(t2)); -#endif - for (i=1; i<=lr; i++) - { - if (!BN_rshift(t1,t1,lq)) goto err; - if ((t2=LBN_dup(t1)) == NULL) goto err; - BN_mask_bits(t2,lq); - T[Ttos++]=t2; -#ifdef DEBUG - printf("C4 r=%d bits=%d\n",i, - BN_num_bits(t2)); -#endif - } - LBN_free(t1); - - if ((t2=LBN_new()) == NULL) goto err; - if ((t3=LBN_new()) == NULL) goto err; - for (j=0; j<=2*lr; j++) - { - if ((t1=LBN_new()) == NULL) goto err; - - if (!BN_set_word(t3,j)) goto err; - for (i=lr; i>=0; i--) - { - if (!BN_mul(t2,t1,t3)) goto err; - if (!BN_add(t1,t2,T[i])) goto err; - } - /* t1 is U(j) */ - if (z == 0) - U[Utos++]=t1; - else - V[Vtos++]=t1; - } - LBN_free(t2); - LBN_free(t3); - while (Ttos) LBN_free(T[--Ttos]); - } -#ifdef DEBUG - for (i=0; i0; i--) - { - C[Ctos++]=V[i]; - C[Ctos++]=U[i]; - C[Ctos++]=CODE3; - } - C[Ctos++]=V[0]; - C[Ctos++]=U[0]; -#ifdef DEBUG - printf("Ctos=%d pushed %d\n",Ctos,2*lr*3+3); -#endif - Vtos=Utos=0; - state=C3; - break; - case C6: - if ((t1=LBN_dup(w)) == NULL) goto err; - W[Wtos++]=t1; -#ifdef DEBUG - printf("put %d bit number onto w\n",BN_num_bits(t1)); -#endif - state=C3; - break; - case C7: - lr=r[k]; - lq=q[k]; - lp=q[k]+q[k-1]; - z=Wtos-2*lr-1; - for (j=1; j<=2*lr; j++) - { - for (i=2*lr; i>=j; i--) - { - if (!BN_sub(W[z+i],W[z+i],W[z+i-1])) goto err; - BN_div_word(W[z+i],j); - } - } - state=C8; - break; - case C8: - y=2*lr-1; - if ((t1=LBN_new()) == NULL) goto err; - if ((t3=LBN_new()) == NULL) goto err; - - for (j=y; j>0; j--) - { - if (!BN_set_word(t3,j)) goto err; - for (i=j; i<=y; i++) - { - if (!BN_mul(t1,W[z+i+1],t3)) goto err; - if (!BN_sub(W[z+i],W[z+i],t1)) goto err; - } - } - LBN_free(t1); - LBN_free(t3); - state=C9; - break; - case C9: - BN_zero(w); -#ifdef DEBUG - printf("lq=%d\n",lq); -#endif - for (i=lr*2; i>=0; i--) - { - BN_lshift(w,w,lq); - BN_add(w,w,W[z+i]); - } - for (i=0; i<=lr*2; i++) - LBN_free(W[--Wtos]); - state=C10; - break; - case C10: - k++; - t1=C[--Ctos]; -#ifdef DEBUG - printf("Ctos=%d poped %d\n",Ctos,1); - printf("code= CODE%d\n",t1); -#endif - if (t1 == CODE3) - state=C6; - else if (t1 == CODE2) - { - if ((t2=LBN_dup(w)) == NULL) goto err; - W[Wtos++]=t2; - state=C7; - } - else if (t1 == CODE1) - { - state=DONE; - } - else - { - printf("BAD ERROR\n"); - goto err; - } - break; - default: - printf("bad state\n"); - goto err; - break; - } - if (state == DONE) break; - } - ret=1; -err: - if (ret == 0) printf("ERROR\n"); - return(ret); - } - -#ifdef MAIN -main() - { - BIGNUM *a,*b,*r; - int i; - - if ((a=LBN_new()) == NULL) goto err; - if ((b=LBN_new()) == NULL) goto err; - if ((r=LBN_new()) == NULL) goto err; - - if (!BN_rand(a,1024*2,0,0)) goto err; - if (!BN_rand(b,1024*2,0,0)) goto err; - - for (i=0; i<10; i++) - { - if (!BN_mul_knuth(r,a,b)) goto err; /**/ - /*if (!BN_mul(r,a,b)) goto err; /**/ - } -BN_print(stdout,a); printf(" * "); -BN_print(stdout,b); printf(" =\n"); -BN_print(stdout,r); printf("\n"); - -printf("BN_new() =%d\nBN_free()=%d max=%d\n",new_total,Free_total,max); - - - exit(0); -err: - ERR_load_crypto_strings(); - ERR_print_errors(stderr); - exit(1); - } -#endif - -int BN_mask_bits(a,n) -BIGNUM *a; -int n; - { - int b,w; - - w=n/BN_BITS2; - b=n%BN_BITS2; - if (w >= a->top) return(0); - if (b == 0) - a->top=w; - else - { - a->top=w+1; - a->d[w]&= ~(BN_MASK2< max) max=max_total; - return(BN_dup(a)); - } - -BIGNUM *LBN_new() - { - new_total++; - max_total++; - if (max_total > max) max=max_total; - return(BN_new()); - } - -void LBN_free(a) -BIGNUM *a; - { - max_total--; - if (max_total > max) max=max_total; - Free_total++; - BN_free(a); - } diff --git a/crypto/bn/stuff/div.c b/crypto/bn/stuff/div.c deleted file mode 100644 index 3d6e08622d..0000000000 --- a/crypto/bn/stuff/div.c +++ /dev/null @@ -1,340 +0,0 @@ -/* crypto/bn/div.c */ - -#include -#include "cryptlib.h" -#include "bn.h" - -BN_ULONG bn_div_2word(); - -int BN_div2(dv, rm, num, div,ctx) -BIGNUM *dv; -BIGNUM *rm; -BIGNUM *num; -BIGNUM *div; -BN_CTX *ctx; - { - int norm_shift,i,j,nm,nd,loop; - BIGNUM *tmp,wnum,*snum,*sdiv,*res; - BN_ULONG *resp,*wnump; - BN_ULONG d0,d1; - int num_n,div_n; - -#ifdef DEBUG -BN_print(stdout,num); printf(" number\n"); -BN_print(stdout,div); printf(" divisor\n"); -#endif - if (BN_is_zero(num)) - { - BNerr(BN_F_BN_DIV,BN_R_DIV_BY_ZERO); - return(0); - } - - if (BN_cmp(num,div) < 0) - { - if (rm != NULL) - { if (BN_copy(rm,num) == NULL) return(0); } - if (dv != NULL) BN_zero(dv); - return(1); - } - - tmp=ctx->bn[ctx->tos]; - snum=ctx->bn[ctx->tos+1]; - sdiv=ctx->bn[ctx->tos+2]; - if (dv == NULL) - res=ctx->bn[ctx->tos+3]; - else res=dv; - - /* First we normalise the numbers */ - norm_shift=BN_BITS2-((BN_num_bits(div))%BN_BITS2); - BN_lshift(sdiv,div,norm_shift); - norm_shift+=BN_BITS2; - BN_lshift(snum,num,norm_shift); - div_n=sdiv->top; - num_n=snum->top; - loop=num_n-div_n; -#ifdef DEBUG -BN_print(stdout,snum); printf(" shifted num, forget last word\n"); -BN_print(stdout,sdiv); printf(" shifted div\n"); -#endif - - /* Lets setup a 'win'dow into snum - * This is the part that corresponds to the current - * 'area' being divided */ - wnum.d= &(snum->d[loop]); - wnum.top= div_n; - wnum.max= snum->max; /* a bit of a lie */ - wnum.neg= 0; - - /* Get the top 2 words of sdiv */ - i=sdiv->top; - d0=sdiv->d[div_n-1]; - d1=sdiv->d[div_n-2]; - - /* pointer to the 'top' of snum */ - wnump= &(snum->d[num_n-1]); - - /* Setup to 'res' */ - res->neg=0; - res->top=loop; - resp= &(res->d[loop-1]); - bn_expand(res,(loop+1)*BN_BITS2); - - /* space for temp */ - bn_expand(tmp,(div_n+1)*BN_BITS2); - -#ifdef DEBUG -printf("wnum="); BN_print(stdout,&wnum); printf(" initial sub check\n"); -printf("div ="); BN_print(stdout,sdiv); printf(" loop=%d\n",loop); -#endif - if (BN_cmp(&wnum,sdiv) >= 0) - { - BN_sub(&wnum,&wnum,sdiv); - *resp=1; - res->d[res->top-1]=1; - } - else - res->top--; - resp--; -#ifdef DEBUG -BN_print(stdout,res); printf(" initial result\n"); -BN_print(stdout,&wnum); printf(" wnum\n"); -#endif - - for (i=0; i>BN_BITS2) || - (t2 <= ((t3<d,sdiv->d,div_n,q); - if (l0) - tmp->d[div_n]=l0; - else - tmp->d[div_n]=0; - for (j=div_n+1; j>0; j--) - if (tmp->d[j-1]) break; - tmp->top=j; - -#ifdef DEBUG -printf("q=%08X\n",q); -BN_print(stdout,&wnum); printf(" number\n"); -BN_print(stdout,tmp); printf(" subtract\n"); - -BN_print(stdout,snum); printf(" shifted number before\n"); -BN_print(stdout,&wnum); printf(" wnum before\n"); -#endif - j=wnum.top; - BN_sub(&wnum,&wnum,tmp); - snum->top=snum->top+wnum.top-j; - -#ifdef DEBUG -BN_print(stdout,&wnum); printf(" wnum after\n"); -BN_print(stdout,snum); printf(" shifted number after\n"); -#endif - - if (wnum.neg) - { - q--; - j=wnum.top; - BN_add(&wnum,&wnum,sdiv); - snum->top+=wnum.top-j; - fprintf(stderr,"addback\n"); -#ifdef DEBUG -BN_print(stdout,snum); printf("after addback************************:\n"); -#endif - } - *(resp--)=q; -#ifdef DEBUG -BN_print(stdout,res); printf(" result\n"); -#endif - wnump--; - } - if (rm != NULL) - BN_rshift(rm,snum,norm_shift); - return(1); - } - -main() - { - BIGNUM *a,*b,*c,*d; - BIGNUM *cc,*dd; - BN_CTX *ctx; - int i,x; - - a=BN_new(); - b=BN_new(); - c=BN_new(); - d=BN_new(); - cc=BN_new(); - dd=BN_new(); - ctx=BN_CTX_new(); - -for (i=0; i<10240; i++) - { - BN_rand(a,80,0,0); - BN_rand(b,60,0,0); - - BN_div2(d,c,a,b,ctx); - BN_div(dd,cc,a,b,ctx); - if ((BN_cmp(d,dd) != 0) || (BN_cmp(c,cc) != 0)) - { - BN_print(stderr,a); fprintf(stderr," / "); - BN_print(stderr,b); fprintf(stderr," d="); - BN_print(stderr,d); fprintf(stderr," r= "); - BN_print(stderr,c); fprintf(stderr,"\nd="); - BN_print(stderr,dd); fprintf(stderr," r= "); - BN_print(stderr,cc); fprintf(stderr,"\n"); - } - - } - -#ifdef undef -/* - BN_rand(a,600,0,0); - BN_rand(b,400,0,0); - for (i=0; i<2000000; i++) - { - BN_div2(d,c,a,b,ctx); - } -*/ -/* for (i=0;;) */ -/* for (i=0; i<0xffffffff; i++) - { - BN_ULONG rr,r,a,b,c; - BN_ULLONG l; - - a=rand()&BN_MASK2; - b=rand()&BN_MASK2; - for (;;) - { - c=rand()&BN_MASK2; - if (c) break; - } -/* for (x=1; x<256*256; x++) */ - { - c=x; - a=i>>8; - b=i&0xff; - a&= ~(0xFFFFFF<<(BN_num_bits_word(c))); - - r=bn_div_2word(a,b,c); - - rr=(BN_ULONG)((((BN_ULLONG)a< 1<= d) h-=d; - - if (i) - { - d<<=i; - h=(h<>(BN_BITS2-i)); - l<<=i; - } - dh=(d&BN_MASK2h)>>BN_BITS4; - dl=(d&BN_MASK2l); - for (;;) - { - if ((h>>BN_BITS4) == dh) - q=BN_MASK2l; - else - q=h/dh; - - for (;;) - { - t=(h-q*dh); - if ((t&BN_MASK2h) || - ((dl*q) <= ( - (t<>BN_BITS4)))) - break; - q--; - } - th=q*dh; - tl=q*dl; - t=(tl>>BN_BITS4); - tl=(tl<>BN_BITS4))&BN_MASK2; - l=(l&BN_MASK2l)< aR -convert b -> bR - - { - abRR = aR * bR - abR = REDC(abRR); /* mod N */ - } - -ab = REDC(abR); /* mod N */ - - -REDC strips off a multiplicaion by R mod N diff --git a/crypto/bn/stuff/wei_mulw.c b/crypto/bn/stuff/wei_mulw.c deleted file mode 100644 index 7f8a1e58fe..0000000000 --- a/crypto/bn/stuff/wei_mulw.c +++ /dev/null @@ -1,410 +0,0 @@ -/* crypto/bn/wei_mulw.c */ - -#include -#include "cryptlib.h" -#include "bn.h" -#include "bn_lcl.h" - -BN_ULONG bn_add_word(BN_ULONG *a,BN_ULONG c,int num); -BN_ULONG bn_add_words(BN_ULONG *ret,BN_ULONG *a,BN_ULONG *b,int num); -BN_ULONG bn_sub_words(BN_ULONG *ret,BN_ULONG *a,BN_ULONG *b,int num); - -void BN_mul_4words(BN_ULONG *ret,BN_ULONG a0,BN_ULONG a1, - BN_ULONG b0,BN_ULONG b1); - -void pr(a,n,s) -BN_ULONG *a; -int n; - { - while (n--) - fprintf(stdout,"%02X",a[n]); - fprintf(stdout,"%s",s); - } - - -BN_ULONG bn_add_word(a,w,num) -BN_ULONG *a; -BN_ULONG w; -int num; - { - BN_ULONG t; - -#ifdef DEBUG -{ BN_ULONG *aa=a; int i; for (i=num; i>0; i--) fprintf(stdout,"%02X",aa[i-1]); -fprintf(stdout," + %X - ",w); i=num; -#endif - -loop: - t= *a; - t=(t+w)&BN_MASK2; - *(a++)=t; - w=(t < w); - if (w && --num) goto loop; - -#ifdef DEBUG -for (; i>0; i--) fprintf(stdout,"%02X",aa[i-1]); -fprintf(stdout,"\n"); -} -#endif - - return(w); - } - -BN_ULONG bn_add_words(r,a,b,num) -BN_ULONG *r; -BN_ULONG *a; -BN_ULONG *b; -int num; - { -#if defined(BN_LLONG) - BN_ULLONG t; - BN_ULONG c=0; - int i; - - if (num&1) abort(); - - for (i=0; i= ((~t1)&BN_MASK2)); - (*r++)=(t1+t2+1)&BN_MASK2; - } - else - { - t2=(t1+t2)&BN_MASK2; - c=(t2 < t1); - (*r++)=t2; - } - } - return(c); -#endif - } - -BN_ULONG bn_sub_words(r,a,b,num) -BN_ULONG *r; -BN_ULONG *a; -BN_ULONG *b; -int num; - { -#if defined(BN_LLONG) - BN_ULLONG t; - BN_ULONG c=0; - int i; - - if (num&1) abort(); - - for (i=0; i= a0) - { - s=(a1-a0); - u=(b0-b1); - fix=(BN_ULLONG)s*u; - if (b0 >= b1) s=0; - } - else - { - BN_ULONG u; - - if (b0 > b1) - { - s=(b0-b1); - u=(a1-a0); - fix=(BN_ULLONG)s*u; - } - else - { - u=(a0-a1); - s=(b1-b0); - fix=(BN_ULLONG)s*u; - s=0; - } - } - - a0b0=(BN_ULLONG)a0*b0; - ret[0]=L(a0b0); - - a1b1=(BN_ULLONG)a1*b1; - tmp=(BN_ULLONG) H(a0b0) + L(a0b0) + L(fix) + L(a1b1); - ret[1]=L(tmp); - - tmp=(BN_ULLONG) a1b1 + H(tmp) + H(a0b0) + H(fix) + H(a1b1) - s; - ret[2]=L(tmp); - ret[3]=H(tmp); - } - -/* ret[3,2,1,0] += a1,a0 * b1,b0 */ -BN_ULONG BN_mul_add_4words(ret,a0,a1,b0,b1) -BN_ULONG *ret; -BN_ULONG a0,a1,b0,b1; - { - BN_ULONG s,u; - BN_ULLONG fix,a0b0,a1b1,tmp; - -#ifdef DEBUG -fprintf(stdout,"%02X%02X%02X%02X",ret[3],ret[2],ret[1],ret[0]); -fprintf(stdout," + ( %02X%02X * %02X%02X ) - ",a1,a0,b1,b0); -#endif - if (a1 >= a0) - { - s=(a1-a0); - u=(b0-b1); - fix=(BN_ULLONG)s*u; - if (b0 >= b1) s=0; - } - else - { - if (b0 > b1) - { - s=(b0-b1); - u=(a1-a0); - fix=(BN_ULLONG)s*u; - } - else - { - u=(a0-a1); - s=(b1-b0); - fix=(BN_ULLONG)s*u; - s=0; - } - } - - a0b0=(BN_ULLONG)a0*b0; - tmp=a0b0+ret[0]; - ret[0]=L(tmp); - - a1b1=(BN_ULLONG)a1*b1; - tmp=(BN_ULLONG) H(tmp) + L(a0b0) + L(fix) + L(a1b1) + ret[1]; - ret[1]=L(tmp); - - tmp=(BN_ULLONG) H(tmp) + L(a1b1) + H(a0b0) + - H(fix) + H(a1b1) -s + ret[2]; - ret[2]=L(tmp); - - tmp=(BN_ULLONG) H(tmp) + H(a1b1) + ret[3]; - ret[3]=L(tmp); -#ifdef DEBUG -fprintf(stdout,"%02X%02X%02X%02X%02X\n",H(tmp),ret[3],ret[2],ret[1],ret[0]); -#endif - return(H(tmp)); - } - -/* ret[3,2,1,0] += a1,a0 * a1,a0 */ -void BN_sqr_4words(ret,a0,a1) -BN_ULONG *ret; -BN_ULONG a0,a1; - { - BN_ULONG s,u; - BN_ULLONG tmp,tmp2; - - tmp=(BN_ULLONG)a0*a0; - ret[0]=L(tmp); - - tmp2=(BN_ULLONG)a0*a1; - tmp=(BN_ULLONG)H(tmp)+L(tmp2)*2; - ret[1]=L(tmp); - - tmp=(BN_ULLONG)a1*a1+H(tmp)+H(tmp2)*2; - ret[2]=L(tmp); - ret[3]=L(tmp); - } - -#define N0 (0) -#define N1 (half) -#define N2 (num) -#define N3 (num+half) - -#define word_cmp(r,a,b,num) \ - { \ - int n=num; \ -\ - (r)=0; \ - while (n--) \ - { \ - if ((a)[(n)] > (b)[(n)]) \ - { (r)=1; break; } \ - else if ((a)[(n)] < (b)[(n)]) \ - { (r)= -1; break; } \ - } \ - } - - -/* (a->top == b->top) && (a->top >= 2) && !(a->top & 1) */ -void bn_recursize_mul(r,t,a,b,num) -BN_ULONG *r,*t,*a,*b; -int num; - { - if ((num < 2) || (num&1)) - abort(); - -/* fprintf(stderr,"num=%d half=%d\n",num,num/2);*/ - if (num == 2) - BN_mul_4words(r,a[0],a[1],b[0],b[1]); - else if (num == 4) - { - BN_ULONG c,tmp; - - BN_mul_4words(&(r[0]),a[0],a[1],b[0],b[1]); - BN_mul_4words(&(r[4]),a[2],a[3],b[2],b[3]); - - c =BN_mul_add_4words(&(r[2]),a[0],a[1],b[2],b[3]); - c+=BN_mul_add_4words(&(r[2]),a[2],a[3],b[0],b[1]); - - bn_add_word(&(r[6]),c,2); - } - else - { - int half=num/2; - int carry,cmp_a,cmp_b; - - word_cmp(cmp_a,&(a[0]),&(a[half]),half); - word_cmp(cmp_b,&(b[0]),&(b[half]),half); - - switch (cmp_a*2+cmp_a+cmp_b) - { - case -4: - bn_sub_words(&(t[N0]),&(a[N1]),&(a[N0]),half); - bn_sub_words(&(t[N1]),&(b[N0]),&(b[N1]),half); - bn_recursize_mul(&(r[N1]),&(t[N2]), - &(t[N0]),&(t[N1]),half); - bn_sub_words(&(r[N2]),&(r[N2]),&(t[N0]),half); - carry= -1; - break; - case -2: - bn_sub_words(&(t[N0]),&(a[N1]),&(a[N0]),half); - bn_sub_words(&(t[N1]),&(b[N0]),&(b[N1]),half); - bn_recursize_mul(&(r[N1]),&(t[N2]), - &(t[N0]),&(t[N1]),half); - carry=0; - break; - case 2: - bn_sub_words(&(t[N0]),&(a[N0]),&(a[N1]),half); - bn_sub_words(&(t[N1]),&(b[N1]),&(b[N0]),half); - bn_recursize_mul(&(r[N1]),&(t[N2]), - &(t[N0]),&(t[N1]),half); - carry=0; - break; - case 4: - bn_sub_words(&(t[N0]),&(a[N1]),&(a[N0]),half); - bn_sub_words(&(t[N1]),&(b[N0]),&(b[N1]),half); - bn_recursize_mul(&(r[N1]),&(t[N2]), - &(t[N0]),&(t[N1]),half); - bn_sub_words(&(r[N2]),&(r[N2]),&(t[N1]),half); - carry= -1; - break; - default: - memset(&(r[N1]),0,sizeof(BN_ULONG)*num); - break; - } - - bn_recursize_mul(&(t[N0]),&(t[N2]),&(a[N0]),&(b[N0]),half); -#ifdef DEBUG - pr(a,half," * "); - pr(b,half," - "); - pr(t,num," - 0\n"); -#endif - memcpy(&(r[N0]),&(t[N0]),half*sizeof(BN_ULONG)); - if (bn_add_words(&(r[N1]),&(r[N1]),&(t[N1]),half)) - { bn_add_word(&(t[N1]),1,half); } - - carry+=bn_add_words(&(r[N1]),&(r[N1]),&(t[N0]),num); - - bn_recursize_mul(&(t[N0]),&(t[N2]),&(a[N1]),&(b[N1]),half); - - carry+=bn_add_words(&(r[N1]),&(r[N1]),&(t[N0]),num); - carry+=bn_add_words(&(r[N2]),&(r[N2]),&(t[N0]),half); - memcpy(&(r[N3]),&(t[N1]),half*sizeof(BN_ULONG)); - - bn_add_word(&(r[N3]),carry,half); - } - } - -main() - { - BIGNUM *a,*b,*r,*t; - int i,j; - - a=BN_new(); - b=BN_new(); - r=BN_new(); - t=BN_new(); - -#define BITS 1024 - bn_expand(r,BITS*2); - bn_expand(t,BITS*2); - fprintf(stdout,"obase=16\n"); - fprintf(stdout,"ibase=16\n"); - for (i=0; i<10; i++) - { - BN_rand(a,BITS,0,0); - BN_rand(b,BITS,0,0); - r->top=(BITS*2)/BN_BITS2; - memset(r->d,0,sizeof(r->top)*sizeof(BN_ULONG)); - memset(t->d,0,sizeof(r->top)*sizeof(BN_ULONG)); - for (j=0; j<1000; j++) - { - -/* BN_mul(r,a,b); /**/ - bn_recursize_mul(r->d,t->d,a->d,b->d,a->top); /**/ - } - BN_print(stdout,a); fprintf(stdout," * "); - BN_print(stdout,b); fprintf(stdout," - "); - BN_print(stdout,r); fprintf(stdout,"\n"); - } - } diff --git a/crypto/pkcs7/mf.p7 b/crypto/pkcs7/mf.p7 deleted file mode 100644 index 524335b4b3..0000000000 --- a/crypto/pkcs7/mf.p7 +++ /dev/null @@ -1,18 +0,0 @@ ------BEGIN PKCS7----- -MIAGCSqGSIb3DQEHAqCAMIIC2QIBATEMMAoGCCqGSIb3DQIFMIAGCSqGSIb3DQEH -AQAAoIIB7TCCAekwggFSAgEAMA0GCSqGSIb3DQEBBAUAMFsxCzAJBgNVBAYTAkFV -MRMwEQYDVQQIEwpRdWVlbnNsYW5kMRowGAYDVQQKExFDcnlwdFNvZnQgUHR5IEx0 -ZDEbMBkGA1UEAxMSVGVzdCBDQSAoMTAyNCBiaXQpMB4XDTk3MDYwOTEzNTc0NloX -DTk4MDYwOTEzNTc0NlowYzELMAkGA1UEBhMCQVUxEzARBgNVBAgTClF1ZWVuc2xh -bmQxGjAYBgNVBAoTEUNyeXB0U29mdCBQdHkgTHRkMSMwIQYDVQQDExpTZXJ2ZXIg -dGVzdCBjZXJ0ICg1MTIgYml0KTBcMA0GCSqGSIb3DQEBAQUAA0sAMEgCQQCfs8OE -J5X/EjFSDxXvRhHErYDmNlsP3YDXYY3g/HJFCTT+VWZFQ0xol2r+qKCl3194/+7X -ZLg/BMtv/yr+/rntAgMBAAEwDQYJKoZIhvcNAQEEBQADgYEAeEzEdgr2nChPcALL -vY8gl/GIlpoAjPmKD+pLeGZI9s+SEX5u1q8nCrJ6ZzkfrRnqgI5Anmev9+qPZfdU -bz5zdVSf4sUL9nX9ChXjK9NCJA3UzQHSFqhZErGUwGNkAHYHp2+zAdY6Ho6rmMzt -g0CDu/sKR4qzm6REsQGS8kgpjz4xgcUwgcICAQEwYDBbMQswCQYDVQQGEwJBVTET -MBEGA1UECBMKUXVlZW5zbGFuZDEaMBgGA1UEChMRQ3J5cHRTb2Z0IFB0eSBMdGQx -GzAZBgNVBAMTElRlc3QgQ0EgKDEwMjQgYml0KQIBADAKBggqhkiG9w0CBTANBgkq -hkiG9w0BAQQFAARALnrxJiOX9XZf2D+3vL8SKMQmMq55LltomwOLGUru/q1uVXzi -ARg7FSCegOpA1nunsTURMUGgrPXKK4XmL4IseQAAAAA= ------END PKCS7----- diff --git a/crypto/pkcs7/p7.tst b/crypto/pkcs7/p7.tst deleted file mode 100644 index 6d14dce163..0000000000 --- a/crypto/pkcs7/p7.tst +++ /dev/null @@ -1,33 +0,0 @@ ------BEGIN PKCS7----- -MIAGCSqGSIb3DQEHAqCAMIIFsQIBATELMAkGBSsOAwIaBQAwgAYJKoZIhvcNAQcB -AACgggQdMIICJTCCAc+gAwIBAgIBIjANBgkqhkiG9w0BAQQFADCBgjELMAkGA1UE -BhMCQVUxEzARBgNVBAgTClF1ZWVuc2xhbmQxETAPBgNVBAcTCEJyaXNiYW5lMRow -GAYDVQQKExFDcnlwdFNvZnQgUHR5IEx0ZDEUMBIGA1UECxMLZGV2ZWxvcG1lbnQx -GTAXBgNVBAMTEENyeXB0U29mdCBEZXYgQ0EwHhcNOTcwNjEzMTgxMDE3WhcNOTgw -NjEzMTgxMDE3WjCBiDELMAkGA1UEBhMCQVUxEzARBgNVBAgTClF1ZWVuc2xhbmQx -ETAPBgNVBAcTCEJyaXNiYW5lMRowGAYDVQQKExFDcnlwdFNvZnQgUHR5IEx0ZDEU -MBIGA1UECxMLSUlTIHRlc3RpbmcxDjAMBgNVBAMTBXRlc3QxMQ8wDQYJKoZIhvcN -AQkBFgAwXDANBgkqhkiG9w0BAQEFAANLADBIAkEAxtWiv59VH42+rotrmFAyDxTc -J2osFt5uy/zEllx3vvjtwewqQxGUOwf6cjqFOTrnpEdVvwywpEhIQ5364bJqIwID -AQABoygwJjAkBglghkgBhvhCAQ0EFxYVR2VuZXJhdGVkIHdpdGggU1NMZWF5MA0G -CSqGSIb3DQEBBAUAA0EAMnYkNV2AdpeHPy/qlcdZx6MDGIJgrLhklhcn6Or6KiAP -t9+nv9XdOGHyMyQr9ufsweuQfAgJ9yjKPZR2/adTjTCCAfAwggGaAgEAMA0GCSqG -SIb3DQEBBAUAMIGCMQswCQYDVQQGEwJBVTETMBEGA1UECBMKUXVlZW5zbGFuZDER -MA8GA1UEBxMIQnJpc2JhbmUxGjAYBgNVBAoTEUNyeXB0U29mdCBQdHkgTHRkMRQw -EgYDVQQLEwtkZXZlbG9wbWVudDEZMBcGA1UEAxMQQ3J5cHRTb2Z0IERldiBDQTAe -Fw05NzAzMjIxMzM0MDRaFw05ODAzMjIxMzM0MDRaMIGCMQswCQYDVQQGEwJBVTET -MBEGA1UECBMKUXVlZW5zbGFuZDERMA8GA1UEBxMIQnJpc2JhbmUxGjAYBgNVBAoT -EUNyeXB0U29mdCBQdHkgTHRkMRQwEgYDVQQLEwtkZXZlbG9wbWVudDEZMBcGA1UE -AxMQQ3J5cHRTb2Z0IERldiBDQTBcMA0GCSqGSIb3DQEBAQUAA0sAMEgCQQDgDgKq -IBuUMAJi4c8juAqEZ8f8FcuDWT+HcScvNztRJy9K8DnbGpiSrzzix4El6N4A7vbl -crwn/0CZmQJguZpfAgMBAAEwDQYJKoZIhvcNAQEEBQADQQA0UUvxlXXe6wKkVukn -ZoCyXbjlNsqt2rwbvfZEam6fQP3S7uq+o1Pnj+KDgE33WxWbQAA9h8fY1LWN7X3a -yTm/MYIBbTCCAWkCAQEwgYgwgYIxCzAJBgNVBAYTAkFVMRMwEQYDVQQIEwpRdWVl -bnNsYW5kMREwDwYDVQQHEwhCcmlzYmFuZTEaMBgGA1UEChMRQ3J5cHRTb2Z0IFB0 -eSBMdGQxFDASBgNVBAsTC2RldmVsb3BtZW50MRkwFwYDVQQDExBDcnlwdFNvZnQg -RGV2IENBAgEiMAkGBSsOAwIaBQCgfTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcB -MCMGCSqGSIb3DQEJBDEWBBSUVhbGkNE+KGqpOK13+FkfOkaoizAcBgkqhkiG9w0B -CQUxDxcNOTcwNzAxMDE0MzM0WjAeBgkqhkiG9w0BCQ8xETAPMA0GCCqGSIb3DQMC -AgEoMA0GCSqGSIb3DQEBAQUABECa9Jpo4w/fZOc3Vy78wZFAVF8kvpn7il99Ldsr -AQ4JiBmcfiSwEBBY6WuKT+/SYtFwZl1oXkTwB5AVCFIC/IFNAAAAAA== ------END PKCS7----- diff --git a/crypto/rc4/rc4_enc.org b/crypto/rc4/rc4_enc.org deleted file mode 100644 index c83b9aca85..0000000000 --- a/crypto/rc4/rc4_enc.org +++ /dev/null @@ -1,195 +0,0 @@ -/* crypto/rc4/rc4_enc.org */ -/* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) - * All rights reserved. - * - * This package is an SSL implementation written - * by Eric Young (eay@cryptsoft.com). - * The implementation was written so as to conform with Netscapes SSL. - * - * This library is free for commercial and non-commercial use as long as - * the following conditions are aheared to. The following conditions - * apply to all code found in this distribution, be it the RC4, RSA, - * lhash, DES, etc., code; not just the SSL code. The SSL documentation - * included with this distribution is covered by the same copyright terms - * except that the holder is Tim Hudson (tjh@cryptsoft.com). - * - * Copyright remains Eric Young's, and as such any Copyright notices in - * the code are not to be removed. - * If this package is used in a product, Eric Young should be given attribution - * as the author of the parts of the library used. - * This can be in the form of a textual message at program startup or - * in documentation (online or textual) provided with the package. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * "This product includes cryptographic software written by - * Eric Young (eay@cryptsoft.com)" - * The word 'cryptographic' can be left out if the rouines from the library - * being used are not cryptographic related :-). - * 4. If you include any Windows specific code (or a derivative thereof) from - * the apps directory (application code) you must include an acknowledgement: - * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" - * - * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * The licence and distribution terms for any publically available version or - * derivative of this code cannot be changed. i.e. this code cannot simply be - * copied and put under another distribution licence - * [including the GNU Public Licence.] - */ - -/* WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING - * - * Always modify rc4_enc.org since rc4_enc.c is automatically generated from - * it during SSLeay configuration. - * WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING - */ - -#include "rc4.h" - -/* if this is defined data[i] is used instead of *data, this is a %20 - * speedup on x86 */ -#define RC4_INDEX - -char *RC4_version="RC4 part of SSLeay 0.8.1b 29-Jun-1998"; - -char *RC4_options() - { -#ifdef RC4_INDEX - if (sizeof(RC4_INT) == 1) - return("rc4(idx,char)"); - else - return("rc4(idx,int)"); -#else - if (sizeof(RC4_INT) == 1) - return("rc4(ptr,char)"); - else - return("rc4(ptr,int)"); -#endif - } - -/* RC4 as implemented from a posting from - * Newsgroups: sci.crypt - * From: sterndark@netcom.com (David Sterndark) - * Subject: RC4 Algorithm revealed. - * Message-ID: - * Date: Wed, 14 Sep 1994 06:35:31 GMT - */ - -void RC4_set_key(key, len, data) -RC4_KEY *key; -int len; -register unsigned char *data; - { - register RC4_INT tmp; - register int id1,id2; - register RC4_INT *d; - unsigned int i; - - d= &(key->data[0]); - for (i=0; i<256; i++) - d[i]=i; - key->x = 0; - key->y = 0; - id1=id2=0; - -#define SK_LOOP(n) { \ - tmp=d[(n)]; \ - id2 = (data[id1] + tmp + id2) & 0xff; \ - if (++id1 == len) id1=0; \ - d[(n)]=d[id2]; \ - d[id2]=tmp; } - - for (i=0; i < 256; i+=4) - { - SK_LOOP(i+0); - SK_LOOP(i+1); - SK_LOOP(i+2); - SK_LOOP(i+3); - } - } - -void RC4(key, len, indata, outdata) -RC4_KEY *key; -unsigned long len; -unsigned char *indata; -unsigned char *outdata; - { - register RC4_INT *d; - register RC4_INT x,y,tx,ty; - int i; - - x=key->x; - y=key->y; - d=key->data; - -#define LOOP(in,out) \ - x=((x+1)&0xff); \ - tx=d[x]; \ - y=(tx+y)&0xff; \ - d[x]=ty=d[y]; \ - d[y]=tx; \ - (out) = d[(tx+ty)&0xff]^ (in); - -#ifndef RC4_INDEX -#define RC4_LOOP(a,b,i) LOOP(*((a)++),*((b)++)) -#else -#define RC4_LOOP(a,b,i) LOOP(a[i],b[i]) -#endif - - i= -(int)len; - i=(int)(len>>3L); - if (i) - { - for (;;) - { - RC4_LOOP(indata,outdata,0); - RC4_LOOP(indata,outdata,1); - RC4_LOOP(indata,outdata,2); - RC4_LOOP(indata,outdata,3); - RC4_LOOP(indata,outdata,4); - RC4_LOOP(indata,outdata,5); - RC4_LOOP(indata,outdata,6); - RC4_LOOP(indata,outdata,7); -#ifdef RC4_INDEX - indata+=8; - outdata+=8; -#endif - if (--i == 0) break; - } - } - i=(int)len&0x07; - if (i) - { - for (;;) - { - RC4_LOOP(indata,outdata,0); if (--i == 0) break; - RC4_LOOP(indata,outdata,1); if (--i == 0) break; - RC4_LOOP(indata,outdata,2); if (--i == 0) break; - RC4_LOOP(indata,outdata,3); if (--i == 0) break; - RC4_LOOP(indata,outdata,4); if (--i == 0) break; - RC4_LOOP(indata,outdata,5); if (--i == 0) break; - RC4_LOOP(indata,outdata,6); if (--i == 0) break; - } - } - key->x=x; - key->y=y; - } -- 2.25.1