ltb-project/openldap-deb

refactor slapd-cli for new major version of OpenLDAP

davidcoutadeur opened this issue · 4 comments

The new major version of OpenLDAP is an opportunity to refactor slapd-cli:

  • clean the code
  • check the synchronization status using cn=monitor?
  • other improvements taking profit of new tools, like slapmodify?

All these improvements (and other) are now prepared for release 2.8 of slapd-cli: https://github.com/ltb-project/slapd-cli/milestone/7

For information, syncrepl status is in OpenLDAP since 2.5.4: https://bugs.openldap.org/show_bug.cgi?id=9339

For the record, on a slapd consumer, we get this type of infos:

ldapsearch -Y EXTERNAL -H 'ldapi://%2Fvar%2Frun%2Fslapd%2Fldapi' -b "cn=monitor" * + -LLL > /tmp/monitor.ldif

dn: cn=Consumer 000,cn=Database 1,cn=Databases,cn=Monitor
objectClass: olmSyncReplInstance
structuralObjectClass: olmSyncReplInstance
cn: Consumer 000
creatorsName: cn=monitor
modifiersName: cn=monitor
createTimestamp: 20210907162023Z
modifyTimestamp: 20210907162023Z
olmSRProviderURIList: ldap://localhost:3389
olmSRConnection: IP=127.0.0.1:49612
olmSRSyncPhase: Persist
olmSRNextConnect: 00000101000000Z
olmSRLastConnect: 20210907162023Z
olmSRLastContact: 20210907162024Z
olmSRLastCookieRcvd: rid=000,csn=20210907161949.876119Z#000000#000#000000
olmSRLastCookieSent: rid=000,sid=000
entryDN: cn=Consumer 000,cn=Database 1,cn=Databases,cn=Monitor
subschemaSubentry: cn=Subschema
hasSubordinates: FALSE

See ltb-project/slapd-cli#11

For now, I propose to keep the current checksync function as is (doing ldapsearch on master directories)