1
0
Fork 0
mirror of git://git.code.sf.net/p/cdesktopenv/code synced 2025-02-13 19:52:20 +00:00
Commit graph

1615 commits

Author SHA1 Message Date
Lev Kujawski
13c173d22c On Linux, use SVR4's (now POSIX) mktime() instead of BSD's non-standard timelocal(). 2021-01-10 18:08:00 -07:00
Lev Kujawski
0e282a0ad7 On Linux, use the SVR4 (now POSIX) signal and locking interfaces instead of the non-standard BSD equivalents. 2021-01-10 18:08:00 -07:00
Lev Kujawski
5c801a07a0 Hide FILE internals from the musl C library that conflict with the Desktop Korn Shell's SFIO. 2021-01-10 18:08:00 -07:00
Lev Kujawski
d14d956c00 Rename functions within ToolTalk that conflict with the musl C library headers. 2021-01-10 18:08:00 -07:00
Lev Kujawski
5d5523fd6a Define _DtPLATFORM_MAX_LEN for C libraries (including musl) that do not provide the SVID SYS_NMLN definition. Use sizeof() to replace another #ifdef. 2021-01-10 18:08:00 -07:00
Liang Chang
12f2fb1f10 dtdocbook: fix a segmentation fault. 2021-01-01 03:07:37 +08:00
Liang Chang
bc39b47162 dtopen: fix the syntax errors of comment. 2020-12-29 00:20:37 +08:00
Peter Howkins
d98b2c4c34 dtcm: Always use ANSI function prototypes 2020-11-29 01:55:09 +00:00
Peter Howkins
c62a5049ed libcsa: Always use ANSI function prototypes 2020-11-27 16:58:22 +00:00
Peter Howkins
aef196c6ca dtcalc: remove some pointless macroing of function names to uppercase versionss 2020-11-26 23:00:18 +00:00
Peter Howkins
e4024b0bf9 dtcalc: Remove support for optional K&R prototypes to simplify code 2020-11-26 22:24:51 +00:00
Peter Howkins
25d34e6398 dtcreate: remove hacky solution to declaring and defining variables in .h files
Split them into .c and .h like usual.y
2020-11-26 03:16:16 +00:00
Peter Howkins
dc45d133c9 dthelp: Resolve GCC 10 errors about multiple definitions of global variables 2020-11-24 05:42:59 +00:00
Peter Howkins
9ff00704b3 dtudcfonted: Resolve GCC 10 errors about multiple definitions of global variables 2020-11-24 03:16:50 +00:00
Peter Howkins
0444e500bc libDtSearch: Resolve GCC 10 errors about multiple definitions of global variables 2020-11-24 02:48:10 +00:00
Peter Howkins
ee04641879 dticon: Resolve GCC 10 errors about multiple definitions of global variables 2020-11-24 02:25:30 +00:00
Peter Howkins
30f2d925ef dtcreate: Resolve GCC 10 errors about multiple definitions of global variables 2020-11-24 02:19:05 +00:00
Peter Howkins
361b8f1456 dtappbbuilder: Resolve GCC 10 errors about multiple definitions of global variables 2020-11-24 02:19:05 +00:00
Peter Howkins
e1196cdfec dtcalc: Resolve gcc 10 errors about multiple definitions of global variables 2020-11-24 02:19:05 +00:00
Jon Trulson
b21968f26a fix broken dev version number: 2.3.1a -> 2.3.2a 2020-11-23 17:01:37 -07:00
Peter Howkins
4fd18c3c16 dtstyle: Remove duplicate definition of NumOfPalettes that was a) wrong b) causing issues on recent compilers 2020-11-23 18:28:01 +00:00
Peter Howkins
67f62e5a8a all: remove deprecated sys_errlist[] and replace with ANSI C strerror() 2020-11-02 05:30:08 +00:00
Chase
0f3bcae232 dtksh: Turn dtksh aliases into builtins and discard BLT_SPC flag
Upstream ksh has removed it's builtin aliases, favoring instead to make them
all builtin commands, this would also allow us to skip having to manually
merge another file, it was explained best in this email:

