get_pty() should return bool
This commit is contained in:
@@ -58,12 +58,12 @@
|
||||
#include "sudo.h"
|
||||
|
||||
#if defined(HAVE_OPENPTY)
|
||||
int
|
||||
bool
|
||||
get_pty(int *master, int *slave, char *name, size_t namesz, uid_t ttyuid)
|
||||
{
|
||||
struct group *gr;
|
||||
gid_t ttygid = -1;
|
||||
int rval = 0;
|
||||
bool rval = false;
|
||||
debug_decl(get_pty, SUDO_DEBUG_PTY)
|
||||
|
||||
if ((gr = getgrnam("tty")) != NULL)
|
||||
@@ -71,18 +71,18 @@ get_pty(int *master, int *slave, char *name, size_t namesz, uid_t ttyuid)
|
||||
|
||||
if (openpty(master, slave, name, NULL, NULL) == 0) {
|
||||
if (chown(name, ttyuid, ttygid) == 0)
|
||||
rval = 1;
|
||||
rval = true;
|
||||
}
|
||||
|
||||
debug_return_bool(rval);
|
||||
}
|
||||
|
||||
#elif defined(HAVE__GETPTY)
|
||||
int
|
||||
bool
|
||||
get_pty(int *master, int *slave, char *name, size_t namesz, uid_t ttyuid)
|
||||
{
|
||||
char *line;
|
||||
int rval = 0;
|
||||
bool rval = false;
|
||||
debug_decl(get_pty, SUDO_DEBUG_PTY)
|
||||
|
||||
/* IRIX-style dynamic ptys (may fork) */
|
||||
@@ -92,7 +92,7 @@ get_pty(int *master, int *slave, char *name, size_t namesz, uid_t ttyuid)
|
||||
if (*slave != -1) {
|
||||
(void) chown(line, ttyuid, -1);
|
||||
strlcpy(name, line, namesz);
|
||||
rval = 1;
|
||||
rval = true;
|
||||
} else {
|
||||
close(*master);
|
||||
*master = -1;
|
||||
@@ -116,11 +116,11 @@ posix_openpt(int oflag)
|
||||
}
|
||||
# endif /* HAVE_POSIX_OPENPT */
|
||||
|
||||
int
|
||||
bool
|
||||
get_pty(int *master, int *slave, char *name, size_t namesz, uid_t ttyuid)
|
||||
{
|
||||
char *line;
|
||||
int rval = 0;
|
||||
bool rval = false;
|
||||
debug_decl(get_pty, SUDO_DEBUG_PTY)
|
||||
|
||||
*master = posix_openpt(O_RDWR|O_NOCTTY);
|
||||
@@ -146,7 +146,7 @@ get_pty(int *master, int *slave, char *name, size_t namesz, uid_t ttyuid)
|
||||
# endif
|
||||
(void) chown(line, ttyuid, -1);
|
||||
strlcpy(name, line, namesz);
|
||||
rval = 1;
|
||||
rval = true;
|
||||
}
|
||||
done:
|
||||
debug_return_bool(rval);
|
||||
@@ -156,13 +156,13 @@ done:
|
||||
|
||||
static char line[] = "/dev/ptyXX";
|
||||
|
||||
int
|
||||
bool
|
||||
get_pty(int *master, int *slave, char *name, size_t namesz, uid_t ttyuid)
|
||||
{
|
||||
char *bank, *cp;
|
||||
struct group *gr;
|
||||
gid_t ttygid = -1;
|
||||
int rval = 0;
|
||||
bool rval = false;
|
||||
debug_decl(get_pty, SUDO_DEBUG_PTY)
|
||||
|
||||
if ((gr = getgrnam("tty")) != NULL)
|
||||
@@ -187,7 +187,7 @@ get_pty(int *master, int *slave, char *name, size_t namesz, uid_t ttyuid)
|
||||
*slave = open(line, O_RDWR|O_NOCTTY, 0);
|
||||
if (*slave != -1) {
|
||||
strlcpy(name, line, namesz);
|
||||
rval = 1; /* success */
|
||||
rval = true; /* success */
|
||||
goto done;
|
||||
}
|
||||
(void) close(*master);
|
||||
|
@@ -195,7 +195,7 @@ int parse_args(int argc, char **argv, int *nargc, char ***nargv,
|
||||
extern int tgetpass_flags;
|
||||
|
||||
/* get_pty.c */
|
||||
int get_pty(int *master, int *slave, char *name, size_t namesz, uid_t uid);
|
||||
bool get_pty(int *master, int *slave, char *name, size_t namesz, uid_t uid);
|
||||
|
||||
/* sudo.c */
|
||||
bool exec_setup(struct command_details *details, const char *ptyname, int ptyfd);
|
||||
|
Reference in New Issue
Block a user