2014-02-04  Todd C. Miller  <Todd.Miller@courtesan.com>

	* NEWS, configure, configure.ac:
	Update for sudo 1.8.9p5
	[3ee678307ef4] <1.8>

	* src/preserve_fds.c:
	When the closefrom limit is greater than any of the preserved fds,
	the pfds list will be non-empty but lastfd will be -1 triggering an
	ecalloc(0) assertion. Instead, test for lastfd being -1 and make
	sure we always update it, even if dup() fails. Also restore initial
	value of lowfd after we are done relocating. Fixes bug #633
	[a11206a31f28]

2014-01-30  Todd C. Miller  <Todd.Miller@courtesan.com>

	* common/atomode.c:
	Zero out errstr when there is no error; fixes bug #632
	[74950ef1a0dc]

2014-01-24  Todd C. Miller  <Todd.Miller@courtesan.com>

	* include/missing.h:
	Fix typo, ULONG_MAX vs. ULLONG_MAX
	[5d274daa9fb1]

	* plugins/sudoers/sudo_nss.c:
	Fix typo in the AIX case.
	[ee531c950fce]

	* plugins/sudoers/sudo_nss.c:
	Size pointer for sudo_parseln() should be size_t not ssize_t. This
	was already correct for the nsswitch.conf case.
	[cfaf895c1db4]

2014-01-15  Todd C. Miller  <Todd.Miller@courtesan.com>

	* NEWS, configure, configure.ac:
	Update for sudo 1.8.9p4
	[f79ab7c6c1c5]

	* common/sudo_debug.c, include/sudo_debug.h, src/preserve_fds.c:
	When relocating fds, update the debug fd if it is set so we are
	guaranteed to get debugging output.
	[b1deaa472aa6]

2014-01-14  Todd C. Miller  <Todd.Miller@courtesan.com>

	* src/exec.c:
	If the event loop exits due to an error and we are not logging I/O,
	kill the command if still running. Fixes a bug where sudo could exit
	while the command was still running.
	[844018ff8a8c]

	* src/preserve_fds.c:
	When relocating preserved fds, start with the highest ones first to
	avoid moving fds around more than we have to. Now uses a bitmap to
	keep track of which fds are being preserved. Fixes a bug where the
	debugging fd could be relocated to the same fd as the error
	backchannel temporarily, resulting in debugging output being printed
	to the backchannel if util@debug was enabled.
	[55e006dbeaf3]

	* src/preserve_fds.c:
	When restoring fds traverse list from high -> low, not low -> high
	to avoid implicitly closing an fd we want to relocate.
	[6351225f47d7]

	* src/exec.c:
	If not logging I/O we may get EOF when the command is executed and
	the other end of the backchannel is closed. Just remove the
	backchannel event in this case or we will continue to receive the
	event. Bug #631
	[a204b69d91f7]

2014-01-13  Todd C. Miller  <Todd.Miller@courtesan.com>

	* src/ttyname.c:
	Fix strtonum() usage when parsing /proc/self/stat on Linux. Bug #630
	[3448dffe9701]

	* NEWS, configure, configure.ac:
	Update for sudo 1.8.9p3
	[22e5a6f69999]

2014-01-09  Todd C. Miller  <Todd.Miller@courtesan.com>

	* NEWS, configure, configure.ac:
	Update for sudo 1.8.9p2
	[2e7fe6e371a4]

	* config.h.in, configure, ltmain.sh, m4/libtool.m4, m4/ltoptions.m4,
	m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4:
	Update to libtool-2.4.2.418
	[d1dbed89d733]

	* config.guess, config.sub:
	Update from http://git.savannah.gnu.org/gitweb/?p=config.git
	[2b5e32d23be5]

2014-01-08  Todd C. Miller  <Todd.Miller@courtesan.com>

	* NEWS:
	Sudo 1.8.9 also fixes bug #617
	[cc5c18228719]

2014-01-07  Todd C. Miller  <Todd.Miller@courtesan.com>

	* NEWS:
	The fix for the hang was already in the 1.8.9 tarballs.
	[f038ebcc1071]

	* NEWS, configure, configure.ac:
	Update for sudo 1.8.9p1
	[732fca0003cf]

	* common/atobool.c, common/event.c, plugins/sudoers/iolog.c,
	plugins/sudoers/parse.h, src/exec.c, src/preserve_fds.c:
	Update copyright year.
	[fdeb5956810e]

	* plugins/sudoers/parse.h:
	Go back to making the bit fields in struct cmndtag explicitly
	signed. This fixes a problem on gcc 4.8 (at least) which appears to
	be treating the value as unsigned by default.
	[46b9a7bb10ac]

	* common/atobool.c:
	Use debug_return_int() instead of bare return for debugging support.
	[c273f822de5f]

2014-01-06  Todd C. Miller  <Todd.Miller@courtesan.com>

	* common/event.c:
	Fix infinite loop that could be triggered by sudo_ev_loopbreak() and
	sudo_ev_loopcontinue().
	[1723561c46b0]

	* NEWS:
	Update for 1.8.9 final.
	[d49c14d21410]

2014-01-04  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/iolog.c:
	Handle a sequence file with no trailing newline.
	[aa29306e4f6d]

