[comp.windows.x] client communication

pcb@usl.usl.edu (Peter C. Bahrs) (04/01/89)

I'm semi-new to X11R3, most experience has been in MS Windows.

I need to have independent clients 'talk' to each other.  I do not want
to use any OS specific calls, (i.e. sockets, ...) as a clients are on the
IBM 3090, SUN 3 and IBM RT.  I would like to set up some kind of byte stream
communicaton.

I have found references to cut and paste operations and selections?

Are these the (or only) options I have?
Does anyone have any small sample code that demonstrates communication?

/*------------Thanks in advance...---------------------------------------+
| Peter C. Bahrs                         UUCP ... !uunet!dalsqnt!usl!pcb |
| The USL-NASA Project                        ... !cs.utexas.edu!usl!pcb |
| Center For Advanced Computer Studies   INET  pcb@usl.usl.edu           |
| University of Southwestern Louisiana                                   |
| Lafayette, LA 70504                                                    |
+-----------------------------------------------------------------------*/

diamant@hpfclp.SDE.HP.COM (John Diamant) (04/03/89)

> I have found references to cut and paste operations and selections?

Read about them in the Inter-Client Communication Conventions Manual as well
as the Xlib manual.

> Are these the (or only) options I have?
> Does anyone have any small sample code that demonstrates communication?

You can also send ClientMessages between clients and pass data which is too
large for the event in properties (store the property on a window whose id
is passed in the client message, and the send a client message telling the
other application to get the data off the window).


John Diamant
Software Engineering Systems Division
Hewlett-Packard Co.		ARPA Internet: diamant@hpfclp.sde.hp.com
Fort Collins, CO		UUCP:  {hplabs,hpfcla}!hpfclp!diamant

reed@eds.COM (Brad Reed) (04/04/89)

>From: uunet!AMES.ARC.NASA.GOV!killer!usl!pcb  (Peter C. Bahrs)
>Organization: CACS, Lafayette, LA, USA
>Subject: client communication
>Message-Id: <785@usl.usl.edu>
>Sender: uunet!expo.lcs.mit.edu!xpert-request
>To: xpert@expo.lcs.mit.edu
>
>I need to have independent clients 'talk' to each other.  I do not want
>to use any OS specific calls, (i.e. sockets, ...) as a clients are on the
>IBM 3090, SUN 3 and IBM RT.  I would like to set up some kind of byte stream
>communicaton.

What operating system is running on the 3090?  Socket or stream interfaces
may be available there.

Suns and RTs support sockets.  Why do you want to use X (for this purpose)?
An X display server has little meaning in the context of a 3090, although
X clients are another story.

>I have found references to cut and paste operations and selections?

If you decide to use X for your process to process communication, I suggest
you carefully weigh the advantages and disadvantages.  Will your application
cause data to hit the network twice?  Will each distributed application
need a X server connection?  What naming services are needed for short term?
Longterm?  Is byte swapping a sufficient presentation service for your
application?

>Are these the (or only) options I have?

You could isolate your code from the socket or stream interfaces with
a kind of "firewall".  Keep the socket and protocol dependencies out of
your application.

>Does anyone have any small sample code that demonstrates communication?

If you have the X source you can look at the os modules.

I know this isn't a good answer.  Currently, there are many opinions on
this issue.  Any one else?

Brad Reed                   |  (313) 265-6525
EDS/TSD, 750 Tower Dr.      |  Arpanet: reed@edsews.eds.com    
Troy, MI 48007-7019         |  UUCP:    uunet!edsews!reed