Jose Rubio [Fri, 11 Oct 2019 11:43:08 +0000 (13:43 +0200)]
Fix to delete-incomplete warnings.
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.
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
Jose Rubio [Sun, 15 Sep 2019 17:01:17 +0000 (19:01 +0200)]
Link TCL libraries and restrict tcl8.6 to SuSE only.
Jose Rubio [Sun, 15 Sep 2019 17:01:17 +0000 (19:01 +0200)]
Update TCL libraries link and restrict tcl8.6 only to SuSE.
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/
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/
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/
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/
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.
Jon Trulson [Wed, 11 Sep 2019 23:48:06 +0000 (17:48 -0600)]
isfname.c: remove register keyword
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/
Jose Rubio [Thu, 29 Aug 2019 09:12:26 +0000 (11:12 +0200)]
FIX: Define Aarch64 as little endian so DtInfo compiles.
Jose Rubio [Tue, 20 Aug 2019 10:52:43 +0000 (12:52 +0200)]
Fixes for warnings related to -Wimplicit-int.
Jose Rubio [Mon, 19 Aug 2019 16:02:25 +0000 (18:02 +0200)]
Cleanup of -Wpointer-compare warnings.
Jose Rubio [Mon, 19 Aug 2019 14:55:11 +0000 (16:55 +0200)]
Added linux/aarch64 as valid target.
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.
Jon Trulson [Tue, 7 May 2019 00:23:36 +0000 (18:23 -0600)]
dtprintinfo: correct another possible buffer overflow
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<-----------------------------------------------------------
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
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
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>
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).
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".
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.
Chase [Sat, 12 Jan 2019 22:54:57 +0000 (16:54 -0600)]
Use iconv on linux
Alex Ivanov [Tue, 8 Jan 2019 19:13:32 +0000 (22:13 +0300)]
define M4Cmd
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.
Jon Trulson [Thu, 8 Nov 2018 21:19:25 +0000 (14:19 -0700)]
dtcalc/calctool.h: Use include stdlib rather than extern declarations
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.
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
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.
Jon Trulson [Sun, 4 Nov 2018 17:56:04 +0000 (10:56 -0700)]
Merge branch 'master' into cde-next
Matthew R. Trower [Tue, 30 Oct 2018 13:56:44 +0000 (08:56 -0500)]
Repair and simplify installCDE.src:CleanDaemons()
Matthew R. Trower [Wed, 31 Oct 2018 02:16:39 +0000 (21:16 -0500)]
Restore original `tail` functionality in ttsnoop, with POSIX args
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
Matthew R. Trower [Thu, 25 Oct 2018 10:38:28 +0000 (05:38 -0500)]
Clean up UseInstalledX11 logic
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.
chase [Sun, 14 Oct 2018 20:02:37 +0000 (15:02 -0500)]
dbtoman: Improve readability
Jon Trulson [Sun, 7 Oct 2018 19:28:04 +0000 (13:28 -0600)]
dtdocbook/instant: add Tcl_GetErrorLine check for older versions of Tcl
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.
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.
chase [Sun, 30 Sep 2018 17:28:53 +0000 (12:28 -0500)]
remove ultrix support
chase [Sun, 30 Sep 2018 14:49:27 +0000 (09:49 -0500)]
gpftobdf.c: fix long int comiler warnings
chase [Sun, 30 Sep 2018 01:50:20 +0000 (20:50 -0500)]
debian: misc cleanup
Jon Trulson [Sat, 22 Sep 2018 21:50:13 +0000 (15:50 -0600)]
Merge branch 'master' into cde-next
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.
Jon Trulson [Sat, 22 Sep 2018 18:27:09 +0000 (12:27 -0600)]
Remove ancient included tcl code
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.
Jon Trulson [Thu, 20 Sep 2018 22:49:01 +0000 (16:49 -0600)]
Change version to 2.3.0a (devel)
Jon Trulson [Wed, 19 Sep 2018 23:49:15 +0000 (17:49 -0600)]
use system tcl: clean up Imake files for dtdocbook/instant
Jon Trulson [Wed, 19 Sep 2018 19:53:20 +0000 (13:53 -0600)]
instant: encode 8bit chars to keep Tcl happy
Jon Trulson [Wed, 19 Sep 2018 17:28:48 +0000 (11:28 -0600)]
docbook/instant: fix a few more issues
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.
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
chase [Thu, 23 Aug 2018 01:10:07 +0000 (20:10 -0500)]
il: Remove deprecated files
Jon Trulson [Sun, 26 Aug 2018 22:29:02 +0000 (16:29 -0600)]
configShlibs.src: Fixup some bugs introduced by previous commits
chase [Sun, 26 Aug 2018 04:03:02 +0000 (23:03 -0500)]
dtprintegrate: fix shellcheck warnings
chase [Sat, 25 Aug 2018 15:06:45 +0000 (10:06 -0500)]
dtappintegrate.src and dtopen.src: fix shellcheck warnings
chase [Fri, 24 Aug 2018 21:52:11 +0000 (16:52 -0500)]
DtsMM.c: Remove null in string
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.
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.
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).
chase [Tue, 21 Aug 2018 22:56:32 +0000 (17:56 -0500)]
Dtdocbook: Remove old sgmls program
chase [Sat, 18 Aug 2018 20:57:09 +0000 (15:57 -0500)]
Remove old windows support
chase [Sat, 18 Aug 2018 19:58:55 +0000 (14:58 -0500)]
Remove amoeba support
chase [Sat, 18 Aug 2018 18:33:35 +0000 (13:33 -0500)]
post_install: fix shellcheck warnings
chase [Sun, 12 Aug 2018 17:35:46 +0000 (12:35 -0500)]
CDE-RUN: Readd binary entries for dtudcfonted
chase [Fri, 27 Jul 2018 21:44:10 +0000 (16:44 -0500)]
Refactor and reimplement dtudcfonted
chase [Mon, 6 Aug 2018 01:37:51 +0000 (20:37 -0500)]
Revert "Disable building of dtudcfonted and dtudcexch"
This reverts commit
7f70748d6572914541c1a170b339720bc6fcf84b.
chase [Sun, 5 Aug 2018 20:58:15 +0000 (15:58 -0500)]
Revert "dtudcfonted, dtudcexch: delete from repository"
This reverts commit
e0036e6167d9cdcb1c7803f23986a4c2e8593e90.
chase [Sun, 12 Aug 2018 15:15:50 +0000 (10:15 -0500)]
linksLast and uncomment: Fix shellcheck warnings
chase [Wed, 8 Aug 2018 00:43:15 +0000 (19:43 -0500)]
installCDE.src: Fix shellcheck warnings
Peter Howkins [Sat, 11 Aug 2018 00:28:57 +0000 (01:28 +0100)]
libDtHelp: Cov 88381
Peter Howkins [Sat, 11 Aug 2018 00:26:59 +0000 (01:26 +0100)]
libDtHelp: Cov 88365
Peter Howkins [Sat, 11 Aug 2018 00:18:45 +0000 (01:18 +0100)]
libDtHelp: Cov 89129 and 88355
Peter Howkins [Sat, 11 Aug 2018 00:14:03 +0000 (01:14 +0100)]
libDtHelp: Cov 88302
Peter Howkins [Sat, 11 Aug 2018 00:11:04 +0000 (01:11 +0100)]
libDtHelp: Cov 88890 and 88294
Peter Howkins [Sat, 11 Aug 2018 00:08:17 +0000 (01:08 +0100)]
libDtHelp: Cov 88275
Peter Howkins [Sat, 11 Aug 2018 00:05:01 +0000 (01:05 +0100)]
libDtHelp: Cov 88262 and 88459
Peter Howkins [Sat, 11 Aug 2018 00:03:23 +0000 (01:03 +0100)]
libDtHelp: Cov 88240
Peter Howkins [Sat, 11 Aug 2018 00:01:13 +0000 (01:01 +0100)]
libDtHelp: Cov 88209
Peter Howkins [Fri, 10 Aug 2018 23:58:46 +0000 (00:58 +0100)]
libDtHelp: Cov 88162
Peter Howkins [Fri, 10 Aug 2018 23:57:11 +0000 (00:57 +0100)]
libDtHelp: Cov 88119
Peter Howkins [Fri, 10 Aug 2018 23:55:03 +0000 (00:55 +0100)]
libDtHelp: Cov 88109
Peter Howkins [Fri, 10 Aug 2018 23:53:10 +0000 (00:53 +0100)]
libDtHelp: Cov 174697
Peter Howkins [Fri, 10 Aug 2018 23:51:59 +0000 (00:51 +0100)]
libDtHelp: Cov 89532
Peter Howkins [Fri, 10 Aug 2018 23:50:33 +0000 (00:50 +0100)]
libDtHelp: Cov 89524
Peter Howkins [Fri, 10 Aug 2018 23:47:42 +0000 (00:47 +0100)]
libDtHelp: Cov 89401
Peter Howkins [Fri, 10 Aug 2018 23:46:06 +0000 (00:46 +0100)]
libDtHelp: Cov 89084
Peter Howkins [Fri, 10 Aug 2018 23:44:52 +0000 (00:44 +0100)]
libDtHelp: Cov 89012
Peter Howkins [Fri, 10 Aug 2018 23:43:46 +0000 (00:43 +0100)]
libDtHelp: Cov 88952
Peter Howkins [Fri, 10 Aug 2018 23:40:36 +0000 (00:40 +0100)]
libDtHelp: Cov 88724
Peter Howkins [Fri, 10 Aug 2018 23:39:05 +0000 (00:39 +0100)]
libDtHelp: Cov 88526
Peter Howkins [Fri, 10 Aug 2018 23:37:42 +0000 (00:37 +0100)]
libDtHelp: Cov 88465
Peter Howkins [Fri, 10 Aug 2018 23:36:29 +0000 (00:36 +0100)]
libDtHelp: Cov 88221
Peter Howkins [Fri, 10 Aug 2018 23:34:40 +0000 (00:34 +0100)]
libDtHelp: Cov 89366
Peter Howkins [Fri, 10 Aug 2018 23:32:39 +0000 (00:32 +0100)]
libDtHelp: Cov 89172
Peter Howkins [Fri, 10 Aug 2018 23:31:12 +0000 (00:31 +0100)]
libDtUtil: Cov 88127
Peter Howkins [Fri, 10 Aug 2018 23:30:24 +0000 (00:30 +0100)]
libDtUtil: Cov 88123