<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>HumanUmbrella.com &#187; Technology</title>
	<atom:link href="http://www.humanumbrella.com/category/technology/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.humanumbrella.com</link>
	<description>A struggle for clarity in life; searching beyond barriers between us.</description>
	<lastBuildDate>Mon, 17 May 2010 04:09:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Installing RocketRaid 2220 On Ubuntu Server 7.1</title>
		<link>http://www.humanumbrella.com/2008/12/29/installing-rocketraid-2220-on-ubuntu-server-71/</link>
		<comments>http://www.humanumbrella.com/2008/12/29/installing-rocketraid-2220-on-ubuntu-server-71/#comments</comments>
		<pubDate>Mon, 29 Dec 2008 22:23:10 +0000</pubDate>
		<dc:creator>humanumbrella</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[My Linux Journey]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[rocketraid ubuntu]]></category>

		<guid isPermaLink="false">http://www.humanumbrella.com/?p=42</guid>
		<description><![CDATA[This is my choice of installation, because I&#8217;m familiar with the kernel change process, you are free to do any of the others.
[FROM THE README]
#############################################################################
3. Using the driver as a kernel patch
#############################################################################
You must have a full kernel source tree to use the driver as a patch.
To patch a kernel source tree, run the command
# cd [...]]]></description>
			<content:encoded><![CDATA[<p>This is my choice of installation, because I&#8217;m familiar with the kernel change process, you are free to do any of the others.</p>
<p>[FROM THE README]</p>
<p><code>#############################################################################<br />
3. Using the driver as a kernel patch<br />
#############################################################################</code></p>
<p>You must have a full kernel source tree to use the driver as a patch.<br />
To patch a kernel source tree, run the command</p>
<p># cd rr222x-linux-src-1.xx/product/rr2220/linux/<br />
# make patchkernel KERNELDIR=</p>
<p>For an unconfigured 2.6 kernel source tree, include/linux/version.h may<br />
not exist so you should add &#8220;KERNEL_VER=2.6&#8243; to the command:</p>
<p># make patchkernel KERNELDIR= KERNEL_VER=2.6</p>
<p>Then you can configure the driver into kernel during the kernel<br />
configuration process (e.g. &#8220;make menuconfig&#8221;). It is listed under<br />
scsi low level drivers.</p>
<p>Below is an example to make and install a kernel with the driver built-in:</p>
<p># cd /usr/src/linux-2.6.22<br />
# make menuconfig</p>
<p>Select &#8220;Device Drivers &#8212;&gt;&#8221; and press enter.<br />
Select &#8220;SCSI device support&#8221;, then press &#8216;Y&#8217; to make it built-in.<br />
Select &#8220;SCSI disk support&#8221; then press &#8216;Y&#8217; to make it build-in.<br />
Select &#8220;SCSI low-level drivers &#8212;&gt;&#8221; and press enter.<br />
Select &#8220;HighPoint RocketRAID 2220 support&#8221; and press &#8216;Y&#8217;.<br />
Exit and save the kernel configuration.</p>
<p># make<br />
# make modules_install<br />
# make install</p>
<p>Then you can reboot from the new kernel.</p>
<p>I actually don&#8217;t own this server anymore, but I figured I&#8217;d post this from the drafts section.</p>
<p>Good luck and Cheers.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.humanumbrella.com/2008/12/29/installing-rocketraid-2220-on-ubuntu-server-71/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LHC Rap</title>
		<link>http://www.humanumbrella.com/2008/09/11/lhc-rap/</link>
		<comments>http://www.humanumbrella.com/2008/09/11/lhc-rap/#comments</comments>
		<pubDate>Thu, 11 Sep 2008 10:34:08 +0000</pubDate>
		<dc:creator>humanumbrella</dc:creator>
				<category><![CDATA[Physics]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.humanumbrella.com/?p=173</guid>
		<description><![CDATA[This should help you understand what purpose the Large Hadron Collider &#8212; which just turned on this week &#8212; serves.
It&#8217;s pretty astounding when you think about the effort that went into making this thing&#8230;
Anyway, here&#8217;s the rap:

]]></description>
			<content:encoded><![CDATA[<p>This should help you understand what purpose the Large Hadron Collider &#8212; which just turned on this week &#8212; serves.</p>
<p>It&#8217;s pretty astounding when you think about the effort that went into making this thing&#8230;</p>
<p>Anyway, here&#8217;s the rap:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="344" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="src" value="http://www.youtube.com/v/j50ZssEojtM&amp;hl=en&amp;fs=1" /><embed type="application/x-shockwave-flash" width="425" height="344" src="http://www.youtube.com/v/j50ZssEojtM&amp;hl=en&amp;fs=1"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.humanumbrella.com/2008/09/11/lhc-rap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quadrowulf Page is Live!</title>
		<link>http://www.humanumbrella.com/2008/08/28/quadrowulf-page-is-live/</link>
		<comments>http://www.humanumbrella.com/2008/08/28/quadrowulf-page-is-live/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 03:26:33 +0000</pubDate>
		<dc:creator>humanumbrella</dc:creator>
				<category><![CDATA[College]]></category>
		<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[My Linux Journey]]></category>
		<category><![CDATA[Quadrowulf]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[beowulf cluster]]></category>
		<category><![CDATA[compact beowulf cluster]]></category>
		<category><![CDATA[quad-core beowulf cluster]]></category>
		<category><![CDATA[quad-core quad-node cluster]]></category>

		<guid isPermaLink="false">http://www.humanumbrella.com/?p=168</guid>
		<description><![CDATA[I&#8217;ve finally compiled it from Word &#8212; word is so lame.
On my own codes I got a 3x speed improvement. &#8212; neat!
Anyway &#8212; CHECK IT OUT!! The link is up at the top.
GO HERE &#8211;&#62;&#62;&#62;&#62;&#62;&#62;&#62;&#62;&#62;&#62;&#62;&#62; http://www.humanumbrella.com/quadrowulf/
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve finally compiled it from Word &#8212; word is so lame.</p>
<p>On my own codes I got a 3x speed improvement. &#8212; neat!</p>
<p>Anyway &#8212; CHECK IT OUT!! The link is up at the top.</p>
<p>GO HERE &#8211;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; <a href="http://www.humanumbrella.com/quadrowulf/">http://www.humanumbrella.com/quadrowulf/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.humanumbrella.com/2008/08/28/quadrowulf-page-is-live/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quadrowulf Custom Beowulf Cluster TEASER</title>
		<link>http://www.humanumbrella.com/2008/08/04/quadrowulf-custom-beowulf-cluster-teaser/</link>
		<comments>http://www.humanumbrella.com/2008/08/04/quadrowulf-custom-beowulf-cluster-teaser/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 20:55:20 +0000</pubDate>
		<dc:creator>humanumbrella</dc:creator>
				<category><![CDATA[College]]></category>
		<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[My Linux Journey]]></category>
		<category><![CDATA[Quadrowulf]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[beowulf cluster]]></category>
		<category><![CDATA[cluster]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://www.humanumbrella.com/?p=129</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<div id="attachment_130" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.humanumbrella.com/wp-content/uploads/2008/08/cropper-capture219.png"><img class="size-medium wp-image-130" title="Quadrowulf Cluster" src="http://www.humanumbrella.com/wp-content/uploads/2008/08/cropper-capture219-300x200.png" alt="weeeeeeeeee" width="300" height="200" /></a><p class="wp-caption-text">weeeeeeeeee</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.humanumbrella.com/2008/08/04/quadrowulf-custom-beowulf-cluster-teaser/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP: HTTP Authentication With Cookies</title>
		<link>http://www.humanumbrella.com/2008/08/03/php-http-authentication/</link>
		<comments>http://www.humanumbrella.com/2008/08/03/php-http-authentication/#comments</comments>
		<pubDate>Sun, 03 Aug 2008 18:56:59 +0000</pubDate>
		<dc:creator>humanumbrella</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[http authentication with php]]></category>
		<category><![CDATA[http php authentication]]></category>
		<category><![CDATA[php authentication]]></category>
		<category><![CDATA[php authentication http]]></category>
		<category><![CDATA[php script to authenticate]]></category>

		<guid isPermaLink="false">http://www.humanumbrella.com/?p=115</guid>
		<description><![CDATA[Phew this has been a big day of posts (:  &#8212; I told you it was coming!!
This will be the last one for today &#8211; but there will be a HUGE conglomeration of a post/page about the cluster I built and am finishing building software for this week.
Anyway, here goes the post on HTTP Authentication [...]]]></description>
			<content:encoded><![CDATA[<p>Phew this has been a big day of posts (:  &#8212; I told you it was coming!!</p>
<p>This will be the last one for today &#8211; but there will be a HUGE conglomeration of a post/page about the cluster I built and am finishing building software for this week.</p>
<p>Anyway, here goes the post on HTTP Authentication w/ PHP.</p>
<p><span id="more-115"></span></p>
<p>Let&#8217;s continue with our example from the Wireshark post about logging in to Blackplanet.com via a script!<br />
OK, so in PHP we want to formulate our script such that we create an HTTPRequest with the exact same info that is contained within the Wireshark packet.  So basically we&#8217;re tricking the authentication server with information to make it think that we&#8217;re just another user on a browser trying to log in.<br />
Cool.</p>
<p>So here we go:<br />
Now, for some websites this will be much less difficult, but for BlackPlanet.com there are lots of cookies that get set when you log in with a browser, and we must mimick these settings when we use PHP.  Now this code I have written is pretty slick in that it saves these cookies away one by one using some simple string manipulation and loops.  I&#8217;ve thought about whether to share it or not, but what the hell &#8211; I&#8217;m sharing! Heheh&#8230; <strong>BE THANKFUL!</strong></p>
<p>OK, here goes.  First I will give a contextual description of what goes on:<br />
I turn on Error Reporting so that PHP will be a little more verbose if there are issues.<br />
I define a global variable &#8220;$cookies&#8221; to store the information that I get back [this will be encrypted cookie information]</p>
<p>I start the login process and create and HTTPRequest using PHP and passing in the information in the same format that I learned from using the Wireshark technique in <a href="http://www.humanumbrella.com/2008/08/03/wireshark-quick-tutorial-useful-for-post-php-http-authentication/">a previous post</a>.</p>
<p>Then, we go through the information that is returned to us and find the cookies, set them to the array elements of the global variable cookies, then we must use them to form the next HTTPRequest to actually access a page that is behind the login screen, ie that we have to log in before we can see.<br />
Bingo.<br />
Here is code: (:</p>
<p>Don&#8217;t worry that it messes up my CSS, hahaha.</p>
<pre>
&lt;?php
	error_reporting(E_ALL);
	$cookies = array(&quot;user_guid=&quot;, &quot;vs_session=&quot;, &quot;bl_sip=&quot;, &quot;vs_session=&quot;, &quot;vs_session=&quot;, &quot;user_session=&quot;, &quot;vs_session=&quot;, &quot;wa_session=&quot;, &quot;ads_session=&quot;, &quot;jb_session=&quot;, &quot;vs_session=&quot;, &quot;user_remember_me=YOUR_USER_NAME&quot;);
	echo &quot;Beginning login process...&lt;br&gt;&lt;br&gt;&quot;;
	login();
	echo &quot;&lt;p&gt;GOT PAST LOGIN.&lt;/p&gt;&quot;;
//Now we define our function, login.
function login(){
		global $cookies;
		$fp = fsockopen('www.blackplanet.com', 80);
		$query = &quot;POST /index.html HTTP/1.1\r\n&quot;;
		$query .= &quot;Host: www.blackplanet.com\r\n&quot;;
		//$query .= &quot;Accept-Language: en-us\r\n&quot;;
		//$query .= &quot;Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n&quot;;
		$query .= &quot;Content-Type: application/x-www-form-urlencoded\r\n&quot;;
		$query .= &quot;Content-Length: 75&quot;;
		$query .= &quot;\r\n\r\n&quot;;
		$query .= &quot;login_submit=1&#038;redirect=&#038;username=YOUR_USER_NAME&#038;password=YOUR_PASSWORD&#038;remember_me=1&quot;;
		fwrite($fp, $query);
		echo &quot;ya&lt;br&gt;&quot;;
		$count=0;
		$allcookies=&quot;&quot;;
		while ($count&lt;16) {
  		  $line = fread($fp, 256);
		  $allcookies .= $line;
		  $count++;
		}
		fclose($fp);
		@ob_flush();
		@flush();
		$highestPos =0;
		$position2 = 0;
		for($i=0;$i&lt;count($cookies)-1;$i++){
			$position1 = strpos($allcookies, $cookies[$i]);
			if ($highestPos&gt;$position1){
				$position1 = strpos($allcookies, $cookies[$i], $highestPos);
				$position2 = strpos($allcookies, &quot;;&quot;, $position1);
			}
			else{
				$position2 = strpos($allcookies, &quot;;&quot;, $position1);
			}
			$cookies[$i] = substr($allcookies, $position1, ($position2-$position1));

			$highestPos = $position2;
		}
}
</pre>
<p>Now, when you want to actually use these cookies somewhere, I have another function which will get a page from &#8220;behind the login.&#8221; Meaning that you can&#8217;t see it unless you&#8217;ve logged in.</p>
<p>Check it out:</p>
<pre>
function hunting(){
	global $cookies;
	$fp = fsockopen('www.blackplanet.com', 80);
	$query = &quot;GET <strong>/SOME_BEHIND_THE_LOGIN_PAGE</strong> HTTP/1.1\r\n&quot;;
	$query .= &quot;Host: www.blackplanet.com\r\n&quot;;
		$query .= &quot;Accept-Language: en-us\r\n&quot;;
		$query .= &quot;Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n&quot;;
	$query .= &quot;Cookie: &quot;;
	for($j=0;$j&lt;count($cookies)-1;$j++){
			$query .= $cookies[$j].&quot;;&quot;;
		}
	$query .= $cookies[count($cookies)-1].&quot;\r\n&quot;;
	$query .= &quot;\r\n\r\n&quot;;
	fwrite($fp, $query);
        //NOW DO WHATEVER YOU WANT WITH THE PAGE THAT COMES BACK (:
}
</pre>
<p>Hope you enjoyed this as much as I did !<br />
Cheers,<br />
&#8211;Justin</p>
<p><script type="text/javascript"><!--
google_ad_client = "pub-7552879954073529";
/* 468x60, created 8/3/08 */
google_ad_slot = "3442844074";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script><br />
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.humanumbrella.com/2008/08/03/php-http-authentication/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Animating a Surface Plot in IDL</title>
		<link>http://www.humanumbrella.com/2008/08/03/animating-a-surface-plot-in-idl/</link>
		<comments>http://www.humanumbrella.com/2008/08/03/animating-a-surface-plot-in-idl/#comments</comments>
		<pubDate>Sun, 03 Aug 2008 18:19:01 +0000</pubDate>
		<dc:creator>humanumbrella</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[animated surface plot in IDL]]></category>
		<category><![CDATA[fsc_Surface]]></category>
		<category><![CDATA[IDL]]></category>
		<category><![CDATA[idl animated surface]]></category>

		<guid isPermaLink="false">http://www.humanumbrella.com/?p=114</guid>
		<description><![CDATA[This is just to document what I&#8217;ve already given back to the IDL user community.  It is a modification of Dr. David Fanning&#8217;s, at www.dfanning.com, fsc_surface.pro.
Essentially, Dr. Fanning&#8217;s plotting program allows you to pass in data and parameters to create object graphics representations of data &#8211; mostly surfaces, as the case may be.  I&#8217;ve modified [...]]]></description>
			<content:encoded><![CDATA[<p>This is just to document what I&#8217;ve already given back to the IDL user community.  It is a modification of Dr. David Fanning&#8217;s, at <a title="www.dfanning.com" href="http://www.dfanning.com" target="_blank">www.dfanning.com</a>, fsc_surface.pro.</p>
<p>Essentially, Dr. Fanning&#8217;s plotting program allows you to pass in data and parameters to create object graphics representations of data &#8211; mostly surfaces, as the case may be.  I&#8217;ve modified it quite a bit for the project I was involved with this summer &#8212; IDLWave.  It now switches from Surface to Line to Spherical surface plots all based on the data that is passed into it.</p>
<p><span id="more-114"></span></p>
<p>Here is a link to an early version of my code, which allows for animating the plot over time &#8211;</p>
<p><a href="http://csserver04.furman.edu/Research/ResearchBlogs/justin/files/code/animatedFSC_surface/fsc_surface.pro">Modified FSC_Surface</a></p>
<p>Testing Program: <a href="http://csserver04.furman.edu/Research/ResearchBlogs/justin/files/code/animatedFSC_surface/waveAnimation.pro">&#8220;The Wave&#8221;</a></p>
<p>More to come!</p>
<p>Cheers,</p>
<p>&#8211;Justin</p>
]]></content:encoded>
			<wfw:commentRss>http://www.humanumbrella.com/2008/08/03/animating-a-surface-plot-in-idl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wireshark Quick Tutorial (Useful for post PHP: HTTP Authentication)</title>
		<link>http://www.humanumbrella.com/2008/08/03/wireshark-quick-tutorial-useful-for-post-php-http-authentication/</link>
		<comments>http://www.humanumbrella.com/2008/08/03/wireshark-quick-tutorial-useful-for-post-php-http-authentication/#comments</comments>
		<pubDate>Sun, 03 Aug 2008 16:59:23 +0000</pubDate>
		<dc:creator>humanumbrella</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[https vs http]]></category>
		<category><![CDATA[passwords in plain text]]></category>
		<category><![CDATA[sniff packets]]></category>
		<category><![CDATA[sniff password]]></category>
		<category><![CDATA[wireshark]]></category>

		<guid isPermaLink="false">http://www.humanumbrella.com/?p=102</guid>
		<description><![CDATA[I&#8217;m going to show you a little bit of how to use a software application called Wireshark &#8212; which was formerly known as Ethereal. It allows you turn your Ethernet/wireless adaptor on &#8220;listen&#8221; mode, and you can watch packets as they go to and from your machine. I&#8217;m not getting this into a huge networking [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m going to show you a little bit of how to use a software application called Wireshark &#8212; which was formerly known as Ethereal. It allows you turn your Ethernet/wireless adaptor on &#8220;listen&#8221; mode, and you can watch packets as they go to and from your machine. I&#8217;m not getting this into a huge networking discussion, but just realize that there are little bits of information called packets that go to and from machines as you do things on the Internet.<br />
For our purposes, we will be concerned with the transfer of packets between two machines in particular, your machine, and the machine of the webserver where your favorite website is hosted.</p>
<p><span id="more-102"></span></p>
<p>You can get Wireshark from <a href="http://www.wireshark.org/">here</a>.  I&#8217;m going to assume you get it installed with WinPCap, and everything.<br />
Moving on &#8212; Here&#8217;s where the fun comes in!</p>
<p>Before you get too scared &#8211; Let me make an explanation &#8212; when you log in to any website that is not https:// (Meaning, Secure HTTP, or keyword: ENCRYPTION) &#8212; then this means that your username and password is being sent in PLAIN text across the link.  This is basically what I&#8217;m exploiting here in Wireshark to make this work and for us to see exactly how the Web Browser logs us into the website.  OK &#8212; This is for an account on blackplanet.com &#8212; just as a test web location &#8212; this method will work on ANY website that is not https:// and has a login section, for example &#8211; FACEBOOK, MYSPACE, whatever.</p>
<p>Here are the images of setting up the Wireshark Capture:</p>
<p>The default loading screen for Wireshark</p>
<p><a href="http://www.humanumbrella.com/wp-content/uploads/2008/08/cropper-capture1.png"><img class="aligncenter size-medium wp-image-106" title="Wireshark Opening Screen" src="http://www.humanumbrella.com/wp-content/uploads/2008/08/cropper-capture1-294x300.png" alt="wireshark opening scrn" width="294" height="300" /></a></p>
<p>Next we need to specify the stuff from options &#8212; This menu dialog is from Capture -&gt; Options.</p>
<ul>
<li>Specify the right interface (wireless for me in this instance) &#8211;</li>
<li>Then I like to add the capture filter of &#8220;tcp&#8221; to limit my packet information to that.</li>
<li>Then finally, uncheck &#8220;Hide capture info dialog.&#8221;</li>
</ul>
<p><a href="http://www.humanumbrella.com/wp-content/uploads/2008/08/cropper-capture2.png"><img class="aligncenter size-medium wp-image-107" title="Setting up the packet sniffing" src="http://www.humanumbrella.com/wp-content/uploads/2008/08/cropper-capture2-294x300.png" alt="packet sniff setup" width="294" height="300" /></a></p>
<p>Push Start, then log in to your webpage with your browser, you will see packets filling up the screen.</p>
<p>Now, click done capturing after you&#8217;ve logged in to the website.</p>
<p>Now, in the filter section of the results type in &#8220;http&#8221; and push Apply.</p>
<p>I&#8217;ve obviously covered up things that could be incriminating, but you will get the idea from this next image.</p>
<p><a href="http://www.humanumbrella.com/wp-content/uploads/2008/08/cropper-capture3-copy.png"><img class="aligncenter size-medium wp-image-108" title="Checking out Wireshark Results" src="http://www.humanumbrella.com/wp-content/uploads/2008/08/cropper-capture3-copy-300x290.png" alt="wireshark results" width="300" height="290" /></a></p>
<p>You&#8217;ll notice that if you find the packet in the list that says &#8220;POST /index.html &#8221; or &#8220;POST /index.php&#8221; or something along those lines, click on it.  Then in the information window in the bottom section, click on the &#8220;Line-based text data: &#8221; and you&#8217;ll see some thing similar to what I have posted, which shows the USERNAME =  whatever you put in the box and PASSWORD= whatever you put in the box &#8212; IN PLAIN TEXT!  Heheheh&#8230; Now we can use this information to do whatever we want, don&#8217;t do anything bad! <img src='http://www.humanumbrella.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>We&#8217;ll use this particular information to log into the site with a script, coming up in another post.</p>
<p>Let me know if you have any questions,</p>
<p>Cheers.</p>
<p>&#8211;Justin</p>
]]></content:encoded>
			<wfw:commentRss>http://www.humanumbrella.com/2008/08/03/wireshark-quick-tutorial-useful-for-post-php-http-authentication/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Cropper: Quick and Dirty Windows Screen Shot/Capture Tool</title>
		<link>http://www.humanumbrella.com/2008/08/03/cropper-quick-and-dirty-windows-screen-shotcapture-tool/</link>
		<comments>http://www.humanumbrella.com/2008/08/03/cropper-quick-and-dirty-windows-screen-shotcapture-tool/#comments</comments>
		<pubDate>Sun, 03 Aug 2008 16:06:24 +0000</pubDate>
		<dc:creator>humanumbrella</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[cropper]]></category>
		<category><![CDATA[screen capture tool]]></category>
		<category><![CDATA[screen shot tool]]></category>
		<category><![CDATA[sweet ss tool]]></category>

		<guid isPermaLink="false">http://www.humanumbrella.com/?p=103</guid>
		<description><![CDATA[Cropper, created by Brian Scott in C# is THE tool I&#8217;ve been needing for YEARS.  I&#8217;m so glad I found it!
Anyway, normally when you wanted to show someone something you had to:

Take the screen shot/capture
Open an editing program [ I used -&#62; windows key + R, then type "mspaint" then enter ]
Paste the capture [...]]]></description>
			<content:encoded><![CDATA[<p>Cropper, created by Brian Scott in C# is THE tool I&#8217;ve been needing for YEARS.  I&#8217;m so glad I found it!<br />
Anyway, normally when you wanted to show someone something you had to:</p>
<ul>
<li>Take the screen shot/capture</li>
<li>Open an editing program [ I used -&gt; windows key + R, then type "mspaint" then enter ]</li>
<li>Paste the capture into the editing program [ CTRL+V ]</li>
<li>File -&gt; Save As, Choose PNG, choose location</li>
<li>Done.</li>
</ul>
<p>With this application it&#8217;s</p>
<ul>
<li>Make the window the right size</li>
<li>Double click</li>
</ul>
<p><span id="more-103"></span></p>
<p>Done.<br />
Weeee.</p>
<p><a href="http://blogs.geekdojo.net/brian/">Here&#8217;s Brian&#8217;s page</a></p>
<p><a href="http://blogs.geekdojo.net/brian/articles/Cropper.aspx">Here&#8217;s the article on Cropper</a></p>
<p><a href="http://www.thegridmaster.com/files/cropper.zip">Here are the binaries I downloaded.</a></p>
<p>There&#8217;s also an installer package available on CodePlex, <a href="http://www.codeplex.com/cropper/Release/ProjectReleases.aspx?ReleaseId=2231">here</a>.</p>
<p>Let me know if I can help in any way</p>
<p>Cheers,</p>
<p>&#8211;Justin</p>
]]></content:encoded>
			<wfw:commentRss>http://www.humanumbrella.com/2008/08/03/cropper-quick-and-dirty-windows-screen-shotcapture-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP: MYSQL Database Backup Email Attachment Solution</title>
		<link>http://www.humanumbrella.com/2008/08/03/php-mysql-database-backup-email-attachment-solution/</link>
		<comments>http://www.humanumbrella.com/2008/08/03/php-mysql-database-backup-email-attachment-solution/#comments</comments>
		<pubDate>Sun, 03 Aug 2008 15:54:03 +0000</pubDate>
		<dc:creator>humanumbrella</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[database backup]]></category>
		<category><![CDATA[db backup]]></category>
		<category><![CDATA[email backup of db]]></category>
		<category><![CDATA[mysql database]]></category>
		<category><![CDATA[mysql db]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.humanumbrella.com/?p=101</guid>
		<description><![CDATA[In this post I will describe a database backup solution that I&#8217;ve been using for some time.  Here&#8217;s what happens: this PHP script calls mysql to do a db_dump &#8212; this gets dumped to a text file &#8212; then it zips all this information up as a gunzzip file, then it emails the txt.gz [...]]]></description>
			<content:encoded><![CDATA[<p>In this post I will describe a database backup solution that I&#8217;ve been using for some time.  Here&#8217;s what happens: this PHP script calls mysql to do a db_dump &#8212; this gets dumped to a text file &#8212; then it zips all this information up as a gunzzip file, then it emails the txt.gz file as an attachment to a gmail account (where you have unlimited storage). Easy!<br />
<span id="more-101"></span></p>
<p>Before you make this script &#8212; you need to have a location where these files can be stored: for this example, it is /backup/site_backups/</p>
<p>Also &#8211; you will need the <a href="http://sourceforge.net/projects/phpmailer">PHPMailer class</a>.  You can read a nice tutorial about it <a href="http://www.askapache.com/php/phpfreaks-eric-rosebrocks-phpmailer-tutorial.html">here</a>.</p>
<p>OK &#8211; Here&#8217;s the context of the script:</p>
<ul>
<li>mysqldump</li>
<li>sleep &#8212; wait 2 seconds</li>
<li>gzip</li>
<li>sleep &#8212; wait 2 seconds</li>
<li>create the mailer object and add this txt.gz to the attachments, then send the email.</li>
</ul>
<p>Easy.</p>
<p>Here&#8217;s the code:<br />
<code><br />
&lt;?php<br />
$filename="backup-".date("d-m-y-h-ia");<br />
//I assume you are running this on localhost - use your own username and password<br />
exec("mysqldump -h127.0.0.1 -uusername -ppassword dbname &gt; /backup/site_backups/".$filename.".txt");<br />
//wait 2 s<br />
sleep(2);<br />
//zip it up<br />
exec("gzip /backup/site_backups/".$filename.".txt");<br />
//wait 2 s<br />
sleep(2);<br />
//you need to have this class.<br />
require("class.phpmailer.php");<br />
$mail = new PHPMailer();<br />
$mail-&gt;FromName = "from@yoursite.com";<br />
$mail-&gt;AddAddress("where@tosend.com");<br />
$mail-&gt;AddAttachment("backup/site_backups/".$filename.".txt.gz");<br />
$mail-&gt;IsHTML(true);<br />
//set up the subject/body<br />
$mail-&gt;Subject = "Nightly DB Backup!";<br />
$mail-&gt;Body = "Backup to ".date("D M Y h:iA").".";<br />
if (!$mail-&gt;Send())<br />
{<br />
//if the message did not work we echo out why<br />
echo "Message could not be sent.";<br />
echo "Mailer error: ". $mail-&gt;ErrorInfo;<br />
echo "<br />
";<br />
//exit<br />
}<br />
?&gt;<br />
</code></p>
<p>Lastly, we need to add this to the crontab of the root user (so we have permissions, and we&#8217;re guaranteed it runs).  So, let&#8217;s say my script is in /var/www/siteIwant.com/htdocs/db-backup.php.  Get to the crontab location via the command &#8220;crontab -e&#8221; as root. Now you&#8217;ll be where you can enter something.  Here&#8217;s what mine says:<br />
<code><br />
42 0 * * * /usr/bin/php -q /var/www/siteIwant.com/htdocs/db-backup.php<br />
</code><br />
Let&#8217;s dissect this a bit: I don&#8217;t know why I have it at that time, but it works =P.  This script will run at 12:42AM every day of every month of every year. (The asterisks mean every.)  You can read more on crontab <a href="http://www.codewalkers.com/c/a/Server-Administration/Introduction-to-crontab/">here</a>.</p>
<p>Hope you enjoyed this! Let me know if you have questions.</p>
<p>Cheers,</p>
<p>&#8211;Justin</p>
]]></content:encoded>
			<wfw:commentRss>http://www.humanumbrella.com/2008/08/03/php-mysql-database-backup-email-attachment-solution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP: A script to increase a stat counter&#8230;</title>
		<link>http://www.humanumbrella.com/2008/08/03/php-a-script-to-increase-a-stat-counter/</link>
		<comments>http://www.humanumbrella.com/2008/08/03/php-a-script-to-increase-a-stat-counter/#comments</comments>
		<pubDate>Sun, 03 Aug 2008 10:52:59 +0000</pubDate>
		<dc:creator>humanumbrella</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[hit counter]]></category>
		<category><![CDATA[increase hits]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[php counter]]></category>

		<guid isPermaLink="false">http://www.humanumbrella.com/?p=100</guid>
		<description><![CDATA[So, let&#8217;s say you have a stat counter on your website from Let&#8217;s say &#8212; sitedesigner.safesecureweb.com&#8230;. Or any other free web page counter for that matter&#8230;
Regardless, you will have a link to your counter that looks something like this:
http://sitedesigner.safesecureweb.com/servlet/CounterServer?_patternID=12&#38;_userID=22533&#38;_pageID=1
Now, we can dissect this link down and find the &#8220;userID&#8221; section of the URL or URI, [...]]]></description>
			<content:encoded><![CDATA[<p>So, let&#8217;s say you have a stat counter on your website from Let&#8217;s say &#8212; sitedesigner.safesecureweb.com&#8230;. Or any other free web page counter for that matter&#8230;</p>
<p>Regardless, you will have a link to your counter that looks something like this:</p>
<p>http://sitedesigner.safesecureweb.com/servlet/CounterServer?_patternID=12&amp;_userID=22533&amp;_pageID=1</p>
<p>Now, we can dissect this link down and find the &#8220;userID&#8221; section of the URL or URI, whatever you fancy calling it.  Regardless &#8212; notice the &#8220;22533&#8243; &#8212; Now, I don&#8217;t know who owns this counter, nor do I care &#8212; I&#8217;m just showing you a proof of concept.  For various reasons I created a little web form that would allow you to smack this counter (ie, make the hit # increase) N number of times, where N is a variable determined by the end user.</p>
<p><span id="more-100"></span></p>
<p>First, we have the form section with a drop down box with options of how many times to &#8220;smack him&#8221;:</p>
<p><code><br />
echo "&lt;form name=\"form\" method=\"post\" action=\"".$PHP_SELF.dominate($_REQUEST['howMany'])."\"&gt;";<br />
echo "How many times to smack him?&lt;br&gt;";<br />
echo "  &lt;select name=\"howMany\"&gt;";<br />
echo "    &lt;option value=\"1\"&gt;1&lt;/option&gt;";<br />
echo "    &lt;option value=\"10\"&gt;10&lt;/option&gt;";<br />
echo "    &lt;option value=\"25\"&gt;25&lt;/option&gt;";<br />
echo "    &lt;option value=\"50\"&gt;50&lt;/option&gt;";<br />
echo "    &lt;option value=\"100\"&gt;100&lt;/option&gt;";<br />
echo "    &lt;option value=\"250\"&gt;250&lt;/option&gt;";<br />
echo "  &lt;/select&gt;";<br />
echo "  &lt;br&gt;";<br />
echo "  &lt;input type=\"submit\" name=\"Smack him.\" value=\"Submit\"&gt;";<br />
echo "&lt;/form&gt;";<br />
</code></p>
<p>Now, we include the function call &#8211; which essentially creates an HTTP request on port 80 to the given URL/URI we found above as many times as were passed to it via the form!  Jackpot.<br />
<code><br />
function dominate($numTimes){<br />
for($i=0;$i&lt;$numTimes;$i++){<br />
echo "Smack<br />
";<br />
$fp = fsockopen("sitedesigner.safesecureweb.com", 80);<br />
$query = "GET /servlet/CounterServer?_patternID=12&amp;_userID=22533&amp;_pageID=1 HTTP/1.1\r\n";<br />
$query .= "Host: sitedesigner.safesecureweb.com\r\n";<br />
$query .= "Accept-Language: en-us\r\n";<br />
$query .= "Connection: Keep-Alive\r\n";<br />
$query .= "\r\n\r\n";<br />
fwrite($fp, $query);<br />
}<br />
}<br />
?&gt;<br />
</code></p>
<p>It may be more efficient to structure the get request before the for loop and simply hit the fwrite() multiple times within the for loop.  But this worked for my purposes&#8230; Have fun with it!<br />
Let me know if I can help with anything.</p>
<p>Cheers,</p>
<p>&#8211;Justin</p>
]]></content:encoded>
			<wfw:commentRss>http://www.humanumbrella.com/2008/08/03/php-a-script-to-increase-a-stat-counter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
