X11R5 clients on AIX3.2 X11R4 server

X11R5 clients on AIX3.2 X11R4 server

Post by Derek N » Wed, 08 Apr 1992 01:42:38



I built the X11R5 clients on an RS6000/530 which
we just upgraded to AIX 3.2. For some reason the
X11R5 clients (such as xterm) cannot connect to
the X11R4 ibm server unless I use the -display hostname:0
option to each program. It seems that clients by default
use the -display :0 or -display unix:0 connection.
Does anyone have any idea of why this is happening. Is
there some R5->R4 backwards compatiblity option available
when compiling R5? I am assuming that using the
-display hostname:0 option would cause the clients to
display slower because it is using a tcp/ip connection
protocol. Please respond via e-mail.

Thanks, Derek Ney

 
 
 

X11R5 clients on AIX3.2 X11R4 server

Post by Frederick Staa » Wed, 08 Apr 1992 03:37:04



>I built the X11R5 clients on an RS6000/530 which
>we just upgraded to AIX 3.2. For some reason the
>X11R5 clients (such as xterm) cannot connect to
>the X11R4 ibm server unless I use the -display hostname:0
>option to each program. It seems that clients by default
>use the -display :0 or -display unix:0 connection.
>Does anyone have any idea of why this is happening. Is
>there some R5->R4 backwards compatiblity option available
>when compiling R5? I am assuming that using the
>-display hostname:0 option would cause the clients to
>display slower because it is using a tcp/ip connection
>protocol. Please respond via e-mail.

>Thanks, Derek Ney


