March 28, 2024, 09:49:21 AM

News:

IonicWind Snippit Manager 2.xx Released!  Install it on a memory stick and take it with you!  With or without IWBasic!


Network Addon

Started by Parker, September 29, 2007, 04:03:40 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Parker

Networking is something that Aurora and EBasic have needed for quite a while. I'm willing to do it, but since I don't know a whole lot about networking, I really need some input from Aurora/EBasic users before I can start. Please reply to this topic telling me what network-related features you want in a network addon for Aurora. Don't worry about it being too complicated - I'm here to handle the complicated stuff for you ;).

I really do need descriptions of what kinds of things you want, otherwise I won't be able to produce satisfactory results.

When EB1.6 comes out and it is compatible with Aurora, then I can port the headers to EB too, but for now it's just Aurora. I plan on doing a DLL as well as a static library, so it can be used with CBasic too.

Rock Ridge Farm (Larry)


Parker

To start with, I'm thinking of this:

- A simple client class, to form the base for all client-related operations
- A simple server class, to form the base for all (possible) server-related operations

- An HTTP client class, for communicating with HTTP servers
- An FTP client class
- A Mail client class/classes
  - Depending on how mail looks when I look into it, I may need separate SMTP, POP3, (more?) classes

Then after refining these, I can start to look into encryption. I'm not exactly sure what SSH is supposed to do, but it looks like more of a Linux-specific feature than something that belongs in a general purpose network library. Of course, that's just from a quick glance; I could be wrong. That's just the impression I got.

Feedback is appreciated....

Zen

.NET has built in HTTP client and server classes but as for plain old Win32 API you will have to parse all the HTTP 1.1 requests and responses to HTTP 1.1 standards yourself unless you use another third party or you can get hold of some open source code and convert it. The HTTP stuff is quite a big job. FTP is just simple commands so shouldnt be too hard but again the Mail stuff is a bit more complicated, especially if you want to do MIME stuff like for attachements etc.

SSH is a Secure Shell transfer protocol for basically connecting to a remote linux system but over a secure connection defined by SSH Secure Communications LTD. It is basically like telneting into a system but over a secure network stream.

Lewis

Lewis

Zen

October 01, 2007, 08:01:03 PM #4 Last Edit: October 01, 2007, 08:04:09 PM by Zen
Oh and to be perfectly honest it would be a lot easier to implement things such as SSL or TSL into the code as you are developing it or at least design the code to be able to easily add it after or you will probably find yourself having to change a lot once you decide to allow your HTTP classes to use SSL or TSL

Lewis

EDIT: Your best bet would to use the OpenSSL library as it is the most widely used and is very good. Unless you like heavy maths then you can always write your own SSL layer  :P

Parker

Thanks. I guess I'll deal with it all when I get there. It just slows you down to worry about the work ahead of you.

Zen

Wory is like a rocking horse... Gives you something to do but never gets you anywhere ;-).

I guess with me having a web background i just thought id let you know what is involved.

Lewis