From 40dfa7d5c0dc8e4cb2c95e403b6b4b2c4bf70644 Mon Sep 17 00:00:00 2001 From: Matthijs Kuiper Date: Sat, 4 Feb 2017 16:05:45 +0100 Subject: Original UTStats beta 4.2.8 --- html/includes/ftp_class_native.php | 142 +++++++++++++++++++++++++++++++++++++ 1 file changed, 142 insertions(+) create mode 100755 html/includes/ftp_class_native.php (limited to 'html/includes/ftp_class_native.php') diff --git a/html/includes/ftp_class_native.php b/html/includes/ftp_class_native.php new file mode 100755 index 0000000..4f7f1df --- /dev/null +++ b/html/includes/ftp_class_native.php @@ -0,0 +1,142 @@ +lastmsg = "Incorrect port syntax"; + return(false); + } else { + $ip=@gethostbyname($host); + $dns=@gethostbyaddr($host); + if(!$ip) $ip = $host; + if(!$dns) $dns = $host; + if(ip2long($ip) === -1) { + $this->lastmsg("Wrong host name/address \"".$host."\""); + return(false); + } + $this->host = $ip; + $this->fullhost = $dns; + $this->port = $port; + } + return(true); + } + + function connect() { + $php_erormsg = ''; + if (!check_extension('ftp') or true) { + $this->lastmsg = "No FTP support in this php build!"; + return(false); + } + $this->fp = @ftp_connect($this->host, $this->port, 30); + if (!$this->fp) { + $this->lastmsg = $php_errormsg; + return(false); + } + return(true); + } + + function login($user, $pass) { + $php_errormsg = ''; + if (!@ftp_login($this->fp, $user, $pass)) { + $this->lastmsg = $php_errormsg; + return(false); + } + return(true); + } + + function SetType($transfertype) { + $this->transfertype = $transfertype; + return(true); + } + + function Passive($pasv) { + $php_errormsg = ''; + if (!@ftp_pasv($this->fp, $pasv)) { + $this->lastmsg = $php_errormsg; + return(false); + } + return(true); + } + + function pwd() { + $php_errormsg = ''; + if (!($res = @ftp_pwd($this->fp))) { + $this->lastmsg = $php_errormsg; + return(false); + } + return($res); + } + + function chdir($dir) { + $php_errormsg = ''; + if (!@ftp_chdir($this->fp, $dir)) { + $this->lastmsg = $php_errormsg; + return(false); + } + return(true); + } + + function nlist() { + $php_errormsg = ''; + if (!($res = @ftp_nlist($this->fp, '.'))) { + $this->lastmsg = $php_errormsg; + return(false); + } + return($res); + } + + function get($remotefile, $localfile) { + $php_errormsg = ''; + if (!@ftp_get($this->fp, $localfile, $remotefile, $this->transfertype)) { + $this->lastmsg = $php_errormsg; + $this->PushError('get', "Unable to download $remotefile", $php_errormsg); + return(false); + } + return(filesize($localfile)); + } + + function delete($remotefile) { + $php_errormsg = ''; + if (!@ftp_delete($this->fp, $remotefile)) { + $this->lastmsg = $php_errormsg; + return(false); + } + return(true); + } + + + function quit() { + if ($this->fp) { + ftp_close($this->fp); + $this->fp = NULL; + } + return(true); + } + + + function PushError($fctname, $msg, $desc=false){ + $error=array(); + $error['time']=time(); + $error['fctname']=$fctname; + $error['msg']=$msg; + $error['desc']=$desc; + if($desc) $tmp=' ('.$desc.')'; else $tmp=''; + return(array_push($this->errors,$error)); + } + + function PopError(){ + if(count($this->errors)) return(array_pop($this->_error_array)); + else return(false); + } + + + +} -- cgit