Commit Graph

2303 Commits (master)

Author SHA1 Message Date
matthieu 7af07b62e2 Revert parts of the changes in versions 368 and 369 that broke
support of 30bpp displays with TrueType fonts
2022-09-03 06:51:46 +00:00
matthieu 36280ef589 Update twm to version 1.0.12 2022-08-31 09:20:15 +00:00
matthieu 197e19f087 The update to twm 1.0.11 missed upgrading configure.ac.
update and regen autotools files
2022-08-31 08:48:22 +00:00
matthieu f32f27cd2a Update oclock to version 1.0.5 2022-08-31 08:35:51 +00:00
matthieu 306257260c Update ico to version 1.0.6 2022-08-31 08:30:15 +00:00
gnezdo 65d0a6644c Properly support style in passwd\nOK matthieu 2022-08-29 18:11:41 +00:00
matthieu 6c19a92e2b kill extra space at EOL 2022-08-07 08:06:54 +00:00
matthieu f9739d85ea fix indentation style and space/tab 2022-08-07 08:04:41 +00:00
matthieu 10a4b7d422 If unveil(2) fails, display an error with the failing path.
Discussed with deraadt@ ok millert@
2022-08-07 07:10:54 +00:00
matthieu 4f74838129 Set default sleep value to 10ms. This makes ico look nice again. 2022-07-17 08:47:02 +00:00
matthieu dc14df46d8 Update xrefresh to version 1.0.7 2022-07-15 13:05:14 +00:00
matthieu b5b32509c7 Update xmessage to version 1.0.6 2022-07-15 12:59:15 +00:00
matthieu 147368cf2b Update xmag to version 1.0.7 2022-07-15 12:54:23 +00:00
matthieu f9698c892e Update xkbutils to version 1.0.5 2022-07-15 12:49:03 +00:00
matthieu d52fcaab18 Update xev to version 1.2.5 2022-07-15 12:42:48 +00:00
matthieu 3fedd5395e Update to xwud version 1.0.6 2022-07-15 10:31:35 +00:00
matthieu c17f728a49 Update xpr to version 1.1.0
Removes support for old DEC printers
2022-07-15 10:24:18 +00:00
matthieu d14607210c Update xmodpap to version 1.0.11 2022-07-15 10:17:20 +00:00
matthieu 1d3ce46609 Update xfontsel to vesion 1.1.0 2022-07-15 10:10:12 +00:00
matthieu 4148ea6407 Update xconsole to version 1.0.8 2022-07-15 09:54:07 +00:00
matthieu 3869dc9794 Update xcmsdb to version 1.0.6 2022-07-15 09:37:01 +00:00
matthieu 99f5abb2dc Update xclipboard to version 1.1.4 2022-07-15 09:32:07 +00:00
semarie 9417938ea8 xlock: unveil(2) all login.conf files for reading
auth_userokay(3) needs to be able to read these files to properly respect
configuration.

