diff --git a/CHANGES b/CHANGES
index d22823b55a2ae3ea6c4446345bf20ae670ac70c1..8963d3790950a2f5d20c8540cdd29277aa31cce0 100644
--- a/CHANGES
+++ b/CHANGES
@@ -13,8 +13,7 @@ OpenLDAP 2.2.28 Release
 	Fixed back-meta control propagation bug (ITS#3813)
 	Fixed syncrepl SASL bind crash (ITS#3792)
 	Fixed libldap infinite referral loop (ITS#2894, ITS#3578)
-	Updated Assertion control to use IANA-assigned OID
-	Updated pre/post read controls to use IANA-assigned OIDs
+	Use IANA assigned OIDs for recently approved IETF LDAP extensions
 	Build Environment
 		Added BDB TXN patch in build/BerkeleyDB42.patch
 
diff --git a/include/ldap.h b/include/ldap.h
index ae509d9d65bd450b301cd37cb1a98750eee50f0a..dccab1f55c7155a26bda5c87f56e05b0a689f77c 100644
--- a/include/ldap.h
+++ b/include/ldap.h
@@ -279,7 +279,7 @@ typedef struct ldapcontrol {
 #define LDAP_FEATURE_ABSOLUTE_FILTERS "1.3.6.1.4.1.4203.1.5.3"  /* (&) (|) */
 #define LDAP_FEATURE_LANGUAGE_TAG_OPTIONS "1.3.6.1.4.1.4203.1.5.4"
 #define LDAP_FEATURE_LANGUAGE_RANGE_OPTIONS "1.3.6.1.4.1.4203.1.5.5"
-#define LDAP_FEATURE_MODIFY_INCREMENT "1.3.6.1.4.1.4203.666.8.2"
+#define LDAP_FEATURE_MODIFY_INCREMENT "1.3.6.1.1.14"
 
 /*
  * specific LDAP instantiations of BER types we know about
diff --git a/servers/slapd/controls.c b/servers/slapd/controls.c
index 22f171599cf0d30054185078a4990c98c0da883f..61bc21e0dc6b03552fe0046808bb8e2414fd54e3 100644
--- a/servers/slapd/controls.c
+++ b/servers/slapd/controls.c
@@ -29,7 +29,6 @@ static SLAP_CTRL_PARSE_FN parsePreRead;
 static SLAP_CTRL_PARSE_FN parsePostRead;
 static SLAP_CTRL_PARSE_FN parseProxyAuthz;
 static SLAP_CTRL_PARSE_FN parseManageDSAit;
-static SLAP_CTRL_PARSE_FN parseModifyIncrement;
 static SLAP_CTRL_PARSE_FN parseNoOp;
 static SLAP_CTRL_PARSE_FN parsePagedResults;
 static SLAP_CTRL_PARSE_FN parseValuesReturnFilter;
@@ -125,11 +124,6 @@ static struct slap_control control_defs[] = {
 	{ LDAP_CONTROL_SYNC,
 		SLAP_CTRL_HIDE|SLAP_CTRL_SEARCH, NULL,
 		parseLDAPsync, LDAP_SLIST_ENTRY_INITIALIZER(next) },
-#ifdef LDAP_CONTROL_MODIFY_INCREMENT
-	{ LDAP_CONTROL_MODIFY_INCREMENT,
-		SLAP_CTRL_HIDE|SLAP_CTRL_MODIFY, NULL,
-		parseModifyIncrement, LDAP_SLIST_ENTRY_INITIALIZER(next) },
-#endif
 	{ LDAP_CONTROL_MANAGEDSAIT,
 		SLAP_CTRL_ACCESS, NULL,
 		parseManageDSAit, LDAP_SLIST_ENTRY_INITIALIZER(next) },
@@ -664,32 +658,6 @@ return_results:
 	return rs->sr_err;
 }
 
-static int parseModifyIncrement (
-	Operation *op,
-	SlapReply *rs,
-	LDAPControl *ctrl )
-{
-#if 0
-	if ( op->o_modifyIncrement != SLAP_NO_CONTROL ) {
-		rs->sr_text = "modifyIncrement control specified multiple times";
-		return LDAP_PROTOCOL_ERROR;
-	}
-#endif
-
-	if ( ctrl->ldctl_value.bv_len ) {
-		rs->sr_text = "modifyIncrement control value not empty";
-		return LDAP_PROTOCOL_ERROR;
-	}
-
-#if 0
-	op->o_modifyIncrement = ctrl->ldctl_iscritical
-		? SLAP_CRITICAL_CONTROL
-		: SLAP_NONCRITICAL_CONTROL;
-#endif
-
-	return LDAP_SUCCESS;
-}
-
 static int parseManageDSAit (
 	Operation *op,
 	SlapReply *rs,