On 8/22/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
Author: akarasulu
Date: Mon Aug 21 20:18:05 2006
New Revision: 433483
URL: http://svn.apache.org/viewvc?rev=433483&view=rev
Log:
fix for DIRSERVER-630
Added:
directory/branches/apacheds/1.0/server-unit/src/test/java/org/apache/directory/server/IllegalModificationITest.java
- copied, changed from r433475,
directory/branches/apacheds/1.0/server-unit/src/test/java/org/apache/directory/server/IllegalModification.java
Removed:
directory/branches/apacheds/1.0/server-unit/src/test/java/org/apache/directory/server/IllegalModification.java
Modified:
directory/branches/apacheds/1.0/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java
Modified:
directory/branches/apacheds/1.0/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java
URL:
http://svn.apache.org/viewvc/directory/branches/apacheds/1.0/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java?rev=433483&r1=433482&r2=433483&view=diff
==============================================================================
---
directory/branches/apacheds/1.0/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java
(original)
+++
directory/branches/apacheds/1.0/core/src/main/java/org/apache/directory/server/core/schema/SchemaService.java
Mon Aug 21 20:18:05 2006
@@ -786,6 +786,17 @@
{
objectClassMod = mods[ii];
}
+
+ // Freak out under some weird cases
+ if ( mods[0].getAttribute().size() == 0 )
+ {
+ // not ok for add but ok for replace and delete
+ if ( mods[0].getModificationOp() == DirContext.ADD_ATTRIBUTE )
+ {
+ throw new LdapInvalidAttributeValueException( "No value is not
a valid value for an attribute.",
+ ResultCodeEnum.INVALIDATTRIBUTESYNTAX );
+ }
+ }
StringBuffer keybuf = new StringBuffer();
keybuf.append( mods[ii].getModificationOp() );
Alex,
1. I think the index used for mods[0].get... portions should be ii instead of 0.
2. What about the other modify method in the schema service?
--
Ersin