Commit Graph

48 Commits

Author SHA1 Message Date
Peter Howkins
e54c164fe1 dtlogin: start to resolve static analysis warnings
Also convert some K&R function declarations to ansi
2014-12-23 17:49:11 +00:00
Ulrich Wilkens
01d6c363fa OpenIndiana and Solaris port 2014-10-28 13:40:11 -06:00
Ulrich Wilkens
c3f74eec17 FreeBSD 10 clang port 2014-07-27 12:32:35 -06:00
Peter Tribble
468d576030 initial illumos port 2014-03-22 16:33:11 -06:00
Ulrich Wilkens
2712d5f787 NetBSD port 2014-02-22 19:12:19 -07:00
Ulrich Wilkens
6b0da8f335 Introduction of BSDArchitecture 2013-10-20 16:23:40 -06:00
Isaac Dunham
380867c31c Add -quiet option to dtlogin.
This should shut up the console spamming, for those who use VT1.
Default behavior is not changed.
2013-09-24 18:08:56 -06:00
Isaac Dunham
e3973a9320 dtlogin: use proper path to getty and /usr/local/bin in path on Linux 2013-09-24 18:05:37 -06:00
Ulrich Wilkens
2d08153289 correction of message files 2013-09-15 19:35:53 -06:00
Ulrich Wilkens
4ec9658299 dtinfo other files 2013-08-29 19:47:51 -06:00
Pascal Stumpf
29f2ad7dd7 dtlogin: correct path to getty. 2013-07-25 18:36:34 -06:00
Pascal Stumpf
aa470d2e3a Adapt dtlogin/config/_common.ksh.src for OpenBSD:
* ps(1) is totally different on BSD and Linux.  The OSF commandline works fine.
* fontpath is in /usr/X11R6 on OpenBSD.
2013-07-22 17:24:13 -06:00
Pascal Stumpf
57cfd2162d s,/usr/dt,CDE_INSTALLATION_TOP,g in dtlogin/config 2013-07-22 17:22:23 -06:00
Pascal Stumpf
5153c43c50 Xreset.src: Do not hardcode /usr/dt. 2013-07-22 17:21:20 -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
Karsten Pedersen
69997241c5 Fixed building on FreeBSD 8.x 2013-02-26 17:28:17 -07:00
Pascal Stumpf
c64ac1985b Set NATIVEXBINDIR on OpenBSD. 2012-11-20 17:17:37 -07:00
Pascal Stumpf
c57d2191e8 Respect CDE_CONFIGURATION_TOP and CDE_INSTALLATION_TOP.
Do not hardcode /etc/dt and /usr/dt.
2012-11-20 17:17:33 -07:00
Pascal Stumpf
76c874b068 dtgreet: Do not crash if LANG is not set in the environment.
In that case, catopen() will have never been called, and we'd feed 0 as the
first argument to catgets().  This crashes, at least on OpenBSD.
2012-11-20 17:17:29 -07:00
Pascal Stumpf
0e5560cee4 Correct paths to xterm as failsafe client on the BSDs. 2012-11-20 17:17:25 -07:00
Marcin Cieslak
e7ad6b776e Dtlogin logo for FreeBSD
Install black and white and 128-color custom logos for FreeBSD.

The FreeBSD logo based on the artwork provided by The FreeBSD Foundation:
  http://www.freebsd.org/logo/logo-basic.png

  The mark FreeBSD is a registered trademark of The FreeBSD Foundation
  is are used by Common Desktop Enviroment (CDE) with
  the permission of The FreeBSD Foundation.

  The FreeBSD Logo is a trademark of The FreeBSD Foundation and is used
  by Common Desktop Environment (CDE) with the permission of
  The FreeBSD Foundation.

Use of logo subject to Trademark Usage Terms and Conditions:
    http://www.freebsdfoundation.org/documents/Guidelines.shtml
2012-09-25 11:35:29 -06:00
Marcin Cieslak
c697b943d4 Don't make /var group writable
* Use 0755 permissions for /var (not 0775)
  - this makes sendmail unhappy
