[squeak-dev] [ERROR}[5.3] building ByteArrays from HEX strings are now failing

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Wed Mar 4 22:18:22 UTC 2020


Never mind,
DESPlugin was not simulator friendly...
See small changes in CryptographyPlugins-nice.17 to make it so.

http://www.squeaksource.com/Cryptography/CryptographyPlugins-nice.17.diff

Le mer. 4 mars 2020 à 22:23, Nicolas Cellier <
nicolas.cellier.aka.nice at gmail.com> a écrit :

> Hi Robert,
>
> If I save a Squeak5.3-19431-64bit.image with the Cryptography package
> preloaded,
> and put a simple test in a file test-crypto.st, for example:
>
> CryptoDESTest suite run.!
>
> Then the Simulator invocation should be something like (with my own path):
>
> | sis |
> sis := StackInterpreterSimulator newWithOptions: #(ObjectMemory
> Spur64BitMemoryManager).
> sis desiredNumStackPages: 8.
> sis assertValidExecutionPointersAtEachStep: false.
> sis openOn:
> '/Users/nicolas/Smalltalk/Squeak/trunk/Squeak5.3-19431-64bit.image'.
> sis systemAttributes
> at: 2 put: '/Users/nicolas/Smalltalk/Squeak/trunk/test-crypto.st'.
> sis openAsMorph; run
>
>
> Le mer. 4 mars 2020 à 20:26, Robert via Squeak-dev <
> squeak-dev at lists.squeakfoundation.org> a écrit :
>
>> Hi Eliot,
>>
>> Do I want too? Or am I obligated? Very well then, I am trying the
>> StackVMSimulator. Should I debug down to a primitive call to a
>> cryptoplugin? Or what should I do? I'll need to prep an image.
>>
>> I will need to get another Pi.
>>
>> kindly,
>> robert
>> On 3/4/20 11:43 AM, Eliot Miranda wrote:
>>
>> Hi Rob,
>>
>> On Mar 4, 2020, at 7:57 AM, Robert via Squeak-dev
>> <squeak-dev at lists.squeakfoundation.org>
>> <squeak-dev at lists.squeakfoundation.org> wrote:
>>
>> 
>>
>> Are there instructions for building Bochs, Nicolas?
>>
>>
>> If you want to work on the cryptography plugins then as Nicolas suggests
>> you can use the StackInterpreterSimulator.  You don’t need to use the JIT
>> to work on a plugin, and the StackInterpreterSimulator is probably twice as
>> fast as the JIT simulator (CogVMSimulator) since it isn’t simulating
>> machine code, only interpreting bytecode.
>>
>> tyk, r
>> On 3/4/20 10:50 AM, Robert wrote:
>>
>> Hi yo hehr, Nicolas,
>>
>> I tried the first block, in the simulation window, but it was missing
>> BochsIA64 or some. I then ran the third block, a StackVM as you suggested.
>> I ran it against my Cryptography repair image, rabbit, and very slooowly
>> reselected the tests and ran them, in proogrress...
>>
>> We sure would be appreciating etwas help, as if there was a little angel
>> out there who offers plugin repair and SHA512 code/plugin. Praying for an
>> angel!
>>
>> tyk, r
>> On 3/4/20 8:50 AM, Nicolas Cellier wrote:
>>
>> Hi Robert,
>> normally, most of VM/plugins development should take place with the
>> VM-simulation from within the SpurVMMaker.image  (unless the plugin
>> extensively call C functions from external libraries).
>> You will find a Worksapce with some simulation examples.
>> Then you might detect the error from within Smalltalk with debuggers
>> etc...
>> I recommend simulating a Stack VM for a beginning (or you'll need to
>> compile the Bochs plugin, which is currently difficult on linux...).
>>
>> Le mer. 4 mars 2020 à 14:40, Robert via Squeak-dev <
>> squeak-dev at lists.squeakfoundation.org> a écrit :
>>
>>> Hi Levente,
>>>
>>> Yes, I see what you are saying. Without the Crypto plugins, all the
>>> Crypto tests run green.
>>>
>>> With the Crypto plugins, things get messed up. ByteArray
>>> class>>#fromHexString: still completes, but the KeyHolder>>#key SEG-FAULTS
>>> the vm (called from *CryptoRC2Test>>#testARC2*). Additionally, the
>>> following two tests fail: *CryptoDESTest>>#testDESCBC* and
>>> *CryptoDESTest>>#testTripleDESCBC.*
>>>
>>> The SEG-FAULT comes from this code:
>>>
>>> KeyHolder new
>>>     data: KeyHolderData new;
>>>     encryptKey: #(0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0) asByteArray;
>>>     key
>>>
>>> tyk, r
>>> On 3/4/20 8:10 AM, Levente Uzonyi wrote:
>>>
>>> Hi Robert,
>>>
>>> I just ran all test cases of Cryptography-v5.3-rww.118.mcz in a fresh 5.3
>>> image on 64-bit linux using the stock VM (no Cryptography plugins), and
>>> all the tests are green.
>>> ByteArray class >> #fromHexString: and methods sent by it were last
>>> modified in 2010, and they do not accept non-hexadecimal digits in the
>>> input string.
>>>
>>> Levente
>>>
>>>
>>> On Wed, 4 Mar 2020, Robert via Squeak-dev wrote:
>>>
>>>
>>> In squeak 5.3, building ByteArrays from HEX strings are now failing,
>>> after years of passing within the Cryptography tests.
>>>
>>> The first doIt works, while the other two are now failing in the
>>> #readHexFrom: method...
>>> PASSING
>>> ByteArray fromHexString: '06a9214036b8a15b512e03d534120006'
>>>
>>> FAILING
>>> ByteArray fromHexString: '16rc286696d887c9aa0611bbb3e2025a45a'
>>> ByteArray fromHexString: '00000000 00000000'
>>>
>>> This is causing multiple test failures in the Cryptography test suite.
>>>
>>> tyk, r
>>>
>>>
>>>
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200304/9a52a500/attachment.html>


More information about the Squeak-dev mailing list