OpenLDAP Architecture - PowerPoint PPT Presentation

About This Presentation
Title:

OpenLDAP Architecture

Description:

Both share a lot of code in common. Frequently require the same bug fixes ... 20% of functions in slapd take Backend, Connection, Operation arguments ... – PowerPoint PPT presentation

Number of Views:227
Avg rating:3.0/5.0
Slides: 8
Provided by: howar3
Category:

less

Transcript and Presenter's Notes

Title: OpenLDAP Architecture


1
OpenLDAP Architecture
  • Refactoring ABIs
  • Howard Chu March 21, 2003
  • hyc_at_symas.com

2
Objectives Why Change?
  • Reduce Redundant Functions
  • Streamline Calling Sequences
  • Enhance Callback Functionality

3
Reduce Redundancy
  • bi_op_attribute and bi_op_group
  • Both share a lot of code in common
  • Frequently require the same bug fixes
  • backend_group is just backend_attribute with one
    additional check
  • Replace with bi_op_entry, get more functionality
    at the same time

4
Streamline Calling Sequences
  • 20 of functions in slapd take Backend,
    Connection, Operation arguments
  • 58 of 305 declarations in proto-slap.h
  • All of the backend operations take ltdittogt
  • They are needed together so frequently, they are
    essentially one parameter
  • Consolidating into Operation ensures they are all
    always available when needed

5
Enhance Callbacks
  • Callbacks dont have direct access to request
    parameters, must re-parse ber
  • Again, multiple related arguments for results
  • Conn, Op, err, matched, text, Controls
  • Callback nesting eats up stack for arguments
  • Consolidating parameters into Operation provides
    more functionality while improving execution
    efficiency

6
Other Considerations
  • Backend layering
  • Reimplement back-meta as an engine that can be
    overlaid over any other backend suffixalias
    done right, among other things
  • Overlay back-ldap over any other backend handle
    chaining instead of returning references to client

7
Conclusions
  • Improve maintainability
  • Eliminate redundant code, only need to fix bugs
    once
  • Improve efficiency and scalability
  • Enables additional functionality with minimal
    overhead
Write a Comment
User Comments (0)
About PowerShow.com