ok tb@ matthieu@
2022-07-07 05:00:19 +00:00
naddy 5fcec91123 X11 session startup: update list of ssh key files, tweak sh code
ok matthieu@
2022-07-01 20:42:06 +00:00
matthieu 6abf343886 Implement privilege separation in xlock(1).
With feedback from stsp@, florian@, op@ ok florian@ op@.
2022-06-26 14:09:51 +00:00
matthieu 649fd50c90 Update xsm to version 1.0.5
Bug fixes and gcc warnings removals.
2022-06-26 10:47:16 +00:00
matthieu 9640aa6200 Update xlsfonts to version 1.0.7
Bug fixes + gcc warnings removal
2022-06-26 10:39:25 +00:00
matthieu ca1de52995 Update xload to version 1.1.4
No functional change.
2022-06-26 10:34:21 +00:00
matthieu a29889d727 Update xedit to version 1.2.3
Bug fixes
2022-06-26 10:25:50 +00:00
matthieu ee462b9077 update xdpyinfo to version 1.3.3
Bug fixes. Among other correctly report recent X server versions.
2022-06-26 08:37:41 +00:00
matthieu 7d1686e90e Get rid of remaining compiler warnings on OpenBSD 2022-06-25 21:12:41 +00:00
matthieu 71430a97b5 Update xclock to version 1.1.1
Bug fixes + smooth hands update in render mode
2022-06-25 21:09:16 +00:00
matthieu 6805087407 Update xcalc to version 1.1.1
No functional changes.
2022-06-25 20:00:33 +00:00
matthieu 62bcd22490 source files do not have the 'x' bit set. Use /bin/sh explicitely 2022-06-25 19:38:15 +00:00
matthieu b7f211187b add file missed by CVS or me in update to xauth 1.1.2 2022-06-25 19:37:02 +00:00
matthieu 31feb85522 Update xauth to version 1.1.2
Bug fixes.
2022-06-25 17:26:35 +00:00
matthieu 5bb88d581f Update setxkbmap to version 1.3.3
Bug fixes.
2022-06-25 17:16:49 +00:00
matthieu dcc42f414d Update mkfontscale to version 1.2.2
Accept ExtraBold for T1 fonts.
2022-06-25 17:11:49 +00:00
matthieu 8cadb81c82 Update listres to version 1.0.5
No functional changes.
2022-06-25 17:07:21 +00:00
matthieu 108e08f957 Update iceauth to version 1.0.9
Bug fixes.
2022-06-25 17:05:31 +00:00
matthieu b5c464895c Update editres to version 1.0.8.
No functional changes.
2022-06-25 17:00:42 +00:00
matthieu 7049d86818 Update bitmap to version 1.1.0
Bug fixes + code reorganisation
2022-06-25 16:22:23 +00:00
matthieu 0823eb8ef4 Update appres to version 1.0.6.
No functional changes
2022-06-25 16:10:46 +00:00
deraadt 8b7214bf5f allowMouseOps default is disabled. adjust documentation. 2022-06-04 23:44:52 +00:00
matthieu aaec4ee837 Document removal of exec-formatted(), exec-selectable() and
spawn-new-terminal() functions.
2022-05-22 15:22:41 +00:00
deraadt 25dfd5d4c8 Back in darker times, xterm was setuid root to add a user entry to the
utmp and wtmp files at startup. real-uid / effective-uid flipping was
used to cleanup the records in these two files at logout-time.  Over
time it was recognized that setuid root is too dangerous, later on
even uid flipping became an unacceptable practice (because an attacker
who finds a bug will simply flip the uid back to root before
continuing exploitation).  Some OS's helped xterm (and other similar
login-related tooling) by making utmp writeable by a new utmp group,
but most did not do the same for wtmp.  xterm started using this new
utmp gid, and the wtmp code moved to "try, and if it fails, ignore the
failure".

The obvious way to use this uid is for xterm to open the utmp file for
write (early on), discard the egid, and keep the file descriptor
around until utmp cleanup at termination.  10-20 lines of code, maybe.
But no,.... that's not what happened.