AIX 3.2 uses BSD 4.4 TCP/IP code.  The binary interface is the
same but some minor changes are needed at the source level (I have
run into this with X11R5 and the monitor 1.5.1 program.

Here is a patch that I got from somone over the net:

Source size before building ~90 MBytes.

From root Thu Mar 12 08:05:50 1992
Received: from INTELLICORP.COM by scipp.UCSC.EDU (AIX 3.1/UCB 5.61/4.03)
          id AA28328; Thu, 12 Mar 92 08:05:48 -0800

Date: Thu, 12 Mar 92 08:02:28 PST

Subject: Re: Building X11R5pl9 under AIX 3.2... UNIXCONN problems...




Status: RO

|Well the X11R5 builds under AIX 3.2 without problem.  However the the
|clients and server do not seem to be able to use the unix sockets
|connections but TCP/IP connections work.  I am using the same sources
|I used to build under AIX 3.1.
|
|xinit gets a "waiting for X server to begin acceptin connections."
|and waits forever.
|
|xclock X11R5 client under the X11R4 server:
|
|       xclock gets a "Error: Can't open display: unix:0"
|
|       DISPLAY=hostname:0 xclock works.
|
|I'm going to look into it farther but I don't really know where
|to start.  Any suggestions?
|

Well, IBM did some incompatible source level change in the sockaddr
structure they added one more field `sun_len' at the beginning of the
structure.  It is still binary compatible with the library compiled
uner aix 3.1 but not source compatible.

I just send out a bug report to xbugs.  Here is the changes that you
need have. I have not any clean way to conditionalize it only for aix3.2.

Minh Tran-Le.

---------------------------------------------------------------------------
*** XConnDis.c- Fri Sep 13 18:20:28 1991
--- XConnDis.c  Wed Mar 11 11:29:51 1992
***************
*** 442,450 ****

      unaddr.sun_family = AF_UNIX;
      sprintf (unaddr.sun_path, "%s%d", X_UNIX_PATH, idisplay);

      addr = (struct sockaddr *) &unaddr;
!     addrlen = strlen(unaddr.sun_path) + sizeof(unaddr.sun_family);

  #ifdef hpux /* this is disgusting */
      ounaddr.sun_family = AF_UNIX;
--- 442,451 ----

      unaddr.sun_family = AF_UNIX;
      sprintf (unaddr.sun_path, "%s%d", X_UNIX_PATH, idisplay);
+     unaddr.sun_len = strlen(unaddr.sun_path);

      addr = (struct sockaddr *) &unaddr;
!     addrlen = (sizeof(unaddr) - sizeof(unaddr.sun_path) + unaddr.sun_len);

  #ifdef hpux /* this is disgusting */
      ounaddr.sun_family = AF_UNIX;
-------

--
Frederick Staats

Santa Cruz Institute for Particle Physics
University of California at Santa Cruz

 
 
 

X11R5 clients on AIX3.2 X11R4 server

Post by Vance Ba » Thu, 09 Apr 1992 00:30:18



>I built the X11R5 clients on an RS6000/530 which
>we just upgraded to AIX 3.2. For some reason the
>X11R5 clients (such as xterm) cannot connect to
>the X11R4 ibm server unless I use the -display hostname:0
>option to each program. It seems that clients by default
>use the -display :0 or -display unix:0 connection.
>Does anyone have any idea of why this is happening. Is
>there some R5->R4 backwards compatiblity option available
>when compiling R5? I am assuming that using the
>-display hostname:0 option would cause the clients to
>display slower because it is using a tcp/ip connection
>protocol. Please respond via e-mail.


As mentioned in another follow-up article, the problem stems
from the change from 4.3 to 4.4 sockets.  I saw the same
problems at AIX 3.2 Beta level 9149, but I talked to one
of the developers about it and was told that they were
modifying the libraries to work with both socket
conventions.
In fact, when I updated our machines to the product
level ("golden") AIX 3.2, the problems disappeared.
Are you still having this after having installed product
code, or are you still running beta-test code?

--
+----------------------------------------------------------------------+        
Vance Bass                      I work for IBM.  My opinions are my own.
IBM                                      The facts speak for themselves.

 
 
 

X11R5 clients on AIX3.2 X11R4 server

Post by Hirotaka Matsumo » Fri, 10 Apr 1992 02:11:22


When I modified XConnDis.c as mentioned in the news attached below and made
new libX11.a, the R5 clients can not talk with 3.2 R4 X-Server by "unix:0".
( Of course it can talk with R4 X-Server by "hostname:0" ) Why do you think
it can not run with "unix:0" ?

Hirotaka Matsumoto

========== Attached News ==========

Quote:>---------------------------------------------------------------------------
>*** XConnDis.c-     Fri Sep 13 18:20:28 1991
>--- XConnDis.c      Wed Mar 11 11:29:51 1992
>***************
>*** 442,450 ****

>      unaddr.sun_family = AF_UNIX;
>      sprintf (unaddr.sun_path, "%s%d", X_UNIX_PATH, idisplay);

>      addr = (struct sockaddr *) &unaddr;
>!     addrlen = strlen(unaddr.sun_path) + sizeof(unaddr.sun_family);

>  #ifdef hpux /* this is disgusting */
>      ounaddr.sun_family = AF_UNIX;
>--- 442,451 ----

>      unaddr.sun_family = AF_UNIX;
>      sprintf (unaddr.sun_path, "%s%d", X_UNIX_PATH, idisplay);
>+     unaddr.sun_len = strlen(unaddr.sun_path);

>      addr = (struct sockaddr *) &unaddr;
>!     addrlen = (sizeof(unaddr) - sizeof(unaddr.sun_path) + unaddr.sun_len);

>  #ifdef hpux /* this is disgusting */
>      ounaddr.sun_family = AF_UNIX;
>-------

 
 
 

1. X11R5 clients and AIXWindows server on RS/6000 (AIX3.2)

We've recently gotten an RS/6000 with a grayscale display and I've
been trying to get the X11R5 clients to work with the supplied IBM
X11R4ish server (since the greyscale adapter is not supported by the
MIT X11R5 sample server) and I cannot seem to get them to connect to
the display.  I've tried both the UNIX domain and TCP socket
connections and the X11R5 client simply says "cannot open display"
(I've even tried "xhost +" to no avail).
The clients do work for TCP connections to X11R5 servers on Sun
SPARCstations and NCD Xterminals.

Does anyone have an idea of what is going on?  I'm using the MIT
X11R5 patchlevel 16 sources.

--
Joseph Young, Systems Programmer
KSU Department of Computing and Information Sciences
Manhattan, Kansas 66506  FAX: (913) 532-7353  Phone: (913) 532-6350  

2. changing machine time

3. Hanging X11R4 server under AIX3.2.1

4. Where do I get the Solaris 4.x hardware compatibility list?

5. mit X11R5 server on RS6000/AIX3.2

6. PA Opportunity

7. X11R4 on RS6000/AIX3.1

8. WindowMaker

9. X11R4 client<->server communication question (sockets question)

10. X11R4 clients on AIX 3.1 (3003+) server

11. compiling emacs18.59 with gcc-2.3.3 on X11R5 (not X11R4)

12. X11R5 vs X11R4 on AIX -- what about DPS?

13. X11r4 or X11r5 on AIX 3.2.*