[omniORB] Using omniInterceptors

William Noon noon@snow.nrcc.cornell.edu
Mon, 07 Jan 2002 12:13:59 -0500


I have a system where I need to identify the clients that are making
calls on a number of servers and decided that I should pass a simple
token from client -> server (and occasionally back).

Given that the security service API isn't implemented and portable
interceptors are not yet available, my quickest route would be to add
a custom service context and use omniInterceptors to hook it in.

I have added clientSendRequest and serverReceiveRequest interceptors to
do that but now need to find a place to stuff the value on a per-call 
basis so that my server code can get to it.  What I am looking for is 
PICurrent slots type functionality.

In the serverReceiveRequest info there is the giop_s which has a slot
for the callDescriptor.  Just what I need.  Except it is initialized
in the server skeleton code, well after the interceptor code returns.
The callHandle could pass it to the callDescriptor, but it too is created
too late.

Any suggestions?

I would also like to pass the token back to the client but serverSendReply
and clientReceiveReply are not implemented.  Any idea on where they would
be called and what info to make available to them?

Thanks --Bill Noon
Northeast Regional Climate Center
Cornell University