Annotation of 43BSD/contrib/X/doc/Xlib/ch11a.t, revision 1.1.1.1

1.1       root        1: .NH
                      2: Other X Server Functions
                      3: .XS
                      4: Other X Server Functions
                      5: .XE
                      6: .NH 2
                      7: Access Control
                      8: .PP
                      9: .IN "Access Control"
                     10: .IN "Internet Addresses"
                     11: .IN "DECnet Addresses"
                     12: .IN "Authentication"
                     13: X does not provide any protection on a per-window basis.
                     14: If you find out the resource id of a resource, you can manipulate it.
                     15: To provide some minimal level of protection, however,
                     16: connections are only permitted from machines you trust.
                     17: This is adequate on single user workstations, but obviously
                     18: breaks down on timesharing machines.
                     19: In the long run, it is expected that X will use a real network
                     20: authentication server, so we have only minimal facilities for the
                     21: time being.
                     22: Both DECnet and TCP domains are possible to use.
                     23: .PP
                     24: .IN "Default Protection"
                     25: On a VAX, the initial set of hosts allowed to open connections consists
                     26: .IN "File" "/etc/X?.hosts"
                     27: of:
                     28: .sp
                     29:    \(bu the host the window system is running on
                     30:    \(bu each host listed in \fI/etc/X?.hosts\fP, where `?' is the number of the
                     31: display.
                     32: .sp
                     33: This file should consist of host names separated by newlines.
                     34: DECnet nodes must terminate in ``::'' to distinguish them from internet hosts.
                     35: .FD
                     36: .IN "Definitions" "XAddHost"
                     37: .IN "XAddHost"
                     38: .IN "File" "<sys/socket.h>"
                     39: #include <sys/socket.h>
                     40: XAddHost (host)
                     41:        struct in_addr *host;   /* network address */
                     42: .FN
                     43: Add the specified host to the list of hosts allowed to open connections
                     44: to this display.
                     45: The display hardware must be on the same host as the program issuing the
                     46: command.
                     47: .FD
                     48: .IN "Definitions" "XAddNode"
                     49: .IN "XAddNode"
                     50: .IN "File" "<netdnet/dn.h>"
                     51: #include <netdnet/dn.h>
                     52: XAddNode (node)
                     53:        struct dn_naddr *node;  /* network address */
                     54: .FN
                     55: Add the specified DECnet node to the list of nodes allowed to open connections
                     56: to this display.
                     57: The display hardware must be on the same host as the program issuing the
                     58: command.
                     59: .FD
                     60: .IN "Definitions" "XRemoveHost"
                     61: .IN "XRemoveHost"
                     62: .IN "File" "<sys/socket.h>"
                     63: #include <sys/socket.h>
                     64: XRemoveHost (host)
                     65:        struct in_addr *host;   /* network address */
                     66: .FN
                     67: Remove the specified host from the list of hosts allowed to open
                     68: connections to the display.  
                     69: The display hardware must be on the same host as the
                     70: client process.
                     71: If you remove your machine from the access list, no new connections
                     72: can be made.
                     73: There is no way back from this call short of logout!
                     74: .FD
                     75: .IN "Definitions" "XRemoveNode"
                     76: .IN "XRemoveNode"
                     77: .IN "File" "<netdnet/dn.h>"
                     78: #include <netdnet/dn.h>
                     79: XRemoveNode (node)
                     80:        struct dn_naddr *node;  /* network address */
                     81: .FN
                     82: Remove the specified DECnet node from the list of nodes allowed to open
                     83: connections to the display.  
                     84: The display hardware must be on the same node as the
                     85: client process.
                     86: If you remove your machine from the access list, no new connections
                     87: can be made.
                     88: There is no way back from this call short of logout!
                     89: .FD
                     90: .IN "Definitions" "XGetHosts"
                     91: .IN "XGetHosts"
                     92: .IN "File" "<sys/socket.h>"
                     93: #include <sys/socket.h>
                     94: struct in_addr *XGetHosts (nhosts)
                     95:        int *nhosts;    /* RETURN */
                     96: .FN
                     97: Returns the current list of hosts allowed to open connections.
                     98: This allows a program to find out what machines can make connections.
                     99: Space is allocated and function returns a pointer to an array of hosts in the list.
                    100: The number of hosts are returned in the \fInhosts\fP argument.
                    101: This memory should be freed when no longer in use.
                    102: .FD
                    103: .IN "Definitions" "XGetNodes"
                    104: .IN "XGetNodes"
                    105: .IN "File" "<netdnet/dn.h>"
                    106: #include <netdnet/dn.h>
                    107: struct dn_naddr *XGetNodes (nnodes)
                    108:        int *nnodes;    /* RETURN */
                    109: .FN
                    110: Returns the current list of DECnet nodes allowed to open connections.
                    111: This allows a program to find out what machines can make connections.
                    112: Space is allocated and function returns a pointer to an array of hosts in the list.
                    113: The number of nodes are returned in the \fInodes\fP argument.
                    114: This memory should be freed when no longer in use.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.