Socket problems

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

Socket problems

Geoff Waddington
I am trying to build a primitive telnet emulator and being a old Smalltalker
(VAST / VW) I am a firm believer in "why build what you can steal" .. er...
I mean re-use :-) so I am basing it on the Chat Class.  I am quite impressed
with the Dolphin Professional implementation so far but as usual with ST it
is a rather hard sell where I work (we're currently on the eval). To the
problem -- I seem to be able to connect to port 23 (telnet port) on the
host, but the app abends after the Socket receive method due to an
unrecognized STB stream. Unfortunately there is no source for the Socket
class, but what I suspect is happening is that the escape characters that
telnet sends for handshaking are causing the system to attempt to interpret
the stream as an STB transfer. If I drop down the stack frame AFTER the
abend and inspect the readStream it does indeed contain the telnet handshake
(255 253 24 255 253 32 .... etc).

Does the full retail ship with source for everything but the primitives ?
Is there a workaround I can use for now to make Dolphin Smalltalk a
candidate for purchase and silence the naysayers ?


Reply | Threaded
Open this post in threaded view
|

Re: Socket problems

Ian Bartholomew-18
Geoff,

>          To the problem -- I seem
> to be able to connect to port 23 (telnet port) on the host, but the
> app abends after the Socket receive method due to an unrecognized STB
> stream.

Socket>>send and Socket>>receive are meant for tx/rx of _objects_
through the socket.  For example, the method source for receive is
(excuse the reformatting)

receive
"Receive and answer a single object through the socket using a one-shot
STBInFiler. Note
that this is a convenience method. If you are intending to receive many
objects through the
socket then it will be more efficient to create your own STBInFiler onto
the socket's
readStream. This method blocks until the object is received"

^(STBInFiler on: self readStream) next

> Does the full retail ship with source for everything but the
> primitives ?

Yes.  All the source code is included with the small exception of a few
methods that are involved with encryption.

>   Is there a workaround I can use for now to make Dolphin
> Smalltalk a candidate for purchase and silence the naysayers ?

Try using Socket>>sendByte: / sendByteArray: / receiveByte /
receiverByteArray.

If you like (and OA don't object?) I can extract and send you the method
comments for the Socket (or whatever) classes.

--
Ian

Use the Reply-To address to contact me.
Mail sent to the From address is ignored.


Reply | Threaded
Open this post in threaded view
|

Re: Socket problems

Ian Bartholomew-18
.... and not forgetting (which I did) that the documentation for the
sockets package can be found in the online help at

http://www.object-arts.com/Lib/EducationCentre4/htm/tcp.ipsocketsconnectivity.htm

--
Ian

Use the Reply-To address to contact me.
Mail sent to the From address is ignored.


Reply | Threaded
Open this post in threaded view
|

Re: Socket problems

Geoff Waddington
Thanks for the quick response Ian, just had a quick look at the Web pages,
my feeble brain should be able to figure it out from here -- Geoff

"Ian Bartholomew" <[hidden email]> wrote in message
news:c1gchj$1gtier$[hidden email]...
> .... and not forgetting (which I did) that the documentation for the
> sockets package can be found in the online help at
>
>
http://www.object-arts.com/Lib/EducationCentre4/htm/tcp.ipsocketsconnectivity.htm
>
> --
> Ian
>
> Use the Reply-To address to contact me.
> Mail sent to the From address is ignored.
>


Reply | Threaded
Open this post in threaded view
|

Re: Socket problems

David Gorisek-5
Just to make it easier for you to sell Dolphin when it comes to sockets and
networking, let me mention that we run multiple web server applications
which are 100% written in Dolphin Smalltalk. This means that we don't use a
special web server, but we developed our own HTTP 1.1 compliant web server
in Dolphin, which is serving on the average more than 100 concurrent users
per machine at a time without hiting the limit yet. The web applications
that we develop and host are complex business applications. For this type of
applications Smalltalk is an ideal environment.

The only problem with the current implementation of sockets is that you need
to have a GUI window on the server. This is about to change in D6.

David Gorisek
http://www.gorisek.com


"Geoff Waddington" <[hidden email]> wrote in message
news:%QO_b.103791$[hidden email]...

> Thanks for the quick response Ian, just had a quick look at the Web pages,
> my feeble brain should be able to figure it out from here -- Geoff
>
> "Ian Bartholomew" <[hidden email]> wrote in message
> news:c1gchj$1gtier$[hidden email]...
> > .... and not forgetting (which I did) that the documentation for the
> > sockets package can be found in the online help at
> >
> >
>
http://www.object-arts.com/Lib/EducationCentre4/htm/tcp.ipsocketsconnectivit
y.htm
> >
> > --
> > Ian
> >
> > Use the Reply-To address to contact me.
> > Mail sent to the From address is ignored.
> >
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Socket problems

rush
In reply to this post by Geoff Waddington
"Geoff Waddington" <[hidden email]> wrote in message
news:%QO_b.103791$[hidden email]...

and to add to David Gorisek positive experiences with Dolphin and sockets,
we use Dolphin as a client to the stock exchange trading system, and it uses
sockets for doing so (with CORBA stucked at the top of them).

Anyway if I am interpreting some of the posts on this group correctly, D6 is
also planned to have new implementation of sockets.

rush
--
http://www.templatetamer.com/