MailChimp for WordPress - Version 3.0.7

Version Description

Download this release

Release Info

Developer DvanKooten
Plugin Icon 128x128 MailChimp for WordPress
Version 3.0.7
Comparing to
See all releases

Code changes from version 3.0.6 to 3.0.7

CHANGELOG.md CHANGED
@@ -1,11 +1,15 @@
1
  Changelog
2
  =========
3
 
4
- #### 3.0.5 - December 9, 2015
5
 
6
  **Fixes**
7
 
8
- Workaround for SSL certification error introduced by WordPress 4.4, only affecting very old versions of PHP CURL.
 
 
 
 
9
 
10
 
11
  #### 3.0.4 - December 7, 2015
1
  Changelog
2
  =========
3
 
4
+ #### 3.0.7 - December 10, 2015
5
 
6
  **Fixes**
7
 
8
+ Workaround for [SSL certification bug in WordPress 4.4](https://core.trac.wordpress.org/ticket/34935), affecting servers with an older versions of OpenSSL installed.
9
+
10
+ **Additions**
11
+
12
+ Added `mc4wp_use_sslverify` filter to disable or explicitly enable SSL certificate verification.
13
 
14
 
15
  #### 3.0.4 - December 7, 2015
includes/class-api.php CHANGED
@@ -355,13 +355,9 @@ class MC4WP_API {
355
  'body' => $data,
356
  'timeout' => 10,
357
  'headers' => $this->get_headers(),
 
358
  );
359
 
360
- // disable ssl certificate verification for old versions of php-curl & all other http transports
361
- if( ! function_exists( 'curl_version' ) || ( ( $curl_version = curl_version() ) && version_compare( $curl_version['version'], '7.20', '<' ) ) ) {
362
- $request_args['sslverify'] = false;
363
- }
364
-
365
  $response = wp_remote_post( $url, $request_args );
366
 
367
  // test for wp errors
355
  'body' => $data,
356
  'timeout' => 10,
357
  'headers' => $this->get_headers(),
358
+ 'sslverify' => apply_filters( 'mc4wp_use_sslverify', true ),
359
  );
360
 
 
 
 
 
 
361
  $response = wp_remote_post( $url, $request_args );
362
 
363
  // test for wp errors
includes/default-filters.php CHANGED
@@ -4,3 +4,5 @@ defined( 'ABSPATH' ) or exit;
4
 
5
  add_filter( 'mc4wp_form_merge_vars', 'mc4wp_guess_merge_vars' );
6
  add_filter( 'mc4wp_integration_merge_vars', 'mc4wp_guess_merge_vars' );
 
 
4
 
5
  add_filter( 'mc4wp_form_merge_vars', 'mc4wp_guess_merge_vars' );
6
  add_filter( 'mc4wp_integration_merge_vars', 'mc4wp_guess_merge_vars' );
7
+
8
+ add_filter( 'mc4wp_use_sslverify', '__mc4wp_use_sslverify' );
includes/functions.php CHANGED
@@ -184,4 +184,43 @@ function mc4wp_get_email_type() {
184
  $email_type = apply_filters( 'mc4wp_email_type', $email_type );
185
 
186
  return $email_type;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
187
  }
184
  $email_type = apply_filters( 'mc4wp_email_type', $email_type );
185
 
186
  return $email_type;
187
+ }
188
+
189
+ /**
190
+ *
191
+ * @ignore
192
+ * @return bool
193
+ */
194
+ function __mc4wp_use_sslverify() {
195
+
196
+ // Disable for all transports other than CURL
197
+ if( ! function_exists( 'curl_version' ) ) {
198
+ return false;
199
+ }
200
+
201
+ $curl = curl_version();
202
+
203
+ // Disable if OpenSSL is not installed
204
+ if( empty( $curl['ssl_version'] ) ) {
205
+ return false;
206
+ }
207
+
208
+ $ssl_version = preg_replace( '/[^0-9\.]/', '', $curl['ssl_version'] );
209
+ $required_ssl_version = '1.0.1';
210
+
211
+ // Disable if OpenSSL is not at version 1.0.1
212
+ if( version_compare( $ssl_version, $required_ssl_version, '<' ) ) {
213
+ return false;
214
+ }
215
+
216
+ // Last character should be "f" or higher in alphabet.
217
+ // Example: 1.0.1f
218
+ $last_character = substr( $curl['ssl_version'], -1 );
219
+ if( is_string( $last_character ) ) {
220
+ if( ord( strtoupper( $last_character ) ) < ord( 'F' ) ) {
221
+ return false;
222
+ }
223
+ }
224
+
225
+ return true;
226
  }
mailchimp-for-wp.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: MailChimp for WordPress
4
  Plugin URI: https://mc4wp.com/#utm_source=wp-plugin&utm_medium=mailchimp-for-wp&utm_campaign=plugins-page
5
  Description: MailChimp for WordPress by ibericode. Adds various highly effective sign-up methods to your site.
6
- Version: 3.0.6
7
  Author: ibericode
