} } // Only attempt to update the WAF if the module is supported if ( Waf_Runner::is_supported_environment() ) { try { Waf_Runner::update_waf(); } catch ( Waf_Exception $e ) { return $e->get_wp_error(); } } return self::waf(); } /** * WAF Endpoint Permissions Callback * * @return bool|WP_Error True if user can view the Jetpack admin page. */ public static function waf_permissions_callback() { if ( current_user_can( 'manage_options' ) ) { return true; } return new WP_Error( 'invalid_user_permission_manage_options', REST_Connector::get_user_permissions_error_msg(), array( 'status' => rest_authorization_required_code() ) ); } }