Support » Fixing WordPress » Getting: Download failed. error:0D0890A1:asn1 encoding routines:func(137):reason

  • Trying to update a couple sites and I’m getting an error:
    Download failed. error:0D0890A1:asn1 encoding routines:func(137):reason(161)

    This is happening trying to update themes and WordPress (current version 3.8.2) while plugins update fine.

    Also, in Dashboard->WordPress News I see:
    RSS Error: WP HTTP Error: error:0D0890A1:asn1 encoding routines:func(137):reason(161)

    any ideas?

Viewing 9 replies - 1 through 9 (of 9 total)
  • more info:
    I just tried to manually install a theme. I went in via FTP and removed the theme’s folder. Next I went into WP and tried to add the theme uploading the theme zip file from my computer. These error messages show up

    Warning: An unexpected error occurred. Something may be wrong with WordPress.org or this server’s configuration. If you continue to have problems, please try the support forums. (WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.) in /var/www/html/wordpress/wp-includes/update.php on line 120
    
    Warning: An unexpected error occurred. Something may be wrong with WordPress.org or this server’s configuration. If you continue to have problems, please try the support forums. (WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.) in /var/www/html/wordpress/wp-includes/update.php on line 272
    
    Warning: An unexpected error occurred. Something may be wrong with WordPress.org or this server’s configuration. If you continue to have problems, please try the support forums. (WordPress could not establish a secure connection to WordPress.org. Please contact your server administrator.) in /var/www/html/wordpress/wp-includes/update.php on line 417

    I’ve opened a ticket with my host (WestHost) and just got a note that ‘it looks like it is related to the version of OpenSSL or curl that the account is running’ and they are going to look at the server for a fix.

    I’m with Westhost too and their solution is as below:
    Fix: Edit the /wp-includes/class-http.php file
    modify the following line from (line 1410)
    curl_setopt( $handle, CURLOPT_SSL_VERIFYPEER, $ssl_verify );
    to
    curl_setopt( $handle, CURLOPT_SSL_VERIFYPEER, false );

    That fixes some problems but not all.

    In my admin dashboard I still get the following under “WordPress News”:

    RSS Error: WP HTTP Error: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm

    Using @stanlight‘s code I wrote a tiny plugin that will implement the same change without modifying the core file.

    Save the code to a file, upload to wp-content/plugins, activate it and try your updates again.

    <?php
    /*
    Plugin Name: Skip SSL Verify
    Plugin URI: http://www.damiencarbery.com
    Description: Skip SSL verify in curl downloads - fixes: Download failed. error:0D0890A1:asn1 encoding routines:func(137):reason(161).
    Author: Damien Carbery
    Version: 0.1
    
    $Id:  $
    */
    
    function ssv_skip_ssl_verify($ssl_verify) {
        return false;
    }
    add_filter('https_ssl_verify', 'ssv_skip_ssl_verify');
    add_filter('https_local_ssl_verify', 'ssv_skip_ssl_verify');

    @daymobrew – Nice, worked for me.

    Okay to ignore this!! It worked!! See below…

    @daymobrew – I am getting same error messages and saw your fix. I am, however, very amateurish – any way you can explain in more detail what I should do with your code.

    i.e.
    Filename?
    Extension?
    How would I activate it?

    Thanks for any and all help!
    Eric
    Empower Graphics

    ************************************************************************
    FOLLOW UP:

    @daymobrew – don’t worry – I tried and tried and… it worked!

    For other ignoramuses like me:
    Save file with PHP extension
    Put file in wp-content/plugins folder (there was another named INDEX.PHP in there)
    Go to Plugins tab in WordPress and… there it will be!! Just click Activate and… it words!!

    Thanks to @daymobrew!!

    @daymobrew – don’t worry – I tried and tried and… it worked!

    For other ignoramuses like me:
    Save file with PHP extension
    Put file in wp-content/plugins folder (there was another named INDEX.PHP in there)
    Go to Plugins tab in WordPress and… there it will be!! Just click Activate and… it words!!

    Thanks to @daymobrew!!

    Moderator Samuel Wood (Otto)

    (@otto42)

    WordPress.org Admin

    Hello!

    This error is caused by your server having an outdated version of curl and/or the OpenSSL library.

    Modern SSL certificates are signed using the SHA-256 algorithm, which your older code lacks support for. You need to update your server, or if you have a webhost, they need to update it for you.

    Note that all older versions of OpenSSL are considered to be dangerously insecure, and you should be updating these in any case. If the webhost cannot update the server, then it’s really time to find a new hosting service.

    Modifying WordPress to not do SSL Certificate verification (which is what the above code does), is dangerous. It leaves your site vulnerable to a man-in-the-middle attack, where somebody could pretend to be the WordPress servers, and send you a modified or malicious version of the WordPress code.

    You should have your host migrate you to a new server, which is more up to date and not running outdated and insecure code.

    @otto: You are right, my code is not right thing to do – though it is much better than modifying core files.

    My fix was the impatient solution.

Viewing 9 replies - 1 through 9 (of 9 total)
  • The topic ‘Getting: Download failed. error:0D0890A1:asn1 encoding routines:func(137):reason’ is closed to new replies.