8
  Author URI: https://ibericode.com/
9
  Text Domain: mailchimp-for-wp
@@ -47,7 +47,7 @@ function __mc4wp_load_plugin() {
47
  }
48
 
49
  // bootstrap the core plugin
50
- define( 'MC4WP_VERSION', '3.0.6' );
51
  define( 'MC4WP_PLUGIN_DIR', dirname( __FILE__ ) . '/' );
52
  define( 'MC4WP_PLUGIN_URL', plugins_url( '/' , __FILE__ ) );
53
  define( 'MC4WP_PLUGIN_FILE', __FILE__ );
3
  Plugin Name: MailChimp for WordPress
4
  Plugin URI: https://mc4wp.com/#utm_source=wp-plugin&utm_medium=mailchimp-for-wp&utm_campaign=plugins-page
5
  Description: MailChimp for WordPress by ibericode. Adds various highly effective sign-up methods to your site.
6
+ Version: 3.0.7
7
  Author: ibericode
8
  Author URI: https://ibericode.com/
9
  Text Domain: mailchimp-for-wp
47
  }
48
 
49
  // bootstrap the core plugin
50
+ define( 'MC4WP_VERSION', '3.0.7' );
51
  define( 'MC4WP_PLUGIN_DIR', dirname( __FILE__ ) . '/' );
52
  define( 'MC4WP_PLUGIN_URL', plugins_url( '/' , __FILE__ ) );
53
  define( 'MC4WP_PLUGIN_FILE', __FILE__ );
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://mc4wp.com/#utm_source=wp-plugin-repo&utm_medium=mailchimp-f
4
  Tags: mailchimp, mc4wp, email, marketing, newsletter, subscribe, widget, mc4wp, contact form 7, woocommerce, buddypress, ibericode, mail chimp
5
  Requires at least: 3.7
6
  Tested up to: 4.4
7
- Stable tag: 3.0.6
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -174,11 +174,15 @@ MailChimp for WordPress is being developed on GitHub. If you want to collaborate
174
  == Changelog ==
175
 
176
 
177
- #### 3.0.6 - December 9, 2015
178
 
179
  **Fixes**
180
 
181
- Workaround for SSL certification error introduced by WordPress 4.4, only affecting very old versions of PHP CURL.
 
 
 
 
182
 
183
 
184
  #### 3.0.4 - December 7, 2015
4
  Tags: mailchimp, mc4wp, email, marketing, newsletter, subscribe, widget, mc4wp, contact form 7, woocommerce, buddypress, ibericode, mail chimp
5
  Requires at least: 3.7
6
  Tested up to: 4.4
7
+ Stable tag: 3.0.7
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
174
  == Changelog ==
175
 
176
 
177
+ #### 3.0.7 - December 10, 2015
178
 
179
  **Fixes**
180
 
181
+ Workaround for [SSL certification bug in WordPress 4.4](https://core.trac.wordpress.org/ticket/34935), affecting servers with an older versions of OpenSSL installed.
182
+
183
+ **Additions**
184
+
185
+ Added `mc4wp_use_sslverify` filter to disable or explicitly enable SSL certificate verification.
186
 
187
 
188
  #### 3.0.4 - December 7, 2015
vendor/autoload_52.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
6
 
7
- return ComposerAutoloaderInitc2e6fbeabfb1c1a1c3fe932cd96d870b::getLoader();
4
 
5
  require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
6
 
7
+ return ComposerAutoloaderInit563d55c10d8cb0b6a7ec87f1ae3b89fe::getLoader();
vendor/composer/autoload_real_52.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real_52.php generated by xrstf/composer-php52
4
 
5
- class ComposerAutoloaderInitc2e6fbeabfb1c1a1c3fe932cd96d870b {
6
  private static $loader;
7
 
8
  public static function loadClassLoader($class) {
@@ -19,9 +19,9 @@ class ComposerAutoloaderInitc2e6fbeabfb1c1a1c3fe932cd96d870b {
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInitc2e6fbeabfb1c1a1c3fe932cd96d870b', 'loadClassLoader'), true /*, true */);
23
  self::$loader = $loader = new xrstf_Composer52_ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInitc2e6fbeabfb1c1a1c3fe932cd96d870b', 'loadClassLoader'));
25
 
26
  $vendorDir = dirname(dirname(__FILE__));
27
  $baseDir = dirname($vendorDir);
2
 
3
  // autoload_real_52.php generated by xrstf/composer-php52
4
 
5
+ class ComposerAutoloaderInit563d55c10d8cb0b6a7ec87f1ae3b89fe {
6
  private static $loader;
7
 
8
  public static function loadClassLoader($class) {
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInit563d55c10d8cb0b6a7ec87f1ae3b89fe', 'loadClassLoader'), true /*, true */);
23
  self::$loader = $loader = new xrstf_Composer52_ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInit563d55c10d8cb0b6a7ec87f1ae3b89fe', 'loadClassLoader'));
25
 
26
  $vendorDir = dirname(dirname(__FILE__));
27
  $baseDir = dirname($vendorDir);