GSoC proposal


Develop a LDAP proxy GUI

Subject ID



Kirill Kosinov


Project Title

Eclipse plugin which will expose the LDAP messages.

Project description

The main aim of this project to create a plugin for Apache Directory Studio, which will expose requests being a client and a LDAP server, store them and replay them.

Project details

Apache directory studio is the best open source RCP Application, which contains schemaeditor, ldapbrowser, ldifeditor and other components for comfortable work with LDAP server. In the project Eclipse-LDAP-Proxy i'll create another RCP plugin which will be useful tool for debugging applications which interact with LDAP servers.

Plugin perspective will contain 4 components:

i.e. if we have input message in byte form: 0x02, 0x01, 0x01, 0x60, 0x16, 0x02, 0x01, 0x03, 0x04, 0x09, 0x63, 0x6E, 0x3D, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64, (byte)0x80, 0x06, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64. Request message view will contain following information:




0x02, 0x01, 0x01






0x02, 0x01, 0x03


0x04, 0x09, 0x63, 0x6E, 0x3D, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64


(byte)0x80, 0x06, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64





0x02, 0x01, 0x01

Integer, length - 1, value -1




PDU length



0x02, 0x01, 0x03

Integer, length - 1, value -3


0x04, 0x09, 0x63, 0x6E, 0x3D, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64

OCTET STRING, length - 9

simple Auth type

(byte)0x80, 0x06, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64

length - 6

Editors and log viewer allows saving of requests and server responses. I'm familiar with RFC 2251 and ASN.1 notation for user-readable view of messages i plan to use LdapMessage and LdapDecoder classes from package.

Plugin configuration

The proxy will be between the client and server. User set up proxy incoming port, than one of saved LDAP connection will be selected to hit the server.

Main features

Development Schedule

April 20 - May 20

Studding of shared codec from package, adopting it to goals of project. Studding of RFC 2251 and connected.

May 21 - June 1

Plugin configuration tasks.

June 1 - June 14

Implementation of binary logs of request and response.

June 15 - June 20

Implementation of detailed view.

June 20 - July 6

User input requests in binary form.

July 6 - 10 August

TLV, LDAP message user input.

11 August - 17 August

Testing period for directory-proxy.


Why directory project?

During my education i participated in a project based on apache mina where we try to wrap some data from RDBMS into LDAP entities. We spend a lot of time for testing our LDAP server. Directory-proxy project can simplify tasks of testing application which use LDAP servers, or for testing LDAP servers.

About me

I am a student of Kursk State University, also i worked as a Java developer for two years. During my work i participated in two web projects (, and many desktop projects, i also fulfilled all requirements for SCJP exam, so i have approved base knowledge of Java. Now i am preparing to scbcd exam. I like Java because it is a very flexible platform and it gives an opportunity to develop application using modern technologies of programming (unit testing, soa). Java code can be well described with UML, during my work i understood, that timeline and good documentation is a half of success.

KirillKosinov/GSoC2009/directory-proxy (last edited 2009-09-20 23:36:18 by localhost)