oweals/cde.git
4 years agoPrepare for 2.3.2 release: HISTORY and version number change cde-2.3.2-release 2.3.2
Jon Trulson [Mon, 13 Jan 2020 00:42:55 +0000 (17:42 -0700)]
Prepare for 2.3.2 release: HISTORY and version number change

4 years agodtsession, DtSvc: fix CVE-2020-2696/VU#308289
Jon Trulson [Sun, 12 Jan 2020 02:30:51 +0000 (19:30 -0700)]
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.

4 years agoHISTORY: update for 2.3.1 release 2.3.1
Jon Trulson [Sat, 16 Nov 2019 02:06:01 +0000 (19:06 -0700)]
HISTORY: update for 2.3.1 release

4 years agoChange CDE version info for 2.3.1 release
Jon Trulson [Sat, 16 Nov 2019 01:04:01 +0000 (18:04 -0700)]
Change CDE version info for 2.3.1 release

4 years agosym2num: don't hardcode path to cpp
Nina Didenko [Tue, 5 Nov 2019 17:45:44 +0000 (20:45 +0300)]
sym2num: don't hardcode path to cpp

4 years agomerge: don't hardcode path to gencat
Nina Didenko [Tue, 5 Nov 2019 17:45:43 +0000 (20:45 +0300)]
merge: don't hardcode path to gencat

4 years agoudbToAny.ksh: don't hardcode path to awk
Nina Didenko [Tue, 5 Nov 2019 17:45:42 +0000 (20:45 +0300)]
udbToAny.ksh: don't hardcode path to awk

4 years agodtinfogen: don't override PATH
Nina Didenko [Tue, 5 Nov 2019 17:45:41 +0000 (20:45 +0300)]
dtinfogen: don't override PATH

4 years agoil: remove various deprecated files
Chase [Tue, 29 Oct 2019 02:23:47 +0000 (21:23 -0500)]
il: remove various deprecated files

4 years agoremove more internal jpeg headers
Chase [Tue, 29 Oct 2019 01:27:35 +0000 (20:27 -0500)]
remove more internal jpeg headers

4 years agoDtSvc/DtUtil2: fix implicit function declarations
Jon Trulson [Mon, 28 Oct 2019 19:27:47 +0000 (13:27 -0600)]
DtSvc/DtUtil2: fix implicit function declarations

4 years agoDtSvc/DtUtil1: fix implicit function declarations
Jon Trulson [Mon, 28 Oct 2019 19:22:09 +0000 (13:22 -0600)]
DtSvc/DtUtil1: fix implicit function declarations

4 years agottserver: fixup forward (vexing) fucntion decl's in main, get rid of **environ
Jon Trulson [Sun, 20 Oct 2019 00:36:54 +0000 (18:36 -0600)]
ttserver: fixup forward (vexing) fucntion decl's in main, get rid of **environ

4 years agoRemove all optional compile flags from dtwm that are not referenced anywhere, and...
wmoxam [Mon, 14 Oct 2019 04:31:57 +0000 (00:31 -0400)]
Remove all optional compile flags from dtwm that are not referenced anywhere, and are unlikely to ever be used

4 years agodtmail: fix extra format args warnings
Jon Trulson [Wed, 16 Oct 2019 03:22:11 +0000 (21:22 -0600)]
dtmail: fix extra format args warnings

4 years agodtmail: fix NULL char embedded in format string
Jon Trulson [Wed, 16 Oct 2019 03:12:17 +0000 (21:12 -0600)]
dtmail: fix NULL char embedded in format string

4 years ago'notdef' means it's not used, so we remove it
wmoxam [Mon, 14 Oct 2019 03:33:24 +0000 (23:33 -0400)]
'notdef' means it's not used, so we remove it

4 years agoRemove ancient HP VUE compatibility support
wmoxam [Mon, 14 Oct 2019 13:39:50 +0000 (09:39 -0400)]
Remove ancient HP VUE compatibility support

4 years agoRemove old jpeg files
Chase [Mon, 14 Oct 2019 23:46:55 +0000 (18:46 -0500)]
Remove old jpeg files

