@@ 563-570 (lines=8) @@ | ||
560 | add_filter( 'xmlrpc_methods', array( $this, 'xmlrpc_methods' ) ); |
|
561 | ||
562 | $signed = $this->verify_xml_rpc_signature(); |
|
563 | if ( $signed && ! is_wp_error( $signed ) ) { |
|
564 | // The actual API methods. |
|
565 | add_filter( 'xmlrpc_methods', array( $this->xmlrpc_server, 'xmlrpc_methods' ) ); |
|
566 | } else { |
|
567 | // The jetpack.authorize method should be available for unauthenticated users on a site with an |
|
568 | // active Jetpack connection, so that additional users can link their account. |
|
569 | add_filter( 'xmlrpc_methods', array( $this->xmlrpc_server, 'authorize_xmlrpc_methods' ) ); |
|
570 | } |
|
571 | } else { |
|
572 | // The bootstrap API methods. |
|
573 | add_filter( 'xmlrpc_methods', array( $this->xmlrpc_server, 'bootstrap_xmlrpc_methods' ) ); |
|
@@ 571-579 (lines=9) @@ | ||
568 | // active Jetpack connection, so that additional users can link their account. |
|
569 | add_filter( 'xmlrpc_methods', array( $this->xmlrpc_server, 'authorize_xmlrpc_methods' ) ); |
|
570 | } |
|
571 | } else { |
|
572 | // The bootstrap API methods. |
|
573 | add_filter( 'xmlrpc_methods', array( $this->xmlrpc_server, 'bootstrap_xmlrpc_methods' ) ); |
|
574 | $signed = $this->verify_xml_rpc_signature(); |
|
575 | if ( $signed && ! is_wp_error( $signed ) ) { |
|
576 | // the jetpack Provision method is available for blog-token-signed requests |
|
577 | add_filter( 'xmlrpc_methods', array( $this->xmlrpc_server, 'provision_xmlrpc_methods' ) ); |
|
578 | } |
|
579 | } |
|
580 | ||
581 | // Now that no one can authenticate, and we're whitelisting all XML-RPC methods, force enable_xmlrpc on. |
|
582 | add_filter( 'pre_option_enable_xmlrpc', '__return_true' ); |