(no subject)

Sandro Poppi <[email protected]> Sat, 14 Dec 2002 12:35:26 +0100 (MET)
Newsgroups gmane.network.beep.roadrunner.general
Message-ID <[email protected]>
Hi again,

I tried to write such a profile (I called it FORCE ;) but I found that
using server_init is not sufficient because it is called after a start
request of a client is received for the profile. But if a client does
not support the force profile it will never be called and thus -
assuming the server accepts other profiles - the client can start a
session using server supported profiles.

What I'm now thinking of is to extend rr_init to check for required
profiles.

What do you think of such a solution? What are the pros and cons from
your point of view? Or is there another solution for this problem I
didn't think of yet?

Any other comments? (Of course I would publish the patches on this list
if I do it this way so Codefactory may incorporate them into the rr
distribution ;)

TIA

Regards,
Sandro
> 
> El vie, 06-12-2002 a las 18:47, Sandro Poppi escribió:
> > Hi,
> Hi.
> >
> > How do I force a server to only accept connections from clients which
> > support 2 or more given profiles like idxp AND tls? When I tell a server
> > to support idxp and tls using rr_profile_registry_add_profile() twice it
> > accepts clients which only support one of those profiles (logical OR).
> >
> > I did not find a function that helps me to define that specific
> > behaviour. Is there a chance to do this? And if yes, how ;)
> >
> I'm going to try to answer you assuming you want your server to accept
> inbound connection from clients that support idxp and tls at the same
> time (or other profiles).
> 
> I think you need to implement your own profile and override the
> server_init method of the RRChannel class, which is called when a start
> request is received and before the start response is sent.
> 
> [You will find a good example to do this and other important things in
> the example profile which resides in the codefactory cvs.]
> 
> Then, your server_init function will use rr_connection_get_peer_profiles
> to figure out what beep profiles does the client-side support, so if
> your server don't like the client-side supported profiles you can close
> the connection.
> 
> I didn't implement the solution that I'm telling you so don't expect so
> much, but it sounds good. ;)
> 
> > TIA,
> > Sandro
> I hope it helps.
> Regard
> --
> Francis Brosnan Blázquez <[email protected]>
> Advanced Software Production Line, S.L.

-- 
"Linux is like a wigwam: no windows, no gates ... apache inside!"

http://spoppi.home.pages.de/
http://www.lug-burghausen.org/

-- 
+++ GMX - Mail, Messaging & more  http://www.gmx.net +++
NEU: Mit GMX ins Internet. Rund um die Uhr für 1 ct/ Min. surfen!