4 years agoRemove 'oldcode'
wmoxam [Mon, 14 Oct 2019 03:15:52 +0000 (23:15 -0400)]
Remove 'oldcode'

4 years agoRemove legacysun code blocks
wmoxam [Mon, 14 Oct 2019 03:12:13 +0000 (23:12 -0400)]
Remove legacysun code blocks

4 years agoRemove unused HP_EXTENSIONS code blocks
wmoxam [Mon, 14 Oct 2019 02:28:38 +0000 (22:28 -0400)]
Remove unused HP_EXTENSIONS code blocks

4 years agodtpad: emit error on catopen() failure
Jon Trulson [Mon, 14 Oct 2019 20:42:21 +0000 (14:42 -0600)]
dtpad: emit error on catopen() failure

This patch was manually added via a diff supplied from a user on the
CDE mailing list: Michele Ghisolfo <ghisolfo.m@gmail.com>

4 years agodtfile: Add scroll wheel support
Jon Trulson [Mon, 14 Oct 2019 20:34:56 +0000 (14:34 -0600)]
dtfile: Add scroll wheel support

This patch was manually added via a diff supplied from a user on the
CDE mailing list: Michele Ghisolfo <ghisolfo.m@gmail.com>

4 years agodtcalc: increase highlight thickness to match Solaris CDE
Jon Trulson [Mon, 14 Oct 2019 20:30:58 +0000 (14:30 -0600)]
dtcalc: increase highlight thickness to match Solaris CDE

This patch was manually added via a diff supplied from a user on the
CDE mailing list: Michele Ghisolfo <ghisolfo.m@gmail.com>

4 years agodtterm: add scroll wheel support
Jon Trulson [Mon, 14 Oct 2019 20:08:43 +0000 (14:08 -0600)]
dtterm: add scroll wheel support

This patch was manually added via a diff supplied from a user on the
CDE mailing list: Michele Ghisolfo <ghisolfo.m@gmail.com>

4 years agoRemove NOTDONE code
wmoxam [Mon, 14 Oct 2019 03:41:22 +0000 (23:41 -0400)]
Remove NOTDONE code

4 years agolinux: build all languages by default again
Jon Trulson [Mon, 14 Oct 2019 03:11:59 +0000 (21:11 -0600)]
linux: build all languages by default again

Someday we should be able to detect which languages are installed and
only build support for those.  Until then, build them all.

4 years agoMerge /u/jrubio/cdesktopenv/ branch discarded-qualifiers into master
Jon Trulson [Sun, 13 Oct 2019 17:09:04 +0000 (17:09 +0000)]
Merge /u/jrubio/cdesktopenv/ branch discarded-qualifiers into master

https://sourceforge.net/p/cdesktopenv/code/merge-requests/17/

4 years agoMerge /u/jrubio/cdesktopenv/ branch delete-incomplete into master
Jon Trulson [Sun, 13 Oct 2019 17:06:14 +0000 (17:06 +0000)]
Merge /u/jrubio/cdesktopenv/ branch delete-incomplete into master

https://sourceforge.net/p/cdesktopenv/code/merge-requests/18/

4 years agoget rid of the 'extern sys_errlist' and 'sys_nerr' in SysErrorMsg.
Jose Rubio [Sun, 13 Oct 2019 08:19:00 +0000 (10:19 +0200)]
get rid of the 'extern sys_errlist' and 'sys_nerr' in SysErrorMsg.

4 years agoMerge /u/jrubio/cdesktopenv/ branch incompatible-pointer-types into master 2.3.0a
Jon Trulson [Sat, 12 Oct 2019 21:43:45 +0000 (21:43 +0000)]
Merge /u/jrubio/cdesktopenv/ branch incompatible-pointer-types into master

https://sourceforge.net/p/cdesktopenv/code/merge-requests/16/

4 years agoFixes for a few -Wincompatible-pointer-types
Jose Rubio [Sat, 12 Oct 2019 20:29:44 +0000 (22:29 +0200)]
Fixes for a few -Wincompatible-pointer-types

