discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Discuss-gnustep Digest, Vol 3, Issue 2


From: Richard Frith-Macdonald
Subject: Re: Discuss-gnustep Digest, Vol 3, Issue 2
Date: Mon, 3 Feb 2003 19:08:44 +0000


On Monday, February 3, 2003, at 06:38  pm, Jonathan Gapen wrote:

> Date: Mon, 3 Feb 2003 04:37:10 -0600
> From: Terry Glass <taglass75@bellsouth.net>
> Subject: NSSocketPort broken in CVS?
>
> I rebuilt base and didn't see anything about NSSocketPort being
> compiled.  Was it inadvertently left out of the makefile?

      That is a negative.  I put it in CVS, but did not add it to the
Makefile, as I have not tested whether it compiles on any system other
than FreeBSD.
      It contains only minimal functionality anyway; basically it's an
object wrapper for a BSD socket.  You can use the initialization
functions to create an object, then get the socket to initialize an
NSFileHandle to read and write from it.  I figure it is useful for two
reasons: 1) Insulates your code against the vagaries of the various BSD
socket implementations, and 2) automatically handles closing the socket
when the object is deallocated.

The GNUstep NSFileHandle code already has stuff to do all that.

      There was talk a few months ago about re-working the distributed
objects system to use local communication (NSMessagePort) by default,
and roll the TCP/IP functionality from GSTcpPort into the NSSocketPort
class. I'm in favor of the change. (NSSocketPort is set up, though, so
that you can use any network protocol that supports reliable, data
stream connections.  GSTcpPort needs some changes to do that.)
Further, I wonder if NSMessagePort could be implemented using NSSocketPort on the local protocol family (PF_LOCAL), or NSMachPort on systems that support Mach ports (Darwin, Hurd, NetBSD with COMPAT_MACH and others)?

I'd really like to get time to do that ... I have a partially written class where I'm trying to factor out all the code from NSFileHandle/GSFileHandle which
deals with various networking options, so I can make both the concrete
NSPort and NSFileHandle implementations use the same lowish-level
I/O facilities ... bsd sockets (tcp and unix domain), sysv streams, pipes etc.
SSL encryption and data compression too.

Unfortunately, I'm finding it hard to get time to work on it.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]