Hi @ll !


I would like to know if it is possible to perform a "peer key exchange" prior to the pairing operation, in order to for example, have the peers exchange some extra information about them and be able for example to look-up different PINs for every different service / connection / device.

I have written a little program using rfcomm sockets (although I am planing to change them to BNEP ones) which carries out the data exchange without problems as long as the security manager is set to 'none'.

But I would like to be able to replace the normal pairing procedure with this "key exchange between bluetooth peers" procedure:

* it is then possible to trigger (maybe via 'pin_helper' ?) a data exchange between the two bluetooth sockets (using raw L2CAP sockets, for example) while the devices are _not paired_ and while the security level is set at least to authentication ?

* I tried to change the rfcomm "working" sockets program to L2CAP sockets, but then I donīt know which  Protocol Service MUX (psm) value I might have to set for this sockets to have them connect successfully (the one from an already existing service, one of the reserved values?!).

I tried different odd values greater than 1 for the psm (using htobs(psm)) and I get the following error message:

Cannot connect to socket: Connection refused (111)

I would really appreciate it if you could help me out or give me some advise on these topics.


Best Regards,


Jordi