2014-01-03  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/iolog.c:
	Truncate io log and timing files on open when recycling them. Only
	an issue when the sequence number wraps around.
	[01b2dfe15ff0]

	* plugins/sudoers/iolog.c:
	Repair reading of the iolog sequence number that got broken when
	adding stricter strtoul() checks.
	[e0f4a11c3437]

	* src/exec.c:
	If invoked as sudoedit we can't just exec the command directly since
	the temporary files need to be updated before sudo exits.
	[508503be1c4f]

	* src/preserve_fds.c:
	Fix restoration of the close-on-exec flag when moving a relocated fd
	back into its original position.
	[5572f1f8b48a]

2014-01-02  Todd C. Miller  <Todd.Miller@courtesan.com>

	* doc/sudoers.cat, doc/sudoers.man.in, doc/sudoers.mdoc.in:
	Add "see below" to reference "Secure editing" section in "Preventing
	shell escapes".
	[b2db990a36b3]

2014-01-01  Todd C. Miller  <Todd.Miller@courtesan.com>

	* doc/sudoers.cat, doc/sudoers.man.in, doc/sudoers.mdoc.in:
	Add initial "Secure editing" section.
	[0d7a192e0e25]

	* doc/LICENSE:
	Update copyright year.
	[4a639d9207a9]

2013-12-31  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/po/eo.mo, plugins/sudoers/po/eo.po,
	plugins/sudoers/po/fi.mo, plugins/sudoers/po/fi.po, src/po/eo.mo,
	src/po/eo.po, src/po/fi.mo, src/po/fi.po:
	sync with translationproject.org
	[5c15a411b10d]

	* plugins/sudoers/policy.c:
	Make user_cwd and user_tty dynamically allocated even for the
	"unknown" case.
	[015454bf97f8]

2013-12-30  Todd C. Miller  <Todd.Miller@courtesan.com>

	* configure, configure.ac:
	Use -fstack-protector-strong in preference to -fstack-protector-all
	or -fstack-protector.
	[bdd1066eefc4]

	* doc/HISTORY:
	Dell acquired Quest
	[3d5b7d27a313]

2013-12-29  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/po/vi.mo, plugins/sudoers/po/vi.po, src/po/ru.mo,
	src/po/ru.po, src/po/vi.mo, src/po/vi.po:
	sync with translationproject.org
	[f964671d08ce]

2013-12-28  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/po/da.mo, plugins/sudoers/po/da.po,
	plugins/sudoers/po/de.mo, plugins/sudoers/po/de.po,
	plugins/sudoers/po/it.mo, plugins/sudoers/po/it.po,
	plugins/sudoers/po/pl.mo, plugins/sudoers/po/pl.po,
	plugins/sudoers/po/pt_BR.mo, plugins/sudoers/po/pt_BR.po,
	plugins/sudoers/po/uk.mo, plugins/sudoers/po/uk.po,
	plugins/sudoers/po/zh_CN.mo, plugins/sudoers/po/zh_CN.po,
	src/po/cs.mo, src/po/cs.po, src/po/da.mo, src/po/da.po,
	src/po/it.mo, src/po/it.po, src/po/pl.mo, src/po/pl.po,
	src/po/pt_BR.mo, src/po/pt_BR.po, src/po/uk.mo, src/po/uk.po,
	src/po/zh_CN.mo, src/po/zh_CN.po:
	sync with translationproject.org
	[5f5becf5fb7a]

	* doc/sudoers.ldap.cat:
	regen
	[77745e6bc0d5]

	* NEWS:
	Update for recent changes.
	[365b9084268a]

	* plugins/sudoers/sudoreplay.c, plugins/sudoers/testsudoers.c,
	plugins/sudoers/visudo.c:
	Fix typo; we want setlocale(LC_ALL, "") since we are setting the
	locale for the first time.
	[e2b9660e9d48]

2013-12-27  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/sudoreplay.c, plugins/sudoers/testsudoers.c,
	plugins/sudoers/visudo.c:
	Use sudoers_initlocale() in main() startup, not sudoers_setlocal()
	as the latter assumes we are already in the user's locale which may
	not be the case. For sudoreplay, we can just use setlocale()
	directly as there is no sudoers locale.
	[12235e50dea0]

2013-12-24  Todd C. Miller  <Todd.Miller@courtesan.com>

	* src/preserve_fds.c, src/sudo.c, src/sudo.h:
	Redo preserve_fds support to remap high fds so we can get the most
	out of closefrom(). The fds are then restored after closefrom().
	[7d712ec49db7]

	* plugins/sudoers/Makefile.in:
	Fix install-plugin when sudoers is compiled statically.
	[36a8bf3b588d]

2013-12-20  Todd C. Miller  <Todd.Miller@courtesan.com>

	* MANIFEST, common/sudo_debug.c, doc/sudo_plugin.cat,
	doc/sudo_plugin.man.in, doc/sudo_plugin.mdoc.in,
	include/sudo_debug.h, include/sudo_plugin.h, src/Makefile.in,
	src/exec.c, src/exec_pty.c, src/preserve_fds.c, src/sudo.c,
	src/sudo.h, src/sudo_exec.h:
	Add support for preventing fds from getting clobbered by
	closefrom().
	[269f45964ff0]