* Don't change permissions on /var on dtlogin startup
2012-09-25 11:33:11 -06:00
Marcin Cieslak
071da0d223 BSD: Add /usr/local/bin to the default PATH on login 2012-09-10 12:08:36 -06:00
Marcin Cieslak
c3cb5b8aa6 FreeBSD: Don't set MANPATH, use OS configuration
- make installer to set up man(1) paths using /usr/local/etc/man.d/*
- don't override empty/unset MANPATH with compiled in default
2012-09-10 12:08:34 -06:00
Marcin Cieslak
bd70163b09 FreeBSD: Fix dtlogin failsafe session
We need to have /usr/local as the proper
X11 prefix to start mwm and xterm
2012-09-07 17:32:52 -06:00
Ulrich Wilkens
33da5fa944 Fixes for dtlogin and dtcm on FreeBSD. 2012-09-05 19:27:45 -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
Peter Howkins
2a9b4ec67c dtlogin: Resolve 7 compiler warnings. 2012-08-30 22:30:36 +01:00
Peter Howkins
89e76b2e9b dtlogin: Resolve all -Wformat-security warnings 2012-08-30 22:19:49 +01:00
Ulrich Wilkens
3a28782409 Correction of paths for BSDs 2012-08-29 20:39:02 -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
d31fc60fbf FreeBSD: scan /usr/local/lib/X11/fonts/ for fontpath 2012-08-23 19:56:34 -06:00
Marcin Cieslak
c3cd844df6 Use FreeBSD-specific invocation of /bin/ps 2012-08-23 19:56:31 -06:00
Ulrich Wilkens
3bbcda35b9 Find correct system includes and libs on FreeBSD. 2012-08-19 18:08:31 -06:00
Marcin Cieslak
31aaa48344 FreeBSD port: dtsearch, dtterm, dtwidget, dthelp
FreeBSD portability of dtsearch, dtterm, dtwidget, dthelp

Work in progress for dtlogin and dtmail
2012-08-13 19:53:10 -06:00
Pascal Stumpf
7c3a972d32 Make dtlogin compile on OpenBSD.
Most importantly, we *cannot* do the utmp stuff this code is attempting.
It is SysV-specific.
2012-08-11 19:51:35 -06:00
Pascal Stumpf
131c7a9e04 Imakefile diffs for OpenBSD. 2012-08-11 19:23:43 -06:00
Jon Trulson
a7562a8009 dtlogin: don't try to use /dev/mem to get random data on linux/bsd
dtlogin's genauth routines were trying to open and read /dev/mem on
linux and (presumably) bsd systems in order to obtain random data used
in creating an auth key.

This is bad for a variety of reasons.  Newer linux kernels (at least
on 3.2) issue the following warning to the kernel logs:

"Program dtlogin tried to access /dev/mem between 100000->102000."

Now on linux we will use /dev/urandom, and on CSRG_BASED (bsd) systems
we will use /dev/random to obtain some entropy.
2012-08-07 23:22:44 -06:00
Jon Trulson
4553d912b0 dtlogin: Fix up Options->Language menu
In dtlogin, you can select the language to switch to by selecting it
via Options->Language.  Unfortunately this was also including '.' and
'..', since this list is built dynamically by scanning a directory.

Now we screen out '.' and '..'.
2012-08-03 17:38:06 -06:00
Jon Trulson
191e1849a6 dtlogin|Xsession/config: setup some env variables and fontpath for linux (and CSRG) systems.
What we really need are more fonts installed, like all of the xf 75dpi
and 100dpi fonts.  100dpi looks much better than 75/72 dpi, especially
on any display larger than 1024x768.  Of course, in the far future, we
should use the anti-aliased TT fonts everyone else uses these days
anyway.
2012-06-21 18:05:24 -06:00
Jon Trulson
52360a2cb6 Xsession.src: setup proper cpp_* defines for linux 2012-06-21 17:05:37 -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
de621b906b On the gneeric authenticator use shadow password API if under linux,
allows login on dtlogin.
2012-04-19 17:16:50 +01:00
Peter Howkins
09f0b16cf3 Fix segfault on file not copyright file not found. Only fclose() a file
handle that has been successfully fopen()ed.
2012-04-11 15:37:12 +01:00
Peter Howkins
d1f3e24eac Use C++ linker
Add in freetype headers

Use system provided -lXdmcp and -Xau instead of trying to compile them
from the imports directory.
2012-03-13 16:15:22 +00:00
Peter Howkins
7ed2353605 On Linux no access to pre iso C varargs.h 2012-03-12 11:56:11 +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