WordPress.org

Make WordPress Core

Ticket #20394: 20394.guard.diff

File 20394.guard.diff, 20.6 KB (added by markoheijnen, 2 years ago)

Alternative way

  • wp-includes/class-wp-xmlrpc-server.php

     
    208208        } 
    209209 
    210210        /** 
     211         * Checks if the argument have a certain length before running the method 
     212         * 
     213         * @since 3.4 
     214         * 
     215         * @param string|array $array Sanitize single string or array of strings. 
     216         * @param string|array $array Sanitize single string or array of strings. 
     217         * @return boolean if it match 
     218         */ 
     219        function guard_condition( $args, $length ) { 
     220                if ( count( $args ) < $length ) { 
     221                        $this->error = new IXR_Error( 400, __( "You didn't passed enough arguments to this XML-RPC method" ) ); 
     222                        return false; 
     223                } 
     224 
     225                return true; 
     226        } 
     227 
     228        /** 
    211229         * Sanitize string or array of strings for database. 
    212230         * 
    213231         * @since 1.5.2 
     
    456474 
    457475                $this->escape( $args ); 
    458476 
     477                if( ! $this->guard_condition( $args, 2 ) )  
     478                        return $this->error; 
     479 
    459480                $username = $args[0]; 
    460481                $password = $args[1]; 
    461482 
     
    733754        function wp_newPost( $args ) { 
    734755                $this->escape( $args ); 
    735756 
     757                if( ! $this->guard_condition( $args, 4 ) )  
     758                        return $this->error; 
     759 
    736760                $blog_id        = (int) $args[0]; 
    737761                $username       = $args[1]; 
    738762                $password       = $args[2]; 
     
    10051029        function wp_editPost( $args ) { 
    10061030                $this->escape( $args ); 
    10071031 
     1032                if( ! $this->guard_condition( $args, 5 ) )  
     1033                        return $this->error; 
     1034 
    10081035                $blog_id        = (int) $args[0]; // we will support this in the near future 
    10091036                $username       = $args[1]; 
    10101037                $password       = $args[2]; 
     
    10571084        function wp_deletePost( $args ) { 
    10581085                $this->escape( $args ); 
    10591086 
     1087                if( ! $this->guard_condition( $args, 4 ) )  
     1088                        return $this->error; 
     1089 
    10601090                $blog_id    = (int) $args[0]; 
    10611091                $username   = $args[1]; 
    10621092                $password   = $args[2]; 
     
    11281158        function wp_getPost( $args ) { 
    11291159                $this->escape( $args ); 
    11301160 
     1161                if( ! $this->guard_condition( $args, 4 ) )  
     1162                        return $this->error; 
     1163 
    11311164                $blog_id            = (int) $args[0]; 
    11321165                $username           = $args[1]; 
    11331166                $password           = $args[2]; 
     
    11801213        function wp_getPosts( $args ) { 
    11811214                $this->escape( $args ); 
    11821215 
     1216                if( ! $this->guard_condition( $args, 3 ) )  
     1217                        return $this->error; 
     1218 
    11831219                $blog_id    = (int) $args[0]; 
    11841220                $username   = $args[1]; 
    11851221                $password   = $args[2]; 
     
    12661302        function wp_newTerm( $args ) { 
    12671303                $this->escape( $args ); 
    12681304 
     1305                if( ! $this->guard_condition( $args, 4 ) )  
     1306                        return $this->error; 
     1307 
    12691308                $blog_id            = (int) $args[0]; 
    12701309                $username           = $args[1]; 
    12711310                $password           = $args[2]; 
     
    13481387        function wp_editTerm( $args ) { 
    13491388                $this->escape( $args ); 
    13501389 
     1390                if( ! $this->guard_condition( $args, 5 ) )  
     1391                        return $this->error; 
     1392 
    13511393                $blog_id            = (int) $args[0]; 
    13521394                $username           = $args[1]; 
    13531395                $password           = $args[2]; 
     
    14351477        function wp_deleteTerm( $args ) { 
    14361478                $this->escape( $args ); 
    14371479 
     1480                if( ! $this->guard_condition( $args, 5 ) )  
     1481                        return $this->error; 
     1482 
    14381483                $blog_id            = (int) $args[0]; 
    14391484                $username           = $args[1]; 
    14401485                $password           = $args[2]; 
     
    14971542        function wp_getTerm( $args ) { 
    14981543                $this->escape( $args ); 
    14991544 
     1545                if( ! $this->guard_condition( $args, 5 ) )  
     1546                        return $this->error; 
     1547 
    15001548                $blog_id            = (int) $args[0]; 
    15011549                $username           = $args[1]; 
    15021550                $password           = $args[2]; 
     
    15451593        function wp_getTerms( $args ) { 
    15461594                $this->escape( $args ); 
    15471595 
     1596                if( ! $this->guard_condition( $args, 4 ) )  
     1597                        return $this->error; 
     1598 
    15481599                $blog_id        = (int) $args[0]; 
    15491600                $username       = $args[1]; 
    15501601                $password       = $args[2]; 
     
    16151666        function wp_getTaxonomy( $args ) { 
    16161667                $this->escape( $args ); 
    16171668 
     1669                if( ! $this->guard_condition( $args, 4 ) )  
     1670                        return $this->error; 
     1671 
    16181672                $blog_id        = (int) $args[0]; 
    16191673                $username       = $args[1]; 
    16201674                $password       = $args[2]; 
     
    16491703        function wp_getTaxonomies( $args ) { 
    16501704                $this->escape( $args ); 
    16511705 
     1706                if( ! $this->guard_condition( $args, 3 ) )  
     1707                        return $this->error; 
     1708 
    16521709                $blog_id            = (int) $args[0]; 
    16531710                $username           = $args[1]; 
    16541711                $password           = $args[2]; 
     
    16891746        function wp_getPage($args) { 
    16901747                $this->escape($args); 
    16911748 
     1749                if( ! $this->guard_condition( $args, 4 ) )  
     1750                        return $this->error; 
     1751 
    16921752                $blog_id        = (int) $args[0]; 
    16931753                $page_id        = (int) $args[1]; 
    16941754                $username       = $args[2]; 
     
    17901850        function wp_getPages($args) { 
    17911851                $this->escape($args); 
    17921852 
     1853                if( ! $this->guard_condition( $args, 3 ) )  
     1854                        return $this->error; 
     1855 
    17931856                $blog_id        = (int) $args[0]; 
    17941857                $username       = $args[1]; 
    17951858                $password       = $args[2]; 
     
    18341897         * @return unknown 
    18351898         */ 
    18361899        function wp_newPage($args) { 
     1900                if( ! $this->guard_condition( $args, 5 ) )  
     1901                        return $this->error; 
     1902 
    18371903                // Items not escaped here will be escaped in newPost. 
    18381904                $username       = $this->escape($args[1]); 
    18391905                $password       = $this->escape($args[2]); 
     
    18631929        function wp_deletePage($args) { 
    18641930                $this->escape($args); 
    18651931 
     1932                if( ! $this->guard_condition( $args, 4 ) )  
     1933                        return $this->error; 
     1934 
    18661935                $blog_id        = (int) $args[0]; 
    18671936                $username       = $args[1]; 
    18681937                $password       = $args[2]; 
     
    19021971         * @return unknown 
    19031972         */ 
    19041973        function wp_editPage($args) { 
     1974                if( ! $this->guard_condition( $args, 6 ) )  
     1975                        return $this->error; 
     1976 
    19051977                // Items not escaped here will be escaped in editPost. 
    19061978                $blog_id        = (int) $args[0]; 
    19071979                $page_id        = (int) $this->escape($args[1]); 
     
    19532025 
    19542026                $this->escape($args); 
    19552027 
     2028                if( ! $this->guard_condition( $args, 3 ) )  
     2029                        return $this->error; 
     2030 
    19562031                $blog_id                                = (int) $args[0]; 
    19572032                $username                               = $args[1]; 
    19582033                $password                               = $args[2]; 
     
    20012076         * @return array 
    20022077         */ 
    20032078        function wp_getAuthors($args) { 
    2004  
    20052079                $this->escape($args); 
    20062080 
     2081                if( ! $this->guard_condition( $args, 3 ) )  
     2082                        return $this->error; 
     2083 
    20072084                $blog_id        = (int) $args[0]; 
    20082085                $username       = $args[1]; 
    20092086                $password       = $args[2]; 
     
    20392116        function wp_getTags( $args ) { 
    20402117                $this->escape( $args ); 
    20412118 
     2119                if( ! $this->guard_condition( $args, 3 ) )  
     2120                        return $this->error; 
     2121 
    20422122                $blog_id                = (int) $args[0]; 
    20432123                $username               = $args[1]; 
    20442124                $password               = $args[2]; 
     
    20802160        function wp_newCategory($args) { 
    20812161                $this->escape($args); 
    20822162 
     2163                if( ! $this->guard_condition( $args, 4 ) )  
     2164                        return $this->error; 
     2165 
    20832166                $blog_id                                = (int) $args[0]; 
    20842167                $username                               = $args[1]; 
    20852168                $password                               = $args[2]; 
     
    21412224        function wp_deleteCategory($args) { 
    21422225                $this->escape($args); 
    21432226 
     2227                if( ! $this->guard_condition( $args, 4 ) )  
     2228                        return $this->error; 
     2229 
    21442230                $blog_id                = (int) $args[0]; 
    21452231                $username               = $args[1]; 
    21462232                $password               = $args[2]; 
     
    21732259        function wp_suggestCategories($args) { 
    21742260                $this->escape($args); 
    21752261 
     2262                if( ! $this->guard_condition( $args, 4 ) )  
     2263                        return $this->error; 
     2264 
    21762265                $blog_id                                = (int) $args[0]; 
    21772266                $username                               = $args[1]; 
    21782267                $password                               = $args[2]; 
    21792268                $category                               = $args[3]; 
    2180                 $max_results                    = (int) $args[4]; 
     2269                $max_results                    = isset( $args[4] ) ? (int) $args[4] : ''; 
    21812270 
    21822271                if ( !$user = $this->login($username, $password) ) 
    21832272                        return $this->error; 
     
    22102299        function wp_getComment($args) { 
    22112300                $this->escape($args); 
    22122301 
     2302                if( ! $this->guard_condition( $args, 4 ) )  
     2303                        return $this->error; 
     2304 
    22132305                $blog_id        = (int) $args[0]; 
    22142306                $username       = $args[1]; 
    22152307                $password       = $args[2]; 
     
    22842376                $raw_args = $args; 
    22852377                $this->escape($args); 
    22862378 
     2379                if( ! $this->guard_condition( $args, 4 ) )  
     2380                        return $this->error; 
     2381 
    22872382                $blog_id        = (int) $args[0]; 
    22882383                $username       = $args[1]; 
    22892384                $password       = $args[2]; 
     
    23522447        function wp_deleteComment($args) { 
    23532448                $this->escape($args); 
    23542449 
     2450                if( ! $this->guard_condition( $args, 4 ) )  
     2451                        return $this->error; 
     2452 
    23552453                $blog_id        = (int) $args[0]; 
    23562454                $username       = $args[1]; 
    23572455                $password       = $args[2]; 
     
    24062504        function wp_editComment($args) { 
    24072505                $this->escape($args); 
    24082506 
     2507                if( ! $this->guard_condition( $args, 5 ) )  
     2508                        return $this->error; 
     2509 
    24092510                $blog_id        = (int) $args[0]; 
    24102511                $username       = $args[1]; 
    24112512                $password       = $args[2]; 
     
    24822583 
    24832584                $this->escape($args); 
    24842585 
     2586                if( ! $this->guard_condition( $args, 5 ) )  
     2587                        return $this->error; 
     2588 
    24852589                $blog_id        = (int) $args[0]; 
    24862590                $username       = $args[1]; 
    24872591                $password       = $args[2]; 
     
    25672671        function wp_getCommentStatusList($args) { 
    25682672                $this->escape( $args ); 
    25692673 
     2674                if( ! $this->guard_condition( $args, 3 ) )  
     2675                        return $this->error; 
     2676 
    25702677                $blog_id        = (int) $args[0]; 
    25712678                $username       = $args[1]; 
    25722679                $password       = $args[2]; 
     
    25932700        function wp_getCommentCount( $args ) { 
    25942701                $this->escape($args); 
    25952702 
     2703                if( ! $this->guard_condition( $args, 4 ) )  
     2704                        return $this->error; 
     2705 
    25962706                $blog_id        = (int) $args[0]; 
    25972707                $username       = $args[1]; 
    25982708                $password       = $args[2]; 
     
    26262736        function wp_getPostStatusList( $args ) { 
    26272737                $this->escape( $args ); 
    26282738 
     2739                if( ! $this->guard_condition( $args, 3 ) )  
     2740                        return $this->error; 
     2741 
    26292742                $blog_id        = (int) $args[0]; 
    26302743                $username       = $args[1]; 
    26312744                $password       = $args[2]; 
     
    26522765        function wp_getPageStatusList( $args ) { 
    26532766                $this->escape( $args ); 
    26542767 
     2768                if( ! $this->guard_condition( $args, 3 ) )  
     2769                        return $this->error; 
     2770 
    26552771                $blog_id        = (int) $args[0]; 
    26562772                $username       = $args[1]; 
    26572773                $password       = $args[2]; 
     
    26782794        function wp_getPageTemplates( $args ) { 
    26792795                $this->escape( $args ); 
    26802796 
     2797                if( ! $this->guard_condition( $args, 3 ) )  
     2798                        return $this->error; 
     2799 
    26812800                $blog_id        = (int) $args[0]; 
    26822801                $username       = $args[1]; 
    26832802                $password       = $args[2]; 
     
    27052824        function wp_getOptions( $args ) { 
    27062825                $this->escape( $args ); 
    27072826 
     2827                if( ! $this->guard_condition( $args, 3 ) )  
     2828                        return $this->error; 
     2829 
    27082830                $blog_id        = (int) $args[0]; 
    27092831                $username       = $args[1]; 
    27102832                $password       = $args[2]; 
     
    27552877        function wp_setOptions( $args ) { 
    27562878                $this->escape( $args ); 
    27572879 
     2880                if( ! $this->guard_condition( $args, 4 ) )  
     2881                        return $this->error; 
     2882 
    27582883                $blog_id        = (int) $args[0]; 
    27592884                $username       = $args[1]; 
    27602885                $password       = $args[2]; 
     
    28042929        function wp_getMediaItem($args) { 
    28052930                $this->escape($args); 
    28062931 
     2932                if( ! $this->guard_condition( $args, 4 ) )  
     2933                        return $this->error; 
     2934 
    28072935                $blog_id                = (int) $args[0]; 
    28082936                $username               = $args[1]; 
    28092937                $password               = $args[2]; 
     
    28692997                $raw_args = $args; 
    28702998                $this->escape($args); 
    28712999 
     3000                if( ! $this->guard_condition( $args, 3 ) )  
     3001                        return $this->error; 
     3002 
    28723003                $blog_id        = (int) $args[0]; 
    28733004                $username       = $args[1]; 
    28743005                $password       = $args[2]; 
     
    29153046        function wp_getPostFormats( $args ) { 
    29163047                $this->escape( $args ); 
    29173048 
     3049                if( ! $this->guard_condition( $args, 3 ) )  
     3050                        return $this->error; 
     3051 
    29183052                $blog_id = (int) $args[0]; 
    29193053                $username = $args[1]; 
    29203054                $password = $args[2]; 
     
    29673101        function wp_getPostType( $args ) { 
    29683102                $this->escape( $args ); 
    29693103 
     3104                if( ! $this->guard_condition( $args, 4 ) )  
     3105                        return $this->error; 
     3106 
    29703107                $blog_id        = (int) $args[0]; 
    29713108                $username       = $args[1]; 
    29723109                $password       = $args[2]; 
     
    30103147        function wp_getPostTypes( $args ) { 
    30113148                $this->escape( $args ); 
    30123149 
     3150                if( ! $this->guard_condition( $args, 3 ) )  
     3151                        return $this->error; 
     3152 
    30133153                $blog_id            = (int) $args[0]; 
    30143154                $username           = $args[1]; 
    30153155                $password           = $args[2]; 
     
    30593199 
    30603200                $this->escape($args); 
    30613201 
    3062                 $username = $args[1]; 
     3202                if( ! $this->guard_condition( $args, 3 ) )  
     3203                        return $this->error; 
     3204 
     3205                $username  = $args[1]; 
    30633206                $password  = $args[2]; 
    30643207 
    30653208                if ( !$user = $this->login($username, $password) ) 
     
    31203263         * @return array 
    31213264         */ 
    31223265        function blogger_getUserInfo($args) { 
    3123  
    31243266                $this->escape($args); 
    31253267 
    3126                 $username = $args[1]; 
     3268                if( ! $this->guard_condition( $args, 3 ) )  
     3269                        return $this->error; 
     3270 
     3271                $username  = $args[1]; 
    31273272                $password  = $args[2]; 
    31283273 
    31293274                if ( !$user = $this->login($username, $password) ) 
     
    31543299         * @return array 
    31553300         */ 
    31563301        function blogger_getPost($args) { 
    3157  
    31583302                $this->escape($args); 
    31593303 
    3160                 $post_ID    = (int) $args[1]; 
    3161                 $username = $args[2]; 
     3304                if( ! $this->guard_condition( $args, 4 ) )  
     3305                        return $this->error; 
     3306 
     3307                $post_ID   = (int) $args[1]; 
     3308                $username  = $args[2]; 
    31623309                $password  = $args[3]; 
    31633310 
    31643311                if ( !$user = $this->login($username, $password) ) 
     
    31963343         * @return array 
    31973344         */ 
    31983345        function blogger_getRecentPosts($args) { 
    3199  
    32003346                $this->escape($args); 
    32013347 
     3348                if( ! $this->guard_condition( $args, 4 ) )  
     3349                        return $this->error; 
     3350 
    32023351                // $args[0] = appkey - ignored 
    3203                 $blog_ID    = (int) $args[1]; /* though we don't use it yet */ 
    3204                 $username = $args[2]; 
     3352                $blog_ID   = (int) $args[1]; /* though we don't use it yet */ 
     3353                $username  = $args[2]; 
    32053354                $password  = $args[3]; 
     3355 
    32063356                if ( isset( $args[4] ) ) 
    32073357                        $query = array( 'numberposts' => absint( $args[4] ) ); 
    32083358                else 
     
    32573407         * @return string 
    32583408         */ 
    32593409        function blogger_getTemplate($args) { 
    3260  
    32613410                $this->escape($args); 
    32623411 
    3263                 $blog_ID    = (int) $args[1]; 
    3264                 $username = $args[2]; 
     3412                if( ! $this->guard_condition( $args, 4 ) )  
     3413                        return $this->error; 
     3414 
     3415                $blog_ID   = (int) $args[1]; 
     3416                $username  = $args[2]; 
    32653417                $password  = $args[3]; 
    3266                 $template   = $args[4]; /* could be 'main' or 'archiveIndex', but we don't use it */ 
     3418                $template  = isset( $args[4] ) ? $args[4] : ''; /* could be 'main' or 'archiveIndex', but we don't use it */ 
    32673419 
    32683420                if ( !$user = $this->login($username, $password) ) 
    32693421                        return $this->error; 
     
    32963448         * @return bool True when done. 
    32973449         */ 
    32983450        function blogger_setTemplate($args) { 
    3299  
    33003451                $this->escape($args); 
    33013452 
    3302                 $blog_ID    = (int) $args[1]; 
    3303                 $username = $args[2]; 
     3453                if( ! $this->guard_condition( $args, 5 ) )  
     3454                        return $this->error; 
     3455 
     3456                $blog_ID   = (int) $args[1]; 
     3457                $username  = $args[2]; 
    33043458                $password  = $args[3]; 
    3305                 $content    = $args[4]; 
    3306                 $template   = $args[5]; /* could be 'main' or 'archiveIndex', but we don't use it */ 
     3459                $content   = $args[4]; 
     3460                $template  = isset( $args[5] ) ? $args[5] : ''; /* could be 'main' or 'archiveIndex', but we don't use it */ 
    33073461 
    33083462                if ( !$user = $this->login($username, $password) ) 
    33093463                        return $this->error; 
     
    33363490         * @return int 
    33373491         */ 
    33383492        function blogger_newPost($args) { 
    3339  
    33403493                $this->escape($args); 
    33413494 
    3342                 $blog_ID    = (int) $args[1]; /* though we don't use it yet */ 
    3343                 $username = $args[2]; 
     3495                if( ! $this->guard_condition( $args, 6 ) )  
     3496                        return $this->error; 
     3497 
     3498                $blog_ID   = (int) $args[1]; /* though we don't use it yet */ 
     3499                $username  = $args[2]; 
    33443500                $password  = $args[3]; 
    3345                 $content    = $args[4]; 
    3346                 $publish    = $args[5]; 
     3501                $content   = $args[4]; 
     3502                $publish   = $args[5]; 
    33473503 
    33483504                if ( !$user = $this->login($username, $password) ) 
    33493505                        return $this->error; 
     
    33903546         * @return bool true when done. 
    33913547         */ 
    33923548        function blogger_editPost($args) { 
    3393  
    33943549                $this->escape($args); 
    33953550 
    3396                 $post_ID     = (int) $args[1]; 
    3397                 $username  = $args[2]; 
     3551                if( ! $this->guard_condition( $args, 6 ) )  
     3552                        return $this->error; 
     3553 
     3554                $post_ID    = (int) $args[1]; 
     3555                $username   = $args[2]; 
    33983556                $password   = $args[3]; 
    3399                 $content     = $args[4]; 
    3400                 $publish     = $args[5]; 
     3557                $content    = $args[4]; 
     3558                $publish    = $args[5]; 
    34013559 
    34023560                if ( !$user = $this->login($username, $password) ) 
    34033561                        return $this->error; 
     
    34483606        function blogger_deletePost($args) { 
    34493607                $this->escape($args); 
    34503608 
    3451                 $post_ID     = (int) $args[1]; 
    3452                 $username  = $args[2]; 
     3609                if( ! $this->guard_condition( $args, 5 ) )  
     3610                        return $this->error; 
     3611 
     3612                $post_ID    = (int) $args[1]; 
     3613                $username   = $args[2]; 
    34533614                $password   = $args[3]; 
    3454                 $publish     = $args[4]; 
     3615                $publish    = $args[4]; 
    34553616 
    34563617                if ( !$user = $this->login($username, $password) ) 
    34573618                        return $this->error; 
     
    35183679        function mw_newPost($args) { 
    35193680                $this->escape($args); 
    35203681 
    3521                 $blog_ID     = (int) $args[0]; // we will support this in the near future 
    3522                 $username  = $args[1]; 
    3523                 $password   = $args[2]; 
     3682                if( ! $this->guard_condition( $args, 4 ) )  
     3683                        return $this->error; 
     3684 
     3685                $blog_ID        = (int) $args[0]; // we will support this in the near future 
     3686                $username       = $args[1]; 
     3687                $password       = $args[2]; 
    35243688                $content_struct = $args[3]; 
    3525                 $publish     = isset( $args[4] ) ? $args[4] : 0; 
     3689                $publish        = isset( $args[4] ) ? $args[4] : 0; 
    35263690 
    35273691                if ( !$user = $this->login($username, $password) ) 
    35283692                        return $this->error; 
     
    38333997         * @return bool True on success. 
    38343998         */ 
    38353999        function mw_editPost($args) { 
    3836  
    38374000                $this->escape($args); 
    38384001 
    3839                 $post_ID     = (int) $args[0]; 
    3840                 $username  = $args[1]; 
    3841                 $password   = $args[2]; 
     4002                if( ! $this->guard_condition( $args, 5 ) )  
     4003                        return $this->error; 
     4004 
     4005                $post_ID        = (int) $args[0]; 
     4006                $username       = $args[1]; 
     4007                $password       = $args[2]; 
    38424008                $content_struct = $args[3]; 
    3843                 $publish     = $args[4]; 
     4009                $publish        = $args[4]; 
    38444010 
    38454011                if ( ! $user = $this->login($username, $password) ) 
    38464012                        return $this->error; 
     
    39944160                if ( isset( $content_struct['mt_excerpt'] ) ) 
    39954161                        $post_excerpt =  $content_struct['mt_excerpt']; 
    39964162 
     4163                $post_more = null; 
    39974164                if ( isset( $content_struct['mt_text_more'] ) ) 
    39984165                        $post_more =  $content_struct['mt_text_more']; 
    39994166 
     
    41024269         * @return array 
    41034270         */ 
    41044271        function mw_getPost($args) { 
    4105  
    41064272                $this->escape($args); 
    41074273 
    4108                 $post_ID     = (int) $args[0]; 
    4109                 $username  = $args[1]; 
     4274                if( ! $this->guard_condition( $args, 3 ) )  
     4275                        return $this->error; 
     4276 
     4277                $post_ID    = (int) $args[0]; 
     4278                $username   = $args[1]; 
    41104279                $password   = $args[2]; 
    41114280 
    41124281                if ( !$user = $this->login($username, $password) ) 
     
    42254394         * @return array 
    42264395         */ 
    42274396        function mw_getRecentPosts($args) { 
    4228  
    42294397                $this->escape($args); 
    42304398 
    4231                 $blog_ID     = (int) $args[0]; 
    4232                 $username  = $args[1]; 
     4399                if( ! $this->guard_condition( $args, 3 ) )  
     4400                        return $this->error; 
     4401 
     4402                $blog_ID    = (int) $args[0]; 
     4403                $username   = $args[1]; 
    42334404                $password   = $args[2]; 
     4405 
    42344406                if ( isset( $args[3] ) ) 
    42354407                        $query = array( 'numberposts' => absint( $args[3] ) ); 
    42364408                else 
     
    43404512         * @return array 
    43414513         */ 
    43424514        function mw_getCategories($args) { 
    4343  
    43444515                $this->escape($args); 
    43454516 
    4346                 $blog_ID     = (int) $args[0]; 
    4347                 $username  = $args[1]; 
     4517                if( ! $this->guard_condition( $args, 3 ) )  
     4518                        return $this->error; 
     4519 
     4520                $blog_ID    = (int) $args[0]; 
     4521                $username   = $args[1]; 
    43484522                $password   = $args[2]; 
    43494523 
    43504524                if ( !$user = $this->login($username, $password) ) 
     
    43894563        function mw_newMediaObject($args) { 
    43904564                global $wpdb; 
    43914565 
    4392                 $blog_ID     = (int) $args[0]; 
    4393                 $username  = $wpdb->escape($args[1]); 
     4566                if( ! $this->guard_condition( $args, 4 ) )  
     4567                        return $this->error; 
     4568 
     4569                $blog_ID    = (int) $args[0]; 
     4570                $username   = $wpdb->escape($args[1]); 
    43944571                $password   = $wpdb->escape($args[2]); 
    4395                 $data        = $args[3]; 
     4572                $data       = $args[3]; 
    43964573 
    43974574                $name = sanitize_file_name( $data['name'] ); 
    43984575                $type = $data['type']; 
     
    44744651         * @return array 
    44754652         */ 
    44764653        function mt_getRecentPostTitles($args) { 
    4477  
    44784654                $this->escape($args); 
    44794655 
    4480                 $blog_ID     = (int) $args[0]; 
    4481                 $username  = $args[1]; 
     4656                if( ! $this->guard_condition( $args, 3 ) )  
     4657                        return $this->error; 
     4658 
     4659                $blog_ID    = (int) $args[0]; 
     4660                $username   = $args[1]; 
    44824661                $password   = $args[2]; 
     4662 
    44834663                if ( isset( $args[3] ) ) 
    44844664                        $query = array( 'numberposts' => absint( $args[3] ) ); 
    44854665                else 
     
    45344714         * @return array 
    45354715         */ 
    45364716        function mt_getCategoryList($args) { 
    4537  
    45384717                $this->escape($args); 
    45394718 
    4540                 $blog_ID     = (int) $args[0]; 
    4541                 $username  = $args[1]; 
     4719                if( ! $this->guard_condition( $args, 3 ) )  
     4720                        return $this->error; 
     4721 
     4722                $blog_ID    = (int) $args[0]; 
     4723                $username   = $args[1]; 
    45424724                $password   = $args[2]; 
    45434725 
    45444726                if ( !$user = $this->login($username, $password) ) 
     
    45724754         * @return array 
    45734755         */ 
    45744756        function mt_getPostCategories($args) { 
    4575  
    45764757                $this->escape($args); 
    45774758 
    4578                 $post_ID     = (int) $args[0]; 
    4579                 $username  = $args[1]; 
     4759                if( ! $this->guard_condition( $args, 3 ) )  
     4760                        return $this->error; 
     4761 
     4762                $post_ID    = (int) $args[0]; 
     4763                $username   = $args[1]; 
    45804764                $password   = $args[2]; 
    45814765 
    45824766                if ( !$user = $this->login($username, $password) ) 
     
    46124796         * @return bool True on success. 
    46134797         */ 
    46144798        function mt_setPostCategories($args) { 
    4615  
    46164799                $this->escape($args); 
    46174800 
    4618                 $post_ID     = (int) $args[0]; 
    4619                 $username  = $args[1]; 
     4801                if( ! $this->guard_condition( $args, 4 ) )  
     4802                        return $this->error; 
     4803 
     4804                $post_ID    = (int) $args[0]; 
     4805                $username   = $args[1]; 
    46204806                $password   = $args[2]; 
    4621                 $categories  = $args[3]; 
     4807                $categories = $args[3]; 
    46224808 
    46234809                if ( !$user = $this->login($username, $password) ) 
    46244810                        return $this->error; 
     
    47204906         * @return int 
    47214907         */ 
    47224908        function mt_publishPost($args) { 
    4723  
    47244909                $this->escape($args); 
    47254910 
    4726                 $post_ID     = (int) $args[0]; 
    4727                 $username  = $args[1]; 
     4911                if( ! $this->guard_condition( $args, 3 ) )  
     4912                        return $this->error; 
     4913 
     4914                $post_ID    = (int) $args[0]; 
     4915                $username   = $args[1]; 
    47284916                $password   = $args[2]; 
    47294917 
    47304918                if ( !$user = $this->login($username, $password) ) 
     
    47684956 
    47694957                $this->escape($args); 
    47704958 
     4959                if( ! $this->guard_condition( $args, 2 ) )  
     4960                        return $this->error; 
     4961 
    47714962                $pagelinkedfrom = $args[0]; 
    47724963                $pagelinkedto   = $args[1]; 
    47734964