Commit Graph

46 Commits

Author SHA1 Message Date
Peter Howkins 637abd5d5c Resolve some coverity warnings 2018-03-08 23:03:21 +00:00
Peter Howkins 2ea057d511 Disable all code related to libXp
deprecated and mostly no longer included on current OSes
2016-04-20 20:17:22 +01:00
alx ed2c149bfc dtsession: Enable X11 screensaver extension on FreeBSD 2016-04-18 19:16:47 -06:00
alx cbd5abb33a dtsession: fixed errorlog rotation 2015-07-02 17:50:16 -06:00
Jon Trulson 4dae64c891 dtsession/SrvPalette: fix CID 89227 2014-12-27 20:09:09 -07:00
Jon Trulson 722cfc70eb dtsession/SrvFile_io: fix CID's 88299 and 89441 2014-12-27 20:06:53 -07:00
Jon Trulson aa2daba4af dtsession/SmUI: fix tainted var (CID 88216) 2014-12-27 19:52:37 -07:00
Jon Trulson db8280189d dtsession/SmSave: use absolute path to rm in system() 2014-12-27 19:42:21 -07:00
Jon Trulson e02c703af7 dtsession/SmSave: get rid of use of tempnam (CID 89359) 2014-12-27 19:33:03 -07:00
Jon Trulson 7c702bff6e dtsession/SmRestore: redo defaultCwd detection in StartClient() to be safer 2014-12-27 19:01:30 -07:00
Jon Trulson a657f302f7 dtsession/SmRestore: fixup 8 coverity issues. 2014-12-27 18:19:55 -07:00
Jon Trulson 65dcf12c82 dtsession/SmGlobals: re-add smGD.savePath to generated paths, was lost in mkstemp changes. 2014-12-27 17:50:28 -07:00
Jon Trulson 93783917ab dtsession/SmGlobals: unlink mkstemp generated files. 2014-12-27 17:24:04 -07:00
Jon Trulson 4b38955b01 dtsession/SmGlobals: use of tainted string (CID 89450) 2014-12-27 16:12:45 -07:00
Jon Trulson 1bde7d8c5c dtsession/SmLock: potential null deref (CID 87561, 87957, 88181) 2014-12-27 16:06:23 -07:00
Jon Trulson f14df58edb dtsession/SmDB: error handling issues (CID 87778, 87926) 2014-12-27 15:54:55 -07:00
Jon Trulson 1148ae8794 dtsession/SmCommun: fix bogus check (CID 89326) 2014-12-27 15:50:29 -07:00
Jon Trulson 881b0e1ed0 dtsession/SmGlobals: fixup 17 coverity issues. 2014-12-27 15:42:04 -07:00
Jon Trulson 611dda1831 dtsession: Coverity (memory corruption, moderate) 2014-12-26 17:23:16 -07:00
Jon Trulson 07dc336b96 dtsession: Coverity (memory corruption) 2014-12-26 14:24:31 -07:00
Jon Trulson b41a74b595 dtsession: Coverity (memory corruption) 2014-12-26 14:22:05 -07:00
Ulrich Wilkens 01d6c363fa OpenIndiana and Solaris port 2014-10-28 13:40:11 -06:00
Jon Trulson 5f99b8045b dtsession: screensaver don't pass random attributes to XScreenSaverSetAttributes()
This should fix the "tiny window appearing in the screensavers"
problem.
2014-04-05 18:09:01 -06:00
Eugene Doudine cd82567977 Fixes the bug #17 dtsession can't validate passwords longer than 8 characters when the session is locked 2014-03-23 13:53:44 -06:00
Ulrich Wilkens 2712d5f787 NetBSD port 2014-02-22 19:12:19 -07:00
Ulrich Wilkens 2d08153289 correction of message files 2013-09-15 19:35:53 -06:00
Ulrich Wilkens 6f56ab0e42 Fix screen locking for BSDs 2013-05-29 20:00:43 -06:00
alx 006dbc0e33 Enable X11 screen saver extension on Linux 2013-05-26 21:10:48 -06:00
Jon Trulson af7ba55f78 Add basic Xinerama support via new lib/DtXinerama
This adds a basic library and support to dtsession and dtlogin to
support Xinerama/Twinview, where multimple monitors are used to make
up an X11 screen.

The main goal here is to draw dialogs and such centered on a monitor,
rather than spread out over multiple monitors.

Might need to add sorting - as on my test system, what I would
consider monitor 0, appears to actually be monitor 1.  So a sort might
need to be added to sort the screens according to increasing x and y
offsets so it make sense to a user.

Also, this library is built statically and not documented.  Maybe it
could be 'filled' out and refactored/redesigned in the futre if need
be and suppoerted.

It is enabled via a define, CDE_USEXINERAMA in site.def.  It's a very
simple lib, so I do not expect any issues with the BSD's - it should
build and work fine, assuming your X server has the XINERAMA
extension, which I think pretty much all of them do at this point.
2013-03-26 19:49:50 -06:00
Jon Trulson a29fc20957 message catalogs: fix comment lines, also remove linux hack in merge.c
According to the spec, blank lines in message catalogs or lines
beginning with '$ ' are valid comments.

However, there were many cases where lines in the message catalogs
contained just a single '$', without the required space after it.

