summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 2546537)
raw | patch | inline | side by side (parent: 2546537)
author | rettenbe <rettenbe@594d385d-05f5-0310-b6e9-bd551577e9d8> | |
Wed, 19 Mar 2008 15:29:59 +0000 (15:29 +0000) | ||
committer | rettenbe <rettenbe@594d385d-05f5-0310-b6e9-bd551577e9d8> | |
Wed, 19 Mar 2008 15:29:59 +0000 (15:29 +0000) |
git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@9946 594d385d-05f5-0310-b6e9-bd551577e9d8
gosa-si/gosa-si-server | patch | blob | history |
diff --git a/gosa-si/gosa-si-server b/gosa-si/gosa-si-server
index 0b106ae047c2659bea20d8ab8e0dc97e43a7ad8c..9357685bd0a2bebc64d6597a9d6b2894d8bc0a82 100755 (executable)
--- a/gosa-si/gosa-si-server
+++ b/gosa-si/gosa-si-server
# REVISION: ---
#===============================================================================
+# TODO es gibt eine globale funktion get_ldap_handle
+# - ist in einer session dieses ldap handle schon vorhanden, wird es zurückgegeben
+# - ist es nicht vorhanden, wird es erzeugt, im heap für spätere ldap anfragen gespeichert und zurückgegeben
+# - sessions die kein ldap handle brauchen, sollen auch keins haben
+# - wird eine session geschlossen, muss das ldap verbindung vorher beendet werden
+
+
use strict;
use warnings;
use Getopt::Long;
# expect macaddress is unique!!!!!!
my $target = $res_hash->{1}->{hostname};
-# if (not defined $target) {
-# &daemon_log("ERROR: no host found for mac address: $macaddress", 1);
-# &daemon_log("$hit->{xmlmessage}", 8);
-# my $sql_statement = "UPDATE $job_queue_tn ".
-# "SET status='error', result='no host found for mac address' ".
-# "WHERE id='$jobdb_id'";
-# my $res = $job_db->update_dbentry($sql_statement);
-# next;
-# }
-#
# change header
$job_msg =~ s/<header>job_/<header>gosa_/;
}
+sub get_ldap_handle {
+ my ($session_id) = @_;
+ my $heap;
+ my $ldap_handle;
+
+ if (not defined $session_id) {
+ return $ldap_handle;
+ }
+
+ my $session_reference = $kernel->ID_id_to_session($session_id);
+ if( defined $session_reference ) {
+ $heap = $session_reference->get_heap();
+ }
+
+ if (not exists $heap->{ldap_handle}) {
+ # create new ldap handle
+ # add ldap handle to heap
+ }
+
+ $ldap_handle = $heap->{ldap_handle};
+
+ return \$ldap_handle;
+}
+
+
sub refresh_ldap_handle {
my ($session_id) = @_ ;
if (not defined $session_id) { $session_id = 0; }