Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
Xau(3)									Xau(3)

NAME
       Xau  library:  XauFileName,  XauReadAuth,  XauLockAuth,	XauUnlockAuth,
       XauWriteAuth, XauDisposeAuth, XauGetAuthByAddr, XauGetBestAuthByAddr  -
       X authority database routines

SYNOPSIS
       #include	<X11/Xauth.h>

       typedef struct xauth {
	    unsigned short family;
	    unsigned short address_length;
	    char	   *address;
	    unsigned short number_length;
	    char	   *number;
	    unsigned short name_length;
	    char	   *name;
	    unsigned short data_length;
	    char	   *data;
       } Xauth;

       char *XauFileName (void);

       Xauth *XauReadAuth (FILE	*auth_file);

       int XauWriteAuth	(FILE *auth_file, Xauth	*auth);

       Xauth *XauGetAuthByAddr (unsigned short family, unsigned	short
	      address_length, char *address, unsigned short
	      number_length, char *number);

       Xauth *XauGetBestAuthByAddr (unsigned short family, unsigned short
	      address_length, char *address, unsigned short
	      number_length, char *number, int types_length, char
	      **types, int *type_lengths);

       int XauLockAuth (char *file_name, int retries, int
	      timeout, long dead);

       int XauUnlockAuth (char *file_name);

       int XauDisposeAuth (Xauth *auth);

DESCRIPTION
       XauFileName  generates  the  default  authorization  file name by first
       checking	the XAUTHORITY environment variable if set,  else  it  returns
       $HOME/.Xauthority.  This	name is	statically allocated and should	not be
       freed.

       XauReadAuth reads the next entry	from  auth_file.   The	entry  is  not
       statically allocated and	should be freed	by calling XauDisposeAuth.

       XauWriteAuth  writes an authorization entry to auth_file.  It returns 1
       on success, 0 on	failure.

       XauGetAuthByAddr	searches for an	entry which matches the	given  network
       address/display number pair.  The entry is not statically allocated and
       should be freed by calling XauDisposeAuth.

       XauGetBestAuthByAddr is similar to XauGetAuthByAddr, except that	a list
       of acceptable authentication methods is specified.  Xau will choose the
       file entry which	matches	the earliest entry in  this  list  (e.g.,  the
       most  secure authentication method).  The types argument	is an array of
       strings,	one string for each authentication method.  types_length spec-
       ifies  how  many	 elements are in the types array.  types_lengths is an
       array of	integers representing the length of each string.

       XauLockAuth does	the work necessary to synchronously update  an	autho-
       rization	file.  First it	makes two file names, one with ``-c'' appended
       to file_name, the other with  ``-l''  appended.	 If  the  ``-c''  file
       already	exists	and is more than dead seconds old, XauLockAuth removes
       it and the associated ``-l'' file.  To prevent possible synchronization
       troubles	with NFS, a dead value of zero forces the files	to be removed.
       XauLockAuth makes retries attempts to create and	link the  file	names,
       pausing	timeout	 seconds  between each attempt.	 XauLockAuth returns a
       collection of values depending on the results:

	    LOCK_ERROR	   A system error occurred, either a file_name
			   which is too	long, or an unexpected failure from
			   a system call.  errno may prove useful.

	    LOCK_TIMEOUT   retries attempts failed

	    LOCK_SUCCESS   The lock succeeded.

       XauUnlockAuth undoes the	work of	 XauLockAuth  by  unlinking  both  the
       ``-c'' and ``-l'' file names.

       XauDisposeAuth  frees storage allocated to hold an authorization	entry.

SEE ALSO
       xauth(1), xdm(1)

AUTHOR
       Keith Packard, MIT X Consortium

XFree86				 Version 4.7.0				Xau(3)

NAME | SYNOPSIS | DESCRIPTION | SEE ALSO | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Xau&sektion=3&manpath=XFree86+4.7.0>

home | help