~ubuntu-branches/ubuntu/gutsy/vnc4/gutsy

« back to all changes in this revision

Viewing changes to unix/xc/programs/xdm/Imakefile

  • Committer: Bazaar Package Importer
  • Author(s): Ola Lundqvist
  • Date: 2006-05-15 20:35:17 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20060515203517-l4lre1ku942mn26k
Tags: 4.1.1+X4.3.0-10
* Correction of critical security issue. Thanks to Martin Kogler
  <e9925248@student.tuwien.ac.at> that informed me about the issue,
  and provided the patch.
  This flaw was originally found by Steve Wiseman of intelliadmin.com.
* Applied patch from Javier Kohen <jkohen@users.sourceforge.net> that
  inform the user that only 8 first characters of the password will
  actually be used when typing more than 8 characters, closes:
  #355619.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
XCOMM $Xorg: Imakefile,v 1.3 2000/08/17 19:54:14 cpqbld Exp $
 
2
 
 
3
 
 
4
 
 
5
 
 
6
XCOMM $XFree86: xc/programs/xdm/Imakefile,v 3.52 2002/12/07 20:31:04 herrb Exp $
 
7
 
 
8
#define IHaveSubdirs
 
9
#define PassCDebugFlags 'CDEBUGFLAGS=$(CDEBUGFLAGS)'
 
10
 
 
11
#ifndef BuildChooser
 
12
#define BuildChooser !SystemV
 
13
#endif
 
14
 
 
15
#ifndef SharedLibXdmGreet
 
16
#define SharedLibXdmGreet (HasSharedLibraries && (defined(AlphaArchitecture) || SystemV4))
 
17
#endif
 
18
 
 
19
#ifndef BuildBoth
 
20
#define BuildBoth (defined(LinuxArchitecture) && !SharedLibXdmGreet && !UseElfFormat)
 
21
#endif
 
22
 
 
23
#ifndef LinuxShadowSuite
 
24
#define LinuxShadowSuite NO
 
25
#endif
 
26
 
 
27
#if HasXdmAuth
 
28
XDMAUTH_DEFINES = -DHASXDMAUTH
 
29
XDMAUTHOBJS = xdmauth.o
 
30
XDMAUTHSRCS = xdmauth.c
 
31
#endif
 
32
 
 
33
#if HasSecureRPC
 
34
RPC_DEFINES = -DSECURE_RPC
 
35
RPCOBJS = rpcauth.o
 
36
RPCSRCS = rpcauth.c
 
37
RPCLIB = -lrpcsvc
 
38
#endif
 
39
 
 
40
#if HasKrbIV
 
41
KRBIV_DEFINES = KrbIVDefines
 
42
KRBIV_INCLUDES = KrbIVIncludes
 
43
KRBIVLIB = KrbIVLibraries
 
44
#endif
 
45
 
 
46
#if HasKrb5
 
47
KRB5_DEFINES = Krb5Defines
 
48
KRB5_INCLUDE = Krb5Includes
 
49
KRB5OBJS = krb5auth.o
 
50
KRB5SRCS = krb5auth.c
 
51
#endif
 
52
 
 
53
#if SharedLibXdmGreet
 
54
GREET_DIR = greeter
 
55
#if SystemV4 || (SharedLibXdmGreet && (defined(LinuxArchitecture) || defined(NetBSDArchitecture) || defined(GNUMachArchitecture)))
 
56
    DLLIBRARY = DlLibrary
 
57
#endif
 
58
#else
 
59
GREET_DEFINES = -DGREET_USER_STATIC $(KRBIV_DEFINES) $(KRBIV_INCLUDES)
 
60
GREETSRCS = greet.c verify.c Login.c
 
61
GREETOBJS = greet.o verify.o Login.o
 
62
#if BuildBoth
 
63
GREETSHADOWSRCS = greetsh.c verifysh.c Loginsh.c
 
