<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p>Hi Marcel,</p>
<p><br>
</p>
<p>I cannot reproduce this using a fresh Trunk image <span>(Update 19541, VM </span><span>201912311458), because privateKeyPair is nil by default, but the following looks suspicious to me:</span></p>
<p><span><br>
</span></p>
<p><span><img size="25690" contenttype="image/png" id="img253232" style="max-width: 99.9%; user-select: none;" contextid="img6086" tabindex="0" src="cid:5ddecda2-d741-479e-a037-9bc70d4b6c2e"><br>
</span></p>
<p><span><br>
</span></p>
<p><span>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 ...</span></p>
<p><span><br>
</span></p>
<p><span>Best,</span></p>
<p><span>Christoph</span></p>
<div id="Signature">
<div id="divtagdefaultwrapper" dir="ltr" style="font-size: 12pt; color: rgb(0, 0, 0); font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;">
<div name="divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:; margin:0">
<div><font size="2" color="#808080"></font></div>
</div>
</div>
</div>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>Von:</b> Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org> im Auftrag von Taeumel, Marcel<br>
<b>Gesendet:</b> Dienstag, 24. März 2020 11:43:30<br>
<b>An:</b> John Pfersich via Squeak-dev<br>
<b>Betreff:</b> Re: [squeak-dev] Save as new image -> ModificationForbidden!</font>
<div> </div>
</div>
<div>
<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
Hi Torge.
<div><br>
</div>
<div>Thanks. I know how to workaround that debugger in my image. I was asking for a general fix for Trunk.</div>
<div><br>
</div>
<div>Best,</div>
<div>Marcel</div>
<div class="mb_sig"></div>
<blockquote class="history_container" type="cite" style="border-left-style:solid;border-width:1px; margin-top:20px; margin-left:0px;padding-left:10px;">
<p style="color: #AAAAAA; margin-top: 10px;">Am 24.03.2020 11:04:48 schrieb Torge Husfeldt <torge.husfeldt@gmx.de>:</p>
<div style="font-family:Arial,Helvetica,sans-serif">Simple: 
<div>• create a weak reference to said bigInt</div>
<div>• remove last hard reference</div>
<div>• call gc</div>
<div>• verify that weak reference points to reclaimed object </div>
<div>;)</div>
<div>You will have to do that one step down the stack, though <br>
<br>
<div dir="ltr">Von meinem iPhone gesendet</div>
<div dir="ltr"><br>
<blockquote type="cite">Am 24.03.2020 um 09:39 schrieb Marcel Taeumel <marcel.taeumel@hpi.de>:<br>
<br>
</blockquote>
</div>
<blockquote type="cite">
<div dir="ltr">
<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
Hi, there.
<div class="mb_sig"></div>
<div><br>
</div>
<div>I just wanted to save a 32-bit image (Update 19541, VM 202003021730, Windows 10) under a new filename.</div>
<div><br>
</div>
<div>Boom! ModificationForbidden!</div>
<div><br>
</div>
<div>Here is the interesting stack:</div>
<div><br>
</div>
<div>
<div>Context>>modificationForbiddenFor:at:put:</div>
<div>LargePositiveInteger(Object)>>basicAt:put:</div>
<div><b>SecurityManager>>flushSecurityKey:</b></div>
<div>SecurityManager>>flushSecurityKeys</div>
<div>SecurityManager>>shutDown</div>
<div>SecurityManager class>>shutDown</div>
<div>SecurityManager class(Behavior)>>shutDown:</div>
<div>[] in SmalltalkImage>>send:toClassesNamedIn:with:</div>
<div>OrderedCollection>>do:</div>
<div>SmalltalkImage>>send:toClassesNamedIn:with:</div>
<div>SmalltalkImage>>processShutDownList:</div>
</div>
<div><br>
</div>
<div>Well, that code tries to change a LargePositiveInteger:</div>
<div><br>
</div>
<div>
<div>SecurityManager >> flushSecurityKey: aKey</div>
<div><span style="white-space:pre"></span>"Flush a security key"</div>
<div><span style="white-space:pre"></span>| n |</div>
<div><span style="white-space:pre"></span>n := aKey first.</div>
<div><span style="white-space:pre"></span>1 to: n basicSize do:[:i| n basicAt: i put: 0].</div>
<div><span style="white-space:pre"></span>n := aKey second.</div>
<div><span style="white-space:pre"></span>1 to: n basicSize do:[:i| n basicAt: i put: 0].</div>
</div>
<div><br>
</div>
<div>How to fix that without breaking security measures or the underlying concept?</div>
<div><br>
</div>
<div>Best,</div>
<div>Marcel</div>
</div>
<span></span><br>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
</div>
</body>
</html>