[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference bulova::decw_jan-89_to_nov-90

Title:DECWINDOWS 26-JAN-89 to 29-NOV-90
Notice:See 1639.0 for VMS V5.3 kit; 2043.0 for 5.4 IFT kit
Moderator:STAR::VATNE
Created:Mon Oct 30 1989
Last Modified:Mon Dec 31 1990
Last Successful Update:Fri Jun 06 1997
Number of topics:3726
Total number of notes:19516

2647.0. "Access using XAddHost?" by TOWNS::RUFFIEUX () Tue Apr 24 1990 14:10

    Hello,
    
    	Under VMS V5.3 DECW V2.0 we are trying to grant access to a display
    from within a client application.  The method we have chosen to use
    is calling XAddHost.  For some reason we just cannot get this to work.
    The XAddHost call needs the parameters display and XHostAddress.  The
    latter structure is built like so:
    
    	typedef struct {
    	    int family;		/* Decnet */
    	    int length;		/* sizeof(address)*/
    	    char *address;      /* pointer to wher to find the address*/
    	} XHostAddress;
    
    1)  Does anybody know how to specify the address from a DECnet address.
    
    2)  If so, do you have an example in VMS showing how to add a display
        access for a client using XAddHost.
    
    3)  Is this possible from a client applicaton in VMS.
    
    
    I've seen Xhost from MIT but there are too many calls I cant find in
    VMS.
    
    
    						Thank You,
    
    
    						CER
    
    
    	   
T.RTitleUserPersonal
Name
DateLines
2647.1Some hintsSTAR::VATNEPeter Vatne, VMS DevelopmentTue Apr 24 1990 17:146
I've never tried this myself, but from reading the code, I believe
the length of a DECnet address is 2, and the DECnet address is the
2-byte Phase IV DECnet address.

I suggest you post an excerpt from your program so we can see if
there is some obvious error in your calling sequence.
2647.2This seems to work sometimesTOWNS::RUFFIEUXThu Apr 26 1990 16:3028
    re .1
    
    Here is what I came up with.  It only works some of the time for some
    reason.
    
    #include <decw$include:xlib.h>
    #include stdio
    main()
    {
    	XHostAddress	*list;
    	XHostAddress	ha;
    	int		num_hosts;
    	Bool		enabled = False;
    	Display		*dpy;
    	short		nodeAdd = 37019;  /* DECnet node address .*/
    
    	dpy = XOpenDisplay(NULL);
    
    	XListHosts(dpy,&num_hosts,&enabled);
    	printf("Number of hosts before addhost is %d\n",num_hosts);
        ha.family = FamilyDECnet;
    	ha.length = sizeof(nodeAdd);
    	ha.address = (char *)&nodeAdd;
        XAddHost(dpy,&ha);
        XListHosts(dpy,&num_hosts,&enabled);
    	printf("Number of hosts after addhost is %d\n",num_hosts);
    }
                                                                    
2647.3KONING::KONINGNI1D @FN42eqTue May 01 1990 19:515
Does it really use the address and not the name?  This sounds strange, since
it's so much easier for applications to get the name rather than the
address.

	paul