Re: Help on sending a UDP Packet

"[email protected]" <[email protected]>
Newsgroups gmane.comp.lang.smalltalk.gnu.general
Message-ID <[email protected]>
Gary,

Here's a tcpdump in my case of the UDP test on port 13 between two different systems 
(192.168.0.1 and 192.168.0.2) :

# tcpdump -i net1 -nn -n -A port 13
dropped privs to nobody
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on net1, link-type EN10MB (Ethernet), capture size 262144 bytes
20:15:17.760479 IP 192.168.0.1.49167 > 192.168.0.2.13: UDP, length 11
E..'.W.....................xhello world
20:15:17.767964 IP 192.168.0.2.13 > 192.168.0.1.49167: UDP, length 26
E..6....<..b............."..Tue Jan 12 20:15:16 2021

^C
2 packets captured

The host 192.168.0.1 is running GNU smalltalk.
The host 192.168.0.2 is the one running the datagram daytime service.

Regards,
David Stes

----- Op 12 jan 2021 om 17:28 schreef Gary Highberger [email protected]:

> Hi David and everybody,
> 
> I just sent my first UDP packet with Smalltalk Sockets. It's likely just me
> but there might be some instability in gst. Somehow my Datagram Socket got
> wiped out. I'm going to run tests and publish my findings here.
> 
> Have GNU Smalltalk Sockets and the VM been proven in real world
> applications?
> 
> Packet:
> $ sudo tcpdump -i 1 -nn -n -A port 49152
> tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
> listening on wlp3s0, link-type EN10MB (Ethernet), capture size 262144 bytes
> 10:53:15.131345 IP 192.168.1.114.49153 > 192.168.1.249.49152: UDP, length 27
> E..7..@[email protected].........#..  Hi sailor! New in town?
> 
> Smalltalk:
> st> PackageLoader fileInPackage: 'Sockets'
> "Global garbage collection... done"
> Loading package Sockets
> PackageLoader
> st> DgS := Sockets.DatagramSocket remote: '192.168.1.249' port: 49152
> local: '192.168.1.114' port: 49153
> Sockets.DatagramSocket[192.168.1.114:49153]
> st> DgD := Sockets.Datagram data: '  Hi sailor! New in town?  '
> a Datagram
> st> DgS nextPut: DgD
> Sockets.DatagramSocket[192.168.1.114:49153]
> Voila
> 
> Many thanks for the help everybody!
> 
> Gary
> 
> On Sun, Jan 10, 2021 at 1:49 PM Gary Highberger <[email protected]>
> wrote:
> 
>> Hello David and all,
>>
>> I have a few (noob) questions about the UDP example Smalltalk program.
>> More questions likely to follow as I come up to speed. Your patience is
>> much appreciated David and everybody.
>>
>> QUESTIONS:
>> •  Is "_" the preferred assignment operator? I've been seeing ":=" too. I
>> don't have a back arrow on my keyboard. I guess the PARC people used "_".
>>
>> •  Does statement 1)
>> assign the destination IP address? Note that for my application, the
>> source and destination addresses will be different.
>>
>> •  Does statement 3)
>> populate the (UDP) datagram socket with the message, port, and address?
>> Why a "#" symbol prefixing the message string, 'hello world'?
>>
>> •  Does statement 4)
>> create a listening socket?
>>
>> •  Does statement 5)
>> trigger the send?
>>
>> •  Does statement 6)
>> block until the UDP response?
>>
>> +---------------------------------------------------------+
>>
>> UDP Smalltalk (example) program:
>>
>> 1) h _ Sockets.SocketAddress createLoopbackHost.
>>
>> 2) s _ Sockets.DatagramSocket new.
>>
>> 3) d _ Sockets.Datagram data:#'hello world' address:h port:13.
>>
>> 4) answer _ Sockets.Datagram new.
>>
>> 5) s nextPut:d.
>>
>> 6) s receive:answer.
>>
>> 7) (answer data) asString printNl.
>>
>> 8) s close.
>>
>> Gary Highberger
>>
>>
>> On Sun, Jan 10, 2021, 8:48 AM Gary Highberger <[email protected]>
>> wrote:
>>
>>> Good morning David,
>>>
>>> I'm not familiar with 'daytime' but will come up to speed on it and get
>>> it and your use cases running and report my findings for everybody to see.
>>>
>>> Hopefully netTest.c explains what I'm trying to do with Smalltalk. It's
>>> very short and simple.
>>>
>>> https://www.dropbox.com/s/xc23wj6r5aqh153/netTest.c?dl=0
>>>
>>> I used my cell phone as the destination, my home WiFi as the network, and
>>> tcpdump to see the packet.
>>>
>>> Thank you David for the Smalltalk code fragments and introducing me to
>>> inetd and 'daytime'.
>>>
>>> Gary Highberger
>>>
>>>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.