From: Dean M. B. <mik...@gm...> - 2009-12-17 01:53:24
|
Hi Everyone, I'm currently working on getting HTTPS somewhat working with very simple queries, and right now I'm looking at a test server set up locally. I'm not sure how to do this with Python if it's even feasible, nor do I know any public HTTPS servers that I can make a test HTTPS call against (with the issue of validation, etc. of certificates and whatnot). Anybody have any ideas how I can easily write tests for HTTPS? -- Dean Michael Berris blog.cplusplus-soup.com | twitter.com/mikhailberis linkedin.com/in/mikhailberis | facebook.com/dean.berris | deanberris.com |
From: Jeroen H. <vex...@gm...> - 2009-12-17 23:27:00
|
On Thu, Dec 17, 2009 at 02:44, Dean Michael Berris <mik...@gm...> wrote: > Hi Everyone, > > I'm currently working on getting HTTPS somewhat working with very > simple queries, and right now I'm looking at a test server set up > locally. I'm not sure how to do this with Python if it's even > feasible, nor do I know any public HTTPS servers that I can make a > test HTTPS call against (with the issue of validation, etc. of > certificates and whatnot). > > Anybody have any ideas how I can easily write tests for HTTPS? > > -- > Dean Michael Berris > blog.cplusplus-soup.com | twitter.com/mikhailberis > linkedin.com/in/mikhailberis | facebook.com/dean.berris | deanberris.com > Hi Dean, I've attached the simplest HTTPS server I could come up with in Python, hard-coded to listen on 127.0.0.1:8443, as well as a certificate pair generated as described at http://panoptic.com/wiki/aolserver/How_to_generate_self-signed_SSL_certificates, valid for the next 65536 days. Notice that it needs pyopenssl to function. Jeroen |
From: Dean M. B. <mik...@gm...> - 2009-12-17 23:41:17
|
On Fri, Dec 18, 2009 at 7:26 AM, Jeroen Habraken <vex...@gm...> wrote: > On Thu, Dec 17, 2009 at 02:44, Dean Michael Berris >> >> Anybody have any ideas how I can easily write tests for HTTPS? >> > > Hi Dean, > > I've attached the simplest HTTPS server I could come up with in > Python, hard-coded to listen on 127.0.0.1:8443, as well as a > certificate pair generated as described at > http://panoptic.com/wiki/aolserver/How_to_generate_self-signed_SSL_certificates, > valid for the next 65536 days. Notice that it needs pyopenssl to > function. > Nice! Thanks for these. :) If you don't mind though, can you branch off 0.5-devel and integrate this there? While I can integrate that from here, it seems a lot "cleaner" if you submit it through github. If that's too complex, then I'll play with this one and put appropriate credits where it matters. Thanks again! -- Dean Michael Berris blog.cplusplus-soup.com | twitter.com/mikhailberis linkedin.com/in/mikhailberis | facebook.com/dean.berris | deanberris.com |
From: Jeroen H. <vex...@gm...> - 2009-12-18 16:16:03
|
On Fri, Dec 18, 2009 at 00:40, Dean Michael Berris <mik...@gm...> wrote: > On Fri, Dec 18, 2009 at 7:26 AM, Jeroen Habraken <vex...@gm...> wrote: >> On Thu, Dec 17, 2009 at 02:44, Dean Michael Berris >>> >>> Anybody have any ideas how I can easily write tests for HTTPS? >>> >> >> Hi Dean, >> >> I've attached the simplest HTTPS server I could come up with in >> Python, hard-coded to listen on 127.0.0.1:8443, as well as a >> certificate pair generated as described at >> http://panoptic.com/wiki/aolserver/How_to_generate_self-signed_SSL_certificates, >> valid for the next 65536 days. Notice that it needs pyopenssl to >> function. >> > > Nice! Thanks for these. :) > > If you don't mind though, can you branch off 0.5-devel and integrate > this there? While I can integrate that from here, it seems a lot > "cleaner" if you submit it through github. If that's too complex, then > I'll play with this one and put appropriate credits where it matters. > > Thanks again! > > -- > Dean Michael Berris > blog.cplusplus-soup.com | twitter.com/mikhailberis > linkedin.com/in/mikhailberis | facebook.com/dean.berris | deanberris.com > Hi Dean, This is indeed a bit complex, and it was meant as something to play with, so by all means, please do. Jeroen Habraken |
From: Dean M. B. <mik...@gm...> - 2009-12-18 23:28:55
|
On Sat, Dec 19, 2009 at 12:15 AM, Jeroen Habraken <vex...@gm...> wrote: > > This is indeed a bit complex, and it was meant as something to play > with, so by all means, please do. > Alright, thanks very much! I'll do it within the day or in the next few days. Please expect it in the 0.5-devel branch. BTW, are you already happy with the implementation you have at github? Because if you are, please feel free to submit a pull request so that I can merge it to master -- and rebase my 0.5-devel branch too. Thanks and I hope to see the pull request soon! -- Dean Michael Berris blog.cplusplus-soup.com | twitter.com/mikhailberis linkedin.com/in/mikhailberis | facebook.com/dean.berris | deanberris.com |
From: Jeroen H. <vex...@gm...> - 2009-12-18 23:44:57
|
On Sat, Dec 19, 2009 at 00:28, Dean Michael Berris <mik...@gm...> wrote: > On Sat, Dec 19, 2009 at 12:15 AM, Jeroen Habraken <vex...@gm...> wrote: >> >> This is indeed a bit complex, and it was meant as something to play >> with, so by all means, please do. >> > > Alright, thanks very much! I'll do it within the day or in the next > few days. Please expect it in the 0.5-devel branch. > > BTW, are you already happy with the implementation you have at github? > Because if you are, please feel free to submit a pull request so that > I can merge it to master -- and rebase my 0.5-devel branch too. > The current planning is that I fix the user and password parsing Real Soon Now, along with some test cases, which can then be merged. That should at least get us to a point where we are somewhat following the RFC2396, thus falsely marked valid URI's, but no falsely marked invalid URI's I hope. Next is reading the newer RFC again -and again :)-, setting up a lot more test cases, and fixing the generic URI implementation to follow that. > Thanks and I hope to see the pull request soon! > > -- > Dean Michael Berris > blog.cplusplus-soup.com | twitter.com/mikhailberis > linkedin.com/in/mikhailberis | facebook.com/dean.berris | deanberris.com > Jeroen |
From: Dean M. B. <mik...@gm...> - 2009-12-19 02:26:58
|
On Sat, Dec 19, 2009 at 7:44 AM, Jeroen Habraken <vex...@gm...> wrote: > On Sat, Dec 19, 2009 at 00:28, Dean Michael Berris >> >> BTW, are you already happy with the implementation you have at github? >> Because if you are, please feel free to submit a pull request so that >> I can merge it to master -- and rebase my 0.5-devel branch too. >> > > The current planning is that I fix the user and password parsing Real > Soon Now, along with some test cases, which can then be merged. That > should at least get us to a point where we are somewhat following the > RFC2396, thus falsely marked valid URI's, but no falsely marked > invalid URI's I hope. Next is reading the newer RFC again -and again > :)-, setting up a lot more test cases, and fixing the generic URI > implementation to follow that. > Sweet! Thanks for doing this, it's very much appreciated. Looking forward to your progress soon! :) -- Dean Michael Berris blog.cplusplus-soup.com | twitter.com/mikhailberis linkedin.com/in/mikhailberis | facebook.com/dean.berris | deanberris.com |
From: Dean M. B. <mik...@gm...> - 2009-12-21 11:03:12
|
On Sat, Dec 19, 2009 at 10:26 AM, Dean Michael Berris <mik...@gm...> wrote: > > Sweet! Thanks for doing this, it's very much appreciated. > > Looking forward to your progress soon! :) > Okay, now I've pushed the HTTP Server and client refactoring to support HTTPS connections. However, the tests are broken because the Python server for some reason throws up on POST via HTTPS. The GET/HEAD requests are just fine with the HTTPS server but the POST requests for some reason through CGI seem to break. I don't know enough Python kung fu to fix this, so I'm putting it out in the wild. Branch 0.5-devel as of now has the Python test server which is broken. One option is to write an HTTPS server that doesn't use the CGI scripts -- maybe via WSGI so that we can also handle POST/PUT/DELETE/etc.; I'll leave that up to those with enough Python kung fu to figure out. ;) The test for https on the localhost interface is in libs/network/test/https_localhost_test.cpp -- this is almost identical to the http_localhost_tests but we can change these up so that we can see tests that pass on the https requests. If anybody is willing to change up the tests to go in-line with a non-throwing-up Python HTTPS server and tests, you're very much welcome. Have a great day everyone, and I'm looking forward to suggestions and ideas. I'll move on to implementing chunked encoding support on the HTTP/1.1 front. :D -- Dean Michael Berris blog.cplusplus-soup.com | twitter.com/mikhailberis linkedin.com/in/mikhailberis | facebook.com/dean.berris | deanberris.com |