4 years agoMerge /u/jrubio/cdesktopenv/ branch int-conversion into master
Jon Trulson [Fri, 11 Oct 2019 23:58:44 +0000 (23:58 +0000)]
Merge /u/jrubio/cdesktopenv/ branch int-conversion into master

https://sourceforge.net/p/cdesktopenv/code/merge-requests/14/

4 years agoFix to delete-incomplete warnings.
Jose Rubio [Fri, 11 Oct 2019 11:43:08 +0000 (13:43 +0200)]
Fix to delete-incomplete warnings.

4 years agoFix to compile warnings.
Jose Rubio [Fri, 11 Oct 2019 08:49:48 +0000 (10:49 +0200)]
Fix to compile warnings.

* discarded-qualifiers warnings.
* Function definitions, the .h doesn't match the .c.
* Added some include to ensure the .c has function definition.

4 years agoFix to different compile warnings.
Jose Rubio [Thu, 10 Oct 2019 17:25:07 +0000 (19:25 +0200)]
Fix to different compile warnings.

Fix to multiple int-conversion
Removal of duplicated function definition in dtudcfonted/util.h
Added XtEventHandler prototypes to mtfgui

4 years agoFix to Wenum-compare
Jose Rubio [Thu, 10 Oct 2019 15:01:56 +0000 (17:01 +0200)]
Fix to Wenum-compare

It seems the purpose is to define a constant as an anonymous enum.
that behaviour triggers the enum  compare. Let's make it a constant.

4 years agoFix openbsd compile build errors due to dependency on libiconv
Jose Rubio [Fri, 27 Sep 2019 19:54:06 +0000 (21:54 +0200)]
Fix openbsd compile build errors due to dependency on libiconv

The path to libiconv is selected in config/cf/OpenBSD.cf reusing the
same trick  as FreeBSD does.

4 years agoMerge branch 'linux-suse-tcl-link' of https://git.code.sf.net/u/jrubio/cdesktopenv...
Jose Rubio [Mon, 16 Sep 2019 12:59:24 +0000 (14:59 +0200)]
Merge branch 'linux-suse-tcl-link' of https://git.code.sf.net/u/jrubio/cdesktopenv into linux-suse-tcl-link

4 years agoLink TCL libraries and restrict tcl8.6 to SuSE only.
Jose Rubio [Sun, 15 Sep 2019 17:01:17 +0000 (19:01 +0200)]
Link TCL libraries and restrict tcl8.6 to SuSE only.

4 years agoUpdate TCL libraries link and restrict tcl8.6 only to SuSE.
Jose Rubio [Sun, 15 Sep 2019 17:01:17 +0000 (19:01 +0200)]
Update TCL libraries link and restrict tcl8.6 only to SuSE.

4 years agoMerge /u/jrubio/cdesktopenv/ branch implicit-int into master
Jon Trulson [Thu, 12 Sep 2019 22:14:19 +0000 (22:14 +0000)]
Merge /u/jrubio/cdesktopenv/ branch implicit-int into master

https://sourceforge.net/p/cdesktopenv/code/merge-requests/9/

4 years agoMerge /u/jrubio/cdesktopenv/ branch pointer-compare into master
Jon Trulson [Thu, 12 Sep 2019 22:11:52 +0000 (22:11 +0000)]
Merge /u/jrubio/cdesktopenv/ branch pointer-compare into master

https://sourceforge.net/p/cdesktopenv/code/merge-requests/8/

4 years agoMerge /u/jrubio/cdesktopenv/ branch linux_aarch64 into master
Jon Trulson [Thu, 12 Sep 2019 22:05:43 +0000 (22:05 +0000)]
Merge /u/jrubio/cdesktopenv/ branch linux_aarch64 into master

https://sourceforge.net/p/cdesktopenv/code/merge-requests/6/

