diff options
author | kwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059> | 2011-06-02 19:58:25 +0800 |
---|---|---|
committer | kwm <kwm@df743ca5-7f9a-e211-a948-0013205c9059> | 2011-06-02 19:58:25 +0800 |
commit | e8bf40e496dbf74e2ee91a95bf04886ad32a23f4 (patch) | |
tree | 26558e38dafffdf2318eb68bd26e54a98fb1d67a /x11/gdm/files/gdm.in | |
parent | 6c90da75235f2adc2c2cf2c590fb85459cdde03a (diff) | |
download | marcuscom-ports-e8bf40e496dbf74e2ee91a95bf04886ad32a23f4.tar.gz marcuscom-ports-e8bf40e496dbf74e2ee91a95bf04886ad32a23f4.tar.zst marcuscom-ports-e8bf40e496dbf74e2ee91a95bf04886ad32a23f4.zip |
Backport fix for CVE-2011-1709 from the 2.32.2 release.
As I understand it this only happens with GLib 2.28.
git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@16019 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'x11/gdm/files/gdm.in')
-rw-r--r-- | x11/gdm/files/gdm.in | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/x11/gdm/files/gdm.in b/x11/gdm/files/gdm.in new file mode 100644 index 000000000..bfcb961fe --- /dev/null +++ b/x11/gdm/files/gdm.in @@ -0,0 +1,62 @@ +#!/bin/sh +# $FreeBSD: ports/x11/gdm/files/gdm.in,v 1.20 2010/07/25 19:35:05 kwm Exp $ +# $MCom: ports-stable/x11/gdm/files/gdm.in,v 1.5 2010/07/21 13:50:46 kwm Exp $ + +# PROVIDE: gdm +# REQUIRE: LOGIN cleanvar moused syscons dbus +# +# Add the following to /etc/rc.conf to start GDM at boot time: +# +# gdm_enable="YES" +# + +. /etc/rc.subr +. %%GNOME_SUBR%% + +gdm_enable=${gdm_enable-${gnome_enable}} +gdm_preserve_base_pam_conf=${gdm_preserve_base_pam_conf-NO} +gdm_lang=${gdm_lang-${LANG}} + +export PATH=/bin:/sbin:/usr/bin:/usr/sbin:%%LOCALBASE%%/bin:%%LOCALBASE%%/sbin + +name="gdm" +rcvar=`set_rcvar` +command="%%PREFIX%%/sbin/${name}" +pidfile="/var/run/${name}.pid" +procname="%%PREFIX%%/sbin/gdm-binary" +start_cmd="gdm_start" + +gdm_start() +{ + if ! checkyesno gdm_enable ; then + return 0 + fi + echo "Starting ${name}." + + # make sure there is no pam configuration for gdm service in base system + if ! checkyesno gdm_preserve_base_pam_conf && [ -f /etc/pam.d/gdm ]; then + cp -p /etc/pam.d/gdm /etc/pam.d/gdm_disabled + rm -f /etc/pam.d/gdm + fi + + ( iter=0 + while ! ps -axoargs | grep "^/usr/libexec/getty " | grep -qv grep >/dev/null 2>&1; do + if [ ${iter} -eq 60 ]; then + break + fi + sleep 1 + iter=$(expr ${iter} + 1) + done + iter=0 + while ! %%LOCALBASE%%/bin/lshal >/dev/null 2>&1 ; do + if [ ${iter} -eq 60 ]; then + break + fi + sleep 1 + iter=$(expr ${iter} + 1) + done + LANG=${gdm_lang} ${command} ${gdm_flags} ) & +} + +load_rc_config ${name} +run_rc_command "$1" |