2013-12-19  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/Makefile.in:
	regen
	[b8f458379b5b]

2013-12-18  Todd C. Miller  <Todd.Miller@courtesan.com>

	* common/alloc.c:
	Need to include limits.h here too.
	[b53c6edef597]

2013-12-17  Todd C. Miller  <Todd.Miller@courtesan.com>

	* config.h.in, configure, configure.ac, plugins/sudoers/parse.h:
	No need to use __signed.
	[05f9648d1953]

	* plugins/sudoers/regress/logging/check_wrap.c:
	Need limits.h here too.
	[54aac3bbf66a]

	* compat/closefrom.c:
	Still need limits.h here.
	[0abc6b2be208]

	* plugins/sudoers/po/sudoers.pot:
	regen
	[386b47ced07f]

	* compat/closefrom.c:
	Go back to using /proc/self/fd instead of /proc/$$/fd as only AIX
	lacks /proc/self and it has F_CLOSEM.
	[b5735fbcfdce]

2013-12-16  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/visudo_json.c:
	Use a switch to map digest type to name instead of an array of
	strings.
	[ab17ceb4dd60]

	* compat/closefrom.c:
	Use /dev/fd in closefrom() on FreeBSD < 8.0 and Mac OS X.
	[e70df3b3144b]

	* compat/snprintf.c:
	Remove _MAX and _MIN compat; we rely on missing.h for that. We
	already require the compiler handle long long so there's no need to
	use HAVE_LONG_LONG_INT everywhere.
	[2bda15071439]

	* common/ttysize.c, include/missing.h:
	Remove _MAX and _MIN defines that any system from the last 20 years
	should have. Add ULLONG_MAX in case it is missing.
	[2db0cee4aaa8]

	* doc/visudo.cat, doc/visudo.man.in, doc/visudo.mdoc.in,
	plugins/sudoers/visudo.c, plugins/sudoers/visudo_json.c:
	Change visudo -x to take a file name argument, which may be '-' to
	write the exported sudoers file to stdout.
	[84cb72c3c391]

	* plugins/sudoers/auth/bsdauth.c, plugins/sudoers/gram.c,
	plugins/sudoers/gram.y, plugins/sudoers/parse.c,
	plugins/sudoers/sudoers.c, plugins/sudoers/sudoers.h,
	plugins/sudoers/testsudoers.c, plugins/sudoers/toke.c,
	plugins/sudoers/toke.l, plugins/sudoers/visudo.c,
	plugins/sudoers/visudo_json.c, src/regress/ttyname/check_ttyname.c:
	Move symbol extern defs into sudoers.h
	[b631a0b57fae]

	* plugins/sudoers/regress/check_symbols/check_symbols.c,
	plugins/sudoers/regress/logging/check_wrap.c:
	Add missing sudo_util.h
	[ed0edc2e2d0c]

2013-12-14  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/sudoreplay.c:
	Warn if the time stamp in the I/O log file does not fit in time_t.
	Warn if the info line is not well-formed instead of silently
	ignoring it.
	[37a050de5be5]

2013-12-13  Todd C. Miller  <Todd.Miller@courtesan.com>

	* common/Makefile.in, plugins/sudoers/Makefile.in, src/Makefile.in:
	Rename libcommon libsudo_util
	[df3ffd4229e5]

2013-12-12  Todd C. Miller  <Todd.Miller@courtesan.com>

	* MANIFEST, common/Makefile.in, common/aix.c, common/atobool.c,
	common/atoid.c, common/atomode.c, common/fmt_string.c,
	common/gidlist.c, common/progname.c, common/setgroups.c,
	common/sudo_conf.c, common/term.c, common/ttysize.c,
	include/missing.h, include/sudo_util.h,
	plugins/group_file/Makefile.in, plugins/group_file/getgrent.c,
	plugins/sudoers/Makefile.in, plugins/sudoers/sudoers.h,
	plugins/sudoers/sudoreplay.c, plugins/system_group/Makefile.in,
	plugins/system_group/system_group.c, src/Makefile.in, src/sudo.h:
	Move prototypes for functions provided by libcommon that don't have
	their own header files into sudo_util.h.
	[43f423a24416]

2013-12-11  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/auth/sudo_auth.c, plugins/sudoers/def_data.c,
	plugins/sudoers/def_data.h, plugins/sudoers/def_data.in,
	plugins/sudoers/defaults.c, plugins/sudoers/defaults.h,
	plugins/sudoers/logging.c, plugins/sudoers/logging.h,
	plugins/sudoers/mkdefaults:
	Now that we have proper number parsing functions we should store
	T_UINT defaults values as unsigned int, not int.
	[67d8c2244f1d]

	* plugins/sudoers/defaults.c, plugins/sudoers/defaults.h:
	Don't use int where we really mean enum def_tuple. When this code
	was written it was assumed that we may have multiple tuple types.
	However, that hasn't happened and probably never will.
	[8491f970f343]

	* plugins/sudoers/po/sudoers.pot, src/po/sudo.pot:
	Regen after string parsing changes.
	[fd6bf79c3286]

	* common/atoid.c, common/atomode.c, compat/strtonum.c, configure,
	configure.ac, include/missing.h, plugins/sudoers/defaults.c,
	plugins/sudoers/iolog.c, plugins/sudoers/ldap.c,
	plugins/sudoers/sudoreplay.c, src/parse_args.c, src/ttyname.c:
	The OpenBSD strtonum() uses very short error strings that can't be
	translated usefully. Convert them to longer strings on error. Also
	use the longer strings for atomode() and atoid().
	[dace028594da]

