Browse Source

fixing expansion factor in public-routing case

Aaron Johnson 1 year ago
parent
commit
60ce7daa5e
1 changed files with 3 additions and 3 deletions
  1. 3 3
      Enclave/storage.cpp

+ 3 - 3
Enclave/storage.cpp

@@ -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;