> On Apr 2, 2019, at 9:33 PM, Sean Mullan <sean.mul...@oracle.com> wrote:
> 
> On 4/1/19 11:12 PM, Weijun Wang wrote:
>> I can understand the change in Permissions, but is there any difference in 
>> PermissionsHash?
> 
> The key and value in the PermissionsHash map is always the same object. This 
> fix ensures that is respected, otherwise after deserialization you could have 
> a SocketPermission mapped to a FilePermission, for example. Would it be 
> better if I added a test for that?

Yes, you are right. I thought the old code can also enforce this relation.

Now for the test, perms.ser is binary and you haven't described how it is 
generated.

Thanks,
Max

> 
> --Sean
> 
>> --Max
>>> On Apr 2, 2019, at 1:10 AM, Sean Mullan <sean.mul...@oracle.com> wrote:
>>> 
>>> It is currently possible to change the mappings in a serialized 
>>> java.security.Permissions object such that they no longer map correctly, 
>>> and Permissions.readObject won't detect this.
>>> 
>>> This change makes sure that for a deserialized Permissions object, the 
>>> permissions are mapped correctly to the class that they belong to. It does 
>>> this by calling add() again for each permission in the deserialized 
>>> Permissions object. The same technique was applied to a serialized 
>>> PermissionsHash object which is used to store Permissions that don't 
>>> implement their own PermissionCollection.
>>> 
>>> bug: https://bugs.openjdk.java.net/browse/JDK-8020637
>>> webrev: http://cr.openjdk.java.net/~mullan/webrevs/8020637/webrev.00/
>>> 
>>> Thanks,
>>> Sean
>>> 

Reply via email to