diff options
| author | Klemens Nanni | 2021-06-07 23:40:40 +0000 | 
|---|---|---|
| committer | C. McEnroe | 2021-06-09 09:21:51 -0400 | 
| commit | c97a9eb8707bee6b558b1b2bad860bbdc1253588 (patch) | |
| tree | 504b0f30d686b8c1443a8fa84a9c50b0e3c45a1a | |
| parent | a989e156a14462a1bb6c78f6ead115ddd04fed8f (diff) | |
OpenBSD: unveil after ncurses(3) init to support TERMINFO
initscr(3) in uiInitEarly() attempts more than /usr/share/terminfo/, see
`mandoc -O tag=TERMINFO ncurses`.
Even though non-default terminfo handling seems rare and it is unlikely
to have ever caused a problem for catgirl users on OpenBSD, the current
is still wrong by oversimplifying it.
Avoid the entire curses/unveil clash by setting up the screen before
unveiling.
| -rw-r--r-- | chat.c | 8 | 
1 files changed, 4 insertions, 4 deletions
| @@ -157,7 +157,6 @@ static void unveilAll(const char *trust, const char *cert, const char *priv) {  		const char *path;  		const char *perm;  	} paths[] = { -		{ "/usr/share/terminfo", "r" },  		{ tls_default_ca_cert_file(), "r" },  	};  	for (size_t i = 0; i < ARRAY_LEN(paths); ++i) { @@ -306,15 +305,16 @@ int main(int argc, char *argv[]) {  	editCompleteAdd();  	commandCompleteAdd(); +	ircConfig(insecure, trust, cert, priv); + +	uiInitEarly(); +  #ifdef __OpenBSD__  	if (self.restricted) unveilAll(trust, cert, priv);  	int error = pledge("stdio rpath wpath cpath inet dns tty proc exec", NULL);  	if (error) err(EX_OSERR, "pledge");  #endif -	ircConfig(insecure, trust, cert, priv); - -	uiInitEarly();  	if (save) {  		uiLoad(save);  		atexit(exitSave); | 
