From 7486ef2bb077feb489a55db86707d96e69d12265 Mon Sep 17 00:00:00 2001
From: ludovicp <ludovicp@localhost>
Date: Fri, 30 Jul 2010 12:44:12 +0000
Subject: [PATCH] Implements a disk space thresholds feature, preventing the server from crashing or exiting of disks full.

---
 opends/src/server/org/opends/server/tasks/EnterLockdownModeTask.java |   10 ++++------
 1 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/opends/src/server/org/opends/server/tasks/EnterLockdownModeTask.java b/opends/src/server/org/opends/server/tasks/EnterLockdownModeTask.java
index bbbc3c5..4ed6819 100644
--- a/opends/src/server/org/opends/server/tasks/EnterLockdownModeTask.java
+++ b/opends/src/server/org/opends/server/tasks/EnterLockdownModeTask.java
@@ -22,7 +22,7 @@
  * CDDL HEADER END
  *
  *
- *      Copyright 2008 Sun Microsystems, Inc.
+ *      Copyright 2008-2010 Sun Microsystems, Inc.
  */
 package org.opends.server.tasks;
 import org.opends.messages.Message;
@@ -34,10 +34,7 @@
 import org.opends.server.backends.task.Task;
 import org.opends.server.backends.task.TaskState;
 import org.opends.server.core.DirectoryServer;
-import org.opends.server.types.DirectoryException;
-import org.opends.server.types.DN;
-import org.opends.server.types.Operation;
-import org.opends.server.types.ResultCode;
+import org.opends.server.types.*;
 
 import static org.opends.messages.TaskMessages.*;
 
@@ -71,7 +68,8 @@
     if (operation != null)
     {
       DN authzDN = operation.getAuthorizationDN();
-      if ((authzDN == null) || (! DirectoryServer.isRootDN(authzDN)))
+      if ((authzDN == null) || (! operation.getClientConnection().hasPrivilege(
+          Privilege.SERVER_LOCKDOWN, operation)))
       {
         Message message = ERR_TASK_ENTERLOCKDOWN_NOT_ROOT.get();
         throw new DirectoryException(ResultCode.UNWILLING_TO_PERFORM, message);

--
Gitblit v1.10.0