2013-12-10  Todd C. Miller  <Todd.Miller@courtesan.com>

	* MANIFEST, common/Makefile.in, common/atoid.c, common/atomode.c,
	plugins/sudoers/defaults.c, plugins/sudoers/policy.c,
	plugins/sudoers/sudoers.h, src/sudo.c, src/sudo.h:
	Add atomode() function for parsing a file mode.
	[44e29629aa5e]

	* common/sudo_conf.c, common/ttysize.c, compat/Makefile.in,
	compat/closefrom.c, compat/getaddrinfo.c, compat/strtonum.c,
	configure, configure.ac, include/missing.h,
	plugins/sudoers/boottime.c, plugins/sudoers/defaults.c,
	plugins/sudoers/iolog.c, plugins/sudoers/ldap.c,
	plugins/sudoers/match_addr.c, plugins/sudoers/policy.c,
	plugins/sudoers/regress/logging/check_wrap.c,
	plugins/sudoers/regress/parser/check_addr.c,
	plugins/sudoers/sudoreplay.c, plugins/system_group/system_group.c,
	src/parse_args.c, src/sudo.c, src/ttyname.c:
	Use strtonum() instead of atoi(), strtol() or strtoul() where
	possible.
	[e4a1fc84b893]

	* MANIFEST, compat/Makefile.in, compat/strtonum.c, config.h.in,
	configure, configure.ac, include/missing.h, mkdep.pl:
	Add strtonum.c to compat for simpler number parsing.
	[a4c69b003da0]

2013-12-09  Todd C. Miller  <Todd.Miller@courtesan.com>

	* src/exec_common.c:
	Fix a warning on Solaris, we need to use debug_return_const_ptr.
	[932aa94c0cac]

	* plugins/sudoers/Makefile.in:
	check_symbols needs to link with SUDO_LIBS in order to get -lpthread
	on HP-UX for libldap (which uses threads). It would be better to
	have a separate variable for the pthread library but this is no
	worse than it used to be.
	[94591b765371]

2013-12-08  Todd C. Miller  <Todd.Miller@courtesan.com>

	* doc/sudo.cat, doc/sudo.man.in, doc/sudo.mdoc.in:
	add missing comma
	[7dcbd1c6dd25]

	* doc/sudo.cat, doc/sudo.man.in, doc/sudo.mdoc.in:
	Make -c option description more accurate.
	[3f305ae6037e]

2013-12-07  Todd C. Miller  <Todd.Miller@courtesan.com>

	* doc/CONTRIBUTORS, plugins/sudoers/sudoers.c:
	When checking whether a user may change the login class, just check
	pw_uid of the runas user, which was passed in to set_loginclass().
	[aaf736440441]

2013-12-06  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/visudo_json.c:
	Use atoid() when parsing user/group IDs and print them as unsigned
	int.
	[40c77459a36a]

2013-12-05  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/sudoreplay.c:
	Correctly parse 64-bit times in I/O log files.
	[d053ee75adc3]

	* compat/getgrouplist.c, plugins/group_file/getgrent.c,
	plugins/sudoers/pwutil.c,
	plugins/sudoers/regress/iolog_path/check_iolog_path.c,
	plugins/sudoers/sudoers.c, plugins/sudoers/testsudoers.c:
	Use atoid() not atoi() when parsing uids/gids.
	[491146596626]

	* plugins/sudoers/match.c, plugins/sudoers/match_addr.c,
	plugins/sudoers/parse.h, plugins/sudoers/pwutil.c,
	plugins/sudoers/pwutil.h, plugins/sudoers/pwutil_impl.c,
	plugins/sudoers/sudoers.h:
	Better match debugging. Sprinkle const in match functions.
	[4cd8d793f165]

2013-12-04  Todd C. Miller  <Todd.Miller@courtesan.com>

	* doc/sudo.cat, doc/sudo.conf.cat, doc/sudo.conf.man.in,
	doc/sudo.conf.mdoc.in, doc/sudo.man.in, doc/sudo.mdoc.in,
	doc/sudo_plugin.cat, doc/sudo_plugin.man.in,
	doc/sudo_plugin.mdoc.in:
	Document that plugins can be compiled statically into the sudo
	binary.
	[434061cf909f]