Under linux, this caused 126766 error lines (in my builds) of the
form:

... unknown directive `': line ignored

This also causes gencat to exit with a non-0 exit code.  Even though
gencat says it ignores the line, it really doesn't.

An early porting change to programs/localized/util/merge.c was made to
ignore this return value on linux.  This hack has now been removed.

Build logs are a lot smaller and cleaner now.
2012-09-03 15:12:57 -06:00
Marcin Cieslak 17a33f0430 Use KORNSHELL variable instead of /bin/ksh
This patch removes instances of hardcoded
invocation of /bin/ksh and allows to
replace it with, for, example,
/usr/local/bin/ksh93

Also "ksh93" is accepted whenever "ksh" is.

Tested using the following /bin/ksh:

----8<----
WHAT=`ps -o command= -p $PPID`
msg="Something tried to call /bin/ksh: $PPID: $WHAT"
print -u2 "$msg"
logger user.warn "$msg"
exit 99
----8<----
(Warning: first two lines are FreeBSD specific)

Scripts from Makefiles should now be executed either
with

$(KORNSHELL) korn-shell-script

or

$(SHELL) bourne-shell-script

therefore #!/bin/ksh has not been changed everywhere.

/usr/dt/bin/ scripts have been converted (e.g. Xsession)

Whenever possible Imake and CPP facilities have been used.

For C and C++ programs KORNSHELL needs to be defined to
"/path/to/your/ksh" (with quotes) so that it can make
a valid C constant.

Therefore, when adding KORNSHELL to Imakefile for C files,
you have to add

CXXEXTRA_DEFINES = -DKORNSHELL=\"$(KORNSHELL)\"

or similar (for example, see programs/dtprintinfo)

But for simple shell script substitution we usually change

 LOCAL_CPP_DEFINES = -DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
                     -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
                     -DCDE_LOGFILES_TOP=$(CDE_LOGFILES_TOP)

to:

 LOCAL_CPP_DEFINES = -DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
                     -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
                     -DCDE_LOGFILES_TOP=$(CDE_LOGFILES_TOP) \
                     -DKORNSHELL=$(KORNSHELL) \
                     -DXPROJECTROOT=X11ProjectRoot

since we don't want quotes for shell scripts.
2012-08-23 20:00:43 -06:00
Marcin Cieslak d8db13985c Fix compiler warnings in dtsession 2012-08-16 16:15:49 -06:00
Pascal Stumpf 71f3ed16f8 Patches for dtscreen, dtsearchpath, dtsession on OBSD.
Do not redefine round(3), and provide a manpath for OpenBSD.
(this is one of the few things that need to be adjusted for other BSDs)
2012-08-11 20:06:44 -06:00
Jon Trulson 686bcfadc7 Use SIGCHLD rather than SIGCLD.
Patch from Pascal Stumpf <Pascal.Stumpf@cubes.de>

The official POSIX name for this signal is SIGCHLD.  Linux probably
has SIGCLD only for SysV compatibility, but BSD does not.
2012-08-09 12:24:56 -06:00
Jon Trulson 3edce2a0c0 sys.resources.src: make HIGH_COLOR the default 2012-07-24 17:51:29 -06:00
Jon Trulson 1c733e5b16 dtsession: implement screen lock/unlock for linux
In order for this to work, dtsession must be setuid root.  If
dtsession is not setuid root, then locking will be disabled, and a
message will be written to ~/.dt/errorlog with the message: "Unable to
lock display due to security restrictions".
2012-07-12 14:22:59 -06:00
Jon Trulson 9c92d5a4ee dtsession: SmUI.c: fix ancient typo 2012-07-12 13:31:54 -06:00
Jon Trulson f46a9c62b9 dtsession: also block HUP and PIPE when preparing to shutdown 2012-07-12 13:13:21 -06:00
Jon Trulson dc5d68afba dtsession: don't exit while processing your own session exit event.
Setup a global that protects against accidentally exiting
while doing session exit related housekeeping.
2012-07-12 13:09:22 -06:00
Jon Trulson f8b5b2fd2a Fix dtsession_res so certain config/xrdb options will work properly. 2012-06-20 01:37:05 -06:00
Jon Trulson cdf8003f7c Remove hardcoded CCLINK's in Imakefiles when linking with C++ built libs (DtSvc).
Added proper SharedDtSvcReqs in lnxLib.tmpl and CplusplusLibC in
linux.cf.  This allows the libstdc++ dependancy to be properly
declared for libDtSvc so that it is not neccessary to hardcode 'CCLINK
= g++' in the Imakefiles of programs linking angainst libDtSvc.
2012-06-19 16:27:20 -06:00
Peter Howkins 1d555edb6c Convert all Imakefile LinuxDistribution switches to LinuxArchitecture.
(programs part1)
2012-05-31 13:40:38 +01:00
Jon Trulson 9526740ddd dtsession: fix VU#497553 2012-05-26 19:29:50 -06:00
Peter Howkins bd368b24a2 Link with C++ linker 2012-03-12 11:01:17 +00:00
Peter Howkins c884521619 Add GNU LGPL headers to all .c .C and .h files 2012-03-10 18:58:32 +00:00
Peter Howkins 83b6996daa Initial import of the CDE 2.1.30 sources from the Open Group. 2012-03-10 18:21:40 +00:00