64
GREETSHADOWOBJS = greetsh.o verifysh.o Loginsh.o
 
65
#if !UseElfFormat
 
66
SHADOWLIB = -lshadow
 
67
#endif
 
68
#endif
 
69
#endif
 
70
 
 
71
#if BuildXineramaLibrary
 
72
XINERAMA_DEFINES = -DUSE_XINERAMA
 
73
XINDEPLIBS = $(DEPXINERAMALIB)
 
74
XINLIBS = $(XINERAMALIB)
 
75
#endif
 
76
 
 
77
XPM_DEFINES = -DXPM 
 
78
 
 
79
/* This is correct for Linux and FreeBSD */
 
80
#if HasPam
 
81
PAM_LIBRARIES = PamLibraries
 
82
PAM_DEFINES = -DUSE_PAM
 
83
#endif
 
84
 
 
85
#if HasBSDAuth
 
86
BSDAUTH_DEFINES = -DUSE_BSDAUTH
 
87
#endif
 
88
 
 
89
#if SystemV4 || HasShadowPasswd
 
90
#if !LinuxShadowSuite
 
91
PWD_DEFINES = -DUSESHADOW
 
92
#else
 
93
PWD_DEFINES = -DUSESHADOW -DSHADOWSUITE
 
94
#endif
 
95
 
 
96
#if !defined(i386IscArchitecture) && !defined(i386ScoArchitecture) && !defined(LinuxArchitecture) && !defined(NTOArchitecture) && !defined(SGIArchitecture)
 
97
SYS_LIBRARIES3 = -lresolv
 
98
#endif
 
99
#if SystemV || defined(SequentArchitecture)
 
100
SYS_LIBRARIES1 = -lsec
 
101
#endif
 
102
#if defined(LinuxArchitecture) && (!UseElfFormat || LinuxShadowSuite)
 
103
SYS_LIBRARIES1 = -lshadow
 
104
#endif
 
105
#endif
 
106
 
 
107
#if defined(UltrixArchitecture)
 
108
SYS_LIBRARIES1 = -lauth
 
109
#endif
 
110
 
 
111
#if (defined(AIXArchitecture) && (OSMajorVersion >= 3))
 
112
SYS_LIBRARIES1 = -ls
 
113
#endif
 
114
 
 
115
#if HasLibCrypt
 
116
#ifdef SpecialLibCrypt
 
117
CRYPT_LIBRARIES = SpecialLibCrypt
 
118
#else
 
119
CRYPT_LIBRARIES = -lcrypt
 
120
#if defined(LynxOSArchitecture)
 
121
CRYPT_DEFINES = -DHAS_CRYPT
 
122
#endif
 
123
#endif
 
124
#endif
 
125
 
 
126
#if HasBSD44Sockets
 
127
SOCK_DEFINES = -DBSD44SOCKETS
 
128
#endif
 
129
 
 
130
#if defined(i386Architecture) || defined(AmigaArchitecture)
 
131
FRAGILE_DEFINES = -DFRAGILE_DEV_MEM
 
132
#endif
 
133
 
 
134
#if defined(NetBSDArchitecture) && \
 
135
    ((OSMajorVersion > 1) || \
 
136
     (OSMajorVersion == 1 && OSMinorVersion > 3))
 
137
RANDOM_DEFINES = -DDEV_RANDOM=\"/dev/urandom\"
 
138
#endif
 
139
 
 
140
#ifdef OpenBSDArchitecture
 
141
RANDOM_DEFINES = -DARC4_RANDOM
 
142
#endif
 
143
 
 
144
#if HasVFork
 
145
VFORK_DEFINES = -DHAS_VFORK
 
146
#endif
 
147
 
 
148
#if UseXKBInClients
 
149
XKB_CLIENT_DEFINES = XkbClientDefines
 
150
#endif
 
151
 
 
152
#if HasSetUserContext
 
153
USER_CONTEXT_DEFINES = -DHAS_SETUSERCONTEXT
 