4 years agoMerge /u/jrubio/cdesktopenv/ branch dtksh_include_sys_sysmacros into master
Jon Trulson [Thu, 12 Sep 2019 22:02:51 +0000 (22:02 +0000)]
Merge /u/jrubio/cdesktopenv/ branch dtksh_include_sys_sysmacros into master

https://sourceforge.net/p/cdesktopenv/code/merge-requests/10/

4 years agoFix for deprecated warnings related to gnu libc sys macros.
Jose Rubio [Thu, 12 Sep 2019 11:10:02 +0000 (13:10 +0200)]
Fix for deprecated warnings related to gnu libc sys macros.

The patch only includes sysmacros for linux, the only target with gnu libc to avoid regression issues.

4 years agoisfname.c: remove register keyword
Jon Trulson [Wed, 11 Sep 2019 23:48:06 +0000 (17:48 -0600)]
isfname.c: remove register keyword

4 years agoksh/libast: include sys/sysmacros.h in fmtdev.c for linux systems
Jon Trulson [Wed, 11 Sep 2019 23:30:55 +0000 (17:30 -0600)]
ksh/libast: include sys/sysmacros.h in fmtdev.c for linux systems

Fix scraped from CDE forum post:
https://sourceforge.net/p/cdesktopenv/discussion/general/thread/24d7511a39/

4 years agoFIX: Define Aarch64 as little endian so DtInfo compiles.
Jose Rubio [Thu, 29 Aug 2019 09:12:26 +0000 (11:12 +0200)]
FIX: Define Aarch64 as little endian so DtInfo compiles.

4 years agoFixes for warnings related to -Wimplicit-int.
Jose Rubio [Tue, 20 Aug 2019 10:52:43 +0000 (12:52 +0200)]
Fixes for warnings related to -Wimplicit-int.

4 years agoCleanup of -Wpointer-compare warnings.
Jose Rubio [Mon, 19 Aug 2019 16:02:25 +0000 (18:02 +0200)]
Cleanup of -Wpointer-compare warnings.

4 years agoAdded linux/aarch64 as valid target.
Jose Rubio [Mon, 19 Aug 2019 14:55:11 +0000 (16:55 +0200)]
Added linux/aarch64 as valid target.

4 years agodtprintinfo: remove SUID root on install
Jon Trulson [Tue, 7 May 2019 00:32:14 +0000 (18:32 -0600)]
dtprintinfo: remove SUID root on install

This program should not be SUID root.  If you need it's services, just
run

sudo dtprintinfo -populate

TODO: dtprintinfo should only create it's actions (if ever) in a
user's .dt/types/ directory and not in any system-wide dirs.  No need
for root access at all.

4 years agodtprintinfo: correct another possible buffer overflow
Jon Trulson [Tue, 7 May 2019 00:23:36 +0000 (18:23 -0600)]
dtprintinfo: correct another possible buffer overflow

4 years agodtprintinfo: Fix a potential exploitable buffer overrun
Jon Trulson [Mon, 6 May 2019 23:55:49 +0000 (17:55 -0600)]
dtprintinfo: Fix a potential exploitable buffer overrun

This fixes a potentially exploitable buffer overrun in dtprintinfo.
This was brought to my attention based on a 0day exploit released for
Solaris CDE.

The exploit code does not work (or build) on linux, and the overrun is
in the heap rather than the stack as on Solaris, but it's easy to see
how this could be exploited.

The following is the content of the advisory:

8<-----------------------------------------------------------

@Mediaservice.net (Cybaze Group) Security Advisory #2019-01 (2019-05-07)

         Title: Local privilege escalation via CDE dtprintinfo
   Application: Common Desktop Environment 2.3.0 and earlier
     Platforms: Oracle Solaris 10 1/13 (Update 11) and earlier
   Description: A local attacker can gain root privileges by exploiting
a buffer overflow in CDE dtprintinfo
        Author: Marco Ivaldi <marco.ivaldi@mediaservice.net>
   Contributor: Dave Aitel <dave.aitel@cyxtera.com> (original discovery)
 Vendor Status: <secalert_us@oracle.com> notified on 2019-05-05
