2 IMPORTANTE: ES NECESARIO QUE ESTE SCRIPT SE PONGA EN LA BARRA DE LA INTRANET NO
3 EN SISTEMAS/INTRANET PORQUE LA COOKIE FUNCIONA A PARTIR DEL DIRECTORIO EN EL
6 EL NOMBRE DE LA COOKIE DE PHP SE OBTIENE DE /etc/php4/apache/php.ini
13 if (!defined($fdat{'redirect'})) {
14 $http_headers_out {Location} = '/sistemas/intranet/';
18 %cookies = fetch CGI::Cookie;
19 open FILE, '/etc/php4/apache/php.ini';
21 if (/session\.name\s*=\s*(\w+)/) {
28 $archivo = '/tmp/sess_'.$cookies{$cookie_name}{'value'}[0];
30 open (FILE, $archivo);
31 $linea = join ('',<FILE>);
34 $res = parseSession (linea => $linea);
36 $udat{'user'} = $res->{'user'};
37 $udat{'domain'} = $res->{'domain'};
38 $udat{'nick'} = $res->{'nick'};
39 $udat{'nro_doc'} = $res->{'nro_doc'};
41 $http_headers_out {Location} = $fdat{'redirect'};
45 ################# FIN SCRIPT
50 my $op_value = $params{linea};
62 #Obtengo el nombre del parametro
63 $name = substr($op_value, 0, index($op_value, '|'));
64 $op_value = substr($op_value, index($op_value, '|') + 1); #Depuro la linea
66 $type = substr($op_value, 0, index($op_value, ':'));
67 $type2 = substr($op_value, 0, index($op_value, ';'));
72 $op_value = substr($op_value, index($op_value, ';') + 1); #Depuro la linea
75 $op_value = substr($op_value, index($op_value, ':') + 1); #Depuro la linea
80 $len = substr($op_value, 0, index($op_value, ':'));
81 #Obtengo el resto de la linea
82 $op_value = substr($op_value, index($op_value, ':') + 1);
83 if ($name eq 'usuario') {
84 $result->{'user'} = substr($op_value, 1, $len);
85 ($result->{'nick'}, $result->{'domain'}) = split ('@', $result->{'user'});
86 $op_value = substr($op_value, $len + 3);
89 elsif ($name eq 'documento') {
90 $result->{'nro_doc'} = substr($op_value, 1, $len);
94 $op_value = substr($op_value, $len + 3);
97 elsif ($type eq 'i') {
98 $op_value = substr($op_value, index($op_value,';') + 1);
100 elsif ($type eq 'd') {
101 $op_value = substr($op_value, index($op_value,';') + 1);
103 elsif ($type eq 'b') {
104 $op_value = substr($op_value, index($op_value,';') + 1);
106 elsif ($type eq 'a') {
107 $op_value = parseContenido (cont => $op_value);
109 elsif ($type eq 'O') {
110 $len = substr($op_value, 0, index($op_value,':'));
111 $op_value = substr($op_value, index($op_value,':') + 1);
112 $op_value = substr($op_value, $len + 3);
113 $op_value = parseContenido (cont => $op_value);
116 if (length($op_value) < 1) {
123 #Devuelve la linea sin el contenido
126 my $op_value = $params{cont};
132 #Elimino todo hasta el { inclusive
133 $op_value = substr($op_value, index($op_value, ':') + 2);
138 $type = substr($op_value, 0, index($op_value, ':'));
139 $type2 = substr($op_value, 0, index($op_value, ';')); #Caso particular Null
141 #Caso particular Null
144 $op_value = substr($op_value, index($op_value, ';') + 1); #Depuro la linea
147 $op_value = substr($op_value, index($op_value, ':') + 1); #Depuro la linea
151 $len = substr($op_value, 0, index($op_value, ':'));
152 #Obtengo el resto de la linea
153 $op_value = substr($op_value, index($op_value, ':') + 1);
154 $op_value = substr($op_value, $len + 3);
156 elsif ($type eq 'i') {
157 $op_value = substr($op_value, index($op_value,';') + 1);
159 elsif($type eq 'd') {
160 $op_value = substr($op_value, index($op_value,';') + 1);
162 elsif($type eq 'b') {
163 $op_value = substr($op_value, index($op_value,';') + 1);
165 elsif($type eq 'a') {
166 $op_value = parseContenido (cont => $op_value);
168 elsif($type eq 'O') {
169 $op_value = parseContenido (cont => $op_value);
172 if (substr($op_value,0,1) eq '}') {
173 $op_value = substr($op_value,1);