154
# XXX - only FreeBSD has this in libutil
 
155
SYS_LIBRARIES1 = -lutil
 
156
#endif
 
157
 
 
158
#if HasSetProcTitle
 
159
PROCTITLE_DEFINES = -DHAS_SETPROCTITLE
 
160
#endif
 
161
 
 
162
#if !HasSnprintf
 
163
SNPRINTFSRCS = snprintf.c 
 
164
SNPRINTFOBJS = snprintf.o
 
165
#endif
 
166
 
 
167
  SYS_LIBRARIES = $(SYS_LIBRARIES1) $(SYS_LIBRARIES2) $(SYS_LIBRARIES3)
 
168
 
 
169
   XDMCONFIGDIR = XdmConfigurationSubdirectory
 
170
        SUBDIRS = $(GREET_DIR) $(XDMCONFIGDIR)
 
171
 
 
172
INCLUDES = $(KRB5_INCLUDE)
 
173
DEPLIBS = $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB) $(DEPXAUTHLIB) \
 
174
        $(DEPXDMCPLIB) $(XINDEPLIBS)
 
175
LOCAL_LIBRARIES = $(XPMLIB) $(XMULIB) $(XTOOLLIB) $(XLIB) $(XAUTHLIB) \
 
176
        $(XDMCPLIB) $(RPCLIB) $(PAM_LIBRARIES) $(DLLIBRARY) \
 
177
        $(CRYPT_LIBRARIES) $(KRBIVLIB) $(XINLIBS)
 
178
 
 
179
          SRCS1 = auth.c daemon.c server.c dpylist.c dm.c error.c file.c \
 
180
                  netaddr.c reset.c resource.c protodpy.c policy.c \
 
181
                  session.c socket.c streams.c util.c xdmcp.c \
 
182
                  mitauth.c \
 
183
                  genauth.c access.c choose.c \
 
184
                  $(XDMAUTHSRCS) $(RPCSRCS) $(KRB5SRCS) $(GREETSRCS) \
 
185
                  $(SNPRINTFSRCS) 
 
186
          OBJS1 = auth.o daemon.o server.o dpylist.o dm.o error.o file.o \
 
187
                  netaddr.o reset.o resource.o protodpy.o policy.o \
 
188
                  session.o socket.o streams.o util.o xdmcp.o \
 
189
                  mitauth.o \
 
190
                  genauth.o access.o choose.o \
 
191
                  $(XDMAUTHOBJS) $(RPCOBJS) $(KRB5OBJS) $(GREETOBJS) \
 
192
                  $(SNPRINTFOBJS)
 
193
          SRCS2 = xdmshell.c 
 
194
          OBJS2 = xdmshell.o 
 
195
#if BuildChooser
 
196
          SRCS3 = chooser.c
 
197
          OBJS3 = chooser.o
 
198
       DEPLIBS3 = XawClientDepLibs XkbClientDepLibs $(DEPXDMCPLIB) \
 
199
                  $(XINDEPLIBS)
 
200
          LIBS3 = XawClientLibs XkbClientLibs $(XDMCPLIB) $(XINLIBS)
 
201
#endif
 
202
 
 
203
          SRCS4 = sessreg.c
 
204
          OBJS4 = sessreg.o
 
205
 
 
206
#if BuildBoth
 
207
          SRCS5 = auth.c daemon.c server.c dpylist.c dm.c error.c file.c \
 
208
                  netaddr.c reset.c resource.c protodpy.c policy.c \
 
209
                  sessionsh.c socket.c streams.c util.c xdmcp.c \
 
210
                  mitauth.c \
 
211
                  genauth.c access.c choose.c \
 
212
                  $(XDMAUTHSRCS) $(RPCSRCS) $(KRB5SRCS) $(GREETSHADOWSRCS)
 
213
          OBJS5 = auth.o daemon.o server.o dpylist.o dm.o error.o file.o \
 
