On Nov 11, 2005, at 2:32 PM, jro / codegrinder.com wrote:

>
> I've been working with xmlrpc4r and webrick recently, and things  
> have gone
> swimmingly for the most part.  I'm able to to communicate back and  
> forth over
> ssl, authenticating with client and server ssl certificates signed  
> by our CA.
> But, what I need next is some way for the server to know which  
> client is
> attached to it.
>
> I was hoping that I could get down to the cert from within the
> XMLRPC::WEBrickServlet handlers, but I'm not having much luck?  Any  
> info about
> how to dig down the request from within the handler would be  
> great.  If anyone
> has any suggestions on how better to do this, I'd be all ears.    
> But I do need
> the server to be deciding who's connected to it, not the client  
> telling the
> server who it is.
Here's how I get at the request and response objects in xmlrpc4r.

---
class MyServlet < XMLRPC::WEBrickServlet
   def service(request, response)
     # do whatever I want with the request
     super
     # do whatever I want with the response
   end
end
---

The call to #super will invoke whatever handlers you've added to your  
servlet.  Its not quite what you're looking for, but hopefully its a  
start.  Maybe you could put the relevant certificate information in  
an instance variable from #service and then revisit it in your handler?

HTH,
--
~akk
http://therealadam.com