/[ludap]/ludap/auth.php
ViewVC logotype

Diff of /ludap/auth.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by mose, Tue Aug 12 20:43:49 2003 UTC revision 1.3 by mose, Tue Aug 19 05:07:21 2003 UTC
# Line 26  used in:     index.php Line 26  used in:     index.php
26    
27  session_start();  session_start();
28    
29  $logged_in = $HTTP_SESSION_VARS['me'];  $logged_in = (isset($_SESSION['me'])) ? $_SESSION['me'] : false;
30  $login     = $HTTP_POST_VARS['login'];  $login     = (isset($_POST['login'])) ? $_POST['login'] : false;
31  $logout    = $HTTP_GET_VARS['logout'];  $passd     = (isset($_POST['passd'])) ? $_POST['passd'] : false;
32    $logout    = (isset($_GET['logout'])) ? true : false;
33    
34  $auth      = FALSE;  $auth      = FALSE;
35  $output    = FALSE;  $output    = FALSE;
36  $admin     = FALSE;  $admin     = FALSE;
37  $showform  = TRUE;  $showform  = TRUE;
38    
39    function authlog($type,$path="logs") {
40            global $S;
41            $S->assign('type',$type);
42            $log = $S->fetch('logline.tpl');
43            $fp = @fopen("$path/.auth.log", "a+");
44            if ($fp) {
45                    while (!flock($fp,2) and ($i < 30)) { sleep(2); $i++; }
46                    @fputs($fp,"$log\n");
47                    flock($fp,3);
48                    @fclose($fp);
49            }
50    }
51    
52  if (!$logged_in or $logout) {  if (!$logged_in or $logout) {
53    if ($logout) {    if ($logout) {
54          authlog("Logout - $me",$logdir);          authlog("Logout - ".$_SESSION['me'],$logdir);
55          session_destroy();          session_destroy();
56          $output = "Votre session a été detruite.";          $output = "Votre session a été detruite.";
57    } elseif ($login && $pass) {    } elseif ($login && $passd) {
58                  $cf   = $conf['ludap'];                  $cf   = $conf['ludap'];
59                  $conn = ldap_connect($cf['host']) or die("Hôte LDAP innaccessible !<hr>GULP!");                  $conn = ldap_connect($cf['host']) or die("Hôte LDAP innaccessible !<hr>GULP!");
60                  if (@ldap_bind($conn,$cf['baseattr']."=$login,".$cf['basedn'],$pass)) {                  $binddn = $cf['baseattr']."=".utf8_encode($login).", ".$cf['basedn'];
61                    if (@ldap_bind($conn,$binddn,$passd)) {
62                          $i    = ldap_search($conn,$cf['basedn'],$cf['baseattr']."=$login",array('cn','dn'));                              $i    = ldap_search($conn,$cf['basedn'],$cf['baseattr']."=$login",array('cn','dn'));    
63                          $ii   = ldap_first_entry($conn,$i);                          $ii   = ldap_first_entry($conn,$i);
64                          $ccn  = @ldap_get_values($conn,$ii,'cn');                          $ccn  = @ldap_get_values($conn,$ii,'cn');
# Line 57  if (!$logged_in or $logout) { Line 72  if (!$logged_in or $logout) {
72                          $cn = $ccn[0];                          $cn = $ccn[0];
73                          $auth = TRUE;                          $auth = TRUE;
74                          $me = $login;                          $me = $login;
75                            $pass = $passd;
76                          session_register('me','cn','pass','gps');                          session_register('me','cn','pass','gps');
77                          authlog("Login - $login",$logdir);                          authlog("Login - $login",$logdir);
78                  } else {                  } else {
# Line 69  if (!$logged_in or $logout) { Line 85  if (!$logged_in or $logout) {
85    }    }
86  } else {  } else {
87    $auth = TRUE;    $auth = TRUE;
88            $me = $logged_in;
89  }  }
90    
91  if ((!$conf['global']['open'] and !$auth) or $identify) { ?>  if ((!$conf['global']['open'] and !$auth) or $identify) {
92  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">          $S->assign('showform',$showform);
93  <html><head><title>Auth <? echo $conf['global']['site']; ?></title>          $S->assign('output',$output);
94  <link rel="stylesheet" type="text/css" href="ludap.css"></head>          
95  <body onLoad="document.authform.login.focus()" AUTOCOMPLETE="off">          $S->display('login.tpl');
96  <table width="100%" height="100%" border="0"><tr><td align="center" valign="middle">          echo "<pre>";print_r(get_defined_vars());echo "</pre>";
97  <table border="0"><tr><td>  /*
98  <?  if ($showform) { ?>  */
99  <FORM  NAME="authform" ACTION="<? echo $PHP_SELF ?>" METHOD="post" class="area" style="text-align:right;">          exit;
100  <? if (!empty($output)) { ?>  }
101  <div class="msgok"><? echo $output; ?></div>  ?>
 <? } ?>  
 <div style="font-size:140%;"><b>Identification <? echo $conf['global']['site']; ?></b></div>  
 <div>login    <INPUT TYPE="text" NAME="login" VALUE="<? echo $login; ?>" class="act"></div>  
 <div>password <INPUT TYPE="password" NAME="pass" class="act"></div>  
 <div class="">         <INPUT TYPE="submit" NAME="action" VALUE="login" class="act"></div>  
 </form>  
 <? } ?>  
 </td></tr></table>  
 </td></tr></table>  
 <? /* <pre><? print_r(get_defined_vars()); ?></pre> */ ?>  
 </body></html>  
 <? exit; } ?>  

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26