214
                  netaddr.o reset.o resource.o protodpy.o policy.o \
 
215
                  sessionsh.o socket.o streams.o util.o xdmcp.o \
 
216
                  mitauth.o \
 
217
                  genauth.o access.o choose.o \
 
218
                  $(XDMAUTHOBJS) $(RPCOBJS) $(KRB5OBJS) $(GREETSHADOWOBJS)
 
219
     XDM_SHADOW = ProgramTargetName(xdm-shadow)
 
220
#endif
 
221
#if BuildChooser
 
222
        CHOOSER = ProgramTargetName(chooser)
 
223
#endif
 
224
       PROGRAMS = ProgramTargetName(xdm) ProgramTargetName(xdmshell) ProgramTargetName(sessreg) $(CHOOSER) $(XDM_SHADOW)
 
225
 
 
226
 OSMAJORVERSION = OSMajorVersion
 
227
 OSMINORVERSION = OSMinorVersion
 
228
   CONN_DEFINES = $(CONNECTION_FLAGS)
 
229
        DEFINES = -DBINDIR=\"$(BINDIR)\" -DXDMDIR=\"$(XDMDIR)\" \
 
230
                $(SIGNAL_DEFINES) $(CRYPT_DEFINES) $(BSDAUTH_DEFINES) \
 
231
                $(XDMAUTH_DEFINES) $(RPC_DEFINES) $(KRB5_DEFINES) \
 
232
                $(PWD_DEFINES) $(PAM_DEFINES) $(CONN_DEFINES) \
 
233
                $(GREET_DEFINES) $(FRAGILE_DEFINES) $(RANDOM_DEFINES) \
 
234
                -DOSMAJORVERSION=$(OSMAJORVERSION) \
 
235
                -DOSMINORVERSION=$(OSMINORVERSION) \
 
236
                $(XKB_CLIENT_DEFINES) $(USER_CONTEXT_DEFINES) \
 
237
                $(XPM_DEFINES) $(XINERAMA_DEFINES) $(PROCTITLE_DEFINES)
 
238
 
 
239
XCOMM
 
240
XCOMM Special definitions for compiling default resources; these parameters
 
241
XCOMM should be set in util/imake.includes/site.def or the appropriate .macros
 
242
XCOMM file in that directory.  The lack of initial spaces is to prevent imake
 
243
XCOMM from accidently turning the lines into rules by putting a leading tab.
 
244
XCOMM
 
245
XCOMM Do NOT change these lines!
 
246
XCOMM
 
247
DEF_SERVER = $(BINDIR)/X
 
248
DEF_USER_PATH = DefaultUserPath         /* no leading spaces or imake will */
 
249
DEF_SYSTEM_PATH = DefaultSystemPath     /* indent as rule */
 
250
BOURNE_SHELL = DefaultSystemShell
 
251
RES_DEFINES = '-DDEF_SERVER_LINE=":0 local $(DEF_SERVER) :0"' \
 
252
                  '-DXRDB_PROGRAM="$(BINDIR)/xrdb"' \
 
253
                  '-DDEF_SESSION="$(BINDIR)/xterm -ls"' \
 
254
                  '-DDEF_USER_PATH="$(DEF_USER_PATH)"' \
 
255
                  '-DDEF_SYSTEM_PATH="$(DEF_SYSTEM_PATH)"' \
 
256
                  '-DDEF_SYSTEM_SHELL="$(BOURNE_SHELL)"' \
 
257
                  '-DDEF_FAILSAFE_CLIENT="$(BINDIR)/xterm"' \
 
258
                  '-DDEF_XDM_CONFIG="$(XDMDIR)/xdm-config"' \
 
259
                  '-DDEF_CHOOSER="$(XDMDIR)/chooser"' \
 
260
                  '-DDEF_AUTH_DIR="$(XDMDIR)"' \
 
261
                  '-DDEF_GREETER_LIB="$(XDMDIR)/libXdmGreet.so"'
 