<cdesktopenv-devel@lists.sourceforge.net> notified on 2019-05-05
           CVE: The Common Vulnerabilities and Exposures project has not assigned
a name to this issue yet
    References: https://lab.mediaservice.net/advisory/2019-01-cde-dtprintinfo.txt
https://github.com/0xdea/raptor_infiltrate19
https://sourceforge.net/p/cdesktopenv/wiki/Home/
https://www.oracle.com/technetwork/server-storage/solaris10/
https://www.mediaservice.net/
https://infiltratecon.com/

1. Abstract.

A buffer overflow in the DtPrinterAction::PrintActionExists() function in the
Common Desktop Environment 2.3.0 and earlier, as used in Oracle Solaris 10 1/13
(Update 11) and earlier, allows local users to gain root privileges via a long
printer name passed to dtprintinfo by a malicious lpstat program.

This is a 0day vulnerability demonstrated at #INFILTRATE19 on May 2nd, 2019 in
the talk "A bug's life: story of a Solaris 0day".

2. Example Attack Session.

bash-3.2$ cat /etc/release
                    Oracle Solaris 10 1/13 s10x_u11wos_24a X86
  Copyright (c) 1983, 2013, Oracle and/or its affiliates. All rights reserved.
                            Assembled 17 January 2013
bash-3.2$ uname -a
SunOS nostalgia 5.10 Generic_147148-26 i86pc i386 i86pc
bash-3.2$ id
uid=54322(raptor) gid=1(other)
bash-3.2$ gcc raptor_dtprintname_intel.c -o raptor_dtprintname_intel -Wall
bash-3.2$ ./raptor_dtprintname_intel 192.168.1.1:0
raptor_dtprintname_intel.c - dtprintinfo 0day, Solaris/Intel
Copyright (c) 2004-2019 Marco Ivaldi <raptor@0xdeadbeef.info>

Using SI_PLATFORM       : i86pc (5.10)
Using stack base        : 0x8047fff
Using rwx_mem address   : 0xfeffa004
Using sc address        : 0x8047f60
Using strcpy() address  : 0xfefe26a0

lpstat called with -v
lpstat called with -v
lpstat called with -d
uid=0(root) gid=1(other)

3. Affected Platforms.

All platforms shipping the Common Desktop Environment are potentially
affected. This includes:

* Oracle Solaris 10 1/13 (Update 11) and earlier [default installation]

According to the CDE Wiki, the following platforms are officially supported:

* All Official Ubuntu variants 12.04 - 18.04
* Debian 6, 7, 8, 9
* Fedora 17 at least
* Archlinux
* Red Hat
* Slackware 14.0
* OpenBSD
* NetBSD
* FreeBSD 9.2, 10.x, 11.x
* openSUSE Tumbleweed (gcc7)
* openSUSE Leap 4.2 (gcc4)
* SUSE 12 SP3 (gcc4)
* Solaris, OpenIndiana

4. Fix.

The upstream CDE maintainers have issued a patch for this vulnerability. Oracle
is investigating the issue via tracking# S1153109 and is expected to release a
fix for all affected-supported versions of Solaris via their quarterly Critical
Patch Update (CPU) program.

As a temporary workaround, it is possible to remove the setuid bit from the
dtprintinfo executable as follows:

bash-3.2# chmod -s /usr/dt/bin/dtprintinfo

5. Proof of Concept.

A working exploit for Oracle Solaris 10 1/13 (Update 11) Intel has been
developed as a proof of concept. Exploits for other Solaris versions and for
the SPARC architecture are also available. All exploits can be downloaded at:

https://github.com/0xdea/raptor_infiltrate19/
https://github.com/0xdea/exploits/

8<-----------------------------------------------------------

5 years agoNLS: fix quote issue with various OS's in C/types/_common.dt.tmsg
Jon Trulson [Sun, 24 Feb 2019 19:58:31 +0000 (12:58 -0700)]
NLS: fix quote issue with various OS's in C/types/_common.dt.tmsg

