* Add enclair_db option to UserDB.pm. Allows logging of enclair password
[interchange.git] / code / Filter / acl2hash.filter
1 # Copyright 2002-2007 Interchange Development Group and others
2 # Copyright 1996-2002 Red Hat, Inc.
3
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2 of the License, or
7 # (at your option) any later version.  See the LICENSE file for details.
8
9 # $Id: acl2hash.filter,v 1.3 2007-03-30 23:40:44 pajamian Exp $
10
11 CodeDef acl2hash Filter
12 CodeDef acl2hash Description acl2hash
13 CodeDef acl2hash Visibility private
14 CodeDef acl2hash Routine <<EOR
15 sub {
16         my ($value) = @_;
17         my $orig = $value;
18         $value =~ s/^[\s,\0]+//;
19         $value =~ s/[\s,\0]+$//;
20         return $value if $value =~ /^\{.*\}$/s;
21         $value =~ s/\0//g;
22         my $hash = Vend::Util::get_option_hash($value)
23                 or return '{}';
24
25         my @del;
26         while(my ($k, $v) = each %$hash) {
27                 push @del, $k if $v =~ /d/;
28                 push @del, $k if ! length($k);
29         }
30         delete @{$hash}{@del} if @del;
31         my $out = ::uneval_it($hash);
32         return $out;
33 }
34 EOR