|
@@ -434,20 +434,20 @@ void storage_received(MsgBuffer &storage_buf)
|
|
|
uint32_t *dests = storage_state.dest.data();
|
|
|
uint32_t stg_size = storage_state.stg_buf.bufsize;
|
|
|
const uint8_t *buf = storage_state.stg_buf.buf;
|
|
|
- uint32_t m_priv_in = g_teems_config.m_priv_in;
|
|
|
+ uint32_t m_in = g_teems_config.private_routing ? g_teems_config.m_priv_in : g_teems_config.m_pub_in;
|
|
|
|
|
|
uint32_t uid = *(uint32_t*)(buf);
|
|
|
uid &= uid_mask;
|
|
|
// num_msgs is not a private value
|
|
|
if (num_msgs > 0) {
|
|
|
- dests[0] = oselect_uint32_t(uid * m_priv_in, 0xffffffff,
|
|
|
+ dests[0] = oselect_uint32_t(uid * m_in, 0xffffffff,
|
|
|
uid == uid_mask);
|
|
|
}
|
|
|
uint32_t prev_uid = uid;
|
|
|
for (uint32_t i=1; i<num_msgs; ++i) {
|
|
|
uid = *(uint32_t*)(buf + i*msg_size);
|
|
|
uid &= uid_mask;
|
|
|
- uint32_t next = oselect_uint32_t(uid * m_priv_in, dests[i-1]+1,
|
|
|
+ uint32_t next = oselect_uint32_t(uid * m_in, dests[i-1]+1,
|
|
|
uid == prev_uid);
|
|
|
dests[i] = oselect_uint32_t(next, 0xffffffff, uid == uid_mask);
|
|
|
prev_uid = uid;
|