[prev in list] [next in list] [prev in thread] [next in thread] 

List:       perl-ldap-dev
Subject:    Net::LDAP 0.36, GroupWise and odd results...
From:       "Andrej Ricnik-Bay" <andrej.groups () gmail ! com>
Date:       2008-08-08 3:11:20
Message-ID: b35603930808072011u2844f29h7602be6261f7cb69 () mail ! gmail ! com
[Download RAW message or body]

Hi,

The question is a tad vague, maybe someone can hint me at phrasing it
differently... ?

I'm running a reasonably simple query against a GW-Server, and am
getting strange
output for two accounts ...

In lookups: XXXY
            SnSnSn
            GivenName
XXXY has address GivenName.SUse of uninitialized value in
concatenation (.) or string at ./loopsi.pl line 55, <DATA> line 253.
nSnSn@domain.tst

In lookups: XXXY
            Sn2Sn2Sn2
            Given2Name2
XXXY has address Given2Name2.SUse of uninitialized value in
concatenation (.) or string at ./loopsi.pl line 55, <DATA> line 253.
n2Sn2Sn2@domain.tst


The relevant lines of code:

my $filter = "(&(mail=*)(cn=A*))";
my $entry;
my $lanid;
throw_to_syslog("Filter: $filter") if ( $debug > 1 );
my $mesg = $lookupldap->search(
  base      => 'o=DOMAIN',
  filter    => $filter,
  scope     => 'sub',
  attrs     => [ 'mail', 'cn', 'sn', 'givenName' ],
  timelimit => 300
);
# if we were successful
if ($mesg->code == 0) {
  if ($mesg->entries) {
    foreach $entry ($mesg->entries) {
      print "In lookups: ".$entry->get_value('cn')."\n";
      print "            ".$entry->get_value('sn')."\n";
      print "            ".$entry->get_value('givenName')."\n";
      foreach my $mail ( $entry->get_value('mail') ){
        my $mailaddr = $mail;
        if ( $mailaddr =~ /@/ && $entry->dn =~ /cn=([^,]+),/) {
          print "$1 has address $mailaddr\n";
          if ($debug > 1);
          $lanid = lc($1);
          # save the mail address and the dn
          $mailaddrs{"$lanid"} = $mailaddr;
          $officedns{"$lanid"} = $entry->dn;
          $addrcount++;
        }
      }
      print "\n";
    }
  }
}

The odd thing is that if I narrow the search down via a less inclusive
filter things look perfectly normal for both.  Things look also normal
with an ldapsearch from the command-line, and I can't see any
differences in the raw traffic when listening into 389 using wireshark,
and both are done via an anonymous bind.

My perl version is
 perl -V
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
  Platform:
    osname=linux, osvers=2.6.23.16-smp, archname=i486-linux-thread-multi
    uname='linux midas 2.6.23.16-smp #1 smp sat feb 23 00:20:30 cst
2008 i686 amd athlon(tm) 64 x2 dual core processor 5200+ authenticamd
gnulinux '
    config_args='-de -Dprefix=/usr -Dvendorprefix=/usr
-Dcccdlflags=-fPIC -Dinstallprefix=/usr -Doptimize=-O2 -march=i486
-mtune=i686 -Dusethreads -Duseithreads -Dpager=/usr/bin/less -isr
-Dinc_version_list=5.8.7 5.8.6 5.8.5 5.8.4 5.8.3 5.8.2 5.8.1 5.8.0
-Darchname=i486-linux'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
-fno-strict-aliasing -pipe -Wdeclaration-after-statement
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O2 -march=i486 -mtune=i686',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS
-fno-strict-aliasing -pipe -Wdeclaration-after-statement
-I/usr/local/include'
    ccversion='', gccversion='4.2.3', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
    alignbytes=4, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib
    libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc
    perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
    libc=/lib/libc-2.7.so, so=so, useshrplib=false, libperl=libperl.a
    gnulibc_version='2.7'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib'


Characteristics of this binary (from libperl):
  Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT
                        PERL_MALLOC_WRAP THREADS_HAVE_PIDS USE_ITHREADS
                        USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API
  Built under linux
  Compiled at Feb 28 2008 23:15:25
  @INC:
    /usr/lib/perl5/5.8.8/i486-linux-thread-multi
    /usr/lib/perl5/5.8.8
    /usr/lib/perl5/site_perl/5.8.8/i486-linux-thread-multi
    /usr/lib/perl5/site_perl/5.8.8
    /usr/lib/perl5/site_perl
    /usr/lib/perl5/vendor_perl/5.8.8/i486-linux-thread-multi
    /usr/lib/perl5/vendor_perl/5.8.8
    /usr/lib/perl5/vendor_perl
    .


Any hints greatly appreciated

-- 
Please don't top post, and don't use HTML e-Mail :} Make your quotes concise.

http://www.american.edu/econ/notes/htmlmail.htm
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic