summaryrefslogtreecommitdiff
path: root/daemon
diff options
context:
space:
mode:
authorJulio M. Merino Vidal <jmmv@NetBSD.org>2006-03-28 23:43:24 +0000
committerBrian Cameron <bcameron@src.gnome.org>2006-03-28 23:43:24 +0000
commit7ad2d48fdf532905a9312d793ec521aa3e0e4212 (patch)
tree4c1753cba1cece7c1825e017a333841987c78fcb /daemon
parent8d4974c0087d5b92ce300ab8b6734e3d986bdd41 (diff)
downloadgdm-7ad2d48fdf532905a9312d793ec521aa3e0e4212.tar.gz
Removed a C99 local variable definition that breaks the build with gcc
006-03-28 Julio M. Merino Vidal <jmmv@NetBSD.org> * daemon/xdmcp.c: Removed a C99 local variable definition that breaks the build with gcc 2.95 (e.g. under NetBSD 1.6). Fixes bug #336368. 2006-03-28 Julio M. Merino Vidal <jmmv@NetBSD.org> * daemon/gdmconfig.c, daemon/server.c: Include sys/resource.h, needed to use setpriority(2) and its associated definitions. Fixes the build under NetBSD, closing bug #336369. 2006-03-28 Julio M. Merino Vidal <jmmv@NetBSD.org> * Makefile.am, README.install, acconfig.h, configure.ac, gdmsetup-security.in, config/Makefile.am, config/Xsession.in, config/gdm.conf.in, daemon/Makefile.am, daemon/gdm.c, daemon/gdm.h, daemon/gdm.in, daemon/gdmconfig.c, daemon/misc.c, daemon/server.c, daemon/slave.c, docs/C/gdm.xml, gui/Makefile.am, gui/gdmphotosetup.c, gui/gdmsetup.c, gui/gdmsetup.desktop.in, gui/greeter/Makefile.am, gui/greeter/gdmthemetester.in, gui/greeter/greeter.c, gui/modules/Makefile.am: Get rid of all EXPANDED_* variables from the build procedure. Directory-related variables must only be expanded from the Makefiles so that they can be easily overriden during the installation phase. Fixes bug #336364.
Diffstat (limited to 'daemon')
-rw-r--r--daemon/Makefile.am19
-rw-r--r--daemon/gdm.c8
-rw-r--r--daemon/gdm.h32
-rw-r--r--daemon/gdm.in2
-rw-r--r--daemon/gdmconfig.c3
-rw-r--r--daemon/misc.c12
-rw-r--r--daemon/server.c3
-rw-r--r--daemon/slave.c14
-rw-r--r--daemon/xdmcp.c3
9 files changed, 58 insertions, 38 deletions
diff --git a/daemon/Makefile.am b/daemon/Makefile.am
index ecf5269a..3b74e160 100644
--- a/daemon/Makefile.am
+++ b/daemon/Makefile.am
@@ -6,9 +6,22 @@ INCLUDES = \
-I. \
-I.. \
-I$(top_srcdir)/vicious-extensions \
+ -DAUTHDIR=\"$(authdir)\" \
+ -DBINDIR=\"$(bindir)\" \
+ -DDATADIR=\"$(datadir)\" \
+ -DDMCONFDIR=\"$(dmconfdir)\" \
-DGDMCONFDIR=\"$(gdmconfdir)\" \
+ -DGDMLOCALEDIR=\"$(gdmlocaledir)\" \
+ -DGDM_DEFAULTS_CONF=\"$(GDM_DEFAULTS_CONF)\" \
+ -DGDM_CUSTOM_CONF=\"$(GDM_CUSTOM_CONF)\" \
+ -DGDM_OLD_CONF=\"$(GDM_OLD_CONF)\" \
+ -DGDM_USER_PATH=\"$(GDM_USER_PATH)\" \
+ -DLIBDIR=\"$(libdir)\" \
+ -DLIBEXECDIR=\"$(libexecdir)\" \
+ -DLOGDIR=\"$(logdir)\" \
+ -DPIXMAPDIR=\"$(pixmapdir)\" \
+ -DSBINDIR=\"$(sbindir)\" \
-DGNOMELOCALEDIR=\""$(datadir)/locale"\" \
- -DLOCALEDIR=\"$(datadir)/locale\" \
$(GUI_CFLAGS) \
$(DAEMON_CFLAGS) \
-DPAM_PREFIX=\"$(PAM_PREFIX)\" \
@@ -83,5 +96,9 @@ gdm_binary_LDADD = \
-lpopt
sbin_SCRIPTS = gdm
+CLEANFILES = gdm
+
+gdm: $(srcdir)/gdm.in
+ sed -e 's,[@]sbindir[@],$(sbindir),g' <$(srcdir)/gdm.in >gdm
EXTRA_DIST = gdm.in
diff --git a/daemon/gdm.c b/daemon/gdm.c
index 4ecfcc4d..9d8c4682 100644
--- a/daemon/gdm.c
+++ b/daemon/gdm.c
@@ -471,9 +471,9 @@ deal_with_x_crashes (GdmDisplay *d)
/* some promised variables */
g_setenv ("XLOG", xlog, TRUE);
- g_setenv ("BINDIR", EXPANDED_BINDIR, TRUE);
- g_setenv ("SBINDIR", EXPANDED_SBINDIR, TRUE);
- g_setenv ("LIBEXECDIR", EXPANDED_LIBEXECDIR, TRUE);
+ g_setenv ("BINDIR", BINDIR, TRUE);
+ g_setenv ("SBINDIR", SBINDIR, TRUE);
+ g_setenv ("LIBEXECDIR", LIBEXECDIR, TRUE);
g_setenv ("SYSCONFDIR", GDMCONFDIR, TRUE);
/* To enable gettext stuff in the script */
@@ -539,7 +539,7 @@ deal_with_x_crashes (GdmDisplay *d)
/* if we have "open" we can talk to the user, not as user
* friendly as the above script, but getting there */
if ( ! just_abort &&
- g_access (EXPANDED_LIBEXECDIR "/gdmopen", X_OK) == 0) {
+ g_access (LIBEXECDIR "/gdmopen", X_OK) == 0) {
/* Shit if we knew what the program was to tell the user,
* the above script would have been defined and we'd run
* it for them */
diff --git a/daemon/gdm.h b/daemon/gdm.h
index d790ea10..2c2e038b 100644
--- a/daemon/gdm.h
+++ b/daemon/gdm.h
@@ -185,7 +185,7 @@ enum {
*/
/* Configuration constants */
-#define GDM_KEY_CHOOSER "daemon/Chooser=" EXPANDED_LIBEXECDIR "/gdmchooser"
+#define GDM_KEY_CHOOSER "daemon/Chooser=" LIBEXECDIR "/gdmchooser"
#define GDM_KEY_AUTOMATIC_LOGIN_ENABLE "daemon/AutomaticLoginEnable=false"
#define GDM_KEY_AUTOMATIC_LOGIN "daemon/AutomaticLogin="
/* The SDTLOGIN feature is Solaris specific, and causes the Xserver to be
@@ -197,15 +197,15 @@ enum {
#else
#define GDM_KEY_ALWAYS_RESTART_SERVER "daemon/AlwaysRestartServer=false"
#endif
-#define GDM_KEY_GREETER "daemon/Greeter=" EXPANDED_LIBEXECDIR "/gdmlogin"
-#define GDM_KEY_REMOTE_GREETER "daemon/RemoteGreeter=" EXPANDED_LIBEXECDIR "/gdmlogin"
+#define GDM_KEY_GREETER "daemon/Greeter=" LIBEXECDIR "/gdmlogin"
+#define GDM_KEY_REMOTE_GREETER "daemon/RemoteGreeter=" LIBEXECDIR "/gdmlogin"
#define GDM_KEY_ADD_GTK_MODULES "daemon/AddGtkModules=false"
#define GDM_KEY_GTK_MODULES_LIST "daemon/GtkModulesList="
#define GDM_KEY_GROUP "daemon/Group=gdm"
#define GDM_KEY_HALT "daemon/HaltCommand=" HALT_COMMAND
#define GDM_KEY_DISPLAY_INIT_DIR "daemon/DisplayInitDir=" GDMCONFDIR "/Init"
#define GDM_KEY_KILL_INIT_CLIENTS "daemon/KillInitClients=true"
-#define GDM_KEY_LOG_DIR "daemon/LogDir=" EXPANDED_LOGDIR
+#define GDM_KEY_LOG_DIR "daemon/LogDir=" LOGDIR
#define GDM_KEY_PATH "daemon/DefaultPath=" GDM_USER_PATH
#define GDM_KEY_PID_FILE "daemon/PidFile=/var/run/gdm.pid"
#define GDM_KEY_POSTSESSION "daemon/PostSessionScriptDir=" GDMCONFDIR "/PostSession/"
@@ -215,8 +215,8 @@ enum {
#define GDM_KEY_X_KEEPS_CRASHING "daemon/XKeepsCrashing=" GDMCONFDIR "/XKeepsCrashing"
#define GDM_KEY_REBOOT "daemon/RebootCommand=" REBOOT_COMMAND
#define GDM_KEY_ROOT_PATH "daemon/RootPath=/sbin:/usr/sbin:" GDM_USER_PATH
-#define GDM_KEY_SERV_AUTHDIR "daemon/ServAuthDir=" EXPANDED_AUTHDIR
-#define GDM_KEY_SESSION_DESKTOP_DIR "daemon/SessionDesktopDir=/etc/X11/sessions/:" EXPANDED_DMCONFDIR "/Sessions/:" EXPANDED_DATADIR "/gdm/BuiltInSessions/:" EXPANDED_DATADIR "/xsessions/"
+#define GDM_KEY_SERV_AUTHDIR "daemon/ServAuthDir=" AUTHDIR
+#define GDM_KEY_SESSION_DESKTOP_DIR "daemon/SessionDesktopDir=/etc/X11/sessions/:" DMCONFDIR "/Sessions/:" DATADIR "/gdm/BuiltInSessions/:" DATADIR "/xsessions/"
#define GDM_KEY_BASE_XSESSION "daemon/BaseXsession=" GDMCONFDIR "/Xsession"
#define GDM_KEY_DEFAULT_SESSION "daemon/DefaultSession=gnome.desktop"
#define GDM_KEY_SUSPEND "daemon/SuspendCommand=" SUSPEND_COMMAND
@@ -293,7 +293,7 @@ enum {
#define GDM_KEY_XDMCP_PROXY_RECONNECT "xdmcp/ProxyReconnect="
#define GDM_KEY_GTK_THEME "gui/GtkTheme=Default"
-#define GDM_KEY_GTKRC "gui/GtkRC=" EXPANDED_DATADIR "/themes/Default/gtk-2.0/gtkrc"
+#define GDM_KEY_GTKRC "gui/GtkRC=" DATADIR "/themes/Default/gtk-2.0/gtkrc"
#define GDM_KEY_MAX_ICON_WIDTH "gui/MaxIconWidth=128"
#define GDM_KEY_MAX_ICON_HEIGHT "gui/MaxIconHeight=128"
@@ -305,14 +305,14 @@ enum {
#define GDM_KEY_EXCLUDE "greeter/Exclude=bin,daemon,adm,lp,sync,shutdown,halt,mail,news,uucp,operator,nobody,gdm,postgres,pvm,rpm,nfsnobody,pcap"
#define GDM_KEY_INCLUDE_ALL "greeter/IncludeAll=false"
#define GDM_KEY_MINIMAL_UID "greeter/MinimalUID=100"
-#define GDM_KEY_DEFAULT_FACE "greeter/DefaultFace=" EXPANDED_PIXMAPDIR "/nobody.png"
-#define GDM_KEY_GLOBAL_FACE_DIR "greeter/GlobalFaceDir=" EXPANDED_DATADIR "/pixmaps/faces/"
-#define GDM_KEY_LOCALE_FILE "greeter/LocaleFile=" EXPANDED_LOCALEDIR "/locale.alias"
-#define GDM_KEY_LOGO "greeter/Logo=" EXPANDED_PIXMAPDIR "/gdm-foot-logo.png"
-#define GDM_KEY_CHOOSER_BUTTON_LOGO "greeter/ChooserButtonLogo=" EXPANDED_PIXMAPDIR "/gdm-foot-logo.png"
+#define GDM_KEY_DEFAULT_FACE "greeter/DefaultFace=" PIXMAPDIR "/nobody.png"
+#define GDM_KEY_GLOBAL_FACE_DIR "greeter/GlobalFaceDir=" DATADIR "/pixmaps/faces/"
+#define GDM_KEY_LOCALE_FILE "greeter/LocaleFile=" GDMLOCALEDIR "/locale.alias"
+#define GDM_KEY_LOGO "greeter/Logo=" PIXMAPDIR "/gdm-foot-logo.png"
+#define GDM_KEY_CHOOSER_BUTTON_LOGO "greeter/ChooserButtonLogo=" PIXMAPDIR "/gdm-foot-logo.png"
#define GDM_KEY_QUIVER "greeter/Quiver=true"
#define GDM_KEY_SYSTEM_MENU "greeter/SystemMenu=true"
-#define GDM_KEY_CONFIGURATOR "daemon/Configurator=" EXPANDED_SBINDIR "/gdmsetup --disable-sound --disable-crash-dialog"
+#define GDM_KEY_CONFIGURATOR "daemon/Configurator=" SBINDIR "/gdmsetup --disable-sound --disable-crash-dialog"
#define GDM_KEY_CONFIG_AVAILABLE "greeter/ConfigAvailable=true"
#define GDM_KEY_CHOOSER_BUTTON "greeter/ChooserButton=true"
#define GDM_KEY_TITLE_BAR "greeter/TitleBar=true"
@@ -357,7 +357,7 @@ enum {
#define GDM_KEY_GRAPHICAL_THEME "greeter/GraphicalTheme=circles"
#define GDM_KEY_GRAPHICAL_THEMES "greeter/GraphicalThemes=circles"
#define GDM_KEY_GRAPHICAL_THEME_RAND "greeter/GraphicalThemeRand=false"
-#define GDM_KEY_GRAPHICAL_THEME_DIR "greeter/GraphicalThemeDir=" EXPANDED_DATADIR "/gdm/themes/"
+#define GDM_KEY_GRAPHICAL_THEME_DIR "greeter/GraphicalThemeDir=" DATADIR "/gdm/themes/"
#define GDM_KEY_GRAPHICAL_THEMED_COLOR "greeter/GraphicalThemedColor=#76848F"
#define GDM_KEY_INFO_MSG_FILE "greeter/InfoMsgFile="
@@ -374,8 +374,8 @@ enum {
#define GDM_KEY_SOUND_PROGRAM "daemon/SoundProgram=" SOUND_PROGRAM
#define GDM_KEY_SCAN_TIME "chooser/ScanTime=4"
-#define GDM_KEY_DEFAULT_HOST_IMG "chooser/DefaultHostImg=" EXPANDED_PIXMAPDIR "/nohost.png"
-#define GDM_KEY_HOST_IMAGE_DIR "chooser/HostImageDir=" EXPANDED_DATADIR "/hosts/"
+#define GDM_KEY_DEFAULT_HOST_IMG "chooser/DefaultHostImg=" PIXMAPDIR "/nohost.png"
+#define GDM_KEY_HOST_IMAGE_DIR "chooser/HostImageDir=" DATADIR "/hosts/"
#define GDM_KEY_HOSTS "chooser/Hosts="
#define GDM_KEY_MULTICAST "chooser/Multicast=true"
#define GDM_KEY_MULTICAST_ADDR "chooser/MulticastAddr=ff02::1"
diff --git a/daemon/gdm.in b/daemon/gdm.in
index 05e7a501..e669b639 100644
--- a/daemon/gdm.in
+++ b/daemon/gdm.in
@@ -23,5 +23,5 @@ then
fi
fi
-exec @EXPANDED_SBINDIR@/gdm-binary "$@"
+exec @sbindir@/gdm-binary "$@"
diff --git a/daemon/gdmconfig.c b/daemon/gdmconfig.c
index 48e39491..645d230d 100644
--- a/daemon/gdmconfig.c
+++ b/daemon/gdmconfig.c
@@ -38,6 +38,7 @@
#include <ctype.h>
#include <fcntl.h>
#include <sys/types.h>
+#include <sys/resource.h>
#include <sys/stat.h>
#include <signal.h>
#include <pwd.h>
@@ -2193,7 +2194,7 @@ static gboolean
is_in_trusted_pic_dir (const char *path)
{
/* our own pixmap dir is trusted */
- if (strncmp (path, EXPANDED_PIXMAPDIR, sizeof (EXPANDED_PIXMAPDIR)) == 0)
+ if (strncmp (path, PIXMAPDIR, sizeof (PIXMAPDIR)) == 0)
return TRUE;
return FALSE;
diff --git a/daemon/misc.c b/daemon/misc.c
index 18f826e6..193afad0 100644
--- a/daemon/misc.c
+++ b/daemon/misc.c
@@ -581,7 +581,7 @@ gdm_text_message_dialog (const char *msg)
if ( ! gdm_get_value_bool (GDM_KEY_CONSOLE_NOTIFY))
return FALSE;
- if (g_access (EXPANDED_LIBEXECDIR "/gdmopen", X_OK) != 0)
+ if (g_access (LIBEXECDIR "/gdmopen", X_OK) != 0)
return FALSE;
if (msg[0] == '-') {
@@ -606,7 +606,7 @@ gdm_text_message_dialog (const char *msg)
g_setenv ("UNSAFE_TO_TRANSLATE", "yes", TRUE);
}
- argv[0] = EXPANDED_LIBEXECDIR "/gdmopen";
+ argv[0] = LIBEXECDIR "/gdmopen";
argv[1] = "-l";
argv[2] = "/bin/sh";
argv[3] = "-c";
@@ -628,7 +628,7 @@ gdm_text_message_dialog (const char *msg)
} else {
char *argv[6];
- argv[0] = EXPANDED_LIBEXECDIR "/gdmopen";
+ argv[0] = LIBEXECDIR "/gdmopen";
argv[1] = "-l";
argv[2] = "/bin/sh";
argv[3] = "-c";
@@ -659,7 +659,7 @@ gdm_text_yesno_dialog (const char *msg, gboolean *ret)
if ( ! gdm_get_value_bool (GDM_KEY_CONSOLE_NOTIFY))
return FALSE;
- if (g_access (EXPANDED_LIBEXECDIR "/gdmopen", X_OK) != 0)
+ if (g_access (LIBEXECDIR "/gdmopen", X_OK) != 0)
return FALSE;
if (ret != NULL)
@@ -688,7 +688,7 @@ gdm_text_yesno_dialog (const char *msg, gboolean *ret)
g_setenv ("UNSAFE_TO_TRANSLATE", "yes", TRUE);
}
- argv[0] = EXPANDED_LIBEXECDIR "/gdmopen";
+ argv[0] = LIBEXECDIR "/gdmopen";
argv[1] = "-l";
argv[2] = "/bin/sh";
argv[3] = "-c";
@@ -732,7 +732,7 @@ gdm_text_yesno_dialog (const char *msg, gboolean *ret)
VE_IGNORE_EINTR (close (tempfd));
- argv[0] = EXPANDED_LIBEXECDIR "/gdmopen";
+ argv[0] = LIBEXECDIR "/gdmopen";
argv[1] = "-l";
argv[2] = "/bin/sh";
argv[3] = "-c";
diff --git a/daemon/server.c b/daemon/server.c
index 9b28d2b7..cb11d839 100644
--- a/daemon/server.c
+++ b/daemon/server.c
@@ -28,6 +28,7 @@
#include <pwd.h>
#include <grp.h>
#include <sys/types.h>
+#include <sys/resource.h>
#include <sys/stat.h>
#include <sys/wait.h>
#include <strings.h>
@@ -336,7 +337,7 @@ static gboolean
busy_ask_user (GdmDisplay *disp)
{
/* if we have "open" we can talk to the user */
- if (g_access (EXPANDED_LIBEXECDIR "/gdmopen", X_OK) == 0) {
+ if (g_access (LIBEXECDIR "/gdmopen", X_OK) == 0) {
char *error = g_strdup_printf
(C_(N_("There already appears to be an X server "
"running on display %s. Should another "
diff --git a/daemon/slave.c b/daemon/slave.c
index 39ca06ec..6863133c 100644
--- a/daemon/slave.c
+++ b/daemon/slave.c
@@ -1747,7 +1747,7 @@ run_config (GdmDisplay *display, struct passwd *pwent)
"location."));
argv = ve_split
- (EXPANDED_LIBEXECDIR
+ (LIBEXECDIR
"/gdmsetup --disable-sound --disable-crash-dialog");
if (g_access (argv[0], X_OK) == 0)
VE_IGNORE_EINTR (execv (argv[0], argv));
@@ -2586,11 +2586,11 @@ gdm_slave_greeter (void)
if (strstr (command, "gdmlogin") != NULL) {
/* in case it is gdmlogin that's crashing
try the themed greeter for luck */
- command = EXPANDED_LIBEXECDIR "/gdmgreeter";
+ command = LIBEXECDIR "/gdmgreeter";
} else {
/* in all other cases, try the gdmlogin (standard greeter)
proggie */
- command = EXPANDED_LIBEXECDIR "/gdmlogin";
+ command = LIBEXECDIR "/gdmlogin";
}
}
@@ -2613,13 +2613,13 @@ gdm_slave_greeter (void)
gdm_error (_("%s: Cannot start greeter trying default: %s"),
"gdm_slave_greeter",
- EXPANDED_LIBEXECDIR "/gdmlogin");
+ LIBEXECDIR "/gdmlogin");
g_setenv ("GDM_WHACKED_GREETER_CONFIG", "true", TRUE);
- exec_command (EXPANDED_LIBEXECDIR "/gdmlogin", NULL);
+ exec_command (LIBEXECDIR "/gdmlogin", NULL);
- VE_IGNORE_EINTR (execl (EXPANDED_LIBEXECDIR "/gdmlogin", EXPANDED_LIBEXECDIR "/gdmlogin", NULL));
+ VE_IGNORE_EINTR (execl (LIBEXECDIR "/gdmlogin", LIBEXECDIR "/gdmlogin", NULL));
gdm_error_box (d,
GTK_MESSAGE_ERROR,
@@ -3119,7 +3119,7 @@ find_prog (const char *name)
"/usr/openwin/bin/",
"/usr/local/bin/",
"/opt/gnome/bin/",
- EXPANDED_BINDIR "/",
+ BINDIR "/",
NULL
};
diff --git a/daemon/xdmcp.c b/daemon/xdmcp.c
index ad6b8fd8..42062d80 100644
--- a/daemon/xdmcp.c
+++ b/daemon/xdmcp.c
@@ -1142,6 +1142,7 @@ gdm_xdmcp_handle_forward_query (struct sockaddr_in *clnt_sa, gint len)
if (clnt_port.length == 2 &&
clnt_addr.length == 4) {
+ char * ipv4_addr;
/* Convert IPv4 address to IPv6 if needed */
struct sockaddr_in tmp_disp_sa = {0};
@@ -1149,7 +1150,7 @@ gdm_xdmcp_handle_forward_query (struct sockaddr_in *clnt_sa, gint len)
memcpy (&((struct sockaddr_in *)(&tmp_disp_sa))->sin_port, clnt_port.data, 2);
memcpy (&((struct sockaddr_in *)(&tmp_disp_sa))->sin_addr.s_addr, clnt_addr.data, 4);
- char * ipv4_addr = inet_ntoa (((struct sockaddr_in *)(&tmp_disp_sa))->sin_addr);
+ ipv4_addr = inet_ntoa (((struct sockaddr_in *)(&tmp_disp_sa))->sin_addr);
strcpy (buffer6, "::ffff:");
strncat (buffer6, ipv4_addr, INET_ADDRSTRLEN);