Todd C. Miller
9d526c1af5
Do not write directly to stdout/stderr, use sudo_printf which calls
...
the conversation function.
2016-05-14 19:34:13 -06:00
Todd C. Miller
90fdb6a316
Do not write directly to stdout/stderr, use sudo_printf which calls
...
the conversation function.
2016-05-14 19:33:28 -06:00
Todd C. Miller
578af5af4d
Use ferror() after fflush() to check the error status of the stdio
...
stream we wrote to.
2016-05-14 18:48:20 -06:00
Todd C. Miller
6d63ed8a92
printf() returns < 0 on error, not explicitly -1
2016-05-13 14:48:00 -06:00
Todd C. Miller
7461dcf9a8
Regen for 1.8.17
2016-05-13 12:02:53 -06:00
Todd C. Miller
d25500afa8
Document that you need to preserve EDITOR and/or VISUAL for env_editor
...
to be useful.
2016-05-13 12:02:23 -06:00
Todd C. Miller
a2085809fa
Fix last commit, now that argc is not reset we need to explicitly
...
start the copy from argv[1]. From Daniel Kopecek
2016-05-13 06:40:59 -06:00
Todd C. Miller
ea5bd18b92
cosmetic change to warning string
2016-05-12 10:35:06 -06:00
Todd C. Miller
4f46e07209
Avoid adding an extraneous warning string to sudoers.pot.
2016-05-12 10:33:32 -06:00
Todd C. Miller
e014159fe8
Use EOVERFLOW, not ENOMEM for overflow conditions.
...
For snprintf() and vsnprintf(), POSIX says we should return -1 and
set errno to EOVERFLOW if the size param is > INT_MAX; also zero
out the string in this case (not mandated by POSIX) for safety.
2016-05-12 10:07:59 -06:00
Todd C. Miller
b0be9895d9
Now that pam_open_session() failure is fatal we should print and log
...
an error from it. Bug #744
2016-05-11 15:01:45 -06:00
Todd C. Miller
d3622b0f2c
Repair SELinux support, broken by 397722cdd7ec.
...
From Daniel Kopecek.
2016-05-11 14:02:43 -06:00
Todd C. Miller
05db5aa3b8
Remove sudo_mkpwcache() and sudo_mkgrcache(). We now create the
...
caches as needed on demand. Also remove calls to sudo_freepwcache()
and sudo_freegrcache() that are immediately followed by execve(),
they are not needed.
2016-05-11 09:40:31 -06:00
Todd C. Miller
23d288563e
Eliminate use of setpwent()/endpwent() and setgrent()/endgrent().
...
Sudo never iterates over the passwd or group file.
Rename sudo_set{pw,gr}ent() -> sudo_mk{pw,gr}cache() and
use sudo_free{pw,gr}cache() instead of sudo_end{pw,gr}ent().
2016-05-11 07:06:45 -06:00
Todd C. Miller
8b4de84049
Remove unnecessary NULL checks in the RUNAS_CHANGED macro. The
...
only place where the pointers could be NULL is in visudo_json.c but
we already check for "next" being NULL there. Quiets a cppcheck
warning.
2016-05-10 06:32:55 -06:00
Todd C. Miller
398ddd0467
In replay_session() free iov at the end of the function (if needed)
...
instead of after processing each line from the timing file.
Coverity CID 104843.
2016-05-09 14:54:26 -06:00
Todd C. Miller
e528cad795
Add io_log_read() and io_log_gets() to hide differences between
...
gzread/fread and gzgets/fgets. Check for premature EOF and error
from io_log_read(). Also sanity check the index in the timing file.
Coverity CID 104630.
2016-05-09 14:27:33 -06:00
Todd C. Miller
b04c49dbd3
Break up io_callback() into read_callback() and write_callback()
...
to make it clear that we can't get an event with both read and write
set.
2016-05-09 10:53:20 -06:00
Todd C. Miller
094854adfe
In io_callback() make sure we clear SUDO_EV_READ if we close the
...
fd. It should not be possible for SUDO_EV_READ to be set when
revent is non-NULL but this makes static analyzers happier.
Coverity CID 104124.
2016-05-07 14:51:37 -06:00
Todd C. Miller
194c7c8069
In sudo_krb5_copy_cc_file() move the close(ofd) to the done: label
...
so we only have to cleanup in one place. Coverity CID 104577.
2016-05-07 08:18:27 -06:00
Todd C. Miller
0568fa90cf
Fix memory leak in sudo_netgroup_lookup() in the non-error case.
...
Coverity CID 104572, 104573, 104574, 104575.
2016-05-07 07:57:15 -06:00
Todd C. Miller
334b8f36a8
Fix fd leak in sudo_krb5_copy_cc_file() if restore_perms() fails.
...
Coverity CID 104571.
2016-05-07 07:49:35 -06:00
Todd C. Miller
b84b2e6805
Free the events and event base before returning from replay_session().
...
Coverity CID 104116, 104117.
2016-05-07 05:16:03 -06:00
Todd C. Miller
e99e3c26c8
In sudo_edit_create_tfiles(), fix fd leak if sudo_edit_mktemp() fails.
...
Coverity CID 104114.
2016-05-07 05:10:11 -06:00
Todd C. Miller
355cce4570
Fix fd leak in sudo_edit_open_nonwritable() if dir_is_writable()
...
returns an error. Coverity CID 104113.
2016-05-07 05:07:38 -06:00
Todd C. Miller
d733dd7783
Fix memory leak of sesh_args in selinux_edit_copy_tfiles().
...
Coverity CID 104112.
2016-05-07 05:05:30 -06:00
Todd C. Miller
bbda2e7b5b
Fix memory leak in get_editor() if resolve_editor() fails with
...
an error. Coverity CID 104107.
2016-05-07 04:59:56 -06:00
Todd C. Miller
0f359e038c
Fix memory leak on error if sudo_new_key_val() fails.
...
Coverity CID 104103.
2016-05-07 04:57:11 -06:00
Todd C. Miller
96f5fe4cd0
Ignore the return value of the initial sudoersparse(), before
...
we have actually edited any files. Coverity CID 104078.
2016-05-07 04:52:21 -06:00
Todd C. Miller
00727a310c
Ignore the result of send() on exec error, if it fails the other
...
end of the pipe is gone and we are headed for exit.
Coverity CID 104066.
2016-05-07 04:47:12 -06:00
Todd C. Miller
edd1a1cac5
In fill_args() clean up properly if there is an internal overflow
...
(which should not be possible). Coverity CID 104569.
2016-05-07 04:37:55 -06:00
Todd C. Miller
0ecc6025a2
Fix logic inversion in sudoers_gc_remove(), currently unused.
...
Coverity CID 104568
2016-05-07 04:33:45 -06:00
Todd C. Miller
c56a812ea2
In io_mkdirs(), change the order from stat then mkdir, to mkdir then stat.
...
This more closely matches what "mkdir -p" does.
Coverity CID 104120.
2016-05-06 16:42:42 -06:00
Todd C. Miller
602ed0c747
In ts_mkdirs(), change the order from stat then mkdir, to mkdir then stat.
...
This more closely matches what "mkdir -p" does.
Coverity CID 104119.
2016-05-06 16:37:20 -06:00
Todd C. Miller
5ee1e5bbcb
Newer versions of Ubuntu have switched from using the "admin" group
...
to the "sudo" group to align with Debian. create_admin_success_flag()
now accepts either one.
https://bugs.launchpad.net/ubuntu/+source/sudo/+bug/1387347
2016-05-06 14:30:46 -06:00
Todd C. Miller
7a86430d41
Cast off_t printed via printf(3) instead of assuming it is long long.
2016-05-06 14:17:32 -06:00
Todd C. Miller
151e03fb5b
Instead of using stat(2) to see if the admin flag file exists and
...
creating it if not, just try to create the file and treat EEXIST
as a non-error. Coverity CID 104121.
2016-05-06 14:12:08 -06:00
Todd C. Miller
bb12328064
README file for the sample plugin that tells the user how to build,
...
install and enable it.
2016-05-06 11:30:02 -06:00
Todd C. Miller
cc82c3193e
Fix compilation error and export sample_policy struct.
...
From Michael Evans
2016-05-06 11:12:45 -06:00
Todd C. Miller
3b4f2bbfff
Update for 1.8.17
2016-05-06 09:44:52 -06:00
Todd C. Miller
3b043207b2
Sudo 1.8.17
2016-05-06 09:28:42 -06:00
Todd C. Miller
7b302e09ae
Check return value of restore_perms() in vlog_warning().
...
Coverity CID 104079.
2016-05-06 09:26:45 -06:00
Todd C. Miller
b4cb1c0a1f
Fix memory leaks in resolve_editor() in the error path.
...
Coverity CID 104109, 104110
2016-05-06 09:23:22 -06:00
Todd C. Miller
61c53c8e66
Fix memory leak of gid_list in sudoers_policy_exec_setup() in the
...
error path. Coverity CID 104111.
2016-05-06 09:17:14 -06:00
Todd C. Miller
0690793c25
Fix fd leak in do_logfile() if we fail to lock the log file.
...
Coverity CID 104115.
2016-05-06 09:12:39 -06:00
Todd C. Miller
7a5149d738
Fix memory leak of sss_result in sudo_sss_lookup()
...
Coverity CID 104106
2016-05-06 08:22:03 -06:00
Todd C. Miller
4bfdf0c2b4
Fix fd leak in open_io_fd() if gzdopen/fdopen fails.
...
Coverity CID 104105
2016-05-06 08:11:34 -06:00
Todd C. Miller
444d2a5c3e
Fix fd leak in io_nextid() in error path.
...
Coverity CID 104104
2016-05-06 08:07:40 -06:00
Todd C. Miller
562b5cb59b
Check lseek() return value.
...
Coverity CID 104061.
2016-05-05 16:46:25 -06:00
Todd C. Miller
60e740dd60
Ignore ts_write() return value when disabling an entry with a bogus
...
timestamp. We ignore the timestamp entry even it doesn't succeed.
Coverity CID 104062.
2016-05-05 16:30:11 -06:00