Todd C. Miller
39b540ff33
Log the short version of the tty in sudoers-format logs.
...
This is consistent with historical practice.
2020-10-26 16:10:40 -06:00
Todd C. Miller
4416bd5977
Use libeventlog in sudoers instead of doing our own logging.
2020-10-26 16:10:40 -06:00
Todd C. Miller
541252beb1
Add default values in eventlog_setconf().
2020-10-26 16:10:39 -06:00
Todd C. Miller
bd1ca79cca
Add support for mailing eventlog entries and for logging raw messages.
...
These will be used by the sudoers plugin.
2020-10-26 16:10:37 -06:00
Todd C. Miller
fe6e0fb215
If no JSON callback is provided, store the contents of struct eventlog.
...
This moves the JSON formatting of struct eventlog out of libsudo_iolog
and into libsudo_eventlog where it belongs.
2020-10-26 15:43:43 -06:00
Todd C. Miller
4652698f8e
struct eventlog contains submit_time, no need to pass it in directly.
2020-10-26 15:43:02 -06:00
Todd C. Miller
c0e91d7586
Add an errstr argument to eventlog_alert().
2020-10-26 15:41:47 -06:00
Todd C. Miller
db72498257
Use struct eventlog in place of struct iolog_info.
2020-10-26 15:31:41 -06:00
Todd C. Miller
707437f6cb
Refactor eventlog code into a library
2020-10-26 15:24:35 -06:00
Todd C. Miller
79921387a3
regen Makefiles
2020-10-20 19:23:46 -06:00
Todd C. Miller
88dcdcd11d
Fix -Wshadow warnings.
2020-09-25 15:09:45 -06:00
Todd C. Miller
3d9154cd4f
We need to link with NET_LIBS for gai_strerror() on some systems.
...
From Tim Rice
2020-09-05 21:10:28 -06:00
Todd C. Miller
0f8802676e
Use config.h to handle systems without inline function support.
2020-09-05 19:18:49 -06:00
Todd C. Miller
d56347b981
Define sudo_warn_setlocale_t and use sudo_conv_t in sudo_fatal.h.
...
Works around a bug in older versions of the HP ANSI C compiler
and results in more readable code.
2020-09-05 08:21:43 -06:00
Todd C. Miller
c4b9f6136d
Add missing #ifdef HAVE_CLOCK_GETTIME in getentropy_fallback()
...
From Tim Rice
2020-09-04 15:55:11 -06:00
Todd C. Miller
dad149f785
Add missing dependency info for cfmakeraw.lo in lib/util/Makefile.in
...
From Tim Rice
2020-09-04 15:51:45 -06:00
Todd C. Miller
0576eb0105
Replace "static inline" with "static __inline" for older compilers.
2020-09-04 13:52:46 -06:00
Todd C. Miller
eaa95acb31
Post-process protoc-c files to avoid depending on anonymous unions.
...
Based on a patch from Michael Osipov.
GitHub issue #60
2020-09-04 13:17:51 -06:00
Todd C. Miller
965ad74482
Update to protobuf-c 1.3.3
2020-09-02 09:06:29 -06:00
Todd C. Miller
bd254e1042
Read/write runchroot and runcwd entries in the JSON event log.
2020-09-01 06:26:05 -06:00
Todd C. Miller
86513c78b6
Unit test for exptilde
2020-09-01 06:26:05 -06:00
Todd C. Miller
84e6e6ccf9
Update copyright year on some files where it was out of date.
2020-08-31 14:09:36 -06:00
Todd C. Miller
019f1f6b93
Use sigabbrev_np(3) to access signal abbreviations if supported.
...
glibc-2.32 has removed sys_sigabbrev[], we can use sigabbrev_np(3) instead.
2020-08-25 16:48:13 -06:00
Todd C. Miller
cb2eb8ea94
Add missing ZFALLTHROUGH and use spaces not tabs.
2020-08-13 21:10:08 -06:00
Todd C. Miller
961a4afe67
Fix some warnings from pvs-studio
2020-08-12 13:45:09 -06:00
Todd C. Miller
cbad17a994
Move inclusion of compat headers up with the system headers.
...
Now that sudo_dso_public is defined in config.h we don't need sudo_compat.h
before including the compat headers.
2020-08-12 10:07:07 -06:00
Todd C. Miller
985af422d2
Rename __dso_public -> sudo_dso_public and move to config.h.
2020-08-12 09:57:42 -06:00
Todd C. Miller
076d0376db
We no longer need to include sudo_gettext.h before sudo_compat.h
2020-08-12 09:50:35 -06:00
Todd C. Miller
ce97ca28db
Use OpenBSD-compatible freezero() in place of explicit_bzero() + free()
2020-08-10 19:24:33 -06:00
Todd C. Miller
cef6e3687e
Switch from memset_s() -> explicit_bzero().
...
memset_s() (and all of Annex K) is likely to be removed from the
a future version of the standard.
2020-08-10 19:24:32 -06:00
Todd C. Miller
fa5d44b8b5
Quiet some clang 10 analyzer warnings.
2020-08-07 14:22:56 -06:00
Todd C. Miller
c87a47735d
Add ZFALLTHROUGH macro to use instead of /* FALLTHROUGH */ comments.
2020-08-01 13:43:27 -06:00
Todd C. Miller
03ad96e445
Use the fallthrough attribute instead of /* FALLTHROUGH */ comments.
2020-08-01 13:10:50 -06:00
Todd C. Miller
3175049e45
Fix typo, runas_uid should be runas_gid.
2020-07-06 12:17:58 -06:00
Todd C. Miller
95ba6645d2
Add FALLTHROUGH comments to quiet -Wimplicit-fallthrough
2020-06-20 14:23:19 -06:00
Todd C. Miller
d4739533fd
Add regress test to catch swapids() bug when called by iolog_mkdtemp()
2020-06-18 15:14:00 -06:00
Todd C. Miller
bc6e36e940
Fix a typo that prevented swapids() from restoring the original gid.
...
This led to a regression when the iolog_file setting ends in six or
more X's or when the I/O logs are stored on NFS.
2020-06-16 05:44:57 -06:00
Todd C. Miller
c63ba01e0e
In iolog_openat() enable the write bit on pre-existing files if needed.
...
This prevents problems caused by the change to strip the write bit
from the timing file when it is finished.
2020-05-19 13:14:31 -06:00
Todd C. Miller
0312292e99
Add iolog_clearerr() that acts like clearerr(3).
...
Works for both compressed and uncompressed I/O logs.
2020-05-18 14:16:47 -06:00
Todd C. Miller
8ef5c4cf9d
Set DEFAULT_TEXT_DOMAIN in lib/util's Makefile not individual .c files.
...
We no longer need to include sudo_gettext.h before sudo_compat.h
2020-05-18 11:19:58 -06:00
Todd C. Miller
446ae3f507
Include string.h unconditionally and only use strings.h for strn?casecmp()
...
In the pre-POSIX days BSD had strings.h, not string.h.
Now strings.h is only used for non-ANSI string functions.
2020-05-18 07:59:24 -06:00
Todd C. Miller
dd88460800
We no longer need to include headers we don't use for sudo*.h files.
...
Previously we needed to include headers required by the various
sudo*h files. Now those files are more self-sufficient and we
should only include headers needed by code in the various .c files.
2020-05-18 06:47:04 -06:00
Todd C. Miller
aaea462277
Prefer SIGSYS if SIGUNUSED is defined to the same value.
...
Fixes a regress failure on musl libc where SIGSYS and SIGUNUSED
share the same value.
2020-05-15 19:25:30 -06:00
Todd C. Miller
36bbf629be
Add missing sys/types.h include; fixes a compilation problem on musl libc.
2020-05-15 18:56:40 -06:00
Todd C. Miller
83d1bee918
Rename sudo_parse_host_port -> iolog_parse_host_port and mv to lib/iolog
...
It is not used outside of the I/O log client and server and the
host:port syntax may change in the future.
2020-05-11 08:47:54 -06:00
Todd C. Miller
0cf2e09e0c
Apply spelling fixes.
...
Fixes from PR #30 (ka7) and Bug #925 (fossies.org codespell)
2020-05-06 09:27:43 -06:00
Todd C. Miller
6901fc97ac
Add a ClientHello message that client sends to the server.
...
This makes it easier to detect a plaintext client sending to a
TLS port. Without this, the TLS server will be silent as it
waits for the client to initiate the TLS connection.
2020-05-05 13:23:26 -06:00
Todd C. Miller
e5f8214c0a
Remove the tls parameter from the ServerHello message.
...
The TLS connection is now initiated before ServerHello is received.
2020-05-05 13:23:26 -06:00
Todd C. Miller
b5a317aeb9
Add support for a tls flag in sudo_parse_host_port().
...
If the string "(tls)" appears at the end, the tls flag is set to true
and the default tls port is used if necessary.
2020-05-05 13:23:26 -06:00
Todd C. Miller
0460008c5b
Handle EAGAIN like we do ENOMEM from poll() and select().
...
On some systems, poll() and select() can return EAGAIN instead
of ENOMEM if there is a kernel resource shortage. In this case
we just re-enter the event loop and retry.
2020-05-04 11:23:35 -06:00