Lines Matching full:rpl
231 for (i = 0; i < ARRAY_SIZE(bt_mesh.rpl); i++) { in rpl_find()
232 if (bt_mesh.rpl[i].src == src) { in rpl_find()
233 return &bt_mesh.rpl[i]; in rpl_find()
244 for (i = 0; i < ARRAY_SIZE(bt_mesh.rpl); i++) { in rpl_alloc()
245 if (!bt_mesh.rpl[i].src) { in rpl_alloc()
246 bt_mesh.rpl[i].src = src; in rpl_alloc()
247 return &bt_mesh.rpl[i]; in rpl_alloc()
257 struct rpl_val rpl; in rpl_set() local
275 BT_WARN("Unable to find RPL entry for 0x%04x", src); in rpl_set()
284 BT_ERR("Unable to allocate RPL entry for 0x%04x", src); in rpl_set()
289 len = sizeof(rpl); in rpl_set()
290 err = settings_bytes_from_str(val, &rpl, &len); in rpl_set()
296 if (len != sizeof(rpl)) { in rpl_set()
297 BT_ERR("Unexpected value length (%d != %zu)", len, sizeof(rpl)); in rpl_set()
301 entry->seq = rpl.seq; in rpl_set()
302 entry->old_iv = rpl.old_iv; in rpl_set()
304 BT_DBG("RPL entry for 0x%04x: Seq 0x%06x old_iv %u", entry->src, in rpl_set()
689 { "RPL", rpl_set },
954 struct rpl_val rpl; in store_rpl() local
961 rpl.seq = entry->seq; in store_rpl()
962 rpl.old_iv = entry->old_iv; in store_rpl()
964 str = settings_str_from_bytes(&rpl, sizeof(rpl), buf, sizeof(buf)); in store_rpl()
966 BT_ERR("Unable to encode RPL as value"); in store_rpl()
970 snprintk(path, sizeof(path), "bt_mesh/RPL/%x", entry->src); in store_rpl()
972 BT_DBG("Saving RPL %s as value %s", path, str); in store_rpl()
982 for (i = 0; i < ARRAY_SIZE(bt_mesh.rpl); i++) { in clear_rpl()
983 struct bt_mesh_rpl *rpl = &bt_mesh.rpl[i]; in clear_rpl() local
986 if (!rpl->src) { in clear_rpl()
990 snprintk(path, sizeof(path), "bt_mesh/RPL/%x", rpl->src); in clear_rpl()
993 memset(rpl, 0, sizeof(*rpl)); in clear_rpl()
1003 for (i = 0; i < ARRAY_SIZE(bt_mesh.rpl); i++) { in store_pending_rpl()
1004 struct bt_mesh_rpl *rpl = &bt_mesh.rpl[i]; in store_pending_rpl() local
1006 if (rpl->store) { in store_pending_rpl()
1007 rpl->store = false; in store_pending_rpl()
1008 store_rpl(rpl); in store_pending_rpl()