Version: 0.00001
Type: Function
Category: Other
License: GNU General Public License
Description: This is a simple function that takes username, password, and pop server as arguments, and returns somewhat intelligent error codes.
<?
function popAuth($user, $pass, $server)
{
$result=0;
$sock = fsockopen("$server", 110, &$errno, &$errstr);
if(!$sock)
{
//failed to connect
$result=0;
}
else
{
set_socket_blocking($sock,-1);
$rubbish = fgets($sock,128); //hold the banner
fwrite($sock,"USER $user\r\n"); //user cmd
$u = fgets($sock,128);
$u = ereg_replace("\n","",$u); //strip \n
if( ereg("^\+OK(.+)", $u) )
{
fwrite($sock,"PASS $pass\r\n");
$p = fgets($sock,128);
$p = ereg_replace("\n","",$p);
if( ereg("^\+OK(.+)", $p) )
{
//success
$result = 10;
}
else
{
//wrong password
$result = 2;
}
}
else
{
//bad user name
$result = 1;
}
fwrite($sock,"QUIT\r\n");
fclose($sock);
}
return $result;
}
?>