You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by Kirill Kosinov <ki...@gmail.com> on 2009/03/31 22:51:33 UTC

GSoC2009 application

Hello, i work on application to GSoC2009.

I am interested in directory-proxy proposal from apache wiki, but have a few
questions:
1) the view of ldap message log. I plan to display incoming messages in byte
form in table view with additional view in proxy perspective
for decoded form. For example, if we have a ldap message (as it in java byte
input):
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.
To write in request log  table lines (2 color groups to separate messages):
msgId 0x02, 0x01, 0x01
msgId 0x60
msgId 0x16
msgId 0x02, 0x01, 0x03
msgId 0x04, 0x09, 0x63, 0x6E, 0x3D, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64
msgId (byte)0x80, 0x06, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64.
By clicking on line of table we will see in decoded view:
messageId: 0x02, 0x01, 0x01 - Integer, length - 1, value -1.
operation: 0x60,
PDU length: 0x16,
  version: 0x02, 0x01, 0x03 - Integer, length - 1
  ldapDN: 0x04, 0x09, 0x63, 0x6E, 0x3D, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64,
OCTET STRING, length - 9, value cn=preved
  Simple Auth type: (byte)0x80,  0x06, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64.
length - 6, value=preved.
2) Is user input required? If it is required binary form is sufficient?
3) How proxy plugin shiuld be configured? We set proxy incoming port, select
saved connection and send client requests from incoming port to server, or
we try to get binary data from current connection where directory sudio is a
client and write ldap messages to log?
4) can i use classes from org.apache.directory.shared.ldap.codec? or i have
to implement own LdapMessageDecoder/Encoder?

Re: GSoC2009 application

Posted by Emmanuel Lecharny <el...@apache.org>.
Kirill Kosinov wrote:
> Hello, i work on application to GSoC2009.
>
> I am interested in directory-proxy proposal from apache wiki, but have a few
> questions:
>   
Ok, more comment inline
> 1) the view of ldap message log. I plan to display incoming messages in byte
> form in table view with additional view in proxy perspective
> for decoded form. For example, if we have a ldap message (as it in java byte
> input):
> 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.
> To write in request log  table lines (2 color groups to separate messages):
> msgId 0x02, 0x01, 0x01
> msgId 0x60
> msgId 0x16
> msgId 0x02, 0x01, 0x03
> msgId 0x04, 0x09, 0x63, 0x6E, 0x3D, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64
> msgId (byte)0x80, 0x06, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64.
> By clicking on line of table we will see in decoded view:
> messageId: 0x02, 0x01, 0x01 - Integer, length - 1, value -1.
> operation: 0x60,
> PDU length: 0x16,
>   version: 0x02, 0x01, 0x03 - Integer, length - 1
>   ldapDN: 0x04, 0x09, 0x63, 0x6E, 0x3D, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64,
> OCTET STRING, length - 9, value cn=preved
>   Simple Auth type: (byte)0x80,  0x06, 0x70, 0x72, 0x65, 0x76, 0x65, 0x64.
> length - 6, value=preved.
>   

sounds pretty good to me. Some tabulations would also help, but I guess 
that the mail server removed them :)
> 2) Is user input required? If it is required binary form is sufficient?
>   
I think that a user would be interested in three different formats :
- binary (a raw list of bytes)
- TLV
- and of course, a LDAP message
> 3) How proxy plugin shiuld be configured? We set proxy incoming port, select
> saved connection and send client requests from incoming port to server, or
> we try to get binary data from current connection where directory sudio is a
> client and write ldap messages to log?
>   
The proxy should be put between the client and the server. So you should 
configure the client to hit the proxy, and the proxy to hit the server. 
The idea is to be able to register the requests and response, in order 
to replay them without the client, for instance.
> 4) can i use classes from org.apache.directory.shared.ldap.codec? or i have
> to implement own LdapMessageDecoder/Encoder?
>   
You better use the shared codec ! It took months to write it, you won't 
have time to do it ;)


-- 
--
cordialement, regards,
Emmanuel Lécharny
www.iktek.com
directory.apache.org