components/openssl/openssl-1.0.1/patches/30_wanboot.patch
changeset 4366 8e8f535e48a5
parent 4002 95b8f35fcdd5
--- a/components/openssl/openssl-1.0.1/patches/30_wanboot.patch	Wed May 27 12:25:12 2015 -0700
+++ b/components/openssl/openssl-1.0.1/patches/30_wanboot.patch	Wed May 27 16:32:47 2015 -0700
@@ -2,8 +2,8 @@
 # This patch file makes the changes neccessary to build wanboot-openssl.o
 # binary. This is Solaris-specific: not suitable for upstream.
 #
---- openssl-1.0.0g/Makefile.org	2010-01-27 08:06:58.000000000 -0800
-+++ openssl-1.0.0g-1/Makefile.org	2012-03-26 03:04:08.440194448 -0700
+--- openssl-1.0.0g/Makefile.org    2010-01-27 08:06:58.000000000 -0800
++++ openssl-1.0.0g-1/Makefile.org    2012-03-26 03:04:08.440194448 -0700
 @@ -138,7 +138,13 @@
 
  BASEADDR=
@@ -18,8 +18,8 @@
  ENGDIRS= ccgost
  SHLIBDIRS= crypto ssl
 
---- openssl-1.0.0g/Makefile	2012-01-18 05:42:28.000000000 -0800
-+++ openssl-1.0.0g-1/Makefile	2012-03-26 03:03:59.170540344 -0700
+--- openssl-1.0.0g/Makefile    2012-01-18 05:42:28.000000000 -0800
++++ openssl-1.0.0g-1/Makefile    2012-03-26 03:03:59.170540344 -0700
 @@ -137,7 +137,13 @@
 
  BASEADDR=0xFB00000
@@ -34,47 +34,91 @@
  ENGDIRS= ccgost
  SHLIBDIRS= crypto ssl
 
---- openssl-1.0.0e/crypto/cryptlib.c	2011-06-22 08:39:00.000000000 -0700
-+++ openssl-1.0.0e_patched/crypto/cryptlib.c	2011-12-12 06:17:45.422476900 -0800
-@@ -412,6 +412,7 @@
+--- openssl-1.0.0e/crypto/cryptlib.c    2011-06-22 08:39:00.000000000 -0700
++++ openssl-1.0.0e_patched/crypto/cryptlib.c    2011-12-12 06:17:45.422476900 -0800
+@@ -421,11 +421,13 @@
  static void solaris_locking_callback(int mode, int type, const char *file,
      int line)
- 	{
-+#ifndef	_BOOT
- 	if (mode & CRYPTO_LOCK)
- 		{
- 		pthread_mutex_lock(&solaris_openssl_locks[type]);
-@@ -420,6 +421,7 @@
- 		{
- 		pthread_mutex_unlock(&solaris_openssl_locks[type]);
- 		}
+ {
++#ifndef    _BOOT
+     if (mode & CRYPTO_LOCK) {
+         pthread_mutex_lock(&solaris_openssl_locks[type]);
+     } else {
+         pthread_mutex_unlock(&solaris_openssl_locks[type]);
+     }
 +#endif
- 	}
+ }
  
  
-@@ -453,6 +455,12 @@
- 		}
+@@ -435,6 +437,7 @@
+ static struct CRYPTO_dynlock_value *
+ solaris_dynlock_create(const char *file, int line)
+ {
++#ifndef    _BOOT
+     int                        ret;
+     pthread_mutex_t    *dynlock;
+
+@@ -447,6 +450,9 @@
+     OPENSSL_assert(ret);
+
+     return ((struct CRYPTO_dynlock_value *)dynlock);
++#else
++    return (NULL);
++#endif
+ }
+
+ static void
+@@ -453,6 +459,7 @@
+ solaris_dynlock_lock(int mode, struct CRYPTO_dynlock_valud *dynlock,
+     const char *file, int line)
+ {
++#ifndef    _BOOT
+     int        ret;
+
+     if (mode & CRYPTO_LOCK) {
+@@ -462,6 +469,7 @@
+     }
+
+     OPENSSL_assert(ret == 0);
++#endif
+ }
+
+ static void
+@@ -468,9 +476,11 @@
+ solaris_dynlock_destroy(struct CRYPTO_dynlock_value *dynlock,
+     const char *file, int line)
+ {
++#ifndef    _BOOT
+     int ret;
+     ret = pthread_mutex_destroy((pthread_mutex_t *)dynlock);
+     OPENSSL_assert(ret);
++#endif
+ }
+
+
+@@ -514,6 +524,12 @@
+     }
  
