Manifesto for Software Craftmanship
Name:
Anonymous
2009-03-07 22:46
Name:
Anonymous
2009-03-08 0:03
<?php
function loadPage($ch, $pageurl, $query=false) {
curl_setopt($ch, CURLOPT_URL, $pageurl);
curl_setopt($ch, CURLOPT_POST, false);
if($query!==false) {
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $query);
}
return curl_exec($ch);
}
function getRandomString($length) {
$allowed = "abcdefghijklmnopqrstuvwxyz0123456789";
$str='';
$len = strlen($allowed);
for($i=0; $i<$length; $i++) {
$str.=$allowed[rand(0,$len-1)];
}
return $str;
}
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');
echo "Loading signup page...<br/>";
$res = loadPage($ch,"http://manifesto.softwarecraftsmanship.org/sign/new");
$token = preg_match("/<input name=\"authenticity_token\".*value=\"([^\"]+)\"/i",$res,$arr);
$token = $arr[1];
echo "Signup page loaded, token $token aquired..<br/>";
sleep(5);
$addres = getRandomString(13);
$address = $addres."@mailinator.com";
echo "Using email: $address<br/>";
loadPage($ch,"http://manifesto.softwarecraftsmanship.org/sign/sign","signatory[name]=THE+SUSSMAN&signatory[location]=MIT&signatory[email]=".$address."&authenticity_token=".$token);
echo "Signup sent, fetching validation address...<br/>";
$res = loadPage($ch,"http://www.mailinator.com/maildir.jsp?email=".$address);
preg_match("/<a href=\/showmail\.jsp\?email=[a-zA-Z0-9]+&msgid=(\d+)>Manifesto for/i",$res,$arr);
$token = $arr[1];
echo "Inbox OK, message ID is $token<br/>";
$res = loadPage($ch,"http://www.mailinator.com/showmail.jsp?email=".$addres."&msgid=".$token);
preg_match("/http:\/\/manifesto\.softwarecraftsmanship\.org\/sign\/confirmation\/([a-zA-Z0-9]+) rel=nofollow/i",$res,$arr);
echo "Message recieved, confirmation token is: ".$arr[1];
echo loadPage($ch,"http://manifesto.softwarecraftsmanship.org/sign/confirm/".$arr[1]);
?>
Newer Posts