Hi,

First of all my apologies for the delay on this. Second, thanks so
much for tourbleshoot and fix the errors described, i have committed
this patch to the master repository.

As you said, even we are working in a new SSL plugin based on PolarSSL
i consider pretty important to have this fix merged into our
repository, so if anyone for some reason wants to use MatrixSSL can
refer to this commit level.

thanks!


On Fri, Aug 31, 2012 at 8:02 AM, Sonny Karlsson <[email protected]> wrote:
> Hi
>
> Here's a patch for liana_ssl that correctly handles SSL streams, adds
> support for false start and uses non-blocking connections. It's
> untested outside of my development environment, running debian
> unstable with matrixssl 3.3.1 and current git master of monkey.
>
> The patch is a lot larger then I intended, but there was no way of
> parsing multiple SSL records in the previous implementation.
>
> Since matrixssl is getting replaced in monkey, this patch is a bit
> rough on the edges.
>
> Patch notes:
>
> In io_read, handle as many records as possible. Use non-blocking sockets
> for IO. Most of the handshake is done in events, may cause troubles.
> Tested with Safari, Chrome and Firefox.
>
> Known problems:
> * First request by Chrome browsers fail, one byte is missing every
>   time, may be a bug in matrixssl.
> * Generates occasional socket errors in event_read, may fail
>   requests.
> * SSL closure notifications are sometimes ignored.
>
> On Wed, Aug 29, 2012 at 06:16:35PM -0500, Luna wrote:
>> Well with chrome it says the error, with firefox and IE just says
>> could not display webpage.  At least with all three of them they say
>> usual thing about certifcates not being a CA certifcate that works
>> fine but its after that I cannot connect.
>>
>> -----Original Message----- From: Eduardo Silva
>> Sent: Tuesday, August 28, 2012 10:04 PM
>> To: Luna
>> Cc: [email protected]
>> Subject: Re: [Monkey] liana_ssl
>>
>> 1) check in monkey.conf that transportLayer is set to liana_ssl
>> 2) Perform the same test with Firefox (it looks like the matrixssl
>> problem with SSL False start from Chrome)
>>
>> On Tue, Aug 28, 2012 at 8:05 PM, Luna <[email protected]> wrote:
>> >I added the suggestion of Sonny Karlsson about matrixssl I got it to work
>> >with that.  Now monkey cannot view the webpage and I get these two errors
>> >when I try to view the website.
>> >
>> >ERR_EMPTY_RESPONSE
>> >ERR_SSL_VERSION_OR_CIPHER_MISMATCH
>> >
>> >Of course the website I try to access is like this
>> >
>> >https://mywebsite:2001
>> >
>> >If I do http://mywebsite:2001 it just sputs a file to download called
>> >download.  Pretty odd but I don't know if this a matrixssl problem or
>> >monkey.
>> >
>> >
>> >-----Original Message----- From: Eduardo Silva
>> >Sent: Monday, August 27, 2012 9:52 PM
>> >To: Kyle Sanderson
>> >Cc: [email protected]
>> >Subject: Re: [Monkey] liana_ssl
>> >
>> >Luna, any luck with the document provided ?
>> >
>> >On Sun, Aug 26, 2012 at 10:51 PM, Eduardo Silva <[email protected]> wrote:
>> >>
>> >>On Sun, Aug 26, 2012 at 10:51 PM, Eduardo Silva
>> >><[email protected]> wrote:
>> >>>
>> >>>Hi Kyle,
>> >>>
>> >>>On Sun, Aug 26, 2012 at 7:06 PM, Kyle Sanderson <[email protected]>
>> >>>wrote:
>> >>>>
>> >>>>Hi Eduardo,
>> >>>>
>> >>>>1.1.1 works (Compiles)! However, I had to make two changes to Line 13,
>> >>>>DPOSIX (Should be -DPOSIX), and remove the space with '
>> >>>>-L/home/USERNAME/monkey_ssl/matrixssl-3-3-1-open'. Which version of
>> >>>>gcc are you compiling with?
>> >>>>
>> >>>>Thanks for those steps! I would have never figured it out otherwise.
>> >>>>Kyle.
>> >>>
>> >>>
>> >>>thanks to you, i have updated the .txt with the proper fix.
>> >>>
>> >>>My plan for 1.2 is to deprecate this matrixssl dependency and use
>> >>>something with better support and docs such as PolarSSL
>> >>>
>> >>>best,
>> >>
>> >>
>> >>btw, i am using:
>> >>
>> >>gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
>> >>
>> >>
>> >>>
>> >>>>
>> >>>>On Sun, Aug 26, 2012 at 3:00 PM, Eduardo Silva <[email protected]>
>> >>>>wrote:
>> >>>>>
>> >>>>>On Sat, Aug 25, 2012 at 11:01 PM, Kyle Sanderson <[email protected]>
>> >>>>>wrote:
>> >>>>>>
>> >>>>>>Just for what it's worth, I too am having issues with the
>> >>>>>>installation. I haven't tried 1.1.1 as I don't have any spare cycles,
>> >>>>>>but it's still on my radar. Thanks for the walk-through!
>> >>>>>>
>> >>>>>>Thanks,
>> >>>>>>Kyle.
>> >>>>>
>> >>>>>
>> >>>>>Hi Kyle,
>> >>>>>
>> >>>>>please try 1.1.1 as it fixes some problems with the build system,
>> >>>>>
>> >>>>>best,
>> >>>>>>
>> >>>>>>
>> >>>>>>On Fri, Aug 24, 2012 at 12:40 PM, Eduardo Silva <[email protected]>
>> >>>>>>wrote:
>> >>>>>>>
>> >>>>>>>Please review the following txt file with the step by step
>> >>>>>>>instructions:
>> >>>>>>>
>> >>>>>>>       http://edsiper.linuxchile.cl/monkey_ssl.txt
>> >>>>>>>
>> >>>>>>>send us some feedback...
>> >>>>>>>
>> >>>>>>>cheers!
>> >>>>>>>
>> >>>>>>>On Fri, Aug 24, 2012 at 4:31 AM, Luna <[email protected]>
>> >>>>>>>wrote:
>> >>>>>>>>
>> >>>>>>>>Here you go.
>> >>>>>>>>       linux-gate.so.1 =>  (0x00977000)
>> >>>>>>>>       libmatrixssl.so => not found
>> >>>>>>>>       libc.so.6 => /lib/libc.so.6 (0x0033a000)
>> >>>>>>>>       /lib/ld-linux.so.2 (0x00597000)
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>-----Original Message----- From: Eduardo Silva
>> >>>>>>>>Sent: Thursday, August 23, 2012 11:34 PM
>> >>>>>>>>
>> >>>>>>>>To: Luna
>> >>>>>>>>Cc: [email protected]
>> >>>>>>>>Subject: Re: [Monkey] liana_ssl
>> >>>>>>>>
>> >>>>>>>>please provide the output of:
>> >>>>>>>>
>> >>>>>>>> ldd monkey-1.1.1/plugins/liana_ssl/monkey-liana_ssl.so
>> >>>>>>>>
>> >>>>>>>>On Thu, Aug 23, 2012 at 9:50 PM, Luna <[email protected]>
>> >>>>>>>>wrote:
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>After a while trying to configure it, I think you have to the Load
>> >>>>>>>>>in the
>> >>>>>>>>>correct position in the document it to try load the plugin.  I get
>> >>>>>>>>>these
>> >>>>>>>>>errors now.
>> >>>>>>>>>
>> >>>>>>>>>Monkey HTTP Daemon 1.1.1
>> >>>>>>>>>Built : Aug 23 2012 21:59:38 (gcc 4.4.6)
>> >>>>>>>>>Home  : http://monkey-project.com
>> >>>>>>>>>[2012/08/23 22:34:05] [Warning] dlopen() libmatrixssl.so: cannot
>> >>>>>>>>>open
>> >>>>>>>>>shared
>> >>>>>>>>>object file: No such file or directory
>> >>>>>>>>>[2012/08/23 22:34:05] [Warning] Invalid plugin
>> >>>>>>>>>'/home/****/monkey-1.1.1/plugins/liana_ssl/monkey-liana_ssl.so'
>> >>>>>>>>>[2012/08/23 22:34:05] [  Error] TransportLayer 'liana_ssl' not
>> >>>>>>>>>found
>> >>>>>>>>>
>> >>>>>>>>>I'm sure I am post to disable the regular liana plugin in the
>> >>>>>>>>>monkey.conf
>> >>>>>>>>>and plugins.load.  As for libmatrixssl.so is that linking to the
>> >>>>>>>>>/usr/lib
>> >>>>>>>>>or
>> >>>>>>>>>/usr/local/lib?  I have no clue what it means liana_ssl not found.
>> >>>>>>>>>:(
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>-----Original Message----- From: Eduardo Silva
>> >>>>>>>>>Sent: Thursday, August 23, 2012 9:29 PM
>> >>>>>>>>>
>> >>>>>>>>>To: Luna
>> >>>>>>>>>Cc: [email protected]
>> >>>>>>>>>Subject: Re: [Monkey] liana_ssl
>> >>>>>>>>>
>> >>>>>>>>>seems like i forgot to mention that you have to compile matrixssl
>> >>>>>>>>>before the monkey plugin:
>> >>>>>>>>>
>> >>>>>>>>>cd matrixssl-3-3-1-open/
>> >>>>>>>>>make
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>On Thu, Aug 23, 2012 at 7:00 PM, Luna <[email protected]>
>> >>>>>>>>>wrote:
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>[****@****liana_ssl]$ gcc -g liana_ssl.c -shared -o
>> >>>>>>>>>>monkey-liana_ssl.so
>> >>>>>>>>>>-I../../src/include/ -I/home/username/matrixssl-3-3-1-open/ -fPIC
>> >>>>>>>>>>-DPOSIX
>> >>>>>>>>>>-L/home/username/matrixssl-3-3-1-open -lmatrixssl
>> >>>>>>>>>>
>> >>>>>>>>>>/usr/bin/ld: cannot find -lmatrixssl
>> >>>>>>>>>>collect2: ld returned 1 exit status
>> >>>>>>>>>>
>> >>>>>>>>>>If I don't include -lmatrixssl no error message comes out.
>> >>>>>>>>>>
>> >>>>>>>>>>-----Original Message----- From: Eduardo Silva
>> >>>>>>>>>>Sent: Thursday, August 23, 2012 7:14 PM
>> >>>>>>>>>>
>> >>>>>>>>>>To: Luna
>> >>>>>>>>>>Cc: [email protected]
>> >>>>>>>>>>Subject: Re: [Monkey] liana_ssl
>> >>>>>>>>>>
>> >>>>>>>>>>please copy/paste the full output of the gcc command.
>> >>>>>>>>>>
>> >>>>>>>>>>On Thu, Aug 23, 2012 at 6:02 PM, Luna <[email protected]>
>> >>>>>>>>>>wrote:
>> >>>>>>>>>>>
>> >>>>>>>>>>>
>> >>>>>>>>>>>
>> >>>>>>>>>>>
>> >>>>>>>>>>>It stops right there, I don't matrixssl does not compile a file
>> >>>>>>>>>>>like
>> >>>>>>>>>>>that.
>> >>>>>>>>>>>
>> >>>>>>>>>>>/usr/bin/ld: cannot find -lmatrixssl
>> >>>>>>>>>>>collect2: ld returned 1 exit status
>> >>>>>>>>>>>
>> >>>>>>>>>>>
>> >>>>>>>>>>>-----Original Message----- From: Eduardo Silva
>> >>>>>>>>>>>Sent: Wednesday, August 22, 2012 11:34 PM
>> >>>>>>>>>>>To: Luna
>> >>>>>>>>>>>Cc: [email protected]
>> >>>>>>>>>>>Subject: Re: [Monkey] liana_ssl
>> >>>>>>>>>>>
>> >>>>>>>>>>>Hi,
>> >>>>>>>>>>>
>> >>>>>>>>>>>On Wed, Aug 22, 2012 at 6:51 PM, Luna <[email protected]>
>> >>>>>>>>>>>wrote:
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>>>>>Hi I been trying to compile monkey with liana_ssl, I notice on
>> >>>>>>>>>>>>the make
>> >>>>>>>>>>>>it
>> >>>>>>>>>>>>requires matrixssl.  I go download matrixssl and try to compile
>> >>>>>>>>>>>>or
>> >>>>>>>>>>>>maybe
>> >>>>>>>>>>>>monkey just need the headers its not clear on this part.  Then
>> >>>>>>>>>>>>again I
>> >>>>>>>>>>>>never
>> >>>>>>>>>>>>did understand some things in Linux.  In the
>> >>>>>>>>>>>>folder of liana_ssl
>> >>>>>>>>>>>>I
>> >>>>>>>>>>>>check
>> >>>>>>>>>>>>the
>> >>>>>>>>>>>>path in the makefile where it had
>> >>>>>>>>>>>>/usr/include/matrixssl for the
>> >>>>>>>>>>>>matrixssl
>> >>>>>>>>>>>>so I copy the header files there.  Unfortunately it does not
>> >>>>>>>>>>>>compile
>> >>>>>>>>>>>>right
>> >>>>>>>>>>>>I
>> >>>>>>>>>>>>gotton to the point where ld is looking –lmatrixssl so I’m
>> >>>>>>>>>>>>stumped at
>> >>>>>>>>>>>>this
>> >>>>>>>>>>>>matrixssl does not even compile a binary like that.  I’m using
>> >>>>>>>>>>>>Red Hat
>> >>>>>>>>>>>>EPEL
>> >>>>>>>>>>>>6 i386 without liana_ssl it compiles correctly and I can use
>> >>>>>>>>>>>>monkey.
>> >>>>>>>>>>>>For
>> >>>>>>>>>>>>my
>> >>>>>>>>>>>>test I need monkey with ssl support.  Can somebody help me out
>> >>>>>>>>>>>>here.
>> >>>>>>>>>>>>Mostly
>> >>>>>>>>>>>>is there a way to properly compile and place the headers so
>> >>>>>>>>>>>>monkey can
>> >>>>>>>>>>>>use
>> >>>>>>>>>>>>them correctly
>> >>>>>>>>>>>>
>> >>>>>>>>>>>
>> >>>>>>>>>>>Hi,
>> >>>>>>>>>>>
>> >>>>>>>>>>>i understand, matrixssl is a pain, it don't have a clean way to
>> >>>>>>>>>>>install the binaries and headers in the
>> >>>>>>>>>>>system. We will move to a
>> >>>>>>>>>>>more
>> >>>>>>>>>>>friendly SSL library shortly.
>> >>>>>>>>>>>
>> >>>>>>>>>>>I just tested the following workaround:
>> >>>>>>>>>>>
>> >>>>>>>>>>>1) get monkey-1.1.1, configure like: ./configure --debug , then
>> >>>>>>>>>>>'make'
>> >>>>>>>>>>>2) get matrixssl 3.3.1, after unpack it you
>> >>>>>>>>>>>should have something
>> >>>>>>>>>>>like: /home/foo/matrixssl-3-3-1-open/
>> >>>>>>>>>>>3) go into monkey directory: monkey-1.1.1/plugins/liana_ssl
>> >>>>>>>>>>>4) compile the plugin with the following command:
>> >>>>>>>>>>>
>> >>>>>>>>>>>   gcc -g liana_ssl.c -shared -o monkey-liana_ssl.so
>> >>>>>>>>>>>-I../../src/include/ -I/home/foo/matrixssl-3-3-1-open/ -fPIC
>> >>>>>>>>>>>-DPOSIX
>> >>>>>>>>>>>-L/home/foo/matrixsssl-3-3-1-open -lmatrixssl
>> >>>>>>>>>>>
>> >>>>>>>>>>>   (make sure to replace
>> >>>>>>>>>>>/home/foo/matrixssl-3-3-1-open/ with the
>> >>>>>>>>>>>proper directory from where you have matrixssl)
>> >>>>>>>>>>>
>> >>>>>>>>>>>5) after that you will have a file called monkey-liana_ssl.so,
>> >>>>>>>>>>>thats
>> >>>>>>>>>>>your plugin :)
>> >>>>>>>>>>>
>> >>>>>>>>>>>6) Edit monkey-1.1.1/conf/plugins.load and make sure the
>> >>>>>>>>>>>monkey-liana_ssl.so plugin is loaded
>> >>>>>>>>>>>
>> >>>>>>>>>>>please let me know if it works,
>> >>>>>>>>>>>
>> >>>>>>>>>>>best
>> >>>>>>>>>>>
>> >>>>>>>>>>>
>> >>>>>>>>>>>--
>> >>>>>>>>>>>Eduardo Silva
>> >>>>>>>>>>>http://edsiper.linuxchile.cl
>> >>>>>>>>>>>http://www.monkey-project.com
>> >>>>>>>>>>>_______________________________________________
>> >>>>>>>>>>>Monkey mailing list
>> >>>>>>>>>>>[email protected]
>> >>>>>>>>>>>http://lists.monkey-project.com/listinfo/monkey
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>>>--
>> >>>>>>>>>>Eduardo Silva
>> >>>>>>>>>>http://edsiper.linuxchile.cl
>> >>>>>>>>>>http://www.monkey-project.com
>> >>>>>>>>>>_______________________________________________
>> >>>>>>>>>>Monkey mailing list
>> >>>>>>>>>>[email protected]
>> >>>>>>>>>>http://lists.monkey-project.com/listinfo/monkey
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>>--
>> >>>>>>>>>Eduardo Silva
>> >>>>>>>>>http://edsiper.linuxchile.cl
>> >>>>>>>>>http://www.monkey-project.com
>> >>>>>>>>>_______________________________________________
>> >>>>>>>>>Monkey mailing list
>> >>>>>>>>>[email protected]
>> >>>>>>>>>http://lists.monkey-project.com/listinfo/monkey
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>--
>> >>>>>>>>Eduardo Silva
>> >>>>>>>>http://edsiper.linuxchile.cl
>> >>>>>>>>http://www.monkey-project.com
>> >>>>>>>>_______________________________________________
>> >>>>>>>>Monkey mailing list
>> >>>>>>>>[email protected]
>> >>>>>>>>http://lists.monkey-project.com/listinfo/monkey
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>--
>> >>>>>>>Eduardo Silva
>> >>>>>>>http://edsiper.linuxchile.cl
>> >>>>>>>http://www.monkey-project.com
>> >>>>>>>_______________________________________________
>> >>>>>>>Monkey mailing list
>> >>>>>>>[email protected]
>> >>>>>>>http://lists.monkey-project.com/listinfo/monkey
>> >>>>>>
>> >>>>>>_______________________________________________
>> >>>>>>Monkey mailing list
>> >>>>>>[email protected]
>> >>>>>>http://lists.monkey-project.com/listinfo/monkey
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>>--
>> >>>>>Eduardo Silva
>> >>>>>http://edsiper.linuxchile.cl
>> >>>>>http://www.monkey-project.com
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>--
>> >>>Eduardo Silva
>> >>>http://edsiper.linuxchile.cl
>> >>>http://www.monkey-project.com
>> >>
>> >>
>> >>
>> >>
>> >>--
>> >>Eduardo Silva
>> >>http://edsiper.linuxchile.cl
>> >>http://www.monkey-project.com
>> >
>> >
>> >
>> >
>> >--
>> >Eduardo Silva
>> >http://edsiper.linuxchile.cl
>> >http://www.monkey-project.com
>> >_______________________________________________
>> >Monkey mailing list
>> >[email protected]
>> >http://lists.monkey-project.com/listinfo/monkey
>> >_______________________________________________
>> >Monkey mailing list
>> >[email protected]
>> >http://lists.monkey-project.com/listinfo/monkey
>>
>>
>>
>> --
>> Eduardo Silva
>> http://edsiper.linuxchile.cl
>> http://www.monkey-project.com
>>
>> _______________________________________________
>> Monkey mailing list
>> [email protected]
>> http://lists.monkey-project.com/listinfo/monkey
>
> --
> Sonny Karlsson
>
> _______________________________________________
> Monkey mailing list
> [email protected]
> http://lists.monkey-project.com/listinfo/monkey
>



-- 
Eduardo Silva
http://edsiper.linuxchile.cl
http://www.monkey-project.com
_______________________________________________
Monkey mailing list
[email protected]
http://lists.monkey-project.com/listinfo/monkey

Reply via email to