The random data used to decode pointers coming from the old protocol was
taken from the client instead of using the global_random data, which is
the correct one.
Fixes: https://tracker.ceph.com/issues/72800
Signed-off-by: Xavi Hernandez <xhernandez@gmail.com>
(cherry picked from commit
674bd44001d6feb919a331d4a4586cc0d97847f8)
if ((client->neg.v1.enabled & PROXY_FEAT_EMBEDDED_PERMS) == 0) {
*embedded = false;
- return ptr_check(&client->random, embed->ptr, (void **)pperms);
+ return ptr_check(&global_random, embed->ptr, (void **)pperms);
}
perms = ceph_userperm_new(embed->uid, embed->gid, count,