* Root may no longer change its SELinux role without entering
a password.
+ * Fixed a bug introduced in Sudo 1.8.7 where the indexes written
+ to the I/O log timing file are two greater than they should be.
+ Sudoreplay now contains a work-around to parse those files.
+
What's new in Sudo 1.8.7?
* The non-Unix group plugin is now supported when sudoers data
* There is now a standalone sudo.conf manual page.
- * Sudo now stores its libexec files in a "sudo" subdirectory instead
+ * Sudo now stores its libexec files in a "sudo" sub-directory instead
of in libexec itself. For backwards compatibility, if the plugin
is not found in the default plugin directory, sudo will check
the parent directory if the default directory ends in "/sudo".
static struct search_node *node_stack[32];
static int stack_top;
+static int timing_idx_adj = 0;
+
static const char *session_dir = _PATH_SUDO_IO_LOGDIR;
static const char short_opts[] = "d:f:hlm:s:V";
/* Parse index */
ul = strtoul(buf, &ep, 10);
- if (ul > IOFD_MAX)
- goto bad;
- *idx = (int)ul;
+ if (ul >= IOFD_TIMING) {
+ if (ul != 6)
+ goto bad;
+ /* work around a bug in timing files generated by sudo 1.8.7 */
+ timing_idx_adj = 2;
+ }
+ *idx = (int)ul - timing_idx_adj;
for (cp = ep + 1; isspace((unsigned char) *cp); cp++)
continue;