Program: 61176
Project: 61176
Buggy source:
/** 
 * {@inheritDoc}
 */
@Override public Uid create(final ObjectClass objClass,final Set<Attribute> attrs,final OperationOptions options){
  if (LOG.isDebugEnabled()) {
    LOG.debug("String_Node_Str");
  }
  if (objClass == null || (!objClass.equals(ObjectClass.ACCOUNT))) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (attrs == null || attrs.isEmpty()) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  Provisioning provisioning=connection.getProvisioning();
  if (provisioning == null) {
    throw new IllegalStateException("String_Node_Str");
  }
  Name name=AttributeUtil.getNameFromAttributes(attrs);
  if (name == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  final String accountName=name.getNameValue();
  if (LOG.isDebugEnabled()) {
    LOG.debug("String_Node_Str" + accountName);
  }
  final List<WSAttributeValue> attributes=new ArrayList<WSAttributeValue>();
  WSAttributeValue wsAttributeValue;
  WSAttribute wsAttribute;
  for (  Attribute attr : attrs) {
    wsAttribute=new WSAttribute(attr.getName());
    if (attr.is(Name.NAME)) {
      wsAttribute.setKey(true);
      wsAttribute.setNullable(false);
    }
    if (attr.is(OperationalAttributeInfos.PASSWORD.getName())) {
      wsAttribute.setName(OperationalAttributeInfos.PASSWORD.getName());
      wsAttribute.setPassword(true);
    }
    if (LOG.isDebugEnabled()) {
      LOG.debug("String_Node_Str" + "String_Node_Str" + wsAttribute.getName() + "String_Node_Str"+ wsAttribute.isKey()+ "String_Node_Str"+ wsAttribute.isPassword());
    }
    wsAttributeValue=new WSAttributeValue(wsAttribute);
    Object value=AttributeUtil.getSingleValue(attr);
    if (value instanceof GuardedString || value instanceof GuardedByteArray) {
      wsAttributeValue.setValue(value.toString());
    }
 else {
      wsAttributeValue.setValue(value);
    }
    attributes.add(wsAttributeValue);
  }
  if (LOG.isDebugEnabled()) {
    LOG.debug("String_Node_Str" + accountName + "String_Node_Str"+ attributes.size());
  }
  try {
    provisioning.create(attributes);
  }
 catch (  ProvisioningException e) {
    if (LOG.isErrorEnabled()) {
      LOG.error("String_Node_Str",e);
    }
  }
  return new Uid(accountName);
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 */
@Override public Uid create(final ObjectClass objClass,final Set<Attribute> attrs,final OperationOptions options){
  if (LOG.isDebugEnabled()) {
    LOG.debug("String_Node_Str");
  }
  if (objClass == null || (!objClass.equals(ObjectClass.ACCOUNT))) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (attrs == null || attrs.isEmpty()) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  Provisioning provisioning=connection.getProvisioning();
  if (provisioning == null) {
    throw new IllegalStateException("String_Node_Str");
  }
  Name name=AttributeUtil.getNameFromAttributes(attrs);
  if (name == null) {
    throw new IllegalArgumentException("String_Node_Str");
  }
  final String accountName=name.getNameValue();
  if (LOG.isDebugEnabled()) {
    LOG.debug("String_Node_Str" + accountName);
  }
  final List<WSAttributeValue> attributes=new ArrayList<WSAttributeValue>();
  WSAttributeValue wsAttributeValue;
  WSAttribute wsAttribute;
  for (  Attribute attr : attrs) {
    wsAttribute=new WSAttribute(attr.getName());
    if (attr.is(Name.NAME)) {
      wsAttribute.setKey(true);
      wsAttribute.setNullable(false);
    }
    if (attr.is(OperationalAttributeInfos.PASSWORD.getName())) {
      wsAttribute.setName(OperationalAttributeInfos.PASSWORD.getName());
      wsAttribute.setPassword(true);
    }
    if (LOG.isDebugEnabled()) {
      LOG.debug("String_Node_Str" + "String_Node_Str" + wsAttribute.getName() + "String_Node_Str"+ wsAttribute.isKey()+ "String_Node_Str"+ wsAttribute.isPassword());
    }
    wsAttributeValue=new WSAttributeValue(wsAttribute);
    attributes.add(wsAttributeValue);
    List value=attr.getValue();
    if (value != null && value.size() == 1 && (value.get(0) instanceof GuardedString || value.get(0) instanceof GuardedByteArray)) {
      wsAttributeValue.setValues(Collections.singletonList(value.toString()));
    }
 else {
      wsAttributeValue.setValues(value);
    }
  }
  if (LOG.isDebugEnabled()) {
    LOG.debug("String_Node_Str" + accountName + "String_Node_Str"+ attributes.size());
  }
  try {
    provisioning.create(attributes);
  }
 catch (  ProvisioningException e) {
    if (LOG.isErrorEnabled()) {
      LOG.error("String_Node_Str",e);
    }
  }
  return new Uid(accountName);
}