I took a look at SqueakSSL and there is a SqueakVM Plugin built, with platform code, a Cross header for the Plugin and source generated from the image. This plugin has a tight interface (only about 8 methods) which call the SSL OS library.

As the protocol interface for libsodium is likely quite sizeable, I think I would prefer adapting to use FFI to talk to the shared object lib, libsodium.so. I cannot find an example using FFI, in fadct I do not think it is loaded.

Is it possible, you can point me to an example of using FFI to talk to a shared lib?

Thanks!
rabbit

On 9/10/22 13:40, rabbit wrote:
Thanks for your advice Ron. I’ll look to SqueakSSL as an example how to integrate the libsodium.so! I was intending providing a separate interface from SqueakSSL, too.

What sort of object would be a SqueakLibSodium?


Have a Good One; Keep it, Light.
Kindly,
rabbit
. .. … ‘…^,^


Sent from Callisto House :: decentralized mobile homeless solutions

On Sep 10, 2022, at 10:23, Ron Teitelbaum <ron@usmedrec.com> wrote:


Hi Rob,

Probably the best thing to do is have a look at SqueakSSL.  It has a method to lookup OS Provided crypto modules.  Marcel is currently supporting it.  I wouldn't suggest adding libsodium to it but instead use it as a framework to support the same smalltalk api and then add to it whatever you believe is needed that you don't get from OpenSSL.  

Building SqueakLibSodium as a Plugin makes the most sense to me.  It would be nice if we could find a good way to find a way to keep both packages in sync but having them as different packages seems much safer.  I'm happy to be convinced otherwise.

All the best,

Ron Teitelbaum

On Sat, Sep 10, 2022 at 9:55 AM rabbit <rabbit@callistohouse.org> wrote:
Good morning!

I have successfully made and installed libsodium on my box (Ubuntu Jammy). I wish to access functions in the libsodium.so from Squeak, but I am not familiar with FFI (Alien?).

Another question I have is how to configure the vm to include libsodium.so or does using FFI remove that need? Is it possible to have the VM automatically download, make and install the libsodium.so? My approach is to get it all working then make it work right.


Have a Good One; Keep it, Light.
Kindly,
rabbit
. .. … ‘…^,^


Sent from Callisto House :: decentralized mobile homeless solutions
_______________________________________________
Cryptography mailing list
Cryptography@lists.squeakfoundation.org
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/cryptography
_______________________________________________
Cryptography mailing list
Cryptography@lists.squeakfoundation.org
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/cryptography
--
Have a good one; keep it, light.
Kindly,
rabbit
. .. … ‘…^,^


Sent from Callisto House :: decentralized mobile homeless solutions