diff --git a/app-admin/sudo/Manifest b/app-admin/sudo/Manifest
index 68eef9a..d708aa4 100644
--- a/app-admin/sudo/Manifest
+++ b/app-admin/sudo/Manifest
@@ -1 +1 @@
-DIST sudo-1.8.28p1.tar.gz 3310254 BLAKE2B a1810af7a42d05cce49bb9d0acf6f3731a5193e9e9c3b458691379131eb86d36995854d11c09525e8d999ed1da7e99cf170634667c5a444aa522b8f23db7d1aa SHA512 bda3de34c15fbb68fc29759542295560ccc1562b419d03709cea51613937e9b92ba689c79c3ef4858aeea90d3d1a4dc0148225b11b22cf82395ae1bad8cb1734
+DIST sudo-1.8.31.tar.gz 3350674 BLAKE2B de5a968732fdd58933b4c513d13c43a08cb50075a00c3e0d338c9892570a416a2b3a8f19940c0893715f4eeab991e804831a87ef656ffd91e7f1ba047c119261 SHA512 b9e408a322938c7a712458e9012d8a5f648fba5b23a5057cf5d8372c7f931262595f1575c32c32b9cb1a04af670ff4611e7df48d197e5c4cc038d6b65439a28a
diff --git a/app-admin/sudo/files/sudo-1.8.28-no_pam_error_message_fix.patch b/app-admin/sudo/files/sudo-1.8.28-no_pam_error_message_fix.patch
deleted file mode 100644
index 6931ea2..0000000
--- a/app-admin/sudo/files/sudo-1.8.28-no_pam_error_message_fix.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-
-# HG changeset patch
-# User Todd C. Miller <Todd.Miller@sudo.ws>
-# Date 1573059314 25200
-# Node ID f85ff5ee2caf19cefca67ae49c1d6048d61125cb
-# Parent  5cdcfd9a6c33a157a12f1b1893e397c3198b206b
-Do not warn about a missing /etc/environment file on Linux without PAM.
-Bug #907
-
-diff -r 5cdcfd9a6c33 -r f85ff5ee2caf plugins/sudoers/env.c
---- a/plugins/sudoers/env.c	Tue Nov 05 15:18:34 2019 -0700
-+++ b/plugins/sudoers/env.c	Wed Nov 06 09:55:14 2019 -0700
-@@ -940,7 +940,8 @@
- #endif /* HAVE_LOGIN_CAP_H */
- #if defined(_AIX) || (defined(__linux__) && !defined(HAVE_PAM))
- 	    /* Insert system-wide environment variables. */
--	    read_env_file(_PATH_ENVIRONMENT, true, false);
-+	    if (!read_env_file(_PATH_ENVIRONMENT, true, false))
-+		sudo_warn("%s", _PATH_ENVIRONMENT);
- #endif
- 	    for (ep = env.envp; *ep; ep++)
- 		env_update_didvar(*ep, &didvar);
-@@ -1218,8 +1219,10 @@
-     efl = calloc(1, sizeof(*efl));
-     if (efl != NULL) {
- 	if ((efl->fp = fopen(path, "r")) == NULL) {
--	    free(efl);
--	    efl = NULL;
-+	    if (errno != ENOENT) {
-+		free(efl);
-+		efl = NULL;
-+	    }
- 	}
-     }
-     debug_return_ptr(efl);
-@@ -1259,6 +1262,9 @@
-     debug_decl(env_file_next_local, SUDOERS_DEBUG_ENV)
- 
-     *errnum = 0;
-+    if (efl->fp == NULL)
-+	debug_return_ptr(NULL);
-+
-     for (;;) {
- 	if (sudo_parseln(&efl->line, &efl->linesize, NULL, efl->fp, PARSELN_CONT_IGN) == -1) {
- 	    if (!feof(efl->fp))
-
diff --git a/app-admin/sudo/sudo-1.8.28_p1-r2.ebuild b/app-admin/sudo/sudo-1.8.31.ebuild
similarity index 97%
rename from app-admin/sudo/sudo-1.8.28_p1-r2.ebuild
rename to app-admin/sudo/sudo-1.8.31.ebuild
index 626a41f..fa49076 100644
--- a/app-admin/sudo/sudo-1.8.28_p1-r2.ebuild
+++ b/app-admin/sudo/sudo-1.8.31.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -75,10 +75,6 @@
 
 MAKEOPTS+=" SAMPLES="
 
-PATCHES=(
-	"${FILESDIR}/${PN}-1.8.28-no_pam_error_message_fix.patch" #698946
-)
-
 src_prepare() {
 	default
 	elibtoolize
diff --git a/metadata/md5-cache/app-admin/sudo-1.8.28_p1-r2 b/metadata/md5-cache/app-admin/sudo-1.8.31
similarity index 91%
rename from metadata/md5-cache/app-admin/sudo-1.8.28_p1-r2
rename to metadata/md5-cache/app-admin/sudo-1.8.31
index bdc7e00..492f2d8 100644
--- a/metadata/md5-cache/app-admin/sudo-1.8.28_p1-r2
+++ b/metadata/md5-cache/app-admin/sudo-1.8.31
@@ -10,6 +10,6 @@
 RDEPEND=sys-libs/zlib:= ldap? ( >=net-nds/openldap-2.1.30-r1 sasl? ( dev-libs/cyrus-sasl net-nds/openldap[sasl] ) ) pam? ( sys-libs/pam ) sasl? ( dev-libs/cyrus-sasl ) skey? ( >=sys-auth/skey-1.1.5-r1 ) sssd? ( sys-auth/sssd[sudo] ) system-digest? ( gcrypt? ( dev-libs/libgcrypt:= ) !gcrypt? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) ) ) >=app-misc/editor-wrapper-3 virtual/editor ldap? ( dev-lang/perl ) pam? ( sys-auth/pambase ) selinux? ( sec-policy/selinux-sudo ) sendmail? ( virtual/mta ) virtual/tmpfiles
 REQUIRED_USE=pam? ( !skey ) skey? ( !pam )
 SLOT=0
-SRC_URI=https://www.sudo.ws/sudo/dist/sudo-1.8.28p1.tar.gz ftp://ftp.sudo.ws/pub/sudo/sudo-1.8.28p1.tar.gz
+SRC_URI=https://www.sudo.ws/sudo/dist/sudo-1.8.31.tar.gz ftp://ftp.sudo.ws/pub/sudo/sudo-1.8.31.tar.gz
 _eclasses_=eutils	06133990e861be0fe60c2b428fd025d9	flag-o-matic	5d5921a298e95441da2f85be419894c0	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	b2f01ad412baf81650c23fcf0975fa33	pam	3f746974e1cc47cabe3bd488c08cdc8e	tmpfiles	6170dc7770585fb3f16efdee789a3218	toolchain-funcs	209edad4a5c4812e7b2f8021650974f0
-_md5_=86ed79f549b447e51dbdf37f09a693b3
+_md5_=69c65c899b4c7a6d1c1d25a633984101