5 years agoMerge branch 'master' of ssh://git.code.sf.net/p/cdesktopenv/code
Jon Trulson [Sun, 24 Feb 2019 19:56:10 +0000 (12:56 -0700)]
Merge branch 'master' of ssh://git.code.sf.net/p/cdesktopenv/code

5 years agodtdockbook/instant: Add the proper paths for TCL on NetBSD
Jon Trulson [Sun, 24 Feb 2019 19:54:42 +0000 (12:54 -0700)]
dtdockbook/instant: Add the proper paths for TCL on NetBSD

Patch submitted by Danilo Pecher <danilo.pecher@data-experts.biz>

5 years agoExplicitly initialise two more static pointers
Adam Sampson [Sat, 26 Jan 2019 00:07:36 +0000 (00:07 +0000)]
Explicitly initialise two more static pointers

"dtcm: Coverity 88006" fixed this for buf, but not for string in the
same function (and we may as well initialise string_head for consistency
too).

5 years agoDon't dereference an uninitialised pointer
Adam Sampson [Sat, 26 Jan 2019 00:05:23 +0000 (00:05 +0000)]
Don't dereference an uninitialised pointer

This was an incorrect fix in "dtcm: Coverity 88382".

5 years agoAvoid a NULL pointer dereference
Adam Sampson [Sat, 26 Jan 2019 00:03:34 +0000 (00:03 +0000)]
Avoid a NULL pointer dereference

"dtcm: Coverity 89051" fixed an instance of this on the previous line,
but not this one.

5 years agoUse iconv on linux
Chase [Sat, 12 Jan 2019 22:54:57 +0000 (16:54 -0600)]
Use iconv on linux

5 years agodefine M4Cmd
Alex Ivanov [Tue, 8 Jan 2019 19:13:32 +0000 (22:13 +0300)]
define M4Cmd

5 years agoFixed segfault for mode switching when compiled with clang
tu83 [Sun, 6 Jan 2019 17:55:19 +0000 (18:55 +0100)]
Fixed segfault for mode switching when compiled with clang

dtcalc compiled with clang segfaulted when switched
to a different mode like Deg to Rad or Financial to
Scientific. Was reproducable at least under FreeBSD/AMD64.
Fixed now.

5 years agodtcalc/calctool.h: Use include stdlib rather than extern declarations
Jon Trulson [Thu, 8 Nov 2018 21:19:25 +0000 (14:19 -0700)]
dtcalc/calctool.h: Use include stdlib rather than extern declarations

5 years agolibDtHelp: Fix another regression caused by Coverity fix, clicking 'Help Manager...
Peter Howkins [Wed, 7 Nov 2018 17:04:59 +0000 (17:04 +0000)]
libDtHelp: Fix another regression caused by Coverity fix, clicking 'Help Manager' works again.

5 years agolibDtHelp: Fix a regression with the Help Index pages caused by an overzealous Coveri...
Peter Howkins [Wed, 7 Nov 2018 01:05:56 +0000 (01:05 +0000)]
libDtHelp: Fix a regression with the Help Index pages caused by an overzealous Coverity fix

5 years agolinux: DtHelp/StringFuncs, enable real iconv() support
Jon Trulson [Mon, 5 Nov 2018 22:33:16 +0000 (15:33 -0700)]
linux: DtHelp/StringFuncs, enable real iconv() support

For some reason, the #include of iconv.h was removed, and dummy stubs
were put in place on linux systems (only).  This caused iconv() calls
to be completely ignored.

Now we use iconv() just like very other OS we support.

5 years agoMerge branch 'master' into cde-next
Jon Trulson [Sun, 4 Nov 2018 17:56:04 +0000 (10:56 -0700)]
Merge branch 'master' into cde-next

5 years agoRepair and simplify installCDE.src:CleanDaemons()
Matthew R. Trower [Tue, 30 Oct 2018 13:56:44 +0000 (08:56 -0500)]
Repair and simplify installCDE.src:CleanDaemons()

5 years agoRestore original `tail` functionality in ttsnoop, with POSIX args
Matthew R. Trower [Wed, 31 Oct 2018 02:16:39 +0000 (21:16 -0500)]
Restore original `tail` functionality in ttsnoop, with POSIX args

