Xserver revision 1018
0N/A# Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved. 0N/A# Permission is hereby granted, free of charge, to any person obtaining a 0N/A# copy of this software and associated documentation files (the "Software"), 0N/A# to deal in the Software without restriction, including without limitation 0N/A# the rights to use, copy, modify, merge, publish, distribute, sublicense, 0N/A# and/or sell copies of the Software, and to permit persons to whom the 0N/A# Software is furnished to do so, subject to the following conditions: 0N/A# The above copyright notice and this permission notice (including the next 0N/A# paragraph) shall be included in all copies or substantial portions of the 0N/A# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 0N/A# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 0N/A# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 0N/A# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 816N/A# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 0N/A# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 0N/A# DEALINGS IN THE SOFTWARE. 392N/AUSAGE=
"Usage: $0 [-c <class>] :<display> [<X server arguments>]" 392N/A# Users must not modify this script to change them - change via SMF properties 804N/A # Strip leading ":" from $1 to get display number 889N/Aif [[
"${REMOTE}" ==
"true" ]] ;
then 804N/A# 1) name of SMF property to find in one of the service instances 804N/A# 2) name of variable to store the value of the property in, if found 804N/A# Also sets variable with name of $2_INSTANCE to the service instance the 804N/A# property was found in, for use in later messages. 804N/A # Make ${propval} be a reference to the variable named as the second arg 804N/A # The "" instance is to get the properties from the base service without 804N/A # any instance specifier 392N/A if [[ "${propval}" == "\"\"" ]] ; then 804N/A # Canonicalize path, so that we don't break people who specified path 804N/A # via the /usr/X -> openwin or X11 link 804N/A # Automatically select replacements for removed X servers 0N/A# Make sure ${XSERVER} is a known X server binary 0N/A if [[
"${DEFDEPTH}" !=
"" ]] ;
then 804N/A# Should not happen, but just in case 804N/Aif [[
"${TCP_LISTEN}" ==
"" ]] ;
then 804N/A if [[
"${REMOTE}" ==
"true" ]] ;
then 804N/Aif [[
"${TCP_LISTEN}" ==
"false" ]] ;
then 804N/Aif [[
("${CONSOLE}" == "true") &&
("${DISPLAY}" == "0") ]] ;
then 804N/A# Currently only Xorg accepts a command line flag for choosing config files. 804N/A# If other X servers add such flags in the future, they should be added here. 804N/A# Only filenames without directory paths are allowed (similar to when a 804N/A# non-root user runs Xorg -config) to avoid security issues. 804N/Aif [[ ! -z
"${CONFIG_FILE}" ]] ;
then 804N/AALLARGS=
"${DEPTHARG} ${LISTENARG} ${SERVERARGS} ${CONSOLE} ${CONFIGARG} $*"