<div dir="ltr">Hi All,<div><br></div><div>    I&#39;d like to go further.  I&#39;d like the Cryptography team to consider transitioning to one plugin that contains lots of algorithms, so that all of SSLPlugin, DESPlugin, DSAPlugin, MD5Plugin, and SHA25Plugin were collapsed into one external CryptographyPlugin.  I would modify Slang top add the concept of a compound plugin that includes code from a number of other plugin classes so that we could keep the classes separate but generate a single CryptographyPlugin.c.  The advantage here is in compiling and managing a single external plugin in the production VMs.  At first we&#39;ll have to have two versions, the old and the new, because if we adopt this idea we have to transition all the Smalltalk code to read e.g.</div><div>        &lt;primitive: &#39;primitiveDecodeState&#39; module: &#39;CryptoPlugin&#39;&gt;</div><div>instead of</div>        &lt;primitive: &#39;primitiveDecodeState&#39; module: &#39;DSAPlugin&#39;&gt;<div><br></div><div>Votes for and against?</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Dec 7, 2015 at 7:46 PM, David T. Lewis <span dir="ltr">&lt;<a href="mailto:lewis@mail.msen.com" target="_blank">lewis@mail.msen.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Proposal:<br>
<br>
Remove DSAPlugin from VMMaker (trunk and oscog both), and refer instead<br>
to the version in the Cryptography repository. This enables inclusion<br>
of three other Cryptography plugins from that repository, and also puts<br>
responsibility for ongoing maintenance of the DSAPlugin with the<br>
Cryptography team.<br>
<br>
Additional background is in Mantis:<br>
<a href="http://bugs.squeak.org/view.php?id=5228" rel="noreferrer" target="_blank">http://bugs.squeak.org/view.php?id=5228</a> &quot;0005228: Include Cryptographic Primitives in Base VM - DESPlugin&quot;<br>
<br>
Explanation:<br>
There are four plugins in the CryptoPlugins in the Cryptography repository<br>
on <a href="http://squeaksource.com" rel="noreferrer" target="_blank">squeaksource.com</a>:<br>
<br>
  DESPlugin<br>
  DSAPlugin<br>
  MD5Plugin<br>
  SHA256Plugin<br>
<br>
The DSAPlugin is also provided by package VMMaker-Plugins in the VMMaker<br>
on <a href="http://source.squeak.org" rel="noreferrer" target="_blank">source.squeak.org</a>.<br>
<br>
The oscog and trunk versions of DSAPlugin are identical in VMMaker. The<br>
CryptoPlugins version differs only in some method time stamps, and one<br>
cosmetic difference (for which the CryptographyPlugin version would be<br>
preferred). Generated code is identical for all three.<br>
<br>
All four of the Cryptography plugins compile cleanly for both 32-bit and<br>
64-bit host, with no platform source requirements.<br>
<br>
DSAPlugin is already included as an internal plugin in all unix VM<br>
distributions (interpreter/Cog/Spur), and the other three appear to<br>
pose no problems (although I have not tested except to verify clean<br>
compilation).<br>
<br>
Acceptance of this proposal means that we will do the following:<br>
<br>
1) Delete class DSAPlugin from VMMaker and VMMaker.oscog.<br>
2) For trunk/interpreter VMMaker, update the configuration map to pull in the CryptographyPlugins package from squeaksource.<br>
3) Make equivalent updates for oscog so that the Cog/Spur builds use the Cryptography version<br>
4) Make any additional updates required for Pharo VM<br>
5) Add DESPlugin, MD5Plugin, and SHA256Plugin to the various VM builds.<br>
<br>
If there are no objections to this proposal, I will proceed with step 1.<br>
<br>
I would like to get positive confirmation from Eliot before proceding,<br>
because I do not want to add unnecessary confusion to the current<br>
Cog/Spur development work.<br>
<br>
Thanks,<br>
Dave<br>
<br>
<br>
On Sat, Dec 05, 2015 at 05:43:15PM -0500, Robert Withers wrote:<br>
&gt;<br>
&gt; 10 years is long enough. :) How can I help?<br>
&gt;<br>
&gt; On 12/05/2015 05:28 PM, David T. Lewis wrote:<br>
&gt; &gt;On Fri, Dec 04, 2015 at 09:57:02PM -0500, Robert Withers wrote:<br>
&gt; &gt;&gt;I loaded the CryptographyPlugins package, from the Cryptography<br>
&gt; &gt;&gt;repository into a VMMaker image, and generated the crypto plugins<br>
&gt; &gt;&gt;externally. Although I have not measured it rigorously, there is a<br>
&gt; &gt;&gt;noticeable performance improvement with SqueakElib tests.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;Untar these Ubuntu 32-bit crypto plugins into /usr/local/lib/squeak/5.0...<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;<a href="https://www.dropbox.com/s/v502zudwsbtr243/CryptoPlugins.ubuntu32.12.4.15.tgz?dl=0" rel="noreferrer" target="_blank">https://www.dropbox.com/s/v502zudwsbtr243/CryptoPlugins.ubuntu32.12.4.15.tgz?dl=0</a><br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;Let me know any issues.<br>
&gt; &gt;&gt;<br>
&gt; &gt;&gt;Regards,<br>
&gt; &gt;&gt;Robert<br>
&gt; &gt;Yikes, it seems that we have had this issue open for nearly 10 years now:<br>
&gt; &gt;<br>
&gt; &gt;   <a href="http://bugs.squeak.org/view.php?id=5228" rel="noreferrer" target="_blank">http://bugs.squeak.org/view.php?id=5228</a> &quot;0005228: Include Cryptographic<br>
&gt; &gt;   Primitives in Base VM - DESPlugin&quot;<br>
&gt; &gt;<br>
&gt; &gt;Robert, I think you are on the vm-dev list, may I ask some follow up<br>
&gt; &gt;questions there?<br>
&gt; &gt;<br>
&gt; &gt;Dave<br>
&gt; &gt;<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div>