"Default aliases are an ugly hack that you are better off without.
Disadvantages include:
- 'unalias -a' becomes basically unusable as it gets rid of commands you
probably want;
- shell functions by those names are ignored (unless you quote their
names upon invocation);
- something like 'cmdname=foo; "$cmdname" bar baz' doesn't work if
$cmdname is an alias.

I strongly recommend removing the BLT_SPC flag from all of
your extra dtksh builtins. Making builtins "special builtins" is of no
real benefit at all, while introducing a pointless restriction: shell
functions by those names cannot be defined, which causes a risk of
incompatibility with scripts written for other shells. The BLT_SPC flag
is for a very few historic builtins that must have certain weird
corner-case behaviour of "special" builtins for POSIX compliance and
Bourne shell compatibility reasons."
2020-07-19 19:15:57 -06:00
Jon Trulson
15a2032626 Convert uses of XKeycodeToKeysym (deprecated) to XkbKeycodeToKeysym
patch supplied from Peter G.
2020-03-23 12:51:18 -06:00
Jon Trulson
6f1a110e1d dtksh: fix 32b/64b issues with XmTextGetString and XmTextFieldGetString
Some of these functions were returning pointers cast as integers,
which of course is bad on a 64b LP64 systems.

This code should probably just be refactored at some point.  There may
be other hidden issues, and all the casting just sucks.
2020-03-09 15:37:59 -06:00
Jon Trulson
83ef13af18 desktopentry/README: Clarify that the login manager is responsible for setting language 2020-02-08 16:16:13 -07:00
Jon Trulson
2a2c412e2e Revert "Add a new contrib/desktopentry-setlang/ mechanism"
This reverts commit 08b6281f60.

The Login manager is reponsible for setting the correct language
(LANG, etc) information before starting a CDE session.
2020-02-08 16:12:31 -07:00
Jon Trulson
08b6281f60 Add a new contrib/desktopentry-setlang/ mechanism
This was supplied by Antonis Tsolomitis
<antonis.tsolomitis@gmail.com>, and allows you to hardcode a LANG
setting before starting up CDE, if your login manager does not do that
for you.
2020-01-26 11:54:38 -07:00
Jon Trulson
6b32246d06 dtsession, DtSvc: fix CVE-2020-2696/VU#308289
Marco Ivaldi <marco.ivaldi@mediaservice.net> has identified 3
vulnerabilities in CDE.

Two of them could affect our CDE (open-source version), while the 3rd
(sdtcm_convert) is Solaris specific.

The two vulnerabilities, both of which affect dtsession could allow a
local privilege escalation to root.  A POC exists for Solaris.  The
POC will not function on our CDE for two main reasons:

- the POC is Solaris specific
- The overflowed variables in question are allocated on the heap,
  whereas in Solaris these variables are located on the stack.

The first vulnerability allows an extra long palette name to be used
to cause a crash via insufficient validation in
SrvPalette.c:CheckMonitor().

The second, which has not yet been assigned a CERT CVE resides in
SmCreateDirs.c:_DtCreateDtDirs() in libDtSvc.  Due to insufficient
bounds checking, a crash or corruption can be achieved by using a very
long DISPLAY name.

This one is considered difficult to exploit, and no POC code is
available at this time.  CDE 2.x code-bases are also listed as not
vulnerable, however some work has been done anyway to do some proper
bounds checking in this function.

The following text portions are copied from the relevant advisories,
which have not been released as of this writing.

NOTE: Oracle CDE does NOT use CDE 2.3.0a or earlier as mentioned
below.  They are completely different code-bases):

Regarding CVE-2020-2692:

  A buffer overflow in the CheckMonitor() function in the Common
  Desktop Environment 2.3.0a and earlier, as distributed with Oracle
  Solaris 10 1/13 (Update 11) and earlier, allows local users to gain
  root privileges via a long palette name passed to dtsession in a
  malicious .Xdefaults file.

  Note that Oracle Solaris CDE is based on the original CDE 1.x train,
  which is different from the CDE 2.x codebase that was later open
  sourced. Most notably, the vulnerable buffer in the Oracle Solaris
  CDE is stack-based, while in the open source version it is
  heap-based.

