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
Todd C. Miller
d0c333969a
Remove artificial limit on length of pattern and string. It is
...
possible to use fnmatch() on things other than paths (such as
arguments) so a limit of PATH_MAX does not make sense. Fixes a bug
where rules would fail to match if the length of the arguments were
larger than PATH_MAX (usually 1024).
2014-12-10 14:00:12 -07:00
Todd C. Miller
bc6269e58b
Prevent cppcheck from getting confused by our compat definition of
...
the va_copy macro for pre-C99.
2014-11-15 06:32:39 -07:00
Todd C. Miller
cbe917c540
If there are multiple outputs, ap will be re-used so make a copy
...
and operate on it instead.
2014-11-14 16:30:22 -07:00
Todd C. Miller
04d803c79c
Use SSP_LDFLAGS when creating shared objects.
2014-11-10 14:58:46 -07:00
Todd C. Miller
d00142f552
We only build .lo (not .o) files for libsudo_util
2014-11-10 14:58:45 -07:00
Todd C. Miller
2040d4dde5
Use arc4random() for mkstemp/mkdtemp if available. If not, try to
...
seed from /dev/urandom before falling back to the gettimeofday seed.
2014-10-31 06:57:19 -06:00
Todd C. Miller
ccc210eddb
If a system lacks mkdtemp() or mkstemps(), use our own mkdtemp()
...
and mkstemps(). Previously we only exposed the missing one but
since the guts are the same we might as well use them.
2014-10-29 13:03:39 -06:00
Todd C. Miller
2eed956396
Use a static buffer for sudo_debug_execve2() if possible.
2014-10-31 06:57:17 -06:00
Todd C. Miller
1be81d5720
Fix path settings broken in rev 9731.
2014-10-27 16:31:33 -06:00
Todd C. Miller
f730b28ce0
Adjust regress test now that boolean settings display an error for
...
invalid input.
2014-10-27 16:31:01 -06:00
Todd C. Miller
0982f7838b
Use AC_PROG_AWK
2014-10-27 14:54:13 -06:00
Todd C. Miller
0d6895cbd9
fix comment typo
2014-10-27 14:21:27 -06:00
Todd C. Miller
adfdad9ae0
Version the symbols for sudo_debug.c now that the API is stable.
2014-10-27 05:26:08 -06:00
Todd C. Miller
d5fdd1ea07
Go back to parsing sudo.conf in place for settings and paths and
...
improve debugging info for unsupported entries and parse errors.
2014-10-26 08:33:09 -06:00
Todd C. Miller
6b1b734ffa
Add a flag argument to sudo_conf_read() so we can decide which
...
bits get parsed. This lets us parse Debug statements first and
init the debug subsystem early.
2014-10-26 08:33:08 -06:00
Todd C. Miller
fd8cf2c89b
No need to convert sudoedit -> sudo in sudo_debug_get_instance()
...
as we store the actual program name and only do the sudoedit ->
sudo conversion when reading the sudo.conf file. Fixes debugging
when invoked as sudoedit.
2014-10-24 11:28:39 -06:00
Todd C. Miller
4bf641df69
In the plugin registers with the debug framework at open time, the
...
sudo front-end will now set the default debug instance appropriately
before calling into the plugin. This means the plugin no longer needs
to do the sudo_debug_set_default_instance() dance.
2014-10-24 11:17:48 -06:00
Todd C. Miller
d0cc4d9e4b
Fix inet_ntop() replacement on older systems without it.
...
We only expose the prototype for net_ifs.c due to the
use of socklen_t.
2014-10-23 15:44:03 -06:00
Todd C. Miller
7dc2c8fa1c
Dynamically allocate debug_fds bitmap and realloc as needed.
2014-10-23 14:37:29 -06:00