Todd C. Miller
6b7be032af
Use non-existing allocators in the passwd/group cache functions.
2015-05-27 10:26:49 -06:00
Todd C. Miller
40d72f26e4
Add standalone reallocarray.c from OpenBSD instead of rolling our own.
2015-05-27 10:04:32 -06:00
Todd C. Miller
8c3fd195d2
Add unit tests for strsplit and parse_gid_list.
2015-05-26 20:25:08 -06:00
Todd C. Miller
8d1708434f
Add sudo_strsplit(), similar to strtok_r() but non-destructive and
...
operates on non-C strings (requires a length parameter).
2015-05-26 15:46:41 -06:00
Todd C. Miller
6741fb5378
Use non-exiting allocators.
2015-05-20 10:39:08 -06:00
Todd C. Miller
f18aa478d3
Use a static buffer for sudo_warn/sudo_fatal messages where possible.
2015-05-26 15:24:54 -06:00
Todd C. Miller
82286d8b7b
Add strndup() for those without it. As strndup.c uses strnlen(),
...
use our own if it is missing.
2015-05-26 14:05:26 -06:00
Todd C. Miller
8437e3606b
Add missing sudo_ prefix and include sudo_compat.h.
2015-05-26 14:01:37 -06:00
Todd C. Miller
49d56f323e
Add strnlen() replacement needed for glob.c.
...
Only used if no glob() and no strnlen().
2015-05-26 13:55:18 -06:00
Todd C. Miller
05a01d4c5d
Avoid using a leading underbar in defines as they are reserved in
...
ISO C.
2015-05-21 11:13:20 -06:00
Todd C. Miller
1298ea9107
Add target for "make splint". A few files need extra guards to avoid
...
errors on systems where they would not otherwise be compiled.
No warnings from splint.
2015-05-21 11:07:13 -06:00
Todd C. Miller
cbcaaa299a
No need to cast malloc() return value.
2015-05-14 10:47:09 -06:00
Todd C. Miller
c75eb5bf0d
Use reallocarray where possible.
2015-05-14 10:21:58 -06:00
Todd C. Miller
3595807f4e
Add reallocarray() for those without it.
2015-05-14 10:13:18 -06:00
Todd C. Miller
80cb630bc0
In sudo_warn_gettext_v1() call dgettext() not gettext() to make
...
sure the domain is set correctly. The sudoers plugin uses its own
text domain.
2015-05-12 15:58:05 -06:00
Todd C. Miller
8bc70a635c
Instead of trying to make weak functions work on all platforms,
...
just use a registration function for a plugin-specific setlocale
function. The sudoers version just wraps sudoers_setlocale().
2015-05-11 14:51:32 -06:00
Todd C. Miller
caf5d45e0f
Previously, debug_return_bool was the same as debug_return_int
...
except that it logged true/false for 1/0. However, this appears
to trigger a bug in some compilers. To avoid this, debug_return_bool
now uses bool, not int. Callers that were passing it an int have
been converted to use debug_return_int instead.
2015-05-07 10:33:23 -06:00
Todd C. Miller
eeca3b0ca4
Include sys/types.h instead of unistd.h to get uid_t and gid_t.
...
Add missing include of sys/types.h to a few places.
2015-04-09 10:58:04 -06:00
Todd C. Miller
15037d3b7e
Make libsudo_util depend on libintl instead of requiring users of
...
libsudo_util to link with libintl directly. Bug #690
2015-03-22 08:16:22 -06:00
Todd C. Miller
8088806bd8
Update function names in debug_decl.
2015-03-10 11:09:25 -06:00
Todd C. Miller
ef1b2c3beb
Use TCSAFLUSH instead of TCSANOW in sudo_term_copy().
...
Be consistent with where we put TCSASOFT in the action flags.
2015-03-10 08:55:01 -06:00
Todd C. Miller
9f22416935
Include unistd.h since sudo_compat.h uses gid_t.
2015-03-08 18:53:58 -06:00
Todd C. Miller
a7edf7d984
Remove compat/utime.h, it was only useful for ancient systems that
...
are no longer capable of compiling sudo.
2015-03-03 16:57:55 -07:00
Todd C. Miller
1592192cef
Link libsudo_util with -lrt on systems where clock_gettime is in -lrt.
2015-03-02 16:05:57 -07:00
Todd C. Miller
30adf83b12
Update OpenBSD CVS Ids
2015-03-02 14:43:38 -07:00
Todd C. Miller
5647a1ac46
Make comment match code.
2015-03-02 14:42:17 -07:00
Todd C. Miller
3c79ea75bb
Fix compilation error on systems without futimes().
2015-03-02 14:28:46 -07:00
Todd C. Miller
ee72cba937
Use futimens() and utimensat() instead of futimes() and utimes().
2015-03-02 13:58:50 -07:00
Todd C. Miller
5d2e9426b2
We cannot (easily) use clock_gettime(CLOCK_MONOTONIC) directly as
...
it may be present but not implemented. Add sudo_gettime_real() and
sudo_gettime_mono() functions to get the real and monotonic times
respectively. Now sudo_gettime_mono() checks the value of
sysconf(_SC_MONOTONIC_CLOCK) before calling clock_gettime(CLOCK_MONOTONIC)
and falls back on sudo_gettime_real() as needed. The Mach version
of sudo_gettime_mono() uses mach_absolute_time().
This should fix problems with timestamp files on systems where
the CLOCK_MONOTONIC is defined but not actually implemented.
2015-02-24 11:19:21 -07:00
Todd C. Miller
23f4e49f4d
Plug memory leak when debug file cannot be opened.
...
Use %zu printf format now that our snprintf support it.
2015-02-23 15:40:37 -07:00
Todd C. Miller
1ce9dd5e07
Fix cast.
2015-02-23 06:32:43 -07:00
Todd C. Miller
b5831d55d8
Update snprintf.c from OpenBSD. The floating point and wide character
...
code has been retained but is not compiled by default.
2015-02-21 16:52:14 -07:00
Todd C. Miller
49128a79e3
Add regress for mkdtemp and mkstemps from OpenBSD
2015-02-20 14:37:02 -07:00
Todd C. Miller
be8dbeb22e
Avoid using HOST_NAME_MAX directly and use sysconf(_SC_HOST_NAME_MAX)
...
instead.
2015-02-19 20:28:02 -07:00
Todd C. Miller
8bb5897091
All modern systems should have LINE_MAX.
2015-02-19 09:59:25 -07:00
Todd C. Miller
96eddddc12
Almost no systems actually define OPEN_MAX since it is dynamic on
...
modern OSes. If sysconf(_SC_OPEN_MAX) ever fails, fall back on
_POSIX_OPEN_MAX instead. We can assume modern systems have sysconf().
Also remove checks for strrchr() and strtoll() for which the HAVE_*
defines are no longer used.
2015-02-19 09:59:25 -07:00
Todd C. Miller
1ae2e55141
Fix mkstemps() extension handling. Sudoedit will now preserve the
...
extension properly when the system libc lacks mkstemps().
2015-02-18 06:24:31 -07:00
Todd C. Miller
166db8eeb4
Use weak symbols for sudo_warn_gettext() and sudo_warn_strerror()
...
so distros using "-Wl,--no-undefined" in LDFLAGS don't run into
problems.
2015-02-17 06:42:10 -07:00
Todd C. Miller
8cae9876f3
Include unistd.h in siglist.c and signame.c to get gid_t which
...
is used by sudo_compat.h. Bug #686
2015-02-17 06:21:06 -07:00
Todd C. Miller
6d71b488b6
Call setprogname("sudo") if getprogname() returns NULL or the empty
...
string.
2015-02-05 11:17:24 -07:00
Todd C. Miller
a9bf105eda
Use stdint.h to get SIZE_MAX as inttypes.h on some pre-C99 HP-UX
...
systems doesn't include stdint.h itself.
2015-02-03 10:00:30 -07:00
Todd C. Miller
f2a554f297
Add missing prototypes for usrinfo() and setauthdb() for AIX.
2015-02-03 07:33:25 -07:00
Todd C. Miller
fd149e632e
Need to include inttypes.h for SIZE_MAX
2015-02-02 14:20:24 -07:00
Todd C. Miller
59ab26dbcc
Go back to a 2 args debug_decl and just use the "default" instance,
...
now renamed "active".
2015-02-01 08:24:49 -07:00
Todd C. Miller
2188c83a20
If sudo_debug_register() fails return SUDO_DEBUG_INSTANCE_INITIALIZER,
...
not -1. Otherwise we could end up setting the instance to -1 which
is invalid.
2015-01-21 10:08:41 -07:00
Todd C. Miller
d2d9e6fcc1
Sync with OpenBSD version
2015-01-16 06:48:08 -07:00
Todd C. Miller
19a8a69a92
Don't appear to need sys/param.h for pstat_getproc() on HP-UX even
...
though the man page lists it.
2015-01-14 10:58:32 -07:00
Todd C. Miller
6bd40c622b
Should not need sys/param.h here.
2015-01-14 10:55:42 -07:00
Todd C. Miller
237f3c9dfe
Add support for GLOB_LIMIT from OpenBSD (not currently used) and
...
also a limit on the max recursion depth for glob().
2014-12-16 17:04:13 -07:00
Todd C. Miller
b633e88c12
Quiet compiler sign compare warning.
2014-12-16 10:46:25 -07:00