Fixed even more signedness and conversion issues
This should be the last of them.
This commit is contained in:
@@ -159,10 +159,10 @@ struct sudoers_parse_tree parsed_policy = {
|
||||
* Local prototypes
|
||||
*/
|
||||
static void init_options(struct command_options *opts);
|
||||
static bool add_defaults(int, struct member *, struct defaults *);
|
||||
static bool add_defaults(short, struct member *, struct defaults *);
|
||||
static bool add_userspec(struct member *, struct privilege *);
|
||||
static struct defaults *new_default(char *, char *, short);
|
||||
static struct member *new_member(char *, int);
|
||||
static struct member *new_member(char *, short);
|
||||
static struct sudo_command *new_command(char *, char *);
|
||||
static struct command_digest *new_digest(unsigned int, char *);
|
||||
static void alias_error(const char *name, int errnum);
|
||||
@@ -3406,7 +3406,7 @@ yyreturnlab:
|
||||
void
|
||||
sudoerserrorf(const char *fmt, ...)
|
||||
{
|
||||
const int column = sudolinebuf.toke_start + 1;
|
||||
const int column = (int)(sudolinebuf.toke_start + 1);
|
||||
va_list ap;
|
||||
debug_decl(sudoerserrorf, SUDOERS_DEBUG_PARSER);
|
||||
|
||||
@@ -3438,8 +3438,8 @@ sudoerserrorf(const char *fmt, ...)
|
||||
tofree = NULL;
|
||||
}
|
||||
}
|
||||
sudo_printf(SUDO_CONV_ERROR_MSG, _("%s:%d:%d: %s\n"), sudoers,
|
||||
this_lineno, (int)sudolinebuf.toke_start + 1, s);
|
||||
sudo_printf(SUDO_CONV_ERROR_MSG, _("%s:%d:%zu: %s\n"), sudoers,
|
||||
this_lineno, sudolinebuf.toke_start + 1, s);
|
||||
free(tofree);
|
||||
va_end(ap);
|
||||
sudoers_setlocale(oldlocale, NULL);
|
||||
@@ -3515,7 +3515,7 @@ new_default(char *var, char *val, short op)
|
||||
d->op = op;
|
||||
/* d->binding = NULL; */
|
||||
d->line = this_lineno;
|
||||
d->column = sudolinebuf.toke_start + 1;
|
||||
d->column = (int)(sudolinebuf.toke_start + 1);
|
||||
d->file = sudo_rcstr_addref(sudoers);
|
||||
HLTQ_INIT(d, entries);
|
||||
|
||||
@@ -3523,7 +3523,7 @@ new_default(char *var, char *val, short op)
|
||||
}
|
||||
|
||||
static struct member *
|
||||
new_member(char *name, int type)
|
||||
new_member(char *name, short type)
|
||||
{
|
||||
struct member *m;
|
||||
debug_decl(new_member, SUDOERS_DEBUG_PARSER);
|
||||
@@ -3608,7 +3608,7 @@ free_defaults_binding(struct defaults_binding *binding)
|
||||
* or runas users the entries apply to (determined by the type).
|
||||
*/
|
||||
static bool
|
||||
add_defaults(int type, struct member *bmem, struct defaults *defs)
|
||||
add_defaults(short type, struct member *bmem, struct defaults *defs)
|
||||
{
|
||||
struct defaults *d, *next;
|
||||
struct defaults_binding *binding;
|
||||
@@ -3667,7 +3667,7 @@ add_userspec(struct member *members, struct privilege *privs)
|
||||
}
|
||||
/* We already parsed the newline so sudolineno is off by one. */
|
||||
u->line = sudolineno - 1;
|
||||
u->column = sudolinebuf.toke_start + 1;
|
||||
u->column = (int)(sudolinebuf.toke_start + 1);
|
||||
u->file = sudo_rcstr_addref(sudoers);
|
||||
parser_leak_remove(LEAK_MEMBER, members);
|
||||
HLTQ_TO_TAILQ(&u->users, members, entries);
|
||||
|
@@ -76,10 +76,10 @@ struct sudoers_parse_tree parsed_policy = {
|
||||
* Local prototypes
|
||||
*/
|
||||
static void init_options(struct command_options *opts);
|
||||
static bool add_defaults(int, struct member *, struct defaults *);
|
||||
static bool add_defaults(short, struct member *, struct defaults *);
|
||||
static bool add_userspec(struct member *, struct privilege *);
|
||||
static struct defaults *new_default(char *, char *, short);
|
||||
static struct member *new_member(char *, int);
|
||||
static struct member *new_member(char *, short);
|
||||
static struct sudo_command *new_command(char *, char *);
|
||||
static struct command_digest *new_digest(unsigned int, char *);
|
||||
static void alias_error(const char *name, int errnum);
|
||||
@@ -1223,7 +1223,7 @@ group : ALIAS {
|
||||
void
|
||||
sudoerserrorf(const char *fmt, ...)
|
||||
{
|
||||
const int column = sudolinebuf.toke_start + 1;
|
||||
const int column = (int)(sudolinebuf.toke_start + 1);
|
||||
va_list ap;
|
||||
debug_decl(sudoerserrorf, SUDOERS_DEBUG_PARSER);
|
||||
|
||||
@@ -1255,8 +1255,8 @@ sudoerserrorf(const char *fmt, ...)
|
||||
tofree = NULL;
|
||||
}
|
||||
}
|
||||
sudo_printf(SUDO_CONV_ERROR_MSG, _("%s:%d:%d: %s\n"), sudoers,
|
||||
this_lineno, (int)sudolinebuf.toke_start + 1, s);
|
||||
sudo_printf(SUDO_CONV_ERROR_MSG, _("%s:%d:%zu: %s\n"), sudoers,
|
||||
this_lineno, sudolinebuf.toke_start + 1, s);
|
||||
free(tofree);
|
||||
va_end(ap);
|
||||
sudoers_setlocale(oldlocale, NULL);
|
||||
@@ -1332,7 +1332,7 @@ new_default(char *var, char *val, short op)
|
||||
d->op = op;
|
||||
/* d->binding = NULL; */
|
||||
d->line = this_lineno;
|
||||
d->column = sudolinebuf.toke_start + 1;
|
||||
d->column = (int)(sudolinebuf.toke_start + 1);
|
||||
d->file = sudo_rcstr_addref(sudoers);
|
||||
HLTQ_INIT(d, entries);
|
||||
|
||||
@@ -1340,7 +1340,7 @@ new_default(char *var, char *val, short op)
|
||||
}
|
||||
|
||||
static struct member *
|
||||
new_member(char *name, int type)
|
||||
new_member(char *name, short type)
|
||||
{
|
||||
struct member *m;
|
||||
debug_decl(new_member, SUDOERS_DEBUG_PARSER);
|
||||
@@ -1425,7 +1425,7 @@ free_defaults_binding(struct defaults_binding *binding)
|
||||
* or runas users the entries apply to (determined by the type).
|
||||
*/
|
||||
static bool
|
||||
add_defaults(int type, struct member *bmem, struct defaults *defs)
|
||||
add_defaults(short type, struct member *bmem, struct defaults *defs)
|
||||
{
|
||||
struct defaults *d, *next;
|
||||
struct defaults_binding *binding;
|
||||
@@ -1484,7 +1484,7 @@ add_userspec(struct member *members, struct privilege *privs)
|
||||
}
|
||||
/* We already parsed the newline so sudolineno is off by one. */
|
||||
u->line = sudolineno - 1;
|
||||
u->column = sudolinebuf.toke_start + 1;
|
||||
u->column = (int)(sudolinebuf.toke_start + 1);
|
||||
u->file = sudo_rcstr_addref(sudoers);
|
||||
parser_leak_remove(LEAK_MEMBER, members);
|
||||
HLTQ_TO_TAILQ(&u->users, members, entries);
|
||||
|
@@ -187,8 +187,8 @@ ts_find_record(int fd, struct timestamp_entry *key, struct timestamp_entry *entr
|
||||
cur.size, sizeof(cur));
|
||||
if (lseek(fd, (off_t)cur.size - (off_t)sizeof(cur), SEEK_CUR) == -1) {
|
||||
sudo_debug_printf(SUDO_DEBUG_ERROR|SUDO_DEBUG_ERRNO|SUDO_DEBUG_LINENO,
|
||||
"unable to seek forward %d",
|
||||
(int)cur.size - (int)sizeof(cur));
|
||||
"unable to seek forward %zd",
|
||||
cur.size - ssizeof(cur));
|
||||
break;
|
||||
}
|
||||
if (cur.size == 0)
|
||||
|
@@ -350,13 +350,14 @@ testsudoers_getgrouplist2_v1(const char *name, GETGROUPS_T basegid,
|
||||
GETGROUPS_T **groupsp, int *ngroupsp)
|
||||
{
|
||||
GETGROUPS_T *groups = *groupsp;
|
||||
int i, grpsize, ngroups = 1;
|
||||
int i, ngroups = 1;
|
||||
long grpsize;
|
||||
int ret = -1;
|
||||
struct group *grp;
|
||||
|
||||
if (groups == NULL) {
|
||||
/* Dynamically-sized group vector. */
|
||||
grpsize = (int)sysconf(_SC_NGROUPS_MAX);
|
||||
grpsize = sysconf(_SC_NGROUPS_MAX);
|
||||
if (grpsize < 0)
|
||||
grpsize = NGROUPS_MAX;
|
||||
groups = reallocarray(NULL, grpsize, 4 * sizeof(*groups));
|
||||
|
@@ -437,7 +437,7 @@ get_user_groups(const char *user, struct sudo_cred *cred)
|
||||
cred->groups = NULL;
|
||||
group_source = sudo_conf_group_source();
|
||||
if (group_source != GROUP_SOURCE_DYNAMIC) {
|
||||
int maxgroups = (int)sysconf(_SC_NGROUPS_MAX);
|
||||
long maxgroups = sysconf(_SC_NGROUPS_MAX);
|
||||
if (maxgroups < 0)
|
||||
maxgroups = NGROUPS_MAX;
|
||||
|
||||
|
Reference in New Issue
Block a user