Regarding the DtSvc bug, which does not currently have a CERT CVE:

  A difficult to exploit stack-based buffer overflow in the
  _DtCreateDtDirs() function in the Common Desktop Environment version
  distributed with Oracle Solaris 10 1/13 (Update 11) and earlier may
  allow local users to corrupt memory and potentially execute
  arbitrary code in order to escalate privileges via a long X11
  display name. The vulnerable function is located in the libDtSvc
  library and can be reached by executing the setuid program
  dtsession.

  The open source version of CDE (based on the CDE 2.x codebase) is
  not affected.
2020-01-13 19:13:23 -07:00
Jon Trulson
ab023dfaed DtSvc: always use vsnprintf
There was code (_DtSimpleError() and _DtSimpleErrornoError()) that
only used snprintf when USE_SNPRINTF was defined, which it never was
of course.  We just remove the 2 checks and always use [v]snprintf.
2020-01-12 17:25:56 -07:00
Jon Trulson
2f8a2ec066 FreeBSD 12/libDtHelp: fix link errors with missing libjpeg 2020-01-04 14:36:06 -07:00
Chase
008512c777 extra.h: remove unused prototypes 2019-12-15 14:07:52 -07:00
Chase
f28abfe8dd dtksh: remove needless OS defines 2019-12-15 14:07:52 -07:00
Chase
cc73d03e49 dtkcmds.c: avoid c99 collision 2019-12-15 14:07:52 -07:00
Chase
3152b0bc4e dtksh: remove unused files and functions 2019-12-15 14:07:52 -07:00
Jon Trulson
6c07a2ae69 linux.cf: always use bison
For some reason, whenever OSMajorVersion was >= 2 (this equates to a
2.x kernel or above), yacc would be used instead of bison.

On Ubuntu, and probably other linux systems, yacc is just a shell
wrapper around bison, so let's just use that directly.
2019-12-01 19:18:00 -07:00
Marcin Cieślak
5cebd7c4da dtdocbook/instant: fix buffer overlow on German umlaut in latin-1
One-off error:

Old buffer length was 6 for one character (3 * 1 + 3)
We need one more byte par character in the buffer for
the hex representation of it.

+0 '"'
+1 '\\'
+2 'x'
+3 'f'
+4 'c'
+5 '"'
+6 0x0 << overflow

tcl combined with RCHECK will abort because memory blocks
are allocated contiguously and we overwrite the magic marker
of the next block.
2019-11-30 10:13:43 -07:00
Nina Didenko
9221c55a5f tt_type_comp: use CppCmd definition
Hi.

This patch makes tt_type_comp respect CppCmd

Thanks!
2019-11-29 18:12:20 -07:00
Nina Didenko
8db8a22906 installCDE: don't hardcode path to whoami
Hi.

Patch removes hardcoded paths to echo and whoami in installation scripts.

Thanks.
2019-11-20 19:08:22 -07:00
Jon Trulson
0d70d8b120 Set version to 2.3.1a (devel) for current master 2019-11-18 13:03:52 -07:00
Jon Trulson
372e74a524 gitignore: add infolib/etc UTF-8 locales 2019-11-18 12:52:17 -07:00
Jon Trulson
a719c004b2 site.def: add define guards around DtLocalesToBuild 2019-11-17 15:08:20 -07:00
Jon Trulson
de9d913b77 dtinfo: link proper localized (utf8) dirs 2019-11-17 15:07:14 -07:00
Jon Trulson
ba68ff0a17 Merge branch 'master' into utf8-conversion after 2.3.1 release 2019-11-16 16:34:48 -07:00
Jon Trulson
9753b63dab HISTORY: update for 2.3.1 release 2019-11-15 19:06:11 -07:00
Jon Trulson
5fe7ee5b67 Change CDE version info for 2.3.1 release 2019-11-15 18:04:01 -07:00
Nina Didenko
f75ee32e72 sym2num: don't hardcode path to cpp 2019-11-05 18:49:17 -07:00
Nina Didenko
de7fe55d6a merge: don't hardcode path to gencat 2019-11-05 18:49:10 -07:00
Nina Didenko
52caa8b8e6 udbToAny.ksh: don't hardcode path to awk 2019-11-05 18:49:02 -07:00
Nina Didenko
b3f3997bd1 dtinfogen: don't override PATH 2019-11-05 18:48:00 -07:00