X-Git-Url: http://ncurses.scripts.mit.edu/?a=blobdiff_plain;f=include%2Fnc_access.h;h=acdf2e0acec93d226ed31c82a6ed7bb6bc8be992;hb=6fd6dd99d32385a01ca639d1d56b90b13e9c1d33;hp=1d86dfa17bdd6e54a537cf429d6698e8d1b099f3;hpb=81304798ee736c467839c779c9ca5dca48db7bea;p=ncurses.git diff --git a/include/nc_access.h b/include/nc_access.h index 1d86dfa1..acdf2e0a 100644 --- a/include/nc_access.h +++ b/include/nc_access.h @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright 2021 Thomas E. Dickey * + * Copyright 2021,2023 Thomas E. Dickey * * * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the * @@ -26,7 +26,7 @@ * authorization. * ****************************************************************************/ -/* $Id: nc_access.h,v 1.1 2021/06/26 21:38:47 tom Exp $ */ +/* $Id: nc_access.h,v 1.5 2023/04/28 20:04:43 tom Exp $ */ #ifndef NC_ACCESS_included #define NC_ACCESS_included 1 @@ -34,39 +34,40 @@ #include #include +#include #ifdef __cplusplus extern "C" { #endif /* - * Turn off this symbol to limit access to environment variables when root. + * Turn off the 'use_terminfo_vars()' symbol to limit access to environment + * variables when running with privileges. */ -#ifdef USE_ROOT_ENVIRON - +#if defined(USE_ROOT_ENVIRON) && defined(USE_SETUID_ENVIRON) #define use_terminfo_vars() 1 - #else - #define use_terminfo_vars() _nc_env_access() -extern NCURSES_EXPORT(int) _nc_env_access (void); - #endif +extern NCURSES_EXPORT(int) _nc_env_access (void); + /* * Turn off this symbol to limit access to files when running setuid. */ #ifdef USE_ROOT_ACCESS -#define safe_fopen(name,mode) fopen(name,mode) +#define safe_fopen(name,mode) fopen(name,mode) +#define safe_open2(name,flags) open(name,flags) #define safe_open3(name,flags,mode) open(name,flags,mode) #else -#define safe_fopen(name,mode) fopen(name,mode) -#define safe_open3(name,flags,mode) open(name,flags,mode) -extern NCURSES_EXPORT(FILE *) _nc_safe_fopen (const char *, const char *); -extern NCURSES_EXPORT(int) _nc_safe_open3 (const char *, int, mode_t); +#define safe_fopen(name,mode) _nc_safe_fopen(name,mode) +#define safe_open2(name,flags) _nc_safe_open2(name,flags,0) +#define safe_open3(name,flags,mode) _nc_safe_open3(name,flags,mode) +extern NCURSES_EXPORT(FILE *) _nc_safe_fopen (const char *, const char *); +extern NCURSES_EXPORT(int) _nc_safe_open3 (const char *, int, mode_t); #endif