DisplaysPerHostDisplaysPerHost=1
To prevent attackers from filling up the pending queue, GDM
will only allow one connection for each remote computer.  If
you want to provide display services to computers with more
than one screen, you should increase the
DisplaysPerHost value accordingly.
Note that the number of connections from the local computer is
unlimited.  Only remote connections are limited by this number.
EnableEnable=false
Setting this to true enables XDMCP support allowing remote
displays/X terminals to be managed by GDM.
gdm listens for requests on UDP port 177.
See the Port option for more information.
If GDM is compiled to support it, access from remote displays
can be controlled using the TCP Wrappers library. The service
name is gdm
You should add
gdm:.my.domain
to your <etc>/hosts.allow, depending on your
TCP Wrappers configuration.  See the
hosts.allow(5)
man page for details.
Please note that XDMCP is not a particularly secure protocol
and that it is a good idea to block UDP port 177 on your
firewall unless you really need it.
EnableProxyEnableProxy=false
Setting this to true enables support for running XDMCP sessions
on a local proxy X server. This may improve the performance of
XDMCP sessions, especially on high latency networks, as many
X protocol operations can be completed without going over the
network.
Note, however, that this mode will significantly increase the
burden on the server hosting the XDMCP sessions
See the FlexiProxy and
FlexiProxyDisconnect options for further
details on how to configure support for this feature.
HonorIndirectHonorIndirect=true
Enables XDMCP INDIRECT choosing (i.e. remote execution of
gdmchooser) for X-terminals which don't
supply their own display browser.
MaxPendingMaxPending=4
To avoid denial of service attacks, GDM has fixed size queue
of pending connections. Only MaxPending displays can start at
the same time.
Please note that this parameter does *not* limit the number of
remote displays which can be managed. It only limits the number
of displays initiating a connection simultaneously.
MaxPendingIndirectMaxPendingIndirect=4
GDM will only provide MaxPendingIndirect
displays with host choosers simultaneously.  If more queries
from different hosts come in, the oldest ones will be
forgotten.
MaxSessionsMaxSessions=16
Determines the maximum number of remote display connections
which will be managed simultaneously. I.e. the total number of
remote displays that can use your host.
MaxWaitMaxWait=30
When GDM is ready to manage a display an ACCEPT packet is sent
to it containing a unique session id which will be used in
future XDMCP conversations.
GDM will then place the session id in the pending queue
waiting for the display to respond with a MANAGE request.
If no response is received within MaxWait seconds, GDM will
declare the display dead and erase it from the pending queue
freeing up the slot for other displays.
MaxWaitIndirectMaxWaitIndirect=30
The MaxWaitIndirect parameter determines the maximum number of
seconds between the time where a user chooses a host and the
subsequent indirect query where the user is connected to the
host.  When the timeout is exceeded, the information about the
chosen host is forgotten and the indirect slot freed up for
other displays.  The information may be forgotten earlier if
there are more hosts trying to send indirect queries then
MaxPendingIndirect.
PortPort=177
The UDP port number gdm should listen to
for XDMCP requests. Don't change this unless you know what
you are doing.
PingIntervalSecondsPingIntervalSeconds=15
Interval in which to ping the X server in seconds.  If the X
server doesn't return before the next time we ping it, the
connection is stopped and the session ended.  This is a
combination of the XDM PingInterval and PingTimeout, but in
seconds.
Note that GDM in the past used to have a
PingInterval configuration key which was
also in minutes.  For most purposes you'd want this setting
to be lower then one minute however since in most cases where
XDMCP would be used (such as terminal labs), a lag of more
than 15 or so seconds would really mean that the terminal was
turned off or rebooted and you would want to end the session.
ProxyReconnectFlexiProxyReconnect=
Setting this option enables experimental support for session
migration with XDMCP sessions. This enables users to disconnect
from their session and later reconnect to that same session,
possibly from a different terminal.
In order to use this feature, you must have a nested X server
available which supports disconnecting from its parent X server
and reconnecting to another X server. Currently, the Distributed
Multihead X (DMX) server supports this feature to some extent
and other projects like NoMachine NX are busy implementing it.
This option should be set to the path of a command which will
handle reconnecting the XDMCP proxy to another backend display.
A sample implementation for use with DMX is supplied.
ProxyXServerProxyXServer=
The X server command line for a XDMCP proxy. Any nested X server
like Xnest, Xephr or Xdmx should work fairly well.
WillingWilling=<etc>/gdm/Xwilling
When the server sends a WILLING packet back after a QUERY it
sends a string that gives the current status of this server.
The default message is the system ID, but it is possible to
create a script that displays customized message.  If this
script doesn't exist or this key is empty the default message
is sent.  If this script succeeds and produces some output,
the first line of it's output is sent (and only the first
line).  It runs at most once every 3 seconds to prevent
possible denial of service by flooding the server with QUERY
packets.
