From f22abd7533527fda0fb1170027fd896af1cc3822 Mon Sep 17 00:00:00 2001 From: ryan Date: Fri, 20 Jun 2008 15:39:41 +0000 Subject: [PATCH] Disable remote publishing by default. Add options to turn them back on. Props josephscott. see #7157 git-svn-id: http://svn.automattic.com/wordpress/trunk@8136 1a063a9b-81f0-0310-95a4-ce76da25c4cd --- wp-admin/includes/schema.php | 4 +++- wp-admin/options-writing.php | 20 ++++++++++++++++++++ xmlrpc.php | 18 +++++++++++++++--- 3 files changed, 38 insertions(+), 4 deletions(-) diff --git a/wp-admin/includes/schema.php b/wp-admin/includes/schema.php index 86a9a80776..d796eadb5f 100644 --- a/wp-admin/includes/schema.php +++ b/wp-admin/includes/schema.php @@ -255,7 +255,9 @@ function populate_options() { // 2.6 add_option('avatar_default', 'mystery'); - + add_option('enable_app',0); + add_option('enable_xmlrpc',0); + // Delete unused options $unusedoptions = array ('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins'); foreach ($unusedoptions as $option) : diff --git a/wp-admin/options-writing.php b/wp-admin/options-writing.php index 68f304af1b..3d1fc97921 100644 --- a/wp-admin/options-writing.php +++ b/wp-admin/options-writing.php @@ -57,6 +57,26 @@ endforeach; +

+

+ + + + + + + + +
+
+
+
+
+

%s, %s, %s.'), wp_generate_password(8, false), wp_generate_password(8, false), wp_generate_password(8, false)) ?>

diff --git a/xmlrpc.php b/xmlrpc.php index e58bda195f..5e2d675626 100644 --- a/xmlrpc.php +++ b/xmlrpc.php @@ -39,11 +39,14 @@ header('Content-Type: text/xml; charset=' . get_option('blog_charset'), true); http://wordpress.org/ + + " /> + @@ -108,7 +111,7 @@ if ( isset($HTTP_RAW_POST_DATA) ) class wp_xmlrpc_server extends IXR_Server { function wp_xmlrpc_server() { - $this->methods = array( + $xmlrpc_methods = array( // WordPress API 'wp.getUsersBlogs' => 'this:wp_getUsersBlogs', 'wp.getPage' => 'this:wp_getPage', @@ -164,8 +167,10 @@ class wp_xmlrpc_server extends IXR_Server { 'mt.supportedMethods' => 'this:mt_supportedMethods', 'mt.supportedTextFilters' => 'this:mt_supportedTextFilters', 'mt.getTrackbackPings' => 'this:mt_getTrackbackPings', - 'mt.publishPost' => 'this:mt_publishPost', - + 'mt.publishPost' => 'this:mt_publishPost' + ); + + $xmlrpc_functions = array ( // PingBack 'pingback.ping' => 'this:pingback_ping', 'pingback.extensions.getPingbacks' => 'this:pingback_extensions_getPingbacks', @@ -174,6 +179,13 @@ class wp_xmlrpc_server extends IXR_Server { 'demo.addTwoNumbers' => 'this:addTwoNumbers' ); + if ( get_option('enable_xmlrpc') ) + { + $this->methods = array_merge($xmlrpc_methods,$xmlrpc_functions); + } else { + $this->methods = $xmlrpc_functions; + } + $this->initialise_blog_option_info( ); $this->methods = apply_filters('xmlrpc_methods', $this->methods); $this->IXR_Server($this->methods);