summaryrefslogtreecommitdiffstats
path: root/base/common
diff options
context:
space:
mode:
authorFraser Tweedale <ftweedal@redhat.com>2015-11-30 14:04:08 +1100
committerFraser Tweedale <ftweedal@redhat.com>2016-01-21 12:48:56 +1100
commit2cb2e9c8df06a7fdb2fed11e2973c03483024bc0 (patch)
tree67e5aefb7dcf89bce01c4158f91229e17e94baab /base/common
parent6371ea5cd0abf64ab755b8d7b410c879f5051936 (diff)
Avoid profile race conditions by tracking entryUSN
Avoid race conditions in the LDAPProfileSubsystem by tracking the most recently known entryUSN of profiles' LDAP entries. As part of this change, add the commitProfile method to the IProfileSubsystem interface, remove commit behaviour from the enableProfile and disableProfile methods and update ProfileService and ProfileApproveServlet to commit the profile (using the commitProfile method) where needed. Part of: https://fedorahosted.org/pki/ticket/1700
Diffstat (limited to 'base/common')
-rw-r--r--base/common/src/com/netscape/certsrv/profile/IProfileSubsystem.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/base/common/src/com/netscape/certsrv/profile/IProfileSubsystem.java b/base/common/src/com/netscape/certsrv/profile/IProfileSubsystem.java
index b7071fe75..b7b06b92b 100644
--- a/base/common/src/com/netscape/certsrv/profile/IProfileSubsystem.java
+++ b/base/common/src/com/netscape/certsrv/profile/IProfileSubsystem.java
@@ -94,6 +94,11 @@ public interface IProfileSubsystem extends ISubsystem {
throws EProfileException;
/**
+ * Commit a profile's underlying config store.
+ */
+ public void commitProfile(String id) throws EProfileException;
+
+ /**
* Retrieves the id of the implementation of the given profile.
*
* @param id profile id