The previous setuid root flipping code (which is nearly a hundred
lines of #ifdef-wrapped code for portability reasons) was copied and
repurposed by adding new #ifdef code for setgid utmp flipping, and
thus nearly a hundred lines of #ifdef-wrapped code was added).  setgid
flipping has less severe security risks than setuid flipping, but it
is remains an excessively strong and unneccessary power (compared to a
single writeable fd).

When pledge() arrived on the scene, "wpath" was required so that the
utmp file could be opened late, and "id" was required to support egid
flipping.  unveil() arrived on the scene, and the utmp path was added
to the list of viable paths, once again not considering that an incorrect
approach was being taken by the code.

I tried rewriting the portable USE_UTMP_SETGID code to follow the
open-drop-reuse-fd approach, to help out upstream xterm, but it is such
a brain-melting shitshow I gave up, we'll have a (small) intrusive patch
which opens utmp early, drops the gid, and reuses the fd later on.

Maybe upstream will take care of this eventually to reduce the risk of
egid other operating systems.
ok matthieu, much feedback from millert
2022-05-22 14:43:01 +00:00
deraadt 064fa8f9ad Disable wtmp support on OpenBSD, it hasn't worked in nearly two decades
because we dropped setuid root around the, but the code to attempt it
it was erroneously left behind
ok matthieu
2022-05-22 14:07:51 +00:00
deraadt 142eb119d9 Disable the exec-formatted and exec-selectable strictly
ok matthieu
2022-05-22 14:03:01 +00:00
deraadt aa49914ccf Avoid snprintf truncation near environment variables
ok matthieu
2022-05-22 13:56:30 +00:00
deraadt e5be32f8f5 A few support functions can be hidden using OPT_EXEC_XTERM, because
the top-level features are disabled because our xterm uses pledge
without "exec" support.
ok matthieu
2022-05-22 13:50:19 +00:00
matthieu 77c0be362c Update to xterm 372. ok tb@, naddy@. Tested by others too. 2022-04-25 19:20:37 +00:00
matthieu b22f395908 MFC: TI mode: correct key color highlighting
Commit 19eb8cef by Alan Coopersmith.
2022-04-03 07:15:09 +00:00
okan ff9ee77b24 cycling fix: when no client is active, warp pointer to last active;
from Walter Alejandro Iglesias.
2022-02-27 14:59:55 +00:00
okan 9e2fadeb61 whitespace 2022-02-26 15:19:18 +00:00
okan 0dc7557b0f Fix spelling of some unused MWM hints; from Sean C. Farley.
While here, flesh out the rest of the MWM hints.
2022-02-26 15:03:42 +00:00
matthieu 7dc637bc0f Merge Upstream fix for buffer overflow in sixel code.
This code is not compiled on OpenBSD so the shipped xterm are not
vulnerable to this (which is CVE-2022-24130)
Committing the fix in case someone uses this for builds with sixel enabled.
2022-02-21 09:05:40 +00:00
op 531a41ddcd Add group-last command that shows only the previously active group; ok okan 2022-01-27 18:45:10 +00:00
jsg 3ea314d40d stop chowning old drm device nodes 2022-01-06 23:35:41 +00:00
okan 0bc2cafd68 Allow bare numbers for key and mouse bindings; taken from similar
support in other parse.y's; from Leon Fischer <lfischer@airmail.cc>.
2021-12-24 16:00:47 +00:00
robert 8adf53593a switch away from using tradcpp(1) to cpp(1) 2021-11-30 08:52:59 +00:00
okan 76fc387e50 sync parse.y changes from base; ok naddy@
original from naddy@:
> Don't declare variables as "unsigned char *" that are passed to
> functions that take "char *" arguments.  Where such chars are
> assigned to int or passed to ctype functions, explicitly cast them
> to unsigned char.
>
> For OpenBSD's clang, -Wpointer-sign has been disabled by default,
> but when the parse.y code was built elsewhere, the compiler would
> complain.
>
> With help from millert@
> ok benno@ deraadt@
2021-11-22 00:51:54 +00:00
okan e6b99bb28a Do not attempt to grab keys without a keycode; this incidentally allows
XF86 keys support.

found and fix by Luis Henriques <henrix@camandro.org>
2021-11-19 19:13:14 +00:00
matthieu 664b617ea0 Disable mouse tracking by default.
This causes extra control sequences to be sent to the shell when an
application that has it enabled crashes. Discussed with deraadt@
2021-10-31 18:38:43 +00:00
matthieu 6165236df0 Remove 3rd argument to open() when flags don't include O_CREAT 2021-10-25 11:12:09 +00:00
matthieu 59a8bd4e1a Remove 3rd argument to open() when flags don't include O_CREAT
ok deraadt@ ian@
2021-10-25 09:30:33 +00:00
matthieu d4405de0d3 Update to xterm 369. Tested by many. 2021-10-17 09:10:00 +00:00
gkoehler 4e67176f94 Allow login when ~/.Xauthority does not exist
If you had no .Xauthority, you needed to log in twice, because xenodm
created .Xauthority after your 1st session failed.

problem found by solene@
ok matthieu@ deraadt@
2021-09-20 22:48:08 +00:00
matthieu 2b565d78a5 oops typo 2021-09-15 05:48:04 +00:00
matthieu 557efc054c Explicitely disable dmx support 2021-09-15 05:46:34 +00:00
matthieu c2fd33cef2 Don't exit if unveil() fails. ok deraadt@ 2021-09-06 11:15:25 +00:00
matthieu dab7f023ad remove useless <sys/param.h> include 2021-09-03 07:09:08 +00:00
matthieu 7052d2c2a8 Unveil paths needed by xterm at run-time. work with tb@ and deraadt@
Only in (default) case where there are no exec-formatted or
exec-selected resources set. In those case the commands and their
arguments could be anywhere.
2021-09-02 09:31:38 +00:00
martijn ff43a88e32 Make xterm use my_wcwidth unconditionally again.
CharWidth is a conditional wrapper that assumes that all wide characters
in the range 32-126 and 160-255) are latin-1 characters and are identical
with the unicode (UTF-8) codepoints and result in a width of 1.

This is correct in so far that the names of these code-points are
identical, but for SHY (soft-hyphen) the explanation of how it should be
used differs between unicode and latin-1. Latin-1 assumes that it's always
displayed, for unicode it should only be displayed after local grammar
rules apply.

This wrapper got introduced in xterm #334 and is on the short-list of Thomas
Dickey to fix. Since we don't know when the next release is going to be,
commit this one now, so we have it fixed before 7.0.