262
 
 
263
ComplexProgramTarget_1(xdm,$(LOCAL_LIBRARIES),NullParameter)
 
264
LinkConfDirectory(xdm,.,xdm,.)
 
265
#ifdef VarDbDirectory
 
266
LinkConfDirectoryLong(xdm,xdm,authdir,authdir,$(CONFDIR),$(VARDBDIR))
 
267
#endif
 
268
NormalProgramTarget(xdmshell,$(OBJS2),NullParameter,NullParameter,NullParameter)
 
269
NormalProgramTarget(sessreg,$(OBJS4),NullParameter,NullParameter,NullParameter)
 
270
InstallProgram(sessreg,$(BINDIR))
 
271
InstallManPage(sessreg,$(MANDIR))
 
272
 
 
273
#if defined(FreeBSDArchitecture) && (OSMajorVersion < 2)
 
274
SpecialCObjectRule(daemon,$(ICONFIGFILES),-UCSRG_BASED)
 
275
#endif
 
276
 
 
277
#if BuildChooser
 
278
SpecialCObjectRule(chooser, $(ICONFIGFILES), $(SOCK_DEFINES))
 
279
NormalProgramTarget(chooser,$(OBJS3),$(DEPLIBS3),$(LIBS3),NullParameter)
 
280
InstallProgram(chooser,$(XDMDIR))
 
281
InstallAppDefaults(Chooser)
 
282
#endif
 
283
#if BuildBoth
 
284
NormalProgramTarget(xdm-shadow,$(OBJS5),$(DEPLIBS),$(LOCAL_LIBRARIES),$(SHADOWLIB))
 
285
InstallProgram(xdm-shadow,$(BINDIR))
 
286
#endif
 
287
 
 
288
SpecialCObjectRule(auth,$(ICONFIGFILES),$(SOCK_DEFINES))
 
289
SpecialCObjectRule(policy,$(ICONFIGFILES),$(_NOOP_))
 
290
SpecialCObjectRule(resource,$(ICONFIGFILES),$(RES_DEFINES))
 
291
SpecialCObjectRule(socket,$(ICONFIGFILES),$(SOCK_DEFINES))
 
292
SpecialCObjectRule(xdmcp,$(ICONFIGFILES),$(SOCK_DEFINES))
 
293
SpecialCObjectRule(xdmshell,$(ICONFIGFILES),$(VFORK_DEFINES))
 
294
 
 
295
#if !SharedLibXdmGreet
 
296
LinkSourceFile(greet.c,greeter)
 
297
LinkSourceFile(verify.c,greeter)
 
298
LinkSourceFile(Login.c,greeter)
 
299
LinkSourceFile(Login.h,greeter)
 
300
LinkSourceFile(LoginP.h,greeter)
 
301
#if BuildBoth
 
302
ObjectFromSpecialSource(greetsh,greet,-DUSESHADOW)
 
303
ObjectFromSpecialSource(verifysh,verify,-DUSESHADOW)
 
304
ObjectFromSpecialSource(Loginsh,Login,-DUSESHADOW)
 
305
ObjectFromSpecialSource(sessionsh,session,-DUSESHADOW)
 
306
#endif
 
307
#endif /* !SharedLibXdmGreet */
 
308
 
 
309
#if !HasSnprintf
 
310
LinkSourceFile(snprintf.c,$(LIBSRC)/misc)
 
311
#endif
 
312
 
 
313
#ifdef IHaveSubdirs
 
314
MakeSubdirs($(SUBDIRS))
 
315
DependSubdirs($(SUBDIRS))
 
316
#endif
 
317
 
 
318
/*
 
319
 * Don't install; let people read the instructions about putting in the
 
320
 * abort-display() resource:
 
321
 */
 
322
#ifdef comment
 
323
InstallProgramWithFlags(xdmshell,$(BINDIR),NullParameter)
 
324
#endif