Using a Squeaklet with SSL

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Using a Squeaklet with SSL

Rudolf Coetsee
Hi
 
I have a Squeklet running in Internet Explorer, it uses the "HTTPSocket>>httpGetDocument: url args: args accept: mimeType request: requestString" method to make HTTP requests to a web site running on IIS. This works fine under normal circumstances, but when the IIS setting is changed to "Require SSL", the method fails.
 
Initially I thought it was due to this line:
 
 bare _ (url asLowercase beginsWith: 'http://')
  ifTrue: [url copyFrom: 8 to: url size]
  ifFalse: [url].
 
which obviously would not work with a url starting with "https://", so I changed the line to this:
 
 bare _ (url asLowercase beginsWith: 'http://')
  ifTrue: [url copyFrom: 8 to: url size]
  ifFalse: [
    (url asLowercase beginsWith: 'https://')
     ifTrue: [url copyFrom: 9 to: url size]
     ifFalse: [url].
    ].
 
Squeak now attempts to send through the request, but IIS refuses to serve the page. I think it is because the HTTPSocket issues a request without specifying the scheme to be used, as it is simply stripped off the url and discarded, but I don't know where to change it so that it will issue a request using the  "https://" scheme.
 
Any assistance with this would be greatly appreciated.
 
Thanks
 
RUDOLF COETSEE


Reply | Threaded
Open this post in threaded view
|

Re: Using a Squeaklet with SSL

danil osipchuk
Rudolf,
        Basically your problem is that squeak doesn't support natively SSL  
transfers yet.
        If you are using windows - you may try the interface to libcurl library  
that does (http://minnow.cc.gatech.edu/squeak/5865):

                (Curl new
                        caInfo: 'e:\squeak\cacert.pem';  "you can use certificate file"
                        "offSSLVerifyPeer;" "or disable SSL verify check completely"
                        getUrl: 'https://www.google.com/index.html') contents

Cheers,
        Danil


On Tue, 05 Sep 2006 12:27:50 +0300, Rudolf Coetsee  
<[hidden email]> wrote:

> Hi
>
> I have a Squeklet running in Internet Explorer, it uses the
> *"HTTPSocket>>httpGetDocument:
> url args: args accept: mimeType request: requestString"* method to make  
> HTTP
> requests to a web site running on IIS. This works fine under normal
> circumstances, but when the IIS setting is changed to "Require SSL", the
> method fails.
>
> Initially I thought it was due to this line:
>
>  bare _ (url asLowercase beginsWith: 'http://')
>   ifTrue: [url copyFrom: 8 to: url size]
>   ifFalse: [url].
>
> which obviously would not work with a url starting with "https://", so I
> changed the line to this:
>
>  bare _ (url asLowercase beginsWith: 'http://')
>   ifTrue: [url copyFrom: 8 to: url size]
>   ifFalse: [
>     (url asLowercase beginsWith: 'https://')
>      ifTrue: [url copyFrom: 9 to: url size]
>      ifFalse: [url].
>     ].
>
> Squeak now attempts to send through the request, but IIS refuses to serve
> the page. I think it is because the HTTPSocket issues a request without
> specifying the scheme to be used, as it is simply stripped off the url  
> and
> discarded, but I don't know where to change it so that it will issue a
> request using the  "https://" scheme.
>
> Any assistance with this would be greatly appreciated.
>
> Thanks
>
> RUDOLF COETSEE



--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/

Reply | Threaded
Open this post in threaded view
|

Re: Using a Squeaklet with SSL

Bert Freudenberg
danil osipchuk schrieb:
> Rudolf,
>     Basically your problem is that squeak doesn't support natively SSL
> transfers yet.

... which is why normally, you would request urls through the browser
using HTTPClient instead of HTTPSocket directly. That also utilizes the
browser's cache, proxy settings etc.

Unfortunately, support for the browser plugin primitives is browser
dependent.

- Bert -

>
> On Tue, 05 Sep 2006 12:27:50 +0300, Rudolf Coetsee
> <[hidden email]> wrote:
>
>> Hi
>>
>> I have a Squeklet running in Internet Explorer, it uses the
>> *"HTTPSocket>>httpGetDocument:
>> url args: args accept: mimeType request: requestString"* method to
>> make HTTP
>> requests to a web site running on IIS. This works fine under normal
>> circumstances, but when the IIS setting is changed to "Require SSL", the
>> method fails.
>>
>> Initially I thought it was due to this line:
>>
>>  bare _ (url asLowercase beginsWith: 'http://')
>>   ifTrue: [url copyFrom: 8 to: url size]
>>   ifFalse: [url].
>>
>> which obviously would not work with a url starting with "https://", so I
>> changed the line to this:
>>
>>  bare _ (url asLowercase beginsWith: 'http://')
>>   ifTrue: [url copyFrom: 8 to: url size]
>>   ifFalse: [
>>     (url asLowercase beginsWith: 'https://')
>>      ifTrue: [url copyFrom: 9 to: url size]
>>      ifFalse: [url].
>>     ].
>>
>> Squeak now attempts to send through the request, but IIS refuses to serve
>> the page. I think it is because the HTTPSocket issues a request without
>> specifying the scheme to be used, as it is simply stripped off the url
>> and
>> discarded, but I don't know where to change it so that it will issue a
>> request using the  "https://" scheme.
>>
>> Any assistance with this would be greatly appreciated.
>>
>> Thanks
>>
>> RUDOLF COETSEE