Originally discrepency between xterm and wcwidth(3) pointed out by Lauri
Tirkkonen (lauri <at> hacktheplanet <dot> fi).
OK matthieu@
2021-08-31 13:14:04 +00:00
matthieu d38f95338b zap trailing white space 2021-08-30 18:18:35 +00:00
matthieu 1079040fc1 Make DEF_SERVER configurable. 2021-08-30 17:01:56 +00:00
matthieu bf33b16568 Generate all the config scripts to avoid hard-coding /usr/X11R6.
This was already done partially.
2021-08-30 15:38:27 +00:00
matthieu 49b44030c3 Update to twm 1.0.11 2021-08-29 18:51:32 +00:00
matthieu ef8457172a Update to xwd 1.0.8 2021-08-29 18:23:57 +00:00
matthieu 08b07b2726 Update to xkbcomp 1.4.5 2021-08-29 18:03:40 +00:00
matthieu d0fc556e06 Update xeyes to 1.2.0 2021-08-29 17:50:32 +00:00
matthieu d691d86121 Update to fonttosfnt 1.2.2 2021-08-29 17:39:13 +00:00
matthieu 8be21fc52c Update to xrdb 1.2.1 2021-08-09 17:45:56 +00:00
matthieu 27bbf7383d Improve the xenodm(1) manual page: describe the behaviour of te provided
Xsetup, Xstartup, Xsession and Xreset scripts and remove the sample code
that don't match the reality.

Also, while there mention more files used, including ~/.xsession-errors.

Based on a report from Laurence Tratt with corrections from jmc@
2021-08-01 20:31:37 +00:00
matthieu f54e14f191 Remove a test target that was not intended to be committed.
Noticed by Brad Smith.
2021-06-26 07:58:37 +00:00
matthieu 6b3071f947 Set VT in Xservers for riscv64 too. 2021-06-26 06:54:34 +00:00
kn 3d5003b37f Keep pointer within window on maximize/fullscreen toggle
Spawn a window, maximize it in any way, move the cursor to a window border
that is not on the screen's edge and unmaximize again:  While the window
goes back the cursor stays at the screen's edge, i.e.  focus is lost to the
underlaying window.

Moving, resizing, tiling or snapping windows in any way always moves the
cursor along iff needed, e.g. using MS-[hjkl] to move a small window from
the center to the edge keeps the cursor within window borders -- no matter
what you do with the keyboard, focus stays on that window.

Make CM-f, CM-m, CM-equal and CMS-equal (default bindings) for toggling
full-screen mode, maximization, vertical maximization and horizontal
maximization of the current window drag the cursor along if needed as well.

OK okan kmos dv
2021-04-22 10:02:55 +00:00
matthieu cc62be9d9c Update to xterm 367. Tested by abieber@, dv@ and Trondd. Thanks. 2021-04-02 18:44:19 +00:00
matthieu 157168dbeb Fix confusion in boolean resources parsing.
This caused wrong resources values on big endian machines.
2021-03-16 15:45:05 +00:00
matthieu 829e92a2b2 Don't create non-existent atoms. ok kn@ 2021-03-16 15:42:24 +00:00
matthieu 9d17ab7910 Skip IPv6 Link Local Addresses for TCP listener authorizations.
IPv6 Link Local addresses in $DISPLAY are not working for a number
of reasons that are unlikely to get fixed. Matches what is done by
startx(1)
2021-03-14 11:28:41 +00:00
matthieu 6c84ad3f57 Fix mis-indentation 2021-03-13 12:14:18 +00:00
matthieu 41a65ee918 Don't add authorizations for TCP connections by default.
Add a new resource 'listenTcp' (false by default) to explicitely
add authorizations for existing IP addresses on startup (and pass
-listen tcp to the X server).

ok kettenis@
2021-03-13 12:11:10 +00:00
matthieu 537d712fc7 Remove the 30s minimum delay for xlock timeouts. From Alex Raschi. 2021-03-13 10:04:27 +00:00
matthieu 9723924a27 Remove code writing .Xauthority in /tmp if it cannot write it in ${HOME}.
Discussed with deraadt@ and zhuk@
2021-03-08 17:54:28 +00:00
mglocker 3ac47dd564 Also call the VIDIOC_STREAMOFF ioctl when we stop a read(2) stream. This
is required by the new video(4) multiopen functionality.
2021-02-16 13:57:41 +00:00
matthieu 84840c0372 Update to xterm 366. tested by jsg@ 2021-02-14 09:14:06 +00:00
jsg f5ba11a186 chown /dev/dri/ nodes if they exist 2021-02-12 10:33:34 +00:00
matthieu 938a4319c5 making the default system.fvwmrc a bit less obsolete.
- remove xman (was removed from xenocara base)
- replace rlogin with ssh in modules
- make the fg color for ssh / telnet prompts black so that's it's
  readable.

ok deraadt@
2021-01-24 20:30:56 +00:00
matthieu 49d63d7057 Remove extra parenthesis 2021-01-24 09:50:25 +00:00
matthieu e4f91c4324 add explicit braces to avoid dangling else warning and fix misleading
indentation.
2021-01-24 09:47:56 +00:00