- 	/*
-+	 * pthread_* can't be used in wanboot.
-+	 * wanboot needs not be thread-safe and mutexes and locking callback
-+	 * function will not be setup for wanboot.
-+	 */
-+#ifndef	_BOOT
-+	/*
- 	 * Set atfork handler so that child can setup its own mutexes and
- 	 * locking callbacks when it is forked
- 	 */
-@@ -475,7 +483,7 @@
- 		pthread_mutex_init(&solaris_openssl_locks[i], NULL);
- 		}
- 	locking_callback = solaris_locking_callback;
+     /*
++     * pthread_* can't be used in wanboot.
++     * wanboot needs not be thread-safe and mutexes and locking callback
++     * function will not be setup for wanboot.
++     */
++#ifndef    _BOOT
++    /*
+      * Set atfork handler so that child can setup its own mutexes and
+      * locking callbacks when it is forked
+      */
+@@ -534,7 +550,7 @@
+         pthread_mutex_init(&solaris_openssl_locks[i], NULL);
+     }
+     locking_callback = solaris_locking_callback;
 -
 +#endif
  }
  
  void CRYPTO_set_locking_callback(void (*func) (int mode, int type,
-@@ -1021,6 +1029,12 @@
+@@ -1084,6 +1100,12 @@
          MessageBox(NULL, buf, _T("OpenSSL: FATAL"), MB_OK | MB_ICONSTOP);
  }
  #else
@@ -83,36 +127,36 @@
 + * OPENSSL_showfatal() is not used anywhere else then here we can safely use
 + * the code from 0.9.7d version.
 + */
-+#ifndef	_BOOT
++#ifndef    _BOOT
  void OPENSSL_showfatal(const char *fmta, ...)
  {
      va_list ap;
-@@ -1029,6 +1043,7 @@
+@@ -1092,6 +1114,7 @@
      vfprintf(stderr, fmta, ap);
      va_end(ap);
  }
-+#endif	/* _BOOT */
++#endif    /* _BOOT */
  
  int OPENSSL_isservice(void)
  {
-@@ -1038,9 +1053,15 @@
+@@ -1101,9 +1124,15 @@
  
  void OpenSSLDie(const char *file, int line, const char *assertion)
  {
-+#ifndef	_BOOT		
++#ifndef    _BOOT        
      OPENSSL_showfatal
          ("%s(%d): OpenSSL internal error, assertion failed: %s\n", file, line,
           assertion);
 +#else
-+	fprintf(stderr,
-+		"%s(%d): OpenSSL internal error, assertion failed: %s\n",
-+		file,line,assertion);
-+#endif	
++    fprintf(stderr,
++        "%s(%d): OpenSSL internal error, assertion failed: %s\n",
++        file,line,assertion);
++#endif    
  #if !defined(_WIN32) || defined(__CYGWIN__)
      abort();
  #else
---- openssl-1.0.0e/crypto/err/err_all.c	2009-08-09 07:58:05.000000000 -0700
-+++ openssl-1.0.0e_patched/crypto/err/err_all.c	2011-12-13 05:22:01.205351400 -0800
+--- openssl-1.0.0e/crypto/err/err_all.c    2009-08-09 07:58:05.000000000 -0700
++++ openssl-1.0.0e_patched/crypto/err/err_all.c    2011-12-13 05:22:01.205351400 -0800
 @@ -148,7 +148,9 @@
      ERR_load_X509V3_strings();
      ERR_load_PKCS12_strings();
@@ -123,14 +167,14 @@
      ERR_load_TS_strings();
  # ifndef OPENSSL_NO_ENGINE
      ERR_load_ENGINE_strings();
---- openssl-1.0.0e/crypto/evp/evp_key.c	2010-03-27 12:27:50.000000000 -0700
-+++ openssl-1.0.0e_patched/crypto/evp/evp_key.c	2011-12-13 05:19:32.956908600 -0800
+--- openssl-1.0.0e/crypto/evp/evp_key.c    2010-03-27 12:27:50.000000000 -0700
++++ openssl-1.0.0e_patched/crypto/evp/evp_key.c    2011-12-13 05:19:32.956908600 -0800
 @@ -83,7 +83,7 @@
      else
          return (prompt_string);
  }
 -
-+#ifndef	_BOOT
++#ifndef    _BOOT
  /*
   * For historical reasons, the standard function for reading passwords is in
   * the DES library -- if someone ever wants to disable DES, this function
@@ -138,17 +182,17 @@
      OPENSSL_cleanse(buff, BUFSIZ);
      return ret;
  }
-+#endif	/* !_BOOT */
++#endif    /* !_BOOT */
  
  int EVP_BytesToKey(const EVP_CIPHER *type, const EVP_MD *md,
                     const unsigned char *salt, const unsigned char *data,
---- openssl-1.0.0e/crypto/rand/rand_unix.c	2009-04-06 07:31:36.000000000 -0700
-+++ openssl-1.0.0e_patched/crypto/rand/rand_unix.c	2011-12-19 07:28:39.988944800 -0800
+--- openssl-1.0.0e/crypto/rand/rand_unix.c    2009-04-06 07:31:36.000000000 -0700
++++ openssl-1.0.0e_patched/crypto/rand/rand_unix.c    2011-12-19 07:28:39.988944800 -0800
 @@ -122,7 +122,11 @@
  # include <sys/time.h>
  # include <sys/times.h>
  # include <sys/stat.h>
-+#ifdef	_BOOT
++#ifdef    _BOOT
 +# include <sys/fcntl.h>
 +#else
  # include <fcntl.h>
@@ -216,7 +260,7 @@
      }
  #  endif
  
-+#ifndef	_BOOT
++#ifndef    _BOOT
      /* put in some default random data, we need more than just this */
      l = curr_pid;
      RAND_add(&l, sizeof(l), 0.0);
@@ -224,21 +268,21 @@
  
      l = time(NULL);
      RAND_add(&l, sizeof(l), 0.0);
-+#endif /* !_BOOT */	
++#endif /* !_BOOT */    
  
  #  if defined(OPENSSL_SYS_BEOS)
      {
---- openssl-1.0.0e/crypto/rand/randfile.c	2011-03-19 02:44:37.000000000 -0700
-+++ openssl-1.0.0e_patched/crypto/rand/randfile.c	2011-12-13 05:26:51.884824200 -0800
+--- openssl-1.0.0e/crypto/rand/randfile.c    2011-03-19 02:44:37.000000000 -0700
++++ openssl-1.0.0e_patched/crypto/rand/randfile.c    2011-12-13 05:26:51.884824200 -0800
 @@ -57,9 +57,11 @@
   */
  
  /* We need to define this to get macros like S_IFBLK and S_IFCHR */
-+#ifndef	_BOOT
++#ifndef    _BOOT
  #if !defined(OPENSSL_SYS_VXWORKS)
  # define _XOPEN_SOURCE 500
  #endif
-+#endif	/* _BOOT */
++#endif    /* _BOOT */
  
  #include <errno.h>
  #include <stdio.h>
@@ -246,7 +290,7 @@
      return (ret);
  }
  
-+#ifndef	_BOOT
++#ifndef    _BOOT
  int RAND_write_file(const char *file)
  {
      unsigned char buf[BUFSIZE];
@@ -256,13 +300,13 @@
  }
 +
 +#endif /* _BOOT */
---- openssl-1.0.0e/crypto/x509v3/v3_utl.c	2009-07-27 14:08:53.000000000 -0700
-+++ openssl-1.0.0e_patched/crypto/x509v3/v3_utl.c	2011-12-13 05:10:08.844191400 -0800
+--- openssl-1.0.0e/crypto/x509v3/v3_utl.c    2009-07-27 14:08:53.000000000 -0700
++++ openssl-1.0.0e_patched/crypto/x509v3/v3_utl.c    2011-12-13 05:10:08.844191400 -0800
 @@ -715,9 +715,50 @@
      }
  }
  