2013-12-03  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/sssd.c:
	sudo_sss_filter_user_netgroup(): fix comment typos, break out of
	loop early if we match ALL or netgroup.
	[0691731f4b12]

	* plugins/sudoers/sssd.c:
	When filtering netgroups, use the passwd struct stashed in the
	handle, not user_name since we may be listing another users
	privileges.
	[f2669cf7b70c]

	* mkpkg:
	RHEL 6 and above builds sudo with SSSD support
	[afc3d894851e]

	* plugins/sudoers/sssd.c:
	Avoid passing NULL domainname to sudo_debug_printf().
	[b08abe5e6d23]

	* doc/sudoers.cat, doc/sudoers.man.in, doc/sudoers.mdoc.in:
	Document sssd debug subsystem.
	[250c3ab1bcf0]

	* doc/sudo.conf.cat, doc/sudo.conf.man.in, doc/sudo.conf.mdoc.in:
	Document "event" debug subsystem.
	[85d220b48edc]

	* plugins/sudoers/match.c:
	Use atoid() instead of atoi() when parsing uids/gids so we get
	proper range checking.
	[5c3e2f3f6cb9]

	* plugins/sudoers/sssd.c:
	Add user netgroup filtering for SSSD. Previously, rules for a
	netgroup were applied to all even when they did not belong to the
	specified netgroup. RedHat Bugzilla 880150.
	[784848b5462c]

	* plugins/sudoers/sssd.c:
	Fix several issues found by the clang static analyzer; Daniel
	Kopecek
	[520261dd7461]

2013-12-02  Todd C. Miller  <Todd.Miller@courtesan.com>

	* README.LDAP:
	Mention how to dump sudoers info from LDAP.
	[a53c93790a30]

	* src/exec_common.c:
	On Solaris, disabling the proc_exec privilege appears to interfere
	with DAC file permissions. Adding DAC override permissions to the
	inheritable set works around this for commands run as root without
	giving extra permissions to other users. Bug #626
	[391ad44026c3]

2013-12-01  Todd C. Miller  <Todd.Miller@courtesan.com>

	* MANIFEST, common/Makefile.in, common/progname.c, compat/Makefile.in,
	compat/getprogname.c, configure, configure.ac, include/missing.h,
	mkdep.pl, plugins/sample/sample_plugin.c, plugins/sudoers/policy.c,
	plugins/sudoers/regress/check_symbols/check_symbols.c,
	plugins/sudoers/regress/iolog_path/check_iolog_path.c,
	plugins/sudoers/regress/logging/check_wrap.c,
	plugins/sudoers/regress/parser/check_addr.c,
	plugins/sudoers/sudoreplay.c, plugins/sudoers/testsudoers.c,
	plugins/sudoers/visudo.c, src/parse_args.c,
	src/regress/ttyname/check_ttyname.c, src/sudo.c:
	Instead of setprogname(), add initprogname() which gets the program
	name for getprogname() using /proc or pstat() if possible.
	[e2d48d81456f]

2013-11-30  Todd C. Miller  <Todd.Miller@courtesan.com>

	* src/ttyname.c:
	Ignore EOVERFLOW from pstat_getproc(). The HP-UX kernel appears to
	return this in certain situations but it appears to be harmless at
	least insofar as retrieving the tty goes.
	[105bea4e1c20]

	* plugins/sudoers/po/de.mo, plugins/sudoers/po/de.po,
	plugins/sudoers/po/eo.mo, plugins/sudoers/po/eo.po,
	plugins/sudoers/po/fi.mo, plugins/sudoers/po/fi.po,
	plugins/sudoers/po/it.mo, plugins/sudoers/po/it.po,
	plugins/sudoers/po/pl.mo, plugins/sudoers/po/pl.po,
	plugins/sudoers/po/pt_BR.mo, plugins/sudoers/po/pt_BR.po,
	plugins/sudoers/po/uk.mo, plugins/sudoers/po/uk.po,
	plugins/sudoers/po/vi.mo, plugins/sudoers/po/vi.po,
	plugins/sudoers/po/zh_CN.mo, plugins/sudoers/po/zh_CN.po,
	src/po/cs.mo, src/po/cs.po, src/po/eo.mo, src/po/eo.po,
	src/po/fi.mo, src/po/fi.po, src/po/it.mo, src/po/it.po,
	src/po/pl.mo, src/po/pl.po, src/po/pt_BR.mo, src/po/pt_BR.po,
	src/po/ru.mo, src/po/ru.po, src/po/uk.mo, src/po/uk.po,
	src/po/vi.mo, src/po/vi.po, src/po/zh_CN.mo, src/po/zh_CN.po:
	Sync with translationproject.org
	[3694d7ad4c9d]

2013-11-28  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/visudo.c:
	Add missing newline in help message after export option.
	[1c0bff0c181e]

2013-11-26  Todd C. Miller  <Todd.Miller@courtesan.com>

	* configure, configure.ac, plugins/sudoers/Makefile.in,
	src/Makefile.in:
	Do not add LIBDL to SUDO_LIBS or SUDOERS_LIBS in configure, do it in
	Makefile.in so we can make it last. Fixes a linking problem on
	Ubuntu precise.
	[f8d3bddbe742]

2013-11-25  Todd C. Miller  <Todd.Miller@courtesan.com>

	* configure, m4/ax_func_getaddrinfo.m4:
	Do not rely on NULL being defined for getaddrinfo() test. Fixes the
	check on HP-UX 11.23.
	[a5dcf0283693]

2013-11-24  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/po/sudoers.pot, src/po/sudo.pot:
	Regen for sudo 1.8.9b1
	[945f27a7aa1c]

	* src/po/de.mo, src/po/de.po, src/po/sr.mo, src/po/sr.po:
	Sync with translationproject.org
	[52abae16ccfa]

