|
From: Brad D. <br...@Di...> - 2003-03-25 21:12:53
|
Running with Net::LDAP debug of 12 didn't yield much different than
with 4. However, I ran with perl debugger on and got the following
when I did a Ctrl-c on the hang...
Convert::ASN1::asn_read(/usr/lib/perl5/site_perl/5.8.0/Convert/ASN1/IO.pm:198):
198: READ_ERR:
199: $@ = "I/O Error $! " . CORE::unpack("H*",$_[1]);
Should I be led to believe by this that the problem may be in the ASN
code?
Brad
|
|
From: Brad D. <Bra...@Su...> - 2003-03-26 03:12:43
|
Based on the previous note and the following excerpt from the LDAP.pm
perl module, I presume that after the bind, the LDAP socket or
associated file handler must be getting dropped before I send a
request to it.
652 sub _recvresp {
653 my $ldap = shift;
654 my $what = shift;
655 my $sock = $ldap->socket;
656 my $sel = IO::Select->new($sock);
657 my $ready;
658
659 for( $ready = 1 ; $ready ; $ready = $sel->can_read(0)) {
660 my $pdu;
661 asn_read($sock, $pdu)
662 or return LDAP_OPERATIONS_ERROR;
My guess is that the open() function and the asn_read() functions are
colliding on the file handler for the LDAP connection socket. Thats
just by guess though.
What do you think? I sure would like to see the answer because I can't
get my data loaded into the directory.
Brad
On Tue, 2003-03-25 at 15:11, Brad Diggs wrote:
> Running with Net::LDAP debug of 12 didn't yield much different than
> with 4. However, I ran with perl debugger on and got the following
> when I did a Ctrl-c on the hang...
>
> Convert::ASN1::asn_read(/usr/lib/perl5/site_perl/5.8.0/Convert/ASN1/IO.pm:198):
> 198: READ_ERR:
> 199: $@ = "I/O Error $! " . CORE::unpack("H*",$_[1]);
>
> Should I be led to believe by this that the problem may be in the ASN
> code?
>
> Brad
--
---------------------------------------------------------------------
_/_/_/ _/ _/ _/ _/ Brad Diggs
_/ _/ _/ _/_/ _/ Directory and Identity Architect
_/_/_/ _/ _/ _/ _/ _/ Office: 972-992-0002
_/ _/ _/ _/ _/_/
_/_/_/ _/_/_/ _/ _/ Bra...@Su...
M I C R O S Y S T E M S
---------------------------------------------------------------------
|
|
From: Brad D. <br...@Di...> - 2003-03-26 17:23:28
|
Thanks to Graham for the recommendation (although on another thread,
I added the following to my script, ran it, and then killed it with
"kill -USR2 <pid>".
use Carp;
$SIG{USR2} = \&Carp::croak;
The following line was the resulting error returned by my script:
USR2 at /usr/lib/perl5/site_perl/5.8.0/Net/LDAP.pm line 661
Note that this is consistent with what I had assumed from my previous
note. The LDAP is getting hung up on the asn_read on line 661 of
LDAP.pm.
Regards,
Brad
On Tue, 2003-03-25 at 21:08, Brad Diggs wrote:
> Based on the previous note and the following excerpt from the LDAP.pm
> perl module, I presume that after the bind, the LDAP socket or
> associated file handler must be getting dropped before I send a
> request to it.
>
> 652 sub _recvresp {
> 653 my $ldap = shift;
> 654 my $what = shift;
> 655 my $sock = $ldap->socket;
> 656 my $sel = IO::Select->new($sock);
> 657 my $ready;
> 658
> 659 for( $ready = 1 ; $ready ; $ready = $sel->can_read(0)) {
> 660 my $pdu;
> 661 asn_read($sock, $pdu)
> 662 or return LDAP_OPERATIONS_ERROR;
>
> My guess is that the open() function and the asn_read() functions are
> colliding on the file handler for the LDAP connection socket. Thats
> just by guess though.
>
> What do you think? I sure would like to see the answer because I can't
> get my data loaded into the directory.
>
> Brad
>
> On Tue, 2003-03-25 at 15:11, Brad Diggs wrote:
> > Running with Net::LDAP debug of 12 didn't yield much different than
> > with 4. However, I ran with perl debugger on and got the following
> > when I did a Ctrl-c on the hang...
> >
> > Convert::ASN1::asn_read(/usr/lib/perl5/site_perl/5.8.0/Convert/ASN1/IO.pm:198):
> > 198: READ_ERR:
> > 199: $@ = "I/O Error $! " . CORE::unpack("H*",$_[1]);
> >
> > Should I be led to believe by this that the problem may be in the ASN
> > code?
> >
> > Brad
|
|
From: <Sta...@GI...> - 2003-03-26 17:34:53
|
Brad,
I've never gotten that particular error, but I have recieved many errors
in perl-ldap and ASN1 when I submitted errant arguments due to typos
in my code mostly. But my point is you can definately cause some
misinteractions between Net::LDAP and Convert::ASN1 with bad values
passed. I know that's not what's going on here, but I just thought I'd
point
out it happens. In fact I had to give up using $ldap->add/$ldap->update
syntax stuff cause I could never get it to work on Solaris with per 5.6.1,
it
would die in Convert::ASN1 somewhere. I jsut remembered this as I was
typing... let me dig back a bit and see if I can find my test script so I
can
see where I got an error. I believe this was back when I was using
perl-ldap 0.26...hmmm
-Stan
Brad Diggs
<br...@Di...> To: per...@li...
Sent by: cc:
per...@li... Subject: Re: $ldap->add hangs...
ceforge.net
03/25/2003 04:11 PM
Running with Net::LDAP debug of 12 didn't yield much different than
with 4. However, I ran with perl debugger on and got the following
when I did a Ctrl-c on the hang...
Convert::ASN1::asn_read(/usr/lib/perl5/site_perl/5.8.0
/Convert/ASN1/IO.pm:198):
198: READ_ERR:
199: $@ = "I/O Error $! " . CORE::unpack("H*",$_[1]);
Should I be led to believe by this that the problem may be in the ASN
code?
Brad
-------------------------------------------------------
This SF.net email is sponsored by:
The Definitive IT and Networking Event. Be There!
NetWorld+Interop Las Vegas 2003 -- Register today!
http://ads.sourceforge.net/cgi-bin/redirect.pl?keyn0001en
|
|
From: Brad D. <br...@Di...> - 2003-03-26 18:08:47
|
Per Graham's recommendations in the "unblessed reference?" thread, I
enabled debug level 15 and got the following output:
Net::LDAP=HASH(0x8169f70) sending:
30 28 02 01 01 60 23 02 01 03 04 14 63 6E 3D 44 0(...`#.....cn=D
69 72 65 63 74 6F 72 79 20 4D 61 6E 61 67 65 72 irectory Manager
80 08 61 64 6D 69 6E 31 32 33 __ __ __ __ __ __ ..password
0000 40: SEQUENCE {
0002 1: INTEGER = 1
0005 35: [APPLICATION 0] {
0007 1: INTEGER = 3
000A 20: STRING = 'cn=Directory Manager'
0020 8: [CONTEXT 0]
0022 : 61 64 6D 69 6E 31 32 33 __ __ __ __ __ __ __ __
password
002A : }
002A : }
Net::LDAP=HASH(0x8169f70) received:
30 0C 02 01 01 61 07 0A 01 00 04 00 04 00 __ __ 0....a........
0000 12: SEQUENCE {
0002 1: INTEGER = 1
0005 7: [APPLICATION 1] {
0007 1: ENUM = 0
000A 0: STRING = ''
000C 0: STRING = ''
000E : }
000E : }
Adding Fname1, LName1, to samsun:389 via cn=Directory Manager:password
DN before update "cn=Fname1 LName1, ou=People, o=diggsfamily"
Net::LDAP=HASH(0x8169f70) sending:
substr outside of string at
/usr/lib/perl5/site_perl/5.8.0/Convert/ASN1/Debug.pm line 33, <PSAFILE>
line 1.
------------------------------------------------------
Doing the same at debug level 12 yields the following:
Net::LDAP=HASH(0x8169f70) sending:
0000 40: SEQUENCE {
0002 1: INTEGER = 1
0005 35: [APPLICATION 0] {
0007 1: INTEGER = 3
000A 20: STRING = 'cn=Directory Manager'
0020 8: [CONTEXT 0]
0022 : 61 64 6D 69 6E 31 32 33 __ __ __ __ __ __ __ __
password
002A : }
002A : }
Net::LDAP=HASH(0x8169f70) received:
0000 12: SEQUENCE {
0002 1: INTEGER = 1
0005 7: [APPLICATION 1] {
0007 1: ENUM = 0
000A 0: STRING = ''
000C 0: STRING = ''
000E : }
000E : }
Adding Fname1, LName1, to samsun:389 via cn=Directory Manager:password
DN before update "cn=Fname1 LName1, ou=People, o=diggsfamily"
Net::LDAP=HASH(0x8169f70) sending:
0000 194: SEQUENCE {
0003 1: INTEGER = 2
0006 194: [APPLICATION 8] {
0009 42: STRING
000B : C2 B2 04 2A 63 6E 3D 46 6E 61 6D 65 31 20 4C 4E
...*cn=Fname1 LN
001B : 61 6D 65 31 2C 20 6F 75 3D 50 65 6F 70 6C 65 2C ame1,
ou=People,
002B : 20 6F 3D 64 69 67 67 73 66 61 __ __ __ __ __ __
o=diggsfa
0035 194: SEQUENCE {
0038 21: SEQUENCE {
003A 2: STRING
003C : C2 81 __ __ __ __ __ __ __ __ __ __ __ __ __ __ ..
003E 15: SET {
0040 13: STRING
0042 : 63 6E 31 0F 04 0D 46 6E 61 6D 65 31 20 __ __ __
cn1...Fname1
004F : }
004F : }
004F 65: SEQUENCE {
0051 11: STRING
0053 : 65 31 30 41 04 0B 6F 62 6A 65 63 __ __ __ __ __
e10A..objec
005E 50: SET {
0060 3: STRING = 'ss1'
0065 6: STRING
0067 : 03 74 6F 70 04 06 __ __ __ __ __ __ __ __ __ __
.top..
006D 20: STRING
006F : 72 73 6F 6E 04 14 6F 72 67 61 6E 69 7A 61 74 69
rson..organizati
007F : 6F 6E 61 6C __ __ __ __ __ __ __ __ __ __ __ __
onal
0083 13: STRING
0085 : 72 73 6F 6E 04 0D 69 6E 65 74 4F 72 67 __ __ __
rson..inetOrg
0092 : }
0092 : }
0092 14: SEQUENCE {
0094 2: STRING = 'on'
0098 8: SET {
009A 6: STRING
009C : 73 6E 31 08 04 06 __ __ __ __ __ __ __ __ __ __
sn1...
00A2 : }
00A2 : }
00A2 21: SEQUENCE {
00A4 9: STRING
00A6 : 65 31 30 15 04 09 67 69 76 __ __ __ __ __ __ __
e10...giv
00AF 8: SET {
00B1 6: STRING
00B3 : 6D 65 31 08 04 06 __ __ __ __ __ __ __ __ __ __
me1...
00B9 : }
00B9 : }
DN after update "cn=Fname1 LName1, ou=People, o=diggsfamily"
Error: Add failed -> I/O Error
------------------------------------------------------
With regards to the directory server log files, the
directory server never receives the LDAP add request.
It sees a successful connect and BIND but no add.
Brad
On Wed, 2003-03-26 at 11:22, Brad Diggs wrote:
> Thanks to Graham for the recommendation (although on another thread,
> I added the following to my script, ran it, and then killed it with
> "kill -USR2 <pid>".
>
> use Carp;
> $SIG{USR2} = \&Carp::croak;
>
> The following line was the resulting error returned by my script:
>
> USR2 at /usr/lib/perl5/site_perl/5.8.0/Net/LDAP.pm line 661
>
> Note that this is consistent with what I had assumed from my previous
> note. The LDAP is getting hung up on the asn_read on line 661 of
> LDAP.pm.
>
> Regards,
> Brad
>
>
> On Tue, 2003-03-25 at 21:08, Brad Diggs wrote:
> > Based on the previous note and the following excerpt from the LDAP.pm
> > perl module, I presume that after the bind, the LDAP socket or
> > associated file handler must be getting dropped before I send a
> > request to it.
> >
> > 652 sub _recvresp {
> > 653 my $ldap = shift;
> > 654 my $what = shift;
> > 655 my $sock = $ldap->socket;
> > 656 my $sel = IO::Select->new($sock);
> > 657 my $ready;
> > 658
> > 659 for( $ready = 1 ; $ready ; $ready = $sel->can_read(0)) {
> > 660 my $pdu;
> > 661 asn_read($sock, $pdu)
> > 662 or return LDAP_OPERATIONS_ERROR;
> >
> > My guess is that the open() function and the asn_read() functions are
> > colliding on the file handler for the LDAP connection socket. Thats
> > just by guess though.
> >
> > What do you think? I sure would like to see the answer because I can't
> > get my data loaded into the directory.
> >
> > Brad
> >
> > On Tue, 2003-03-25 at 15:11, Brad Diggs wrote:
> > > Running with Net::LDAP debug of 12 didn't yield much different than
> > > with 4. However, I ran with perl debugger on and got the following
> > > when I did a Ctrl-c on the hang...
> > >
> > > Convert::ASN1::asn_read(/usr/lib/perl5/site_perl/5.8.0/Convert/ASN1/IO.pm:198):
> > > 198: READ_ERR:
> > > 199: $@ = "I/O Error $! " . CORE::unpack("H*",$_[1]);
> > >
> > > Should I be led to believe by this that the problem may be in the ASN
> > > code?
> > >
> > > Brad
|
|
From: Brad D. <br...@Di...> - 2003-03-26 19:43:43
|
Hello all,
I changed the LANG environment variable per the recommendation for the
"strange problem" thread and it resolved my problem as well. The
following lines from the other thread explain the problem:
> A similar sounding problem came up before. Then, Graham's comment:
>
> > Have you tried it with a pre 5.8 version of perl ?
> >
> > I have a feeling this is something todo with unicode/utf8 support
> > in 5.8 that Convert::ASN1 is not accounting for.
> >
> > As you are on RH 8.0, what do you have in /etc/sysconfig/i18n
> >
> > If it mentions UTF-8 try setting your LANG environment variable to
en_US
> >
> > Graham.
>
So, setting the LANG environment variable to en_US fixed my
problem as well. I suspect the same would apply to the "unblessed
reference" thread as well.
Regards,
Brad
On Wed, 2003-03-26 at 12:07, Brad Diggs wrote:
> Per Graham's recommendations in the "unblessed reference?" thread, I
> enabled debug level 15 and got the following output:
>
> Net::LDAP=HASH(0x8169f70) sending:
>
> 30 28 02 01 01 60 23 02 01 03 04 14 63 6E 3D 44 0(...`#.....cn=D
> 69 72 65 63 74 6F 72 79 20 4D 61 6E 61 67 65 72 irectory Manager
> 80 08 61 64 6D 69 6E 31 32 33 __ __ __ __ __ __ ..password
>
> 0000 40: SEQUENCE {
> 0002 1: INTEGER = 1
> 0005 35: [APPLICATION 0] {
> 0007 1: INTEGER = 3
> 000A 20: STRING = 'cn=Directory Manager'
> 0020 8: [CONTEXT 0]
> 0022 : 61 64 6D 69 6E 31 32 33 __ __ __ __ __ __ __ __
> password
> 002A : }
> 002A : }
> Net::LDAP=HASH(0x8169f70) received:
>
> 30 0C 02 01 01 61 07 0A 01 00 04 00 04 00 __ __ 0....a........
>
> 0000 12: SEQUENCE {
> 0002 1: INTEGER = 1
> 0005 7: [APPLICATION 1] {
> 0007 1: ENUM = 0
> 000A 0: STRING = ''
> 000C 0: STRING = ''
> 000E : }
> 000E : }
> Adding Fname1, LName1, to samsun:389 via cn=Directory Manager:password
> DN before update "cn=Fname1 LName1, ou=People, o=diggsfamily"
> Net::LDAP=HASH(0x8169f70) sending:
>
> substr outside of string at
> /usr/lib/perl5/site_perl/5.8.0/Convert/ASN1/Debug.pm line 33, <PSAFILE>
> line 1.
>
> ------------------------------------------------------
> Doing the same at debug level 12 yields the following:
>
>
> Net::LDAP=HASH(0x8169f70) sending:
> 0000 40: SEQUENCE {
> 0002 1: INTEGER = 1
> 0005 35: [APPLICATION 0] {
> 0007 1: INTEGER = 3
> 000A 20: STRING = 'cn=Directory Manager'
> 0020 8: [CONTEXT 0]
> 0022 : 61 64 6D 69 6E 31 32 33 __ __ __ __ __ __ __ __
> password
> 002A : }
> 002A : }
> Net::LDAP=HASH(0x8169f70) received:
> 0000 12: SEQUENCE {
> 0002 1: INTEGER = 1
> 0005 7: [APPLICATION 1] {
> 0007 1: ENUM = 0
> 000A 0: STRING = ''
> 000C 0: STRING = ''
> 000E : }
> 000E : }
> Adding Fname1, LName1, to samsun:389 via cn=Directory Manager:password
> DN before update "cn=Fname1 LName1, ou=People, o=diggsfamily"
> Net::LDAP=HASH(0x8169f70) sending:
> 0000 194: SEQUENCE {
> 0003 1: INTEGER = 2
> 0006 194: [APPLICATION 8] {
> 0009 42: STRING
> 000B : C2 B2 04 2A 63 6E 3D 46 6E 61 6D 65 31 20 4C 4E
> ...*cn=Fname1 LN
> 001B : 61 6D 65 31 2C 20 6F 75 3D 50 65 6F 70 6C 65 2C ame1,
> ou=People,
> 002B : 20 6F 3D 64 69 67 67 73 66 61 __ __ __ __ __ __
> o=diggsfa
> 0035 194: SEQUENCE {
> 0038 21: SEQUENCE {
> 003A 2: STRING
> 003C : C2 81 __ __ __ __ __ __ __ __ __ __ __ __ __ __ ..
> 003E 15: SET {
> 0040 13: STRING
> 0042 : 63 6E 31 0F 04 0D 46 6E 61 6D 65 31 20 __ __ __
> cn1...Fname1
> 004F : }
> 004F : }
> 004F 65: SEQUENCE {
> 0051 11: STRING
> 0053 : 65 31 30 41 04 0B 6F 62 6A 65 63 __ __ __ __ __
> e10A..objec
> 005E 50: SET {
> 0060 3: STRING = 'ss1'
> 0065 6: STRING
> 0067 : 03 74 6F 70 04 06 __ __ __ __ __ __ __ __ __ __
> .top..
> 006D 20: STRING
> 006F : 72 73 6F 6E 04 14 6F 72 67 61 6E 69 7A 61 74 69
> rson..organizati
> 007F : 6F 6E 61 6C __ __ __ __ __ __ __ __ __ __ __ __
> onal
> 0083 13: STRING
> 0085 : 72 73 6F 6E 04 0D 69 6E 65 74 4F 72 67 __ __ __
> rson..inetOrg
> 0092 : }
> 0092 : }
> 0092 14: SEQUENCE {
> 0094 2: STRING = 'on'
> 0098 8: SET {
> 009A 6: STRING
> 009C : 73 6E 31 08 04 06 __ __ __ __ __ __ __ __ __ __
> sn1...
> 00A2 : }
> 00A2 : }
> 00A2 21: SEQUENCE {
> 00A4 9: STRING
> 00A6 : 65 31 30 15 04 09 67 69 76 __ __ __ __ __ __ __
> e10...giv
> 00AF 8: SET {
> 00B1 6: STRING
> 00B3 : 6D 65 31 08 04 06 __ __ __ __ __ __ __ __ __ __
> me1...
> 00B9 : }
> 00B9 : }
> DN after update "cn=Fname1 LName1, ou=People, o=diggsfamily"
> Error: Add failed -> I/O Error
>
> ------------------------------------------------------
>
> With regards to the directory server log files, the
> directory server never receives the LDAP add request.
> It sees a successful connect and BIND but no add.
>
> Brad
>
> On Wed, 2003-03-26 at 11:22, Brad Diggs wrote:
> > Thanks to Graham for the recommendation (although on another thread,
> > I added the following to my script, ran it, and then killed it with
> > "kill -USR2 <pid>".
> >
> > use Carp;
> > $SIG{USR2} = \&Carp::croak;
> >
> > The following line was the resulting error returned by my script:
> >
> > USR2 at /usr/lib/perl5/site_perl/5.8.0/Net/LDAP.pm line 661
> >
> > Note that this is consistent with what I had assumed from my previous
> > note. The LDAP is getting hung up on the asn_read on line 661 of
> > LDAP.pm.
> >
> > Regards,
> > Brad
> >
> >
> > On Tue, 2003-03-25 at 21:08, Brad Diggs wrote:
> > > Based on the previous note and the following excerpt from the LDAP.pm
> > > perl module, I presume that after the bind, the LDAP socket or
> > > associated file handler must be getting dropped before I send a
> > > request to it.
> > >
> > > 652 sub _recvresp {
> > > 653 my $ldap = shift;
> > > 654 my $what = shift;
> > > 655 my $sock = $ldap->socket;
> > > 656 my $sel = IO::Select->new($sock);
> > > 657 my $ready;
> > > 658
> > > 659 for( $ready = 1 ; $ready ; $ready = $sel->can_read(0)) {
> > > 660 my $pdu;
> > > 661 asn_read($sock, $pdu)
> > > 662 or return LDAP_OPERATIONS_ERROR;
> > >
> > > My guess is that the open() function and the asn_read() functions are
> > > colliding on the file handler for the LDAP connection socket. Thats
> > > just by guess though.
> > >
> > > What do you think? I sure would like to see the answer because I can't
> > > get my data loaded into the directory.
> > >
> > > Brad
> > >
> > > On Tue, 2003-03-25 at 15:11, Brad Diggs wrote:
> > > > Running with Net::LDAP debug of 12 didn't yield much different than
> > > > with 4. However, I ran with perl debugger on and got the following
> > > > when I did a Ctrl-c on the hang...
> > > >
> > > > Convert::ASN1::asn_read(/usr/lib/perl5/site_perl/5.8.0/Convert/ASN1/IO.pm:198):
> > > > 198: READ_ERR:
> > > > 199: $@ = "I/O Error $! " . CORE::unpack("H*",$_[1]);
> > > >
> > > > Should I be led to believe by this that the problem may be in the ASN
> > > > code?
> > > >
> > > > Brad
>
>
>
> -------------------------------------------------------
> This SF.net email is sponsored by:
> The Definitive IT and Networking Event. Be There!
> NetWorld+Interop Las Vegas 2003 -- Register today!
> http://ads.sourceforge.net/cgi-bin/redirect.pl?keyn0001en
________________________________________________________________________
|
--+--
|
|
|
Brad Diggs
E-mail: Br...@Di...
Web Site: http://www.DiggsFamily.net
The Truth is a person named Jesus
(John 14:6). Do you know Him? He
knows you and has a wonderful plan
for your life (John 20:31).
________________________________________________________________________
|