sslp should be redundant because ~bin where the exe for the windows process
started will automatically in the dll search path.

I think libssl is not a stable api for android.  Its path is tricky to
specified even if it is part of the Qt lib runtime. shared objects in
android normally do not have version suffix.
On Sep 7, 2014 6:19 AM, "Raul Miller" <rauldmil...@gmail.com> wrote:

> sslp should be empty, except for windows.
>
> (Actually, that could be expressed more simply but hopefully it's
> clear enough this way?)
>
> Thanks,
>
> --
> Raul
>
> On Sat, Sep 6, 2014 at 1:55 PM, 'Pascal Jasmin' via Programming
> <programm...@jsoftware.com> wrote:
> > with that info, I've changed 2 lines on wiki:
> > sslp =: IFWIN pick ''; '/',~ jpath '~bin'  NB. with J802.  cut this line
> if you wish to point to downloaded folder
> > OPENSSL =: sslp , (IFIOS + (;: 'Win Linux Android Darwin') i. <UNAME_z_)
> pick 'libeay32.dll '; (2 $ <'libssl.so.1.0.0 '),  (2 $
> <'/usr/lib/libssl.dylib ')
> >
> >
> >
> > ----- Original Message -----
> > From: bill lam <bbill....@gmail.com>
> > To: programm...@jsoftware.com
> > Cc:
> > Sent: Saturday, September 6, 2014 1:44 PM
> > Subject: Re: [Jprogramming] md5 is not md5
> >
> > This is multi-arch. if we just use the bare file name,
> >
> > OPENSSL=: 'libssl.so.1.0.0'
> >
> > it will work on 32-bit and 64-bit, and also
> > works for 32-bit process on 64-bit host.
> >
> > should also works on raspi even the prefix would be
> > /lib/arm-linux-gnueabihf/
> >
> > all J8 addons use this scheme for shared objects.
> >
> > Сб, 06 сен 2014, Raul Miller написал(а):
> >> This works on that machine:
> >>
> >>    OPENSSL=: '/lib/x86_64-linux-gnu/libssl.so.1.0.0'
> >>    sslSha256 =: (IFWIN {:: ' SHA256 > + x *c x *c';'SHA256 > x *c x
> >> *c')  ssl  NB. SHA256 i *c l *c' ssl
> >>    s256=: 3 : 0
> >>       sslSha256 (y);(#y);md=. 32#' '
> >>       md
> >>    )
> >>    hexhash =: ( [: ,@:hfd a.i.])@:
> >>
> >>    s256 hexhash 'The quick brown fox jumps over the lazy dog'
> >> d7a8fbb307d7809469ca9abcb0082e4f8d5651e46d3cdb762d02d0bf37c9e592
> >>
> >> However, if I try
> >>    OPENSSL=:'libssl.so'
> >>    sslSha256 =: (IFWIN {:: ' SHA256 > + x *c x *c';'SHA256 > x *c x
> >> *c')  ssl  NB. SHA256 i *c l *c' ssl
> >>    s256 hexhash 'The quick brown fox jumps over the lazy dog'
> >> |domain error: cd
> >>
> >> Similarly:
> >>    OPENSSL=:'/usr/lib/libssl.so'
> >>    sslSha256 =: (IFWIN {:: ' SHA256 > + x *c x *c';'SHA256 > x *c x
> >> *c')  ssl  NB. SHA256 i *c l *c' ssl
> >>    s256 hexhash 'The quick brown fox jumps over the lazy dog'
> >> |domain error: cd
> >>
> >> Speaking more generally, the motivation behind having the very
> >> specific /lib/x86_64-linux-gnu/libssl.so.1.0.0 is so that the 64 bit
> >> code and the 32 bit code can coexist, and the reason for not
> >> supporting the more generic /usr/lib/libssl.so is so that there's a
> >> clean separation between these two mechanisms. It's a bit ugly, but so
> >> is the underlying cpu architecture.
> >>
> >> Thanks,
> >>
> >> --
> >> Raul
> >>
> >>
> >> On Sat, Sep 6, 2014 at 12:49 PM, 'Pascal Jasmin' via Programming
> >> <programm...@jsoftware.com> wrote:
> >> > sorry about domain error, fixed on wiki, changing line to:
> >> >
> >> > OPENSSL =: sslp , (IFIOS + (;: 'Win Linux Android Darwin') i.
> <UNAME_z_) pick 'libeay32.dll '; (2 $ <'libssl.so '),  (2 $ <'libssl.dylib
> ')
> >> >
> >> > basically, OPENSSL should be set to: (based on your distribution)
> >> >
> >> >    OPENSSL
> >> > /lib/x86_64-linux-gnu/libssl.so.1.0.0
> >> >
> >> > my understanding of linux is that libssl.so will find the latest
> version.
> >> > No idea how standard '/lib/x86_64-linux-gnu/' is, but that is what
> you want assigned in the sslp =: line.  Perhaps you want to also add an
> IF64 line for your other system
> >> >
> >> >
> >> > ----- Original Message -----
> >> > From: Raul Miller <rauldmil...@gmail.com>
> >> > To: Programming forum <programm...@jsoftware.com>
> >> > Cc:
> >> > Sent: Saturday, September 6, 2014 12:12 PM
> >> > Subject: Re: [Jprogramming] md5 is not md5
> >> >
> >> >    IFIOS
> >> > 0
> >> >    UNAME_z_
> >> > Linux
> >> >    sslp =: IFWIN pick '/usr/lib/';'D:\OpenSSL-Win64\bin\'
> >> >    sslp
> >> > /usr/lib/
> >> >
> >> > Looking closer, I'm thinking you probably want
> >> > /lib/x86_64-linux-gnu/libssl.so.1.0.0 rather than /usr/lib/libssl.so
> >> > (which does not exist).
> >> >
> >> > That said, the domain error is because you are trying to compute this
> result:
> >> >
> >> >    '/usr/lib/',2$<'libssl.so'
> >> >
> >> > Thanks,
> >> >
> >> > --
> >> > Raul
> >> >
> >> > On Sat, Sep 6, 2014 at 12:02 PM, 'Pascal Jasmin' via Programming
> >> > <programm...@jsoftware.com> wrote:
> >> >> what is sslp defined as?
> >> >>
> >> >> Is it possible IFIOS is not defined?  or less likely UNAME_z_?
> >> >>
> >> >>
> >> >> ----- Original Message -----
> >> >> From: Raul Miller <rauldmil...@gmail.com>
> >> >> To: Programming forum <programm...@jsoftware.com>
> >> >> Cc:
> >> >> Sent: Saturday, September 6, 2014 11:57 AM
> >> >> Subject: Re: [Jprogramming] md5 is not md5
> >> >>
> >> >> Here's what happens if I use that code and only extract hexhash from
> >> >> the top (instead of simply incorporating both blocks of code):
> >> >>
> >> >>    s256 hexhash 'The quick brown fox jumps over the lazy dog'
> >> >> |value error: sslSha256
> >> >> |       sslSha256(y);(#y);md=.32#' '
> >> >>
> >> >> So, ok, what's wrong with sslSha256?
> >> >>
> >> >>    sslSha256
> >> >> |value error: sslSha256
> >> >>    sslSha256 =: (IFWIN {:: ' SHA256 > + x *c x *c';'SHA256 > x *c x
> >> >> *c')  ssl  NB. SHA256 i *c l *c' ssl
> >> >> |value error: OPENSSL
> >> >> |   (    OPENSSL,m)&cd
> >> >>
> >> >> So, ok, what's wrong with OPENSSL?
> >> >>
> >> >>    OPENSSL =: sslp , (IFIOS + (;: 'Win Linux Android Darwin') i.
> >> >> <UNAME_z_) pick 'libeay32.dll '; (2 $ <'libssl.so ');  (2 $
> >> >> <'libssl.dylib ')
> >> >> |domain error
> >> >> |   OPENSSL=:sslp    ,(IFIOS+(;:'Win Linux Android
> >> >> Darwin')i.<UNAME_z_)pick'libeay32.dll ';(2$<'libssl.so
> >> >> ');(2$<'libssl.dylib ')
> >> >>
> >> >> In other words, I was just copying and pasting your code into
> >> >> jconsole, rather than defining a script and attempting to debug it.
> >> >>
> >> >> I recall doing that earlier and finding an issue with libssl which I
> >> >> was not prepared to deal with.
> >> >>
> >> >> Thanks,
> >> >>
> >> >> --
> >> >> Raul
> >> >>
> >> >> On Sat, Sep 6, 2014 at 11:52 AM, 'Pascal Jasmin' via Programming
> >> >> <programm...@jsoftware.com> wrote:
> >> >>> You did not go far enough down the page :P  CryptAcquireContext is
> only used in the MSFT binding not openssl binding
> >> >>>
> >> >>>
> >> >>> ----- Original Message -----
> >> >>> From: Raul Miller <rauldmil...@gmail.com>
> >> >>> To: Programming forum <programm...@jsoftware.com>
> >> >>> Cc:
> >> >>> Sent: Saturday, September 6, 2014 11:49 AM
> >> >>> Subject: Re: [Jprogramming] md5 is not md5
> >> >>>
> >> >>> I used the code from the bottom of the page.
> >> >>>
> >> >>> Quite possibly I should have used it differently, but that's a
> different issue.
> >> >>>
> >> >>> Thanks,
> >> >>>
> >> >>> --
> >> >>> Raul
> >> >>>
> >> >>>
> >> >>> On Sat, Sep 6, 2014 at 11:46 AM, 'Pascal Jasmin' via Programming
> >> >>> <programm...@jsoftware.com> wrote:
> >> >>>> You are using the wrong code.  That is indeed windows specific
> bindings.  The openssl bindings are at the bottom of the page.  Though you
> may want to pick up hexhash definition from the top section.
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>> ----- Original Message -----
> >> >>>> From: Raul Miller <rauldmil...@gmail.com>
> >> >>>> To: Programming forum <programm...@jsoftware.com>
> >> >>>> Cc:
> >> >>>> Sent: Saturday, September 6, 2014 11:41 AM
> >> >>>> Subject: Re: [Jprogramming] md5 is not md5
> >> >>>>
> >> >>>> I tried your code at
> >> >>>>
> http://www.jsoftware.com/jwiki/PascalJasmin/SHA%201%2C%202%20and%20MD5%20for%20windows
> >> >>>>
> >> >>>>    sha256 hexhash 'The quick brown fox jumps over the lazy dog'
> >> >>>> |domain error: cd
> >> >>>> |
>  CryptAcquireContext(aProv=.,_1);(<0);(<0);PROV_RSA_AES;CRYPT_VERIFYCONTEXT
> >> >>>>
> >> >>>> Meanwhile, what I have works for me.
> >> >>>>
> >> >>>> Specifically, I built libmd5.so using
> >> >>>> https://github.com/rdm/libmd5.so, copied it into the directory
> >> >>>> /home/ubuntu/bin/ and then used, from in J:
> >> >>>>
> >> >>>> md5raw=: '/home/ubuntu/bin/libmd5-64.so MD5String > l *c
> l'&(15!:0)@(; #)
> >> >>>> md5=: 3 :',tolower hfd a.i. 15!:1 (md5raw y),0 16 2'
> >> >>>>
> >> >>>> Now... since I need both 32 bit J (to parse xml using xml/sax -
> >> >>>> apparently that only works on 32 bit j602) and 64 bit J (to deal
> with
> >> >>>> more data than will fit in a 32 bit process), I'm having to have
> two
> >> >>>> copies of libmd5.so - one for each instance of J. But I can live
> with
> >> >>>> that.
> >> >>>>
> >> >>>> Thanks,
> >> >>>>
> >> >>>> --
> >> >>>> Raul
> >> >>>>
> >> >>>>
> >> >>>> On Sat, Sep 6, 2014 at 11:23 AM, 'Pascal Jasmin' via Programming
> >> >>>> <programm...@jsoftware.com> wrote:
> >> >>>>> the code was tested at one point on mac.  There is an attempt in
> the definitions (at bottom of page only) to link on linux.  assumes
> /usr/lib/libssl.so .  Should work? or few changes needed to work on linux?
> >> >>>>>
> >> >>>>>
> >> >>>>> ----- Original Message -----
> >> >>>>> From: Raul Miller <rauldmil...@gmail.com>
> >> >>>>> To: Programming forum <programm...@jsoftware.com>
> >> >>>>> Cc:
> >> >>>>> Sent: Saturday, September 6, 2014 11:11 AM
> >> >>>>> Subject: Re: [Jprogramming] md5 is not md5
> >> >>>>>
> >> >>>>> I can't use your implementation, since I'm not running this on
> windows.
> >> >>>>>
> >> >>>>> That said, I've got a fix for my code.
> >> >>>>>
> >> >>>>> That said, I do not have a fix for the portable code in
> convert/misc/md5.
> >> >>>>>
> >> >>>>> The first thing which would need to be fixed there are the uses
> of 32
> >> >>>>> b. and 33 b. (in the definitions of sh_pcrypt_ and rot_pcrypt_)
> but
> >> >>>>> oddly enough that does not seem to be  sufficient. It's not
> obvious to
> >> >>>>> me what else needs to be fixed, and right now I am feeling too
> >> >>>>> impatient to isolate the problem.
> >> >>>>>
> >> >>>>> Thanks,
> >> >>>>>
> >> >>>>> --
> >> >>>>> Raul
> >> >>>>>
> >> >>>>>
> >> >>>>> On Sat, Sep 6, 2014 at 10:55 AM, 'Pascal Jasmin' via Programming
> >> >>>>> <programm...@jsoftware.com> wrote:
> >> >>>>>> It was written and tested for 32 bits.  J7-64 also gives the
> wrong answer.
> >> >>>>>>
> >> >>>>>> At the bottom of this page there are openssl bindings to similar
> hashes.
> http://www.jsoftware.com/jwiki/PascalJasmin/SHA%201%2C%202%20and%20MD5%20for%20windows
> >> >>>>>>
> >> >>>>>> all the bound hashes are the same speed when called, but I added
> an md5 implementation this morning.  IIRC it is over 1000 times faster than
> the J code.
> >> >>>>>>
> >> >>>>>> I possibly made the unpopular design decision to split out the
> formatting of the hash and keep it raw binary.  There is a 5x performance
> benefit for doing so.
> >> >>>>>>
> >> >>>>>> the fastest conversion (but takes more space than binary) is
> >> >>>>>>
> >> >>>>>>   listhash =: (a. i. ])@:
> >> >>>>>>
> >> >>>>>> or:
> >> >>>>>> a. i.  md5 'example'
> >> >>>>>>
> >> >>>>>> If you are having any problems with the library, the source is
> likely in the first 3 lines.  I didn't test with 32 bits, but any problems
> there are likely solveable.
> >> >>>>>>
> >> >>>>>>
> >> >>>>>> ----- Original Message -----
> >> >>>>>> From: Raul Miller <rauldmil...@gmail.com>
> >> >>>>>> To: Programming forum <programm...@jsoftware.com>
> >> >>>>>> Cc:
> >> >>>>>> Sent: Saturday, September 6, 2014 9:10 AM
> >> >>>>>> Subject: [Jprogramming] md5 is not md5
> >> >>>>>>
> >> >>>>>> j602:
> >> >>>>>>
> >> >>>>>>    load'convert/misc/md5'
> >> >>>>>>    md5 'example'
> >> >>>>>> 1a79a4d60de6718e8e5b326e338ae533
> >> >>>>>>
> >> >>>>>> j64-802:
> >> >>>>>>
> >> >>>>>>    load'convert/misc/md5'
> >> >>>>>>    md5 'example'
> >> >>>>>> 64a9df64d8defee229d86709a425ea7a
> >> >>>>>>
> >> >>>>>> This is a problem...
> >> >>>>>>
> >> >>>>>> ==
> >> >>>>>> Raul
> >> >>>>>>
> ----------------------------------------------------------------------
> >> >>>>>> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >>
> >> >>
> >> >>
> >> >>>>
> >> >>>>
> >> >>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>>
> >> >>>>>>
> ----------------------------------------------------------------------
> >> >>>>>> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >
> >> >
> >> >
> >> >>>
> >> >>>
> >> >>>
> >> >>>>>
> ----------------------------------------------------------------------
> >> >>>>> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >>>>>
> >> >>>>>
> ----------------------------------------------------------------------
> >> >>>>> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >>>>
> ----------------------------------------------------------------------
> >> >>>> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >>>>
> >> >>>>
> ----------------------------------------------------------------------
> >> >>>> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >>>
> ----------------------------------------------------------------------
> >> >>> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >>>
> >> >>>
> ----------------------------------------------------------------------
> >> >>> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >>
> ----------------------------------------------------------------------
> >> >> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >>
> >> >>
> ----------------------------------------------------------------------
> >> >> For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> > ----------------------------------------------------------------------
> >> > For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> >
> >> > ----------------------------------------------------------------------
> >> > For information about J forums see
> http://www.jsoftware.com/forums.htm
> >> ----------------------------------------------------------------------
> >> For information about J forums see http://www.jsoftware.com/forums.htm
> >
> > --
> > regards,
> > ====================================================
> > GPG key 1024D/4434BAB3 2008-08-24
> > gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> > gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3
> >
> >
> >
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to