You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(200) |
Jun
(129) |
Jul
(184) |
Aug
(204) |
Sep
(106) |
Oct
(79) |
Nov
(72) |
Dec
(54) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(83) |
Feb
(123) |
Mar
(84) |
Apr
(184) |
May
(106) |
Jun
(111) |
Jul
(104) |
Aug
(91) |
Sep
(59) |
Oct
(99) |
Nov
(100) |
Dec
(37) |
2002 |
Jan
(148) |
Feb
(88) |
Mar
(85) |
Apr
(151) |
May
(80) |
Jun
(110) |
Jul
(85) |
Aug
(43) |
Sep
(64) |
Oct
(89) |
Nov
(59) |
Dec
(42) |
2003 |
Jan
(129) |
Feb
(104) |
Mar
(162) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Murugan K <kmu...@no...> - 2002-06-04 06:23:00
|
Hi I am very new to LDAP development. I want to write some perl modules for eDirectory extensions. Can you direct me to suitable documentation on web to proceed further related extended operations. Thanks in advance. Regards K.Murugan |
From: <ma...@mj...> - 2002-06-04 02:24:37
|
This would be a lot simpler if you just stuck a static IP up front via a hardware based balancer :). Anyway, there's an old message at: http://www.rosat.mpe-garching.mpg.de/mailing-lists/perl-ldap/2001- 07/msg00103.html that's probably closer to what you're looking for. But you might also be able to do something with a callback to die more gracefully and then restart the search. or buid a local cache and if the URL is not in cache or has timed out of your cache, then do the search. That way you don't have to keep an LDAP connection open all of the time. And yet another way would be to do a persistent search control (if Novell supports it) Mark On 3 Jun 02, at 20:29, Mike Richichi wrote: > I'm using perl-ldap for an Apache rewrite handler to provide mappings > to Novell NetWare home directories that are mounted as shares on our > Linux box. This means I'm binding once when Apache is started and the > script runs continually, with Apache passing things to the script to > rewrite. > > We're transitioning to Novell Cluster Services, and it's easy to point > 'ldap' to the cluster IP address, which will always be available on a > cluster node. However, if the IP address moves, my script will no > longer work, as the LDAP connection no longer isn't known on the new > server (the TCP connection tables do not move over when the cluster > fails over). > > Thus I need to have a mechanism for timing out a bad connection and > rebinding in the event of a server failure. > > This would also be useful in general for sites doing round-robin DNS > of their ldap hostname, and resiliency in general. > > I feel that binding asynchronously and polling for results is the way > to go, but I've not seen an example of how to poll asynchronously in > perl-ldap. Has anyone done it? Alternately, can anyone suggest a > better way to detect a stale connection and attempt to rebind? > > Thanks for your help. > > --Mike > > > _______________________________________________________________ > > Don't miss the 2002 Sprint PCS Application Developer's Conference > August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm > > > Mark Wilcox ma...@mj... Got LDAP? |
From: Mike R. <mri...@dr...> - 2002-06-04 00:29:52
|
I'm using perl-ldap for an Apache rewrite handler to provide mappings to Novell NetWare home directories that are mounted as shares on our Linux box. This means I'm binding once when Apache is started and the script runs continually, with Apache passing things to the script to rewrite. We're transitioning to Novell Cluster Services, and it's easy to point 'ldap' to the cluster IP address, which will always be available on a cluster node. However, if the IP address moves, my script will no longer work, as the LDAP connection no longer isn't known on the new server (the TCP connection tables do not move over when the cluster fails over). Thus I need to have a mechanism for timing out a bad connection and rebinding in the event of a server failure. This would also be useful in general for sites doing round-robin DNS of their ldap hostname, and resiliency in general. I feel that binding asynchronously and polling for results is the way to go, but I've not seen an example of how to poll asynchronously in perl-ldap. Has anyone done it? Alternately, can anyone suggest a better way to detect a stale connection and attempt to rebind? Thanks for your help. --Mike |
From: Graham B. <gb...@po...> - 2002-06-03 15:52:52
|
A new pre-release of 0.26 is avaliable at http://monty.mutatus.co.uk/~gbarr/perl-ldap-0.25_03.tar.gz This should have all reported problems with _02 fixed. If this looks good I will do a 0.26 shortly. I am mainly interested in people trying the ::Schema and ::DSML modules as they have had serious changes since 0.25 Graham. |
From: Graham B. <gb...@po...> - 2002-06-03 15:29:16
|
On Mon, Jun 03, 2002 at 10:10:11AM -0400, SS...@wi... wrote: > Hi, > I am using Net::LDAP connection to do ldapsearching, but I got unexpected > out put (please see high lighted portion). > Please help. What is unexpected about the output ? What do you expect to see ? Graham. > Attached are the script and searching output. > > ---------------------------------------------------- > #!/opt/perl/bin/perl > > use Net::LDAP qw(:all); > use Net::LDAP::Util qw(ldap_error_desc); > use Net::LDAP::LDIF; > > $ldap = Net::LDAP->new('jws-portald', port => '390') || die "ERROR: > $@"; > $ldif = Net::LDAP::LDIF->new( 'changelogentries.ldif.test', "w" ); > $bind = $ldap->bind( > dn => 'cn=ExternalExportAgent,cn=Subscriber > Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory', > password => 'welcome') || die "Can not bind"; > > #### Searching for change entries in the change log container which are > greate than LACN #### > $mesg = $ldap->search( > base => "cn=changeLog", > scope => "one", > filter => " > (&(objectclass=changeLogEntry)(changeNumber>=256))", > attrs => [qw(targetdn changetype changes)] > ); > > foreach $entry ($mesg->entries) { > $ldif->write_entry($entry); > } > > ----------------------------------------------------------------- > > dn: Changenumber=256, cn=changelog > targetdn: cn=ADDRESS_LIST_0, cn=DESCRIPTION_0, > cn=WMDDB_edcc,cn=OracleContext > changetype: Add > changes:: > b2JqZWN0Y2xhc3M6dG9wCm9iamVjdGNsYXNzOm9yY2xOZXRBZGRyZXNzTGlzdApjbjpB > RERSRVNTX0xJU1RfMApvcmNsdmVyc2lvbjp2MC4wCm9yY2xuZXRhZGRybGlzdDowMDA6Y249QURU > kVTU18wCm9yY2xuZXRzaGFyZWQ6Tk8Kb3JjbG5ldGxvYWRiYWxhbmNlOiBOTwpvcmNsZ3VpZDowD > I2ODgwNzY1MzYwMzM0Mzk2NDA1ODE2ODcyNDk1CmNyZWF0b3JzbmFtZTpjbj1vcmNsYWRtaW4KbW9kaWZpZXJzbmFtZTpjbj1vcmNsYWRtaW4KY3JlYXRldGltZXN0YW1wOjIwMDIwNTI5MTc1MTEwegptb2RpZnl0aW1lc3RhbXA6MjAwMjA1MjkxNzUxMTB6CgA > > > > dn: Changenumber=257, cn=changelog > targetdn: cn=ADDRESS_0, cn=ADDRESS_LIST_0, cn=DESCRIPTION_0, > cn=WMDDB_edcc,cn= > OracleContext > changetype: Add > changes:: > b2JqZWN0Y2xhc3M6dG9wCm9iamVjdGNsYXNzOm9yY2xOZXRBZGRyZXNzCmNuOkFERFJF > > U1NfMApvcmNsdmVyc2lvbjp2MC4wCm9yY2xuZXRwcm90b2NvbDpUQ1AKb3JjbG5ldGFkZHJlc3Nzd > > HJpbmc6KEFERFJFU1M9KFBST1RPQ09MPVRDUCkoSE9TVD1qd3MtZWRjYykoUE9SVD0xNTMwKS3 > JjbG5ldHNoYXJlZDpOTwpvcmNsZ3VpZDowMDI2ODgwNzY1MzYwMzM1MjExNDA1OTE2ODcyNDk1CmyZWF0b3JzbmFtZTpjbj1vcmNsYWRtaW4KbW9kaWZpZXJzbmFtZTpjbj1vcmNsYWRtaW4KY3JlYXRldGltZXN0YW1wOjIwMDIwNTI5MTc1MTExegptb2RpZnl0aW1lc3RhbXA6MjAwMjA1MjkxNzUxMTF6CgA > > > > ------------------------------------------------------------ > > > > _______________________________________________________________ > > Don't miss the 2002 Sprint PCS Application Developer's Conference > August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm > |
From: <SS...@wi...> - 2002-06-03 14:11:35
|
Hi, I am using Net::LDAP connection to do ldapsearching, but I got unexpected out put (please see high lighted portion). Please help. Thanks a lot! -- Sue Su Attached are the script and searching output. ---------------------------------------------------- #!/opt/perl/bin/perl use Net::LDAP qw(:all); use Net::LDAP::Util qw(ldap_error_desc); use Net::LDAP::LDIF; $ldap = Net::LDAP->new('jws-portald', port => '390') || die "ERROR: $@"; $ldif = Net::LDAP::LDIF->new( 'changelogentries.ldif.test', "w" ); $bind = $ldap->bind( dn => 'cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory', password => 'welcome') || die "Can not bind"; #### Searching for change entries in the change log container which are greate than LACN #### $mesg = $ldap->search( base => "cn=changeLog", scope => "one", filter => " (&(objectclass=changeLogEntry)(changeNumber>=256))", attrs => [qw(targetdn changetype changes)] ); foreach $entry ($mesg->entries) { $ldif->write_entry($entry); } ----------------------------------------------------------------- dn: Changenumber=256, cn=changelog targetdn: cn=ADDRESS_LIST_0, cn=DESCRIPTION_0, cn=WMDDB_edcc,cn=OracleContext changetype: Add changes:: b2JqZWN0Y2xhc3M6dG9wCm9iamVjdGNsYXNzOm9yY2xOZXRBZGRyZXNzTGlzdApjbjpB RERSRVNTX0xJU1RfMApvcmNsdmVyc2lvbjp2MC4wCm9yY2xuZXRhZGRybGlzdDowMDA6Y249QURU kVTU18wCm9yY2xuZXRzaGFyZWQ6Tk8Kb3JjbG5ldGxvYWRiYWxhbmNlOiBOTwpvcmNsZ3VpZDowD I2ODgwNzY1MzYwMzM0Mzk2NDA1ODE2ODcyNDk1CmNyZWF0b3JzbmFtZTpjbj1vcmNsYWRtaW4KbW9kaWZpZXJzbmFtZTpjbj1vcmNsYWRtaW4KY3JlYXRldGltZXN0YW1wOjIwMDIwNTI5MTc1MTEwegptb2RpZnl0aW1lc3RhbXA6MjAwMjA1MjkxNzUxMTB6CgA dn: Changenumber=257, cn=changelog targetdn: cn=ADDRESS_0, cn=ADDRESS_LIST_0, cn=DESCRIPTION_0, cn=WMDDB_edcc,cn= OracleContext changetype: Add changes:: b2JqZWN0Y2xhc3M6dG9wCm9iamVjdGNsYXNzOm9yY2xOZXRBZGRyZXNzCmNuOkFERFJF U1NfMApvcmNsdmVyc2lvbjp2MC4wCm9yY2xuZXRwcm90b2NvbDpUQ1AKb3JjbG5ldGFkZHJlc3Nzd HJpbmc6KEFERFJFU1M9KFBST1RPQ09MPVRDUCkoSE9TVD1qd3MtZWRjYykoUE9SVD0xNTMwKS3 JjbG5ldHNoYXJlZDpOTwpvcmNsZ3VpZDowMDI2ODgwNzY1MzYwMzM1MjExNDA1OTE2ODcyNDk1CmyZWF0b3JzbmFtZTpjbj1vcmNsYWRtaW4KbW9kaWZpZXJzbmFtZTpjbj1vcmNsYWRtaW4KY3JlYXRldGltZXN0YW1wOjIwMDIwNTI5MTc1MTExegptb2RpZnl0aW1lc3RhbXA6MjAwMjA1MjkxNzUxMTF6CgA ------------------------------------------------------------ |
From: <rg...@di...> - 2002-05-31 19:26:36
|
Ed, Our directory is X.500 based and the change you mentioned won't work at all because the schema has the sn defined as 'case ignored'. Thus 'Bill Mcmann' = 'bILL mCMANN' = 'Bill Mcmann' In our case we usually get a 'value already exists' message but then that could just be our vendors implementations. Iplanet may implement it's schema checking of values such that it doesn't generate and error, but it doesn't change the value because it looks the same. I could see where the same would be true for a 'telephone' syntax type also. Spaces or other characters could be ignored in determining that the value had changed. I don't know if it's really a bug though. Regards, Rusty On May 31, 10:53am, Friedman, Ed wrote: > Subject: RE: replacing attribute case change only and... > Thanks for the info, and we are using iPlanet. > > -Ed > > Ed Friedman <ed...@am...> > Infrastructure Tools - Software Development Engineer > Phone desk 206/266-3830 (x63830) cell 206/953-0227 > Pager 206/993-5253 <pag...@am...> > > -----Original Message----- > From: Robbie Allen [mailto:ra...@ci...] > Sent: Friday, May 31, 2002 10:51 AM > To: Friedman, Ed; 'per...@li...' > Subject: RE: replacing attribute case change only and... > > I've seen that problem with iPlanet. It has been reported as a bug, but > haven't heard of a bug fix yet. > > Robbie Allen > > > -----Original Message----- > > From: Friedman, Ed [mailto:ed...@am...] > > Sent: Friday, May 31, 2002 1:38 PM > > To: per...@li... > > Subject: replacing attribute case change only and... > > > > > > > > I'm not 100% sure these are bugs. I think it is a problem > > with Net::LDAP > > because I was able to modify the attributes using non-Net::LDAP code. > > > > > > When changing only the case of one of the letters, e.g. > > > > $ldap->modify( $dn, changes => [ replace => [ sn => 'Bill > > McMann' ] ]); > > > > where, the current setting of sn is 'Bill Mcmann' > > > > The attribute does not get changed, yet the server returns success. > > > > > > Also, when adding a space to a field that contains only numbers and > > special characters (/-+), e.g. > > > > $ldap->modify( $dn, changes => [ replace => [ homephone => '+81 11 818 > > 5652' ] ]); > > > > where the current setting of homephone is +81118185652 > > > > The attribute does not get changed, yet the server returns success. > > > > > > Has anyone seen this behavior? > > > > Thanks, Ed > > > > Ed Friedman <ed...@am...> > > Infrastructure Tools - Software Development Engineer > > Phone desk 206/266-3830 (x63830) cell 206/953-0227 > > Pager 206/993-5253 <pag...@am...> > > > > > > _______________________________________________________________ > > > > Don't miss the 2002 Sprint PCS Application Developer's Conference > > August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm > > > > _______________________________________________________________ > > Don't miss the 2002 Sprint PCS Application Developer's Conference > August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm > >-- End of excerpt from Friedman, Ed -- Russell Biggs (Rusty) Internet: r-...@ti... 6500 Chase Oaks Blvd, M/S 8412 Texas Instruments Plano Tx 75023 Phone: (972) 575-0826 Fax: (972) 575-4853 Home Page: http://dirtest3.itg.ti.com/~rgb Calendar: http://dirtest3.itg.ti.com/cgi-bin/synchronize.cgi?name=Russell+Biggs "I sense much NT in you... NT leads to bluescreen... Bluescreen leads to downtime... Downtime leads to suffering... NT is the path to the darkside..." ...Unknown UNIX Jedi |
From: Friedman, E. <ed...@am...> - 2002-05-31 17:53:45
|
Thanks for the info, and we are using iPlanet. -Ed Ed Friedman <ed...@am...> Infrastructure Tools - Software Development Engineer Phone desk 206/266-3830 (x63830) cell 206/953-0227 Pager 206/993-5253 <pag...@am...> -----Original Message----- From: Robbie Allen [mailto:ra...@ci...]=20 Sent: Friday, May 31, 2002 10:51 AM To: Friedman, Ed; 'per...@li...' Subject: RE: replacing attribute case change only and... I've seen that problem with iPlanet. It has been reported as a bug, but haven't heard of a bug fix yet. Robbie Allen > -----Original Message----- > From: Friedman, Ed [mailto:ed...@am...]=20 > Sent: Friday, May 31, 2002 1:38 PM > To: per...@li... > Subject: replacing attribute case change only and... >=20 >=20 >=20 > I'm not 100% sure these are bugs. I think it is a problem=20 > with Net::LDAP > because I was able to modify the attributes using non-Net::LDAP code. >=20 >=20 > When changing only the case of one of the letters, e.g. >=20 > $ldap->modify( $dn, changes =3D> [ replace =3D> [ sn =3D> 'Bill=20 > McMann' ] ]); >=20 > where, the current setting of sn is 'Bill Mcmann' >=20 > The attribute does not get changed, yet the server returns success. >=20 >=20 > Also, when adding a space to a field that contains only numbers and > special characters (/-+), e.g. >=20 > $ldap->modify( $dn, changes =3D> [ replace =3D> [ homephone =3D> '+81 = 11 818 > 5652' ] ]); >=20 > where the current setting of homephone is +81118185652 >=20 > The attribute does not get changed, yet the server returns success. >=20 >=20 > Has anyone seen this behavior? >=20 > Thanks, Ed >=20 > Ed Friedman <ed...@am...> > Infrastructure Tools - Software Development Engineer > Phone desk 206/266-3830 (x63830) cell 206/953-0227 > Pager 206/993-5253 <pag...@am...> >=20 >=20 > _______________________________________________________________ >=20 > Don't miss the 2002 Sprint PCS Application Developer's Conference > August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm >=20 |
From: Robbie A. <ra...@ci...> - 2002-05-31 17:51:21
|
I've seen that problem with iPlanet. It has been reported as a bug, but haven't heard of a bug fix yet. Robbie Allen > -----Original Message----- > From: Friedman, Ed [mailto:ed...@am...] > Sent: Friday, May 31, 2002 1:38 PM > To: per...@li... > Subject: replacing attribute case change only and... > > > > I'm not 100% sure these are bugs. I think it is a problem > with Net::LDAP > because I was able to modify the attributes using non-Net::LDAP code. > > > When changing only the case of one of the letters, e.g. > > $ldap->modify( $dn, changes => [ replace => [ sn => 'Bill > McMann' ] ]); > > where, the current setting of sn is 'Bill Mcmann' > > The attribute does not get changed, yet the server returns success. > > > Also, when adding a space to a field that contains only numbers and > special characters (/-+), e.g. > > $ldap->modify( $dn, changes => [ replace => [ homephone => '+81 11 818 > 5652' ] ]); > > where the current setting of homephone is +81118185652 > > The attribute does not get changed, yet the server returns success. > > > Has anyone seen this behavior? > > Thanks, Ed > > Ed Friedman <ed...@am...> > Infrastructure Tools - Software Development Engineer > Phone desk 206/266-3830 (x63830) cell 206/953-0227 > Pager 206/993-5253 <pag...@am...> > > > _______________________________________________________________ > > Don't miss the 2002 Sprint PCS Application Developer's Conference > August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm > |
From: eric G. <eri...@wa...> - 2002-05-31 17:44:39
|
hans , your mail seem to broken (han...@bi...) ? Could you send me an another address mail ? thanks eric german |
From: Friedman, E. <ed...@am...> - 2002-05-31 17:38:11
|
I'm not 100% sure these are bugs. I think it is a problem with Net::LDAP because I was able to modify the attributes using non-Net::LDAP code. When changing only the case of one of the letters, e.g. $ldap->modify( $dn, changes =3D> [ replace =3D> [ sn =3D> 'Bill McMann' = ] ]); where, the current setting of sn is 'Bill Mcmann' The attribute does not get changed, yet the server returns success. Also, when adding a space to a field that contains only numbers and special characters (/-+), e.g. $ldap->modify( $dn, changes =3D> [ replace =3D> [ homephone =3D> '+81 11 = 818 5652' ] ]); where the current setting of homephone is +81118185652 The attribute does not get changed, yet the server returns success. Has anyone seen this behavior? Thanks, Ed Ed Friedman <ed...@am...> Infrastructure Tools - Software Development Engineer Phone desk 206/266-3830 (x63830) cell 206/953-0227 Pager 206/993-5253 <pag...@am...> |
From: Chris R. <chr...@me...> - 2002-05-29 15:43:54
|
CZa...@wi... wrote: > > How can I fit this: my $p = <<EOS my $x = decode_base64($p); > print "Decoded to $x\n"; into this: > foreach $entry ($mesg->entries) { > $ldif->write_entry( $entry ); > } It is here that the output is being written to > a file. I don't really understand your question. $ldif->write_entry is doing the correct thing because one of the values can't be written into the LDIF output verbatim. Perhaps you should explain exactly what you want the output to be, and then we can comment more sensibly on how (if it is at all possible) to achieve that. Cheers, Chris |
From: <CZa...@wi...> - 2002-05-29 14:04:46
|
How can I fit this: my $p = <<EOS my $x = decode_base64($p); print "Decoded to $x\n"; into this: foreach $entry ($mesg->entries) { $ldif->write_entry( $entry ); } It is here that the output is being written to a file. Chris Ridd <chris.ridd@messagingd To: CZa...@wi... irect.com> cc: per...@li... Subject: Re: Net::LDAP 05/29/2002 04:02 AM CZa...@wi... wrote: > > I cannot use Base64, the data is written via Net::LDAP::LDIF...... See > Below. (Since you are using Net::LDAP::LDIF, you have the MIME::Base64 module installed, so you *are* in fact able to use it.) The LDIF module is REQUIRED to encode values in Base64 under certain conditions. One of those is if the value contains "unsafe" characters, eg non-ASCII or non-UTF-8 characters (I forget which, but in this case it doesn't matter.) The following snippet will decode your value: use MIME::Base64; my $p = <<EOS UmVwbGFjZTpvcmNsbGFzdGFwcGxpZWRjaGFuZ2VudW1iZXJeMTJeMjAwMjA1MjMxNzIw MjZ6Xmp3cy1wb3J0YWxkCm9yY2xsYXN0YXBwbGllZGNoYW5nZW51bWJlcjoyMjAKAA== EOS ; my $x = decode_base64($p); print "Decoded to $x\n"; Your value contains embedded newlines, which are NOT SAFE. Using the debugger reveals this: DB<1> x $x 0 "Replace:orcllastappliedchangenumber^12^20020523172026z^jws-portald\cJorcll astappliedchangenumber:220\cJ\c@" You haven't included all the output from your script, so it isn't possible to say if the problem's in your script or in your server. You may want to read the documentation that came with your server describing the syntax of the 'orcllastappliedchangenumber' attribute. Cheers, Chris |
From: Chris R. <chr...@me...> - 2002-05-29 08:05:43
|
CZa...@wi... wrote: > > I cannot use Base64, the data is written via Net::LDAP::LDIF...... See > Below. (Since you are using Net::LDAP::LDIF, you have the MIME::Base64 module installed, so you *are* in fact able to use it.) The LDIF module is REQUIRED to encode values in Base64 under certain conditions. One of those is if the value contains "unsafe" characters, eg non-ASCII or non-UTF-8 characters (I forget which, but in this case it doesn't matter.) The following snippet will decode your value: use MIME::Base64; my $p = <<EOS UmVwbGFjZTpvcmNsbGFzdGFwcGxpZWRjaGFuZ2VudW1iZXJeMTJeMjAwMjA1MjMxNzIw MjZ6Xmp3cy1wb3J0YWxkCm9yY2xsYXN0YXBwbGllZGNoYW5nZW51bWJlcjoyMjAKAA== EOS ; my $x = decode_base64($p); print "Decoded to $x\n"; Your value contains embedded newlines, which are NOT SAFE. Using the debugger reveals this: DB<1> x $x 0 "Replace:orcllastappliedchangenumber^12^20020523172026z^jws-portald\cJorcll astappliedchangenumber:220\cJ\c@" You haven't included all the output from your script, so it isn't possible to say if the problem's in your script or in your server. You may want to read the documentation that came with your server describing the syntax of the 'orcllastappliedchangenumber' attribute. Cheers, Chris |
From: <CZa...@wi...> - 2002-05-28 20:19:34
|
I cannot use Base64, the data is written via Net::LDAP::LDIF...... See Below. ### Searching for change entries in the change log container which are > greate than LACN #### > ####(This searching is having problem)#### > $mesg = $ldap->search( > base => "cn=changeLog", > scope => "one", > filter => " > (&(objectclass=changeLogEntry)(changeNumber>=$CN))", > attrs => [qw(targetdn changetype changes)] > ); > > foreach $entry ($mesg->entries) { > $ldif->write_entry( $entry ); > } Clif Harden <clif@dirtest3.i To: CZa...@wi... tg.ti.com> cc: per...@li... Subject: Re: Net::LDAP 05/28/2002 03:46 PM Please respond to c-harden The data looks to be base64 encoded. You can use the perl base64 module to decode the string. Clif > > Hello, I am trying to get the values for the change attibute, but I get is > a lot of letters that are meaning less. The portion of the code where the > search takes place is highlighted. and the result which is written to a > ldif file is below. This search works from the commad line using the > ldapseach command. > > Here is the output: .... Please help! > > dn: Changenumber=221, cn=changelog > targetdn: cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog > Subscriber > ,cn=Oracle Internet Directory > changetype: Modify > changes:: > UmVwbGFjZTpvcmNsbGFzdGFwcGxpZWRjaGFuZ2VudW1iZXJeMTJeMjAwMjA1MjMxNzIw > MjZ6Xmp3cy1wb3J0YWxkCm9yY2xsYXN0YXBwbGllZGNoYW5nZW51bWJlcjoyMjAKAA== > > ----- Forwarded by Carlton Zachary/IT/NewYork605/Wiley on 05/28/2002 02:56 > PM ----- > > Sue Su > To: Carlton Zachary/IT/NewYork605/Wiley@Wiley > 05/28/2002 cc: > 02:41 PM Subject: Net::LDAP > > > > > > > ----------------------------------------------------- > > #!/opt/perl/bin/perl > > use Net::LDAP qw(:all); > use Net::LDAP::Util qw(ldap_error_desc); > use Net::LDAP::LDIF; > > $ldap = Net::LDAP->new('jws-server.com', port => '390') || die > "ERROR: $@"; > $ldif = Net::LDAP::LDIF->new( 'changelogentries.ldif', "w" ); > $bind = $ldap->bind('cn=ExternalExportAgent,cn=Subscriber > Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory', pas > sword=> 'welcome') || die "Can not bind"; > > #### Searching for last applied change number in the directory #### > $mesg = $ldap->search( > base => "cn=ExternalExportAgent,cn=Subscriber > Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory", > scope => "base", > filter => "(objectclass=*)" > ); > > foreach $entry ($mesg->entries) { > $LACN = $entry->get_value > ('orcllastappliedchangenumber'); > print "LACN is $LACN\n"; > $CN = $LACN + 1; > print "CN is $CN\n"; > } > > #### Searching for change entries in the change log container which are > greate than LACN #### > ####(This searching is having problem)#### > $mesg = $ldap->search( > base => "cn=changeLog", > scope => "one", > filter => " > (&(objectclass=changeLogEntry)(changeNumber>=$CN))", > attrs => [qw(targetdn changetype changes)] > ); > > foreach $entry ($mesg->entries) { > $ldif->write_entry( $entry ); > } > > #### Searching for last change number in the directory #### > $mesg = $ldap->search( > base => "", > scope => "base", > filter => "(objectclass=*)", > attrs => ["lastchangenumber"] > ); > > foreach $entry ($mesg->entries) { > $LCN = $entry->get_value > ('lastchangenumber'); > print "LCN is $LCN\n"; > } > > #### Modifying the last applied change number with last change number #### > $r = $ldap->modify( > "cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog > Subscriber,cn=Oracle Internet Directory", > replace => {orclLastAppliedChangeNumber => $LCN} > ); > > ---------------------------------------------------- > > dn: Changenumber=221, cn=changelog > targetdn: cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog > Subscriber > ,cn=Oracle Internet Directory > changetype: Modify > changes:: > UmVwbGFjZTpvcmNsbGFzdGFwcGxpZWRjaGFuZ2VudW1iZXJeMTJeMjAwMjA1MjMxNzIw > MjZ6Xmp3cy1wb3J0YWxkCm9yY2xsYXN0YXBwbGllZGNoYW5nZW51bWJlcjoyMjAKAA== > > > > _______________________________________________________________ > > Don't miss the 2002 Sprint PCS Application Developer's Conference > August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm > > |
From: Clif H. <cl...@di...> - 2002-05-28 19:47:23
|
The data looks to be base64 encoded. You can use the perl base64 module to decode the string. Clif > > Hello, I am trying to get the values for the change attibute, but I get is > a lot of letters that are meaning less. The portion of the code where the > search takes place is highlighted. and the result which is written to a > ldif file is below. This search works from the commad line using the > ldapseach command. > > Here is the output: .... Please help! > > dn: Changenumber=221, cn=changelog > targetdn: cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog > Subscriber > ,cn=Oracle Internet Directory > changetype: Modify > changes:: > UmVwbGFjZTpvcmNsbGFzdGFwcGxpZWRjaGFuZ2VudW1iZXJeMTJeMjAwMjA1MjMxNzIw > MjZ6Xmp3cy1wb3J0YWxkCm9yY2xsYXN0YXBwbGllZGNoYW5nZW51bWJlcjoyMjAKAA== > > ----- Forwarded by Carlton Zachary/IT/NewYork605/Wiley on 05/28/2002 02:56 > PM ----- > > Sue Su > To: Carlton Zachary/IT/NewYork605/Wiley@Wiley > 05/28/2002 cc: > 02:41 PM Subject: Net::LDAP > > > > > > > ----------------------------------------------------- > > #!/opt/perl/bin/perl > > use Net::LDAP qw(:all); > use Net::LDAP::Util qw(ldap_error_desc); > use Net::LDAP::LDIF; > > $ldap = Net::LDAP->new('jws-server.com', port => '390') || die > "ERROR: $@"; > $ldif = Net::LDAP::LDIF->new( 'changelogentries.ldif', "w" ); > $bind = $ldap->bind('cn=ExternalExportAgent,cn=Subscriber > Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory', pas > sword=> 'welcome') || die "Can not bind"; > > #### Searching for last applied change number in the directory #### > $mesg = $ldap->search( > base => "cn=ExternalExportAgent,cn=Subscriber > Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory", > scope => "base", > filter => "(objectclass=*)" > ); > > foreach $entry ($mesg->entries) { > $LACN = $entry->get_value > ('orcllastappliedchangenumber'); > print "LACN is $LACN\n"; > $CN = $LACN + 1; > print "CN is $CN\n"; > } > > #### Searching for change entries in the change log container which are > greate than LACN #### > ####(This searching is having problem)#### > $mesg = $ldap->search( > base => "cn=changeLog", > scope => "one", > filter => " > (&(objectclass=changeLogEntry)(changeNumber>=$CN))", > attrs => [qw(targetdn changetype changes)] > ); > > foreach $entry ($mesg->entries) { > $ldif->write_entry( $entry ); > } > > #### Searching for last change number in the directory #### > $mesg = $ldap->search( > base => "", > scope => "base", > filter => "(objectclass=*)", > attrs => ["lastchangenumber"] > ); > > foreach $entry ($mesg->entries) { > $LCN = $entry->get_value > ('lastchangenumber'); > print "LCN is $LCN\n"; > } > > #### Modifying the last applied change number with last change number #### > $r = $ldap->modify( > "cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog > Subscriber,cn=Oracle Internet Directory", > replace => {orclLastAppliedChangeNumber => $LCN} > ); > > ---------------------------------------------------- > > dn: Changenumber=221, cn=changelog > targetdn: cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog > Subscriber > ,cn=Oracle Internet Directory > changetype: Modify > changes:: > UmVwbGFjZTpvcmNsbGFzdGFwcGxpZWRjaGFuZ2VudW1iZXJeMTJeMjAwMjA1MjMxNzIw > MjZ6Xmp3cy1wb3J0YWxkCm9yY2xsYXN0YXBwbGllZGNoYW5nZW51bWJlcjoyMjAKAA== > > > > _______________________________________________________________ > > Don't miss the 2002 Sprint PCS Application Developer's Conference > August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm > > |
From: <CZa...@wi...> - 2002-05-28 19:09:19
|
Hello, I am trying to get the values for the change attibute, but I get is a lot of letters that are meaning less. The portion of the code where the search takes place is highlighted. and the result which is written to a ldif file is below. This search works from the commad line using the ldapseach command. Here is the output: .... Please help! dn: Changenumber=221, cn=changelog targetdn: cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber ,cn=Oracle Internet Directory changetype: Modify changes:: UmVwbGFjZTpvcmNsbGFzdGFwcGxpZWRjaGFuZ2VudW1iZXJeMTJeMjAwMjA1MjMxNzIw MjZ6Xmp3cy1wb3J0YWxkCm9yY2xsYXN0YXBwbGllZGNoYW5nZW51bWJlcjoyMjAKAA== ----- Forwarded by Carlton Zachary/IT/NewYork605/Wiley on 05/28/2002 02:56 PM ----- Sue Su To: Carlton Zachary/IT/NewYork605/Wiley@Wiley 05/28/2002 cc: 02:41 PM Subject: Net::LDAP ----------------------------------------------------- #!/opt/perl/bin/perl use Net::LDAP qw(:all); use Net::LDAP::Util qw(ldap_error_desc); use Net::LDAP::LDIF; $ldap = Net::LDAP->new('jws-server.com', port => '390') || die "ERROR: $@"; $ldif = Net::LDAP::LDIF->new( 'changelogentries.ldif', "w" ); $bind = $ldap->bind('cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory', pas sword=> 'welcome') || die "Can not bind"; #### Searching for last applied change number in the directory #### $mesg = $ldap->search( base => "cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory", scope => "base", filter => "(objectclass=*)" ); foreach $entry ($mesg->entries) { $LACN = $entry->get_value ('orcllastappliedchangenumber'); print "LACN is $LACN\n"; $CN = $LACN + 1; print "CN is $CN\n"; } #### Searching for change entries in the change log container which are greate than LACN #### ####(This searching is having problem)#### $mesg = $ldap->search( base => "cn=changeLog", scope => "one", filter => " (&(objectclass=changeLogEntry)(changeNumber>=$CN))", attrs => [qw(targetdn changetype changes)] ); foreach $entry ($mesg->entries) { $ldif->write_entry( $entry ); } #### Searching for last change number in the directory #### $mesg = $ldap->search( base => "", scope => "base", filter => "(objectclass=*)", attrs => ["lastchangenumber"] ); foreach $entry ($mesg->entries) { $LCN = $entry->get_value ('lastchangenumber'); print "LCN is $LCN\n"; } #### Modifying the last applied change number with last change number #### $r = $ldap->modify( "cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory", replace => {orclLastAppliedChangeNumber => $LCN} ); ---------------------------------------------------- dn: Changenumber=221, cn=changelog targetdn: cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber ,cn=Oracle Internet Directory changetype: Modify changes:: UmVwbGFjZTpvcmNsbGFzdGFwcGxpZWRjaGFuZ2VudW1iZXJeMTJeMjAwMjA1MjMxNzIw MjZ6Xmp3cy1wb3J0YWxkCm9yY2xsYXN0YXBwbGllZGNoYW5nZW51bWJlcjoyMjAKAA== |
From: Graham B. <gb...@po...> - 2002-05-28 19:07:33
|
----- Forwarded message from CZa...@wi... ----- Date: Tue, 28 May 2002 15:06:02 -0400 To: gb...@po... From: CZa...@wi... Subject: Net::LDAP Hello, I am trying to get the values for the change attibute, but I get is a lot of letters that are meaning less. The portion of the code where the search takes place is highlighted. and the result which is written to a ldif file is below. This search works from the commad line using the ldapseach command. Here is the output: .... Please help! dn: Changenumber=221, cn=changelog targetdn: cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber ,cn=Oracle Internet Directory changetype: Modify changes:: UmVwbGFjZTpvcmNsbGFzdGFwcGxpZWRjaGFuZ2VudW1iZXJeMTJeMjAwMjA1MjMxNzIw MjZ6Xmp3cy1wb3J0YWxkCm9yY2xsYXN0YXBwbGllZGNoYW5nZW51bWJlcjoyMjAKAA== ----- Forwarded by Carlton Zachary/IT/NewYork605/Wiley on 05/28/2002 02:56 PM ----- Sue Su To: Carlton Zachary/IT/NewYork605/Wiley@Wiley 05/28/2002 cc: 02:41 PM Subject: Net::LDAP ----------------------------------------------------- #!/opt/perl/bin/perl use Net::LDAP qw(:all); use Net::LDAP::Util qw(ldap_error_desc); use Net::LDAP::LDIF; $ldap = Net::LDAP->new('jws-server.com', port => '390') || die "ERROR: $@"; $ldif = Net::LDAP::LDIF->new( 'changelogentries.ldif', "w" ); $bind = $ldap->bind('cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory', pas sword=> 'welcome') || die "Can not bind"; #### Searching for last applied change number in the directory #### $mesg = $ldap->search( base => "cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory", scope => "base", filter => "(objectclass=*)" ); foreach $entry ($mesg->entries) { $LACN = $entry->get_value ('orcllastappliedchangenumber'); print "LACN is $LACN\n"; $CN = $LACN + 1; print "CN is $CN\n"; } #### Searching for change entries in the change log container which are greate than LACN #### ####(This searching is having problem)#### $mesg = $ldap->search( base => "cn=changeLog", scope => "one", filter => " (&(objectclass=changeLogEntry)(changeNumber>=$CN))", attrs => [qw(targetdn changetype changes)] ); foreach $entry ($mesg->entries) { $ldif->write_entry( $entry ); } #### Searching for last change number in the directory #### $mesg = $ldap->search( base => "", scope => "base", filter => "(objectclass=*)", attrs => ["lastchangenumber"] ); foreach $entry ($mesg->entries) { $LCN = $entry->get_value ('lastchangenumber'); print "LCN is $LCN\n"; } #### Modifying the last applied change number with last change number #### $r = $ldap->modify( "cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber,cn=Oracle Internet Directory", replace => {orclLastAppliedChangeNumber => $LCN} ); ---------------------------------------------------- dn: Changenumber=221, cn=changelog targetdn: cn=ExternalExportAgent,cn=Subscriber Profile,cn=ChangeLog Subscriber ,cn=Oracle Internet Directory changetype: Modify changes:: UmVwbGFjZTpvcmNsbGFzdGFwcGxpZWRjaGFuZ2VudW1iZXJeMTJeMjAwMjA1MjMxNzIw MjZ6Xmp3cy1wb3J0YWxkCm9yY2xsYXN0YXBwbGllZGNoYW5nZW51bWJlcjoyMjAKAA== ----- End forwarded message ----- |
From: Chris R. <chr...@me...> - 2002-05-28 11:26:23
|
Graham Barr <gb...@po...> wrote: >> I've since sent some changes to the authors of the IO::Socket::SSL and >> Net::SSLeay modules that allow for this, so there'll be another minor >> change coming to expose that functionality in LDAPS/start_tls. I could >> probably commit those changes now, except they'd have zero effect until >> revised IO::Socket::SSL and Net:: SSLeay libraries came out.. Any >> preferences, Graham? > > Sounds good to me. Done. Cheers, Chris |
From: Graham B. <gb...@po...> - 2002-05-28 09:30:24
|
On Tue, May 28, 2002 at 10:24:16AM +0100, Chris Ridd wrote: > On 28/5/02 9:20 am, Graham Barr <gb...@po...> wrote: > > > On Fri, May 10, 2002 at 02:32:07PM +0100, Chris Ridd wrote: > >>> To use latest version of IO::Socket::SSL is possible to change > >>> following line of start_tls function od Net::LDAP package > >>> from this: > >>> > >>> (IO::Socket::SSL::socketToSSL($sock) and tie *{$sock}, 'IO::Socket::SSL', > >>> $sock) > >>> > >>> to this > >>> > >>> IO::Socket::SSL::socketToSSL($sock) > >> > >> If I recall (Graham?) the 'and tie ...' was to avoid a bug in > >> IO::Socket::SSL::socketToSSL. I guess that bug workaround could go, but > >> then there would need to be a test in the Makefile.PL for a specific (ie >= > >> 0.81) version of IO::Socket::SSL. > > > > Yes. > > I committed a fix for that (removed the 'and tie...' and tweaked the > Makefile.PL to check for the IO::Socket version) last week, so hopefully it > made it into the interim 0.251 release. Julian Onions also noticed a > regression in the start_tls method, and I've committed his fix for that. It was not in 0.251, That release contained ONLY the changes for Authen::SASL > Since we're talking about SSL... > > Someone here (I can't remember who) was asking if we could use encrypted > private key files in client SSL authentication - we couldn't because there > was no support for it in IO::Socket::SSL and Net::SSLeay. > > I've since sent some changes to the authors of the IO::Socket::SSL and > Net::SSLeay modules that allow for this, so there'll be another minor change > coming to expose that functionality in LDAPS/start_tls. I could probably > commit those changes now, except they'd have zero effect until revised > IO::Socket::SSL and Net:: SSLeay libraries came out.. Any preferences, > Graham? Sounds good to me. Graham. |
From: Chris R. <chr...@me...> - 2002-05-28 09:24:42
|
On 28/5/02 9:20 am, Graham Barr <gb...@po...> wrote: > On Fri, May 10, 2002 at 02:32:07PM +0100, Chris Ridd wrote: >>> To use latest version of IO::Socket::SSL is possible to change >>> following line of start_tls function od Net::LDAP package >>> from this: >>> >>> (IO::Socket::SSL::socketToSSL($sock) and tie *{$sock}, 'IO::Socket::SSL', >>> $sock) >>> >>> to this >>> >>> IO::Socket::SSL::socketToSSL($sock) >> >> If I recall (Graham?) the 'and tie ...' was to avoid a bug in >> IO::Socket::SSL::socketToSSL. I guess that bug workaround could go, but >> then there would need to be a test in the Makefile.PL for a specific (ie >= >> 0.81) version of IO::Socket::SSL. > > Yes. I committed a fix for that (removed the 'and tie...' and tweaked the Makefile.PL to check for the IO::Socket version) last week, so hopefully it made it into the interim 0.251 release. Julian Onions also noticed a regression in the start_tls method, and I've committed his fix for that. Since we're talking about SSL... Someone here (I can't remember who) was asking if we could use encrypted private key files in client SSL authentication - we couldn't because there was no support for it in IO::Socket::SSL and Net::SSLeay. I've since sent some changes to the authors of the IO::Socket::SSL and Net::SSLeay modules that allow for this, so there'll be another minor change coming to expose that functionality in LDAPS/start_tls. I could probably commit those changes now, except they'd have zero effect until revised IO::Socket::SSL and Net:: SSLeay libraries came out.. Any preferences, Graham? Cheers, Chris |
From: Graham B. <gb...@po...> - 2002-05-28 08:38:20
|
I have uploaded to CPAN an intrim release 0.251 The only difference between this release and 0.25 is that Authen::SASL has been removed and you now need to install the Authen::SASL distribution from CPAN. The new Authen::SASL dist supports backend plugins, and there is a Authen::SASL::Cyrus distribution on CPAN for those who want to use the C library. Graham. |
From: Graham B. <gb...@po...> - 2002-05-28 08:21:48
|
On Fri, May 10, 2002 at 02:32:07PM +0100, Chris Ridd wrote: > > To use latest version of IO::Socket::SSL is possible to change > > following line of start_tls function od Net::LDAP package > > from this: > > > > (IO::Socket::SSL::socketToSSL($sock) and tie *{$sock}, 'IO::Socket::SSL', > > $sock) > > > > to this > > > > IO::Socket::SSL::socketToSSL($sock) > > If I recall (Graham?) the 'and tie ...' was to avoid a bug in > IO::Socket::SSL::socketToSSL. I guess that bug workaround could go, but > then there would need to be a test in the Makefile.PL for a specific (ie >= > 0.81) version of IO::Socket::SSL. Yes. Graham. |
From: Hans K. <han...@bi...> - 2002-05-27 06:42:12
|
Ls, The Net::Ldap::Daemon package uses one process to serve multiple clients. This can be a trouble when one of the clients performs a request that takes a long time to finish. The attached Net::Ldap::Daemon::ForkOnAccept package forks a new process for every session. I borrowed the idea from SOAP::Lite. Enjoy, Hans |
From: Clif H. <ch...@po...> - 2002-05-27 04:17:44
|
Graham, Since I do not know how you are handling the 0.25_02 beta files, I have attached a Schema.pm diff file that corrects a problem when using oids in the attribute, objectclass, ..., methods. Also did you get my message about the DESTROY problem that I found in DSML.pm. Regards, Clif Harden ch...@po... |