Need advice on problems installing Netmeeting directory kit v1.2 with OpenLDAP 2.1.22 on Slackware 9

Discussion in 'Linux Networking' started by Lew Pitcher, Sep 18, 2003.

  1. Lew Pitcher

    Lew Pitcher Guest

    I've configured, compiled and installed OpenLDAP 2.1.22 on a Slackware Linux 9.0
    system, and am in the process of installing the NetMeeting directory kit (v1.2).
    However, I've run into a problem with the resulting core.schema that causes the
    two slapd servers to fail.

    I'm following the instructions in the Linux Netmeeting HOWTO, revision v1.2 (15
    Jan 2002), specifically, section 3 "NetMeeting directory kit".

    Berkeley DB v4 has been installed from the Slackware 9.0 "extra" set of packages
    (package db4-4.1.25-i386-1.tgz).

    [email protected]:~# more /var/adm/packages/db4-4.1.25-i386-1
    PACKAGE NAME: db4-4.1.25-i386-1
    COMPRESSED PACKAGE SIZE: 1626 K
    UNCOMPRESSED PACKAGE SIZE: 7040 K
    PACKAGE LOCATION: db4-4.1.25-i386-1.tgz
    PACKAGE DESCRIPTION:
    db4: db4 (Berkeley database library version 4)
    db4:
    db4: The Berkeley Database (Berkeley DB) library provides embedded database
    db4: support for both traditional and client/server applications.
    db4:
    db4: This package should be installed if compatibility is needed with
    db4: databases created with the Berkeley DB version 4.

    Berkeley DB v4 is required by the OpenLDAP 2.1.22 install

    I preinstalled the Net::LDAP perl package from CPAN as per the Netmeeting
    directory kit installation instructions. There were no problems installing this
    package.

    OpenLDAP 2.1.22 is configured with the following options
    ./configure --enable-shell --disable-debug --enable-ldbm --without-threads

    I executed the standard configure / make / make test / make install quickstep.
    make test didn't find any errors.

    After "make install", I followed the NDK installation instructions, copying
    netmeeting.perl, netmeeting.schema, slapd.conf and slapd2.conf to the
    appropriate directories.

    Now comes the first problem:

    I attempted to patch the core.schema as per the instructions, but got errors on
    one hunk out of four:
    [email protected]:~/ndk-1.2# cd /usr/local/etc/openldap/schema/
    [email protected]:/usr/local/etc/openldap/schema# ls
    README cosine.schema.default misc.schema.default
    corba.schema inetorgperson.schema netmeeting.schema
    corba.schema.default inetorgperson.schema.default nis.schema
    core.schema java.schema nis.schema.default
    core.schema.default java.schema.default openldap.schema
    cosine.schema misc.schema openldap.schema.default
    [email protected]:/usr/local/etc/openldap/schema# cp core.schema core.schema.bak
    [email protected]:/usr/local/etc/openldap/schema# patch core.schema \
    < ~/ndk-1.2/core.schema.patch
    patching file core.schema
    Hunk #1 succeeded at 1 with fuzz 2.
    Hunk #2 succeeded at 287 with fuzz 2 (offset 160 lines).
    Hunk #3 FAILED at 310.
    Hunk #4 succeeded at 337 (offset -164 lines).
    1 out of 4 hunks FAILED -- saving rejects to file core.schema.rej

    I've hand-edited core.schema to match the required change, and that seems not to
    be an issue. That is to say, the .rej file tells me
    [email protected]:/usr/local/etc/openldap/schema# cat core.schema.rej
    ***************
    *** 302,308 ****

    attributetype ( 2.5.4.3 NAME ( 'cn' 'commonName' ) SUP name )

    - attributetype ( 2.5.4.4 NAME ( 'sn' 'surname' ) SUP name )

    attributetype ( 2.5.4.5 NAME 'serialNumber' EQUALITY caseIgnoreMatch
    SUBSTR caseIgnoreSubstringsMatch
    --- 310,316 ----

    attributetype ( 2.5.4.3 NAME ( 'cn' 'commonName' ) SUP name )

    + attributetype ( 2.5.4.4 NAME ( 'surname' 'sn' ) SUP name )

    attributetype ( 2.5.4.5 NAME 'serialNumber' EQUALITY caseIgnoreMatch
    SUBSTR caseIgnoreSubstringsMatch

    so I hand reorder the parameters of 2.5.4.4 from " 'surnamen' 'sn' " to
    " 'sn' 'surname' ", and all seems well.

    However, when I start up the two slapd servers, they complain that

    /usr/local/etc/openldap/schema/core.schema: line 290: AttributeType
    inappropriate matching rule: "caseIgnoreMatch"

    Has anyone run into this before? Any suggestions as to the proper fix?

    --
    Lew Pitcher
    IT Consultant, Enterprise Technology Solutions
    Toronto Dominion Bank Financial Group

    (Opinions expressed are my own, not my employers')
     
    Lew Pitcher, Sep 18, 2003
    #1
    1. Advertisements

  2. Lew Pitcher

    /dev/rob0 Guest

    Hi there, Lew;
    Indeed, I know you
    To be a man with Clue,
    So although it's true,
    That I hate to
    Ask this of you,
    It is what I must do:
    Go to line 292
    Hit the up arrow once, and then again too.
    Please tell us now what is seen there by you.

    Then look for those strings
    In all other things
    And share with us any hints that "grep -r" brings.

    I'm sorry I have no good advice
    And for that I apologice
    But I hope you have fun reading this once, or even twice.
     
    /dev/rob0, Sep 18, 2003
    #2
    1. Advertisements

  3. Lew Pitcher

    Lew Pitcher Guest

    [snip]

    /dev/rob0, I know you too
    Your advice I will follow for you have a clue.
    My next reply likely wont be in rhyme,
    I'm not a poet, and I haven't the time
    to give proper thought to word and phrase.
    But help fix my problem and you've earned my praise.



    --

    Lew Pitcher, IT Consultant, Application Architecture
    Enterprise Technology Solutions, TD Bank Financial Group

    (Opinions expressed here are my own, not my employer's)
     
    Lew Pitcher, Sep 19, 2003
    #3
  4. Lew Pitcher

    Lew Pitcher Guest

    [ship]

    My reply is in prose
    As you know it must be
    But rhyming is addictive
    As well you can see
    To make this easier, I passed the file through the cat(1) command to number the lines, then snipped some of the output

    [email protected]:/usr/local/etc/openldap/schema# cat -n core.schema | more
    [snip]
    285
    286 attributetype ( 2.5.4.51 NAME 'houseIdentifier'
    287 DESC 'RFC2256: house identifier'
    288 EQUALITY caseIgnoreMatch
    289 SUBSTR caseIgnoreSubstringsMatch
    290 SYNTAX 1.3.6.1.4.1.1466.115.121.1.40{32768} )
    291
    [snip]
    "grep -r houseIdentifier" gives

    core.schema:attributetype ( 2.5.4.51 NAME 'houseIdentifier'
    core.schema.bak:attributetype ( 2.5.4.51 NAME 'houseIdentifier'
    core.schema.default:attributetype ( 2.5.4.51 NAME 'houseIdentifier'
    core.schema~:attributetype ( 2.5.4.51 NAME 'houseIdentifier'


    "grep -r caseIgnoreMatch" gives

    core.schema: EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema:# EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak:# EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.bak: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default:# EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.default: EQUALITY caseIgnoreMatch
    core.schema.rej: attributetype ( 2.5.4.5 NAME 'serialNumber' EQUALITY caseIgnoreMatch
    core.schema.rej: attributetype ( 2.5.4.5 NAME 'serialNumber' EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~:# EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    core.schema~: EQUALITY caseIgnoreMatch
    cosine.schema:## EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema: EQUALITY caseIgnoreMatch
    cosine.schema.default:## EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    cosine.schema.default: EQUALITY caseIgnoreMatch
    inetorgperson.schema: EQUALITY caseIgnoreMatch
    inetorgperson.schema: EQUALITY caseIgnoreMatch
    inetorgperson.schema: EQUALITY caseIgnoreMatch
    inetorgperson.schema: EQUALITY caseIgnoreMatch
    inetorgperson.schema: EQUALITY caseIgnoreMatch
    inetorgperson.schema: EQUALITY caseIgnoreMatch
    inetorgperson.schema.default: EQUALITY caseIgnoreMatch
    inetorgperson.schema.default: EQUALITY caseIgnoreMatch
    inetorgperson.schema.default: EQUALITY caseIgnoreMatch
    inetorgperson.schema.default: EQUALITY caseIgnoreMatch
    inetorgperson.schema.default: EQUALITY caseIgnoreMatch
    inetorgperson.schema.default: EQUALITY caseIgnoreMatch
    netmeeting.schema: EQUALITY caseIgnoreMatch )
    netmeeting.schema: EQUALITY caseIgnoreMatch )
    netmeeting.schema: EQUALITY caseIgnoreMatch )
    netmeeting.schema: EQUALITY caseIgnoreMatch )
    netmeeting.schema: EQUALITY caseIgnoreMatch )
    netmeeting.schema: EQUALITY caseIgnoreMatch )


    "grep -r caseIgnoreSubstringsMatch" gives

    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema:# SUBSTR caseIgnoreSubstringsMatch
    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak:# SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.bak: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default:# SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.default: SUBSTR caseIgnoreSubstringsMatch
    core.schema.rej: SUBSTR caseIgnoreSubstringsMatch
    core.schema.rej: SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    core.schema~:# SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    core.schema~: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema:## SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default:## SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    cosine.schema.default: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema.default: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema.default: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema.default: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema.default: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema.default: SUBSTR caseIgnoreSubstringsMatch
    inetorgperson.schema.default: SUBSTR caseIgnoreSubstringsMatch

    and finally, "grep -r 1.3.6.1.4.1.1466.115.121.1.40{32768}" gives

    core.schema: SYNTAX 1.3.6.1.4.1.1466.115.121.1.40{32768} )

    --

    Lew Pitcher, IT Consultant, Application Architecture
    Enterprise Technology Solutions, TD Bank Financial Group

    (Opinions expressed here are my own, not my employer's)
     
    Lew Pitcher, Sep 19, 2003
    #4
  5. Lew Pitcher

    Tom Brogan Guest



    Lew,
    I've run into the same problem as you. I simply deleted the lines
    in the schema that the slapd server complained about. Can't claim
    that's a proper fix, but my severs are now running. The errors came
    up for both core.schema and netscape.schema, so watch the file you are
    editing (and ending paranthesis).

    After deleting all the appropriate lines in the schemas, the slave
    server, while not producing any more errors, was still not starting.
    I modified two lines in slapd2.conf to look like below:

    suffix "objectClass=RTPerson"
    rootdn "cn=root,objectClass=RTPerson"

    Now the slave server is starting, but I have run into another problem,
    so I'm not completely working yet. When I try to initialize the db I
    get the following error:

    adding new entry "objectClass=RTPerson"
    ldapadd: update failed: objectClass=RTPerson
    ldap_add: Object class violation (65)
    additional info: no structural object class provided

    Maybe my initialize script is just not tweaked right. It's getting
    late, so my brain is working much now. I hope the above gets you
    through your setup. If you get through the db initialization I'd be
    interested in hearing the fix. Good luck!

    Tom
     
    Tom Brogan, Sep 25, 2003
    #5
  6. Lew Pitcher

    Lew Pitcher Guest

    On 24 Sep 2003 22:26:41 -0700, (Tom Brogan) wrote:
    [snip]
    Thanks for the information, Tom.

    It will take a couple of days, but I'll try out your tip see if I can get even a
    minimal ILS server running. I'll let you know how it turns out


    --
    Lew Pitcher
    IT Consultant, Enterprise Technology Solutions
    Toronto Dominion Bank Financial Group

    (Opinions expressed are my own, not my employers')
     
    Lew Pitcher, Sep 25, 2003
    #6
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.