[squeak-dev] Save as new image -> ModificationForbidden!
Thiede, Christoph
Christoph.Thiede at student.hpi.uni-potsdam.de
Tue Mar 24 17:33:29 UTC 2020
Hi Marcel,
I cannot reproduce this using a fresh Trunk image (Update 19541, VM 201912311458), because privateKeyPair is nil by default, but the following looks suspicious to me:
[cid:5ddecda2-d741-479e-a037-9bc70d4b6c2e]
No idea how your image can have this, as #loadOLPCOwnerKeys has no senders in Trunk, but maybe we should fix this defect via #copy and write an update script ...
Best,
Christoph
________________________________
Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von Taeumel, Marcel
Gesendet: Dienstag, 24. März 2020 11:43:30
An: John Pfersich via Squeak-dev
Betreff: Re: [squeak-dev] Save as new image -> ModificationForbidden!
Hi Torge.
Thanks. I know how to workaround that debugger in my image. I was asking for a general fix for Trunk.
Best,
Marcel
Am 24.03.2020 11:04:48 schrieb Torge Husfeldt <torge.husfeldt at gmx.de>:
Simple:
• create a weak reference to said bigInt
• remove last hard reference
• call gc
• verify that weak reference points to reclaimed object
;)
You will have to do that one step down the stack, though
Von meinem iPhone gesendet
Am 24.03.2020 um 09:39 schrieb Marcel Taeumel <marcel.taeumel at hpi.de>:
Hi, there.
I just wanted to save a 32-bit image (Update 19541, VM 202003021730, Windows 10) under a new filename.
Boom! ModificationForbidden!
Here is the interesting stack:
Context>>modificationForbiddenFor:at:put:
LargePositiveInteger(Object)>>basicAt:put:
SecurityManager>>flushSecurityKey:
SecurityManager>>flushSecurityKeys
SecurityManager>>shutDown
SecurityManager class>>shutDown
SecurityManager class(Behavior)>>shutDown:
[] in SmalltalkImage>>send:toClassesNamedIn:with:
OrderedCollection>>do:
SmalltalkImage>>send:toClassesNamedIn:with:
SmalltalkImage>>processShutDownList:
Well, that code tries to change a LargePositiveInteger:
SecurityManager >> flushSecurityKey: aKey
"Flush a security key"
| n |
n := aKey first.
1 to: n basicSize do:[:i| n basicAt: i put: 0].
n := aKey second.
1 to: n basicSize do:[:i| n basicAt: i put: 0].
How to fix that without breaking security measures or the underlying concept?
Best,
Marcel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200324/7d3c635d/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pastedImage.png
Type: image/png
Size: 25690 bytes
Desc: pastedImage.png
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200324/7d3c635d/attachment.png>
More information about the Squeak-dev
mailing list
|