5 years agoinstallCDE: fix outputting of missing files on install, caused by C&P error in shells...
Peter Howkins [Thu, 1 Nov 2018 22:19:46 +0000 (22:19 +0000)]
installCDE: fix outputting of missing files on install, caused by C&P error in shellshock fixes

5 years agoClean up UseInstalledX11 logic
Matthew R. Trower [Thu, 25 Oct 2018 10:38:28 +0000 (05:38 -0500)]
Clean up UseInstalledX11 logic

5 years agoAdd default TCLLIB, and allow override in host.def
Matthew R. Trower [Thu, 25 Oct 2018 09:51:52 +0000 (04:51 -0500)]
Add default TCLLIB, and allow override in host.def

Restores build on Sun, and maybe others.

5 years agodbtoman: Improve readability
chase [Sun, 14 Oct 2018 20:02:37 +0000 (15:02 -0500)]
dbtoman: Improve readability

5 years agodtdocbook/instant: add Tcl_GetErrorLine check for older versions of Tcl
Jon Trulson [Sun, 7 Oct 2018 19:28:04 +0000 (13:28 -0600)]
dtdocbook/instant: add Tcl_GetErrorLine check for older versions of Tcl

5 years agoClean up OPENBUGS
chase [Sat, 6 Oct 2018 03:23:32 +0000 (22:23 -0500)]
Clean up OPENBUGS

This patch fixes some wierd word splicing that occured with the importing of
the sources, which caused the last letter of many bugs to be cut off, with
some of them cutting off more, I made my best judgement on what was supposed
to be there.

This patch also gets rid of old bugs and software that CDE no longer includes.

5 years agoRemove hpversion.h from repository
chase [Fri, 5 Oct 2018 20:26:13 +0000 (15:26 -0500)]
Remove hpversion.h from repository

This patch removes hpversion.h from the repository, this also untangles a
lot of ifdef mess. This closes bug CDExc19524.

5 years agoremove ultrix support
chase [Sun, 30 Sep 2018 17:28:53 +0000 (12:28 -0500)]
remove ultrix support

5 years agogpftobdf.c: fix long int comiler warnings
chase [Sun, 30 Sep 2018 14:49:27 +0000 (09:49 -0500)]
gpftobdf.c: fix long int comiler warnings

5 years agodebian: misc cleanup
chase [Sun, 30 Sep 2018 01:50:20 +0000 (20:50 -0500)]
debian: misc cleanup

5 years agoMerge branch 'master' into cde-next
Jon Trulson [Sat, 22 Sep 2018 21:50:13 +0000 (15:50 -0600)]
Merge branch 'master' into cde-next

5 years agodocbook.tcl, instant: finish remaining help generation issues with tcl
Jon Trulson [Sat, 22 Sep 2018 18:27:27 +0000 (12:27 -0600)]
docbook.tcl, instant: finish remaining help generation issues with tcl

In this commit, we convert FreeBSD and OpenBSD to use a system version
of TCL (8.6).

We also get rid of the hairy and buggy "CompareI18NStrings" custom Tcl
function and use the newer Tcl's builtin dictionary sort mechanism for
generating the Indexes and Glossaries, which were silently broken in
previous commits.

It was just not possible to use the same Tcl code in modern versions
of Tcl in addition to the ancient version included with CDE - so, now
we will always depend on the system version.  It's been tested with
8.6 and 8.7 versions of Tcl with great results.

5 years agoRemove ancient included tcl code
Jon Trulson [Sat, 22 Sep 2018 18:27:09 +0000 (12:27 -0600)]
Remove ancient included tcl code

5 years agodtdocbook/tcl/tcl.h: Add compatibility defines for old Tcl
Jon Trulson [Thu, 20 Sep 2018 22:50:28 +0000 (16:50 -0600)]
dtdocbook/tcl/tcl.h: Add compatibility defines for old Tcl