-+#if	defined(_BOOT)
++#if    defined(_BOOT)
 +/* This function was copied from bio/b_sock.c */
 +static int get_ip(const char *str, unsigned char ip[4])
 +{
@@ -302,10 +346,10 @@
  {
      int a0, a1, a2, a3;
 +
-+#if	defined(_BOOT)
-+	if (get_ip(in, v4) != 1)
-+		return 0;
-+#else	/* _BOOT */
++#if    defined(_BOOT)
++    if (get_ip(in, v4) != 1)
++        return 0;
++#else    /* _BOOT */
      if (sscanf(in, "%d.%d.%d.%d", &a0, &a1, &a2, &a3) != 4)
          return 0;
      if ((a0 < 0) || (a0 > 255) || (a1 < 0) || (a1 > 255)
@@ -313,17 +357,17 @@
      v4[1] = a1;
      v4[2] = a2;
      v4[3] = a3;
-+#endif	/* _BOOT */
++#endif    /* _BOOT */
      return 1;
  }
 
---- openssl-1.0.0e/e_os.h	2011-12-19 04:17:51.631087400 -0800
-+++ openssl-1.0.0e_patched/e_os.h	2011-12-19 04:15:15.776668900 -0800
+--- openssl-1.0.0e/e_os.h    2011-12-19 04:17:51.631087400 -0800
++++ openssl-1.0.0e_patched/e_os.h    2011-12-19 04:15:15.776668900 -0800
 @@ -213,10 +213,19 @@
  #  define get_last_socket_error() errno
  #  define clear_socket_error()    errno=0
  #  define ioctlsocket(a,b,c)      ioctl(a,b,c)
-+#ifdef	_BOOT
++#ifdef    _BOOT
 +#include <netinet/in.h>
 +extern int socket_read(int, void *, size_t, int);
 +extern int socket_close(int);
@@ -339,8 +383,8 @@
  
  # ifdef WIN16                   /* never the case */
  #  define MS_CALLBACK   _far _loadds
---- openssl-1.0.0e/crypto/sparcv9cap.c	2010-09-05 12:48:01.000000000 -0700
-+++ openssl-1.0.0e_patched/crypto/sparcv9cap.c	2011-12-23 05:24:02.011607700 -0800
+--- openssl-1.0.0e/crypto/sparcv9cap.c    2010-09-05 12:48:01.000000000 -0700
++++ openssl-1.0.0e_patched/crypto/sparcv9cap.c    2011-12-23 05:24:02.011607700 -0800
 @@ -12,7 +12,11 @@
  #define SPARCV9_VIS2            (1<<3) /* reserved */
  #define SPARCV9_FMADD           (1<<4) /* reserved for SPARC64 V */
@@ -382,8 +426,8 @@
  /*
   * This code path is disabled, because of incompatibility of libdevinfo.so.1
   * and libmalloc.so.1 (see below for details)
---- openssl-1.0.0e/crypto/sparccpuid.S	2010-09-05 12:48:01.000000000 -0700
-+++ openssl-1.0.0e_patched/crypto/sparccpuid.S	2012-02-13 07:42:58.259478325 -0800
+--- openssl-1.0.0e/crypto/sparccpuid.S    2010-09-05 12:48:01.000000000 -0700
++++ openssl-1.0.0e_patched/crypto/sparccpuid.S    2012-02-13 07:42:58.259478325 -0800
 @@ -397,8 +397,13 @@
  .type	OPENSSL_cleanse,#function
  .size	OPENSSL_cleanse,.-OPENSSL_cleanse
@@ -392,8 +436,8 @@
  .section	".init",#alloc,#execinstr
  	call	solaris_locking_setup
  	nop
-	call	OPENSSL_cpuid_setup
-	nop
+ 	call	OPENSSL_cpuid_setup
+ 	nop
 +#else
 +	nop
 +	nop
@@ -418,7 +462,7 @@
  
          p = s->s3->client_random;
 
-+#ifndef	_BOOT
++#ifndef    _BOOT
          if (ssl_fill_hello_random(s, 0, p, SSL3_RANDOM_SIZE) <= 0)
 +#else
 +        if (RAND_pseudo_bytes(p,SSL3_RANDOM_SIZE) <= 0)
@@ -432,7 +476,7 @@
           * Apparently we're using a version-flexible SSL_METHOD (not at its
           * highest protocol version).
           */
-+#ifndef	_BOOT
++#ifndef    _BOOT
          if (s->ctx->method->version == SSLv23_method()->version) {
 +#else
 +        if (s->ctx->method->version == TLS1_2_VERSION) {