2013-11-22  Todd C. Miller  <Todd.Miller@courtesan.com>

	* INSTALL, MANIFEST, NEWS, common/Makefile.in, common/sudo_dso.c,
	compat/Makefile.in, compat/dlfcn.h, compat/dlopen.c, config.h.in,
	configure, configure.ac, include/sudo_dso.h, mkdep.pl,
	plugins/sudoers/Makefile.in, plugins/sudoers/group_plugin.c,
	plugins/sudoers/ldap.c,
	plugins/sudoers/regress/check_symbols/check_symbols.c,
	plugins/sudoers/sssd.c, plugins/system_group/Makefile.in,
	plugins/system_group/system_group.c, src/Makefile.in,
	src/env_hooks.c, src/load_plugins.c, src/preload.c, src/sudo.c,
	src/sudo.h:
	Add wrapper functions for dlopen() et al so that we can support
	statically compiling in the sudoers plugin but still allow other
	plugins to be loaded. The new --enable-static-sudoers configure
	option will cause the sudoers plugin to be compiled statically into
	the sudo binary. This does not prevent other plugins from being
	loaded as per sudo.conf.
	[9425770e9d2b]

2013-11-21  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/visudo_json.c:
	Handle non-unix groups correctly. Get rid of runasuser and
	runasgroup types and use username and usergroup instead. The fact
	that the user or group is inside a Runas_List doesn't affect its
	underlying type.
	[ea1789258c11]

2013-11-20  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/visudo_json.c:
	Simplify Defaults list option object. The name and value strings are
	superfluous.
	[5852b0184669]

	* compat/dlopen.c:
	Back out unintended change.
	[85156e49e96e]

	* MANIFEST, aclocal.m4, configure, configure.ac,
	m4/ax_func_getaddrinfo.m4:
	Add dedicated test for getaddrinfo(). Tru64 UNIX contains two
	versions of getaddrinfo and we must include netdb.h to get the
	proper definition.
	[9882e3e1e8e3]

	* compat/dlopen.c,
	plugins/sudoers/regress/check_symbols/check_symbols.c:
	Define RTLD_GLOBAL for older systems without it. Bug #621
	[ed38ac84f1da]

2013-11-19  Todd C. Miller  <Todd.Miller@courtesan.com>

	* compat/snprintf.c, include/missing.h:
	Rename snprintf replacement rpl_snprintf since we may now replace
	the libc version and #define rpl_snprintf snprintf in missing.h so
	we get our version when needed. This is consistent with how we
	replace glob and fnmatch.
	[309aa17d0dfe]

	* common/Makefile.in, common/regress/sudo_conf/conf_test.c,
	common/regress/sudo_parseln/parseln_test.c,
	common/regress/tailq/hltq_test.c, src/Makefile.in:
	libcommon tests need locale_stub.lo to link.
	[baae40f36de5]

	* MANIFEST, aclocal.m4, compat/snprintf.c, config.h.in, configure,
	configure.ac, m4/ax_func_snprintf.m4:
	Add check for C99 compliant (v)snprintf function.
	[79e02551543c]

	* compat/sig2str.c, configure, configure.ac:
	Include unistd.h in sig2str.c for Tru64 as it defines SIGRTMIN and
	SIGRTMAX in terms of sysconf(), which is prototyped in unistd.h. Bug
	#621; from Daniel Richard G.
	[2a59ccb8c966]

	* include/gettext.h, plugins/sudoers/locale.c, src/locale_stub.c:
	Add definition of U_ for --disable-nsl Don't define warning_gettext
	if --disable-nsl Bug #621; from Daniel Richard G.
	[c0054eb89c2b]

2013-11-18  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/visudo_json.c:
	When merging Defaults entries we need to check the type of the next
	entry and not just assume it is the same as the previous one.
	[e97d9b9cf0d5]

	* plugins/sudoers/visudo_json.c:
	runasgroups not runasgroup in the Cmnd_Spec.
	[92ea5dc20e4d]

	* plugins/sudoers/visudo_json.c:
	Fix some syntax errors and change how lists are handled.
	[027b8dea44b2]

	* common/sudo_debug.c, config.h.in, configure, configure.ac,
	include/fatal.h, include/sudo_debug.h:
	Allow sudo to compile without variadic macro support in cpp.
	Debugging support will be limited (no file info from warnings.) From
	Daniel Richard G.; Bug #621
	[51b8b868cd4b]

	* Makefile.in, common/aix.c, common/fatal.c, common/gidlist.c,
	common/sudo_conf.c, include/fatal.h, include/gettext.h,
	include/missing.h, plugins/sudoers/auth/fwtk.c,
	plugins/sudoers/auth/rfc1938.c, plugins/sudoers/auth/securid5.c,
	plugins/sudoers/bsm_audit.c, plugins/sudoers/defaults.c,
	plugins/sudoers/env.c, plugins/sudoers/group_plugin.c,
	plugins/sudoers/iolog.c, plugins/sudoers/ldap.c,
	plugins/sudoers/linux_audit.c, plugins/sudoers/locale.c,
	plugins/sudoers/logging.c, plugins/sudoers/match.c,
	plugins/sudoers/policy.c, plugins/sudoers/prompt.c,
	plugins/sudoers/pwutil.c, plugins/sudoers/set_perms.c,
	plugins/sudoers/sssd.c, plugins/sudoers/sudoers.c,
	plugins/sudoers/sudoreplay.c, plugins/sudoers/testsudoers.c,
	plugins/sudoers/timestamp.c, plugins/sudoers/toke.c,
	plugins/sudoers/toke.l, plugins/sudoers/toke_util.c,
	plugins/sudoers/visudo.c, plugins/sudoers/visudo_json.c, src/exec.c,
	src/exec_common.c, src/exec_pty.c, src/load_plugins.c,
	src/locale_stub.c, src/net_ifs.c, src/parse_args.c, src/selinux.c,
	src/sesh.c, src/signal.c, src/solaris.c, src/sudo.c,
	src/sudo_edit.c, src/tgetpass.c, src/utmp.c:
	Add warning_gettext() wrapper function that changes to the user
	locale, then calls gettext(). Add U_ macro that calls
	warning_gettext() instead of gettext(). Rename warning2()/error2()
	back to warning_nodebug()/error_nodebug().
	[f3bb207db201]