dtdocbook/instant has been modified to use a more modern Tcl (8.6),
which means certain functions are not present when we are using the
dtdocbook/tcl (7.5) version of tcl instead of a modern system version.

So, create some defines that should work around this problem.

5 years agoChange version to 2.3.0a (devel)
Jon Trulson [Thu, 20 Sep 2018 22:49:01 +0000 (16:49 -0600)]
Change version to 2.3.0a (devel)

5 years agouse system tcl: clean up Imake files for dtdocbook/instant
Jon Trulson [Wed, 19 Sep 2018 23:49:15 +0000 (17:49 -0600)]
use system tcl: clean up Imake files for dtdocbook/instant

5 years agoinstant: encode 8bit chars to keep Tcl happy
Jon Trulson [Wed, 19 Sep 2018 19:53:20 +0000 (13:53 -0600)]
instant: encode 8bit chars to keep Tcl happy

5 years agodocbook/instant: fix a few more issues
Jon Trulson [Wed, 19 Sep 2018 17:28:48 +0000 (11:28 -0600)]
docbook/instant: fix a few more issues

5 years agodocbook.tcl: fix up some problems using a modern Tcl
Jon Trulson [Wed, 19 Sep 2018 01:02:49 +0000 (19:02 -0600)]
docbook.tcl: fix up some problems using a modern Tcl

One issue that came up was attempting to read array values indexed by
a key that didn't exist when generating indexes and glossaries.

I am not sure why this hasn't been a problem before, but for now, we
simply won't try to emit array values for non-existant array indexes.

5 years agotcl: use the system version, initial work only on linux for now
Jon Trulson [Mon, 17 Sep 2018 19:57:57 +0000 (13:57 -0600)]
tcl: use the system version, initial work only on linux for now

5 years agoil: Remove deprecated files
chase [Thu, 23 Aug 2018 01:10:07 +0000 (20:10 -0500)]
il: Remove deprecated files

5 years agoconfigShlibs.src: Fixup some bugs introduced by previous commits
Jon Trulson [Sun, 26 Aug 2018 22:29:02 +0000 (16:29 -0600)]
configShlibs.src: Fixup some bugs introduced by previous commits

5 years agodtprintegrate: fix shellcheck warnings
chase [Sun, 26 Aug 2018 04:03:02 +0000 (23:03 -0500)]
dtprintegrate: fix shellcheck warnings

5 years agodtappintegrate.src and dtopen.src: fix shellcheck warnings
chase [Sat, 25 Aug 2018 15:06:45 +0000 (10:06 -0500)]
dtappintegrate.src and dtopen.src: fix shellcheck warnings

5 years agoDtsMM.c: Remove null in string
chase [Fri, 24 Aug 2018 21:52:11 +0000 (16:52 -0500)]
DtsMM.c: Remove null in string

5 years agosgmls: remove from repository - we always use nsgmls
Jon Trulson [Sun, 26 Aug 2018 19:17:46 +0000 (13:17 -0600)]
sgmls: remove from repository - we always use nsgmls

This was part of Chase's sgml removal patch, but was not properly
merged by me, leaving the files intact.

5 years agodtfile: Fix up CopyCheckDeletePermission() and CheckDeletePermission
Jon Trulson [Sat, 25 Aug 2018 23:38:48 +0000 (17:38 -0600)]
dtfile: Fix up CopyCheckDeletePermission() and CheckDeletePermission

Remove calls to bogus utility functions in cases where the user is
root and the filesystem in question is an NFS filesystem.

For now, __linux___ and CSRG_BASED machines will use statfs to
determine whether to test delete-ability.  For other systems, just do
the create/delete test always if the user is root.

5 years agoPatch out use of deprecated and now removed ustat(2) function on Linux.
David Cantrell [Tue, 21 Aug 2018 19:41:48 +0000 (15:41 -0400)]
Patch out use of deprecated and now removed ustat(2) function on Linux.

dtfile makes use of ustat(2) on certain systems.  This call has been
deprecated in glibc for a while and now, as of glibc-2.28, it has been
removed.  The recommended replacement is to use statfs(2).