Provided by: libx11-doc_1.8.7-1build1_all bug

NAME

       XkbOpenDisplay -  Checks for a compatible version of the Xkb extension in both the library
       and the server, and initializes the extension for use.

SYNOPSIS

       Display *XkbOpenDisplay (_Xconst char *display_name, int *event_rtrn, int *error_rtrn, int
              *major_in_out, int *minor_in_out, int *reason_rtrn);

ARGUMENTS

       display_name
              hardware display name, which determines the display and communications domain to be
              used

       event_rtrn
              backfilled with the extension base event code

       error_rtrn
              backfilled with the extension base error code

       major_in_out
              compile time lib major version in, server major version out

       minor_in_out
              compile time lib min version in, server minor version out

       reason_rtrn
              backfilled with a status code

DESCRIPTION

       As a convenience, you can use the function XkbOpenDisplay to perform these three tasks  at
       once:  open  a  connection  to  an  X  server,  check  for a compatible version of the Xkb
       extension in both the library and the server, and initialize the extension for use.

       XkbOpenDisplay  is  a  convenience  function  that  opens  an  X  display  connection  and
       initializes  the  X  keyboard  extension. In all cases, upon return reason_rtrn contains a
       status value indicating success or the type of failure. If major_in_out  and  minor_in_out
       are not NULL, XkbOpenDisplay first calls XkbLibraryVersion to determine whether the client
       library is compatible, passing it the values pointed to by major_in_out and  minor_in_out.
       If  the  library  is  incompatible, XkbOpenDisplay backfills major_in_out and minor_in_out
       with the major and minor extension versions of the library being used  and  returns  NULL.
       If   the   library   is  compatible,  XkbOpenDisplay  next  calls  XOpenDisplay  with  the
       display_name.  If this fails, the function returns  NULL.  If  successful,  XkbOpenDisplay
       calls  XkbQueryExtension  and  backfills  the major and minor Xkb server extension version
       numbers in  major_in_out  and  minor_in_out.  If  the  server  extension  version  is  not
       compatible  with  the library extension version or if the server extension is not present,
       XkbOpenDisplay closes the display and returns NULL. When successful, the function  returns
       the display connection.

       The possible values for reason_rtrn are:

       •    XkbOD_BadLibraryVersion indicates XkbLibraryVersion returned False.

       •    XkbOD_ConnectionRefused indicates the display could not be opened.

       •    XkbOD_BadServerVersion  indicates  the  library  and  the  server  have  incompatible
            extension versions.

       •    XkbOD_NonXkbServer indicates the extension is not present in the X server.

       •    XkbOD_Success indicates that the function succeeded.

RETURN VALUES

       NULL           The XkbOpenDisplay function returns NULL if the library is incompatible.

                    The XkbOpenDisplay function returns NULL if the call to XOpenDisplay with the
                    display_name fails.

                    The XkbOpenDisplay function returns NULL and closes the display if the server
                    extension version is not compatible with the library extension version or  if
                    the server extension is not present.

DIAGNOSTICS

       BadAccess      The Xkb extension has not been properly initialized

SEE ALSO

       XkbLibraryVersion(3), XkbQueryExtension(3), XOpenDisplay(3)