teliva/src/lcurses
Kartik K. Agaram 41bf615f43 nail down trusted Teliva channels a little more
In each session, Teliva has to bootstrap a trusted channel with the
computer owner while running arbitrarily untrusted code. So let's get
really, really precise about what the trusted channel consists of:
  - the bottom-most row of screen containing the menu
  - the keystrokes the owner types in
  - ncurses COLOR_PAIR slots 254 (menu) and 255 (error)

One reason the menu colors are important: we don't want people to get
used to apps that hide the menu colors by setting default
foreground/background to invisible and then drawing their own menu one
row up.

The error COLOR_PAIR I don't see any reason to carve out right now, but
it seems like a good idea for Teliva the framework to not get into the
habit of apps doing some things for it.

I'm not sure how realistic all this is (I feel quite ill-equipped to
think about security), but it seems worthwhile to err on the side of
paranoia. Teliva will be paranoid so people don't have to be.
2021-12-21 15:47:55 -08:00
..
Makefile now building on OpenBSD 2021-11-27 07:58:58 -08:00
_helpers.c inline lcurses maximally rather than minimally 2021-11-19 19:11:03 -08:00
chstr.c inline lcurses maximally rather than minimally 2021-11-19 19:11:03 -08:00
compat-5.2.c standardize warning flags everywhere 2021-11-22 19:01:07 -08:00
compat-5.2.h inline lcurses maximally rather than minimally 2021-11-19 19:11:03 -08:00
curses.c more configurable colors 2021-12-06 16:53:11 -08:00
curses.lua a couple more global curses bindings 2021-11-29 22:40:42 -08:00
strlcpy.c inline lcurses maximally rather than minimally 2021-11-19 19:11:03 -08:00
window.c nail down trusted Teliva channels a little more 2021-12-21 15:47:55 -08:00