Blob Blame History Raw
diff -Naur openca-ocspd-1.7.0.orig/src/general.h openca-ocspd-1.7.0.new/src/general.h
--- openca-ocspd-1.7.0.orig/src/general.h	2013-02-20 12:43:15.604909205 +0100
+++ openca-ocspd-1.7.0.new/src/general.h	2013-02-20 12:43:42.173460620 +0100
@@ -289,6 +289,10 @@
 
 	} CA_LIST_ENTRY;
 
+#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+#define STACK STACK_OF(OPENSSL_STRING)
+#endif
+
 typedef struct ocspd_config {
 
 	/* Configuration file name */
diff -Naur openca-ocspd-1.7.0.orig/src/ocspd_engine.c openca-ocspd-1.7.0.new/src/ocspd_engine.c
--- openca-ocspd-1.7.0.orig/src/ocspd_engine.c	2013-02-20 12:43:15.600908971 +0100
+++ openca-ocspd-1.7.0.new/src/ocspd_engine.c	2013-02-20 12:50:05.545846962 +0100
@@ -112,7 +112,11 @@
 	int i, val, num;
 
 	/* Check if there are some commands to be executed */
+#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+        val = sk_OPENSSL_STRING_num(cmds);
+#else
         val = sk_num(cmds);
+#endif
         if(val < 1) {
 		if( ocspd_conf->verbose )
                     syslog(LOG_INFO, "HSM no commands to execute in stack");
@@ -142,7 +146,11 @@
                 const char *cmd = NULL;
 		const char *arg = NULL;
 
+#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+                if( (cmd = (const char *)sk_OPENSSL_STRING_value(cmds, i)) == NULL ) {
+#else
                 if( (cmd = sk_value(cmds, i)) == NULL ) {
+#endif
 			continue;
 		}
 
@@ -207,8 +215,13 @@
 		return 0;
 
 	/* Initialise the STACK for pre/post commands */
+#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+	conf->pre_cmds = sk_OPENSSL_STRING_new_null();
+	conf->post_cmds = sk_OPENSSL_STRING_new_null();
+#else
 	conf->pre_cmds = sk_new_null();
 	conf->post_cmds = sk_new_null();
+#endif
 
 	/* Scan each option and push the value to the right cmds stack */
         for (i = 0; i < sk_CONF_VALUE_num(nval); i++) {
@@ -218,12 +231,20 @@
                         conf->engine_id = strdup(val->value);
 			syslog( LOG_INFO, "Using Engine '%s'", val->value );
                 } else if( strstr_nocase( val->name, ENV_OCSPD_ENGINE_PRE ) != NULL ) {
+#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+			sk_OPENSSL_STRING_push( conf->pre_cmds, (OPENSSL_STRING)val->value );
+#else
 			sk_push( conf->pre_cmds, val->value );
+#endif
 			if( ocspd_conf->verbose )
 			    syslog( LOG_INFO, "Added '%s' to PRE COMMANDS",
 				val->value );
 		} else if ( strstr_nocase(val->name, ENV_OCSPD_ENGINE_POST) != NULL) {
+#if OPENSSL_VERSION_NUMBER >= 0x10000000L
+			sk_OPENSSL_STRING_push( conf->post_cmds, (OPENSSL_STRING)val->value );
+#else
 			sk_push( conf->post_cmds, val->value );
+#endif
 			if( ocspd_conf->verbose )
 			    syslog( LOG_INFO, "Added '%s' to POST COMMANDS",
 				val->value );