2013-11-17  Todd C. Miller  <Todd.Miller@courtesan.com>

	* common/fileops.c, compat/getaddrinfo.c, compat/mktemp.c,
	compat/utimes.c, configure.ac, plugins/sudoers/boottime.c,
	plugins/sudoers/check.c, plugins/sudoers/getdate.c,
	plugins/sudoers/getdate.y, plugins/sudoers/group_plugin.c,
	plugins/sudoers/iolog.c, plugins/sudoers/ldap.c,
	plugins/sudoers/logging.h, plugins/sudoers/sssd.c,
	plugins/sudoers/sudoreplay.c, plugins/sudoers/timestamp.c,
	plugins/sudoers/visudo.c, src/exec.c, src/exec_pty.c, src/preload.c,
	src/sudo.c, src/sudo_edit.c, src/ttyname.c, src/utmp.c:
	Fix some #if vs. #ifdef and remove an extraneous semicolon. Bug
	#624; from Daniel Richard G.
	[b212e4694018]

	* include/sudo_debug.h, plugins/sudoers/defaults.c,
	plugins/sudoers/ldap.c, src/exec_common.c:
	Add debug_return_const_str and debug_return_const_ptr for returning
	a const string or pointer. Using const for the normal versions
	produces warnings with the Tru64 compiler.
	[45018a149cb4]

	* common/event_poll.c, compat/getaddrinfo.c, config.h.in, configure,
	configure.ac, m4/sudo.m4:
	Fixes for building under Tru64; from Daniel Richard G. Bug #624
	[fc4a6cbae1ba]

2013-11-16  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/logging.c:
	log_{fatal,warning} now logs to the debug file itself.
	log_{fatal,warning} now calls warningx2() after setting the locale
	itself instead of using the wrapper macros. This removes the only
	use of warningx(ngettext(...)).
	[930129361e0a]

