Well yes, but the problem is how to get at that information for req, rep, xrep, xreq, and bus protocols. As far as I know the answer today is something like “write 5 protocols that wrap each of those” but this is unsatisfactory and it does not scale with adding other features at the same time On May 13, 2014, at 12:53 AM, Martin Sustrik <sustrik@xxxxxxxxxx> wrote: > Signed PGP part > On 13/05/14 07:35, Drew Crawford wrote: > > > Well one thing it could mean is something like “sender identifier”. > > For example, if every socket had an identifier assigned upon > > creation, every message was prepended by this identifier, and the > > identifier was stripped from the message and made available via > > getsocketopt separately. > > That's exactly what you get on the protocol layer (protocol.h) struct > nn_pipe* represents an individual peer. You get it when a message is > received, you can send a message to it. You are even notified about > added peers and removed peers. > > Martin > >