I am using the c bindings (v.1.1.0) of the iota streams lib for my c++ app and there is something i didn't yet understand.
I wanted to create an author for sending and a subscriber for reading messages on a channel. After the author sent an announcement message, I use the announcement link and the announcement id in the subscriber in order to receive the announcement. With the help of preshared keys, which I use to "provision" both, author and subscriber, the author sends a signed packet. And it works so far.
However, in order to receive this packet on the subscriber side, the c-api asks for the address of message that has been produced by the author.
sub_receive_signed_packet(payloads, subscriber, address)
Why is that? Shouldn't the subscriber be able to read messages from a channel without providing the packetlink? The example that is provided in the repository that uses preshared keys for a subscriber called "subC" does use the packetlink.
As far as I understood, using preshared keys and the initial announcement of the author should be enough for a subscriber to read any signed packets from a channel without the need of further data exchange for the packetlinks via another channel.
I really appreciate your help.