2013-11-15  Todd C. Miller  <Todd.Miller@courtesan.com>

	* configure, configure.ac:
	Add -Wpointer-arith to --enable-warnings
	[2043ae306d1b]

	* configure, configure.ac:
	Fix more instances of #include directives where the '#' was not in
	column 1. From Daniel Richard G. (bug #622)
	[75f36f39dcab]

	* MANIFEST, doc/visudo.cat, doc/visudo.man.in, doc/visudo.mdoc.in,
	plugins/sudoers/Makefile.in, plugins/sudoers/visudo.c,
	plugins/sudoers/visudo_json.c:
	Add support to visudo to export sudoers in JSON format.
	[1697b2b4bfd2]

2013-11-13  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/parse.h:
	Remove unused digest field from struct cmndspec, the digest really
	lives in struct sudo_command.
	[e9a1e2e112d6]

	* config.h.in, configure:
	Regen with autoconf 2.69
	[275f69f98f9e]

	* MANIFEST, Makefile.in, config.h.in, configure.ac, configure.in,
	doc/Makefile.in:
	Rename configure.in -> configure.ac
	[0aeafe425373]

	* MANIFEST, aclocal.m4, autogen.sh, config.h.in, configure,
	configure.in, ltmain.sh, m4/sudo.m4:
	From Daniel Richard G. (bug #622) Add an autogen.sh script that
	rebuilds the autoconf world. Move old aclocal.m4 contents to
	m4/sudo.m4. New (generayed) aclocal.m4 contains the m4_include
	directives. Some tests had #include directives where the '#' was not
	in column 1. Updated obsolete macro usage via autoupdate.
	[5fe8de5a56df]

2013-11-12  Todd C. Miller  <Todd.Miller@courtesan.com>

	* src/sudo_exec.h:
	Very old systems (pre XPG 4.2) may not support MSG_WAITALL. The
	likelihood of receiving a partial message is quite low so this is
	not a big deal.
	[900a304f9548]

	* configure, configure.in:
	HP-UX may require _XOPEN_SOURCE_EXTENDED to be defined for
	MSG_WAITALL to be visible.
	[f08b1a00a30a]

	* MANIFEST, plugins/sudoers/regress/visudo/test5.out.ok,
	plugins/sudoers/regress/visudo/test5.sh:
	Add regress test for bug #623
	[8e83cfccaf14]

	* plugins/sudoers/toke.c, plugins/sudoers/toke.l:
	Cope with a comment on the last line of the file with no newline.
	Bug #623
	[f826243bc4e6]

	* compat/getaddrinfo.c:
	Include arpa/inet.h for HP-UX; from Daniel Richard G.
	[d4d7a4303bae]

	* doc/Makefile.in:
	Add missing $(mansrcdir) to visudo.mdoc and visudo.man. From Daniel
	Richard G.
	[f664c8d2f961]

2013-11-11  Todd C. Miller  <Todd.Miller@courtesan.com>

	* include/fatal.h:
	In v{warning,fatal}x?() make a new copy of ap for the debug
	functions. It is not legal to use ap twice without reinitializing
	it. Noticed by Daniel Richard G.
	[6ca8bc48ecb3]

	* include/fatal.h:
	Remove errant warning_restore_locale() call.
	[4ef7aecefcbb]

	* include/missing.h, plugins/sudoers/logging.c:
	Move va_copy compat macro to missing.h
	[c873e4cc4c8a]

	* common/Makefile.in, compat/Makefile.in, mkdep.pl,
	plugins/group_file/Makefile.in, plugins/sample/Makefile.in,
	plugins/sudoers/Makefile.in, plugins/system_group/Makefile.in,
	src/Makefile.in, zlib/Makefile.in:
	Uniquify header dependencies so we don't end up with duplicates when
	a header file includes other headers. The header dependencies are
	sorted so the generated order is stable.
	[95747db2f07a]

	* compat/Makefile.in, configure, configure.in, doc/CONTRIBUTORS,
	mkdep.pl:
	Add getaddrinfo.lo to LTLIBOBJS for systems that need it. From
	Daniel Richard G.
	[e94ee99a52a9]

	* plugins/sudoers/testsudoers.c:
	Fix pasto
	[5262735e78e0]

2013-11-07  Todd C. Miller  <Todd.Miller@courtesan.com>

	* doc/sudoers.mdoc.in:
	Fix typo.
	[6b11a4eec6b6]

2013-11-04  Todd C. Miller  <Todd.Miller@courtesan.com>

	* plugins/sudoers/getdate.c, plugins/sudoers/gram.c:
	regen
	[995ca9f21862]

	* plugins/sudoers/getdate.c, plugins/sudoers/getdate.y,
	plugins/sudoers/sudoreplay.c, plugins/sudoers/toke.c:
	Fix warnings from -Wold-style-definition
	[a748c5c7b423]

	* configure, configure.in:
	Add -Wold-style-definition to --enable-warnings
	[0484de0deb59]

	* common/event_poll.c:
	Extra debugging for ready fds.
	[91fb85cdecbb]

	* common/event_select.c:
	When deleting an event, check ev->events to determine whether to
	remove from readfds or writefds instead of blinding removing from
	both. Also fix highfd adjustment.
	[7384db65ca9c]

2013-11-02  Todd C. Miller  <Todd.Miller@courtesan.com>

	* common/event_select.c:
	Only check an fd that is >= 0. Timeout-only events may have a
	negative fd.
	[fa0e5cbc3cc2]

2013-11-01  Todd C. Miller  <Todd.Miller@courtesan.com>

	* common/event.c:
	Don't call sudo_ev_{add,del}_impl() for timeout-only events. This
	makes it possible to pass sudo_ev_alloc() an fd of -1 for events
	only use SUDO_EV_TIMEOUT.
	[6838657a1a2f]

2013-10-31  Todd C. Miller  <Todd.Miller@courtesan.com>

	* common/alloc.c, common/event_select.c, include/sudo_event.h:
	Make a copy of readfds/writefds before calling select() instead of
	calculating it each time. Keep track of high fd in the base.
	[6048b78f2e94]

2013-10-30  Todd C. Miller  <Todd.Miller@courtesan.com>

	* doc/CONTRIBUTORS:
	Add Stephen Gelman
	[0028c7a91a4f]

	* plugins/sudoers/getdate.c, plugins/sudoers/gram.c:
	Fix sign comparison warning.
	[914cb36b9ed2]

	* plugins/sudoers/sudoreplay.c:
	Fix potential NULL dereference in non-interactive mode.
	[9233428d3f32]

2013-10-29  Todd C. Miller  <Todd.Miller@courtesan.com>

	* src/exec.c, src/exec_pty.c:
	Use MSG_WAITALL when receiving struct command_status over the Unix
	domain socket since we no longer use datagrams. This should avoid
	the need to handle incomplete reads, though in theory it is still
	possible.
	[28a92888a908]

	* plugins/sudoers/sudoreplay.c:
	SIGKILL is not catchable
	[79f82e4cb11d]

	* common/event.c, include/sudo_event.h, plugins/sudoers/sudoreplay.c:
	Add sudo_ev_get_timeleft() to get the amount of time left before an
	event times out and use it in sudoreplay.
