THE-Spellchecker
5eba4b48cf
Typographical and Grammatical fixes
2023-11-28 15:00:04 -07:00
Todd C. Miller
55db829087
No need to include sys/param.h here.
2023-11-26 09:28:40 -07:00
Todd C. Miller
be911b77dd
Avoid using the u_int type, which is not portable.
2023-11-26 08:24:26 -07:00
Todd C. Miller
a6ac589cc1
sudo_term_restore: don't check c_cflag on systems with TCSASOFT.
...
If TCSASOFT is present, tcsetattr() will ignore c_cflag.
Fixes a bug where sudo_term_restore() would refuse to change
the terminal settings back if the PARENB control flag was set.
GitHub issue #326 .
2023-11-08 16:58:02 -07:00
Todd C. Miller
097bec06bd
sudo_conf_debug_files: special handling of DSO members for AIX
...
When matching debug files for AIX-style DSOs like sudoers.a(sudoers.so)
we want to match on the full name, the name without the member and
on the member itself. This makes it possible to use the existing
examples in the sudo.conf fiile on AIX.
2023-11-03 11:29:20 -06:00
Todd C. Miller
78edde5ea1
Use NSIG instead of nitems(array) for the loop bound.
...
This matches the sudo_sys_siglist[] and sudo_sys_signame[] declarations.
2023-10-18 13:32:08 -06:00
Todd C. Miller
14d514e5ac
Avoid using %zu or %zd with printf() and fprintf().
...
This prevents problems on systems where the system printf(3) is not
C99-compliant. We use our own snprintf() on such systems so that
is safe.
2023-10-17 20:14:53 -06:00
Todd C. Miller
cf9fc5317e
strlcpy_expand_host, sudo_getdelim, sudo_realpath: add restrict qualifier
2023-10-17 10:47:43 -06:00
Todd C. Miller
fabb6264fc
Better handling of multiple sudo processes modifying terminal settings.
...
1. Lock the terminal before tcgetattr/tcsetattr
2. Don't restore terminal settings if changed by another process
3. Don't set terminal to raw mode if it is already raw
GitHub issue #312
2023-10-16 19:27:27 -06:00
Rose
e095069d2a
Prefer fputs over fprintf where possible
...
fprintf does extra work and meant for formatting strings.
2023-10-15 10:28:57 -06:00
Rose
a4cbd7fe7b
Swap calloc arguments to use them properly.
2023-10-15 10:19:58 -06:00
Rose
b2f8c5666d
Use U, not UL, for 32-bit platforms
...
size_t is an unsigned int on 32-bit platforms, not an unsigned long.
2023-09-27 14:43:09 -06:00
Todd C. Miller
e343e07543
Use #include <foo.h> instead of #include "foo.h" in most cases.
...
We rely on the include path to find many of these headers. It
especially doesn't make sense to use #include "foo.h" for headers
in the top-level include directory.
2023-09-25 10:13:28 -06:00
Todd C. Miller
d53bbb54b2
Add macros to determine the length of an integer type in string form.
...
Adapted from answer #6 in:
https://stackoverflow.com/questions/10536207/ansi-c-maximum-number-of-characters-printing-a-decimal-int
2023-09-19 15:15:02 -06:00
Todd C. Miller
49c7c1f4d3
Only cast TIOCSWINSZ to int on systems that might require it (AIX).
...
Otherwise we end up with a -Wconversion warning on systems where
the ioctl() request argument is unsigned long.
2023-09-15 10:26:29 -06:00
Todd C. Miller
034b2f3bdd
Add testsudoers_setshellfile() and use it in testsudoers.
2023-09-10 16:38:53 -06:00
Todd C. Miller
166ef55aa7
Remove unnecessary sudo_gettext.h include and add missing const.
2023-09-10 10:23:04 -06:00
Todd C. Miller
df969d30b4
Silence a few remaining -Wconversion warnings.
2023-08-23 14:56:50 -06:00
Todd C. Miller
df730dec5d
Suppress some other PVS-Studio false positives.
2023-08-21 13:21:49 -06:00
Todd C. Miller
811051d32a
Use int, not short for events in the event API.
...
This fixes some -Wconversion warnings and fixes an inconsistency
between the libsudo_util event API and the plugin event API. The
actual struct internals still use shorts to avoid changing the ABI.
2023-08-09 13:22:12 -06:00
Todd C. Miller
5f2a0a70e5
Fix printf format string mismatch now that 'i' is size_t.
2023-08-07 11:31:04 -06:00
Todd C. Miller
77f94f291a
sudo_digest_getlen: return size_t, and 0 on error instead of -1
...
This is an API change, sudo_digest_getlen_v1 remains for binary
compatibility.
2023-08-07 08:43:13 -06:00
Todd C. Miller
7cb1f7f3a9
Cast TIOCSWINSZ to int to avoid overflow warning on 64-bit AIX.
2023-07-31 09:58:13 -06:00
Todd C. Miller
432ac12128
Pass TEST_VERBOSE to all test programs.
2023-07-20 10:13:40 -06:00
Todd C. Miller
4b5480cf76
Quiet a warning false positive with older versions of gcc.
2023-07-17 11:23:04 -06:00
Todd C. Miller
625653de08
sudo_term_raw: change the isig argument into a flags field
...
There are current two flags: SUDO_TERM_ISIG (enable terminal signals)
and SUDO_TERM_OFLAG (preserve output flags).
2023-07-14 13:12:51 -06:00
Todd C. Miller
a432aed4f0
realpath.c: include limits.h and use sysconf(_SC_SYMLOOP_MAX)
...
This is more portable and eliminates the need to check for SYMLOOP_MAX
(and provide it if missing) in configure. Also quiet some -Wconversion
warnings.
2023-07-10 15:52:16 -06:00
Todd C. Miller
db6baf2caf
Convert sudo_debug_enter and sudo_debug_exit into macros.
...
In most cases, these simply expand to a call to sudo_debug_printf2().
We need to keep the function versions around in libsudo_util for
backwards compatibility.
2023-07-10 14:30:38 -06:00
Todd C. Miller
2d12a41940
Fix sudo_debug_exit_uint_v1 declaration for fuzzers.
2023-07-10 11:27:28 -06:00
Todd C. Miller
eff4e1c0c5
Add missing sudo_debug_exit_uint_v1 stub for fuzzers.
2023-07-10 11:23:06 -06:00
Todd C. Miller
4f097eebd3
libsudo_util: make more bit flags unsigned.
2023-07-10 11:06:04 -06:00
Rose
5d758264ab
Give every printf-like function restrict qualifiers
...
The format value has to be a string literal, every time.
Otherwise, you are not using these functions correctly. To reinforce this fact, I putrestrict over every non-contrib example of this I could find.
2023-07-07 20:23:20 -04:00
Todd C. Miller
5768d374cc
libsudo_util: silence most -Wconversion warnings.
2023-07-07 15:07:04 -06:00
Todd C. Miller
bced0a7786
Make the remaining instances of digest_type unsigned.
2023-07-06 08:01:15 -06:00
Todd C. Miller
2d1b3c369f
Change sudo_strtomode() to return mode_t.
2023-07-05 09:54:22 -06:00
Todd C. Miller
1f0f6b7c78
Fix some indentation.
2023-07-04 18:03:47 -06:00
Todd C. Miller
bfb6132d9c
Add configure tests for __builtin_clz/__builtin_clzl
2023-07-04 12:39:31 -06:00
Todd C. Miller
0f69939d71
Add fallback for compilers without __builtin_clz/__builtin_clzl
2023-07-04 12:29:52 -06:00
Todd C. Miller
3a7ca0a834
sudo_pow2_roundup: fix 64-bit version when shifting 31 or more places
...
Shift 1UL instead of 1 to avoid overflowing an int.
2023-07-04 08:21:21 -06:00
Rose
8c3e4a33cd
Optimize sudo_pow2_roundup_v1
...
No need to call sudo_pow2_roundup_v2.
2023-07-03 22:32:02 -04:00
Todd C. Miller
fa69ee5e1b
Merge pull request #285 from AtariDreams/bug
...
Remove comment about algorithm being from bit-twiddling hacks
2023-07-03 20:26:20 -06:00
Rose
76d7aefb33
Remove comment about algorithm being from bit-twiddling hacks
...
Said comment no longer applies.
2023-07-03 22:24:55 -04:00
Rose
732110428e
Fix fuzzing errors
...
We should be checking for integer overflow, rather than checking if size is 0.
Additionally, we should set errno to ENOMEM when this overflow happens.
Finally, the most efficient implementation of the round-up-to-2 algorithm involves the clz intrinsic.
2023-07-03 22:20:05 -04:00
Todd C. Miller
f5eb1e0550
sudo_lbuf_expand: limit allocation to UINT_MAX
2023-07-03 19:46:37 -06:00
Todd C. Miller
d3dc70ab62
sudo_parseln: use sudo_pow2_roundup() instead of hand-rolling it.
2023-07-03 17:17:47 -06:00
Todd C. Miller
56a431f7ea
Make sudo_pow2_roundup() operate on size_t.
2023-07-03 16:51:05 -06:00
Todd C. Miller
b926df1df2
Make the debug subsystem unsigned.
...
It was already unsigned in sudoers but not in the front-end or the
python plugin. Making this consistent resolves a lot of -Wconversion
warnings. Also clean up some other -Wconversion warnings in sudo_debug.c.
2023-07-01 16:14:50 -06:00
Rose
45fdfa18f1
Mark functions not returning as sudo_noreturn
...
We also put NOTREACHED where it applies.
2023-07-01 17:40:16 -04:00
Rose
22079c3072
Avoid compiler casting warnings Part 2
...
This saves instructions that are related to casting as well as compiler warnings.
2023-06-29 13:10:27 -04:00
Todd C. Miller
1ba61cd13a
No need to round up to page size with sudo_mmap_alloc().
2023-06-29 10:17:39 -06:00