mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

matthew_swift
03.04.2009 39db72786ec179e67e3c1c0c71a2e93672999ea5
Split SDK from server code and add build/packaging infrastructure.

NOTE: tools do not run yet (due to L18N resources not being found).
2 files deleted
44 files added
3 files renamed
157 files modified
21136 ■■■■ changed files
sdk/PRODUCT 26 ●●●●● patch | view | raw | blame | history
sdk/build-tools/org/opends/build/tools/GenerateMessageFile.java 966 ●●●● patch | view | raw | blame | history
sdk/build-tools/org/opends/build/tools/MessagePropertyKey.java 253 ●●●●● patch | view | raw | blame | history
sdk/build-tools/org/opends/build/tools/Utilities.java 59 ●●●●● patch | view | raw | blame | history
sdk/build.bat 47 ●●●●● patch | view | raw | blame | history
sdk/build.properties 4 ●●●● patch | view | raw | blame | history
sdk/build.sh 52 ●●●●● patch | view | raw | blame | history
sdk/build.xml 1206 ●●●●● patch | view | raw | blame | history
sdk/resource/DynamicConstants.java.stubs 176 ●●●●● patch | view | raw | blame | history
sdk/resource/FindJavaHome.class patch | view | raw | blame | history
sdk/resource/FindJavaHome.java 68 ●●●●● patch | view | raw | blame | history
sdk/resource/Messages.java.stub 61 ●●●●● patch | view | raw | blame | history
sdk/resource/README 9 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/_client-script.bat 61 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/_client-script.sh 69 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/_script-util.bat 220 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/_script-util.sh 319 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/ldapcompare 37 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/ldapcompare.bat 33 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/ldapmodify 38 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/ldapmodify.bat 33 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/ldappasswordmodify 37 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/ldappasswordmodify.bat 33 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/ldapsearch 37 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/ldapsearch.bat 33 ●●●●● patch | view | raw | blame | history
sdk/resource/bin/setcp.bat 40 ●●●●● patch | view | raw | blame | history
sdk/resource/legal-notices/BinariesLicense.txt 180 ●●●●● patch | view | raw | blame | history
sdk/resource/legal-notices/OpenDS.LICENSE 384 ●●●●● patch | view | raw | blame | history
sdk/resource/legal-notices/THIRDPARTYREADME.txt patch | view | raw | blame | history
sdk/resource/opends_logo.png patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/Message.java 543 ●●●●● patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/MessageBuilder.java 456 ●●●●● patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/MessageDescriptor.java 1272 ●●●●● patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/messages.properties 5692 ●●●●● patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/messages_de.properties 531 ●●●●● patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/messages_es.properties 531 ●●●●● patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/messages_fr.properties 531 ●●●●● patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/messages_ja.properties 531 ●●●●● patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/messages_ko.properties 531 ●●●●● patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/messages_zh_CN.properties 531 ●●●●● patch | view | raw | blame | history
sdk/src/com/sun/opends/sdk/util/messages_zh_TW.properties 531 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/AbstractConnection.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/AttributeDescription.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/DN.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/DecodeException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/Filter.java 9 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/RDN.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ResultCode.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/asn1/ASN1ByteSequenceReader.java 9 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/asn1/ASN1InputStreamReader.java 10 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/asn1/ASN1OutputStreamWriter.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/asn1/AbstractASN1Reader.java 5 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/AccountUsabilityControl.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/AssertionControl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/AuthorizationIdentityControl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/EntryChangeNotificationControl.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/GetEffectiveRightsRequestControl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/MatchedValuesControl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/PagedResultsControl.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/PasswordExpiredControl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/PasswordExpiringControl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/PasswordPolicyControl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/PasswordPolicyErrorType.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/PasswordPolicyWarningType.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/PersistentSearchControl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/PostReadControl.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/PreReadControl.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/ProxiedAuthV1Control.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/ProxiedAuthV2Control.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/ServerSideSortControl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/SubtreeDeleteControl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/VLVControl.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/controls/VLVTarget.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/extensions/CancelRequest.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/extensions/GetConnectionIDRequest.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/extensions/GetSymmetricKeyRequest.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/extensions/PasswordModifyRequest.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/extensions/PasswordPolicyStateExtendedOperation.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ldap/ASN1StreamReader.java 9 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ldap/ASN1StreamWriter.java 7 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ldap/LDAPDecoder.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ldap/SASLStreamWriter.java 1 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ldap/UnexpectedRequestException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ldap/UnexpectedResponseException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ldap/UnsupportedMessageException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ldif/AbstractLDIFReader.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ldif/LDIFChangeRecordReader.java 7 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/ldif/LDIFEntryReader.java 7 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/requests/Requests.java 5 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/sasl/AbstractSASLContext.java 24 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/sasl/GSSAPISASLBindRequest.java 7 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/AbstractSubstringMatchingRuleImpl.java 9 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/AttributeType.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/AttributeTypeSyntaxImpl.java 12 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/AuthPasswordSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/BinarySyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/BitStringEqualityMatchingRuleImpl.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/BitStringSyntaxImpl.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/BooleanEqualityMatchingRuleImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/BooleanSyntaxImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/CaseExactIA5EqualityMatchingRuleImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/CaseExactIA5SubstringMatchingRuleImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/CaseIgnoreIA5EqualityMatchingRuleImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/CaseIgnoreIA5SubstringMatchingRuleImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/CertificateListSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/CertificatePairSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/CertificateSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/ConflictingSchemaElementException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/CoreSchemaImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/CountryStringSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/DITContentRule.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/DITContentRuleSyntaxImpl.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/DITStructureRule.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/DITStructureRuleSyntaxImpl.java 12 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/DeliveryMethodSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/DirectoryStringFirstComponentEqualityMatchingRuleImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/DirectoryStringSyntaxImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/DistinguishedNameSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/EnhancedGuideSyntaxImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/EnumOrderingMatchingRule.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/EnumSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/FacsimileNumberSyntaxImpl.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/FaxSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/GeneralizedTimeSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/GuideSyntaxImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/IA5StringSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/IntegerEqualityMatchingRuleImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/IntegerFirstComponentEqualityMatchingRuleImpl.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/IntegerOrderingMatchingRuleImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/IntegerSyntaxImpl.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/JPEGSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/LDAPSyntaxDescriptionSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/MatchingRule.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/MatchingRuleSyntaxImpl.java 12 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/MatchingRuleUse.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/MatchingRuleUseSyntaxImpl.java 12 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/NameAndOptionalUIDSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/NameForm.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/NameFormSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/NumericStringSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/OIDSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/ObjectClass.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/ObjectClassSyntaxImpl.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/ObjectIdentifierFirstComponentEqualityMatchingRuleImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/OctetStringSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/OtherMailboxSyntaxImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/PostalAddressSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/PresentationAddressSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/PrintableStringSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/ProtocolInformationSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/RegexSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/Schema.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/SchemaBuilder.java 11 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/SchemaElement.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/SchemaException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/SchemaNotFoundException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/SchemaUtils.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/SubstringAssertionSyntaxImpl.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/SupportedAlgorithmSyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/Syntax.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/SyntaxImpl.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/TelephoneNumberSyntaxImpl.java 12 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/TeletexTerminalIdentifierSyntaxImpl.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/TelexNumberSyntaxImpl.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/UTCTimeSyntaxImpl.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/UUIDEqualityMatchingRuleImpl.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/UUIDOrderingMatchingRuleImpl.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/UUIDSyntaxImpl.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/UnknownSchemaElementException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/schema/UserPasswordSyntaxImpl.java 12 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/ApplicationKeyManager.java 335 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/Argument.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/ArgumentException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/ArgumentGroup.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/ArgumentParser.java 262 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/ArgumentParserConnectionFactory.java 31 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/BooleanArgument.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/CLIException.java 104 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/ConsoleApplication.java 594 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/DistrustAllTrustManager.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/FileBasedArgument.java 8 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/HostnameMismatchCertificateException.java 93 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/IntegerArgument.java 9 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/LDAPCompare.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/LDAPModify.java 140 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/LDAPPasswordModify.java 10 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/LDAPSearch.java 15 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/ModRate.java 9 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/MultiChoiceArgument.java 6 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/MultiColumnPrinter.java 66 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/PerformanceRunner.java 200 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/PromptingTrustManager.java 483 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/SearchRate.java 98 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/SelectableCertificateKeyManager.java 314 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/StringArgument.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/ToolConstants.java 614 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/TrustAllTrustManager.java 22 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/TrustStoreTrustManager.java 10 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/tools/Utils.java 273 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/util/Base64.java 7 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/util/LocalizableException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/util/LocalizedIllegalArgumentException.java 2 ●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/util/Platform.java 4 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/util/StaticUtils.java 13 ●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/util/ssl/HostnameMismatchCertificateException.java 67 ●●●●● patch | view | raw | blame | history
sdk/src/org/opends/sdk/util/ssl/PromptingTrustManager.java 412 ●●●●● patch | view | raw | blame | history
sdk/PRODUCT
New file
@@ -0,0 +1,26 @@
# The official full product name for the OpenDS LDAP SDK.
PRODUCT_NAME=OpenDS LDAP SDK
# The short name that should be used if the full name is not appropriate.
SHORT_NAME=opends-sdk
# The major version number for the Directory Server.  It must be an integer.
MAJOR_VERSION=0
# The minor version number for the Directory Server.  It must be an integer.
MINOR_VERSION=1
# The point version number for the Directory Server.  It must be an integer.
POINT_VERSION=0
# The version qualifier string for the Directory Server.  It should be blank
# for the first official release with a new major, minor, and point version
# number but may include additional text like "BETA1" or "HOTFIX2" for updates
# that do not warrant incrementing the version number.
VERSION_QUALIFIER=
# A comma-delimited list of bug IDs for fixes included in this build.  This
# should be set in any non-official build given to a customer to address a
# specific problem or set of problems identified in the corresponding official
# release.
FIX_IDS=
sdk/build-tools/org/opends/build/tools/GenerateMessageFile.java
@@ -26,230 +26,194 @@
 */
package org.opends.build.tools;
import org.apache.tools.ant.Task;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.Location;
import static org.opends.build.tools.Utilities.*;
import org.opends.messages.Category;
import org.opends.messages.Severity;
import org.opends.messages.MessageDescriptor;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.DataOutputStream;
import java.io.IOException;
import java.util.Properties;
import java.util.List;
import java.util.ArrayList;
import java.util.UnknownFormatConversionException;
import java.util.Calendar;
import java.util.Arrays;
import java.util.Locale;
import java.util.Map;
import java.util.TreeMap;
import java.util.HashSet;
import java.util.Set;
import java.util.EnumSet;
import static org.opends.build.tools.Utilities.*;
import java.io.*;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Location;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.Task;
/**
 * Generates a Java class containing representations of messages
 * found in a properties file.
 * Generates a Java class containing representations of messages found
 * in a properties file.
 */
public class GenerateMessageFile extends Task {
public class GenerateMessageFile extends Task
{
  /**
   * The maximum number of arguments that can be handled by a specific
   * subclass. If you define more subclasses be sure to increment this
   * number appropriately.
   */
  static public final int DESCRIPTOR_MAX_ARG_HANDLER = 11;
  /**
   * The base name of the specific argument handling subclasses defined
   * below. The class names consist of the base name followed by a
   * number indicating the number of arguments that they handle when
   * creating messages or the letter "N" meaning any number of
   * arguments.
   */
  public static final String DESCRIPTOR_CLASS_BASE_NAME = "Arg";
  private File source;
  private File dest;
  private boolean overwrite;
  static private final String MESSAGES_FILE_STUB =
          "resource/Messages.java.stub";
  /*
   * The registry filename is the result of the concatenation of the
   * location of where the source are generated, the package name and the
   * DESCRIPTORS_REG value.
   */
  static private String REGISTRY_FILE_NAME;
  static private final String DESCRIPTORS_REG = "descriptors.reg";
  /**
   * Used to set a category for all messages in the property file.
   * If set, the category for each message need not be encoded in
   * the message's property file key.
   */
  static private final String GLOBAL_CATEGORY = "global.category";
  /**
   * Used to set a severity for all messages in the property file.
   * If set, the severity for each message need not be encoded in
   * the message's property file key.
   */
  static private final String GLOBAL_SEVERITY = "global.severity";
  /**
   * Used to set a category mask for all messages in the property
   * file.  If set, the category will automatically be assigned
   * USER_DEFINED and the value of <code>GLOBAL_CATEGORY</code>
   * will be ignored.
   */
  static private final String GLOBAL_CATEGORY_MASK = "global.mask";
  static private final String MESSAGES_FILE_STUB = "resource/Messages.java.stub";
  /**
   * When true generates messages that have no ordinals.
   */
  static private final String GLOBAL_ORDINAL = "global.ordinal";
  /**
   * When true and if the Java Web Start property is set use the class loader of
   * the jar where the MessageDescriptor is contained to retrieve the
   * ResourceBundle.
   */
  static private final String GLOBAL_USE_MESSAGE_JAR_IF_WEBSTART =
    "global.use.message.jar.if.webstart";
  static private final Set<String> DIRECTIVE_PROPERTIES = new HashSet<String>();
  static {
    DIRECTIVE_PROPERTIES.add(GLOBAL_CATEGORY);
    DIRECTIVE_PROPERTIES.add(GLOBAL_CATEGORY_MASK);
    DIRECTIVE_PROPERTIES.add(GLOBAL_SEVERITY);
  static
  {
    DIRECTIVE_PROPERTIES.add(GLOBAL_ORDINAL);
    DIRECTIVE_PROPERTIES.add(GLOBAL_USE_MESSAGE_JAR_IF_WEBSTART);
  }
  static private final String SPECIFIER_REGEX =
          "%(\\d+\\$)?([-#+ 0,(\\<]*)?(\\d+)?(\\.\\d+)?([tT])?([a-zA-Z%])";
  static private final String SPECIFIER_REGEX = "%(\\d+\\$)?([-#+ 0,(\\<]*)?(\\d+)?(\\.\\d+)?([tT])?([a-zA-Z%])";
  private final Pattern SPECIFIER_PATTERN = Pattern.compile(SPECIFIER_REGEX);
  private final Pattern SPECIFIER_PATTERN = Pattern
      .compile(SPECIFIER_REGEX);
  /**
   * Message giving formatting rules for string keys.
   */
  static public String KEY_FORM_MSG;
  static {
    KEY_FORM_MSG = new StringBuilder()
            .append(".\n\nOpenDS message property keys must be of the form\n\n")
            .append("\t\'[CATEGORY]_[SEVERITY]_[DESCRIPTION]_[ORDINAL]\'\n\n")
            .append("where\n\n")
            .append("CATEGORY is one of ")
            .append(EnumSet.allOf(Category.class))
            .append("\n\nSEVERITY is one of ")
            .append(Severity.getPropertyKeyFormSet().toString())
            .append("\n\nDESCRIPTION is a descriptive string composed ")
  static
  {
    KEY_FORM_MSG = new StringBuilder().append(
        ".\n\nOpenDS message property keys must be of the form\n\n")
        .append("\t\'[DESCRIPTION]_[ORDINAL]\'\n\n")
        .append("where\n\n").append(
            "\n\nDESCRIPTION is a descriptive string composed ")
            .append("of uppercase character, digits and underscores ")
            .append("describing the purpose of the message ")
            .append("\n\nORDINAL is an integer between 0 and 65535 that is ")
        .append("describing the purpose of the message ").append(
            "\n\nORDINAL is an integer between 0 and 65535 that is ")
            .append("unique to other messages defined in this file.\n\n")
            .append("You can relax the mandate for including the CATEGORY, ")
            .append("SEVERITY, and/or ORDINAL by including one or more ")
            .append("of the following respective property directives in your ")
            .append("properties file:  ")
            .append(GLOBAL_CATEGORY)
            .append(", ")
            .append(GLOBAL_SEVERITY)
            .append(", ")
            .append(GLOBAL_ORDINAL)
            .append("and setting their value appropriately.")
            .toString();
  }
  /*
   * ISO_LANGUAGES contains all official supported languages for i18n
   */
  private static final List<String> ISO_LANGUAGES =
                                        Arrays.asList(Locale.getISOLanguages());
  private static final List<String> ISO_LANGUAGES = Arrays
      .asList(Locale.getISOLanguages());
  /*
   * ISO_COUNTRIES contains all official supported countries for i18n
   */
  private static final List<String> ISO_COUNTRIES =
                                        Arrays.asList(Locale.getISOCountries());
  private static final List<String> ISO_COUNTRIES = Arrays
      .asList(Locale.getISOCountries());
  /*
   * A Pattern instance that matches "<label>_<language>_<country>.properties"
   * where <label> can be anything including '_'
   *       <language> a two characters code contained in the ISO_LANGUAGES list
   *       <country> a two characters code contained in the ISO_COUNTRIES list
   * A Pattern instance that matches
   * "<label>_<language>_<country>.properties" where <label> can be
   * anything including '_' <language> a two characters code contained
   * in the ISO_LANGUAGES list <country> a two characters code contained
   * in the ISO_COUNTRIES list
   */  
  private static final Pattern LANGUAGE_COUNTRY_MATCHER =
                       Pattern.compile("(.*)_([a-z]{2})_([A-Z]{2}).properties");
  private static final Pattern LANGUAGE_COUNTRY_MATCHER = Pattern
      .compile("(.*)_([a-z]{2})_([A-Z]{2}).properties");
  /*
   * A Pattern instance that matches "<label>_<language>.properties"
   * where <label> and <language> have same definition as above.
   */
  private static final Pattern LANGUAGE_MATCHER =
                       Pattern.compile("(.*)_([a-z]{2}).properties");
  private static final Pattern LANGUAGE_MATCHER = Pattern
      .compile("(.*)_([a-z]{2}).properties");
  /**
   * Representation of a format specifier (for example %s).
   */
  private class FormatSpecifier {
  private class FormatSpecifier
  {
    private String[] sa;
    /**
     * Creates a new specifier.
     * @param sa specifier components
     *
     * @param sa
     *          specifier components
     */
    FormatSpecifier(String[] sa) {
    FormatSpecifier(String[] sa)
    {
      this.sa = sa;
    }
    /**
     * Indicates whether or not the specifier uses arguement
     * indexes (for example 2$).
     * Indicates whether or not the specifier uses arguement indexes
     * (for example 2$).
     *
     * @return boolean true if this specifier uses indexing
     */
    public boolean specifiesArgumentIndex() {
    public boolean specifiesArgumentIndex()
    {
      return this.sa[0] != null;
    }
    /**
     * Returns a java class associated with a particular formatter
     * based on the conversion type of the specifier.
     * @return Class for representing the type of arguement used
     *         as a replacement for this specifier.
     * Returns a java class associated with a particular formatter based
     * on the conversion type of the specifier.
     *
     * @return Class for representing the type of arguement used as a
     *         replacement for this specifier.
     */
    public Class getSimpleConversionClass() {
      Class c = null;
    public Class<?> getSimpleConversionClass()
    {
      Class<?> c = null;
      String sa4 = sa[4] != null ? sa[4].toLowerCase() : null;
      String sa5 = sa[5] != null ? sa[5].toLowerCase() : null;
      if ("t".equals(sa4)) {
      if ("t".equals(sa4))
      {
        c = Calendar.class;
      } else if (
              "b".equals(sa5)) {
      }
      else if ("b".equals(sa5))
      {
        c = Boolean.class;
      } else if (
              "h".equals(sa5)) {
      }
      else if ("h".equals(sa5))
      {
        c = Integer.class;
      } else if (
              "s".equals(sa5)) {
      }
      else if ("s".equals(sa5))
      {
        c = CharSequence.class;
      } else if (
              "c".equals(sa5)) {
      }
      else if ("c".equals(sa5))
      {
        c = Character.class;
      } else if (
              "d".equals(sa5) ||
              "o".equals(sa5) ||
              "x".equals(sa5) ||
              "e".equals(sa5) ||
              "f".equals(sa5) ||
              "g".equals(sa5) ||
              "a".equals(sa5)) {
      }
      else if ("d".equals(sa5) || "o".equals(sa5) || "x".equals(sa5)
          || "e".equals(sa5) || "f".equals(sa5) || "g".equals(sa5)
          || "a".equals(sa5))
      {
        c = Number.class;
      } else if (
              "n".equals(sa5) ||
              "%".equals(sa5)) {
      }
      else if ("n".equals(sa5) || "%".equals(sa5))
      {
        // ignore literals
      }
      return c;
@@ -257,73 +221,103 @@
  }
  /**
   * Represents a message to be written into the messages files.
   */
  private class MessageDescriptorDeclaration {
  private class MessageDescriptorDeclaration
  {
    private MessagePropertyKey key;
    private String formatString;
    private List<FormatSpecifier> specifiers;
    private List<Class> classTypes;
    private List<Class<?>> classTypes;
    private String[] constructorArgs;
    /**
     * Creates a parameterized instance.
     * @param key of the message
     * @param formatString of the message
     *
     * @param key
     *          of the message
     * @param formatString
     *          of the message
     */
    public MessageDescriptorDeclaration(MessagePropertyKey key,
                                     String formatString) {
        String formatString)
    {
      this.key = key;
      this.formatString = formatString;
      this.specifiers = parse(formatString);
      this.classTypes = new ArrayList<Class>();
      for (FormatSpecifier f : specifiers) {
        Class c = f.getSimpleConversionClass();
        if (c != null) {
      this.classTypes = new ArrayList<Class<?>>();
      for (FormatSpecifier f : specifiers)
      {
        Class<?> c = f.getSimpleConversionClass();
        if (c != null)
        {
          classTypes.add(c);
        }
      }
    }
    /**
     * Gets the name of the Java class that will be used to represent
     * this message's type.
     *
     * @return String representing the Java class name
     */
    public String getDescriptorClassDeclaration() {
    public String getDescriptorClassDeclaration()
    {
      StringBuilder sb = new StringBuilder();
      if (useGenericMessageTypeClass()) {
        sb.append(getShortClassName(MessageDescriptor.class));
      if (useGenericMessageTypeClass())
      {
        sb.append("MessageDescriptor");
        sb.append(".");
        sb.append(MessageDescriptor.DESCRIPTOR_CLASS_BASE_NAME);
        sb.append(DESCRIPTOR_CLASS_BASE_NAME);
        sb.append("N");
      } else {
        sb.append(getShortClassName(MessageDescriptor.class));
      }
      else
      {
        sb.append("MessageDescriptor");
        sb.append(".");
        sb.append(MessageDescriptor.DESCRIPTOR_CLASS_BASE_NAME);
        sb.append(DESCRIPTOR_CLASS_BASE_NAME);
        sb.append(classTypes.size());
        sb.append(getClassTypeVariables());
      }
      return sb.toString();
    }
    /**
     * Gets a string representing the message type class' variable
     * information (for example '<String,Integer>') that is based on
     * the type of arguments specified  by the specifiers in this message.
     * information (for example '<String,Integer>') that is based on the
     * type of arguments specified by the specifiers in this message.
     *
     * @return String representing the message type class parameters
     */
    public String getClassTypeVariables() {
    public String getClassTypeVariables()
    {
      StringBuilder sb = new StringBuilder();
      if (classTypes.size() > 0) {
      if (classTypes.size() > 0)
      {
        sb.append("<");
        for (int i = 0; i < classTypes.size(); i++) {
          Class c = classTypes.get(i);
          if (c != null) {
        for (int i = 0; i < classTypes.size(); i++)
        {
          Class<?> c = classTypes.get(i);
          if (c != null)
          {
            sb.append(getShortClassName(c));
            if (i < classTypes.size() - 1) {
            if (i < classTypes.size() - 1)
            {
              sb.append(",");
            }
          }
@@ -333,12 +327,16 @@
      return sb.toString();
    }
    /**
     * Gets the javadoc comments that will appear above the messages declaration
     * in the messages file.
     * Gets the javadoc comments that will appear above the messages
     * declaration in the messages file.
     *
     * @return String comment
     */
    public String getComment() {
    public String getComment()
    {
      StringBuilder sb = new StringBuilder();
      sb.append(indent(1)).append("/**").append(EOL);
@@ -347,27 +345,36 @@
      String ws = formatString; // wrapText(formatString, 70);
      String[] sa = ws.split(EOL);
      for (String s : sa) {
      for (String s : sa)
      {
        sb.append(indent(1)).append(" * ").append(s).append(EOL);
      }
      sb.append(indent(1)).append(" */").append(EOL);
      return sb.toString();
    }
    /**
     * Sets the arguments that will be supplied in the declaration
     * of the message.
     * @param s array of string arguments that will be passed
     *        in the constructor
     * Sets the arguments that will be supplied in the declaration of
     * the message.
     *
     * @param s
     *          array of string arguments that will be passed in the
     *          constructor
     */
    public void setConstructorArguments(String... s) {
    public void setConstructorArguments(String... s)
    {
      this.constructorArgs = s;
    }
    /**
     * {@inheritDoc}
     */
    public String toString() {
    public String toString()
    {
      StringBuilder sb = new StringBuilder();
      sb.append(getComment());
      sb.append(indent(1));
@@ -381,10 +388,13 @@
      sb.append("new ");
      sb.append(getDescriptorClassDeclaration());
      sb.append("(");
      if (constructorArgs != null) {
        for (int i = 0; i < constructorArgs.length; i++) {
      if (constructorArgs != null)
      {
        for (int i = 0; i < constructorArgs.length; i++)
        {
          sb.append(constructorArgs[i]);
          if (i < constructorArgs.length - 1) {
          if (i < constructorArgs.length - 1)
          {
            sb.append(",");
          }
        }
@@ -395,20 +405,29 @@
      return sb.toString();
    }
    /**
     * Indicates whether the generic message type class should
     * be used.  In general this is when a format specifier is
     * more complicated than we support or when the number of
     * arguments exceeeds the number of specific message type
     * classes (MessageType0, MessageType1 ...) that are defined.
     * Indicates whether the generic message type class should be used.
     * In general this is when a format specifier is more complicated
     * than we support or when the number of arguments exceeeds the
     * number of specific message type classes (MessageType0,
     * MessageType1 ...) that are defined.
     *
     * @return boolean indicating
     */
    private boolean useGenericMessageTypeClass() {
      if (specifiers.size() > MessageDescriptor.DESCRIPTOR_MAX_ARG_HANDLER) {
    private boolean useGenericMessageTypeClass()
    {
      if (specifiers.size() > DESCRIPTOR_MAX_ARG_HANDLER)
      {
        return true;
      } else if (specifiers != null) {
        for (FormatSpecifier s : specifiers) {
          if (s.specifiesArgumentIndex()) {
      }
      else if (specifiers != null)
      {
        for (FormatSpecifier s : specifiers)
        {
          if (s.specifiesArgumentIndex())
          {
            return true;
          }
        }
@@ -416,21 +435,29 @@
      return false;
    }
    /**
     * Look for format specifiers in the format string.
     * @param s format string
     *
     * @param s
     *          format string
     * @return list of format specifiers
     */
    private List<FormatSpecifier> parse(String s) {
    private List<FormatSpecifier> parse(String s)
    {
      List<FormatSpecifier> sl = new ArrayList<FormatSpecifier>();
      Matcher m = SPECIFIER_PATTERN.matcher(s);
      int i = 0;
      while (i < s.length()) {
        if (m.find(i)) {
      while (i < s.length())
      {
        if (m.find(i))
        {
          // Anything between the start of the string and the beginning
          // of the format specifier is either fixed text or contains
          // an invalid format string.
          if (m.start() != i) {
          if (m.start() != i)
          {
            // Make sure we didn't miss any invalid format specifiers
            checkText(s.substring(i, m.start()));
            // Assume previous characters were fixed text
@@ -439,12 +466,15 @@
          // Expect 6 groups in regular expression
          String[] sa = new String[6];
          for (int j = 0; j < m.groupCount(); j++) {
          for (int j = 0; j < m.groupCount(); j++)
          {
            sa[j] = m.group(j + 1);
          }
          sl.add(new FormatSpecifier(sa));
          i = m.end();
        } else {
        }
        else
        {
          // No more valid format specifiers.  Check for possible invalid
          // format specifiers.
          checkText(s.substring(i));
@@ -456,11 +486,15 @@
      return sl;
    }
    private void checkText(String s) {
    private void checkText(String s)
    {
      int idx;
      // If there are any '%' in the given string, we got a bad format
      // specifier.
      if ((idx = s.indexOf('%')) != -1) {
      if ((idx = s.indexOf('%')) != -1)
      {
        char c = (idx > s.length() - 2 ? '%' : s.charAt(idx + 1));
        throw new UnknownFormatConversionException(String.valueOf(c));
      }
@@ -468,85 +502,58 @@
  }
  /**
   * Sets the source of the messages.
   * @param source File representing the properties
   *        file containing messages
   *
   * @param source
   *          File representing the properties file containing messages
   */
  public void setSourceProps(File source) {
  public void setSourceProps(File source)
  {
    this.source = source;
  }
  /**
   * Sets the file that will be generated containing
   * declarations of messages from <code>source</code>.
   * @param dest File destination
   * Sets the file that will be generated containing declarations of
   * messages from <code>source</code>.
   *
   * @param dest
   *          File destination
   */
  public void setDestJava(File dest) {
  public void setDestJava(File dest)
  {
    this.dest = dest;
    /*
     * Set the descriptors.reg pathname to the same directory as the one used
     * to generate files and ensure all messages are generated in one place.
     */
    String projectBase = null;
    try {
      projectBase = getProject().getBaseDir().getCanonicalPath();
    } catch( java.io.IOException e) {
      throw new BuildException("Error processing " + dest +
            ": unable to retrieve project's directory of ant's project (" +
            e + ")");
    }
    String registry = dest.getAbsolutePath();
    // strip project directory prefix and replace properties filename with
    // $DESCRIPTORS_REG
    registry = registry.substring(projectBase.length()+1,
                                 registry.lastIndexOf(File.separator)+1)
                       .concat(DESCRIPTORS_REG);
    if ( REGISTRY_FILE_NAME == null ) {
      REGISTRY_FILE_NAME = registry;
    } else {
      if ( ! REGISTRY_FILE_NAME.equals(registry) ) {
        // multiple messages are generated in several packages
        StringBuilder sb = new StringBuilder();
        // full pathname of $REGISTRY_FILE_NAME
        sb.append(projectBase)
          .append(File.separator)
          .append(REGISTRY_FILE_NAME);
        // change from generated directory to properties files directory
        sb.replace(0,
                   getProject().getProperty("msg.javagen.dir").length(),
                   getProject().getProperty("msg.dir"));
        // replace properties filename with source filename
        sb.replace(sb.lastIndexOf(File.separator)+1,
                   sb.length(),
                   source.getName());
        throw new BuildException("Error processing " + dest +
              ": all messages must be located in the same package thus " +
              "name of the source file should be " + sb);
      }
    }
  }
  /**
   * Indicates when true that an existing destination
   * file will be overwritten.
   * @param o boolean where true means overwrite
   * Indicates when true that an existing destination file will be
   * overwritten.
   *
   * @param o
   *          boolean where true means overwrite
   */
  public void setOverwrite(boolean o) {
  public void setOverwrite(boolean o)
  {
    this.overwrite = o;
  }
  /**
   * {@inheritDoc}
   */
  @Override
  public void execute() throws BuildException {
  public void execute() throws BuildException
  {
    if ( this.dest == null ) {
    if (this.dest == null)
    {
      // this is an example-plugin call:
      // - check the source file is not a localization
      // - guess the destination filename from source filename
@@ -556,21 +563,26 @@
      String filename = sourcefilename.substring(filenameIndex);
      /*
       * Make sure only <label>.properties are generated thus avoiding to
       * generate messages for localized properties files.
       * Make sure only <label>.properties are generated thus avoiding
       * to generate messages for localized properties files.
       */
      Matcher matcher = LANGUAGE_COUNTRY_MATCHER.matcher(filename);
      if ( matcher.find() ) {
      if (matcher.find())
      {
        if ( ISO_LANGUAGES.contains(matcher.group(2))
          && ISO_COUNTRIES.contains(matcher.group(3)) ) {
          // do not generate message for <label>_<language>_<country>.properties
            && ISO_COUNTRIES.contains(matcher.group(3)))
        {
          // do not generate message for
          // <label>_<language>_<country>.properties
          return;
        }
      }
      matcher = LANGUAGE_MATCHER.matcher(filename);
      if ( matcher.find() ) {
        if ( ISO_LANGUAGES.contains(matcher.group(2)) ) {
      if (matcher.find())
      {
        if (ISO_LANGUAGES.contains(matcher.group(2)))
        {
          // do not generate message for <label>_<language>.properties
          return;
        }
@@ -578,22 +590,28 @@
      // filename without ".properties"
      filename = filename.substring(0, filename.length()-11);
      // change to src-generated directory keeping package name
      pathname = pathname.replace(getProject().getProperty("msg.dir"),
                                  getProject().getProperty("msg.javagen.dir"));
      pathname = pathname.replace(getProject().getProperty("src.dir"),
          getProject().getProperty("srcgen.dir"));
      // append characters from filename to pathname starting with an uppercase
      // letter, ignoring '_' and uppering all characters prefixed with "_"
      // append characters from filename to pathname starting with an
      // uppercase letter, ignoring '_' and uppering all characters
      // prefixed with "_"
      StringBuilder sb = new StringBuilder(pathname);
      boolean upperCaseNextChar = true;
      for(char c : filename.toCharArray()) {
        if ( c == '_' ) {
      for (char c : filename.toCharArray())
      {
        if (c == '_')
        {
          upperCaseNextChar = true;
          continue;
        }
        if ( upperCaseNextChar ) {
        if (upperCaseNextChar)
        {
          sb.append(Character.toUpperCase(c));
          upperCaseNextChar = false;
        } else {
        }
        else
        {
          sb.append(c);
        }
      }
@@ -604,247 +622,196 @@
    BufferedReader stubReader = null;
    PrintWriter destWriter = null;
    try {
    try
    {
      // Decide whether to generate messages based on modification
      // times and print status messages.
      if (!source.exists()) {
        throw new BuildException("file " + source.getName() +
                " does not exist");
      if (!source.exists())
      {
        throw new BuildException("file " + source.getName()
            + " does not exist");
      }
      if (dest.exists()) {
        if (this.overwrite || source.lastModified() > dest.lastModified()) {
      if (dest.exists())
      {
        if (this.overwrite
            || source.lastModified() > dest.lastModified())
        {
          dest.delete();
          log("Regenerating " + dest.getName() + " from " + source.getName());
        } else {
          log("Regenerating " + dest.getName() + " from "
              + source.getName());
        }
        else
        {
          log(dest.getName() + " is up to date");
          return;
        }
      } else {
      }
      else
      {
        File javaGenDir = dest.getParentFile();
        if (!javaGenDir.exists()) {
        if (!javaGenDir.exists())
        {
          javaGenDir.mkdirs();
        }
        log("Generating " + dest.getName() + " from " + source.getName());
        log("Generating " + dest.getName() + " from "
            + source.getName());
      }
      stubReader = new BufferedReader(new InputStreamReader(getStubFile(),
                                                            "UTF-8"));
      stubReader = new BufferedReader(new InputStreamReader(
          getStubFile(), "UTF-8"));
      destWriter = new PrintWriter(dest, "UTF-8");
      String stubLine;
      Properties properties = new Properties();
      properties.load(new FileInputStream(source));
      while (null != (stubLine = stubReader.readLine())) {
        if (stubLine.contains("${MESSAGES}")) {
      while (null != (stubLine = stubReader.readLine()))
      {
        if (stubLine.contains("${MESSAGES}"))
        {
          Integer globalOrdinal = null;
          String go = properties.getProperty(GLOBAL_ORDINAL);
          if (go != null) {
          if (go != null)
          {
            globalOrdinal = new Integer(go);
          }
          // Determine the value of the global category/mask if set
          Integer  globalMask = null;
          Category globalCategory = null;
          String gms = properties.getProperty(GLOBAL_CATEGORY_MASK);
          if (gms != null) {
            globalMask = Integer.parseInt(gms);
            globalCategory = Category.USER_DEFINED;
          } else {
            String gcs = properties.getProperty(GLOBAL_CATEGORY);
            if (gcs != null) {
              globalCategory = Category.valueOf(gcs);
            }
          }
          Map<MessagePropertyKey, String> keyMap = new TreeMap<MessagePropertyKey, String>();
          // Determine the value of the global severity
          Severity globalSeverity = null;
          String gss = properties.getProperty(GLOBAL_SEVERITY);
          if (gss != null) {
            globalSeverity = Severity.parseString(gss);
          }
          Map<MessagePropertyKey,String> keyMap =
                  new TreeMap<MessagePropertyKey,String>();
          for (Object propO : properties.keySet()) {
          for (Object propO : properties.keySet())
          {
            String propKey = propO.toString();
            try {
              if (!DIRECTIVE_PROPERTIES.contains(propKey)) {
                MessagePropertyKey key =
                        MessagePropertyKey.parseString(
                                propKey,
                                globalCategory == null,
                                globalSeverity == null,
                                globalOrdinal == null);
            try
            {
              if (!DIRECTIVE_PROPERTIES.contains(propKey))
              {
                MessagePropertyKey key = MessagePropertyKey
                    .parseString(propKey, globalOrdinal == null);
                String formatString = properties.getProperty(propKey);
                keyMap.put(key, formatString);
              }
            } catch (IllegalArgumentException iae) {
              throw new BuildException(
                      "ERROR: invalid property key " + propKey +
                      ": " + iae.getMessage() +
                      KEY_FORM_MSG);
            }
            catch (IllegalArgumentException iae)
            {
              throw new BuildException("ERROR: invalid property key "
                  + propKey + ": " + iae.getMessage() + KEY_FORM_MSG);
            }
          }
          int usesOfGenericDescriptor = 0;
          Category firstCategory = null;
          Set<Integer> usedOrdinals = new HashSet<Integer>();
          for (MessagePropertyKey key : keyMap.keySet()) {
          for (MessagePropertyKey key : keyMap.keySet())
          {
            String formatString = keyMap.get(key);
            MessageDescriptorDeclaration message =
                    new MessageDescriptorDeclaration(key, formatString);
            MessageDescriptorDeclaration message = new MessageDescriptorDeclaration(
                key, formatString);
            Category c = (globalCategory != null ?
                    globalCategory : key.getCategory());
            // Check that this category is the same as all the
            // others in this file.  Maybe this should be an error?
            if (firstCategory != null) {
              if (!firstCategory.equals(c)) {
                log("WARNING: multiple categories defined in " + source);
              }
            } else {
              firstCategory = c;
            }
            Severity s = (globalSeverity != null ?
                    globalSeverity : key.getSeverity());
            if (c == null) {
              throw new BuildException(
                      "No category could be assigned to message " +
                              key + ".  The category " +
                              "must either be encoded in the property key or " +
                              "or must be set by including the property " +
                              GLOBAL_CATEGORY + " in the properties file" +
                              KEY_FORM_MSG);
            }
            if (c == null) {
              throw new BuildException(
                      "No severity could be assigned to message " +
                              key + ".  The severity " +
                              "must either be encoded in the property key or " +
                              "or must be set by including the property " +
                              GLOBAL_SEVERITY + " in the properties file" +
                              KEY_FORM_MSG);
            }
            if (globalOrdinal == null) {
            if (globalOrdinal == null)
            {
              Integer ordinal = key.getOrdinal();
              if (usedOrdinals.contains(ordinal)) {
                throw new BuildException(
                        "The ordinal value \'" + ordinal + "\' in key " +
                                key + " has been previously defined in " +
                                source + KEY_FORM_MSG);
              } else {
              if (usedOrdinals.contains(ordinal))
              {
                throw new BuildException("The ordinal value \'"
                    + ordinal + "\' in key " + key
                    + " has been previously defined in " + source
                    + KEY_FORM_MSG);
              }
              else
              {
                usedOrdinals.add(ordinal);
              }
            }
            message.setConstructorArguments(
                    "BASE",
                    quote(key.toString()),
                    globalMask != null ? globalMask.toString() : c.name(),
                    s.name(),
                    globalOrdinal != null ?
                            globalOrdinal.toString() :
                            key.getOrdinal().toString()
            );
            message.setConstructorArguments("BASE", quote(key
                .toString()), globalOrdinal != null ? globalOrdinal
                .toString() : key.getOrdinal().toString());
            destWriter.println(message.toString());
            destWriter.println();
            // Keep track of when we use the generic descriptor
            // so that we can report it later
            if (message.useGenericMessageTypeClass()) {
            if (message.useGenericMessageTypeClass())
            {
              usesOfGenericDescriptor++;
            }
          }
          log("  Message Generated:" + keyMap.size(), Project.MSG_VERBOSE);
          log("  Message Generated:" + keyMap.size(),
              Project.MSG_VERBOSE);
          log("  MessageDescriptor.ArgN:" + usesOfGenericDescriptor,
                  Project.MSG_VERBOSE);
        } else {
          stubLine = stubLine.replace("${PACKAGE}", getPackage());
          stubLine = stubLine.replace("${CLASS_NAME}",
                  dest.getName().substring(0, dest.getName().length() -
                          ".java".length()));
          stubLine = stubLine.replace("${BASE}", getBase());
          String useMessageJarIfWebstart =
            properties.getProperty(GLOBAL_USE_MESSAGE_JAR_IF_WEBSTART);
          if ((useMessageJarIfWebstart != null) &&
              ("true".equalsIgnoreCase(useMessageJarIfWebstart) ||
              "on".equalsIgnoreCase(useMessageJarIfWebstart) ||
              "true".equalsIgnoreCase(useMessageJarIfWebstart)))
          {
            useMessageJarIfWebstart = "true";
          }
          else
          {
            useMessageJarIfWebstart = "false";
          }
          stubLine = stubLine.replace("${USE_MESSAGE_JAR_IF_WEBSTART}",
              useMessageJarIfWebstart);
          stubLine = stubLine.replace("${PACKAGE}", getPackage());
          stubLine = stubLine
              .replace("${CLASS_NAME}", dest.getName().substring(0,
                  dest.getName().length() - ".java".length()));
          stubLine = stubLine.replace("${BASE}", getBase());
          destWriter.println(stubLine);
        }
      }
      registerMessageDescriptor(getMessageDescriptorFullClassName());
      stubReader.close();
      destWriter.close();
    } catch (Exception e) {
    }
    catch (Exception e)
    {
      // Don't leave a malformed file laying around. Delete
      // it so it will be forced to be regenerated.
      if (dest.exists()) {
      if (dest.exists())
      {
        dest.deleteOnExit();
      }
      e.printStackTrace();
      throw new BuildException("Error processing " + source +
              ":  " + e.getMessage());
    } finally {
      if (stubReader != null) {
        try {
      throw new BuildException("Error processing " + source + ":  "
          + e.getMessage());
    }
    finally
    {
      if (stubReader != null)
      {
        try
        {
          stubReader.close();
        } catch (Exception e){
        }
        catch (Exception e)
        {
          // ignore
        }
      }
      if (destWriter != null) {
        try {
      if (destWriter != null)
      {
        try
        {
          destWriter.close();
        } catch (Exception e){
        }
        catch (Exception e)
        {
          // ignore
        }
      }
    }
  }
  private String getMessageDescriptorFullClassName() {
    return getPackage() + "." + getMessageDescriptorClassName();
  }
  private String getMessageDescriptorClassName() {
    return dest.getName().substring(
            0, dest.getName().length() - ".java".length());
  }
  private String getBase() {
  private String getBase()
  {
    String srcPath = unixifyPath(source.getAbsolutePath());
    String base = srcPath.substring(srcPath.lastIndexOf("/") + 1,
                                    srcPath.length() - ".properties".length());
    return base;
  }
  private String getPackage() {
  private String getPackage()
  {
    String destPath = unixifyPath(dest.getAbsolutePath());
    String msgJavaGenDir = unixifyPath(
                                   getProject().getProperty("msg.javagen.dir"));
    String msgJavaGenDir = unixifyPath(getProject().getProperty(
        "srcgen.dir"));
    String c = destPath.substring(msgJavaGenDir.length()+1);
    c = c.replace('/', '.');
    c = c.substring(0, c.lastIndexOf(".")); // strip .java
@@ -852,124 +819,99 @@
    return c;
  }
  static private String indent(int indent) {
  static private String indent(int indent)
  {
    char[] blankArray = new char[2 * indent];
    Arrays.fill(blankArray, ' ');
    return new String(blankArray);
  }
  static private String quote(String s) {
    return new StringBuilder()
            .append("\"")
            .append(s)
            .append("\"")
  static private String quote(String s)
  {
    return new StringBuilder().append("\"").append(s).append("\"")
            .toString();
  }
  static private String getShortClassName(Class c) {
  static private String getShortClassName(Class<?> c)
  {
    String name;
    String fqName = c.getName();
    int i = fqName.lastIndexOf('.');
    if (i > 0) {
    if (i > 0)
    {
      name = fqName.substring(i + 1);
    } else {
    }
    else
    {
      name = fqName;
    }
    return name;
  }
  /**
   * Writes a record in the messages registry for the specifed
   * class name.
   * @param descClassName name of the message descriptor class
   * @return true if the class was acutally added to the registry;
   *         false indicates that the class was already present.
   * @throws IOException if there is a problem with the file I/O
   */
  private boolean registerMessageDescriptor(String descClassName)
          throws IOException
  private File getProjectBase()
  {
    boolean classAdded = false;
    File registry = getRegistryFile();
    if (!isDescriptorRegistered(descClassName)) {
      FileOutputStream file = new FileOutputStream(registry,true);
      DataOutputStream out   = new DataOutputStream(file);
      out.writeBytes(descClassName);
      out.writeBytes("\n");
      out.flush();
      out.close();
    }
    return classAdded;
  }
  private boolean isDescriptorRegistered(String descClassName)
          throws IOException
  {
    boolean isRegistered = false;
    BufferedReader reader = new BufferedReader(
            new FileReader(getRegistryFile()));
    String line;
    while(null != (line = reader.readLine())) {
      if (line.trim().equals(descClassName.trim())) {
        isRegistered = true;
        break;
      }
    }
    return isRegistered;
  }
  private File getRegistryFile() throws IOException {
    File registry = new File(getProjectBase(), REGISTRY_FILE_NAME);
    if (!registry.exists()) {
      File parent = registry.getParentFile();
      if (!parent.exists()) {
        parent.mkdirs();
      }
      registry.createNewFile();
    }
    return registry;
  }
  private File getProjectBase() {
    File projectBase;
    // Get the path to build.xml and return the parent
    // directory else just return the working directory.
    Location l = getLocation();
    String fileName = l.getFileName();
    if (fileName != null) {
    if (fileName != null)
    {
      File f = new File(fileName);
      projectBase = f.getParentFile();
    } else {
    }
    else
    {
      projectBase = new File(System.getProperty("user.dir"));
    }
    return projectBase;
  }
  private String unixifyPath(String path) {
  private String unixifyPath(String path)
  {
    return path.replace("\\", "/");
  }
  /*
   * Returns the stub file ("resource/Messages.java.stub") from the appropriate
   * location: ant or jar file.
   * Returns the stub file ("resource/Messages.java.stub") from the
   * appropriate location: ant or jar file.
   */
  private InputStream getStubFile() {
  private InputStream getStubFile()
  {
    InputStream result = null;
    File stub = new File(getProjectBase(), MESSAGES_FILE_STUB);
    if ( stub.exists() ) {
    if (stub.exists())
    {
      // this is the OpenDS's ant project calling
      // Stub is located at OPENDS_ROOT/resource/Messages.java.stub
      try {
      try
      {
        result = new FileInputStream(stub);
      } catch (FileNotFoundException e) {
        // should neven happen
        throw new BuildException("Unable to load template " +
              MESSAGES_FILE_STUB + ":  " + e.getMessage());
      }
    } else {
      catch (FileNotFoundException e)
      {
        // should never happen
        throw new BuildException("Unable to load template "
            + MESSAGES_FILE_STUB + ":  " + e.getMessage());
      }
    }
    else
    {
      // this is the example plugin's ant project calling
      // Stub is located at build-tools.jar:resource/Messages.java.stub
      result = getClass().getResourceAsStream(MESSAGES_FILE_STUB);
@@ -978,18 +920,4 @@
    return result;
  }
  /**
   * For testing.
   * @param args from command line
   */
  public static void main(String[] args) {
    File source = new File("src/messages/messages/tools.properties");
    File dest = new File("/tmp/org/opends/XXX.java");
    GenerateMessageFile gmf = new GenerateMessageFile();
    gmf.setOverwrite(true);
    gmf.setDestJava(dest);
    gmf.setSourceProps(source);
    gmf.execute();
  }
}
sdk/build-tools/org/opends/build/tools/MessagePropertyKey.java
@@ -27,239 +27,190 @@
package org.opends.build.tools;
import org.opends.messages.Category;
import org.opends.messages.Severity;
import java.util.EnumSet;
/**
 * OpenDS messages defined in properties files must be defined
 * with the ordinal and in most cases category and severity encoded
 * in the message key.  This class helps with generating and
 * parsing of these keys.
 *
 * Keys must be of the form
 *
 *   CATEGORY_SEVERITY_DESCRIPTION_ORDINAL
 *
 * OpenDS messages defined in properties files must be defined with the
 * ordinal and in most cases category and severity encoded in the
 * message key. This class helps with generating and parsing of these
 * keys. Keys must be of the form CATEGORY_SEVERITY_DESCRIPTION_ORDINAL
 * where:
 * <ul>
 * <li>
 * CATEGORY is the string representation of one of the
 * <code>Category</code> enums.
 * </li>
 * <li>
 * SEVERITY is the long or abbreviated form of one of
 * the <code>Severity</code> enums.
 * </li>
 * <li>
 * DESCRIPTION is an uppercase string containing characters
 * and the underscore character for describing the purpose
 * of the message.
 * </li>
 * <li>
 * ORDINAL is an integer that makes the message unique witin
 * the property file.
 * </li>
 * <li>CATEGORY is the string representation of one of the
 * <code>Category</code> enums.</li>
 * <li>SEVERITY is the long or abbreviated form of one of the
 * <code>Severity</code> enums.</li>
 * <li>DESCRIPTION is an uppercase string containing characters and the
 * underscore character for describing the purpose of the message.</li>
 * <li>ORDINAL is an integer that makes the message unique witin the
 * property file.</li>
 * </ul>
 *
 */
// TODO: move this class to GenerateMessageFile when DirectoryServer
// no longer needs to support dumpMessages()
public class MessagePropertyKey
        implements Comparable<MessagePropertyKey> {
  private Category category;
  private Severity severity;
public class MessagePropertyKey implements
    Comparable<MessagePropertyKey>
{
  private String description;
  private Integer ordinal;
  /**
   * Creates a message property key from a string value.
   * @param keyString from properties file
   * @param includesCategory when true expects ordinals to be encoded
   *        in the keystring; when false the mandate is relaxed
   * @param includesSeverity when true expects ordinals to be encoded
   *        in the keystring; when false the mandate is relaxed
   * @param includesOrdinal when true expects ordinals to be encoded
   *        in the keystring; when false the mandate is relaxed
   *
   * @param keyString
   *          from properties file
   * @param includesOrdinal
   *          when true expects ordinals to be encoded in the keystring;
   *          when false the mandate is relaxed
   * @return MessagePropertyKey created from string
   */
  static public MessagePropertyKey parseString(
          String keyString,
          boolean includesCategory,
          boolean includesSeverity,
          boolean includesOrdinal) {
  static public MessagePropertyKey parseString(String keyString,
      boolean includesOrdinal)
  {
    Category category = null;
    Severity severity = null;
    String description;
    Integer ordinal = null;
    String k = keyString;
    for (Category c : EnumSet.allOf(Category.class)) {
      String cName = c.name();
      if (k.startsWith(cName)) {
        category = c;
        if ('_' != k.charAt(cName.length())) {
          throw new IllegalArgumentException(
                  "Error processing " + keyString + ".  Category must be " +
                          "separated from the rest of the " +
                          "key with an '_' character");
        }
        k = k.substring(cName.length() + 1);
        break;
      }
    }
    if (category == null && includesCategory) {
      throw new IllegalArgumentException("Category not included in key " +
              keyString);
    }
    for (Severity s : EnumSet.allOf(Severity.class)) {
      String sName = s.propertyKeyFormName();
      if (k.startsWith(sName)) {
        severity = s;
        if ('_' != k.charAt(sName.length())) {
          throw new IllegalArgumentException(
                  "Error processing " + keyString + ".  Severity must be " +
                          "separated from the rest of the " +
                          "key with an '_' character");
        }
        k = k.substring(sName.length() + 1);
        break;
      }
    }
    if (severity == null && includesSeverity) {
      throw new IllegalArgumentException("Severity not included in key " +
              keyString);
    }
    if (includesOrdinal) {
    if (includesOrdinal)
    {
      int li = k.lastIndexOf("_");
      if (li != -1) {
      if (li != -1)
      {
        description = k.substring(0, li).toUpperCase();
      } else {
        throw new IllegalArgumentException(
                "Incorrectly formatted key " + keyString);
      }
      else
      {
        throw new IllegalArgumentException("Incorrectly formatted key "
            + keyString);
      }
      try {
      try
      {
        String ordString = k.substring(li + 1);
        ordinal = Integer.parseInt(ordString);
      } catch (Exception nfe) {
        throw new IllegalArgumentException("Error parsing ordinal for key " +
                keyString);
      }
    } else {
      catch (Exception nfe)
      {
        throw new IllegalArgumentException(
            "Error parsing ordinal for key " + keyString);
      }
    }
    else
    {
      description = k;
    }
    return new MessagePropertyKey(category, severity, description, ordinal);
    return new MessagePropertyKey(description, ordinal);
  }
  /**
   * Creates a parameterized instance.
   * @param category of this key
   * @param severity of this key
   * @param description of this key
   * @param ordinal of this key
   *
   * @param description
   *          of this key
   * @param ordinal
   *          of this key
   */
  public MessagePropertyKey(Category category, Severity severity,
                           String description, Integer ordinal) {
    this.category = category;
    this.severity = severity;
  public MessagePropertyKey(String description, Integer ordinal)
  {
    this.description = description;
    this.ordinal = ordinal;
  }
  /**
   * Gets the category of this key.
   * @return Category of this key
   */
  public Category getCategory() {
    return this.category;
  }
  /**
   * Gets the severity of this key.
   * @return Severity of this key
   */
  public Severity getSeverity() {
    return this.severity;
  }
  /**
   * Gets the description of this key.
   *
   * @return description of this key
   */
  public String getDescription() {
  public String getDescription()
  {
    return this.description;
  }
  /**
   * Gets the ordinal of this key.
   *
   * @return ordinal of this key
   */
  public Integer getOrdinal() {
  public Integer getOrdinal()
  {
    return this.ordinal;
  }
  /**
   * Gets the name of the MessageDescriptor as it should appear
   * in the messages file.
   * Gets the name of the MessageDescriptor as it should appear in the
   * messages file.
   *
   * @return name of message descriptor
   */
  public String getMessageDescriptorName() {
    return new StringBuilder()
            .append(this.severity.messageDesciptorName())
            .append("_")
            .append(this.description).toString();
  public String getMessageDescriptorName()
  {
    String name = this.description;
    name = name.replaceFirst("^MILD_WARN", "WARN");
    name = name.replaceFirst("^SEVERE_WARN", "WARN");
    name = name.replaceFirst("^MILD_ERR", "ERR");
    name = name.replaceFirst("^SEVERE_ERR", "ERR");
    name = name.replaceFirst("^FATAL_ERR", "ERR");
    return name;
  }
  /**
   * {@inheritDoc}
   */
  public String toString() {
    return getPropertyKeyName(true, true, true);
  public String toString()
  {
    return getPropertyKeyName(true);
  }
  /**
   * Gets the name of the key as it would appear in a properties file.
   * @param includeCategory in the name
   * @param includeSeverity in the name
   * @param includeOrdinal in the name
   *
   * @param includeOrdinal
   *          in the name
   * @return string representing the property key
   */
  public String getPropertyKeyName(boolean includeCategory,
                                   boolean includeSeverity,
                                   boolean includeOrdinal) {
  public String getPropertyKeyName(boolean includeOrdinal)
  {
    StringBuilder sb = new StringBuilder();
    if (category != null && includeCategory) {
      sb.append(category.name());
      sb.append("_");
    }
    if (severity != null && includeSeverity) {
      sb.append(severity.propertyKeyFormName());
      sb.append("_");
    }
    sb.append(description);
    if (ordinal != null && includeOrdinal) {
    if (ordinal != null && includeOrdinal)
    {
      sb.append("_");
      sb.append(ordinal);
    }
    return sb.toString();
  }
  /**
   * {@inheritDoc}
   */
  public int compareTo(MessagePropertyKey k) {
    if (ordinal == k.ordinal) {
  public int compareTo(MessagePropertyKey k)
  {
    if (ordinal == k.ordinal)
    {
      return description.compareTo(k.description);
    } else {
    }
    else
    {
      return ordinal.compareTo(k.ordinal);
    }
  }
sdk/build-tools/org/opends/build/tools/Utilities.java
@@ -25,35 +25,44 @@
 *      Copyright 2008 Sun Microsystems, Inc.
 */
package org.opends.build.tools;
import org.opends.messages.Message;
import java.util.StringTokenizer;
/**
 */
public class Utilities {
public class Utilities
{
  /**
   * The end-of-line character for this platform.
   */
  public static final String EOL = System.getProperty("line.separator");
  /**
   * Inserts line breaks into the provided buffer to wrap text at no more than
   * the specified column width.  Wrapping will only be done at space boundaries
   * and if there are no spaces within the specified width, then wrapping will
   * be performed at the first space after the specified column.
   * Inserts line breaks into the provided buffer to wrap text at no
   * more than the specified column width. Wrapping will only be done at
   * space boundaries and if there are no spaces within the specified
   * width, then wrapping will be performed at the first space after the
   * specified column.
   *
   * @param  text   The text to be wrapped.
   * @param  width  The maximum number of characters to allow on a line if there
   *                is a suitable breaking point.
   *
   * @param text
   *          The text to be wrapped.
   * @param width
   *          The maximum number of characters to allow on a line if
   *          there is a suitable breaking point.
   * @return  The wrapped text.
   */
  public static String wrapText(String text, int width)
  {
    StringBuilder   buffer        = new StringBuilder();
    StringTokenizer lineTokenizer = new StringTokenizer(text, "\r\n", true);
    StringTokenizer lineTokenizer = new StringTokenizer(text, "\r\n",
        true);
    while (lineTokenizer.hasMoreTokens())
    {
      String line = lineTokenizer.nextToken();
@@ -69,17 +78,20 @@
      }
      else
      {
        // The line doesn't fit in the specified width, so it needs to be
        // The line doesn't fit in the specified width, so it needs to
        // be
        // wrapped.  Do so at space boundaries.
        StringBuilder   lineBuffer    = new StringBuilder();
        StringBuilder   delimBuffer   = new StringBuilder();
        StringTokenizer wordTokenizer = new StringTokenizer(line, " ", true);
        StringTokenizer wordTokenizer = new StringTokenizer(line, " ",
            true);
        while (wordTokenizer.hasMoreTokens())
        {
          String word = wordTokenizer.nextToken();
          if (word.equals(" "))
          {
            // It's a space, so add it to the delim buffer only if the line
            // It's a space, so add it to the delim buffer only if the
            // line
            // buffer is not empty.
            if (lineBuffer.length() > 0)
            {
@@ -88,7 +100,8 @@
          }
          else if (word.length() > width)
          {
            // This is a long word that can't be wrapped, so we'll just have to
            // This is a long word that can't be wrapped, so we'll just
            // have to
            // make do.
            if (lineBuffer.length() > 0)
            {
@@ -100,7 +113,8 @@
            if (wordTokenizer.hasMoreTokens())
            {
              // The next token must be a space, so remove it.  If there are
              // The next token must be a space, so remove it. If there
              // are
              // still more tokens after that, then append an EOL.
              wordTokenizer.nextToken();
              if (wordTokenizer.hasMoreTokens())
@@ -116,9 +130,10 @@
          }
          else
          {
            // It's not a space, so see if we can fit it on the curent line.
            int newLineLength = lineBuffer.length() + delimBuffer.length() +
                                word.length();
            // It's not a space, so see if we can fit it on the curent
            // line.
            int newLineLength = lineBuffer.length()
                + delimBuffer.length() + word.length();
            if (newLineLength < width)
            {
              // It does fit on the line, so add it.
@@ -131,7 +146,8 @@
            }
            else
            {
              // It doesn't fit on the line, so end the current line and start
              // It doesn't fit on the line, so end the current line and
              // start
              // a new one.
              buffer.append(lineBuffer);
              buffer.append(EOL);
@@ -147,7 +163,8 @@
          }
        }
        // If there's anything left in the line buffer, then add it to the
        // If there's anything left in the line buffer, then add it to
        // the
        // final buffer.
        buffer.append(lineBuffer);
      }
sdk/build.bat
New file
@@ -0,0 +1,47 @@
@echo off
rem CDDL HEADER START
rem
rem The contents of this file are subject to the terms of the
rem Common Development and Distribution License, Version 1.0 only
rem (the "License").  You may not use this file except in compliance
rem with the License.
rem
rem You can obtain a copy of the license at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE
rem or https://OpenDS.dev.java.net/OpenDS.LICENSE.
rem See the License for the specific language governing permissions
rem and limitations under the License.
rem
rem When distributing Covered Code, include this CDDL HEADER in each
rem file and include the License file at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
rem add the following below this CDDL HEADER, with the fields enclosed
rem information:
rem      Portions Copyright [yyyy] [name of copyright owner]
rem
rem CDDL HEADER END
rem
rem
rem      Copyright 2008 Sun Microsystems, Inc.
setlocal
set DIR_HOME=%~dP0
if "%JAVA_HOME%" == "" goto noJavaHome
goto runAnt
:noJavaHome
echo Error: JAVA_HOME environment variable is not set.
echo        Please set it to a valid Java 5 installation.
goto end
:runAnt
"%DIR_HOME%\ext\ant\bin\ant" %*
:end
sdk/build.properties
New file
@@ -0,0 +1,4 @@
pkg.toolkit.dir=
sdk/build.sh
New file
@@ -0,0 +1,52 @@
#!/bin/sh
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
#      Copyright 2008 Sun Microsystems, Inc.
# Change to the location of this build script.
cd `dirname $0`
# See if JAVA_HOME is set.  If not, then see if there is a java executable in
# the path and try to figure it out.
if test -z "${JAVA_HOME}"
then
  JAVA_HOME=`java -cp resource FindJavaHome`
  if test -z "${JAVA_HOME}"
  then
    echo "Please set JAVA_HOME to the root of a Java 5.0 installation."
    exit 1
  else
    export JAVA_HOME
  fi
fi
ANT_HOME=`pwd`/ext/ant
export ANT_HOME
# Execute the ant script and pass it any additional command-line arguments.
ext/ant/bin/ant --noconfig ${*}
sdk/build.xml
New file
@@ -0,0 +1,1206 @@
<!--
 ! CDDL HEADER START
 !
 ! The contents of this file are subject to the terms of the
 ! Common Development and Distribution License, Version 1.0 only
 ! (the "License").  You may not use this file except in compliance
 ! with the License.
 !
 ! You can obtain a copy of the license at
 ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
 ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 ! See the License for the specific language governing permissions
 ! and limitations under the License.
 !
 ! When distributing Covered Code, include this CDDL HEADER in each
 ! file and include the License file at
 ! trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 ! add the following below this CDDL HEADER, with the fields enclosed
 ! by brackets "[]" replaced with your own identifying information:
 !      Portions Copyright [yyyy] [name of copyright owner]
 !
 ! CDDL HEADER END
 !
 !
 !      Copyright 2009 Sun Microsystems, Inc.
 ! -->
<project name="OpenDS LDAP SDK" basedir="." default="package">
    <description>
    This is the build script for the OpenDS LDAP SDK.  See the BUILDING
    file in this directory for build instructions.
    </description>
    <!-- Build JVM properties -->
    <property name="MEM" value="512M" />
    <!-- General server-wide properties -->
    <property name="src.dir" location="src" />
    <property name="srcgen.dir" location="src-generated" />
    <property name="build.dir" location="build" />
    <property name="classes.dir" location="${build.dir}/classes" />
    <property name="build.lib.dir" location="${build.dir}/lib" />
    <property name="lib.dir" location="lib" />
    <property name="ext.dir" location="ext" />
    <property name="package.dir" location="${build.dir}/package" />
    <property name="javadoc.dir" location="${build.dir}/javadoc" />
    <property name="wiki.home" value="https://www.opends.org/wiki" />
    <property name="resource.dir" location="resource" />
    <property name="scripts.dir" location="${resource.dir}/bin" />
    <property name="build.debuglevel" value="lines,vars,source" />
    <!-- Properties for build tools -->
    <property name="buildtools.src.dir" location="build-tools" />
    <property name="buildtools.classes.dir"
              location="${build.dir}/build-tools/classes" />
    <!-- Properties for use in unit testing. -->
    <property name="unittest.testng.dir" location="tests/unit-tests-testng" />
    <property name="unittest.testng.src.dir"
              location="${unittest.testng.dir}/src/sdk" />
    <property name="unittest.classes.dir"
              location="${build.dir}/unit-tests/classes" />
    <property name="unittest.report.dir"
              location="${build.dir}/unit-tests/report" />
    <property name="unittest.resource.dir"
              location="${build.dir}/unit-tests/resource" />
    <!-- Properties for coverage diff reports -->
    <property name="cvgdiff.dir" location="build/diff" />
    <property name="cvgdiff.report.dir" location="${cvgdiff.dir}/report" />
    <!-- Properties for code coverage testing. -->
    <property name="coverage.dir" location="build/coverage" />
    <property name="coverage.report.dir"
              location="${coverage.dir}/reports/unit" />
    <property name="coverage.instr.dir"
              location="${coverage.dir}/instrumentedcode" />
    <property name="coverage.data.dir"
              location="${coverage.dir}/gathereddata" />
    <!-- Properties for the EMMA code coverage tool. -->
    <property name="emma.dir" location="${ext.dir}/emma/lib" />
    <!-- Properties for the TestNG unit testing  tool. -->
    <property name="testng.dir" location="${ext.dir}/testng" />
    <property name="testng.lib.dir" location="${testng.dir}/lib" />
    <!-- Properties for the ANT build tool. -->
    <property name="ant.dir" location="${ext.dir}/ant" />
    <property name="ant.lib.dir" location="${ant.dir}/lib" />
    <!-- Properties for the checkstyle tool. -->
    <property name="checkstyle.dir" location="${ext.dir}/checkstyle" />
    <property name="checkstyle.cache.dir" location=".checkstyle-cache" />
    <!-- Properties for the SVNKit tool. -->
    <property name="svnkit.dir" location="${ext.dir}/svnkit" />
    <!-- Properties for OpenDS LDAP SDK version information. -->
    <property name="dynconstants.file"
              location="${srcgen.dir}/com/sun/opends/sdk/util/DynamicConstants.java" />
    <property name="dynconstants.stubfile"
              location="${resource.dir}/DynamicConstants.java.stubs" />
    <property file="PRODUCT" />
    <!-- The build target that should be used before committing code. -->
    <target name="precommit"
            depends="checkstyle,clean,checkprecommit,testwithcoverage"
            description="Perform all processing needed before committing code.">
    </target>
    <!-- The build target that should be used to build everything. -->
    <target name="all"
            depends="checkstyle,clean,checkprecommit,srczip,javadoc,testallwithcoverage"
            description="Build using all defined targets.">
    </target>
    <!-- Package the OpenDS LDAP SDK for distribution. -->
    <target name="package"
            depends="prepackage"
            description="Package the OpenDS LDAP SDK for distribution.">
        <zip destfile="${package.dir}/${SHORT_NAME}-${VERSION_NUMBER_STRING}.zip">
            <zipfileset dir="${package.dir}"
                        includes="${SHORT_NAME}-${VERSION_NUMBER_STRING}"
                        filemode="644"
                        dirmode="700" />
            <zipfileset dir="${package.dir}"
                        includes="${SHORT_NAME}-${VERSION_NUMBER_STRING}/**/*"
                        excludes="${SHORT_NAME}-${VERSION_NUMBER_STRING}/bin/*,${SHORT_NAME}-${VERSION_NUMBER_STRING}/lib/_client-script.sh,${SHORT_NAME}-${VERSION_NUMBER_STRING}/lib/_script-util.sh,${SHORT_NAME}-${VERSION_NUMBER_STRING}/lib/_server-script.sh,${SHORT_NAME}-${VERSION_NUMBER_STRING}/lib/_mixed-script.sh,${SHORT_NAME}-${VERSION_NUMBER_STRING}/setup,${SHORT_NAME}-${VERSION_NUMBER_STRING}/uninstall,${SHORT_NAME}-${VERSION_NUMBER_STRING}/upgrade,${SHORT_NAME}-${VERSION_NUMBER_STRING}/QuickSetup.app/Contents/MacOS/JavaApplicationStub,${SHORT_NAME}-${VERSION_NUMBER_STRING}/Uninstall.app/Contents/MacOS/JavaApplicationStub,${SHORT_NAME}-${VERSION_NUMBER_STRING}/bin/ControlPanel.app/Contents/MacOS/JavaApplicationStub"
                        filemode="644"
                        dirmode="755" />
            <zipfileset dir="${package.dir}"
                        includes="${SHORT_NAME}-${VERSION_NUMBER_STRING}/lib/_client-script.sh,${SHORT_NAME}-${VERSION_NUMBER_STRING}/lib/_script-util.sh,${SHORT_NAME}-${VERSION_NUMBER_STRING}/lib/_server-script.sh,${SHORT_NAME}-${VERSION_NUMBER_STRING}/lib/_mixed-script.sh"
                        filemode="755"
                        dirmode="755" />
            <zipfileset dir="${package.dir}"
                        includes="${SHORT_NAME}-${VERSION_NUMBER_STRING}/bin/*"
                        excludes="${SHORT_NAME}-${VERSION_NUMBER_STRING}/bin/README_WINDOWS.txt"
                        filemode="755"
                        dirmode="755" />
            <zipfileset dir="${package.dir}"
                        includes="${SHORT_NAME}-${VERSION_NUMBER_STRING}/bin/README_WINDOWS.txt"
                        filemode="644"
                        dirmode="755" />
            <zipfileset dir="${package.dir}"
                        includes="${SHORT_NAME}-${VERSION_NUMBER_STRING}/setup,${SHORT_NAME}-${VERSION_NUMBER_STRING}/uninstall,${SHORT_NAME}-${VERSION_NUMBER_STRING}/upgrade,${SHORT_NAME}-${VERSION_NUMBER_STRING}/QuickSetup.app/Contents/MacOS/JavaApplicationStub,${SHORT_NAME}-${VERSION_NUMBER_STRING}/Uninstall.app/Contents/MacOS/JavaApplicationStub,${SHORT_NAME}-${VERSION_NUMBER_STRING}/bin/ControlPanel.app/Contents/MacOS/JavaApplicationStub"
                        filemode="755"
                        dirmode="755" />
        </zip>
        <property name="package.built" value="true" />
        <!-- print a time stamp in Unix 'date' format -->
        <tstamp>
            <format property="package.built.ts"
                    pattern="EEE MMM dd HH:mm:ss zzz yyyy" />
        </tstamp>
        <echo message="Package Built: ${package.built.ts}" />
    </target>
    <!-- Generate Java message objects from properties. -->
    <target name="generatemessages" depends="buildtools">
        <typedef name="genmsg"
                 classname="org.opends.build.tools.GenerateMessageFile">
            <classpath>
                <fileset dir="${build.dir}/build-tools">
                    <include name="*.jar" />
                </fileset>
            </classpath>
        </typedef>
        <genmsg sourceProps="${src.dir}/com/sun/opends/sdk/util/messages.properties"
                destJava="${srcgen.dir}/com/sun/opends/sdk/util/Messages.java">
        </genmsg>
    </target>
    <!-- Remove all dynamically-generated build files. -->
    <target name="clean"
            description="Clean up any files generated during the build process">
        <delete dir="${build.dir}" />
        <delete includeemptydirs="true">
            <fileset dir="${srcgen.dir}" includes="**/*" />
        </delete>
    </target>
    <!-- Set the property valid.java.version if the java version is valid. -->
    <target name="validjavaversion" depends="buildtools">
        <property name="min.java.version" value="1.5.0_08" />
        <typedef name="validjavaversion"
                 classname="org.opends.build.tools.ValidJavaVersion">
            <classpath>
                <fileset dir="${build.dir}/build-tools">
                    <include name="*.jar" />
                </fileset>
            </classpath>
        </typedef>
        <condition property="valid.java.version">
            <validjavaversion minVersion="${min.java.version}" />
        </condition>
    </target>
    <!-- Warn if the build java version is too old. -->
    <target name="checkjavaversion"
            depends="validjavaversion"
            unless="valid.java.version">
        <echo level="warning"
              message="WARNING: Java version ${java.version} is too old." />
        <echo level="warning"
              message="Java version ${min.java.version} or later is required to build ${SHORT_NAME}." />
    </target>
    <!-- Perform common initialization common to several targets. -->
    <target name="init">
        <path id="run.classpath">
            <pathelement location="${classes.dir}" />
        </path>
        <tstamp>
            <format property="timestamp"
                    pattern="yyyyMMddHHmmss'Z'"
                    timezone="UTC" />
        </tstamp>
        <condition property="DEBUG_BUILD" value="false">
            <not>
                <isset property="DEBUG_BUILD" />
            </not>
        </condition>
        <!--
         ! For some reason, some Apple VMs put quotes around the value of the
         ! java.vm.vendor property, which wreaks havoc with DynamicConstants.  This
         ! pair of conditions attempts to work around that by detecting the quote
         ! and surrounding the value with backslashes.
         ! -->
        <condition property="JVM_VENDOR" value="Apple Computer">
            <contains string="${java.vm.vendor}"
                      substring="Apple Computer"
                      casesensitive="false" />
        </condition>
        <condition property="JVM_VENDOR" value="${java.vm.vendor}">
            <not>
                <isset property="JVM_VENDOR" />
            </not>
        </condition>
    </target>
    <!-- Build the DynamicConstants.java file and any of its dependencies. -->
    <target name="dynamicconstants" depends="init,buildtools">
        <!-- Get the revision number of the current Subversion workspace -->
        <taskdef name="getsvnrevision"
                 classname="org.opends.build.tools.GetSubversionRevision">
            <classpath>
                <fileset dir="${build.dir}/build-tools">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${svnkit.dir}">
                    <include name="*.jar" />
                </fileset>
            </classpath>
        </taskdef>
        <getsvnrevision property="REVISION_NUMBER" />
        <!-- Get the url repo of the current Subversion workspace -->
        <taskdef name="getsvnurlrepo"
                 classname="org.opends.build.tools.GetSubversionUrlRepo">
            <classpath>
                <fileset dir="${build.dir}/build-tools">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${svnkit.dir}">
                    <include name="*.jar" />
                </fileset>
            </classpath>
        </taskdef>
        <getsvnurlrepo property="URL_REPOSITORY" />
        <!-- Construct the version number string -->
        <taskdef name="getversionnumber"
                 classname="org.opends.build.tools.CreateVersionString">
            <classpath>
                <fileset dir="${build.dir}/build-tools">
                    <include name="*.jar" />
                </fileset>
            </classpath>
        </taskdef>
        <getversionnumber property="VERSION_NUMBER_STRING" />
        <!--
         ! Generate the DynamicConstants.java file.
         !
         ! Warning: the .stubs file references the following properties
         ! PRODUCT_NAME, SHORT_NAME, MAJOR_VERSION, MINOR_VERSION, POINT_VERSION,
         ! VERSION_QUALIFIER, FIX_IDS, timestamp, user.name, java.version,
         ! java.vendor, java.vm.version, JVM_VENDOR, DEBUG_BUILD,
         ! REVISION_NUMBER, URL_REPOSITORY, VERSION_NUMBER_STRING
         !
         ! If you change the name of any of those properties in this build.xml
         ! you'll need to reflect the same change in the .stubs file
         ! -->
        <condition property="BUILD_NUMBER" value="-1">
            <not>
                <isset property="BUILD_NUMBER" />
            </not>
        </condition>
        <copy file="${dynconstants.stubfile}"
              tofile="${dynconstants.file}"
              overwrite="true">
            <filterchain>
                <expandproperties />
            </filterchain>
        </copy>
    </target>
    <!-- Check modified files to see if any svn:eol-style or copyright updates
       are needed. -->
    <target name="checkprecommit" depends="buildtools">
        <taskdef name="checkprecommit"
                 classname="org.opends.build.tools.CheckPrecommit">
            <classpath>
                <fileset dir="${build.dir}/build-tools">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${svnkit.dir}">
                    <include name="*.jar" />
                </fileset>
            </classpath>
        </taskdef>
        <checkprecommit />
    </target>
    <!-- Ensure that the source code meets basic style requirements. -->
    <target name="checkstyle">
        <mkdir dir="${checkstyle.cache.dir}" />
        <taskdef resource="checkstyletask.properties"
                 classpath="${checkstyle.dir}/checkstyle-all-4.1.jar" />
        <checkstyle config="${checkstyle.dir}/opends-checkstyle.xml"
                    failOnViolation="true">
            <fileset dir="${src.dir}">
                <include name="**/*.java" />
            </fileset>
            <formatter type="plain" />
        </checkstyle>
        <checkstyle config="${checkstyle.dir}/opends-doctarget-checkstyle.xml"
                    failOnViolation="true">
            <fileset dir="${src.dir}/org" includes="**/*.java" />
            <formatter type="plain" />
        </checkstyle>
        <checkstyle config="${checkstyle.dir}/opends-unittest-checkstyle.xml"
                    failOnViolation="true">
            <fileset dir="${unittest.testng.src.dir}" includes="**/*.java" />
            <formatter type="plain" />
        </checkstyle>
    </target>
    <!-- Compile the OpenDS LDAP SDK source files. -->
    <target name="compile"
            depends="init,checkjavaversion,dynamicconstants,generatemessages"
            description="Compile the OpenDS LDAP SDK source files.">
        <mkdir dir="${classes.dir}" />
        <mkdir dir="${build.lib.dir}" />
        <javac srcdir="${src.dir}:${srcgen.dir}"
               destdir="${classes.dir}"
               debug="on"
               debuglevel="${build.debuglevel}"
               source="1.5"
               target="1.5"
               deprecation="true"
               fork="true"
               memoryInitialSize="${MEM}"
               memoryMaximumSize="${MEM}">
            <compilerarg value="-Xlint:all" />
            <classpath>
                <fileset dir="${lib.dir}">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${build.dir}/build-tools">
                    <include name="build-tools.jar" />
                </fileset>
                <fileset dir="${build.lib.dir}">
                    <include name="*.jar" />
                </fileset>
            </classpath>
        </javac>
        <copy todir="${classes.dir}">
            <fileset dir="${src.dir}" includes="**/*.properties" />
            <fileset dir="${srcgen.dir}" includes="**/*.properties" />
        </copy>
    </target>
    <!-- Populate the OpenDS LDAP SDK package, but don't zip it up. -->
    <target name="prepackage" depends="clean,compile">
        <property name="pdir"
                  location="${package.dir}/${SHORT_NAME}-${VERSION_NUMBER_STRING}" />
        <mkdir dir="${pdir}" />
        <mkdir dir="${pdir}/bat" />
        <mkdir dir="${pdir}/bin" />
        <mkdir dir="${pdir}/legal-notices" />
        <mkdir dir="${pdir}/lib" />
        <jar jarfile="${pdir}/lib/${SHORT_NAME}.jar"
             basedir="${classes.dir}"
             excludes="**/*_fr.properties,**/*_ja.properties,**/*_de.properties,**/*_es.properties,**/*_zh_TW.properties,**/*_zh_CN.properties,**/*_ko.properties"
             compress="true"
             index="true" />
        <jar jarfile="${pdir}/lib/${SHORT_NAME}_fr.jar"
             basedir="${classes.dir}"
             includes="**/*_fr.properties"
             compress="true"
             index="true" />
        <jar jarfile="${pdir}/lib/${SHORT_NAME}_ja.jar"
             basedir="${classes.dir}"
             includes="**/*_ja.properties"
             compress="true"
             index="true" />
        <jar jarfile="${pdir}/lib/${SHORT_NAME}_de.jar"
             basedir="${classes.dir}"
             includes="**/*_de.properties"
             compress="true"
             index="true" />
        <jar jarfile="${pdir}/lib/${SHORT_NAME}_es.jar"
             basedir="${classes.dir}"
             includes="**/*_es.properties"
             compress="true"
             index="true" />
        <jar jarfile="${pdir}/lib/${SHORT_NAME}_ko.jar"
             basedir="${classes.dir}"
             includes="**/*_ko.properties"
             compress="true"
             index="true" />
        <jar jarfile="${pdir}/lib/${SHORT_NAME}_zh_CN.jar"
             basedir="${classes.dir}"
             includes="**/*_zh_CN.properties"
             compress="true"
             index="true" />
        <jar jarfile="${pdir}/lib/${SHORT_NAME}_zh_TW.jar"
             basedir="${classes.dir}"
             includes="**/*_zh_TW.properties"
             compress="true"
             index="true" />
        <copy todir="${pdir}/lib">
            <fileset file="${lib.dir}/*.jar" />
        </copy>
        <copy todir="${pdir}/lib">
            <fileset file="${lib.dir}/*.exe" />
        </copy>
        <fixcrlf srcDir="${scripts.dir}"
                 destDir="${pdir}/bin"
                 excludes="*.bat,_client-script.sh,_script-util.sh"
                 eol="lf" />
        <fixcrlf srcDir="${scripts.dir}"
                 destDir="${pdir}/lib"
                 includes="_client-script.sh,_script-util.sh"
                 eol="lf" />
        <fixcrlf srcDir="${scripts.dir}"
                 destDir="${pdir}/bat"
                 excludes="_client-script.bat,_script-util.bat,setcp.bat"
                 includes="*.bat"
                 eol="crlf" />
        <fixcrlf srcDir="${scripts.dir}"
                 destDir="${pdir}/lib"
                 includes="_client-script.bat,_script-util.bat,setcp.bat"
                 eol="crlf" />
        <copy todir="${pdir}/legal-notices">
            <fileset dir="${resource.dir}/legal-notices" />
        </copy>
        <copy todir="${pdir}">
            <fileset file="${resource.dir}/opends_logo.png" />
        </copy>
        <chmod perm="755">
            <fileset dir="${pdir}/bin">
            </fileset>
        </chmod>
        <chmod file="${pdir}/lib/_client-script.sh" perm="755" />
        <chmod file="${pdir}/lib/_script-util.sh" perm="755" />
    </target>
    <!-- Generate JavaDoc documentation from the source files -->
    <target name="javadoc" description="Generate JavaDoc documentation.">
        <mkdir dir="${javadoc.dir}" />
        <javadoc destdir="${javadoc.dir}"
                 source="1.5"
                 additionalparam="-quiet"
                 linksource="yes"
                 windowtitle="${PRODUCT_NAME} API Documentation"
                 maxmemory="${MEM}">
            <classpath>
                <fileset dir="${lib.dir}">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${build.dir}/build-tools">
                    <include name="*.jar" />
                </fileset>
                <dirset dir="${classes.dir}" />
            </classpath>
            <packageset dir="${src.dir}" />
        </javadoc>
    </target>
    <!-- Internal target to prepare to generate a code coverage report. -->
    <target name="coverage">
        <property name="coverage.enabled" value="true" />
        <mkdir dir="${coverage.dir}" />
        <mkdir dir="${coverage.data.dir}" />
        <mkdir dir="${coverage.instr.dir}" />
        <mkdir dir="${coverage.report.dir}" />
        <path id="run.classpath">
            <pathelement location="${classes.dir}" />
        </path>
    </target>
    <!-- Prepare to execute the OpenDS LDAP SDK TestNG unit tests. -->
    <target name="test.OpenDS.package.required" depends="dynamicconstants">
        <condition property="test.OpenDS.package.required">
            <available file="${package.dir}/${SHORT_NAME}-${VERSION_NUMBER_STRING}.zip" />
        </condition>
    </target>
    <target name="testinit-package"
            depends="test.OpenDS.package.required"
            unless="test.OpenDS.package.required">
        <echo message="Performing full rebuild (no OpenDS zip package found)" />
        <antcall target="package" />
    </target>
    <target name="testinit-recompile"
            depends="test.OpenDS.package.required"
            if="test.OpenDS.package.required">
        <echo message="Performing partial rebuild (OpenDS zip package found)" />
        <mkdir dir="${classes.dir}" />
        <javac srcdir="${src.dir}:${srcgen.dir}"
               destdir="${classes.dir}"
               debug="on"
               debuglevel="${build.debuglevel}"
               source="1.5"
               target="1.5"
               deprecation="true"
               fork="true"
               memoryInitialSize="${MEM}"
               memoryMaximumSize="${MEM}">
            <compilerarg value="-Xlint:all" />
            <classpath>
                <fileset dir="${lib.dir}">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${build.dir}/build-tools">
                    <include name="build-tools.jar" />
                </fileset>
                <fileset dir="${build.lib.dir}">
                    <include name="*.jar" />
                </fileset>
            </classpath>
        </javac>
        <copy todir="${classes.dir}">
            <fileset dir="${src.dir}" includes="**/*.properties" />
            <fileset dir="${srcgen.dir}" includes="**/*.properties" />
        </copy>
    </target>
    <target name="testinit" depends="testinit-package,testinit-recompile">
        <!-- If we are to perform coverage tests, then set that up. -->
        <path id="emma.lib">
            <pathelement location="${emma.dir}/emma.jar" />
            <pathelement location="${emma.dir}/emma_ant.jar" />
        </path>
        <taskdef resource="emma_ant.properties" classpathref="emma.lib" />
        <emma enabled="${coverage.enabled}">
            <instr instrpathref="run.classpath"
                   destdir="${coverage.instr.dir}"
                   metadatafile="${coverage.data.dir}/metadata.emma"
                   merge="true" />
        </emma>
        <!-- Compile the test cases -->
        <mkdir dir="${unittest.classes.dir}" />
        <javac srcdir="${unittest.testng.src.dir}"
               destdir="${unittest.classes.dir}"
               debug="on"
               debuglevel="${build.debuglevel}"
               source="1.5"
               target="1.5"
               deprecation="true"
               fork="true"
               memoryInitialSize="${MEM}"
               memoryMaximumSize="${MEM}">
            <compilerarg value="-Xlint:all" />
            <classpath>
                <fileset dir="${lib.dir}">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${testng.lib.dir}">
                    <include name="*.jar" />
                </fileset>
                <path refid="run.classpath" />
            </classpath>
        </javac>
        <copy todir="${unittest.classes.dir}">
            <fileset dir="${unittest.testng.src.dir}"
                     includes="**/*.properties" />
        </copy>
        <!-- Prep the TestNG XML file -->
        <condition property="test.groups" value="exclude=slow">
            <not>
                <or>
                    <isset property="test.groups" />
                    <isset property="test.packages" />
                    <isset property="test.classes" />
                    <isset property="test.methods" />
                </or>
            </not>
        </condition>
        <!-- do not run tests dependent upon creation of the .zip file -->
        <condition property="test.packages"
                   value="org.opends.sdk.*,com.sun.opends.sdk.*">
            <and>
                <not>
                    <or>
                        <isset property="test.packages" />
                        <isset property="test.classes" />
                        <isset property="test.methods" />
                    </or>
                </not>
                <not>
                    <equals arg1="${package.built}" arg2="true" />
                </not>
            </and>
        </condition>
        <!-- run tests dependent upon creation of the .zip file -->
        <condition property="test.packages"
                   value="org.opends.sdk.*,com.sun.opends.sdk.*">
            <and>
                <not>
                    <or>
                        <isset property="test.packages" />
                        <isset property="test.classes" />
                        <isset property="test.methods" />
                    </or>
                </not>
                <equals arg1="${package.built}" arg2="true" />
            </and>
        </condition>
        <condition property="test.classes" value="">
            <not>
                <or>
                    <isset property="test.classes" />
                    <isset property="test.methods" />
                </or>
            </not>
        </condition>
        <condition property="test.methods" value="">
            <not>
                <or>
                    <isset property="test.methods" />
                </or>
            </not>
        </condition>
        <mkdir dir="${unittest.resource.dir}" />
        <typedef name="preptestng"
                 classname="org.opends.build.tools.PrepTestNG"
                 classpath="${build.dir}/build-tools/build-tools.jar" />
        <preptestng file="${testng.dir}/testng.xml"
                    tofile="${unittest.resource.dir}/testng.xml"
                    grouplist="${test.groups}"
                    packagelist="${test.packages}"
                    classList="${test.classes}"
                    methodList="${test.methods}" />
        <antcall target="testinit.checkFailedTestsOnly" />
    </target>
    <!-- If we were asked to run only the tests that failed,
      then we overwrite the testng.xml that we just generated
      with testng-failed.xml, which TestNG generated. -->
    <target name="testinit.checkFailedTestsOnly" if="test.failures">
        <!-- Ensure that some of the tests failed last time. -->
        <available property="testng-failed.xml.exists"
                   file="${unittest.report.dir}/testng-failed.xml" />
        <fail message="No unit tests failed in the previous run."
              unless="testng-failed.xml.exists" />
        <!-- We replace the 'Failed suite [OpenDS]' with 'OpenDS' so we
         don't end up with 'Failed suite [Failed suite [OpenDS]]]' etc. -->
        <replace file="${unittest.report.dir}/testng-failed.xml"
                 token="Failed suite [OpenDS]"
                 value="OpenDS" />
        <replace file="${unittest.report.dir}/testng-failed.xml"
                 token="default(failed)"
                 value="default" />
        <copy file="${unittest.report.dir}/testng-failed.xml"
              tofile="${unittest.resource.dir}/testng.xml"
              overwrite="true" />
        <echo message="Will run the failed unit tests only" />
    </target>
    <!-- Generate coverage diff report -->
    <target name="coveragediff">
        <condition property="test.diff.srcpath" value="">
            <not>
                <isset property="test.diff.srcpath" />
            </not>
        </condition>
        <condition property="test.diff.enabled" value="true">
            <not>
                <isset property="test.diff.disable" />
            </not>
        </condition>
        <condition property="test.diff.verbose" value="false">
            <not>
                <isset property="test.diff.verbose" />
            </not>
        </condition>
        <condition property="test.diff.enabled" value="false">
            <isset property="test.diff.disable" />
        </condition>
        <!-- The SVN revision to perform the diff against when calculating
         the coverage diff.  It can be a revision number, a timestamp,
         or a revision keyword (BASE, COMMITTED, and PREV make the
         most sense).  The primary use case for this setting is to do
         a coverage diff against the previous revision when there are
         no changes in the working copy.  It defaults to BASE.  -->
        <condition property="test.diff.from.revision" value="BASE">
            <not>
                <isset property="test.diff.from.revision" />
            </not>
        </condition>
        <mkdir dir="${cvgdiff.report.dir}" />
        <taskdef name="coveragediff"
                 classname="org.opends.build.tools.CoverageDiff">
            <classpath>
                <fileset dir="${build.dir}/build-tools">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${emma.dir}">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${svnkit.dir}">
                    <include name="*.jar" />
                </fileset>
            </classpath>
        </taskdef>
        <coveragediff emmadatapath="${coverage.data.dir}"
                      outputpath="${cvgdiff.report.dir}"
                      diffpath="${test.diff.srcpath}"
                      enabled="${test.diff.enabled}"
                      verbose="${test.diff.verbose}"
                      fromrevision="${test.diff.from.revision}" />
    </target>
    <!-- Execute the OpenDS LDAP SDK TestNG unit tests in text mode. -->
    <target name="enableTestNGAssertions">
        <property name="TESTASSERT" value="true" />
    </target>
    <!-- Execute all of the OpenDS LDAP SDK TestNG unit tests in text mode. -->
    <target name="testall"
            depends="enableTestNGAssertions,prepdefaultalltest,testinit,runtests"
            description="Run all of the TestNG tests (including 'slow' ones) with assertions enabled.  See 'testwithcoverage' for properties you can set.">
    </target>
    <!-- Execute the OpenDS LDAP SDK TestNG unit tests in text mode. -->
    <target name="test"
            depends="testinit,runtests"
            description="Execute the OpenDS LDAP SDK TestNG unit tests in text mode.  Set '-Dorg.opends.test.suppressOutput=false' to see the output from the unit tests.  Set '-Dtest.failures=true' to run only the tests that failed previously.">
    </target>
    <!-- Execute the OpenDS LDAP SDK TestNG unit tests in text mode with a coverage report. -->
    <target name="testwithcoverage"
            depends="coverage,test,coveragediff"
            description="Execute the OpenDS LDAP SDK TestNG unit tests in text mode with a coverage report.  Use -Dtest.packages, -Dtest.classes, or -Dtest.methods to control which unit tests are run.  Use -Dtest.diff.srcpath to control which src files show up in the coverage diff.  See the 'test' package for other properties you can set.">
    </target>
    <!-- Execute the OpenDS LDAP SDK TestNG unit tests in text mode with a coverage report and slow tests. -->
    <target name="testallwithcoverage"
            depends="coverage,testall,coveragediff"
            description="The same as 'testwithcoverage' except 'testall' is run instead of 'test'.">
    </target>
    <target name="testhelp" unless="disable.test.help">
        <echo message="About to run the unit tests.  Ant options to control the tests:" />
        <echo message="" />
        <echo message="  -Dorg.opends.test.suppressOutput=false" />
        <echo message="      writes the unit test output to the screen" />
        <echo message="" />
        <echo message="  -Dtest.progress=&quot;default,memory&quot;" />
        <echo message="      Unless explicity disabled using -Dtest.progress=none, the" />
        <echo message="      tests provide continuous progress of the tests that are being" />
        <echo message="      run.  The specific options to set for this property are" />
        <echo message="" />
        <echo message="        none:         no progress output" />
        <echo message="        all:          enables all progress (slows tests)" />
        <echo message="        default:      same as &quot;time,count,restarts&quot;" />
        <echo message="        time:         timing information for the tests" />
        <echo message="        count:        # of run test classes, methods, and invocations" />
        <echo message="        memory:       running total of memory usage (slows tests)" />
        <echo message="        threadcount:  running total of active threads" />
        <echo message="        threadchange: +/- changes for active threads between tests" />
        <echo message="        restarts:     running total of in-core server restarts" />
        <echo message="" />
        <echo message="      To specifying multiple values, nseparate them with ',' and" />
        <echo message="      quote the entire value.  For instance, when you want the default" />
        <echo message="      output plus more, do -Dtest.progress=&quot;default,memory&quot;." />
        <echo message="" />
        <echo message="      Enabling memory progress slows down the tests significantly." />
        <echo message="      Include the otherwise undocumented property &quot;gcs&quot; to see how" />
        <echo message="      much time each progress line spends doing garbage collections" />
        <echo message="      to get an accurate measure of memory usage." />
        <echo message="" />
        <echo message="      A new line of progress is written when TestNG completes running tests" />
        <echo message="      for a class.  This progress is reported immediately before TestNG" />
        <echo message="      starts to run the first test of the next class.  All @BeforeClass" />
        <echo message="      and @BeforeMethod methods will have been invoked for the next" />
        <echo message="      class as well as the @DataProvider (if any) for the first test method." />
        <echo message="      Keep this in mind when debugging memory usage, running times, and" />
        <echo message="      thread creation." />
        <echo message="" />
        <echo message="  -Dtestng.verbosity0to5=5" />
        <echo message="      for example has TestNG dump the maximum amount of debugging" />
        <echo message="      output to stdout.  This output is useful to check the order" />
        <echo message="      in which test methods are invoked.  Valid values are integer" />
        <echo message="      values from 0 (no output) to 5 (maximum output).  Since this" />
        <echo message="      implicitly sets -Dorg.opends.test.suppressOutput=false," />
        <echo message="      other stderr/stdout output generated by the unit tests will" />
        <echo message="      also be displayed." />
        <echo message="" />
        <echo message="  -Dorg.opends.test.pauseOnFailure=true" />
        <echo message="      pauses the test suite whenever a failure occurs allowing you to inspect" />
        <echo message="      the server more closely in the failure state" />
        <echo message="" />
        <echo message="  -Dorg.opends.test.copyClassesToTestPackage=true" />
        <echo message="      copies the classes into the test server root.  This enables you to run" />
        <echo message="      the server tools on the test server.  It can slow down the test startup" />
        <echo message="      so the files are not copied by default." />
        <echo message="" />
        <echo message="  -Dtest.failed=true" />
        <echo message="      runs only the tests that failed last time" />
        <echo message="" />
        <echo message="  -Dtest.diff.srcpath=src/org/opends/sdk/requests" />
        <echo message="      for example includes only the classes in" />
        <echo message="      src/org/opends/sdk/requests in the coveragediff report." />
        <echo message="      To list multiple directories or files, separate them with" />
        <echo message="      a space as you would an argument list to 'svn diff' and quote" />
        <echo message="      the whole value." />
        <echo message="" />
        <echo message="  -Dtest.groups=exclude=slow" />
        <echo message="      for example excludes the slow tests.  Each value is expected" />
        <echo message="      group inclusion/exclusion clause which consists of either 'include'" />
        <echo message="      or 'exclude' followed by the '=' character and then a group name." />
        <echo message="      For multiple group clauses, separate them with a ',' and " />
        <echo message="      quote the entire value. Debug logging is disabled." />
        <echo message="" />
        <echo message="  -Dtest.packages=org.opends.sdk.requests" />
        <echo message="      for example runs only the tests in the requests package" />
        <echo message="      For multiple packages, separate them with a ',' and " />
        <echo message="      quote the entire value. Debug logging is disabled." />
        <echo message="" />
        <echo message="  -Dtest.classes=org.opends.sdk.TestDN" />
        <echo message="      for example only runs the TestDN class" />
        <echo message="      For multiple classes, separate them with a ',' and " />
        <echo message="      quote the entire value. Debug logging is disabled." />
        <echo message="" />
        <echo message="  -Dtest.methods=org.opends.sdk.TestDN.testGetRDN" />
        <echo message="      for example only runs the testGetRDN method" />
        <echo message="      For multiple methods within the same class, append additional" />
        <echo message="      method names to the end separating them with a ',' and " />
        <echo message="      quote the entire value. Debug logging is disabled." />
        <echo message="" />
        <echo message="  -Dtest.remote.debug.port=5005" />
        <echo message="      for example will allow you to remotely debug the unit tests from" />
        <echo message="      the debugger of your choice by pointing it at port 5005." />
        <echo message="      The unit tests will not start to run until the debugger is attached" />
        <echo message="      unless you also specify -Dtest.remote.debug.suspend=n." />
        <echo message="" />
    </target>
    <!-- Internal target to execute the OpenDS LDAP SDK TestNG unit tests in text mode after everything has been initialized. -->
    <target name="runtests">
        <antcall target="testhelp" />
        <mkdir dir="${unittest.report.dir}" />
        <taskdef resource="testngtasks">
            <classpath>
                <fileset dir="${testng.lib.dir}">
                    <include name="*.jar" />
                </fileset>
            </classpath>
        </taskdef>
        <!-- This sets TESTASSERT to false if and only if it's not already set. -->
        <condition property="TESTASSERT" value="false">
            <not>
                <isset property="TESTASSERT" />
            </not>
        </condition>
        <!-- This sets testng.verbosity if it's not already set. -->
        <condition property="testng.verbosity0to5" value="0">
            <not>
                <isset property="testng.verbosity0to5" />
            </not>
        </condition>
        <!-- This sets unsuppresses the test output if and only if testng
         is configured to dump debug output. -->
        <condition property="org.opends.test.suppressOutput" value="false">
            <not>
                <equals arg1="${testng.verbosity0to5}" arg2="0" />
            </not>
        </condition>
        <!-- This sets org.opends.test.suppressOutput if and only if it's not
         already set. -->
        <condition property="org.opends.test.suppressOutput" value="true">
            <not>
                <isset property="org.opends.test.suppressOutput" />
            </not>
        </condition>
        <!-- This sets org.opends.test.pauseOnFailure if and only if it's not
         already set. -->
        <condition property="org.opends.test.pauseOnFailure" value="false">
            <not>
                <isset property="org.opends.test.pauseOnFailure" />
            </not>
        </condition>
        <condition property="org.opends.test.copyClassesToTestPackage"
                   value="false">
            <not>
                <isset property="org.opends.test.copyClassesToTestPackage" />
            </not>
        </condition>
        <condition property="test.progress" value="">
            <not>
                <isset property="test.progress" />
            </not>
        </condition>
        <!-- If the debug port was set, we pass these options into the <testng> target below:
           -Xdebug
           -Xnoagent
           -Djava.compiler=NONE
           -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005
     -->
        <condition property="test.remote.debug.suspend" value="y">
            <not>
                <isset property="test.remote.debug.suspend" />
            </not>
        </condition>
        <condition property="jvm.debug.arg1"
                   value="-Xdebug"
                   else="-Dopends.bogus.debug.arg1">
            <isset property="test.remote.debug.port" />
        </condition>
        <condition property="jvm.debug.arg2"
                   value="-Xnoagent"
                   else="-Dopends.bogus.debug.arg2">
            <isset property="test.remote.debug.port" />
        </condition>
        <condition property="jvm.debug.arg3"
                   value="-Djava.compiler=NONE"
                   else="-Dopends.bogus.debug.arg3">
            <isset property="test.remote.debug.port" />
        </condition>
        <condition property="jvm.debug.arg4"
                   value="-Xrunjdwp:transport=dt_socket,server=y,suspend=${test.remote.debug.suspend},address=${test.remote.debug.port}"
                   else="-Dopends.bogus.debug.arg4">
            <isset property="test.remote.debug.port" />
        </condition>
        <!-- Cleanout the old reports.  Otherwise, the old testng-failed.xml
         will hang around even if all of the tests pass. -->
        <delete>
            <fileset dir="${unittest.report.dir}" includes="*" />
        </delete>
        <!-- Our testng listener will remove this file if all of the
         tests passed.  This allows us to generate the coverage
         report even if the tests failed and still fail the build. -->
        <touch file="${unittest.report.dir}/.tests-failed-marker" />
        <testng outputdir="${unittest.report.dir}"
                haltonfailure="false"
                verbose="${testng.verbosity0to5}"
                enableAssert="${TESTASSERT}"
                listeners="org.opends.server.TestListener org.testng.reporters.FailedReporter"
                useDefaultListeners="false"
                suiteRunnerClass="org.opends.server.SuiteRunner">
            <classpath>
                <pathelement location="${coverage.instr.dir}" />
                <pathelement location="${classes.dir}" />
                <pathelement location="${unittest.classes.dir}" />
                <pathelement location="${resource.dir}" />
                <path refid="run.classpath" />
                <path refid="emma.lib" />
                <fileset dir="${lib.dir}">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${testng.lib.dir}">
                    <include name="*.jar" />
                </fileset>
            </classpath>
            <jvmarg value="-Demma.coverage.out.file=${coverage.data.dir}/unit.emma" />
            <jvmarg value="-Demma.coverage.out.merge=false" />
            <jvmarg value="-Dorg.opends.test.suppressOutput=${org.opends.test.suppressOutput}" />
            <jvmarg value="-Dorg.opends.test.pauseOnFailure=${org.opends.test.pauseOnFailure}" />
            <jvmarg value="-Dorg.opends.test.copyClassesToTestPackage=${org.opends.test.copyClassesToTestPackage}" />
            <jvmarg value="-Dtest.progress=${test.progress}" />
            <jvmarg value="-Xms${MEM}" />
            <jvmarg value="-Xmx${MEM}" />
            <jvmarg value="${jvm.debug.arg1}" />
            <jvmarg value="${jvm.debug.arg2}" />
            <jvmarg value="${jvm.debug.arg3}" />
            <jvmarg value="${jvm.debug.arg4}" />
            <xmlfileset dir="${unittest.resource.dir}" includes="testng.xml" />
        </testng>
        <!-- Our testng listener will create this file if any of the
         tests failed.  This allows us to generate the coverage
         report even if the tests failed. -->
        <available property="testng.tests.failed"
                   file="${unittest.report.dir}/.tests-failed-marker" />
        <!-- Delete all of the report suite sub-directories since we only
         have a single suite. -->
        <delete dir="${unittest.report.dir}/${SHORT_NAME}" />
        <emma enabled="${coverage.enabled}">
            <report sourcepath="${src.dir}">
                <fileset dir="${coverage.data.dir}">
                    <include name="unit.emma" />
                    <include name="metadata.emma" />
                </fileset>
                <txt outfile="${coverage.report.dir}/coverage.txt" />
                <html outfile="${coverage.report.dir}/index.html" />
                <xml outfile="${coverage.report.dir}/coverage.xml" />
            </report>
        </emma>
        <!-- We delay failing until after the coverage report is generated. -->
        <fail message="The unit tests failed." if="testng.tests.failed" />
    </target>
    <target name="prepdefaultalltest">
        <condition property="test.groups" value="">
            <not>
                <or>
                    <isset property="test.groups" />
                    <isset property="test.packages" />
                    <isset property="test.classes" />
                    <isset property="test.methods" />
                </or>
            </not>
        </condition>
    </target>
    <target name="testreport" depends="test">
        <junitreport todir="${unittest.report.dir}">
            <fileset dir="${unittest.report.dir}">
                <include name="*.xml" />
            </fileset>
            <report format="noframes" todir="${unittest.report.dir}" />
        </junitreport>
    </target>
    <target name="buildtools" depends="init">
        <mkdir dir="${buildtools.classes.dir}" />
        <copy file="${resource.dir}/Messages.java.stub"
              todir="${buildtools.classes.dir}/org/opends/build/tools/resource" />
        <!--
        <javac srcdir="${srcgen.dir}"
               destdir="${buildtools.classes.dir}"
               debug="on"
               debuglevel="${build.debuglevel}"
               source="1.5"
               target="1.5"
               deprecation="true"
               fork="true"
               memoryInitialSize="${MEM}"
               memoryMaximumSize="${MEM}" />
        -->
        <javac srcdir="${buildtools.src.dir}"
               destdir="${buildtools.classes.dir}"
               debug="on"
               debuglevel="${build.debuglevel}"
               source="1.5"
               target="1.5"
               deprecation="true"
               fork="true"
               memoryInitialSize="${MEM}"
               memoryMaximumSize="${MEM}">
            <compilerarg value="-Xlint:all" />
            <classpath>
                <fileset dir="${ant.lib.dir}">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${emma.dir}">
                    <include name="*.jar" />
                </fileset>
                <fileset dir="${svnkit.dir}">
                    <include name="*.jar" />
                </fileset>
                <path refid="run.classpath" />
            </classpath>
        </javac>
        <jar jarfile="${build.dir}/build-tools/build-tools.jar"
             basedir="${buildtools.classes.dir}"
             compress="true"
             index="true" />
    </target>
    <!-- Generate a src.zip file containing all the sdk source. -->
    <target name="srczip"
            description="Generate a src.zip file with all the sdk source.">
        <zip destfile="${build.dir}/src.zip">
            <zipfileset dir="${src.dir}"
                        excludes="**/.svn"
                        filemode="644"
                        dirmode="755" />
            <zipfileset dir="${srcgen.dir}"
                        excludes="**/.svn"
                        filemode="644"
                        dirmode="755" />
        </zip>
    </target>
</project>
sdk/resource/DynamicConstants.java.stubs
@@ -22,65 +22,60 @@
 * CDDL HEADER END
 *
 *
 *      Copyright 2006-2009 Sun Microsystems, Inc.
 *      Copyright 2009 Sun Microsystems, Inc.
 */
package org.opends.server.util;
package com.sun.opends.sdk.util;
/**
 * This file contains a number of constants that are used throughout the
 * Directory Server source.  It was dynamically generated as part of the
 * Directory Server build process and should not be edited directly.
 * ${PRODUCT_NAME} source.  It was dynamically generated as part of the
 * build process and should not be edited directly.
 */
@org.opends.server.types.PublicAPI(
     stability=org.opends.server.types.StabilityLevel.UNCOMMITTED,
     mayInstantiate=false,
     mayExtend=false,
     mayInvoke=true)
public final class DynamicConstants
{
  /**
   * The official full product name for the Directory Server.
   * The official full product name for the ${PRODUCT_NAME}.
   */
  public static String PRODUCT_NAME = "${PRODUCT_NAME}";
  /**
   * The short product name for the Directory Server.
   * The short product name for the ${PRODUCT_NAME}.
   */
  public static String SHORT_NAME = "${SHORT_NAME}";
  /**
   * The major version number for the Directory Server.
   * The major version number for the ${PRODUCT_NAME}.
   */
  public static int MAJOR_VERSION = ${MAJOR_VERSION};
  /**
   * The minor version number for the Directory Server.
   * The minor version number for the ${PRODUCT_NAME}.
   */
  public static int MINOR_VERSION = ${MINOR_VERSION};
  /**
   * The point version number for the Directory Server.
   * The point version number for the ${PRODUCT_NAME}.
   */
  public static int POINT_VERSION = ${POINT_VERSION};
  /**
   * The official build number for the Directory Server.
   * The official build number for the ${PRODUCT_NAME}.
   */
  public static int BUILD_NUMBER = ${BUILD_NUMBER};
  /**
   * The version qualifier string for the Directory Server.
   * The version qualifier string for the ${PRODUCT_NAME}.
   */
  public static String VERSION_QUALIFIER = "${VERSION_QUALIFIER}";
  /**
   * The set of bug IDs for fixes included in this build of the Directory
   * Server.
   * The set of bug IDs for fixes included in this
   * build of the ${PRODUCT_NAME}.
   */
  public static String FIX_IDS = "${FIX_IDS}";
  /**
   * The build ID for the generated build of the Directory Server.
   * The build ID for the generated build of the ${PRODUCT_NAME}.
   */
  public static String BUILD_ID = "${timestamp}";
@@ -115,7 +110,7 @@
  public static String BUILD_OS = "${os.name} ${os.version} ${os.arch}";
  /**
   * Indicates whether this is a debug build of the Directory Server that may
   * Indicates whether this is a debug build of the ${PRODUCT_NAME} that may
   * include additional debugging facilities not available in standard release
   * versions.
   */
@@ -145,18 +140,6 @@
      "${DOC_REFERENCE_WIKI}";
  /**
   * The documentation url.
   */
  public static String DOC_QUICK_REFERENCE_GUIDE =
      "${DOC_QUICK_REFERENCE_GUIDE}";
  /**
   * The administration guide.
   */
   public static String ADMINISTRATION_GUIDE_URL =
      "${ADMINISTRATION_GUIDE_URL}";
  /**
   * A string representation of the version number.
   */
  public static String VERSION_NUMBER_STRING =
@@ -174,135 +157,6 @@
  public static String RELEASE_VERSION_STRING =
       OPENDS_NUMBER_STRING;
  /**
   * Test if a specific class is provided to overwrite the BUILD definitions
   * By the release definitions provided by
   * org.opends.server.util.ReleaseDefinition
   */
  static {
     try {
        Class c;
        if (org.opends.server.util.SetupUtils.isWebStart())
        {
          Class<?> cS = Class.forName("org.opends.server.util.SetupUtils");
          java.net.URL[] urls = new java.net.URL[]
          {
            cS.getProtectionDomain().getCodeSource().getLocation()
          };
          ClassLoader webstartClassLoader = new java.net.URLClassLoader(urls);
          c = webstartClassLoader.loadClass(
              "org.opends.server.util.ReleaseDefinition");
        }
        else
        {
          c = Class.forName("org.opends.server.util.ReleaseDefinition");
        }
        Object obj = c.newInstance();
        try {
         PRODUCT_NAME = (String)c.getField("PRODUCT_NAME").get(obj);
        }
        catch (Exception ex) {}
        try {
         SHORT_NAME = (String)c.getField("SHORT_NAME").get(obj);
        }
        catch (Exception ex) {}
        try {
         MAJOR_VERSION = (Integer)c.getField("MAJOR_VERSION").get(obj);
        }
        catch (Exception ex) {}
        try {
         MINOR_VERSION = (Integer)c.getField("MINOR_VERSION").get(obj);
        }
        catch (Exception ex) {}
        try {
         POINT_VERSION = (Integer)c.getField("POINT_VERSION").get(obj);
        }
        catch (Exception ex) {}
        try {
         BUILD_NUMBER = (Integer)c.getField("BUILD_NUMBER").get(obj);
        }
        catch (Exception ex) {}
        try {
         VERSION_QUALIFIER = (String)c.getField("VERSION_QUALIFIER").get(obj);
        }
        catch (Exception ex) {}
        try {
         FIX_IDS = (String)c.getField("FIX_IDS").get(obj);
        }
        catch (Exception ex) {}
        try{
         BUILD_ID = (String)c.getField("BUILD_ID").get(obj);
        }
        catch (Exception ex) {}
        try{
         BUILD_USER = (String)c.getField("BUILD_USER").get(obj);
        }
        catch (Exception ex) {}
        try{
         REVISION_NUMBER = (Long)c.getField("REVISION_NUMBER").get(obj);
        }
        catch (Exception ex) {}
        try{
         BUILD_JAVA_VERSION = (String)c.getField("BUILD_JAVA_VERSION").get(obj);
        }
        catch (Exception ex) {}
        try{
         BUILD_JAVA_VENDOR = (String)c.getField("BUILD_JAVA_VENDOR").get(obj);
        }
        catch (Exception ex) {}
        try{
         BUILD_JVM_VERSION = (String)c.getField("BUILD_JVM_VERSION").get(obj);
        }
        catch (Exception ex) {}
        try{
         BUILD_JVM_VENDOR = (String)c.getField("BUILD_JVM_VENDOR").get(obj);
        }
        catch (Exception ex) {}
        try{
         BUILD_OS = (String)c.getField("BUILD_OS").get(obj);
        }
        catch (Exception ex) {}
        try{
         DEBUG_BUILD = (Boolean)c.getField("DEBUG_BUILD").get(obj);
        }
        catch (Exception ex) {}
        try{
         URL_REPOSITORY = (String)c.getField("URL_REPOSITORY").get(obj);
        }
        catch (Exception ex) {}
        try{
         DOC_REFERENCE_WIKI =
            (String)c.getField("DOC_REFERENCE_WIKI").get(obj);
        }
        catch(Exception ex) {}
        try{
         DOC_QUICK_REFERENCE_GUIDE =
            (String)c.getField("DOC_QUICK_REFERENCE_GUIDE").get(obj);
        }
        catch(Exception ex) {}
        try{
         ADMINISTRATION_GUIDE_URL =
           (String)c.getField("ADMINISTRATION_GUIDE_URL").get(obj);
        }
        catch(Exception ex) {}
        try{
         VERSION_NUMBER_STRING =
                 (String)c.getField("VERSION_NUMBER_STRING").get(obj);
        }
        catch (Exception ex) {}
        try{
         RELEASE_VERSION_STRING = VERSION_NUMBER_STRING
                 + " (OpenDS version = "
                 + OPENDS_NUMBER_STRING + ")" ;
        }
        catch (Exception ex) {}
      } catch (Exception ex) {
      }
  }
   /**
   * A compact version string for this product, suitable for use in path
   * names and similar cases.
sdk/resource/FindJavaHome.class
Binary files differ
sdk/resource/FindJavaHome.java
New file
@@ -0,0 +1,68 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2006-2008 Sun Microsystems, Inc.
 */
import java.io.*;
/**
 * This program provides a simple utility that determines the location of the
 * Java installation.  The output will be in a form suitable for use in a
 * JAVA_HOME environment variable.
 */
public class FindJavaHome
{
  public static void main(String[] args)
         throws Exception
  {
    String javaHome = System.getProperty("java.home");
    File javaHomeDir = new File(javaHome);
    if (! javaHomeDir.exists())
    {
      throw new Exception("System property java.home doesn't reference a " +
                          "real directory");
    }
    String javacPath = File.separator + "bin" + File.separator + "javac";
    File javacFile = new File(javaHome + javacPath);
    if (! javacFile.exists())
    {
      javacFile = new File(javaHomeDir.getParent() + javacPath);
      if (javacFile.exists())
      {
        javaHomeDir = new File(javaHomeDir.getParent());
      }
      else
      {
        throw new Exception("Unable to determine Java compiler location " +
                            "from java.home property value " + javaHome);
      }
    }
    System.out.println(javaHomeDir.getAbsolutePath());
  }
}
sdk/resource/Messages.java.stub
New file
@@ -0,0 +1,61 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2009 Sun Microsystems, Inc.
 */
package ${PACKAGE};
import com.sun.opends.sdk.util.MessageDescriptor;
/**
 * This file contains a number of constants that are used throughout the
 * OpenDS LDAP SDK source.  It was dynamically generated as part of the
 * OpenDS LDAP SDK build process and should not be edited directly.
 */
public final class ${CLASS_NAME} {
  /** Base property for resource bundle containing messages */
  private static final String BASE = "${BASE}";
  // Prevent instantiation.
  private ${CLASS_NAME}() {
    // Do nothing.
  }
  ${MESSAGES}
 /**
  * Returns the Class Loader to be used to get the ResourceBundle,
  * it returns <CODE>null</CODE> if the default ClassLoader is to be
  * used.
  * @return the Class Loader to be used to get the ResourceBundle,
  * it returns <CODE>null</CODE> if the default ClassLoader is to be
  * used.
  */
  private static ClassLoader getClassLoader()
  {
    return ${CLASS_NAME}.class.getClassLoader();
  }
}
sdk/resource/README
New file
@@ -0,0 +1,9 @@
OpenDS LDAP SDK
This archive contains the OpenDS LDAP SDK.  Complete documentation for
this product may be found online at https://OpenDS.dev.java.net/.
This product is made available under the Common Development and Distribution
License (CDDL).  The complete text for this license, and for alternate licenses
of included components, may be found in the legal-notices directory.
sdk/resource/bin/_client-script.bat
New file
@@ -0,0 +1,61 @@
@echo off
rem CDDL HEADER START
rem
rem The contents of this file are subject to the terms of the
rem Common Development and Distribution License, Version 1.0 only
rem (the "License").  You may not use this file except in compliance
rem with the License.
rem
rem You can obtain a copy of the license at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE
rem or https://OpenDS.dev.java.net/OpenDS.LICENSE.
rem See the License for the specific language governing permissions
rem and limitations under the License.
rem
rem When distributing Covered Code, include this CDDL HEADER in each
rem file and include the License file at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
rem add the following below this CDDL HEADER, with the fields enclosed
rem by brackets "[]" replaced with your own identifying information:
rem      Portions Copyright [yyyy] [name of copyright owner]
rem
rem CDDL HEADER END
rem
rem
rem      Copyright 2006-2009 Sun Microsystems, Inc.
rem This script is used to invoke various client-side processes.  It should not
rem be invoked directly by end users.
setlocal
for %%i in (%~sf0) do set DIR_HOME=%%~dPsi..
set INSTALL_ROOT=%DIR_HOME%
set INSTANCE_DIR=
for /f "delims=" %%a in (%INSTALL_ROOT%\instance.loc) do (
  set INSTANCE_DIR=%%a
)
set CUR_DIR=%~dp0
cd /d %INSTALL_ROOT%
cd /d %INSTANCE_DIR%
set INSTANCE_ROOT=%CD%
cd /d %CUR_DIR%
if "%OPENDS_INVOKE_CLASS%" == "" goto noInvokeClass
goto launchCommand
:noInvokeClass
echo Error:  OPENDS_INVOKE_CLASS environment variable is not set.
pause
goto end
:launchCommand
set SCRIPT_UTIL_CMD=set-full-environment
call "%INSTALL_ROOT%\lib\_script-util.bat" $*
if NOT %errorlevel% == 0 exit /B %errorlevel%
"%OPENDS_JAVA_BIN%" %OPENDS_JAVA_ARGS% %SCRIPT_NAME_ARG% %OPENDS_INVOKE_CLASS% %*
:end
sdk/resource/bin/_client-script.sh
New file
@@ -0,0 +1,69 @@
#!/bin/sh
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
#      Copyright 2006-2008 Sun Microsystems, Inc.
# This script is used to invoke various client-side processes.  It should not
# be invoked directly by end users.
if test -z "${OPENDS_INVOKE_CLASS}"
then
  echo "ERROR:  OPENDS_INVOKE_CLASS environment variable is not set."
  exit 1
fi
# Capture the current working directory so that we can change to it later.
# Then capture the location of this script and the Directory Server install
# root so that we can use them to create appropriate paths.
WORKING_DIR=`pwd`
cd "`dirname "${0}"`"
SCRIPT_DIR=`pwd`
cd ..
INSTALL_ROOT=`pwd`
export INSTALL_ROOT
cd "${WORKING_DIR}"
# Set environment variables
SCRIPT_UTIL_CMD=set-full-environment
export SCRIPT_UTIL_CMD
if [ -z "$NO_CHECK" ]
then
  NO_CHECK=1
  export NO_CHECK
fi
.  "${INSTALL_ROOT}/lib/_script-util.sh"
RETURN_CODE=$?
if test ${RETURN_CODE} -ne 0
then
  exit ${RETURN_CODE}
fi
# Launch the appropriate client utility.
"${OPENDS_JAVA_BIN}" ${OPENDS_JAVA_ARGS} ${SCRIPT_NAME_ARG} "${OPENDS_INVOKE_CLASS}" "${@}"
sdk/resource/bin/_script-util.bat
New file
@@ -0,0 +1,220 @@
@echo off
rem CDDL HEADER START
rem
rem The contents of this file are subject to the terms of the
rem Common Development and Distribution License, Version 1.0 only
rem (the "License").  You may not use this file except in compliance
rem with the License.
rem
rem You can obtain a copy of the license at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE
rem or https://OpenDS.dev.java.net/OpenDS.LICENSE.
rem See the License for the specific language governing permissions
rem and limitations under the License.
rem
rem When distributing Covered Code, include this CDDL HEADER in each
rem file and include the License file at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
rem add the following below this CDDL HEADER, with the fields enclosed
rem by brackets "[]" replaced with your own identifying information:
rem      Portions Copyright [yyyy] [name of copyright owner]
rem
rem CDDL HEADER END
rem
rem
rem      Copyright 2008-2009 Sun Microsystems, Inc.
set SET_JAVA_HOME_AND_ARGS_DONE=false
set SET_ENVIRONMENT_VARS_DONE=false
set SET_CLASSPATH_DONE=false
if "%INSTALL_ROOT%" == "" goto setInstanceRoot
:scriptBegin
if "%SCRIPT_UTIL_CMD%" == "set-full-environment-and-test-java" goto setFullEnvironmentAndTestJava
if "%SCRIPT_UTIL_CMD%" == "set-full-environment" goto setFullEnvironment
if "%SCRIPT_UTIL_CMD%" == "set-java-home-and-args" goto setJavaHomeAndArgs
if "%SCRIPT_UTIL_CMD%" == "set_environment_vars" goto setEnvironmentVars
if "%SCRIPT_UTIL_CMD%" == "test-java" goto testJava
if "%SCRIPT_UTIL_CMD%" == "set-classpath" goto setClassPath
goto prepareCheck
:setInstanceRoot
setlocal
for %%i in (%~sf0) do set DIR_HOME=%%~dPsi..
set INSTALL_ROOT=%DIR_HOME%
set INSTANCE_DIR=
for /f "delims=" %%a in (%INSTALL_ROOT%\instance.loc) do (
  set INSTANCE_DIR=%%a
)
set CUR_DIR=%~dp0
cd /d %INSTALL_ROOT%
cd /d %INSTANCE_DIR%
set INSTANCE_ROOT=%CD%
cd /d %CUR_DIR%
goto scriptBegin
:setClassPath
if "%SET_CLASSPATH_DONE%" == "true" goto prepareCheck
FOR %%x in ("%INSTALL_ROOT%\lib\*.jar") DO call "%INSTALL_ROOT%\lib\setcp.bat" %%x
if "%INSTALL_ROOT%" == "%INSTANCE_ROOT%"goto setClassPathDone
FOR %%x in ("%INSTANCE_ROOT%\lib\*.jar") DO call "%INSTANCE_ROOT%\lib\setcp.bat" %%x
FOR %%x in ("%INSTALL_ROOT%\resources\*.jar") DO call "%INSTALL_ROOT%\lib\setcp.bat" %%x
set CLASSPATH=%INSTANCE_ROOT%\classes;%CLASSPATH%
:setClassPathDone
set SET_CLASSPATH_DONE=true
goto scriptBegin
:setFullEnvironment
if "%SET_JAVA_HOME_AND_ARGS_DONE%" == "false" goto setJavaHomeAndArgs
if "%SET_CLASSPATH_DONE%" == "false" goto setClassPath
if "%SET_ENVIRONMENT_VARS_DONE%" == "false" goto setEnvironmentVars
goto prepareCheck
:setFullEnvironmentAndTestJava
if "%SET_JAVA_HOME_AND_ARGS_DONE%" == "false" goto setJavaHomeAndArgs
if "%SET_CLASSPATH_DONE%" == "false" goto setClassPath
if "%SET_ENVIRONMENT_VARS_DONE%" == "false" goto setEnvironmentVars
goto testJava
:setJavaHomeAndArgs
if "%SET_JAVA_HOME_AND_ARGS_DONE%" == "true" goto prepareCheck
if not exist "%INSTANCE_ROOT%\lib\set-java-home.bat" goto checkEnvJavaArgs
call "%INSTANCE_ROOT%\lib\set-java-home.bat"
if "%OPENDS_JAVA_BIN%" == "" goto checkEnvJavaArgs
:endJavaHomeAndArgs
set SET_JAVA_HOME_AND_ARGS_DONE=true
goto scriptBegin
:checkEnvJavaArgs
if "%OPENDS_JAVA_BIN%" == "" goto checkOpenDSJavaHome
if not exist "%OPENDS_JAVA_BIN%" goto checkOpenDSJavaHome
goto endJavaHomeAndArgs
:checkOpenDSJavaHome
if "%OPENDS_JAVA_HOME%" == "" goto checkJavaBin
if not exist "%OPENDS_JAVA_HOME%\bin\java.exe" goto checkJavaBin
set OPENDS_JAVA_BIN=%OPENDS_JAVA_HOME%\bin\java.exe
goto endJavaHomeAndArgs
:checkJavaBin
if "%JAVA_BIN%" == "" goto checkJavaHome
if not exist "%JAVA_BIN%" goto checkJavaHome
set OPENDS_JAVA_BIN=%JAVA_BIN%
goto endJavaHomeAndArgs
:checkJavaHome
if "%JAVA_HOME%" == "" goto checkJavaPath
if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaFound
set OPENDS_JAVA_BIN=%JAVA_HOME%\bin\java.exe
goto endJavaHomeAndArgs
:checkJavaPath
java.exe -version > NUL 2>&1
if not %errorlevel% == 0 goto noJavaFound
set OPENDS_JAVA_BIN=java.exe
goto endJavaHomeAndArgs
:noJavaFound
echo ERROR:  Could not find a valid Java binary to be used.
echo You must specify the path to a valid Java 5.0 or higher version.
echo The procedure to follow is:
echo 1. Delete the file %INSTANCE_ROOT%\lib\set-java-home.bat if it exists.
echo 2. Set the environment variable OPENDS_JAVA_HOME to the root of a valid
echo Java 5.0 installation.
echo If you want to have specific Java settings for each command line you must
echo follow the steps 3 and 4.
echo 3. Edit the properties file specifying the Java binary and the Java arguments
echo for each command line.  The Java properties file is located in:
echo %INSTANCE_ROOT%\config\java.properties.
echo 4. Run the command-line %INSTALL_ROOT%\bat\dsjavaproperties.bat
pause
exit /B 1
:setEnvironmentVars
if %SET_ENVIRONMENT_VARS_DONE% == "true" goto prepareCheck
set PATH=%SystemRoot%;%PATH%
set SCRIPT_NAME_ARG=-Dorg.opends.server.scriptName=%SCRIPT_NAME%
set SET_ENVIRONMENT_VARS_DONE=true
goto scriptBegin
:testJava
"%OPENDS_JAVA_BIN%" %OPENDS_JAVA_ARGS% org.opends.server.tools.InstallDS -t > NUL 2>&1
set RESULT_CODE=%errorlevel%
if %RESULT_CODE% == 13 goto notSupportedJavaHome
if not %RESULT_CODE% == 0 goto noValidJavaHome
goto prepareCheck
:noValidJavaHome
if NOT "%OPENDS_JAVA_ARGS%" == "" goto noValidHomeWithArgs
echo ERROR:  The detected Java version could not be used.  The detected
echo Java binary is:
echo %OPENDS_JAVA_BIN%
echo You must specify the path to a valid Java 5.0 or higher version.
echo The procedure to follow is:
echo 1. Delete the file %INSTANCE_ROOT%\lib\set-java-home.bat if it exists.
echo 2. Set the environment variable OPENDS_JAVA_HOME to the root of a valid
echo Java 5.0 installation.
echo If you want to have specific Java settings for each command line you must
echo follow the steps 3 and 4.
echo 3. Edit the properties file specifying the Java binary and the Java arguments
echo for each command line.  The Java properties file is located in:
echo %INSTANCE_ROOT%\config\java.properties.
echo 4. Run the command-line %INSTALL_ROOT%\bat\dsjavaproperties.bat
pause
exit /B 1
:notSupportedJavaHome
rem We get here when the java version is 5 (or up) but not supported.  We run
rem InstallDS again to see a localized message.
"%OPENDS_JAVA_BIN%" %OPENDS_JAVA_ARGS% org.opends.server.tools.InstallDS -t
pause
exit /B 1
:noValidHomeWithArgs
echo ERROR:  The detected Java version could not be used with the set of Java
echo arguments %OPENDS_JAVA_ARGS%.
echo The detected Java binary is:
echo %OPENDS_JAVA_BIN%
echo You must specify the path to a valid Java 5.0 or higher version.
echo The procedure to follow is:
echo 1. Delete the file %INSTANCE_ROOT%\lib\set-java-home.bat if it exists.
echo 2. Set the environment variable OPENDS_JAVA_HOME to the root of a valid
echo Java 5.0 installation.
echo If you want to have specific Java settings for each command line you must
echo follow the steps 3 and 4.
echo 3. Edit the properties file specifying the Java binary and the Java arguments
echo for each command line.  The Java properties file is located in:
echo %INSTANCE_ROOT%\config\java.properties.
echo 4. Run the command-line %INSTALL_ROOT%\bat\dsjavaproperties.bat
pause
exit /B 1
:isVersionOrHelp
if [%1] == [] goto check
if [%1] == [--help] goto end
if [%1] == [-H] goto end
if [%1] == [--version] goto end
if [%1] == [-V] goto end
if [%1] == [--fullversion] goto end
if [%1] == [-F] goto end
shift
goto isVersionOrHelp
:prepareCheck
rem Perform check unless it is specified not to do it
if "%NO_CHECK%" == ""  set NO_CHECK=false
goto isVersionOrHelp
:check
if "%NO_CHECK%" == "true" goto end
if "%CHECK_VERSION%" == "true" set OPT_CHECK_VERSION=--checkVersion
"%OPENDS_JAVA_BIN%" %SCRIPT_NAME_ARG% -DINSTALL_ROOT="%INSTALL_ROOT%" -DINSTANCE_ROOT="%INSTANCE_ROOT%" org.opends.server.tools.configurator.CheckInstance %OPT_CHECK_VERSION%
set RESULT_CODE=%errorlevel%
if "%RESULT_CODE%" == "0" goto end
exit /B 1
:end
exit /B 0
sdk/resource/bin/_script-util.sh
New file
@@ -0,0 +1,319 @@
#!/bin/sh
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
#      Copyright 2008-2009 Sun Microsystems, Inc.
#
# function that sets the java home
#
set_java_home_and_args() {
  if test -f "${INSTANCE_ROOT}/lib/set-java-home"
  then
    . "${INSTANCE_ROOT}/lib/set-java-home"
  fi
  if test -z "${OPENDS_JAVA_BIN}"
  then
    if test -z "${OPENDS_JAVA_HOME}"
    then
      if test -z "${JAVA_BIN}"
      then
        if test -z "${JAVA_HOME}"
        then
          OPENDS_JAVA_BIN=`which java 2> /dev/null`
          if test ${?} -eq 0
          then
            export OPENDS_JAVA_BIN
          else
            echo "Please set OPENDS_JAVA_HOME to the root of a Java 5 (or later) installation"
            echo "or edit the java.properties file and then run the dsjavaproperties script to"
            echo "specify the Java version to be used"
            exit 1
          fi
        else
          OPENDS_JAVA_BIN="${JAVA_HOME}/bin/java"
          export OPENDS_JAVA_BIN
        fi
      else
        OPENDS_JAVA_BIN="${JAVA_BIN}"
        export OPENDS_JAVA_BIN
      fi
    else
      OPENDS_JAVA_BIN="${OPENDS_JAVA_HOME}/bin/java"
      export OPENDS_JAVA_BIN
    fi
  fi
}
# Determine whether the detected Java environment is acceptable for use.
test_java() {
  if test -z "${OPENDS_JAVA_ARGS}"
  then
    "${OPENDS_JAVA_BIN}" org.opends.server.tools.InstallDS -t 2> /dev/null
    RESULT_CODE=${?}
    if test ${RESULT_CODE} -eq 13
    then
      # This is a particular error code that means that the Java version is 5
      # but not supported.  Let InstallDS to display the localized error message
      "${OPENDS_JAVA_BIN}" org.opends.server.tools.InstallDS -t
      exit 1
    elif test ${RESULT_CODE} -ne 0
    then
      echo "ERROR:  The detected Java version could not be used.  The detected"
      echo "Java binary is:"
      echo "${OPENDS_JAVA_BIN}"
      echo "You must specify the path to a valid Java 5.0 or higher version."
      echo "The procedure to follow is:"
      echo "1. Delete the file ${INSTANCE_ROOT}/lib/set-java-home" if it exists.
      echo "2. Set the environment variable OPENDS_JAVA_HOME to the root of a valid "
      echo "Java 5.0 installation."
      echo "If you want to have specific Java settings for each command line you must"
      echo "follow the steps 3 and 4."
      echo "3. Edit the properties file specifying the Java binary and the Java arguments"
      echo "for each command line.  The Java properties file is located in:"
      echo "${INSTANCE_ROOT}/config/java.properties."
      echo "4. Run the command-line ${INSTANCE_ROOT}/bin/dsjavaproperties"
      exit 1
    fi
  else
    "${OPENDS_JAVA_BIN}" ${OPENDS_JAVA_ARGS} org.opends.server.tools.InstallDS -t 2> /dev/null
    RESULT_CODE=${?}
    if test ${RESULT_CODE} -eq 13
    then
      # This is a particular error code that means that the Java version is 5
      # but not supported.  Let InstallDS to display the localized error message
      "${OPENDS_JAVA_BIN}" org.opends.server.tools.InstallDS -t
      exit 1
    elif test ${RESULT_CODE} -ne 0
    then
      echo "ERROR:  The detected Java version could not be used with the set of Java"
      echo "arguments ${OPENDS_JAVA_ARGS}."
      echo "The detected Java binary is:"
      echo "${OPENDS_JAVA_BIN}"
      echo "You must specify the path to a valid Java 5.0 or higher version."
      echo "The procedure to follow is:"
      echo "1. Delete the file ${INSTANCE_ROOT}/lib/set-java-home" if it exists.
      echo "2. Set the environment variable OPENDS_JAVA_HOME to the root of a valid "
      echo "Java 5.0 installation."
      echo "If you want to have specific Java settings for each command line you must"
      echo "follow the steps 3 and 4."
      echo "3. Edit the properties file specifying the Java binary and the Java arguments"
      echo "for each command line.  The Java properties file is located in:"
      echo "${INSTANCE_ROOT}/config/java.properties."
      echo "4. Run the command-line ${INSTANCE_ROOT}/bin/dsjavaproperties"
      exit 1
    fi
  fi
}
# Explicitly set the PATH, LD_LIBRARY_PATH, LD_PRELOAD, and other important
# system environment variables for security and compatibility reasons.
set_environment_vars() {
  PATH=/bin:/usr/bin
  LD_LIBRARY_PATH=
  LD_LIBRARY_PATH_32=
  LD_LIBRARY_PATH_64=
  LD_PRELOAD=
  LD_PRELOAD_32=
  LD_PRELOAD_64=
  export PATH LD_LIBRARY_PATH LD_LIBRARY_PATH_32 LD_LIBRARY_PATH_64 \
       LD_PRELOAD LD_PRELOAD_32 LD_PRELOAD_64
  SCRIPT_NAME_ARG=-Dorg.opends.server.scriptName=${SCRIPT_NAME}
    export SCRIPT_NAME_ARG
}
# Configure the appropriate CLASSPATH.
set_classpath() {
  CLASSPATH=${INSTANCE_ROOT}/classes
  for JAR in ${INSTALL_ROOT}/resources/*.jar
  do
    CLASSPATH=${CLASSPATH}:${JAR}
  done
  for JAR in ${INSTALL_ROOT}/lib/*.jar
  do
    CLASSPATH=${CLASSPATH}:${JAR}
  done
  if [ "${INSTALL_ROOT}" != "${INSTANCE_ROOT}" ]
  then
    for JAR in ${INSTANCE_ROOT}/lib/*.jar
    do
      CLASSPATH=${CLASSPATH}:${JAR}
    done
  fi
  export CLASSPATH
}
isVersionOrHelp() {
  for opt in `echo $*`
  do
    if [ $opt = "-V" ] || [ $opt = "--version" ] ||
        [ $opt = "-H" ] || [ $opt = "--help" ] ||
                [ $opt = "-F" ] || [ $opt = "--fullversion" ]
    then
        return 0
    fi
  done
  return 1
}
if test "${INSTALL_ROOT}" = ""
then
  # Capture the current working directory so that we can change to it later.
  # Then capture the location of this script and the Directory Server instance
  # root so that we can use them to create appropriate paths.
  WORKING_DIR=`pwd`
  cd "`dirname "${0}"`"
  cd ..
  INSTALL_ROOT=`pwd`
  cd "${WORKING_DIR}"
fi
if test "${INSTANCE_ROOT}" = ""
then
  if [ -f ${INSTALL_ROOT}/configure ]
  then
    if [ -f /etc/opends/instance.loc ]
    then
      if [ "${SCRIPT_NAME}" = "configure" ]
      then
        isVersionOrHelp $*
    if [ $? -eq 1 ]
    then
          echo "${INSTALL_ROOT}/configure has already been run. Exiting."
          exit 0
    fi
      fi
      read INSTANCE_ROOT <  /etc/opends/instance.loc
    else
      if [ "${SCRIPT_NAME}" != "configure" ]
      then
        isVersionOrHelp $*
        if [ $? -eq 1 ]
        then
          echo "No instance found. Run ${INSTALL_ROOT}/configure to create it."
          exit 1
        fi
      fi
    fi
  else
    if [ -f ${INSTALL_ROOT}/instance.loc ]
    then
      read location < ${INSTALL_ROOT}/instance.loc
      case `echo ${location}` in
           /*)
              INSTANCE_ROOT=${location}
              break
              ;;
           *)
              INSTANCE_ROOT=${INSTALL_ROOT}/${location}
              break
              ;;
      esac
    else
         INSTANCE_ROOT=${INSTALL_ROOT}
    fi
  fi
  if [ -d "${INSTANCE_ROOT}" ]
  then
      CURRENT_DIR=`pwd`
      cd "${INSTANCE_ROOT}"
      INSTANCE_ROOT=`pwd`
      export INSTANCE_ROOT
      cd "${CURRENT_DIR}"
  fi
fi
if test "${SCRIPT_UTIL_CMD}" = "set-full-environment-and-test-java"
then
  set_java_home_and_args
  set_environment_vars
  set_classpath
  test_java
elif test "${SCRIPT_UTIL_CMD}" = "set-full-environment"
then
  set_java_home_and_args
  set_environment_vars
  set_classpath
elif test "${SCRIPT_UTIL_CMD}" = "set-java-home-and-args"
then
  set_java_home_and_args
elif test "${SCRIPT_UTIL_CMD}" = "set-environment-vars"
then
  set_environment_vars
elif test "${SCRIPT_UTIL_CMD}" = "set-classpath"
then
  set_classpath
elif test "${SCRIPT_UTIL_CMD}" = "test-java"
then
  test_java
fi
current_user()
{
USER=`id`
CURRENT_IFS=${IFS}
IFS="()"
set -- ${USER}
echo $2
IFS=${CURRENT_IFS}
}
if [ "${SCRIPT_NAME}" != "configure" ] &&  [ "${SCRIPT_NAME}" != "unconfigure" ]
then
  # Perform check unless it is specified not to do it
  if [ -z "$NO_CHECK" ]
  then
     NO_CHECK=0
  fi
  if [ ${NO_CHECK} -eq 0 ]
  then
      # No check for --version or --help option
      isVersionOrHelp $*
      if [ $? -eq 0 ]
      then
        NO_CHECK=1
      fi
  fi
  if [ ${NO_CHECK} -eq 0 ]
  then
    set_classpath
  # Check instance
      CURRENT_USER="`current_user`"
      if [ "${CHECK_VERSION}" = "yes" ]
      then
      OPT_CHECK_VERSION="--checkVersion"
      else
      OPT_CHECK_VERSION=""
      fi
  # Launch the CheckInstance process.
      "${OPENDS_JAVA_BIN}" ${SCRIPT_NAME_ARG} -DINSTALL_ROOT=${INSTALL_ROOT} -DINSTANCE_ROOT=${INSTANCE_ROOT} org.opends.server.tools.configurator.CheckInstance --currentUser ${CURRENT_USER} ${OPT_CHECK_VERSION}
  # return part
      RETURN_CODE=$?
      if [ ${RETURN_CODE} -ne 0 ]
      then
      exit 1
      fi
  fi
fi
sdk/resource/bin/ldapcompare
New file
@@ -0,0 +1,37 @@
#!/bin/sh
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
#      Copyright 2006-2008 Sun Microsystems, Inc.
# This script may be used to perform LDAP compare operations.
OPENDS_INVOKE_CLASS="org.opends.sdk.tools.LDAPCompare"
export OPENDS_INVOKE_CLASS
SCRIPT_NAME="ldapcompare"
export SCRIPT_NAME
SCRIPT_DIR=`dirname "${0}"`
"${SCRIPT_DIR}/../lib/_client-script.sh" "${@}"
sdk/resource/bin/ldapcompare.bat
New file
@@ -0,0 +1,33 @@
@echo off
rem CDDL HEADER START
rem
rem The contents of this file are subject to the terms of the
rem Common Development and Distribution License, Version 1.0 only
rem (the "License").  You may not use this file except in compliance
rem with the License.
rem
rem You can obtain a copy of the license at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE
rem or https://OpenDS.dev.java.net/OpenDS.LICENSE.
rem See the License for the specific language governing permissions
rem and limitations under the License.
rem
rem When distributing Covered Code, include this CDDL HEADER in each
rem file and include the License file at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
rem add the following below this CDDL HEADER, with the fields enclosed
rem by brackets "[]" replaced with your own identifying information:
rem      Portions Copyright [yyyy] [name of copyright owner]
rem
rem CDDL HEADER END
rem
rem
rem      Copyright 2006-2008 Sun Microsystems, Inc.
setlocal
set OPENDS_INVOKE_CLASS="org.opends.sdk.tools.LDAPCompare"
set SCRIPT_NAME=ldapcompare
for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %*
sdk/resource/bin/ldapmodify
New file
@@ -0,0 +1,38 @@
#!/bin/sh
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
#      Copyright 2006-2008 Sun Microsystems, Inc.
# This script may be used to perform LDAP add, delete, modify, and modify DN
# operations.
OPENDS_INVOKE_CLASS="org.opends.sdk.tools.LDAPModify"
export OPENDS_INVOKE_CLASS
SCRIPT_NAME="ldapmodify"
export SCRIPT_NAME
SCRIPT_DIR=`dirname "${0}"`
"${SCRIPT_DIR}/../lib/_client-script.sh" "${@}"
sdk/resource/bin/ldapmodify.bat
New file
@@ -0,0 +1,33 @@
@echo off
rem CDDL HEADER START
rem
rem The contents of this file are subject to the terms of the
rem Common Development and Distribution License, Version 1.0 only
rem (the "License").  You may not use this file except in compliance
rem with the License.
rem
rem You can obtain a copy of the license at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE
rem or https://OpenDS.dev.java.net/OpenDS.LICENSE.
rem See the License for the specific language governing permissions
rem and limitations under the License.
rem
rem When distributing Covered Code, include this CDDL HEADER in each
rem file and include the License file at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
rem add the following below this CDDL HEADER, with the fields enclosed
rem by brackets "[]" replaced with your own identifying information:
rem      Portions Copyright [yyyy] [name of copyright owner]
rem
rem CDDL HEADER END
rem
rem
rem      Copyright 2006-2008 Sun Microsystems, Inc.
setlocal
set OPENDS_INVOKE_CLASS="org.opends.sdk.tools.LDAPModify"
set SCRIPT_NAME=ldapmodify
for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %*
sdk/resource/bin/ldappasswordmodify
New file
@@ -0,0 +1,37 @@
#!/bin/sh
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
#      Copyright 2006-2008 Sun Microsystems, Inc.
# This script may be used to perform LDAP password modify operations.
OPENDS_INVOKE_CLASS="org.opends.sdk.tools.LDAPPasswordModify"
export OPENDS_INVOKE_CLASS
SCRIPT_NAME="ldappasswordmodify"
export SCRIPT_NAME
SCRIPT_DIR=`dirname "${0}"`
"${SCRIPT_DIR}/../lib/_client-script.sh" "${@}"
sdk/resource/bin/ldappasswordmodify.bat
New file
@@ -0,0 +1,33 @@
@echo off
rem CDDL HEADER START
rem
rem The contents of this file are subject to the terms of the
rem Common Development and Distribution License, Version 1.0 only
rem (the "License").  You may not use this file except in compliance
rem with the License.
rem
rem You can obtain a copy of the license at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE
rem or https://OpenDS.dev.java.net/OpenDS.LICENSE.
rem See the License for the specific language governing permissions
rem and limitations under the License.
rem
rem When distributing Covered Code, include this CDDL HEADER in each
rem file and include the License file at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
rem add the following below this CDDL HEADER, with the fields enclosed
rem by brackets "[]" replaced with your own identifying information:
rem      Portions Copyright [yyyy] [name of copyright owner]
rem
rem CDDL HEADER END
rem
rem
rem      Copyright 2006-2008 Sun Microsystems, Inc.
setlocal
set OPENDS_INVOKE_CLASS="org.opends.sdk.tools.LDAPPasswordModify"
set SCRIPT_NAME=ldappasswordmodify
for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %*
sdk/resource/bin/ldapsearch
New file
@@ -0,0 +1,37 @@
#!/bin/sh
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
#      Copyright 2006-2008 Sun Microsystems, Inc.
# This script may be used to perform LDAP search operations.
OPENDS_INVOKE_CLASS="org.opends.sdk.tools.LDAPSearch"
export OPENDS_INVOKE_CLASS
SCRIPT_NAME="ldapsearch"
export SCRIPT_NAME
SCRIPT_DIR=`dirname "${0}"`
"${SCRIPT_DIR}/../lib/_client-script.sh" "${@}"
sdk/resource/bin/ldapsearch.bat
New file
@@ -0,0 +1,33 @@
@echo off
rem CDDL HEADER START
rem
rem The contents of this file are subject to the terms of the
rem Common Development and Distribution License, Version 1.0 only
rem (the "License").  You may not use this file except in compliance
rem with the License.
rem
rem You can obtain a copy of the license at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE
rem or https://OpenDS.dev.java.net/OpenDS.LICENSE.
rem See the License for the specific language governing permissions
rem and limitations under the License.
rem
rem When distributing Covered Code, include this CDDL HEADER in each
rem file and include the License file at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
rem add the following below this CDDL HEADER, with the fields enclosed
rem by brackets "[]" replaced with your own identifying information:
rem      Portions Copyright [yyyy] [name of copyright owner]
rem
rem CDDL HEADER END
rem
rem
rem      Copyright 2006-2008 Sun Microsystems, Inc.
setlocal
set OPENDS_INVOKE_CLASS="org.opends.sdk.tools.LDAPSearch"
set SCRIPT_NAME=ldapsearch
for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %*
sdk/resource/bin/setcp.bat
New file
@@ -0,0 +1,40 @@
rem CDDL HEADER START
rem
rem The contents of this file are subject to the terms of the
rem Common Development and Distribution License, Version 1.0 only
rem (the "License").  You may not use this file except in compliance
rem with the License.
rem
rem You can obtain a copy of the license at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE
rem or https://OpenDS.dev.java.net/OpenDS.LICENSE.
rem See the License for the specific language governing permissions
rem and limitations under the License.
rem
rem When distributing Covered Code, include this CDDL HEADER in each
rem file and include the License file at
rem trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
rem add the following below this CDDL HEADER, with the fields enclosed
rem by brackets "[]" replaced with your own identifying information:
rem      Portions Copyright [yyyy] [name of copyright owner]
rem
rem CDDL HEADER END
rem
rem
rem      Copyright 2006-2008 Sun Microsystems, Inc.
set CLASSPATHCOMPONENT=%1
if ""%1""=="""" goto gotAllArgs
shift
:argCheck
if ""%1""=="""" goto gotAllArgs
set CLASSPATHCOMPONENT=%CLASSPATHCOMPONENT% %1
shift
goto argCheck
:gotAllArgs
set CLASSPATH=%CLASSPATHCOMPONENT%;%CLASSPATH%
sdk/resource/legal-notices/BinariesLicense.txt
New file
@@ -0,0 +1,180 @@
SUN MICROSYSTEMS, INC. SOFTWARE LICENSE AGREEMENTS
SUN MICROSYSTEMS, INC. ("SUN") IS WILLING TO LICENSE THE BELOW DEFINED SOFTWARE
TO YOU ONLY UPON THE CONDITION THAT YOU ACCEPT ALL OF THE TERMS CONTAINED IN
THIS SOFTWARE LICENSE AGREEMENT ("AGREEMENT").
PLEASE READ THE AGREEMENT CAREFULLY.  BY DOWNLOADING OR INSTALLING THIS
SOFTWARE, YOU ACCEPT THE FULL TERMS OF THE AGREEMENT.
1. Definitions.
"Software" means all the portions of the OpenDS distribution provided by Sun
only in binary code form, and including any updates or error corrections or
documentation provided by Sun under this Agreement.
2. Permitted Uses.
Subject to the terms and conditions of this Agreement and restrictions and
exceptions set forth in the Software's documentation, Sun grants you a
non-exclusive, non-transferable, limited license without fees to
(a) reproduce and use internally the Software for the purposes of developing
or running OpenDS or modified versions of OpenDS.
(b) reproduce and distribute the Software (and also portions of Software
identified as Redistributable in the documentation accompanying Software),
provided that you
  (i) distribute the Software or Redistributables bundled as part of, and for
the sole purpose of running, OpenDS or modified versions of OpenDS;
  (ii) do not remove or alter any proprietary legends or notices contained in
or on the Software or Redistributables,
  (iii) only distribute the Software or Redistributables subject to a license
agreement that protects Sun's interests consistent with the terms contained in
this Agreement, and
  (iv) you agree to defend and indemnify Sun and its licensors from and against
any damages, costs, liabilities, settlement amounts and/or expenses (including
attorneys' fees) incurred in connection with any claim, lawsuit or action by
any third party that arises or results from the use or distribution of any and
all Programs, Software, or Redistributables.
3. Restrictions.
(a) The copies of Software provided to you under this Agreement is licensed,
not sold, to you by Sun. Sun reserves all rights not expressly granted.
(b) You may not modify Software. However if the documentation accompanying
Software lists specific portions of Software, such as header files, class
libraries, reference source code, and/or redistributable files, that may be
handled differently, you may do so only as provided in the documentation.
(c) You may not rent, lease, lend or encumber Software.
(d) you do not remove or alter any proprietary legends or notices contained
in the Software,
(e) Unless enforcement is prohibited by applicable law, you may not decompile,
or reverse engineer Software.
(f) The terms and conditions of this Agreement will apply to any Software
updates, provided to you at Sun's discretion, that replace and/or supplement
the original Software, unless such update contains a separate license.
(g) Software is confidential and copyrighted.
(h) Software is not designed, licensed or intended for use in the design,
construction, operation or maintenance of any nuclear facility and Sun and
its licensors disclaim any express or implied warranty of fitness for such uses.
(i) No right, title or interest in or to any trademark, service mark, logo or
trade name of Sun or its licensors is granted under this Agreement.
(j) If your Permitted Use in this Agreement permits the distribution Software
or portions of the Software, you may only distribute the Software subject to
a license agreement that protects Sun's interests consistent with the terms
contained in this Agreement.
4. Java Compatibility and Open Source.
Software may contain Java technology. You may not create additional classes
to, or modifications of, the Java technology, except under compatibility
requirements available under a separate agreement available at www.java.net.
Sun supports and benefits from the global community of open source developers,
and thanks the community for its important contributions and open
standards-based technology, which Sun has adopted into many of its products.
Please note that portions of Software may be provided with notices and open
source licenses from such communities and third parties that govern the use of
those portions, and any licenses granted hereunder do not alter any rights and
obligations you may have under such open source licenses, however, the
disclaimer of warranty and limitation of liability provisions in this Agreement
will apply to all Software in this distribution.
5. Term and Termination.
The Agreement is effective on the Date you receive the Software and remains
effective until terminated. Your rights under this Agreement will terminate
immediately without notice from Sun if you materially breach it or take any
action in derogation of Sun's and/or its licensors' rights to Software. Sun
may terminate this Agreement should any Software become, or in Sun's reasonable
opinion likely to become, the subject of a claim of intellectual property
infringement or trade secret misappropriation. Upon termination, you will
cease use of, and destroy, Software and confirm compliance in writing to Sun.
Sections 1, 3, 4, 5, and 7-13 will survive termination of the Agreement.
6. Limited Warranty.
Sun warrants to you that for a period of 90 days from the date of receipt, the
media on which Software is furnished (if any) will be free of defects in
materials and workmanship under normal use. Except for the foregoing, Software
is provided "AS IS". Your exclusive remedy and Sun's entire liability under this
limited warranty will be at Sun's option to replace Software media or refund the
fee paid for Software. Some states do not allow limitations on certain implied
warranties, so the above may not apply to you. This limited warranty gives you
specific legal rights. You may have others, which vary from state to state.
7. Disclaimer of Warranty.
UNLESS SPECIFIED IN THIS AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS,
REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT ARE
DISCLAIMED, EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY
INVALID.
8. Limitation of Liability.
TO THE EXTENT NOT PROHIBITED BY LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE
LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT,
CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE
THEORY OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE
SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no
event will Sun's liability to you, whether in contract, tort (including
negligence), or otherwise, exceed the amount paid by you for Software under this
Agreement. The foregoing limitations will apply even if the above stated
warranty fails of its essential purpose. Some states do not allow the exclusion
of incidental or consequential damages, so some of the terms above may not be
applicable to you.
9. Export Regulations.
All Software, documents, technical data, and any other materials delivered under
this Agreement are subject to U.S. export control laws and may be subject to
export or import regulations in other countries. You agree to comply strictly
with these laws and regulations and acknowledge that you have the responsibility
to obtain any licenses to export, re-export, or import as may be required after
delivery to you.
10. U.S. Government Restricted Rights.
If Software is being acquired by or on behalf of the U.S. Government or by a
U.S. Government prime contractor or subcontractor (at any tier), then the
Government's rights in Software and accompanying documentation will be only as
set forth in this Agreement; this is in accordance with 48 CFR 227.7201 through
227.7202-4 (for Department of Defense (DOD) acquisitions) and with 48 CFR 2.101
and 12.212 (for non-DOD acquisitions).
11. Governing Law.
Any action related to this Agreement will be governed by California law and
controlling U.S. federal law. No choice of law rules of any jurisdiction will
apply.
12. Severability.
If any provision of this Agreement is held to be unenforceable, this Agreement
will remain in effect with the provision omitted, unless omission would
frustrate the intent of the parties, in which case this Agreement will
immediately terminate.
13. Integration.
This Agreement is the entire agreement between you and Sun relating to its
subject matter. It supersedes all prior or contemporaneous oral or written
communications, proposals, representations and warranties and prevails over any
conflicting or additional terms of any quote, order, acknowledgment, or other
communication between the parties relating to its subject matter during the term
of this Agreement. No modification of this Agreement will be binding, unless in
writing and signed by an authorized representative of each party.
sdk/resource/legal-notices/OpenDS.LICENSE
New file
@@ -0,0 +1,384 @@
Unless otherwise noted, all files in this distribution are released
under the Common Development and Distribution License (CDDL).
Exceptions are noted within the associated source files.
--------------------------------------------------------------------
COMMON DEVELOPMENT AND DISTRIBUTION LICENSE Version 1.0
1. Definitions.
    1.1. "Contributor" means each individual or entity that creates
         or contributes to the creation of Modifications.
    1.2. "Contributor Version" means the combination of the Original
         Software, prior Modifications used by a Contributor (if any),
         and the Modifications made by that particular Contributor.
    1.3. "Covered Software" means (a) the Original Software, or (b)
         Modifications, or (c) the combination of files containing
         Original Software with files containing Modifications, in
         each case including portions thereof.
    1.4. "Executable" means the Covered Software in any form other
         than Source Code.
    1.5. "Initial Developer" means the individual or entity that first
         makes Original Software available under this License.
    1.6. "Larger Work" means a work which combines Covered Software or
         portions thereof with code not governed by the terms of this
         License.
    1.7. "License" means this document.
    1.8. "Licensable" means having the right to grant, to the maximum
         extent possible, whether at the time of the initial grant or
         subsequently acquired, any and all of the rights conveyed
         herein.
    1.9. "Modifications" means the Source Code and Executable form of
         any of the following:
        A. Any file that results from an addition to, deletion from or
           modification of the contents of a file containing Original
           Software or previous Modifications;
        B. Any new file that contains any part of the Original
           Software or previous Modifications; or
        C. Any new file that is contributed or otherwise made
           available under the terms of this License.
    1.10. "Original Software" means the Source Code and Executable
          form of computer software code that is originally released
          under this License.
    1.11. "Patent Claims" means any patent claim(s), now owned or
          hereafter acquired, including without limitation, method,
          process, and apparatus claims, in any patent Licensable by
          grantor.
    1.12. "Source Code" means (a) the common form of computer software
          code in which modifications are made and (b) associated
          documentation included in or with such code.
    1.13. "You" (or "Your") means an individual or a legal entity
          exercising rights under, and complying with all of the terms
          of, this License.  For legal entities, "You" includes any
          entity which controls, is controlled by, or is under common
          control with You.  For purposes of this definition,
          "control" means (a) the power, direct or indirect, to cause
          the direction or management of such entity, whether by
          contract or otherwise, or (b) ownership of more than fifty
          percent (50%) of the outstanding shares or beneficial
          ownership of such entity.
2. License Grants.
    2.1. The Initial Developer Grant.
    Conditioned upon Your compliance with Section 3.1 below and
    subject to third party intellectual property claims, the Initial
    Developer hereby grants You a world-wide, royalty-free,
    non-exclusive license:
        (a) under intellectual property rights (other than patent or
            trademark) Licensable by Initial Developer, to use,
            reproduce, modify, display, perform, sublicense and
            distribute the Original Software (or portions thereof),
            with or without Modifications, and/or as part of a Larger
            Work; and
        (b) under Patent Claims infringed by the making, using or
            selling of Original Software, to make, have made, use,
            practice, sell, and offer for sale, and/or otherwise
            dispose of the Original Software (or portions thereof).
        (c) The licenses granted in Sections 2.1(a) and (b) are
            effective on the date Initial Developer first distributes
            or otherwise makes the Original Software available to a
            third party under the terms of this License.
        (d) Notwithstanding Section 2.1(b) above, no patent license is
            granted: (1) for code that You delete from the Original
            Software, or (2) for infringements caused by: (i) the
            modification of the Original Software, or (ii) the
            combination of the Original Software with other software
            or devices.
    2.2. Contributor Grant.
    Conditioned upon Your compliance with Section 3.1 below and
    subject to third party intellectual property claims, each
    Contributor hereby grants You a world-wide, royalty-free,
    non-exclusive license:
        (a) under intellectual property rights (other than patent or
            trademark) Licensable by Contributor to use, reproduce,
            modify, display, perform, sublicense and distribute the
            Modifications created by such Contributor (or portions
            thereof), either on an unmodified basis, with other
            Modifications, as Covered Software and/or as part of a
            Larger Work; and
        (b) under Patent Claims infringed by the making, using, or
            selling of Modifications made by that Contributor either
            alone and/or in combination with its Contributor Version
            (or portions of such combination), to make, use, sell,
            offer for sale, have made, and/or otherwise dispose of:
            (1) Modifications made by that Contributor (or portions
            thereof); and (2) the combination of Modifications made by
            that Contributor with its Contributor Version (or portions
            of such combination).
        (c) The licenses granted in Sections 2.2(a) and 2.2(b) are
            effective on the date Contributor first distributes or
            otherwise makes the Modifications available to a third
            party.
        (d) Notwithstanding Section 2.2(b) above, no patent license is
            granted: (1) for any code that Contributor has deleted
            from the Contributor Version; (2) for infringements caused
            by: (i) third party modifications of Contributor Version,
            or (ii) the combination of Modifications made by that
            Contributor with other software (except as part of the
            Contributor Version) or other devices; or (3) under Patent
            Claims infringed by Covered Software in the absence of
            Modifications made by that Contributor.
3. Distribution Obligations.
    3.1. Availability of Source Code.
    Any Covered Software that You distribute or otherwise make
    available in Executable form must also be made available in Source
    Code form and that Source Code form must be distributed only under
    the terms of this License.  You must include a copy of this
    License with every copy of the Source Code form of the Covered
    Software You distribute or otherwise make available.  You must
    inform recipients of any such Covered Software in Executable form
    as to how they can obtain such Covered Software in Source Code
    form in a reasonable manner on or through a medium customarily
    used for software exchange.
    3.2. Modifications.
    The Modifications that You create or to which You contribute are
    governed by the terms of this License.  You represent that You
    believe Your Modifications are Your original creation(s) and/or
    You have sufficient rights to grant the rights conveyed by this
    License.
    3.3. Required Notices.
    You must include a notice in each of Your Modifications that
    identifies You as the Contributor of the Modification.  You may
    not remove or alter any copyright, patent or trademark notices
    contained within the Covered Software, or any notices of licensing
    or any descriptive text giving attribution to any Contributor or
    the Initial Developer.
    3.4. Application of Additional Terms.
    You may not offer or impose any terms on any Covered Software in
    Source Code form that alters or restricts the applicable version
    of this License or the recipients' rights hereunder.  You may
    choose to offer, and to charge a fee for, warranty, support,
    indemnity or liability obligations to one or more recipients of
    Covered Software.  However, you may do so only on Your own behalf,
    and not on behalf of the Initial Developer or any Contributor.
    You must make it absolutely clear that any such warranty, support,
    indemnity or liability obligation is offered by You alone, and You
    hereby agree to indemnify the Initial Developer and every
    Contributor for any liability incurred by the Initial Developer or
    such Contributor as a result of warranty, support, indemnity or
    liability terms You offer.
    3.5. Distribution of Executable Versions.
    You may distribute the Executable form of the Covered Software
    under the terms of this License or under the terms of a license of
    Your choice, which may contain terms different from this License,
    provided that You are in compliance with the terms of this License
    and that the license for the Executable form does not attempt to
    limit or alter the recipient's rights in the Source Code form from
    the rights set forth in this License.  If You distribute the
    Covered Software in Executable form under a different license, You
    must make it absolutely clear that any terms which differ from
    this License are offered by You alone, not by the Initial
    Developer or Contributor.  You hereby agree to indemnify the
    Initial Developer and every Contributor for any liability incurred
    by the Initial Developer or such Contributor as a result of any
    such terms You offer.
    3.6. Larger Works.
    You may create a Larger Work by combining Covered Software with
    other code not governed by the terms of this License and
    distribute the Larger Work as a single product.  In such a case,
    You must make sure the requirements of this License are fulfilled
    for the Covered Software.
4. Versions of the License.
    4.1. New Versions.
    Sun Microsystems, Inc. is the initial license steward and may
    publish revised and/or new versions of this License from time to
    time.  Each version will be given a distinguishing version number.
    Except as provided in Section 4.3, no one other than the license
    steward has the right to modify this License.
    4.2. Effect of New Versions.
    You may always continue to use, distribute or otherwise make the
    Covered Software available under the terms of the version of the
    License under which You originally received the Covered Software.
    If the Initial Developer includes a notice in the Original
    Software prohibiting it from being distributed or otherwise made
    available under any subsequent version of the License, You must
    distribute and make the Covered Software available under the terms
    of the version of the License under which You originally received
    the Covered Software.  Otherwise, You may also choose to use,
    distribute or otherwise make the Covered Software available under
    the terms of any subsequent version of the License published by
    the license steward.
    4.3. Modified Versions.
    When You are an Initial Developer and You want to create a new
    license for Your Original Software, You may create and use a
    modified version of this License if You: (a) rename the license
    and remove any references to the name of the license steward
    (except to note that the license differs from this License); and
    (b) otherwise make it clear that the license contains terms which
    differ from this License.
5. DISCLAIMER OF WARRANTY.
    COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS"
    BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
    INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED
    SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR
    PURPOSE OR NON-INFRINGING.  THE ENTIRE RISK AS TO THE QUALITY AND
    PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU.  SHOULD ANY
    COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE
    INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY
    NECESSARY SERVICING, REPAIR OR CORRECTION.  THIS DISCLAIMER OF
    WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE.  NO USE OF
    ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS
    DISCLAIMER.
6. TERMINATION.
    6.1. This License and the rights granted hereunder will terminate
    automatically if You fail to comply with terms herein and fail to
    cure such breach within 30 days of becoming aware of the breach.
    Provisions which, by their nature, must remain in effect beyond
    the termination of this License shall survive.
    6.2. If You assert a patent infringement claim (excluding
    declaratory judgment actions) against Initial Developer or a
    Contributor (the Initial Developer or Contributor against whom You
    assert such claim is referred to as "Participant") alleging that
    the Participant Software (meaning the Contributor Version where
    the Participant is a Contributor or the Original Software where
    the Participant is the Initial Developer) directly or indirectly
    infringes any patent, then any and all rights granted directly or
    indirectly to You by such Participant, the Initial Developer (if
    the Initial Developer is not the Participant) and all Contributors
    under Sections 2.1 and/or 2.2 of this License shall, upon 60 days
    notice from Participant terminate prospectively and automatically
    at the expiration of such 60 day notice period, unless if within
    such 60 day period You withdraw Your claim with respect to the
    Participant Software against such Participant either unilaterally
    or pursuant to a written agreement with Participant.
    6.3. In the event of termination under Sections 6.1 or 6.2 above,
    all end user licenses that have been validly granted by You or any
    distributor hereunder prior to termination (excluding licenses
    granted to You by any distributor) shall survive termination.
7. LIMITATION OF LIABILITY.
    UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
    (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE
    INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF
    COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE
    LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR
    CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT
    LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK
    STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
    COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
    INFORMED OF THE POSSIBILITY OF SUCH DAMAGES.  THIS LIMITATION OF
    LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL
    INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT
    APPLICABLE LAW PROHIBITS SUCH LIMITATION.  SOME JURISDICTIONS DO
    NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR
    CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT
    APPLY TO YOU.
8. U.S. GOVERNMENT END USERS.
    The Covered Software is a "commercial item," as that term is
    defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial
    computer software" (as that term is defined at 48
    C.F.R. 252.227-7014(a)(1)) and "commercial computer software
    documentation" as such terms are used in 48 C.F.R. 12.212
    (Sept. 1995).  Consistent with 48 C.F.R. 12.212 and 48
    C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all
    U.S. Government End Users acquire Covered Software with only those
    rights set forth herein.  This U.S. Government Rights clause is in
    lieu of, and supersedes, any other FAR, DFAR, or other clause or
    provision that addresses Government rights in computer software
    under this License.
9. MISCELLANEOUS.
    This License represents the complete agreement concerning subject
    matter hereof.  If any provision of this License is held to be
    unenforceable, such provision shall be reformed only to the extent
    necessary to make it enforceable.  This License shall be governed
    by the law of the jurisdiction specified in a notice contained
    within the Original Software (except to the extent applicable law,
    if any, provides otherwise), excluding such jurisdiction's
    conflict-of-law provisions.  Any litigation relating to this
    License shall be subject to the jurisdiction of the courts located
    in the jurisdiction and venue specified in a notice contained
    within the Original Software, with the losing party responsible
    for costs, including, without limitation, court costs and
    reasonable attorneys' fees and expenses.  The application of the
    United Nations Convention on Contracts for the International Sale
    of Goods is expressly excluded.  Any law or regulation which
    provides that the language of a contract shall be construed
    against the drafter shall not apply to this License.  You agree
    that You alone are responsible for compliance with the United
    States export administration regulations (and the export control
    laws and regulation of any other countries) when You use,
    distribute or otherwise make available any Covered Software.
10. RESPONSIBILITY FOR CLAIMS.
    As between Initial Developer and the Contributors, each party is
    responsible for claims and damages arising, directly or
    indirectly, out of its utilization of rights under this License
    and You agree to work with Initial Developer and Contributors to
    distribute such responsibility on an equitable basis.  Nothing
    herein is intended or shall be deemed to constitute any admission
    of liability.
--------------------------------------------------------------------
NOTICE PURSUANT TO SECTION 9 OF THE COMMON DEVELOPMENT AND
DISTRIBUTION LICENSE (CDDL)
For Covered Software in this distribution, this License shall
be governed by the laws of the State of California (excluding
conflict-of-law provisions).
Any litigation relating to this License shall be subject to the
jurisdiction of the Federal Courts of the Northern District of
California and the state courts of the State of California, with
venue lying in Santa Clara County, California.
sdk/resource/legal-notices/THIRDPARTYREADME.txt
sdk/resource/opends_logo.png
sdk/src/com/sun/opends/sdk/util/Message.java
New file
@@ -0,0 +1,543 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2008 Sun Microsystems, Inc.
 */
package com.sun.opends.sdk.util;
import java.util.Formattable;
import java.util.Formatter;
import java.util.IllegalFormatException;
import java.util.Locale;
/**
 * Renders sensitive textural strings. In most cases message are
 * intended to render textural strings in a locale-sensitive manner
 * although this class defines convenience methods for creating
 * uninternationalized <code>Message</code> objects that render the same
 * text regardless of the requested locale. This class implements
 * <code>CharSequence</code> so that messages can be supplied as
 * arguments to other messages. This way messages can be composed of
 * fragments of other messages if necessary.
 *
 * @see MessageDescriptor
 */
public final class Message implements CharSequence, Formattable,
    Comparable<Message>
{
  /** Represents an empty message string. */
  public static final Message EMPTY = Message.raw("");
  // Variable used to workaround a bug in AIX Java 1.6
  // TODO: remove this code once the JDK issue referenced in 3077 is
  // closed.
  private final boolean isAIXPost5 = isAIXPost5();
  /**
   * Creates an uninternationalized message that will render itself the
   * same way regardless of the locale requested in
   * <code>toString(Locale)</code>. The message will have a category of
   * <code>Category.USER_DEFINED</code> and a severity of
   * <code>Severity.INFORMATION</code> Note that the types for
   * <code>args</code> must be consistent with any argument specifiers
   * appearing in <code>formatString</code> according to the rules of
   * java.util.Formatter. A mismatch in type information will cause this
   * message to render without argument substitution. Before using this
   * method you should be sure that the message you are creating is
   * locale sensitive. If so you should instead create a formal message.
   *
   * @param formatString
   *          of the message or the message itself if not arguments are
   *          necessary
   * @param args
   *          any arguments for the format string
   * @return a message object that will render the same in all locales;
   *         null if <code>formatString</code> is null
   */
  static public Message raw(CharSequence formatString, Object... args)
  {
    Message message = null;
    if (formatString != null)
    {
      message = new MessageDescriptor.Raw(formatString).get(args);
    }
    return message;
  }
  /**
   * Creates an uninternationalized message from the string
   * representation of an object. Note that the types for
   * <code>args</code> must be consistent with any argument specifiers
   * appearing in <code>formatString</code> according to the rules of
   * java.util.Formatter. A mismatch in type information will cause this
   * message to render without argument substitution.
   *
   * @param object
   *          from which the message will be created
   * @param arguments
   *          for message
   * @return a message object that will render the same in all locales;
   *         null if <code>object</code> is null
   */
  static public Message fromObject(Object object, Object... arguments)
  {
    Message message = null;
    if (object != null)
    {
      CharSequence cs = object.toString();
      message = raw(cs, arguments);
    }
    return message;
  }
  /**
   * Returns the string representation of the message in the default
   * locale.
   *
   * @param message
   *          to stringify
   * @return String representation of of <code>message</code> of null if
   *         <code>message</code> is null
   */
  static public String toString(Message message)
  {
    return message != null ? message.toString() : null;
  }
  /** Descriptor of this message. */
  private final MessageDescriptor descriptor;
  /** Values used to replace argument specifiers in the format string. */
  private final Object[] args;
  /**
   * Gets the string representation of this message.
   *
   * @return String representation of this message
   */
  public String toString()
  {
    return toString(Locale.getDefault());
  }
  /**
   * Gets the string representation of this message appropriate for
   * <code>locale</code>.
   *
   * @param locale
   *          for which the string representation will be returned
   * @return String representation of this message
   */
  public String toString(Locale locale)
  {
    String s;
    String fmt = descriptor.getFormatString(locale);
    if (descriptor.requiresFormatter())
    {
      try
      {
        // TODO: remove this code once the JDK issue referenced in 3077
        // is
        // closed.
        if (isAIXPost5)
        {
          // Java 6 in AIX Formatter does not handle properly
          // Formattable
          // arguments; this code is a workaround for the problem.
          boolean changeType = false;
          for (Object o : args)
          {
            if (o instanceof Formattable)
            {
              changeType = true;
              break;
            }
          }
          if (changeType)
          {
            Object[] newArgs = new Object[args.length];
            for (int i = 0; i < args.length; i++)
            {
              if (args[i] instanceof Formattable)
              {
                newArgs[i] = args[i].toString();
              }
              else
              {
                newArgs[i] = args[i];
              }
            }
            s = new Formatter(locale).format(locale, fmt, newArgs)
                .toString();
          }
          else
          {
            s = new Formatter(locale).format(locale, fmt, args)
                .toString();
          }
        }
        else
        {
          s = new Formatter(locale).format(locale, fmt, args)
              .toString();
        }
      }
      catch (IllegalFormatException e)
      {
        // This should not happend with any of our internal messages.
        // However, this may happen for raw messages that have a
        // mismatch between argument specifier type and argument type.
        s = fmt;
      }
    }
    else
    {
      s = fmt;
    }
    if (s == null) s = "";
    return s;
  }
  /**
   * Gets the descriptor that holds descriptive information about this
   * message.
   *
   * @return MessageDescriptor information
   */
  public MessageDescriptor getDescriptor()
  {
    return this.descriptor;
  }
  /**
   * Returns the length of this message as rendered using the default
   * locale.
   *
   * @return the number of <code>char</code>s in this message
   */
  public int length()
  {
    return length(Locale.getDefault());
  }
  /**
   * Returns the byte representation of this messages in the default
   * locale.
   *
   * @return bytes for this message
   */
  public byte[] getBytes()
  {
    return toString().getBytes();
  }
  /**
   * Returns the <code>char</code> value at the specified index of this
   * message rendered using the default locale.
   *
   * @param index
   *          the index of the <code>char</code> value to be returned
   * @return the specified <code>char</code> value
   * @throws IndexOutOfBoundsException
   *           if the <tt>index</tt> argument is negative or not less
   *           than <tt>length()</tt>
   */
  public char charAt(int index) throws IndexOutOfBoundsException
  {
    return charAt(Locale.getDefault(), index);
  }
  /**
   * Returns a new <code>CharSequence</code> that is a subsequence of
   * this message rendered using the default locale. The subsequence
   * starts with the <code>char</code> value at the specified index and
   * ends with the <code>char</code> value at index <tt>end - 1</tt>.
   * The length (in <code>char</code>s) of the returned sequence is
   * <tt>end - start</tt>, so if <tt>start == end</tt> then an empty
   * sequence is returned.
   *
   * @param start
   *          the start index, inclusive
   * @param end
   *          the end index, exclusive
   * @return the specified subsequence
   * @throws IndexOutOfBoundsException
   *           if <tt>start</tt> or <tt>end</tt> are negative, if
   *           <tt>end</tt> is greater than <tt>length()</tt>, or if
   *           <tt>start</tt> is greater than <tt>end</tt>
   */
  public CharSequence subSequence(int start, int end)
      throws IndexOutOfBoundsException
  {
    return subSequence(Locale.getDefault(), start, end);
  }
  /**
   * Returns the length of this message as rendered using a specific
   * locale.
   *
   * @param locale
   *          for which the rendering of this message will be used in
   *          determining the length
   * @return the number of <code>char</code>s in this message
   */
  public int length(Locale locale)
  {
    return toString(locale).length();
  }
  /**
   * Returns the <code>char</code> value at the specified index of this
   * message rendered using a specific.
   *
   * @param locale
   *          for which the rendering of this message will be used in
   *          determining the character
   * @param index
   *          the index of the <code>char</code> value to be returned
   * @return the specified <code>char</code> value
   * @throws IndexOutOfBoundsException
   *           if the <tt>index</tt> argument is negative or not less
   *           than <tt>length()</tt>
   */
  public char charAt(Locale locale, int index)
      throws IndexOutOfBoundsException
  {
    return toString(locale).charAt(index);
  }
  /**
   * Returns a new <code>CharSequence</code> that is a subsequence of
   * this message rendered using a specific locale. The subsequence
   * starts with the <code>char</code> value at the specified index and
   * ends with the <code>char</code> value at index <tt>end - 1</tt>.
   * The length (in <code>char</code>s) of the returned sequence is
   * <tt>end - start</tt>, so if <tt>start == end</tt> then an empty
   * sequence is returned.
   *
   * @param locale
   *          for which the rendering of this message will be used in
   *          determining the character
   * @param start
   *          the start index, inclusive
   * @param end
   *          the end index, exclusive
   * @return the specified subsequence
   * @throws IndexOutOfBoundsException
   *           if <tt>start</tt> or <tt>end</tt> are negative, if
   *           <tt>end</tt> is greater than <tt>length()</tt>, or if
   *           <tt>start</tt> is greater than <tt>end</tt>
   */
  public CharSequence subSequence(Locale locale, int start, int end)
      throws IndexOutOfBoundsException
  {
    return toString(locale).subSequence(start, end);
  }
  /**
   * Formats the object using the provided {@link Formatter formatter}.
   *
   * @param formatter
   *          The {@link Formatter formatter}.
   * @param flags
   *          The flags modify the output format. The value is
   *          interpreted as a bitmask. Any combination of the following
   *          flags may be set:
   *          {@link java.util.FormattableFlags#LEFT_JUSTIFY},
   *          {@link java.util.FormattableFlags#UPPERCASE}, and
   *          {@link java.util.FormattableFlags#ALTERNATE}. If no flags
   *          are set, the default formatting of the implementing class
   *          will apply.
   * @param width
   *          The minimum number of characters to be written to the
   *          output. If the length of the converted value is less than
   *          the <tt>width</tt> then the output will be padded by <tt>'&nbsp;&nbsp;'</tt>
   *          until the total number of characters equals width. The
   *          padding is at the beginning by default. If the
   *          {@link java.util.FormattableFlags#LEFT_JUSTIFY} flag is
   *          set then the padding will be at the end. If <tt>width</tt>
   *          is <tt>-1</tt> then there is no minimum.
   * @param precision
   *          The maximum number of characters to be written to the
   *          output. The precision is applied before the width, thus
   *          the output will be truncated to <tt>precision</tt>
   *          characters even if the <tt>width</tt> is greater than the
   *          <tt>precision</tt>. If <tt>precision</tt> is <tt>-1</tt>
   *          then there is no explicit limit on the number of
   *          characters.
   * @throws IllegalFormatException
   *           If any of the parameters are invalid. For specification
   *           of all possible formatting errors, see the <a
   *           href="../util/Formatter.html#detail">Details</a> section
   *           of the formatter class specification.
   */
  public void formatTo(Formatter formatter, int flags, int width,
      int precision) throws IllegalFormatException
  {
    // Ignores flags, width and precission for now.
    // see javadoc for Formattable
    Locale l = formatter.locale();
    formatter.format(l, descriptor.getFormatString(l), args);
  }
  /**
   * Creates a parameterized instance. See the class header for
   * instructions on how to create messages outside this package.
   *
   * @param descriptor
   *          for this message
   * @param args
   *          arguments for replacing specifiers in the message's format
   *          string
   */
  Message(MessageDescriptor descriptor, Object... args)
  {
    this.descriptor = descriptor;
    this.args = args;
  }
  /**
   * Compares this object with the specified object for order. Returns a
   * negative integer, zero, or a positive integer as this object is
   * less than, equal to, or greater than the specified object.
   *
   * @param o
   *          the object to be compared.
   * @return a negative integer, zero, or a positive integer as this
   *         object is less than, equal to, or greater than the
   *         specified object.
   */
  public int compareTo(Message o)
  {
    return toString().compareTo(o.toString());
  }
  /**
   * Indicates whether some other message is "equal to" this one.
   * Messages are considered equal if their string representation in the
   * default locale are equal.
   *
   * @param o
   *          the reference object with which to compare.
   * @return <code>true</code> if this object is the same as the obj
   *         argument; <code>false</code> otherwise.
   * @see #hashCode()
   * @see java.util.Hashtable
   */
  public boolean equals(Object o)
  {
    if (this == o) return true;
    if (o == null || getClass() != o.getClass()) return false;
    Message message = (Message) o;
    return toString().equals(message.toString());
  }
  /**
   * Returns a hash code value for the object.
   *
   * @return a hash code value for this object.
   * @see java.lang.Object#equals(java.lang.Object)
   * @see java.util.Hashtable
   */
  public int hashCode()
  {
    int result;
    result = 31 * toString().hashCode();
    return result;
  }
  // TODO: remove this code once the JDK issue referenced in 3077 is
  // closed.
  /**
   * Returns whether we are running post 1.5 on AIX or not.
   *
   * @return <CODE>true</CODE> if we are running post 1.5 on AIX and
   *         <CODE>false</CODE> otherwise.
   */
  private boolean isAIXPost5()
  {
    boolean isJDK15 = false;
    try
    {
      String javaRelease = System.getProperty("java.version");
      isJDK15 = javaRelease.startsWith("1.5");
    }
    catch (Throwable t)
    {
      System.err.println("Cannot get the java version: " + t);
    }
    boolean isAIX = "aix".equalsIgnoreCase(System
        .getProperty("os.name"));
    return !isJDK15 && isAIX;
  }
}
sdk/src/com/sun/opends/sdk/util/MessageBuilder.java
New file
@@ -0,0 +1,456 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2007-2009 Sun Microsystems, Inc.
 */
package com.sun.opends.sdk.util;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
import java.util.Locale;
;
/**
 * A builder used specifically for messages. As messages are appended
 * they are translated to their string representation for storage using
 * the locale specified in the constructor. Note that before you use
 * this class you should consider whether it is appropriate. In general
 * composing messages by appending message to each other may not produce
 * a message that is formatted appropriately for all locales. It is
 * usually better to create messages by composition. In other words you
 * should create a base message that contains one or more string
 * argument specifiers (%s) and define other message objects to use as
 * replacement variables. In this way language translators have a change
 * to reformat the message for a particular locale if necessary.
 */
public final class MessageBuilder implements Appendable, CharSequence,
    Serializable
{
  private static final long serialVersionUID = -3292823563904285315L;
  /** Used internally to store appended messages. */
  private final StringBuilder sb = new StringBuilder();
  /** Used internally to store appended messages. */
  private final List<Message> messages = new LinkedList<Message>();
  /** Used to render the string representation of appended messages. */
  private final Locale locale;
  /**
   * Constructs an instance that will build messages in the default
   * locale.
   */
  public MessageBuilder()
  {
    this(Locale.getDefault());
  }
  /**
   * Constructs an instance that will build messages in the default
   * locale having an initial message.
   *
   * @param message
   *          initial message
   */
  public MessageBuilder(Message message)
  {
    this(Locale.getDefault());
    append(message);
  }
  /**
   * Constructs an instance that will build messages in the default
   * locale having an initial message.
   *
   * @param message
   *          initial message
   */
  public MessageBuilder(String message)
  {
    this(Locale.getDefault());
    append(message);
  }
  /**
   * Constructs an instance from another <code>MessageBuilder</code>.
   *
   * @param mb
   *          from which to construct a new message builder
   */
  public MessageBuilder(MessageBuilder mb)
  {
    for (Message msg : mb.messages)
    {
      this.messages.add(msg);
    }
    this.sb.append(sb);
    this.locale = mb.locale;
  }
  /**
   * Constructs an instance that will build messages in a specified
   * locale.
   *
   * @param locale
   *          used for translating appended messages
   */
  public MessageBuilder(Locale locale)
  {
    this.locale = locale;
  }
  /**
   * Append a message to this builder. The string representation of the
   * locale specifed in the constructor will be stored in this builder.
   *
   * @param message
   *          to be appended
   * @return reference to this builder
   */
  public MessageBuilder append(Message message)
  {
    if (message != null)
    {
      sb.append(message.toString(locale));
      messages.add(message);
    }
    return this;
  }
  /**
   * Append an integer to this builder.
   *
   * @param number
   *          to append
   * @return reference to this builder
   */
  public MessageBuilder append(int number)
  {
    append(String.valueOf(number));
    return this;
  }
  /**
   * Append an object to this builder.
   *
   * @param object
   *          to append
   * @return reference to this builder
   */
  public MessageBuilder append(Object object)
  {
    if (object != null)
    {
      append(String.valueOf(object));
    }
    return this;
  }
  /**
   * Append a string to this builder.
   *
   * @param cs
   *          to append
   * @return reference to this builder
   */
  public MessageBuilder append(CharSequence cs)
  {
    if (cs != null)
    {
      sb.append(cs);
      if (cs instanceof Message)
      {
        messages.add((Message) cs);
      }
      else
      {
        messages.add(Message.raw(cs));
      }
    }
    return this;
  }
  /**
   * Appends a subsequence of the specified character sequence to this
   * <tt>Appendable</tt>.
   * <p>
   * An invocation of this method of the form <tt>out.append(csq, start,
   * end)</tt> when <tt>csq</tt> is not <tt>null</tt>, behaves in
   * exactly the same way as the invocation
   *
   * <pre>
   * out.append(csq.subSequence(start, end))
   * </pre>
   *
   * @param csq
   *          The character sequence from which a subsequence will be
   *          appended. If <tt>csq</tt> is <tt>null</tt>, then
   *          characters will be appended as if <tt>csq</tt> contained
   *          the four characters <tt>"null"</tt>.
   * @param start
   *          The index of the first character in the subsequence
   * @param end
   *          The index of the character following the last character in
   *          the subsequence
   * @return A reference to this <tt>Appendable</tt>
   * @throws IndexOutOfBoundsException
   *           If <tt>start</tt> or <tt>end</tt> are negative,
   *           <tt>start</tt> is greater than <tt>end</tt>, or
   *           <tt>end</tt> is greater than <tt>csq.length()</tt>
   */
  public MessageBuilder append(CharSequence csq, int start, int end)
      throws IndexOutOfBoundsException
  {
    return append(csq.subSequence(start, end));
  }
  /**
   * Appends the specified character to this <tt>Appendable</tt>.
   *
   * @param c
   *          The character to append
   * @return A reference to this <tt>Appendable</tt>
   */
  public MessageBuilder append(char c)
  {
    return append(String.valueOf(c));
  }
  /**
   * Returns a string containing the characters in this sequence in the
   * same order as this sequence. The length of the string will be the
   * length of this sequence.
   *
   * @return a string consisting of exactly this sequence of characters
   */
  public String toString()
  {
    return sb.toString();
  }
  /**
   * Returns a string representation of the appended content in the
   * specific locale. Only <code>Message</code>s appended to this
   * builder are rendered in the requested locale. Raw strings appended
   * to this buffer are not translated to different locale.
   *
   * @param locale
   *          requested
   * @return String representation
   */
  public String toString(Locale locale)
  {
    StringBuilder sb = new StringBuilder();
    for (Message m : messages)
    {
      sb.append(m.toString(locale));
    }
    return sb.toString();
  }
  /**
   * Returns a raw message representation of the appended content.
   *
   * @return Message raw message representing builder content
   */
  public Message toMessage()
  {
    if (messages.isEmpty())
    {
      return Message.EMPTY;
    }
    StringBuffer fmtString = new StringBuffer();
    for (int i = 0; i < messages.size(); i++)
    {
      fmtString.append("%s");
    }
    return Message.raw(fmtString, messages.toArray());
  }
  /**
   * Returns the length of the string representation of this builder
   * using the default locale.
   *
   * @return the number of <code>char</code>s in this message
   */
  public int length()
  {
    return length(Locale.getDefault());
  }
  /**
   * Returns the <code>char</code> value at the specified index of the
   * string representation of this builder using the default locale.
   *
   * @param index
   *          the index of the <code>char</code> value to be returned
   * @return the specified <code>char</code> value
   * @throws IndexOutOfBoundsException
   *           if the <tt>index</tt> argument is negative or not less
   *           than <tt>length()</tt>
   */
  public char charAt(int index) throws IndexOutOfBoundsException
  {
    return charAt(Locale.getDefault(), index);
  }
  /**
   * Returns a new <code>CharSequence</code> that is a subsequence of
   * the string representation of this builder using the default locale.
   * The subsequence starts with the <code>char</code> value at the
   * specified index and ends with the <code>char</code> value at index
   * <tt>end - 1</tt>. The length (in <code>char</code>s) of the
   * returned sequence is <tt>end - start</tt>, so if
   * <tt>start == end</tt> then an empty sequence is returned.
   *
   * @param start
   *          the start index, inclusive
   * @param end
   *          the end index, exclusive
   * @return the specified subsequence
   * @throws IndexOutOfBoundsException
   *           if <tt>start</tt> or <tt>end</tt> are negative, if
   *           <tt>end</tt> is greater than <tt>length()</tt>, or if
   *           <tt>start</tt> is greater than <tt>end</tt>
   */
  public CharSequence subSequence(int start, int end)
      throws IndexOutOfBoundsException
  {
    return subSequence(Locale.getDefault(), start, end);
  }
  /**
   * Returns the length of the string representation of this builder
   * using a specific locale.
   *
   * @param locale
   *          for which the rendering of this message will be used in
   *          determining the length
   * @return the number of <code>char</code>s in this message
   */
  public int length(Locale locale)
  {
    return toString(locale).length();
  }
  /**
   * Returns the <code>char</code> value at the specified index of the
   * string representation of this builder using a specific locale.
   *
   * @param locale
   *          for which the rendering of this message will be used in
   *          determining the character
   * @param index
   *          the index of the <code>char</code> value to be returned
   * @return the specified <code>char</code> value
   * @throws IndexOutOfBoundsException
   *           if the <tt>index</tt> argument is negative or not less
   *           than <tt>length()</tt>
   */
  public char charAt(Locale locale, int index)
      throws IndexOutOfBoundsException
  {
    return toString(locale).charAt(index);
  }
  /**
   * Returns a new <code>CharSequence</code> that is a subsequence of
   * the string representation of this builder using a specific locale.
   * The subsequence starts with the <code>char</code> value at the
   * specified index and ends with the <code>char</code> value at index
   * <tt>end - 1</tt>. The length (in <code>char</code>s) of the
   * returned sequence is <tt>end - start</tt>, so if
   * <tt>start == end</tt> then an empty sequence is returned.
   *
   * @param locale
   *          for which the rendering of this message will be used in
   *          determining the character
   * @param start
   *          the start index, inclusive
   * @param end
   *          the end index, exclusive
   * @return the specified subsequence
   * @throws IndexOutOfBoundsException
   *           if <tt>start</tt> or <tt>end</tt> are negative, if
   *           <tt>end</tt> is greater than <tt>length()</tt>, or if
   *           <tt>start</tt> is greater than <tt>end</tt>
   */
  public CharSequence subSequence(Locale locale, int start, int end)
      throws IndexOutOfBoundsException
  {
    return toString(locale).subSequence(start, end);
  }
}
sdk/src/com/sun/opends/sdk/util/MessageDescriptor.java
New file
@@ -0,0 +1,1272 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2008 Sun Microsystems, Inc.
 */
package com.sun.opends.sdk.util;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
import java.util.ResourceBundle;
/**
 * Base class for all Message descriptor classes.
 */
public abstract class MessageDescriptor
{
  /**
   * ID for messages that don't have a real ID.
   */
  public static final int NULL_ID = -1;
  /**
   * Subclass for creating messages with no arguments.
   */
  static public final class Arg0 extends MessageDescriptor
  {
    /**
     * Cached copy of the message created by this descriptor. We can get
     * away with this for the zero argument message because it is
     * immutable.
     */
    private Message message;
    private boolean requiresFormat;
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg0(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
      message = new Message(this);
      requiresFormat = containsArgumentLiterals(getFormatString());
    }
    /**
     * Creates a message.
     *
     * @return Message object
     */
    public Message get()
    {
      return message;
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return requiresFormat;
    }
  }
  /**
   * Subclass for creating messages with one argument.
   *
   * @param <T1>
   *          The type of the first message argument.
   */
  static public final class Arg1<T1> extends MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg1(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     */
    public Message get(T1 a1)
    {
      return new Message(this, a1);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with two arguments.
   *
   * @param <T1>
   *          The type of the first message argument.
   * @param <T2>
   *          The type of the second message argument.
   */
  static public final class Arg2<T1, T2> extends MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg2(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     * @param a2
     *          message argument
     */
    public Message get(T1 a1, T2 a2)
    {
      return new Message(this, a1, a2);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with three arguments.
   *
   * @param <T1>
   *          The type of the first message argument.
   * @param <T2>
   *          The type of the second message argument.
   * @param <T3>
   *          The type of the third message argument.
   */
  static public final class Arg3<T1, T2, T3> extends MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg3(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     * @param a2
     *          message argument
     * @param a3
     *          message argument
     */
    public Message get(T1 a1, T2 a2, T3 a3)
    {
      return new Message(this, a1, a2, a3);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with four arguments.
   *
   * @param <T1>
   *          The type of the first message argument.
   * @param <T2>
   *          The type of the second message argument.
   * @param <T3>
   *          The type of the third message argument.
   * @param <T4>
   *          The type of the fourth message argument.
   */
  static public final class Arg4<T1, T2, T3, T4> extends
      MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg4(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     * @param a2
     *          message argument
     * @param a3
     *          message argument
     * @param a4
     *          message argument
     */
    public Message get(T1 a1, T2 a2, T3 a3, T4 a4)
    {
      return new Message(this, a1, a2, a3, a4);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with five arguments.
   *
   * @param <T1>
   *          The type of the first message argument.
   * @param <T2>
   *          The type of the second message argument.
   * @param <T3>
   *          The type of the third message argument.
   * @param <T4>
   *          The type of the fourth message argument.
   * @param <T5>
   *          The type of the fifth message argument.
   */
  static public final class Arg5<T1, T2, T3, T4, T5> extends
      MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg5(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     * @param a2
     *          message argument
     * @param a3
     *          message argument
     * @param a4
     *          message argument
     * @param a5
     *          message argument
     */
    public Message get(T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
    {
      return new Message(this, a1, a2, a3, a4, a5);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with six arguments.
   *
   * @param <T1>
   *          The type of the first message argument.
   * @param <T2>
   *          The type of the second message argument.
   * @param <T3>
   *          The type of the third message argument.
   * @param <T4>
   *          The type of the fourth message argument.
   * @param <T5>
   *          The type of the fifth message argument.
   * @param <T6>
   *          The type of the sixth message argument.
   */
  static public final class Arg6<T1, T2, T3, T4, T5, T6> extends
      MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg6(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     * @param a2
     *          message argument
     * @param a3
     *          message argument
     * @param a4
     *          message argument
     * @param a5
     *          message argument
     * @param a6
     *          message argument
     */
    public Message get(T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6)
    {
      return new Message(this, a1, a2, a3, a4, a5, a6);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with seven arguments.
   *
   * @param <T1>
   *          The type of the first message argument.
   * @param <T2>
   *          The type of the second message argument.
   * @param <T3>
   *          The type of the third message argument.
   * @param <T4>
   *          The type of the fourth message argument.
   * @param <T5>
   *          The type of the fifth message argument.
   * @param <T6>
   *          The type of the sixth message argument.
   * @param <T7>
   *          The type of the seventh message argument.
   */
  static public final class Arg7<T1, T2, T3, T4, T5, T6, T7> extends
      MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg7(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     * @param a2
     *          message argument
     * @param a3
     *          message argument
     * @param a4
     *          message argument
     * @param a5
     *          message argument
     * @param a6
     *          message argument
     * @param a7
     *          message argument
     */
    public Message get(T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7)
    {
      return new Message(this, a1, a2, a3, a4, a5, a6, a7);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with eight arguments.
   *
   * @param <T1>
   *          The type of the first message argument.
   * @param <T2>
   *          The type of the second message argument.
   * @param <T3>
   *          The type of the third message argument.
   * @param <T4>
   *          The type of the fourth message argument.
   * @param <T5>
   *          The type of the fifth message argument.
   * @param <T6>
   *          The type of the sixth message argument.
   * @param <T7>
   *          The type of the seventh message argument.
   * @param <T8>
   *          The type of the eighth message argument.
   */
  static public final class Arg8<T1, T2, T3, T4, T5, T6, T7, T8>
      extends MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg8(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     * @param a2
     *          message argument
     * @param a3
     *          message argument
     * @param a4
     *          message argument
     * @param a5
     *          message argument
     * @param a6
     *          message argument
     * @param a7
     *          message argument
     * @param a8
     *          message argument
     */
    public Message get(T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7,
        T8 a8)
    {
      return new Message(this, a1, a2, a3, a4, a5, a6, a7, a8);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with nine arguments.
   *
   * @param <T1>
   *          The type of the first message argument.
   * @param <T2>
   *          The type of the second message argument.
   * @param <T3>
   *          The type of the third message argument.
   * @param <T4>
   *          The type of the fourth message argument.
   * @param <T5>
   *          The type of the fifth message argument.
   * @param <T6>
   *          The type of the sixth message argument.
   * @param <T7>
   *          The type of the seventh message argument.
   * @param <T8>
   *          The type of the eighth message argument.
   * @param <T9>
   *          The type of the ninth message argument.
   */
  static public final class Arg9<T1, T2, T3, T4, T5, T6, T7, T8, T9>
      extends MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg9(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     * @param a2
     *          message argument
     * @param a3
     *          message argument
     * @param a4
     *          message argument
     * @param a5
     *          message argument
     * @param a6
     *          message argument
     * @param a7
     *          message argument
     * @param a8
     *          message argument
     * @param a9
     *          message argument
     */
    public Message get(T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7,
        T8 a8, T9 a9)
    {
      return new Message(this, a1, a2, a3, a4, a5, a6, a7, a8, a9);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with ten arguments.
   *
   * @param <T1>
   *          The type of the first message argument.
   * @param <T2>
   *          The type of the second message argument.
   * @param <T3>
   *          The type of the third message argument.
   * @param <T4>
   *          The type of the fourth message argument.
   * @param <T5>
   *          The type of the fifth message argument.
   * @param <T6>
   *          The type of the sixth message argument.
   * @param <T7>
   *          The type of the seventh message argument.
   * @param <T8>
   *          The type of the eighth message argument.
   * @param <T9>
   *          The type of the ninth message argument.
   * @param <T10>
   *          The type of the tenth message argument.
   */
  static public final class Arg10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>
      extends MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg10(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     * @param a2
     *          message argument
     * @param a3
     *          message argument
     * @param a4
     *          message argument
     * @param a5
     *          message argument
     * @param a6
     *          message argument
     * @param a7
     *          message argument
     * @param a8
     *          message argument
     * @param a9
     *          message argument
     * @param a10
     *          message argument
     */
    public Message get(T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7,
        T8 a8, T9 a9, T10 a10)
    {
      return new Message(this, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with eleven arguments.
   *
   * @param <T1>
   *          The type of the first message argument.
   * @param <T2>
   *          The type of the second message argument.
   * @param <T3>
   *          The type of the third message argument.
   * @param <T4>
   *          The type of the fourth message argument.
   * @param <T5>
   *          The type of the fifth message argument.
   * @param <T6>
   *          The type of the sixth message argument.
   * @param <T7>
   *          The type of the seventh message argument.
   * @param <T8>
   *          The type of the eighth message argument.
   * @param <T9>
   *          The type of the ninth message argument.
   * @param <T10>
   *          The type of the tenth message argument.
   * @param <T11>
   *          The type of the eleventh message argument.
   */
  static public final class Arg11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>
      extends MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public Arg11(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param a1
     *          message argument
     * @param a2
     *          message argument
     * @param a3
     *          message argument
     * @param a4
     *          message argument
     * @param a5
     *          message argument
     * @param a6
     *          message argument
     * @param a7
     *          message argument
     * @param a8
     *          message argument
     * @param a9
     *          message argument
     * @param a10
     *          message argument
     * @param a11
     *          message argument
     */
    public Message get(T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7,
        T8 a8, T9 a9, T10 a10, T11 a11)
    {
      return new Message(this, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,
          a11);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * Subclass for creating messages with an any number of arguments. In
   * general this class should be used when a message needs to be
   * defined with more arguments that can be handled with the current
   * number of subclasses
   */
  static public final class ArgN extends MessageDescriptor
  {
    /**
     * Creates a parameterized instance.
     *
     * @param rbBase
     *          base of the backing resource bundle
     * @param key
     *          for accessing the format string from the resource bundle
     * @param ordinal
     *          of created messages
     * @param classLoader
     *          the class loader to be used to get the ResourceBundle
     */
    public ArgN(String rbBase, String key, int ordinal,
        ClassLoader classLoader)
    {
      super(rbBase, key, ordinal, classLoader);
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param args
     *          message arguments
     */
    public Message get(Object... args)
    {
      return new Message(this, args);
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return true;
    }
  }
  /**
   * A descriptor for creating a raw message from a <code>String</code>.
   * In general this descriptor should NOT be used internally. OpenDS
   * plugins may want to use the mechanism to create messages without
   * storing their strings in resource bundles.
   */
  static final class Raw extends MessageDescriptor
  {
    private String formatString;
    private boolean requiresFormatter;
    /**
     * Creates a parameterized instance.
     *
     * @param formatString
     *          for created messages
     */
    Raw(CharSequence formatString)
    {
      super(null, null, null, null);
      this.formatString = formatString != null ? formatString
          .toString() : "";
      this.requiresFormatter = this.formatString.matches(".*%.*");
    }
    /**
     * Creates a message with arguments that will replace format
     * specifiers in the assocated format string when the message is
     * rendered to string representation.
     *
     * @return Message object
     * @param args
     *          message arguments
     */
    public Message get(Object... args)
    {
      return new Message(this, args);
    }
    /**
     * Overridden in order to bypass the resource bundle plumbing and
     * return the format string directly.
     *
     * @param locale
     *          ignored
     * @return format string
     */
    @Override
    String getFormatString(Locale locale)
    {
      return this.formatString;
    }
    /**
     * {@inheritDoc}
     */
    boolean requiresFormatter()
    {
      return this.requiresFormatter;
    }
  }
  /** String for accessing backing resource bundle. */
  private final String rbBase;
  /** Used for accessing format string from the resource bundle. */
  private final String key;
  /**
   * The value that makes a message unique among other messages having
   * the same severity and category. May be null for raw messages.
   */
  private final Integer ordinal;
  /**
   * The class loader to be used to retrieve the ResourceBundle. If null
   * the default class loader will be used.
   */
  private final ClassLoader classLoader;
  private final Map<Locale, String> formatStrMap = new HashMap<Locale, String>();
  /**
   * Obtains the ordinal value for this message which makes messages
   * unique among messages defined with the same category and severity.
   *
   * @return int ordinal value
   */
  public final int getOrdinal()
  {
    if (this.ordinal == null)
      return 0;
    else
      return this.ordinal;
  }
  /**
   * Returns the key for accessing the message template in a resource
   * bundle. May be null for raw messages.
   *
   * @return key of this message
   */
  public final String getKey()
  {
    return this.key;
  }
  /**
   * Obtains the resource bundle base string used to access the resource
   * bundle containing created message's format string. May be null for
   * raw messages.
   *
   * @return string base
   */
  public final String getBase()
  {
    return this.rbBase;
  }
  /**
   * Indicates whether or not this descriptor format string should be
   * processed by Formatter during string rendering.
   *
   * @return boolean where true means Formatter should be used; false
   *         otherwise
   * @see java.util.Formatter
   */
  abstract boolean requiresFormatter();
  /**
   * Obtains the format string for constructing the string value of this
   * message according to the default locale.
   *
   * @return format string
   */
  final String getFormatString()
  {
    return getFormatString(Locale.getDefault());
  }
  /**
   * Obtains the format string for constructing the string value of this
   * message according to the requested locale.
   *
   * @param locale
   *          for the returned format string
   * @return format string
   */
  String getFormatString(Locale locale)
  {
    String fmtStr = formatStrMap.get(locale);
    if (fmtStr == null)
    {
      ResourceBundle bundle = getBundle(locale);
      fmtStr = bundle.getString(this.key);
      formatStrMap.put(locale, fmtStr);
    }
    return fmtStr;
  }
  /**
   * Indicates whether or not formatting should be applied to the given
   * format string. Note that a format string might have literal
   * specifiers (%% or %n for example) that require formatting but are
   * not replaced by arguments.
   *
   * @param s
   *          candiate for formatting
   * @return boolean where true indicates that the format string
   *         requires formatting
   */
  protected final boolean containsArgumentLiterals(String s)
  {
    return s.matches(".*%[n|%].*"); // match Formatter literals
  }
  private ResourceBundle getBundle(Locale locale)
  {
    if (locale == null) locale = Locale.getDefault();
    if (classLoader == null)
    {
      return ResourceBundle.getBundle(this.rbBase, locale);
    }
    else
    {
      return ResourceBundle.getBundle(this.rbBase, locale, classLoader);
    }
  }
  /**
   * Creates a parameterized message descriptor.
   *
   * @param rbBase
   *          string for accessing the underlying message bundle
   * @param key
   *          for accessing the format string from the message bundle
   * @param ordinal
   *          of any created message
   * @param classLoader
   *          the class loader to be used to get the ResourceBundle
   */
  private MessageDescriptor(String rbBase, String key, Integer ordinal,
      ClassLoader classLoader)
  {
    this.rbBase = rbBase;
    this.key = key;
    this.ordinal = ordinal;
    this.classLoader = classLoader;
  }
}
sdk/src/com/sun/opends/sdk/util/messages.properties
New file
Diff too large
sdk/src/com/sun/opends/sdk/util/messages_de.properties
New file
@@ -0,0 +1,531 @@
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#      Copyright 2009 Sun Microsystems, Inc.
#
# Global directives
#
global.ordinal=-1
#
# Format string definitions
#
# Keys must be formatted as follows:
#
# [DESCRIPTION]
#
# where:
#
# DESCRIPTION is an upper case string providing a hint as to the context of
# the message in upper case with the underscore ('_') character serving as
# word separator
#
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_APPROXIMATE_MATCHING_RULE_1=Unable to retrieve \
### approximate matching rule %s used as the default for the %s attribute syntax. \
### Approximate matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_EQUALITY_MATCHING_RULE_2=Unable to retrieve \
### equality matching rule %s used as the default for the %s attribute syntax. \
### Equality matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_ORDERING_MATCHING_RULE_3=Unable to retrieve \
### ordering matching rule %s used as the default for the %s attribute syntax. \
### Ordering matches will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_SUBSTRING_MATCHING_RULE_4=Unable to retrieve \
### substring matching rule %s used as the default for the %s attribute syntax. \
### Substring matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN_5=The provided value "%s" is not \
### allowed for attributes with a Boolean syntax.  The only allowed values are \
### 'TRUE' and 'FALSE'
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT_6=The provided value "%s" is too \
### short to be a valid bit string.  A bit string must be a series of binary \
### digits surrounded by single quotes and followed by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED_7=The provided value "%s" is not \
### a valid bit string because it is not surrounded by single quotes and followed \
### by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT_8=The provided value "%s" is \
### not a valid bit string because '%s' is not a valid binary digit
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_INVALID_LENGTH_9=Der angegebene Wert "%s" ist keine g\u00fcltige L\u00e4nderzeichenkette, da die L\u00e4nge nicht exakt zwei Zeichen betr\u00e4gt
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_NOT_PRINTABLE_10=Der angegebene Wert "%s" ist keine g\u00fcltige L\u00e4nderzeichenkette, da er ein oder mehrere nicht druckbare Zeichen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_NO_ELEMENTS_11=Der angegebene Wert "%s" ist keine g\u00fcltige Liefermethode, da er keine Elemente enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_INVALID_ELEMENT_12=Der angegebene Wert "%s" ist keine g\u00fcltige Liefermethode, da "%s" keine g\u00fcltige Methode ist
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_TOO_SHORT_13=The provided value "%s" \
### is too short to be a valid generalized time value
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_YEAR_14=The provided value \
### "%s" is not a valid generalized time value because the '%s' character is not \
### allowed in the century or year specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MONTH_15=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid month \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_DAY_16=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid day \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_HOUR_17=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid hour \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MINUTE_18=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid minute \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SECOND_19=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid second \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SUBSECOND_20=The provided \
### value "%s" is not a valid generalized time value because the sub-second \
### component is not valid (between 1 and 3 numeric digits)
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_LONG_SUBSECOND_21=The provided value \
### "%s" is not a valid generalized time value because the sub-second value may \
### not contain more than three digits
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_OFFSET_22=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid GMT \
### offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_CHAR_23=The provided value \
### "%s" is not a valid generalized time value because it contains an invalid \
### character '%s' at position %d
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_CANNOT_PARSE_24=The provided value \
### "%s" could not be parsed as a valid generalized time:  %s
MILD_ERR_ATTR_SYNTAX_DN_INVALID_25=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden: %s
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_COMMA_26=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da das letzte nicht-Leerzeichen ein Komma oder Semikolon ist
MILD_ERR_ATTR_SYNTAX_DN_ATTR_START_WITH_DIGIT_27=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da die numerische Ziffer '%s' als erstes Zeichen in einem Attributnamen unzul\u00e4ssig ist
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_CHAR_28=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da das Zeichen '%c' an Position '%d' in einem Attributnamen unzul\u00e4ssig ist
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_UNDERSCORE_CHAR_29=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da das Unterstrich-Zeichen in einem Attributnamen unzul\u00e4ssig ist, au\u00dfer wenn die Konfigurationsoption %s aktiviert ist
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DASH_30=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da das Bindestrich-Zeichen als erstes Zeichen in einem Attributnamen unzul\u00e4ssig ist
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_UNDERSCORE_31=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da das Unterstrich-Zeichen als erstes Zeichen in einem Attributnamen unzul\u00e4ssig ist, selbst wenn die Konfigurationsoption %s aktiviert ist
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DIGIT_32=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da die Ziffer '%c' nicht als erstes Zeichen in einem Attributnamen zul\u00e4ssig ist, au\u00dfer wenn der Name als OID festgelegt oder die Konfigurationsoption %s aktiviert ist
MILD_ERR_ATTR_SYNTAX_DN_ATTR_NO_NAME_33=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da er einen RDN mit leerem Attributnamen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_PERIOD_34=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da der geparste Attributname %s einen Punkt enth\u00e4lt, der Name aber anscheinend kein g\u00fcltiger OID ist
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_ATTR_NAME_35=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da das letzte nicht-Leerzeichen Teil des Attributnamens '%s' ist
MILD_ERR_ATTR_SYNTAX_DN_NO_EQUAL_36=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da das n\u00e4chste nicht-Leerzeichen nach dem Attributnamen "%s" ein Gleichheitszeichen sein m\u00fcsste, stattdessen aber '%c' ist
MILD_ERR_ATTR_SYNTAX_DN_INVALID_CHAR_37=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da das Zeichen '%c' an Position %d unzul\u00e4ssig ist
MILD_ERR_ATTR_SYNTAX_DN_HEX_VALUE_TOO_SHORT_38=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da ein Attributwert zwar mit einem Rautezeichen (#) beginnt, diesem aber kein positives Vielfaches von zwei hexadezimalen Ziffern folgt
MILD_ERR_ATTR_SYNTAX_DN_INVALID_HEX_DIGIT_39=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da ein Attributwert zwar mit einem Rautezeichen (#) beginnt, aber auch das Zeichen %c enth\u00e4lt, welches keine g\u00fcltige hexadezimale Ziffer darstellt
MILD_ERR_ATTR_SYNTAX_DN_ATTR_VALUE_DECODE_FAILURE_40=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da ein unerwarteter Fehler beim Versuch aufgetreten ist, einen Attributwert von einem der RDN-Komponenten zu parsen: "%s"
MILD_ERR_ATTR_SYNTAX_DN_UNMATCHED_QUOTE_41=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da einer der RDN-Komponenten einen Wert mit Anf\u00fchrungszeichen enth\u00e4lt, bei dem das schlie\u00dfende Anf\u00fchrungszeichen fehlt
MILD_ERR_ATTR_SYNTAX_DN_ESCAPED_HEX_VALUE_INVALID_42=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name (DN) geparst werden, da einer der RDN-Komponenten einen Wert mit einer vereinzelten hexadezimalen Ziffer enth\u00e4lt, auf die keine zweite hexadezimale Ziffer folgt
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INITIAL_ZERO_43=The provided value "%s" could \
### not be parsed as a valid integer because the first digit may not be zero \
### unless it is the only digit
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_MISPLACED_DASH_44=The provided value "%s" \
### could not be parsed as a valid integer because the dash may only appear if it \
### is the first character of the value followed by one or more digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INVALID_CHARACTER_45=The provided value "%s" \
### could not be parsed as a valid integer because character '%c' at position %d \
### is not allowed in an integer value
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_EMPTY_VALUE_46=The provided value "%s" could \
### not be parsed as a valid integer because it did not contain any digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_DASH_NEEDS_VALUE_47=The provided value "%s" \
### could not be parsed as a valid integer because it contained only a dash not \
### followed by an integer value
MILD_ERR_ATTR_SYNTAX_OID_NO_VALUE_48=Der angegebene Wert kann nicht als g\u00fcltiger OID geparst werden, da er keine Zeichen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER_49=Der angegebene Wert "%s"kann nicht als g\u00fcltiger OID geparst werden, da er ein unzul\u00e4ssiges Zeichen an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS_50=Der angegebene Wert "%s" kann nicht als g\u00fcltiger OID geparst werden, da er zwei aufeinanderfolgende Punkte an oder bei Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD_51=Der angegebene Wert "%s" kann nicht als g\u00fcltiger OID geparst werden, da er mit einem Punkt endet
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE_52=Der angegebene Wert kann nicht als g\u00fcltige Attributtypbeschreibung geparst werden, da er leer ist oder nur Leerzeichen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_OPEN_PARENTHESIS_53=Der angegebene Wert "%s" kann nicht als Attributtypbeschreibung geparst werden, da eine \u00f6ffnende Klammer an Position %d erwartet, stattdessen aber das Zeichen '%s' gefunden wurde
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_TRUNCATED_VALUE_54=Der angegebene Wert "%s" kann nicht als Attributtypbeschreibung geparst werden, da das Ende des Werts erreicht wurde, obwohl der Directory-Server noch mehr Daten erwartet hat
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_DOUBLE_PERIOD_IN_NUMERIC_OID_55=Der angegebene Wert "%s" kann nicht als Attributtypbeschreibung geparst werden, da der numerische OID zwei aufeinanderfolgende Punkte an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_NUMERIC_OID_56=Der angegebene Wert "%s" kann nicht als Attributtypbeschreibung geparst werden, da der numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_STRING_OID_57=Der angegebene Wert "%s" kann nicht als Attributtypbeschreibung geparst werden, da der nicht-numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_58=Der angegebene Wert "%s" kann nicht als Attributtypbeschreibung geparst werden, da er das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_UNEXPECTED_CLOSE_PARENTHESIS_59=Der angegebene Wert "%s" kann nicht als Attributtypbeschreibung geparst werden, da er eine unerwartete schlie\u00dfende Klammer an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_60=Der angegebene Wert "%s" kann nicht als Attributtypbeschreibung geparst werden, da ein einfaches Anf\u00fchrungszeichen als erstes nicht-Leerzeichen nach Token %s erwartet, stattdessen aber das Zeichen %s gefunden wurde
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE_61=The definition for \
### the attribute type with OID %s declared a superior type with an OID of %s. \
### No attribute type with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR_62=The definition for \
### the attribute type with OID %s declared that approximate matching should be \
### performed using the matching rule "%s".  No such approximate matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR_63=The definition for \
### the attribute type with OID %s declared that equality matching should be \
### performed using the matching rule "%s".  No such equality matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR_64=The definition for \
### the attribute type with OID %s declared that ordering matching should be \
### performed using the matching rule "%s".  No such ordering matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR_65=The definition for \
### the attribute type with OID %s declared that substring matching should be \
### performed using the matching rule "%s".  No such substring matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SYNTAX_66=The definition for the \
### attribute type with OID %s declared that it should have a syntax with OID %s. \
### No such syntax is configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE_67=The definition \
### for the attribute type with OID %s declared that it should have an attribute \
### usage of %s.  This is an invalid usage
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_AT_POS_68=The provided value \
### "%s" could not be parsed as an attribute type description because a single \
### quote was expected at position %d but the character %s was found instead
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE_69=Der angegebene Wert kann nicht als g\u00fcltige Objektklassenbeschreibung geparst werden, da er leer ist oder nur Leerzeichen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS_70=Der angegebene Wert "%s" kann nicht als Objektklassenbeschreibung geparst werden, da eine \u00f6ffnende Klammer an Position %d erwartet, stattdessen aber das Zeichen '%s' gefunden wurde
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_TRUNCATED_VALUE_71=Der angegebene Wert "%s" kann nicht als Objektklassenbeschreibung geparst werden, da das Ende des Werts erreicht wurde, obwohl der Directory-Server noch mehr Daten erwartet hat
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_DOUBLE_PERIOD_IN_NUMERIC_OID_72=Der angegebene Wert "%s" kann nicht als Objektklassenbeschreibung geparst werden, da der numerische OID zwei aufeinanderfolgende Punkte an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_NUMERIC_OID_73=Der angegebene Wert "%s" kann nicht als Objektklassenbeschreibung geparst werden, da der numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_STRING_OID_74=Der angegebene Wert "%s" kann nicht als Objektklassenbeschreibung geparst werden, da der nicht-numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_75=Der angegebene Wert "%s" kann nicht als Objektklassenbeschreibung geparst werden, da er das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_UNEXPECTED_CLOSE_PARENTHESIS_76=Der angegebene Wert "%s" kann nicht als Objektklassenbeschreibung geparst werden, da er eine unerwartete schlie\u00dfende Klammer an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_77=Der angegebene Wert "%s" kann nicht als Objektklassenbeschreibung geparst werden, da ein einfaches Anf\u00fchrungszeichen als erstes nicht-Leerzeichen nach Token %s erwartet, stattdessen aber das Zeichen %s gefunden wurde
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS_78=The definition \
### for the objectclass with OID %s declared a superior objectclass with an OID \
### of %s.  No objectclass with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_AT_POS_79=The provided \
### value "%s" could not be parsed as an objectclass description because a single \
### quote was expected at position %d but the character %s was found instead
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR_80=The definition \
### for the objectclass with OID %s declared that it should include required \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR_81=The definition \
### for the objectclass with OID %s declared that it should include optional \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER_82=The provided value "%s" \
### cannot be parsed as a valid IA5 string because it contains an illegal \
### character "%s" that is not allowed in the IA5 (ASCII) character set
INFO_ATTR_SYNTAX_TELEPHONE_DESCRIPTION_STRICT_MODE_83=Gibt an, ob die Telefonnummer-Attributsyntax einen Strict-Modus verwenden soll, bei dem nur Werte im ITU-T E.123-Format zul\u00e4ssig sind.  Wenn dieser aktiviert ist, werden alle anderen Werte, die nicht diesem Format entsprechen, zur\u00fcckgewiesen.  Wenn dieser deaktiviert ist, werden allen anderen Werte akzeptiert, es werden aber nur die Ziffern bei der \u00dcbereinstimmung ber\u00fccksichtigt
###SEVERE_WARN_ATTR_SYNTAX_TELEPHONE_CANNOT_DETERMINE_STRICT_MODE_84=An error \
### occurred while trying to retrieve attribute \
### ds-cfg-strict-format from configuration entry %s:  %s.  The \
### Directory Server will not enforce strict compliance to the ITU-T E.123 format \
### for telephone number values
MILD_ERR_ATTR_SYNTAX_TELEPHONE_EMPTY_85=Der angegebene Wert ist keine g\u00fcltige Telefonnummer, da er leer oder Null ist
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_PLUS_86=Der angegebene Wert "%s" ist keine g\u00fcltige Telefonnummer, da die strikte Telefonnummerpr\u00fcfung aktiviert ist und der Wert nicht in \u00dcbereinstimmung mit der ITU-T E.123-Spezifikation mit einem Pluszeichen beginnt
MILD_ERR_ATTR_SYNTAX_TELEPHONE_ILLEGAL_CHAR_87=Der angegebene Wert "%s" ist keine g\u00fcltige Telefonnummer, da die strikte Telefonnummerpr\u00fcfung aktiviert ist und das Zeichen %s an Position %d gem\u00e4\u00df der ITU-T E.123-Spezifikation unzul\u00e4ssig ist
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_DIGITS_88=Der angegebene Wert "%s" ist keine g\u00fcltige Telefonnummer, da er keine numerischen Ziffern enth\u00e4lt
INFO_ATTR_SYNTAX_TELEPHONE_UPDATED_STRICT_MODE_89=Der Wert des Konfigurationsattributs ds-cfg-strict-format, der angibt ob die strikte Telefonnummer-Syntaxpr\u00fcfung verwendet wird, wurde aktualisiert auf %s in Konfigurationseintrag %s
###SEVERE_WARN_ATTR_SYNTAX_NUMERIC_STRING_ILLEGAL_CHAR_90=The provided value \
### "%s" is not a valid numeric string because it contained character %s at \
### position %d that was neither a digit nor a space
MILD_ERR_ATTR_SYNTAX_NUMERIC_STRING_EMPTY_VALUE_91=Der angegebene Wert ist keine g\u00fcltige numerische Zeichenkette, da er keine Zeichen enth\u00e4lt.  Ein numerischer Zeichenkettenwert muss mindestens eine numerische Ziffer oder ein Leerzeichen enthalten
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE_92=Der angegebene Wert kann nicht als g\u00fcltige Attributsyntaxbeschreibung geparst werden, da er leer ist oder nur Leerzeichen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_OPEN_PARENTHESIS_93=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da eine \u00f6ffnende Klammer an Position %d erwartet, stattdessen aber das Zeichen '%s' gefunden wurde
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TRUNCATED_VALUE_94=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da das Ende des Werts erreicht wurde, obwohl der Directory-Server noch mehr Daten erwartet hat
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_DOUBLE_PERIOD_IN_NUMERIC_OID_95=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da der numerische OID zwei aufeinanderfolgende Punkte an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_NUMERIC_OID_96=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da der numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_STRING_OID_97=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da der nicht-numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_UNEXPECTED_CLOSE_PARENTHESIS_98=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da er eine unerwartete schlie\u00dfende Klammer an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_TOKEN_99=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da ein unerwarteter Fehler aufgetreten ist beim Versuch, den Token "DESC" aus der Zeichenkette an oder bei Position %d zu lesen: %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TOKEN_NOT_DESC_100=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da der Token  "DESC" erwartet, stattdessen aber die Zeichenkette "%s" gefunden wurde
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_VALUE_101=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da ein unerwarteter Fehler aufgetreten ist beim Versuch, den Wert des Token "DESC" aus der Zeichenkette an oder bei Position %d zu lesen: %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_CLOSE_PARENTHESIS_102=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da eine schlie\u00dfende Klammer an Position %d erwartet, stattdessen aber das Zeichen '%s' gefunden wurde
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_AFTER_CLOSE_103=Der angegebene Wert "%s" kann nicht als Attributsyntaxbeschreibung geparst werden, da das unzul\u00e4ssige Zeichen %s an Position %d hinter der schlie\u00dfenden Klammer gefunden wurde
###SEVERE_WARN_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_QUOTE_AT_POS_104=The provided \
### value "%s" could not be parsed as an attribute syntax description because a \
### single quote was expected at position %d but the character %s was found \
### instead
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_EMPTY_VALUE_105=The provided value \
### could not be parsed as a printable string because it was null or empty.  A \
### printable string must contain at least one character
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_ILLEGAL_CHARACTER_106=The provided \
### value "%s" could not be parsed as a printable string because it contained an \
### invalid character %s at position %d
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_ONLY_WILDCARD_107=The provided value "*" \
### could not be parsed as a substring assertion because it consists only of a \
### wildcard character and zero-length substrings are not allowed
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS_108=The provided \
### value "%s" could not be parsed as a substring assertion because it contains \
### consecutive wildcard characters at position %d and zero-length substrings are \
### not allowed
MILD_ERR_ATTR_SYNTAX_UTC_TIME_TOO_SHORT_109=Der angegebene Wert %s ist zu kurz, um ein g\u00fcltiger UTC-Zeitwert zu sein
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_YEAR_110=Der angegebene Wert %s ist kein g\u00fcltiger UTC-Zeitwert, da das Zeichen %s im Jahrhundert bzw. in der Jahresangabe unzul\u00e4ssig ist
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MONTH_111=Der angegebene Wert %s ist kein g\u00fcltiger UTC-Zeitwert, da %s keine g\u00fcltige Monatsangabe ist
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_DAY_112=Der angegebene Wert %s ist kein g\u00fcltiger UTC-Zeitwert, da %s keine g\u00fcltige Tagesangabe ist
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_HOUR_113=Der angegebene Wert %s ist kein g\u00fcltiger UTC-Zeitwert, da %s keine g\u00fcltige Stundenangabe ist
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MINUTE_114=Der angegebene Wert %s ist kein g\u00fcltiger UTC-Zeitwert, da %s keine g\u00fcltige Minutenangabe ist
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_CHAR_115=Der angegebene Wert %s ist kein g\u00fcltiger UTC-Zeitwert, da er das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_SECOND_116=Der angegebene Wert %s ist kein g\u00fcltiger UTC-Zeitwert, da %s keine g\u00fcltige Sekundenangabe ist
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_OFFSET_117=Der angegebene Wert %s ist kein g\u00fcltiger UTC-Zeitwert, da %s keine g\u00fcltiger GMT-Offset ist
MILD_ERR_ATTR_SYNTAX_UTC_TIME_CANNOT_PARSE_118=Der angegebene Wert %s kann nicht als g\u00fcltige UTC-Zeit geparst werden: %s
MILD_ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE_119=Der angegebene Wert kann nicht als g\u00fcltige DIT-Inhaltsregelbeschreibung geparst werden, da er leer ist oder nur Leerzeichen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS_120=Der angegebene Wert "%s" kann nicht als DIT-Inhaltsregelbeschreibung geparst werden, da eine \u00f6ffnende Klammer an Position %d erwartet, stattdessen aber das Zeichen '%s' gefunden wurde
MILD_ERR_ATTR_SYNTAX_DCR_TRUNCATED_VALUE_121=Der angegebene Wert "%s" kann nicht als DIT-Inhaltsregelbeschreibung geparst werden, da das Ende des Werts erreicht wurde, obwohl der Directory-Server noch mehr Daten erwartet hat
MILD_ERR_ATTR_SYNTAX_DCR_DOUBLE_PERIOD_IN_NUMERIC_OID_122=Der angegebene Wert "%s" kann nicht als DIT-Inhaltsregelbeschreibung geparst werden, da der numerische OID zwei aufeinanderfolgende Punkte an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_NUMERIC_OID_123=Der angegebene Wert "%s" kann nicht als DIT-Inhaltsregelbeschreibung geparst werden, da der numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_STRING_OID_124=Der angegebene Wert "%s" kann nicht als DIT-Inhaltsregelbeschreibung geparst werden, da der nicht-numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DCR_UNEXPECTED_CLOSE_PARENTHESIS_125=Der angegebene Wert "%s" kann nicht als DIT-Inhaltsregelbeschreibung geparst werden, da er eine unerwartete schlie\u00dfende Klammer an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_126=Der angegebene Wert "%s" kann nicht als DIT-Inhaltsregelbeschreibung geparst werden, da er das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS_127=Die DIT-Inhaltsregel "%s" ist mit der strukturellen Objektklasse %s verkn\u00fcpft, die nicht im Serverschema definiert ist
MILD_ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL_128=Die DIT-Inhaltsregel "%s" ist mit der Objektklasse mit dem OID %s (%s) verkn\u00fcpft.  Diese Objektklasse ist zwar im Serverschema vorhanden, ist aber nicht als strukturelle Klasse, sondern als %s definiert
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS_129=Die DIT-Inhaltsregel "%s" ist mit der Hilfobjektklasse %s verkn\u00fcpft, die nicht im Serverschema definiert ist
MILD_ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY_130=Die DIT-Inhaltsregel "%s" ist mit der Hilfsobjektklasse %s verkn\u00fcpft. Diese Objektklasse ist zwar im Serverschema vorhanden, ist aber nicht als Hilfsklasse, sondern als %s definiert
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR_131=Die DIT-Inhaltsregel "%s" ist mit dem erforderlichen Attributtyp %s verkn\u00fcpft, der nicht im Serverschema definiert ist
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR_132=Die DIT-Inhaltsregel "%s" ist mit dem optionalen Attributtyp %s verkn\u00fcpft, der nicht im Serverschema definiert ist
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR_133=Die DIT-Inhaltsregel "%s" ist mit dem unzul\u00e4ssigen Attributtyp %s verkn\u00fcpft, der nicht im Serverschema definiert ist
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_QUOTE_AT_POS_134=Der angegebene Wert "%s" kann nicht als DIT-Inhaltsregelbeschreibung geparst werden, da ein einfaches Anf\u00fchrungszeichen an Position %d erwartet wurde. Stattdessen wurde das Zeichen %s gefunden
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE_135=Der angegebene Wert kann nicht als g\u00fcltige Namensformbeschreibung geparst werden, da er leer ist oder nur Leerzeichen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_OPEN_PARENTHESIS_136=Der angegebene Wert "%s" kann nicht als Namensformbeschreibung geparst werden, da eine \u00f6ffnende Klammer an Position %d erwartet, stattdessen aber das Zeichen '%c' gefunden wurde
MILD_ERR_ATTR_SYNTAX_NAME_FORM_TRUNCATED_VALUE_137=Der angegebene Wert "%s" kann nicht als Namensformbeschreibung geparst werden, da das Ende des Werts erreicht wurde, obwohl der Directory-Server noch mehr Daten erwartet hat
MILD_ERR_ATTR_SYNTAX_NAME_FORM_DOUBLE_PERIOD_IN_NUMERIC_OID_138=Der angegebene Wert "%s" kann nicht als Namensformbeschreibung geparst werden, da der numerische OID zwei aufeinanderfolgende Punkte an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_NUMERIC_OID_139=Der angegebene Wert "%s" kann nicht als Namensformbeschreibung geparst werden, da der numerische OID das unzul\u00e4ssige Zeichen %c an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_STRING_OID_140=Der angegebene Wert "%s" kann nicht als Namensformbeschreibung geparst werden, da der nicht-numerische OID das unzul\u00e4ssige Zeichen %c an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNEXPECTED_CLOSE_PARENTHESIS_141=Der angegebene Wert "%s" kann nicht als Namensformbeschreibung geparst werden, da er eine unerwartete schlie\u00dfende Klammer an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_142=Der angegebene Wert "%s" kann nicht als Namensformbeschreibung geparst werden, da er das unzul\u00e4ssige Zeichen %c an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS_143=Die Namensformbeschreibung "%s" ist mit der strukturellen Objektklasse %s verkn\u00fcpft, die nicht im Serverschema definiert ist
MILD_ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL_144=Die Namensformbeschreibung "%s" ist mit der Objektklasse mit dem OID %s (%s) verkn\u00fcpft. Diese Objektklasse ist zwar im Serverschema vorhanden, ist aber nicht als strukturelle Klasse, sondern als %s definiert
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR_145=Die Definition der Namensform mit dem OID %s gibt an, dass das erforderliche Attribut "%s" enthalten sein muss.  Im Serverschema ist kein Attributtyp vorhanden, der mit diesem Namen oder OID \u00fcbereinstimmt
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR_146=Die Definition der Namensform mit dem OID %s gibt an, dass das optionale Attribut "%s" enthalten sein muss.  Im Serverschema ist kein Attributtyp vorhanden, der mit diesem Namen oder OID \u00fcbereinstimmt
MILD_ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS_147=Der angegebene Wert "%s" kann nicht als Namensformbeschreibung geparst werden, da er nicht die strukturelle Objektklasse angibt, der er zugeordnet ist
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_QUOTE_AT_POS_148=Der angegebene Wert "%s" kann nicht als Namensformbeschreibung geparst werden, da ein einfaches Anf\u00fchrungszeichen an Position %d erwartet, stattdessen aber das Zeichen %c gefunden wurde
MILD_ERR_ATTR_SYNTAX_MR_EMPTY_VALUE_149=Der angegebene Wert kann nicht als g\u00fcltige \u00dcbereinstimmungsregelbeschreibung geparst werden, da er leer ist oder nur Leerzeichen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_OPEN_PARENTHESIS_150=Der angegebene Wert "%s" kann nicht als \u00dcbereinstimmungsregelbeschreibung geparst werden, da eine \u00f6ffnende Klammer an Position %d erwartet, stattdessen aber das Zeichen '%s' gefunden wurde
MILD_ERR_ATTR_SYNTAX_MR_TRUNCATED_VALUE_151=Der angegebene Wert "%s" kann nicht als \u00dcbereinstimmungsregelbeschreibung geparst werden, da das Ende des Werts erreicht wurde, obwohl der Directory-Server noch mehr Daten erwartet hat
MILD_ERR_ATTR_SYNTAX_MR_DOUBLE_PERIOD_IN_NUMERIC_OID_152=Der angegebene Wert "%s" kann nicht als \u00dcbereinstimmungsregelbeschreibung geparst werden, da der numerische OID zwei aufeinanderfolgende Punkte an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_NUMERIC_OID_153=Der angegebene Wert "%s" kann nicht als \u00dcbereinstimmungsregelbeschreibung geparst werden, da der numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_STRING_OID_154=Der angegebene Wert "%s" kann nicht als \u00dcbereinstimmungsregelbeschreibung geparst werden, da der nicht-numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MR_UNEXPECTED_CLOSE_PARENTHESIS_155=Der angegebene Wert "%s" kann nicht als \u00dcbereinstimmungsregelbeschreibung geparst werden, da er eine unerwartete schlie\u00dfende Klammer an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_156=Der angegebene Wert "%s" kann nicht als \u00dcbereinstimmungsregelbeschreibung geparst werden, da er das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX_157=Die \u00dcbereinstimmungsregelbeschreibung "%s" ist der Attributsyntax %s zugeordnet, welche nicht im Serverschema definiert ist
MILD_ERR_ATTR_SYNTAX_MR_NO_SYNTAX_158=Der angegebene Wert "%s" kann nicht als \u00dcbereinstimmungsregelbeschreibung geparst werden, da er nicht die Attributsyntax angibt, der er zugeordnet ist
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_QUOTE_AT_POS_159=Der angegebene Wert "%s" kann nicht als \u00dcbereinstimmungsregelbeschreibung geparst werden, da ein einfaches Anf\u00fchrungszeichen an Position %d erwartet, stattdessen aber das Zeichen %s gefunden wurde
MILD_ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE_160=Der angegebene Wert kann nicht als g\u00fcltige Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da er leer ist oder nur Leerzeichen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_OPEN_PARENTHESIS_161=Der angegebene Wert "%s" kann nicht als Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da eine \u00f6ffnende Klammer an Position %d erwartet, stattdessen aber das Zeichen '%s' gefunden wurde
MILD_ERR_ATTR_SYNTAX_MRUSE_TRUNCATED_VALUE_162=Der angegebene Wert "%s" kann nicht als Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da das Ende des Werts erreicht wurde, obwohl der Directory-Server noch mehr Daten erwartet hat
MILD_ERR_ATTR_SYNTAX_MRUSE_DOUBLE_PERIOD_IN_NUMERIC_OID_163=Der angegebene Wert "%s" kann nicht als Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da der numerische OID zwei aufeinanderfolgende Punkte an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_NUMERIC_OID_164=Der angegebene Wert "%s" kann nicht als Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da der numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_STRING_OID_165=Der angegebene Wert "%s" kann nicht als Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da der nicht-numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE_166=Der angegebene Wert "%s" kann nicht als Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da die angegebene \u00dcbereinstimmungsregel %s unbekannt ist
MILD_ERR_ATTR_SYNTAX_MRUSE_UNEXPECTED_CLOSE_PARENTHESIS_167=Der angegebene Wert "%s" kann nicht als Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da er eine unerwartete schlie\u00dfende Klammer an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_168=Der angegebene Wert "%s" kann nicht als Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da er das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR_169=Die Verwendungsbeschreibung der \u00dcbereinstimmungsregel "%s" ist dem Attributtyp %s zugeordnet, der nicht im Serverschema definiert ist
MILD_ERR_ATTR_SYNTAX_MRUSE_NO_ATTR_170=Der angegebene Wert "%s" kann nicht als Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da er nicht den Satz von Attributtypen angibt, die mit dem zugeordneten OID verwendet werden k\u00f6nnen
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_QUOTE_AT_POS_171=Der angegebene Wert "%s" kann nicht als Verwendungsbeschreibung der \u00dcbereinstimmungsregel geparst werden, da ein einfaches Anf\u00fchrungszeichen an Position %d erwartet, stattdessen aber das Zeichen %s gefunden wurde
MILD_ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE_172=Der angegebene Wert kann nicht als g\u00fcltige DIT-Strukturregelbeschreibung geparst werden, da er leer ist oder nur Leerzeichen enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS_173=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da eine \u00f6ffnende Klammer an Position %d erwartet, stattdessen aber das Zeichen '%s' gefunden wurde
MILD_ERR_ATTR_SYNTAX_DSR_TRUNCATED_VALUE_174=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da das Ende des Werts erreicht wurde, obwohl der Directory-Server noch mehr Daten erwartet hat
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_RULE_ID_175=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da die Regel-ID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DSR_UNEXPECTED_CLOSE_PARENTHESIS_176=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da er eine unerwartete schlie\u00dfende Klammer an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_177=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da er das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_NAME_FORM_178=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da er auf die unbekannte Namensform %s verweist
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_RULE_ID_179=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da er auf die unbekannte Regel-ID %d f\u00fcr eine \u00fcbergeordnete DIT-Strukturregel verweist
MILD_ERR_ATTR_SYNTAX_DSR_NO_NAME_FORM_180=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da er nicht die Namensform f\u00fcr die Regel angibt
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_QUOTE_AT_POS_181=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da eine \u00f6ffnende Klammer an Position %d erwartet, stattdessen aber das Zeichen '%s' gefunden wurde
MILD_ERR_ATTR_SYNTAX_DSR_DOUBLE_PERIOD_IN_NUMERIC_OID_182=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da der numerische OID zwei aufeinanderfolgende Punkte an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_NUMERIC_OID_183=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da der numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_STRING_OID_184=Der angegebene Wert "%s" kann nicht als DIT-Strukturregelbeschreibung geparst werden, da der nicht-numerische OID das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_TELEX_TOO_SHORT_185=Der angegebene Wert "%s" ist zu kurz, um ein g\u00fcltiger Telexnummerwert zu sein
MILD_ERR_ATTR_SYNTAX_TELEX_NOT_PRINTABLE_186=Der angegebene Wert "%s" enth\u00e4lt keine g\u00fcltige Telexnummer, da das Zeichen %s an Position %d kein g\u00fcltiges druckbares Zeichenkettenzeichen ist
MILD_ERR_ATTR_SYNTAX_TELEX_ILLEGAL_CHAR_187=Der angegebene Wert "%s" enth\u00e4lt keine g\u00fcltige Telexnummer, da das Zeichen %s an Position %d weder ein g\u00fcltiges druckbares Zeichenkettenzeichen noch ein Dollarzeichen enh\u00e4lt, das die Telexnummerkomponenten trennt
MILD_ERR_ATTR_SYNTAX_TELEX_TRUNCATED_188=Der angegebene Wert "%s" enth\u00e4lt keine g\u00fcltige Telexnummer, da das Ende des Werts gefunden wurde, bevor eine durch drei Dollarzeichen getrennte druckbare Zeichenkette gelesen werden konnte
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_EMPTY_189=Der angegebene Wert kann nicht als g\u00fcltige Faxnummer geparst werden, da er leer ist
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_NOT_PRINTABLE_190=Der angegebene Wert "%s" kann nicht als g\u00fcltige Faxnummer geparst werden, da das Zeichen %s an Position %d kein g\u00fcltiges druckbares Zeichenkettenzeichen ist
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_END_WITH_DOLLAR_191=Der angegebene Wert "%s" kann nicht als g\u00fcltige Faxnummer geparst werden, da er auf ein Dollarzeichen endet, diesem aber ein Faxparameter folgen m\u00fcsste
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_ILLEGAL_PARAMETER_192=Der angegebene Wert "%s" kann nicht als g\u00fcltige Faxnummer geparst werden, da die Zeichenkette %s zwischen den Positionen %d und %d kein g\u00fcltiger Faxparameter ist
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_INVALID_DN_193=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Namens- und optionaler UID-Wert geparst werden, da ein Fehler aufgetreten ist beim Versuch, den DN-Teil zu parsen: %s
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_ILLEGAL_BINARY_DIGIT_194=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Namens- und optionaler UID-Wert geparst werden, da der UID-Teil die unzul\u00e4ssige bin\u00e4re Ziffer %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_TELETEXID_EMPTY_195=Der angegebene Wert kann nicht als g\u00fcltige Teletexendger\u00e4te-ID geparst werden, da er leer ist
MILD_ERR_ATTR_SYNTAX_TELETEXID_NOT_PRINTABLE_196=Der angegebene Wert "%s" kann nicht als g\u00fcltige Teletexendger\u00e4te-ID geparst werden, da das Zeichen %s an Position %d kein g\u00fcltiges druckbares Zeichenkettenzeichen ist
MILD_ERR_ATTR_SYNTAX_TELETEXID_END_WITH_DOLLAR_197=Der angegebene Wert "%s" kann nicht als g\u00fcltige Teletexendger\u00e4te-ID geparst werden, da er auf ein Dollarzeichen endet, diesem aber ein TTX-Parameter folgen m\u00fcsste
MILD_ERR_ATTR_SYNTAX_TELETEXID_PARAM_NO_COLON_198=Der angegebene Wert "%s" kann nicht als g\u00fcltige Teletexendger\u00e4te-ID geparst werden, da die Parameterzeichenkette keinen Doppelpunkt enth\u00e4lt, der den Namen vom Wert trennt
MILD_ERR_ATTR_SYNTAX_TELETEXID_ILLEGAL_PARAMETER_199=Der angegebene Wert "%s" kann nicht als g\u00fcltige Teletexendger\u00e4te-ID geparst werden, da die Zeichenkette "%s" kein g\u00fcltiger TTX-Parametername ist
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_EMPTY_VALUE_200=Der angegebene Wert kann nicht als sonstiger Mailboxwert geparst werden, da er leer ist
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MBTYPE_201=Der angegebene Wert "%s" kann nicht als sonstiger Mailboxwert geparst werden, da kein Mailboxtyp vor dem Dollarzeichen angegeben ist
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MBTYPE_CHAR_202=Der angegebene Wert "%s" kann nicht als sonstiger Mailboxwert geparst werden, da der Mailboxtyp das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MAILBOX_203=Der angegebene Wert "%s" kann nicht als sonstiger Mailboxwert geparst werden, da keine Mailbox hinter dem Dollarzeichen angegeben ist
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MB_CHAR_204=Der angegebene Wert "%s" kann nicht als sonstiger Mailboxwert geparst werden, da die Mailbox das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_OC_205=Der angegebene Wert "%s" kann nicht als Richtwert geparst werden, da er keinen Objektklassennamen oder OID vor dem Rautezeichen (#) enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_GUIDE_ILLEGAL_CHAR_206=Der angegebene Wert "%s" kann nicht als Richtwert geparst werden, da der Kriterienteil %s das unzul\u00e4ssige Zeichen %c an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_GUIDE_MISSING_CLOSE_PAREN_207=Der angegebene Wert "%s" kann nicht als Richtwert geparst werden, da beim Kriterienteil %s die zur \u00f6ffnenden Klammer geh\u00f6rende schlie\u00dfende Klammer fehlt
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_QUESTION_MARK_208=Der angegebene Wert "%s" kann nicht als Richtwert geparst werden, da der Kriterienteil %s mit einem Fragezeichen beginnt, diesem aber als Zeichenkette weder "true" noch "false" folgen
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_DOLLAR_209=Der angegebene Wert "%s" kann nicht als Richtwert geparst werden, da der Kriterienteil %s kein Dollarzeichen enth\u00e4lt, das den Attributtyp vom \u00dcbereinstimmungstyp trennt
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_ATTR_210=Der angegebene Wert "%s" kann nicht als Richtwert geparst werden, da im Kriterienteil %s kein Attributtyp vor dem Dollarzeichen festgelegt ist
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_MATCH_TYPE_211=Der angegebene Wert "%s" kann nicht als Richtwert geparst werden, da im Kriterienteil %s kein \u00dcbereinstimmungstyp nach dem Dollarzeichen festgelegt ist
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_MATCH_TYPE_212=Der angegebene Wert "%s" kann nicht als Richtwert geparst werden, da im Kriterienteil %s ein ung\u00fcltiger \u00dcbereinstimmungstyp an Position %d festgelegt ist
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP_213=Der angegebene Wert "%s" kann nicht als verbesserter Richtwert geparst werden, da er kein Rautzeichen (#) enth\u00e4lt, das die Objektklasse vom Kriterium trennt
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC_214=Der angegebene Wert "%s" kann nicht als verbesserter Richtwert geparst werden, da er keinen Objektklassennamen oder OID vor dem Rautezeichen (#) enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_DOUBLE_PERIOD_IN_OC_OID_215=Der angegebene Wert "%s" kann nicht als verbesserter Richtwert geparst werden, da der numerische OID %s, der die Objektklasse festlegt, zwei aufeinanderfolgende Punkt an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_OID_216=Der angegebene Wert "%s" kann nicht als verbesserter Richtwert geparst werden, da der numerische OID %s, der die Objektklasse festlegt, das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_NAME_217=Der angegebene Wert "%s" kann nicht als verbesserter Richtwert geparst werden, da der Objektklassennamen %s das unzul\u00e4ssige Zeichen %s an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_FINAL_SHARP_218=Der angegebene Wert "%s" kann nicht als verbesserter Richtwert geparst werden, da er kein Rautzeichen (#) enth\u00e4lt, das das Kriterium vom Umfang trennt
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SCOPE_219=Der angegebene Wert "%s" kann nicht als verbesserter Richtwert geparst werden, da kein Umfang nach dem Rautezeichen (#) angegeben ist
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_INVALID_SCOPE_220=Der angegebene Wert "%s" kann nicht als verbesserter Richtwert geparst werden, da der angegebene Umfang %s ung\u00fcltig ist
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_CRITERIA_221=Der angegebene Wert "%s" kann nicht als verbesserter Richtwert geparst werden, da keine Kriterien zwischen den Rautezeichen (#) festgelegt sind
MILD_ERR_ATTR_SYNTAX_OID_INVALID_VALUE_222=Der angegebene Wert %s kann nicht als g\u00fcltiger OID geparst werden: %s
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NORMALIZE_FAILURE_223=An unexpected \
### error occurred while trying to normalize value %s as a generalized time \
### value:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_CANNOT_NORMALIZE_224=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseExactOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_INVALID_TYPE_225=An error occurred while \
### attempting to compare two objects using the caseExactOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_CANNOT_NORMALIZE_226=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseIgnoreOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_INVALID_TYPE_227=An error occurred while \
### attempting to compare two objects using the caseIgnoreOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_CANNOT_NORMALIZE_228=An error \
### occurred while attempting to compare two AttributeValue objects using the \
### generalizedTimeOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_INVALID_TYPE_229=An error occurred \
### while attempting to compare two objects using the \
### generalizedTimeOrderingMatch matching rule because the objects were of an \
### unsupported type %s.  Only byte arrays, ASN.1 octet strings, and attribute \
### value objects may be compared
###SEVERE_WARN_OMR_INTEGER_COMPARE_CANNOT_NORMALIZE_230=An error occurred while \
### attempting to compare two AttributeValue objects using the \
### integerOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_INTEGER_COMPARE_INVALID_TYPE_231=An error occurred while \
### attempting to compare two objects using the integerOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_CANNOT_NORMALIZE_232=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### numericStringOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_INVALID_TYPE_233=An error occurred \
### while attempting to compare two objects using the numericStringOrderingMatch \
### matching rule because the objects were of an unsupported type %s.  Only byte \
### arrays, ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_CANNOT_NORMALIZE_234=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### octetStringOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_INVALID_TYPE_235=An error occurred while \
### attempting to compare two objects using the octetStringOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH_236=The provided value "%s" has \
### an invalid length for a UUID.  All UUID values must have a length of exactly \
### 36 bytes, but the provided value had a length of %d bytes
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH_237=The provided value "%s" should \
### have had a dash at position %d, but the character '%s' was found instead
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX_238=The provided value "%s" should \
### have had a hexadecimal digit at position %d, but the character '%s' was found \
### instead
INFO_ATTR_SYNTAX_DIRECTORYSTRING_DESCRIPTION_ALLOW_ZEROLENGTH_239=Gibt an, ob Attribute mit der Verzeichniszeichenkettensyntax Werte der L\u00e4nge Null haben d\u00fcrfen.  Dies wird von den LDAP-Spezifikationen technisch nicht zugelassen, kann aber f\u00fcr die Abw\u00e4rtskompatibilit\u00e4t mit vorherigen Directory-Server-Versionen n\u00fctzlich sein
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_CANNOT_DETERMINE_ZEROLENGTH_240=An \
### error occurred while trying to determine the value of the %s configuration \
### attribute, which indicates whether directory string attributes should be \
### allowed to have zero-length values:  %s
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_INVALID_ZEROLENGTH_VALUE_241=The \
### operation attempted to assign a zero-length value to an attribute with the \
### directory string syntax
INFO_ATTR_SYNTAX_DIRECTORYSTRING_UPDATED_ALLOW_ZEROLENGTH_242=Das Attribut %s im Konfigurationseintrag %s wurde mit dem neuen Wert %s aktualisiert
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_SCHEME_CHAR_243=The provided \
### authPassword value had an invalid scheme character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_244=The provided authPassword value \
### had a zero-length scheme element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_SEPARATOR_245=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the scheme and authInfo elements
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_INFO_CHAR_246=The provided \
### authPassword value had an invalid authInfo character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_247=The provided authPassword \
### value had a zero-length authInfo element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_SEPARATOR_248=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the authInfo and authValue elements
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_INITIAL_PARENTHESIS_249=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### it did not start with a parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_NONSPACE_250=The provided value "%s" could not \
### be parsed by the integer first component matching rule because it did not \
### have any non-space characters after the opening parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_SPACE_AFTER_INT_251=The provided value "%s" \
### could not be parsed by the integer first component matching rule because it \
### did not have any space characters after the first component
###SEVERE_ERR_EMR_INTFIRSTCOMP_FIRST_COMPONENT_NOT_INT_252=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### the first component does not appear to be an integer value
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_VALUE_253=No value was given to decode by \
### the user password attribute syntax
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_OPENING_BRACE_254=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not start with the opening curly brace ("{") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_CLOSING_BRACE_255=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not contain a closing curly brace ("}") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_SCHEME_256=Unable to decode the provided \
### value according to the user password syntax because the value does not \
### contain a storage scheme name
MILD_ERR_ATTR_SYNTAX_RFC3672_SUBTREE_SPECIFICATION_INVALID_257=Der angegebene Wert "%s" kann nicht als g\u00fcltige RFC 3672-Unteransichtsspezifikation geparst werden
MILD_ERR_ATTR_SYNTAX_ABSOLUTE_SUBTREE_SPECIFICATION_INVALID_258=Der angegebene Wert "%s" kann nicht als g\u00fcltige absolute Unteransichtsspezifikation geparst werden
MILD_ERR_ATTR_SYNTAX_RELATIVE_SUBTREE_SPECIFICATION_INVALID_259=Der angegebene Wert "%s" kann nicht als g\u00fcltige relative Unteransichtsspezifikation geparst werden
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_INTEGER_260=The provided value %s is not \
### allowed for attributes with a Integer syntax
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_VALUE_CHAR_261=The provided \
### authPassword value had an invalid authValue character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_VALUE_262=The provided authPassword \
### value had a zero-length authValue element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_TRAILING_CHAR_263=The provided \
### authPassword value had an invalid trailing character at position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXTENSION_INVALID_CHARACTER_264=Der angegebene Wert "%s" kann nicht als Attributsyntaxerweiterung geparst werden, da er ein unzul\u00e4ssige Zeichen an Position %d enth\u00e4lt
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_INVALID_EXTENSION_265=Der Attributsyntax kann wegen einer ung\u00fcltigen Erweiterung nicht geparst werden.%s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE_266=The definition \
### for objectclass %s is invalid because it has an objectclass type of %s but \
### this is incompatible with the objectclass type %s for the superior class %s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP_267=The \
### definition for objectclass %s is invalid because it is defined as a \
### structural class but its superior chain does not include the "top" \
### objectclass
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_SUPERIOR_USAGE_268=The definition \
### for attribute type %s is invalid because its attribute usage %s is not the \
### same as the usage for its superior type %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_FROM_NONCOLLECTIVE_269=The \
### definition for attribute type %s is invalid because it is defined as a \
### collective type but the superior type %s is not collective
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NONCOLLECTIVE_FROM_COLLECTIVE_270=The \
### definition for attribute type %s is invalid because it is not defined as a \
### collective type but the superior type %s is collective
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_STRUCTURAL_271=Die DIT-Inhaltsregel "%s" ist ung\u00fcltig, da sie die Verwendung des Attributtyps %s verbietet, der von der zugeordneten strukturellen Objektklasse %s erfordert wird
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_AUXILIARY_272=Die DIT-Inhaltsregel "%s" ist ung\u00fcltig, da sie die Verwendung des Attributtyps %s verbietet, der von der zugeordneten Hilfsobjektklasse %s erfordert wird
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_IS_OPERATIONAL_273=The definition \
### for attribute type %s is invalid because it is declared COLLECTIVE but does \
### not have a usage of userApplications
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NO_USER_MOD_NOT_OPERATIONAL_274=The \
### definition for attribute type %s is invalid because it is declared \
### NO-USER-MODIFICATION but does not have an operational usage
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_FRACTION_CHAR_275=The \
### provided value %s is not a valid generalized time value because it contains \
### illegal character %s in the fraction component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_EMPTY_FRACTION_276=The provided \
### value %s is not a valid generalized time value because it does not contain at \
### least one digit after the period to use as the fractional component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NO_TIME_ZONE_INFO_277=The provided \
### value %s is not a valid generalized time value because it does not end with \
### 'Z' or a time zone offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_TIME_278=The provided value \
### %s is not a valid generalized time value because it represents an invalid \
### time (e.g., a date that does not exist):  %s
NOTICE_SCHEMA_IMPORT_FAILED_279=Ein Schemaelement konnte nicht importiert werden: %s, %s
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_LOCALE_280=Die Sortierregel %s unter dem entsprechenden Regeleintrag %s ist ung\u00fcltig, da JVM das Gebietsschema %s nicht unterst\u00fctzt
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_FORMAT_281=Die angegebene Sortierregel %s enth\u00e4lt kein g\u00fcltiges Format von OID:LOCALE
MILD_ERR_ATTR_SYNTAX_DN_INVALID_REQUIRES_ESCAPE_CHAR_282=Der angegebene Wert "%s" kann nicht als g\u00fcltiger Distinguished Name geparst werden, da ein Attributswert mit einem Zeichen an Position '%d' vermieden werden muss
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_CHAR_283=Der angegebene Wert "%s" kann nicht als g\u00fcltige Attributstypedefinition geparst werden, da das Zeichen '%c' an Position '%d' in einem Attributstypnamen unzul\u00e4ssig ist
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_284=Der angegebene Wert "%s" kann nicht als g\u00fcltige Attributstypdefiinition geparst werden, da das Unterstrich-Zeichen in einem Attributtypenamen unzul\u00e4ssig ist, au\u00dfer wenn die Konfigurationsoption %s aktiviert ist
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_285=Der angegebene Wert "%s" kann nicht als g\u00fcltige Attributstypdefinition geparst werden, da das Bindestrich-Zeichen als erstes Zeichen in einem Attributstypnamen unzul\u00e4ssig ist
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_286=Der angegebene Wert "%s" kann nicht als g\u00fcltige Attributstypdefinition geparst werden, da das Unterstrich-Zeichen als erstes Zeichen in einem Attributstypnamen unzul\u00e4ssig ist, selbst wenn die Konfigurationsoption %s aktiviert ist
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_287=Der angegebene Wert "%s" kann nicht als g\u00fcltige Attributstypdefinition geparst werden, da die Ziffer '%c' nicht als erstes Zeichen in einem Attributstypnamen zul\u00e4ssig ist, au\u00dfer wenn der Name als OID festgelegt oder die Konfigurationsoption %s aktiviert ist
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_CHAR_288=Der angegebene Wert "%s" kann nicht als g\u00fcltige Objektklassendefinition geparst werden, da das Zeichen '%c' an Position '%d' in einem Objektklassenamen unzul\u00e4ssig ist
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_289=Der angegebene Wert "%s" kann nicht als g\u00fcltige Objektklassendefinition geparst werden, da das Unterstrich-Zeichen in einem Attributnamen unzul\u00e4ssig ist, au\u00dfer wenn die Konfigurationsoption %s aktiviert ist
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_290=Der angegebene Wert "%s" kann nicht als g\u00fcltige Objektklassendefinition geparst werden, da das Bindestrich-Zeichen als erstes Zeichen in einem Objektklassennamen unzul\u00e4ssig ist
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_291=Der angegebene Wert "%s" kann nicht als g\u00fcltige Objektklassendefinition geparst werden, da das Unterstrich-Zeichen als erstes Zeichen in einem Objektklassennamen unzul\u00e4ssig ist, selbst wenn die Konfigurationsoption %s aktiviert ist
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_292=Der angegebene Wert "%s" kann nicht als g\u00fcltige Objektklassendefinition geparst werden, da das erste Zeichen '%c' in einem Objektklassennamen unzul\u00e4ssig ist, selbst wenn die Konfigurationsoption %s aktiviert ist
sdk/src/com/sun/opends/sdk/util/messages_es.properties
New file
@@ -0,0 +1,531 @@
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#      Copyright 2009 Sun Microsystems, Inc.
#
# Global directives
#
global.ordinal=-1
#
# Format string definitions
#
# Keys must be formatted as follows:
#
# [DESCRIPTION]
#
# where:
#
# DESCRIPTION is an upper case string providing a hint as to the context of
# the message in upper case with the underscore ('_') character serving as
# word separator
#
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_APPROXIMATE_MATCHING_RULE_1=Unable to retrieve \
### approximate matching rule %s used as the default for the %s attribute syntax. \
### Approximate matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_EQUALITY_MATCHING_RULE_2=Unable to retrieve \
### equality matching rule %s used as the default for the %s attribute syntax. \
### Equality matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_ORDERING_MATCHING_RULE_3=Unable to retrieve \
### ordering matching rule %s used as the default for the %s attribute syntax. \
### Ordering matches will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_SUBSTRING_MATCHING_RULE_4=Unable to retrieve \
### substring matching rule %s used as the default for the %s attribute syntax. \
### Substring matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN_5=The provided value "%s" is not \
### allowed for attributes with a Boolean syntax.  The only allowed values are \
### 'TRUE' and 'FALSE'
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT_6=The provided value "%s" is too \
### short to be a valid bit string.  A bit string must be a series of binary \
### digits surrounded by single quotes and followed by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED_7=The provided value "%s" is not \
### a valid bit string because it is not surrounded by single quotes and followed \
### by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT_8=The provided value "%s" is \
### not a valid bit string because '%s' is not a valid binary digit
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_INVALID_LENGTH_9=El valor proporcionado "%s" no es una cadena de pa\u00edses v\u00e1lida porque no tiene una longitud de dos caracteres.
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_NOT_PRINTABLE_10=El valor proporcionado "%s" no es una cadena de pa\u00edses v\u00e1lida porque contiene uno o m\u00e1s caracteres no imprimibles.
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_NO_ELEMENTS_11=El valor proporcionado "%s" no es un valor de m\u00e9todo de entrega v\u00e1lido porque no contiene elementos
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_INVALID_ELEMENT_12=El valor proporcionado "%s" no es un valor de m\u00e9todo de entrega v\u00e1lido porque "%s" no es un m\u00e9todo v\u00e1lido
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_TOO_SHORT_13=The provided value "%s" \
### is too short to be a valid generalized time value
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_YEAR_14=The provided value \
### "%s" is not a valid generalized time value because the '%s' character is not \
### allowed in the century or year specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MONTH_15=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid month \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_DAY_16=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid day \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_HOUR_17=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid hour \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MINUTE_18=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid minute \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SECOND_19=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid second \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SUBSECOND_20=The provided \
### value "%s" is not a valid generalized time value because the sub-second \
### component is not valid (between 1 and 3 numeric digits)
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_LONG_SUBSECOND_21=The provided value \
### "%s" is not a valid generalized time value because the sub-second value may \
### not contain more than three digits
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_OFFSET_22=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid GMT \
### offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_CHAR_23=The provided value \
### "%s" is not a valid generalized time value because it contains an invalid \
### character '%s' at position %d
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_CANNOT_PARSE_24=The provided value \
### "%s" could not be parsed as a valid generalized time:  %s
MILD_ERR_ATTR_SYNTAX_DN_INVALID_25=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido: %s
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_COMMA_26=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque el \u00faltimo car\u00e1cter distinto a un espacio era una coma o punto y coma
MILD_ERR_ATTR_SYNTAX_DN_ATTR_START_WITH_DIGIT_27=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque no se permite el d\u00edgito num\u00e9rico '%s' como primer car\u00e1cter en un nombre de atributo
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_CHAR_28=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque no se permite el car\u00e1cter '%c'  en la posici\u00f3n %d en un nombre de atributo
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_UNDERSCORE_CHAR_29=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque no se permite el car\u00e1cter de subrayado en un nombre de atributo a menos que est\u00e9 habilitada la opci\u00f3n de configuraci\u00f3n %s
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DASH_30=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque no se permite el car\u00e1cter de gui\u00f3n como primer car\u00e1cter de un nombre de atributo
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_UNDERSCORE_31=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque no se permite el car\u00e1cter de subrayado como primer car\u00e1cter de un nombre de atributo incluso si est\u00e1 habilitada la opci\u00f3n de configuraci\u00f3n %s
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DIGIT_32=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque no se permite el d\u00edgito '%c' como primer car\u00e1cter de un nombre de atributo a menos que est\u00e9 especificado el nombre como un OID o que est\u00e9 habilitada la opci\u00f3n de configuraci\u00f3n %s
MILD_ERR_ATTR_SYNTAX_DN_ATTR_NO_NAME_33=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque conten\u00eda un RDN que a su vez conten\u00eda un nombre de atributo vac\u00edo
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_PERIOD_34=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque el nombre de atributo analizado %s inclu\u00eda un punto, sin embargo no parec\u00eda ser un OID v\u00e1lido
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_ATTR_NAME_35=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque el \u00faltimo car\u00e1cter distinto a un espacio formaba parte del nombre de atributo '%s'
MILD_ERR_ATTR_SYNTAX_DN_NO_EQUAL_36=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque el siguiente car\u00e1cter distinto a un espacio detr\u00e1s del nombre de atributo "%s" deber\u00eda haber sido un signo igual en lugar de '%c'
MILD_ERR_ATTR_SYNTAX_DN_INVALID_CHAR_37=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque el car\u00e1cter '%c'  en la posici\u00f3n %d no es v\u00e1lido
MILD_ERR_ATTR_SYNTAX_DN_HEX_VALUE_TOO_SHORT_38=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque un valor de atributo comenzaba con un signo de almohadilla (#), sin embargo, no estaba seguido por un m\u00faltiplo positivo de dos d\u00edgitos hexadecimales
MILD_ERR_ATTR_SYNTAX_DN_INVALID_HEX_DIGIT_39=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque un valor de atributo comenzaba con un signo de almohadilla (#) sin embargo conten\u00eda un car\u00e1cter %c que no era un d\u00edgito hexadecimal v\u00e1lido
MILD_ERR_ATTR_SYNTAX_DN_ATTR_VALUE_DECODE_FAILURE_40=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque se ha producido un fallo inesperado al intentar analizar un valor de atributo desde uno de los componentes de RDN: "%s"
MILD_ERR_ATTR_SYNTAX_DN_UNMATCHED_QUOTE_41=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque uno de los componentes de RDN inclu\u00eda un valor citado que no ten\u00eda la comilla de cierre correspondiente
MILD_ERR_ATTR_SYNTAX_DN_ESCAPED_HEX_VALUE_INVALID_42=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque uno de los componentes de RDN inclu\u00eda un valor con un d\u00edgito hexadecimal escapado que no estaba seguido por un segundo d\u00edgito hexadecimal
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INITIAL_ZERO_43=The provided value "%s" could \
### not be parsed as a valid integer because the first digit may not be zero \
### unless it is the only digit
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_MISPLACED_DASH_44=The provided value "%s" \
### could not be parsed as a valid integer because the dash may only appear if it \
### is the first character of the value followed by one or more digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INVALID_CHARACTER_45=The provided value "%s" \
### could not be parsed as a valid integer because character '%c' at position %d \
### is not allowed in an integer value
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_EMPTY_VALUE_46=The provided value "%s" could \
### not be parsed as a valid integer because it did not contain any digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_DASH_NEEDS_VALUE_47=The provided value "%s" \
### could not be parsed as a valid integer because it contained only a dash not \
### followed by an integer value
MILD_ERR_ATTR_SYNTAX_OID_NO_VALUE_48=No se pudo analizar el valor proporcionado como un OID v\u00e1lido porque no conten\u00eda caracteres
MILD_ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER_49=No se pudo analizar el valor proporcionado "%s" como un OID v\u00e1lido porque ten\u00eda un car\u00e1cter no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS_50=No se pudo analizar el valor proporcionado "%s" como un OID v\u00e1lido porque ten\u00eda dos puntos consecutivos en o cerca de la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD_51=No se pudo analizar el valor proporcionado "%s" como un OID v\u00e1lido porque finaliza con un punto
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE_52=No se pudo analizar el valor proporcionado como descripci\u00f3n de tipo de atributo v\u00e1lido porque estaba vac\u00edo o conten\u00eda s\u00f3lo espacios en blanco
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_OPEN_PARENTHESIS_53=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de tipo de atributo porque se encontr\u00f3 un car\u00e1cter '%3$s' en lugar del par\u00e9ntesis de apertura en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_TRUNCATED_VALUE_54=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de tipo de atributo porque se encontr\u00f3 el final del valor si bien Directory Server esperaba que se proporcionaran m\u00e1s datos
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_DOUBLE_PERIOD_IN_NUMERIC_OID_55=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de tipo de atributo porque el OID num\u00e9rico conten\u00eda dos puntos consecutivos en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_NUMERIC_OID_56=No se pudo analizar el valor proporcionado  "%s" como descripci\u00f3n de tipo de atributo porque el OID num\u00e9rico conten\u00eda un car\u00e1cter no v\u00e1lido %s en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_STRING_OID_57=No se pudo analizar el valor proporcionado  "%s" como descripci\u00f3n de tipo de atributo porque el OID no num\u00e9rico conten\u00eda un car\u00e1cter no v\u00e1lido %s en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_58=No se pudo analizar el valor proporcionado  "%s" como descripci\u00f3n de tipo de atributo porque conten\u00eda un car\u00e1cter no v\u00e1lido %s en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_UNEXPECTED_CLOSE_PARENTHESIS_59=No se pudo analizar el valor proporcionado  "%s" como descripci\u00f3n de tipo de atributo porque conten\u00eda un par\u00e9ntesis de cierre inesperado en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_60=No se pudo analizar el valor proporcionado  "%s" como descripci\u00f3n de tipo de atributo porque se esperaba una comilla como el primer car\u00e1cter no blanco a continuaci\u00f3n del token %s.  Sin embargo, se encontr\u00f3 el car\u00e1cter %s en su lugar
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE_61=The definition for \
### the attribute type with OID %s declared a superior type with an OID of %s. \
### No attribute type with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR_62=The definition for \
### the attribute type with OID %s declared that approximate matching should be \
### performed using the matching rule "%s".  No such approximate matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR_63=The definition for \
### the attribute type with OID %s declared that equality matching should be \
### performed using the matching rule "%s".  No such equality matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR_64=The definition for \
### the attribute type with OID %s declared that ordering matching should be \
### performed using the matching rule "%s".  No such ordering matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR_65=The definition for \
### the attribute type with OID %s declared that substring matching should be \
### performed using the matching rule "%s".  No such substring matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SYNTAX_66=The definition for the \
### attribute type with OID %s declared that it should have a syntax with OID %s. \
### No such syntax is configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE_67=The definition \
### for the attribute type with OID %s declared that it should have an attribute \
### usage of %s.  This is an invalid usage
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_AT_POS_68=The provided value \
### "%s" could not be parsed as an attribute type description because a single \
### quote was expected at position %d but the character %s was found instead
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE_69=No se pudo analizar el valor proporcionado como descripci\u00f3n de clase de objeto v\u00e1lido porque estaba vac\u00edo o conten\u00eda s\u00f3lo espacios en blanco
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS_70=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de clase de objeto porque se encontr\u00f3 un car\u00e1cter '%3$s' en lugar de un par\u00e9ntesis de apertura en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_TRUNCATED_VALUE_71=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de clase de objeto porque se encontr\u00f3 el final del valor si bien Directory Server esperaba que se proporcionaran m\u00e1s datos
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_DOUBLE_PERIOD_IN_NUMERIC_OID_72=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de clase de objeto porque el OID num\u00e9rico conten\u00eda dos puntos consecutivos en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_NUMERIC_OID_73=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de clase de objeto porque el OID num\u00e9rico conten\u00eda un car\u00e1cter no v\u00e1lido %s en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_STRING_OID_74=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de clase de objeto porque el OID no num\u00e9rico conten\u00eda un car\u00e1cter no v\u00e1lido %s en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_75=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de clase de objeto porque conten\u00eda un car\u00e1cter no v\u00e1lido %s en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_UNEXPECTED_CLOSE_PARENTHESIS_76=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de clase de objeto porque conten\u00eda un par\u00e9ntesis de cierre inesperado en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_77=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de clase de objeto porque se esperaba una comilla como el primer car\u00e1cter no blanco a continuaci\u00f3n del token %s. Sin embargo, se encontr\u00f3 el car\u00e1cter %s en su lugar
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS_78=The definition \
### for the objectclass with OID %s declared a superior objectclass with an OID \
### of %s.  No objectclass with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_AT_POS_79=The provided \
### value "%s" could not be parsed as an objectclass description because a single \
### quote was expected at position %d but the character %s was found instead
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR_80=The definition \
### for the objectclass with OID %s declared that it should include required \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR_81=The definition \
### for the objectclass with OID %s declared that it should include optional \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER_82=The provided value "%s" \
### cannot be parsed as a valid IA5 string because it contains an illegal \
### character "%s" that is not allowed in the IA5 (ASCII) character set
INFO_ATTR_SYNTAX_TELEPHONE_DESCRIPTION_STRICT_MODE_83=Indica si la sintaxis de atributo de n\u00famero de tel\u00e9fono deber\u00eda utilizar un modo estricto en el que s\u00f3lo se aceptar\u00e1n valores con el formato E.123 de ITU-T.  Si est\u00e1 habilitado, se rechazar\u00e1 cualquier valor con este formato.  En el caso de que est\u00e9 deshabilitado, se aceptar\u00e1 cualquier valor, pero s\u00f3lo se tendr\u00e1n en cuenta los d\u00edgitos a la hora de llevar a cabo la comparaci\u00f3n
###SEVERE_WARN_ATTR_SYNTAX_TELEPHONE_CANNOT_DETERMINE_STRICT_MODE_84=An error \
### occurred while trying to retrieve attribute \
### ds-cfg-strict-format from configuration entry %s:  %s.  The \
### Directory Server will not enforce strict compliance to the ITU-T E.123 format \
### for telephone number values
MILD_ERR_ATTR_SYNTAX_TELEPHONE_EMPTY_85=El valor proporcionado no es un n\u00famero de tel\u00e9fono v\u00e1lido porque est\u00e1 vac\u00edo o es nulo
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_PLUS_86=El valor proporcionado "%s" no es un n\u00famero de tel\u00e9fono v\u00e1lido porque est\u00e1 habilitada la comprobaci\u00f3n estricta de n\u00famero de tel\u00e9fono y el valor no comienza con un signo m\u00e1s (+) en cumplimiento de la especificaci\u00f3n E.123 de ITU-T
MILD_ERR_ATTR_SYNTAX_TELEPHONE_ILLEGAL_CHAR_87=El valor proporcionado "%s" no es un n\u00famero de tel\u00e9fono v\u00e1lido porque est\u00e1 habilitada la comprobaci\u00f3n estricta de n\u00famero de tel\u00e9fono y la especificaci\u00f3n E.123 de ITU-T no permite el car\u00e1cter %s en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_DIGITS_88=El valor proporcionado "%s" no es un n\u00famero de tel\u00e9fono v\u00e1lido porque no contiene d\u00edgitos num\u00e9ricos
INFO_ATTR_SYNTAX_TELEPHONE_UPDATED_STRICT_MODE_89=El valor de atributo de configuraci\u00f3n ds-cfg-strict-format, que indica si se utiliza la comprobaci\u00f3n estricta de sintaxis de n\u00famero de tel\u00e9fono, se ha actualizado a %s en la entrada de configuraci\u00f3n %s
###SEVERE_WARN_ATTR_SYNTAX_NUMERIC_STRING_ILLEGAL_CHAR_90=The provided value \
### "%s" is not a valid numeric string because it contained character %s at \
### position %d that was neither a digit nor a space
MILD_ERR_ATTR_SYNTAX_NUMERIC_STRING_EMPTY_VALUE_91=El valor proporcionado no era una cadena num\u00e9rica v\u00e1lida porque no conten\u00eda caracteres.  Un valor de cadena num\u00e9rico debe contener un espacio o un d\u00edgito num\u00e9rico como m\u00ednimo
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE_92=No se pudo analizar el valor proporcionado como descripci\u00f3n de sintaxis de atributo v\u00e1lido porque estaba vac\u00edo o conten\u00eda s\u00f3lo espacios en blanco
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_OPEN_PARENTHESIS_93=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de sintaxis de atributo porque se encontr\u00f3 un car\u00e1cter '%3$s' en lugar del par\u00e9ntesis de apertura en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TRUNCATED_VALUE_94=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de sintaxis de atributo porque se encontr\u00f3 el final del valor, si bien Directory Server esperaba que se proporcionaran m\u00e1s datos
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_DOUBLE_PERIOD_IN_NUMERIC_OID_95=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de sintaxis de atributo porque el OID num\u00e9rico conten\u00eda dos puntos consecutivos en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_NUMERIC_OID_96=No se pudo analizar el valor proporcionado  "%s" como descripci\u00f3n de sintaxis de atributo porque el OID num\u00e9rico conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_STRING_OID_97=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de sintaxis de atributo porque el OID no num\u00e9rico conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_UNEXPECTED_CLOSE_PARENTHESIS_98=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de sintaxis de atributo porque conten\u00eda un par\u00e9ntesis de cierre inesperado en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_TOKEN_99=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de sintaxis de atributo porque se produjo un error inesperado al intentar leer el token "DESC" desde la cadena en o cerca de la posici\u00f3n %d:  %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TOKEN_NOT_DESC_100=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de sintaxis de atributo porque se encontr\u00f3 la cadena "%s" en lugar del token "DESC"
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_VALUE_101=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de sintaxis de atributo porque se produjo un error inesperado al intentar leer el valor del token "DESC" desde la cadena en o cerca de la posici\u00f3n %d:  %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_CLOSE_PARENTHESIS_102=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de sintaxis de atributo porque se encontr\u00f3 un car\u00e1cter '%3$s' en lugar del par\u00e9ntesis de cierre en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_AFTER_CLOSE_103=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de sintaxis de atributo porque se encontr\u00f3 un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d detr\u00e1s del par\u00e9ntesis de cierre
###SEVERE_WARN_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_QUOTE_AT_POS_104=The provided \
### value "%s" could not be parsed as an attribute syntax description because a \
### single quote was expected at position %d but the character %s was found \
### instead
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_EMPTY_VALUE_105=The provided value \
### could not be parsed as a printable string because it was null or empty.  A \
### printable string must contain at least one character
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_ILLEGAL_CHARACTER_106=The provided \
### value "%s" could not be parsed as a printable string because it contained an \
### invalid character %s at position %d
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_ONLY_WILDCARD_107=The provided value "*" \
### could not be parsed as a substring assertion because it consists only of a \
### wildcard character and zero-length substrings are not allowed
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS_108=The provided \
### value "%s" could not be parsed as a substring assertion because it contains \
### consecutive wildcard characters at position %d and zero-length substrings are \
### not allowed
MILD_ERR_ATTR_SYNTAX_UTC_TIME_TOO_SHORT_109=El valor proporcionado %s es demasiado corto para considerarse un valor de tiempo UTC v\u00e1lido
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_YEAR_110=El valor proporcionado %s  no es un valor de tiempo UTC v\u00e1lido porque no se permite el car\u00e1cter %s en la especificaci\u00f3n de a\u00f1o o siglo
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MONTH_111=El valor proporcionado %s no es un valor de tiempo UTC v\u00e1lido porque %s no es una especificaci\u00f3n de mes v\u00e1lida
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_DAY_112=El valor proporcionado %s no es un valor de tiempo UTC v\u00e1lido porque %s no es una especificaci\u00f3n de d\u00eda v\u00e1lida
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_HOUR_113=El valor proporcionado %s no es un valor de tiempo UTC v\u00e1lido porque %s no es una especificaci\u00f3n de hora v\u00e1lida
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MINUTE_114=El valor proporcionado %s no es un valor de tiempo UTC v\u00e1lido porque %s no es una especificaci\u00f3n de minuto v\u00e1lida
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_CHAR_115=El valor proporcionado %s no es un valor de tiempo UTC v\u00e1lido porque contiene un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_SECOND_116=El valor proporcionado %s no es un valor de tiempo UTC v\u00e1lido porque %s no es una especificaci\u00f3n de segundo v\u00e1lida
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_OFFSET_117=El valor proporcionado %s no es un valor de tiempo UTC v\u00e1lido porque %s no es un ajuste GMT v\u00e1lido
MILD_ERR_ATTR_SYNTAX_UTC_TIME_CANNOT_PARSE_118=No se pudo analizar el valor proporcionado %s como tiempo UTC v\u00e1lido: %s
MILD_ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE_119=No se pudo analizar el valor proporcionado como descripci\u00f3n de regla de contenido del DIT v\u00e1lida porque estaba vac\u00edo o conten\u00eda s\u00f3lo espacios en blanco
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS_120=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de regla de contenido del DIT porque se encontr\u00f3 un car\u00e1cter '%3$s' en lugar del par\u00e9ntesis de apertura en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_DCR_TRUNCATED_VALUE_121=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de contenido del DIT porque se encontr\u00f3 el final del valor si bien Directory Server esperaba que se proporcionaran m\u00e1s datos
MILD_ERR_ATTR_SYNTAX_DCR_DOUBLE_PERIOD_IN_NUMERIC_OID_122=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de contenido del DIT porque el OID num\u00e9rico conten\u00eda dos puntos consecutivos en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_NUMERIC_OID_123=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de contenido del DIT porque el OID num\u00e9rico conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_STRING_OID_124=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de contenido del DIT porque el OID no num\u00e9rico conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_DCR_UNEXPECTED_CLOSE_PARENTHESIS_125=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de contenido del DIT porque conten\u00eda un par\u00e9ntesis de cierre inesperado en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_126=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de contenido del DIT porque conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS_127=La regla de contenido del DIT "%s" est\u00e1 asociada a una clase de objeto estructural %s que no est\u00e1 definida en el esquema del servidor
MILD_ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL_128=La regla de contenido del DIT "%s" est\u00e1 asociada a la clase de objeto con OID %s (%s).  Esta clase de objeto existe en el esquema del servidor pero no est\u00e1 definida como estructural sino como %s.
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS_129=La regla de contenido del DIT "%s" est\u00e1 asociada a una clase de objeto auxiliar %s que no est\u00e1 definida en el esquema del servidor
MILD_ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY_130=La regla de contenido del DIT "%s" est\u00e1 asociada a una clase de objeto auxiliar %s. Esta clase de objeto existe en el esquema del servidor pero no se define como auxiliar sino como %s
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR_131=La regla de contenido del DIT "%s" est\u00e1 asociada a un tipo de atributo necesario %s que no est\u00e1 definido en el esquema del servidor
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR_132=La regla de contenido del DIT "%s" est\u00e1 asociada a un tipo de atributo opcional %s que no est\u00e1 definido en el esquema del servidor
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR_133=La regla de contenido del DIT "%s" est\u00e1 asociada a un tipo de atributo prohibido %s que no est\u00e1 definido en el esquema del servidor
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_QUOTE_AT_POS_134=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de regla de contenido del DIT porque se encontr\u00f3 el car\u00e1cter %3$s en lugar de una comilla en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE_135=No se pudo analizar el valor proporcionado como descripci\u00f3n de formato de nombre v\u00e1lido porque estaba vac\u00edo o conten\u00eda s\u00f3lo espacios en blanco
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_OPEN_PARENTHESIS_136=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de formato de nombre porque se encontr\u00f3 un car\u00e1cter '%3$c' en lugar de un par\u00e9ntesis de apertura en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_TRUNCATED_VALUE_137=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de formato de nombre porque se encontr\u00f3 el final del valor si bien Directory Server esperaba que se proporcionaran m\u00e1s datos
MILD_ERR_ATTR_SYNTAX_NAME_FORM_DOUBLE_PERIOD_IN_NUMERIC_OID_138=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de formato de nombre porque el OID num\u00e9rico conten\u00eda dos puntos consecutivos en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_NUMERIC_OID_139=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de formato de nombre porque el OID num\u00e9rico conten\u00eda un car\u00e1cter %c no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_STRING_OID_140=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de formato de nombre porque el OID no num\u00e9rico conten\u00eda un car\u00e1cter %c no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNEXPECTED_CLOSE_PARENTHESIS_141=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de formato de nombre porque conten\u00eda un par\u00e9ntesis de cierre inesperado en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_142=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de formato de nombre porque conten\u00eda un car\u00e1cter %c no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS_143=La descripci\u00f3n de formato de nombre "%s" est\u00e1 asociada a una clase de objeto estructural %s que no est\u00e1 definida en el esquema del servidor
MILD_ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL_144=La descripci\u00f3n de formato de nombre "%s" est\u00e1 asociada a la clase de objeto con OID %s (%s). Esta clase de objeto existe en el esquema del servidor pero no est\u00e1 definida como estructural sino como %s.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR_145=La definici\u00f3n del formato de nombre con OID %s declar\u00f3 que deber\u00eda incluir el atributo necesario "%s".  No existe ning\u00fan tipo de atributo que coincida con este nombre u OID en el esquema del servidor
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR_146=La definici\u00f3n del formato de nombre con OID %s declar\u00f3 que deber\u00eda incluir el atributo opcional "%s".  No existe ning\u00fan tipo de atributo que coincida con este nombre u OID en el esquema del servidor
MILD_ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS_147=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de formato de nombre porque no especifica la clase de objeto estructural con la que est\u00e1 asociada
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_QUOTE_AT_POS_148=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de formato de nombre porque se encontr\u00f3 el car\u00e1cter %3$c en lugar de una comilla en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_MR_EMPTY_VALUE_149=No se pudo analizar el valor proporcionado como descripci\u00f3n de regla de coincidencia v\u00e1lida porque estaba vac\u00edo o conten\u00eda s\u00f3lo espacios en blanco
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_OPEN_PARENTHESIS_150=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de regla de coincidencia porque se encontr\u00f3 un car\u00e1cter '%3$s' en lugar de un par\u00e9ntesis de apertura en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_MR_TRUNCATED_VALUE_151=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de coincidencia porque se encontr\u00f3 el final del valor si bien Directory Server esperaba que se proporcionaran m\u00e1s datos
MILD_ERR_ATTR_SYNTAX_MR_DOUBLE_PERIOD_IN_NUMERIC_OID_152=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de coincidencia porque el OID num\u00e9rico conten\u00eda dos puntos consecutivos en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_NUMERIC_OID_153=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de coincidencia porque el OID num\u00e9rico conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_STRING_OID_154=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de coincidencia porque el OID no num\u00e9rico conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_MR_UNEXPECTED_CLOSE_PARENTHESIS_155=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de coincidencia porque conten\u00eda un par\u00e9ntesis de cierre inesperado en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_156=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de coincidencia porque conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX_157=La descripci\u00f3n de regla de coincidencia "%s" est\u00e1 asociada a la sintaxis de atributo %s que no est\u00e1 definida en el esquema del servidor
MILD_ERR_ATTR_SYNTAX_MR_NO_SYNTAX_158=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de coincidencia porque no especifica la sintaxis de atributo con la que est\u00e1 asociada
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_QUOTE_AT_POS_159=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de regla de coincidencia porque se encontr\u00f3 el car\u00e1cter %3$s en lugar de una comilla en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE_160=No se pudo analizar el valor proporcionado como descripci\u00f3n de uso de regla de coincidencia v\u00e1lida porque estaba vac\u00edo o conten\u00eda s\u00f3lo espacios en blanco
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_OPEN_PARENTHESIS_161=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de uso de regla de coincidencia porque se encontr\u00f3 un car\u00e1cter '%3$s' en lugar de un par\u00e9ntesis de apertura en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_MRUSE_TRUNCATED_VALUE_162=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de uso de regla de coincidencia porque se encontr\u00f3 el final del valor si bien Directory Server esperaba que se proporcionaran m\u00e1s datos
MILD_ERR_ATTR_SYNTAX_MRUSE_DOUBLE_PERIOD_IN_NUMERIC_OID_163=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de uso de regla de coincidencia porque el OID num\u00e9rico conten\u00eda dos puntos consecutivos en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_NUMERIC_OID_164=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de uso de regla de coincidencia porque el OID num\u00e9rico conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_STRING_OID_165=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de uso de regla de coincidencia porque el OID no num\u00e9rico conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE_166=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de uso de regla de coincidencia porque la regla de coincidencia especificada %s es desconocida
MILD_ERR_ATTR_SYNTAX_MRUSE_UNEXPECTED_CLOSE_PARENTHESIS_167=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de uso de regla de coincidencia porque conten\u00eda un par\u00e9ntesis de cierre inesperado en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_168=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de uso de regla de coincidencia porque conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR_169=La descripci\u00f3n de uso de regla de coincidencia "%s" est\u00e1 asociada al tipo de atributo %s que no est\u00e1 definido en el esquema del servidor
MILD_ERR_ATTR_SYNTAX_MRUSE_NO_ATTR_170=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de coincidencia porque no especifica el conjunto de tipos de atributo que se pueden utilizar con el OID asociado
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_QUOTE_AT_POS_171=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de uso de regla de coincidencia porque se encontr\u00f3 el car\u00e1cter %3$s en lugar de una comilla en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE_172=No se pudo analizar el valor proporcionado como descripci\u00f3n de regla de estructura del DIT v\u00e1lida porque estaba vac\u00edo o conten\u00eda s\u00f3lo espacios en blanco
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS_173=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de regla de estructura del DIT porque se encontr\u00f3 un car\u00e1cter '%3$s' en lugar del par\u00e9ntesis de apertura en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_DSR_TRUNCATED_VALUE_174=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de estructura del DIT porque se encontr\u00f3 el final del valor si bien Directory Server esperaba que se proporcionaran m\u00e1s datos
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_RULE_ID_175=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de estructura del DIT porque el ID de regla conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_DSR_UNEXPECTED_CLOSE_PARENTHESIS_176=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de estructura del DIT porque conten\u00eda un par\u00e9ntesis de cierre inesperado en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_177=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de estructura del DIT porque conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_NAME_FORM_178=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de estructura del DIT porque hac\u00eda referencia a un formato de nombre desconocido %s
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_RULE_ID_179=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de estructura del DIT porque hac\u00eda referencia a un ID de regla desconocido %d para una regla de estructura del DIT superior
MILD_ERR_ATTR_SYNTAX_DSR_NO_NAME_FORM_180=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de estructura del DIT porque no especific\u00f3 el formato de nombre para la regla
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_QUOTE_AT_POS_181=No se pudo analizar el valor proporcionado "%1$s" como descripci\u00f3n de regla de estructura del DIT porque se encontr\u00f3 el car\u00e1cter %3$s en lugar de una comilla en la posici\u00f3n %2$d
MILD_ERR_ATTR_SYNTAX_DSR_DOUBLE_PERIOD_IN_NUMERIC_OID_182=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de estructura del DIT porque el OID num\u00e9rico conten\u00eda dos puntos consecutivos en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_NUMERIC_OID_183=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de estructura del DIT porque el OID num\u00e9rico conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_STRING_OID_184=No se pudo analizar el valor proporcionado "%s" como descripci\u00f3n de regla de estructura del DIT porque el OID no num\u00e9rico conten\u00eda un car\u00e1cter %s no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_TELEX_TOO_SHORT_185=El valor proporcionado "%s" es demasiado corto para considerarse un valor de n\u00famero de t\u00e9lex v\u00e1lido
MILD_ERR_ATTR_SYNTAX_TELEX_NOT_PRINTABLE_186=El valor proporcionado "%s" no tiene un n\u00famero de t\u00e9lex v\u00e1lido porque un car\u00e1cter %s en la posici\u00f3n %d no era un car\u00e1cter de cadena imprimible v\u00e1lido
MILD_ERR_ATTR_SYNTAX_TELEX_ILLEGAL_CHAR_187=El valor proporcionado "%s" no tiene un n\u00famero de t\u00e9lex v\u00e1lido porque un car\u00e1cter %s en la posici\u00f3n %d no era ni un car\u00e1cter de cadena imprimible v\u00e1lido ni un signo de d\u00f3lar para separar los componentes de n\u00famero de t\u00e9lex
MILD_ERR_ATTR_SYNTAX_TELEX_TRUNCATED_188=El valor proporcionado "%s" no tiene un n\u00famero de t\u00e9lex v\u00e1lido porque se encontr\u00f3 el final del valor antes de que se pudieran leer tres cadenas imprimibles delimitadas por el s\u00edmbolo del d\u00f3lar
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_EMPTY_189=No se pudo analizar el valor proporcionado como n\u00famero de tel\u00e9fono de facs\u00edmil v\u00e1lido porque estaba vac\u00edo
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_NOT_PRINTABLE_190=No se pudo analizar el valor proporcionado "%s" como n\u00famero de tel\u00e9fono de facs\u00edmil v\u00e1lido porque un car\u00e1cter %s en la posici\u00f3n %d no era un car\u00e1cter de cadena imprimible v\u00e1lido
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_END_WITH_DOLLAR_191=No se pudo analizar el valor proporcionado "%s" como n\u00famero de tel\u00e9fono de facs\u00edmil v\u00e1lido porque finaliza con un signo de d\u00f3lar que deber\u00eda estar seguido por un par\u00e1metro de fax
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_ILLEGAL_PARAMETER_192=No se pudo analizar el valor proporcionado "%s" como n\u00famero de tel\u00e9fono de facs\u00edmil v\u00e1lido porque la cadena "%s" entre las posiciones %d y %d no era un par\u00e1metro de fax v\u00e1lido
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_INVALID_DN_193=No se pudo analizar el valor proporcionado "%s" como nombre v\u00e1lido y valor UID opcional porque se produjo un error al intentar analizar la parte de ND: %s
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_ILLEGAL_BINARY_DIGIT_194=No se pudo analizar el valor proporcionado "%s" como nombre v\u00e1lido y valor UID opcional porque la parte de UID conten\u00eda un d\u00edgito binario no v\u00e1lido %s en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_TELETEXID_EMPTY_195=No se pudo analizar el valor proporcionado como identificador de terminal de teletexto v\u00e1lido porque estaba vac\u00edo
MILD_ERR_ATTR_SYNTAX_TELETEXID_NOT_PRINTABLE_196=No se pudo analizar el valor proporcionado "%s" como identificador de terminal de teletexto v\u00e1lido porque un car\u00e1cter %s en la posici\u00f3n %d no era un car\u00e1cter de cadena imprimible v\u00e1lido
MILD_ERR_ATTR_SYNTAX_TELETEXID_END_WITH_DOLLAR_197=No se pudo analizar el valor proporcionado "%s" como identificador de terminal de teletexto v\u00e1lido porque finaliza con un signo de d\u00f3lar que deber\u00eda ser seguido por un par\u00e1metro de TTX
MILD_ERR_ATTR_SYNTAX_TELETEXID_PARAM_NO_COLON_198=No se pudo analizar el valor proporcionado "%s" como identificador de terminal de teletexto v\u00e1lido porque la cadena de par\u00e1metros no conten\u00eda un signo de dos puntos para separar el nombre del valor
MILD_ERR_ATTR_SYNTAX_TELETEXID_ILLEGAL_PARAMETER_199=No se pudo analizar el valor proporcionado "%s" como identificador de terminal de teletexto v\u00e1lido porque la cadena "%s" no es un nombre de par\u00e1metro TTX v\u00e1lido
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_EMPTY_VALUE_200=No se pudo analizar el valor proporcionado como otro valor de buz\u00f3n porque estaba vac\u00edo
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MBTYPE_201=No se pudo analizar el valor proporcionado "%s" como otro valor de buz\u00f3n porque no hab\u00eda ning\u00fan tipo de buz\u00f3n delante del signo de d\u00f3lar
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MBTYPE_CHAR_202=No se pudo analizar el valor proporcionado "%s" como otro valor de buz\u00f3n porque el tipo de buz\u00f3n conten\u00eda un car\u00e1cter no v\u00e1lido %s en la posici\u00f3n %d.
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MAILBOX_203=No se pudo analizar el valor proporcionado "%s" como otro valor de buz\u00f3n porque no hab\u00eda ning\u00fan buz\u00f3n detr\u00e1s del signo de d\u00f3lar
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MB_CHAR_204=No se pudo analizar el valor proporcionado "%s" como otro valor de buz\u00f3n porque el buz\u00f3n conten\u00eda un car\u00e1cter no v\u00e1lido %s en la posici\u00f3n %d.
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_OC_205=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda porque no conten\u00eda un nombre de clase de objeto u OID delante del car\u00e1cter de almohadilla (#)
MILD_ERR_ATTR_SYNTAX_GUIDE_ILLEGAL_CHAR_206=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda porque la parte de criterios %s conten\u00eda un car\u00e1cter no v\u00e1lido %c en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_GUIDE_MISSING_CLOSE_PAREN_207=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda porque la parte de criterios %s no conten\u00eda un par\u00e9ntesis de cierre que correspond\u00eda al par\u00e9ntesis de apertura inicial
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_QUESTION_MARK_208=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda porque la parte de criterios %s comenzaba con un signo de interrogaci\u00f3n aunque no seguido por la cadena "true" (verdadero) o "false" (falso)
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_DOLLAR_209=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda porque la parte de criterios %s no conten\u00eda un signo de d\u00f3lar para separar el tipo de atributo del tipo de coincidencia
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_ATTR_210=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda porque la parte de criterios %s no especificaba un tipo de atributo delante del signo de d\u00f3lar
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_MATCH_TYPE_211=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda porque la parte de criterios %s no especificaba un tipo de coincidencia detr\u00e1s del signo de d\u00f3lar
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_MATCH_TYPE_212=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda porque la parte de criterios %s ten\u00eda un tipo de coincidencia no v\u00e1lido que comenzaba en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP_213=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda mejorado porque no conten\u00eda un car\u00e1cter de almohadilla (#) para separar la clase de objeto de los criterios
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC_214=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda mejorado porque no conten\u00eda un nombre de clase de objeto u OID delante del car\u00e1cter de almohadilla (#)
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_DOUBLE_PERIOD_IN_OC_OID_215=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda mejorado porque el OID num\u00e9rico %s que especifica la clase de objeto conten\u00eda dos puntos consecutivos en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_OID_216=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda mejorado porque el OID num\u00e9rico %s que especifica la clase de objeto conten\u00eda un car\u00e1cter no v\u00e1lido %s  en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_NAME_217=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda mejorado porque el nombre de clase de objeto %s conten\u00eda un car\u00e1cter no v\u00e1lido %s  en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_FINAL_SHARP_218=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda mejorado porque no ten\u00eda un car\u00e1cter de almohadilla (#) para separar los criterios del \u00e1mbito
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SCOPE_219=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda mejorado porque no se proporcion\u00f3 ning\u00fan \u00e1mbito detr\u00e1s del car\u00e1cter almohadilla (#) final
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_INVALID_SCOPE_220=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda mejorado porque el \u00e1mbito %s especificado no era v\u00e1lido
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_CRITERIA_221=No se pudo analizar el valor proporcionado "%s" como valor de gu\u00eda mejorado porque no se especific\u00f3 ning\u00fan criterio entre los caracteres de almohadilla (#).
MILD_ERR_ATTR_SYNTAX_OID_INVALID_VALUE_222=No se pudo analizar el valor proporcionado %s como OID v\u00e1lido: %s
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NORMALIZE_FAILURE_223=An unexpected \
### error occurred while trying to normalize value %s as a generalized time \
### value:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_CANNOT_NORMALIZE_224=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseExactOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_INVALID_TYPE_225=An error occurred while \
### attempting to compare two objects using the caseExactOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_CANNOT_NORMALIZE_226=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseIgnoreOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_INVALID_TYPE_227=An error occurred while \
### attempting to compare two objects using the caseIgnoreOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_CANNOT_NORMALIZE_228=An error \
### occurred while attempting to compare two AttributeValue objects using the \
### generalizedTimeOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_INVALID_TYPE_229=An error occurred \
### while attempting to compare two objects using the \
### generalizedTimeOrderingMatch matching rule because the objects were of an \
### unsupported type %s.  Only byte arrays, ASN.1 octet strings, and attribute \
### value objects may be compared
###SEVERE_WARN_OMR_INTEGER_COMPARE_CANNOT_NORMALIZE_230=An error occurred while \
### attempting to compare two AttributeValue objects using the \
### integerOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_INTEGER_COMPARE_INVALID_TYPE_231=An error occurred while \
### attempting to compare two objects using the integerOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_CANNOT_NORMALIZE_232=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### numericStringOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_INVALID_TYPE_233=An error occurred \
### while attempting to compare two objects using the numericStringOrderingMatch \
### matching rule because the objects were of an unsupported type %s.  Only byte \
### arrays, ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_CANNOT_NORMALIZE_234=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### octetStringOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_INVALID_TYPE_235=An error occurred while \
### attempting to compare two objects using the octetStringOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH_236=The provided value "%s" has \
### an invalid length for a UUID.  All UUID values must have a length of exactly \
### 36 bytes, but the provided value had a length of %d bytes
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH_237=The provided value "%s" should \
### have had a dash at position %d, but the character '%s' was found instead
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX_238=The provided value "%s" should \
### have had a hexadecimal digit at position %d, but the character '%s' was found \
### instead
INFO_ATTR_SYNTAX_DIRECTORYSTRING_DESCRIPTION_ALLOW_ZEROLENGTH_239=Indica si se permitir\u00e1 que los atributos con la sintaxis de cadena de directorios tengan valores de longitud cero.  Las especificaciones LDAP no lo permiten t\u00e9cnicamente, pero puede resultar \u00fatil para la compatibilidad de retroceso con versiones anteriores de Directory Server
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_CANNOT_DETERMINE_ZEROLENGTH_240=An \
### error occurred while trying to determine the value of the %s configuration \
### attribute, which indicates whether directory string attributes should be \
### allowed to have zero-length values:  %s
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_INVALID_ZEROLENGTH_VALUE_241=The \
### operation attempted to assign a zero-length value to an attribute with the \
### directory string syntax
INFO_ATTR_SYNTAX_DIRECTORYSTRING_UPDATED_ALLOW_ZEROLENGTH_242=El %s atributo de la entrada de configuraci\u00f3n %s se ha actualizado con un nuevo valor de %s
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_SCHEME_CHAR_243=The provided \
### authPassword value had an invalid scheme character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_244=The provided authPassword value \
### had a zero-length scheme element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_SEPARATOR_245=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the scheme and authInfo elements
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_INFO_CHAR_246=The provided \
### authPassword value had an invalid authInfo character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_247=The provided authPassword \
### value had a zero-length authInfo element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_SEPARATOR_248=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the authInfo and authValue elements
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_INITIAL_PARENTHESIS_249=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### it did not start with a parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_NONSPACE_250=The provided value "%s" could not \
### be parsed by the integer first component matching rule because it did not \
### have any non-space characters after the opening parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_SPACE_AFTER_INT_251=The provided value "%s" \
### could not be parsed by the integer first component matching rule because it \
### did not have any space characters after the first component
###SEVERE_ERR_EMR_INTFIRSTCOMP_FIRST_COMPONENT_NOT_INT_252=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### the first component does not appear to be an integer value
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_VALUE_253=No value was given to decode by \
### the user password attribute syntax
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_OPENING_BRACE_254=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not start with the opening curly brace ("{") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_CLOSING_BRACE_255=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not contain a closing curly brace ("}") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_SCHEME_256=Unable to decode the provided \
### value according to the user password syntax because the value does not \
### contain a storage scheme name
MILD_ERR_ATTR_SYNTAX_RFC3672_SUBTREE_SPECIFICATION_INVALID_257=No se pudo analizar el valor proporcionado "%s" como especificaci\u00f3n de sub\u00e1rbol RFC 3672 v\u00e1lido
MILD_ERR_ATTR_SYNTAX_ABSOLUTE_SUBTREE_SPECIFICATION_INVALID_258=No se pudo analizar el valor proporcionado "%s" como especificaci\u00f3n de sub\u00e1rbol absoluto v\u00e1lido
MILD_ERR_ATTR_SYNTAX_RELATIVE_SUBTREE_SPECIFICATION_INVALID_259=No se pudo analizar el valor proporcionado "%s" como especificaci\u00f3n de sub\u00e1rbol relativo v\u00e1lido
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_INTEGER_260=The provided value %s is not \
### allowed for attributes with a Integer syntax
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_VALUE_CHAR_261=The provided \
### authPassword value had an invalid authValue character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_VALUE_262=The provided authPassword \
### value had a zero-length authValue element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_TRAILING_CHAR_263=The provided \
### authPassword value had an invalid trailing character at position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXTENSION_INVALID_CHARACTER_264=No se pudo analizar el valor proporcionado "%s" como extensi\u00f3n de sintaxis de atributo porque se encontr\u00f3 un car\u00e1cter no v\u00e1lido en la posici\u00f3n %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_INVALID_EXTENSION_265=No se pudo analizar la sintaxis de atributo debido a una extensi\u00f3n no v\u00e1lida.%s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE_266=The definition \
### for objectclass %s is invalid because it has an objectclass type of %s but \
### this is incompatible with the objectclass type %s for the superior class %s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP_267=The \
### definition for objectclass %s is invalid because it is defined as a \
### structural class but its superior chain does not include the "top" \
### objectclass
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_SUPERIOR_USAGE_268=The definition \
### for attribute type %s is invalid because its attribute usage %s is not the \
### same as the usage for its superior type %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_FROM_NONCOLLECTIVE_269=The \
### definition for attribute type %s is invalid because it is defined as a \
### collective type but the superior type %s is not collective
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NONCOLLECTIVE_FROM_COLLECTIVE_270=The \
### definition for attribute type %s is invalid because it is not defined as a \
### collective type but the superior type %s is collective
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_STRUCTURAL_271=La regla de contenido del DIT "%s" no es v\u00e1lida porque proh\u00edbe el uso del tipo de atributo %s que necesita la clase de objeto estructural asociada %s
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_AUXILIARY_272=La regla de contenido del DIT "%s" no es v\u00e1lida porque proh\u00edbe el uso del tipo de atributo %s que necesita la clase de objeto auxiliar asociada %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_IS_OPERATIONAL_273=The definition \
### for attribute type %s is invalid because it is declared COLLECTIVE but does \
### not have a usage of userApplications
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NO_USER_MOD_NOT_OPERATIONAL_274=The \
### definition for attribute type %s is invalid because it is declared \
### NO-USER-MODIFICATION but does not have an operational usage
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_FRACTION_CHAR_275=The \
### provided value %s is not a valid generalized time value because it contains \
### illegal character %s in the fraction component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_EMPTY_FRACTION_276=The provided \
### value %s is not a valid generalized time value because it does not contain at \
### least one digit after the period to use as the fractional component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NO_TIME_ZONE_INFO_277=The provided \
### value %s is not a valid generalized time value because it does not end with \
### 'Z' or a time zone offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_TIME_278=The provided value \
### %s is not a valid generalized time value because it represents an invalid \
### time (e.g., a date that does not exist):  %s
NOTICE_SCHEMA_IMPORT_FAILED_279=No se pudo importar un elemento de esquema: %s, %s
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_LOCALE_280=La regla de intercalaci\u00f3n %s que se encuentra en la entrada de regla de coincidencia %s no es v\u00e1lida, ya que JVM no admite la configuraci\u00f3n regional %s
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_FORMAT_281=La regla de intercalaci\u00f3n proporcionada %s no contiene un formato v\u00e1lido de OID:CONFIGURACI\u00d3N REGIONAL
MILD_ERR_ATTR_SYNTAX_DN_INVALID_REQUIRES_ESCAPE_CHAR_282=No se pudo analizar el valor proporcionado "%s" como nombre \u00fanico v\u00e1lido porque un valor de atributo empezaba con un car\u00e1cter en la posici\u00f3n %d al que hay que aplicarle caracteres de escape
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_CHAR_283=No se pudo analizar el valor proporcionado "%s" como definici\u00f3n de tipo de atributo v\u00e1lida porque no se permite el car\u00e1cter '%c' en la posici\u00f3n %d en un nombre de tipo de atributo
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_284=No se pudo analizar el valor proporcionado "%s" como definici\u00f3n de tipo de atributo v\u00e1lida porque no se permite el car\u00e1cter de subrayado en un nombre de tipo de atributo a menos que est\u00e9 habilitada la opci\u00f3n de configuraci\u00f3n %s
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_285=No se pudo analizar el valor proporcionado "%s" como definici\u00f3n de tipo de atributo v\u00e1lida porque no se permite el car\u00e1cter de gui\u00f3n como primer car\u00e1cter de un nombre de tipo de atributo
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_286=No se pudo analizar el valor proporcionado "%s" como definici\u00f3n de tipo de atributo v\u00e1lida porque no se permite el car\u00e1cter de subrayado como primer car\u00e1cter de un nombre de tipo de atributo, incluso si est\u00e1 habilitada la opci\u00f3n de configuraci\u00f3n %s
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_287=No se pudo analizar el valor proporcionado "%s" como definici\u00f3n de tipo de atributo v\u00e1lida porque no se permite el d\u00edgito '%c' como primer car\u00e1cter de un nombre de tipo de atributo a menos que est\u00e9 especificado el nombre como un OID o que est\u00e9 habilitada la opci\u00f3n de configuraci\u00f3n %s
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_CHAR_288=No se pudo analizar el valor proporcionado "%s" como definici\u00f3n de clase de objeto v\u00e1lida porque no se permite el car\u00e1cter '%c' en la posici\u00f3n %d en un nombre de clase de objeto
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_289=No se pudo analizar el valor proporcionado "%s" como definici\u00f3n de clase de objeto v\u00e1lida porque no se permite el car\u00e1cter de subrayado en un nombre de clase de objeto a menos que est\u00e9 habilitada la opci\u00f3n de configuraci\u00f3n %s
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_290=No se pudo analizar el valor proporcionado "%s" como definici\u00f3n de clase de objeto v\u00e1lida porque no se permite el car\u00e1cter de gui\u00f3n como primer car\u00e1cter de un nombre de clase de objeto
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_291=No se pudo analizar el valor proporcionado "%s" como definici\u00f3n de clase de objeto v\u00e1lida porque no se permite el car\u00e1cter de subrayado como primer car\u00e1cter de un nombre de clase de objeto, incluso si est\u00e1 habilitada la opci\u00f3n de configuraci\u00f3n %s
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_292=No se pudo analizar el valor proporcionado "%s" como definici\u00f3n de clase de objeto v\u00e1lida porque no se permite el d\u00edgito '%c' como primer car\u00e1cter de un nombre de clase de objeto a menos que est\u00e9 especificado el nombre como un OID o que est\u00e9 habilitada la opci\u00f3n de configuraci\u00f3n %s
sdk/src/com/sun/opends/sdk/util/messages_fr.properties
New file
@@ -0,0 +1,531 @@
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#      Copyright 2009 Sun Microsystems, Inc.
#
# Global directives
#
global.ordinal=-1
#
# Format string definitions
#
# Keys must be formatted as follows:
#
# [DESCRIPTION]
#
# where:
#
# DESCRIPTION is an upper case string providing a hint as to the context of
# the message in upper case with the underscore ('_') character serving as
# word separator
#
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_APPROXIMATE_MATCHING_RULE_1=Unable to retrieve \
### approximate matching rule %s used as the default for the %s attribute syntax. \
### Approximate matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_EQUALITY_MATCHING_RULE_2=Unable to retrieve \
### equality matching rule %s used as the default for the %s attribute syntax. \
### Equality matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_ORDERING_MATCHING_RULE_3=Unable to retrieve \
### ordering matching rule %s used as the default for the %s attribute syntax. \
### Ordering matches will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_SUBSTRING_MATCHING_RULE_4=Unable to retrieve \
### substring matching rule %s used as the default for the %s attribute syntax. \
### Substring matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN_5=The provided value "%s" is not \
### allowed for attributes with a Boolean syntax.  The only allowed values are \
### 'TRUE' and 'FALSE'
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT_6=The provided value "%s" is too \
### short to be a valid bit string.  A bit string must be a series of binary \
### digits surrounded by single quotes and followed by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED_7=The provided value "%s" is not \
### a valid bit string because it is not surrounded by single quotes and followed \
### by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT_8=The provided value "%s" is \
### not a valid bit string because '%s' is not a valid binary digit
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_INVALID_LENGTH_9=La valeur indiqu\u00e9e "%s" n'est pas une cha\u00eene de pays valide car elle n'a pas une longueur de deux caract\u00e8res exactement
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_NOT_PRINTABLE_10=La valeur indiqu\u00e9e "%s" n'est pas une cha\u00eene de pays valide car elle contient au moins un caract\u00e8re non imprimable
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_NO_ELEMENTS_11=La valeur indiqu\u00e9e "%s" n'est pas une m\u00e9thode de distribution valide car elle ne contient aucun \u00e9l\u00e9ment
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_INVALID_ELEMENT_12=La valeur indiqu\u00e9e "%s" n'est pas une m\u00e9thode de distribution valide car "%s" n'est pas une m\u00e9thode valide
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_TOO_SHORT_13=The provided value "%s" \
### is too short to be a valid generalized time value
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_YEAR_14=The provided value \
### "%s" is not a valid generalized time value because the '%s' character is not \
### allowed in the century or year specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MONTH_15=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid month \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_DAY_16=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid day \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_HOUR_17=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid hour \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MINUTE_18=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid minute \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SECOND_19=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid second \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SUBSECOND_20=The provided \
### value "%s" is not a valid generalized time value because the sub-second \
### component is not valid (between 1 and 3 numeric digits)
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_LONG_SUBSECOND_21=The provided value \
### "%s" is not a valid generalized time value because the sub-second value may \
### not contain more than three digits
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_OFFSET_22=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid GMT \
### offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_CHAR_23=The provided value \
### "%s" is not a valid generalized time value because it contains an invalid \
### character '%s' at position %d
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_CANNOT_PARSE_24=The provided value \
### "%s" could not be parsed as a valid generalized time:  %s
MILD_ERR_ATTR_SYNTAX_DN_INVALID_25=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide\u00a0:  %s
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_COMMA_26=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le dernier caract\u00e8re autre qu'un espace est une virgule ou un point-virgule
MILD_ERR_ATTR_SYNTAX_DN_ATTR_START_WITH_DIGIT_27=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le chiffre num\u00e9rique "%s" n'est pas autoris\u00e9 en tant que premier caract\u00e8re d'un nom d'attribut
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_CHAR_28=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le caract\u00e8re '%c' \u00e0 la position %d n'est pas autoris\u00e9 dans un nom d'attribut
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_UNDERSCORE_CHAR_29=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le trait de soulignement n'est pas autoris\u00e9 dans un nom d'attribut, sauf si l'option de configuration %s est activ\u00e9e
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DASH_30=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le trait d'union n'est pas autoris\u00e9 en tant que premier caract\u00e8re d'un nom d'attribut
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_UNDERSCORE_31=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le tiret de soulignement n'est pas autoris\u00e9 en tant que premier caract\u00e8re d'un nom d'attribut, m\u00eame si l'option de configuration %s est activ\u00e9e
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DIGIT_32=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le chiffre '%c' n'est pas autoris\u00e9 en tant que premier caract\u00e8re d'un nom d'attribut, sauf si le nom est sp\u00e9cifi\u00e9 comme un OID ou que l'option de configuration %s est activ\u00e9e
MILD_ERR_ATTR_SYNTAX_DN_ATTR_NO_NAME_33=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car il contient un NRD contenant un nom d'attribut vide
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_PERIOD_34=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le nom d'attribut analys\u00e9 %s inclut un point mais ne semble pas \u00eatre un OID valide
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_ATTR_NAME_35=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le dernier caract\u00e8re autre qu'un espace fait partie du nom d'attribut '%s'
MILD_ERR_ATTR_SYNTAX_DN_NO_EQUAL_36=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le caract\u00e8re suivant autre qu'un espace apr\u00e8s le nom d'attribut "%s" devrait \u00eatre un signe \u00e9gal au lieu de '%c'
MILD_ERR_ATTR_SYNTAX_DN_INVALID_CHAR_37=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le caract\u00e8re '%c' \u00e0 la position %d n'est pas valide
MILD_ERR_ATTR_SYNTAX_DN_HEX_VALUE_TOO_SHORT_38=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car une valeur d'attribut commence par un di\u00e8se (#) sans \u00eatre suivie d'un multiple positif de deux chiffres hexad\u00e9cimaux
MILD_ERR_ATTR_SYNTAX_DN_INVALID_HEX_DIGIT_39=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car une valeur d'attribut commence par un di\u00e8se (#) mais contient un caract\u00e8re %c qui n'est pas un chiffre hexad\u00e9cimal valide
MILD_ERR_ATTR_SYNTAX_DN_ATTR_VALUE_DECODE_FAILURE_40=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car un \u00e9chec inattendu s'est produit lors d'une tentative d'analyse d'une valeur d'attribut de l'un des composants du NRD\u00a0:  "%s"
MILD_ERR_ATTR_SYNTAX_DN_UNMATCHED_QUOTE_41=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car un des composants du NRD inclut une valeur cit\u00e9e sans le guillemet de fermeture correspondant
MILD_ERR_ATTR_SYNTAX_DN_ESCAPED_HEX_VALUE_INVALID_42=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car un des composants du NRD inclut une valeur contenant un chiffre hexad\u00e9cimal neutralis\u00e9 qui n'est pas suivi d'un second chiffre hexad\u00e9cimal
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INITIAL_ZERO_43=The provided value "%s" could \
### not be parsed as a valid integer because the first digit may not be zero \
### unless it is the only digit
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_MISPLACED_DASH_44=The provided value "%s" \
### could not be parsed as a valid integer because the dash may only appear if it \
### is the first character of the value followed by one or more digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INVALID_CHARACTER_45=The provided value "%s" \
### could not be parsed as a valid integer because character '%c' at position %d \
### is not allowed in an integer value
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_EMPTY_VALUE_46=The provided value "%s" could \
### not be parsed as a valid integer because it did not contain any digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_DASH_NEEDS_VALUE_47=The provided value "%s" \
### could not be parsed as a valid integer because it contained only a dash not \
### followed by an integer value
MILD_ERR_ATTR_SYNTAX_OID_NO_VALUE_48=Impossible d'analyser la valeur indiqu\u00e9e en tant qu'OID valide car il ne contient aucun caract\u00e8re
MILD_ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER_49=Impossible d'analyser la valeur indiqu\u00e9e %s en tant qu'OID valide car il contient un caract\u00e8re ill\u00e9gal \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS_50=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'OID valide car il contient deux points cons\u00e9cutifs \u00e0 la position %d ou \u00e0 proximit\u00e9
MILD_ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD_51=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'OID valide car il se termine par un point
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE_52=Impossible d'analyser la valeur indiqu\u00e9e en tant que description de type d'attribut valide car elle est vide ou ne contient que des blancs
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_OPEN_PARENTHESIS_53=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de type d'attribut car une parenth\u00e8se ouverte devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re '%s'
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_TRUNCATED_VALUE_54=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de type d'attribut car la fin de la valeur est atteinte alors que Directory Server attend plus de donn\u00e9es
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_DOUBLE_PERIOD_IN_NUMERIC_OID_55=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de type d'attribut car l'OID num\u00e9rique contient deux points cons\u00e9cutifs \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_NUMERIC_OID_56=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de type d'attribut car l'OID num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_STRING_OID_57=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de type d'attribut car l'OID non num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_58=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de type d'attribut car elle contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_UNEXPECTED_CLOSE_PARENTHESIS_59=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de type d'attribut car elle contient une parenth\u00e8se de fermeture inattendue \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_60=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de type d'attribut car le premier caract\u00e8re non vide suivant un jeton %s devrait \u00eatre un guillemet simple et non le caract\u00e8re %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE_61=The definition for \
### the attribute type with OID %s declared a superior type with an OID of %s. \
### No attribute type with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR_62=The definition for \
### the attribute type with OID %s declared that approximate matching should be \
### performed using the matching rule "%s".  No such approximate matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR_63=The definition for \
### the attribute type with OID %s declared that equality matching should be \
### performed using the matching rule "%s".  No such equality matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR_64=The definition for \
### the attribute type with OID %s declared that ordering matching should be \
### performed using the matching rule "%s".  No such ordering matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR_65=The definition for \
### the attribute type with OID %s declared that substring matching should be \
### performed using the matching rule "%s".  No such substring matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SYNTAX_66=The definition for the \
### attribute type with OID %s declared that it should have a syntax with OID %s. \
### No such syntax is configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE_67=The definition \
### for the attribute type with OID %s declared that it should have an attribute \
### usage of %s.  This is an invalid usage
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_AT_POS_68=The provided value \
### "%s" could not be parsed as an attribute type description because a single \
### quote was expected at position %d but the character %s was found instead
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE_69=Impossible d'analyser la valeur indiqu\u00e9e en tant que description de classe d'objet valide car elle est vide ou ne contient que des blancs
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS_70=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de classe d'objet car une parenth\u00e8se ouverte devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re '%s'
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_TRUNCATED_VALUE_71=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de classe d'objet car la fin de la valeur est atteinte alors que Directory Server attend plus de donn\u00e9es
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_DOUBLE_PERIOD_IN_NUMERIC_OID_72=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de classe d'objet car l'OID num\u00e9rique contient deux points cons\u00e9cutifs \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_NUMERIC_OID_73=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de classe d'objet car l'OID num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_STRING_OID_74=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de classe d'objet car l'OID non num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_75=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de classe d'objet car elle contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_UNEXPECTED_CLOSE_PARENTHESIS_76=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de classe d'objet car elle contient une parenth\u00e8se de fermeture inattendue \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_77=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de classe d'objet car le premier caract\u00e8re non vide suivant un jeton %s devrait \u00eatre un guillemet simple et non le caract\u00e8re %s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS_78=The definition \
### for the objectclass with OID %s declared a superior objectclass with an OID \
### of %s.  No objectclass with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_AT_POS_79=The provided \
### value "%s" could not be parsed as an objectclass description because a single \
### quote was expected at position %d but the character %s was found instead
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR_80=The definition \
### for the objectclass with OID %s declared that it should include required \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR_81=The definition \
### for the objectclass with OID %s declared that it should include optional \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER_82=The provided value "%s" \
### cannot be parsed as a valid IA5 string because it contains an illegal \
### character "%s" that is not allowed in the IA5 (ASCII) character set
INFO_ATTR_SYNTAX_TELEPHONE_DESCRIPTION_STRICT_MODE_83=Ceci indique si la syntaxe d'attribut de num\u00e9ro de t\u00e9l\u00e9phone doit utiliser un mode strict dans lequel seules les valeurs au format ITU-T E.123 seront accept\u00e9es.  Si cette option est activ\u00e9e, toutes les valeurs dans un autre format seront refus\u00e9es.  Si elle est d\u00e9sactiv\u00e9e, toutes les valeurs seront accept\u00e9es mais seuls les chiffres sont pris en compte lors de la recherche de correspondance
###SEVERE_WARN_ATTR_SYNTAX_TELEPHONE_CANNOT_DETERMINE_STRICT_MODE_84=An error \
### occurred while trying to retrieve attribute \
### ds-cfg-strict-format from configuration entry %s:  %s.  The \
### Directory Server will not enforce strict compliance to the ITU-T E.123 format \
### for telephone number values
MILD_ERR_ATTR_SYNTAX_TELEPHONE_EMPTY_85=La valeur indiqu\u00e9e n'est pas un num\u00e9ro de t\u00e9l\u00e9phone valide car elle est vide ou null
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_PLUS_86=La valeur indiqu\u00e9e "%s" n'est pas un num\u00e9ro de t\u00e9l\u00e9phone valide car la v\u00e9rification stricte des num\u00e9ros de t\u00e9l\u00e9phone est activ\u00e9e et la valeur ne commence pas par un signe plus respectant la sp\u00e9cification ITU-T E.123
MILD_ERR_ATTR_SYNTAX_TELEPHONE_ILLEGAL_CHAR_87=La valeur indiqu\u00e9e "%s" n'est pas un num\u00e9ro de t\u00e9l\u00e9phone valide car la v\u00e9rification stricte des num\u00e9ros de t\u00e9l\u00e9phone est activ\u00e9e et le caract\u00e8re %s \u00e0 la position %d n'est pas autoris\u00e9 par la sp\u00e9cification ITU-T E.123
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_DIGITS_88=La valeur indiqu\u00e9e "%s" n'est pas un num\u00e9ro de t\u00e9l\u00e9phone valide car il ne contient aucun chiffre num\u00e9rique
INFO_ATTR_SYNTAX_TELEPHONE_UPDATED_STRICT_MODE_89=La valeur de l'attribut de configuration ds-cfg-strict-format, qui indique si la v\u00e9rification stricte des num\u00e9ros de t\u00e9l\u00e9phone doit \u00eatre utilis\u00e9e, a \u00e9t\u00e9 mise \u00e0 jour sur %s dans l'entr\u00e9e de configuration %s
###SEVERE_WARN_ATTR_SYNTAX_NUMERIC_STRING_ILLEGAL_CHAR_90=The provided value \
### "%s" is not a valid numeric string because it contained character %s at \
### position %d that was neither a digit nor a space
MILD_ERR_ATTR_SYNTAX_NUMERIC_STRING_EMPTY_VALUE_91=La valeur indiqu\u00e9e n'est pas une cha\u00eene num\u00e9rique valide car elle ne contient aucun caract\u00e8re.  Une valeur de cha\u00eene num\u00e9rique doit contenir au moins un chiffre num\u00e9rique ou un espace
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE_92=Impossible d'analyser la valeur indiqu\u00e9e en tant que description de syntaxe d'attribut valide car elle est vide ou ne contient que des blancs
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_OPEN_PARENTHESIS_93=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car une parenth\u00e8se ouverte devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re '%s'
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TRUNCATED_VALUE_94=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car la fin de la valeur est atteinte alors que Directory Server attend plus de donn\u00e9es
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_DOUBLE_PERIOD_IN_NUMERIC_OID_95=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car l'OID num\u00e9rique contient deux points cons\u00e9cutifs \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_NUMERIC_OID_96=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car l'OID num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_STRING_OID_97=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car l'OID non num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_UNEXPECTED_CLOSE_PARENTHESIS_98=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car elle contient une parenth\u00e8se de fermeture inattendue \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_TOKEN_99=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car une erreur inattendue s'est produite lors de la tentative de lecture du jeton "DESC" \u00e0 partir de la cha\u00eene ou pr\u00e8s de la position %d\u00a0:  %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TOKEN_NOT_DESC_100=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car le jeton "DESC" devrait \u00eatre pr\u00e9sent au lieu de la cha\u00eene "%s"
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_VALUE_101=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car une erreur inattendue s'est produite lors de la tentative de lecture de la valeur du jeton "DESC" \u00e0 partir de la cha\u00eene ou pr\u00e8s de la position %d\u00a0:  %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_CLOSE_PARENTHESIS_102=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car une parenth\u00e8se ferm\u00e9e devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re '%s'
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_AFTER_CLOSE_103=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de syntaxe d'attribut car un caract\u00e8re ill\u00e9gal %s se trouve \u00e0 la position %d apr\u00e8s la parenth\u00e8se ferm\u00e9e
###SEVERE_WARN_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_QUOTE_AT_POS_104=The provided \
### value "%s" could not be parsed as an attribute syntax description because a \
### single quote was expected at position %d but the character %s was found \
### instead
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_EMPTY_VALUE_105=The provided value \
### could not be parsed as a printable string because it was null or empty.  A \
### printable string must contain at least one character
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_ILLEGAL_CHARACTER_106=The provided \
### value "%s" could not be parsed as a printable string because it contained an \
### invalid character %s at position %d
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_ONLY_WILDCARD_107=The provided value "*" \
### could not be parsed as a substring assertion because it consists only of a \
### wildcard character and zero-length substrings are not allowed
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS_108=The provided \
### value "%s" could not be parsed as a substring assertion because it contains \
### consecutive wildcard characters at position %d and zero-length substrings are \
### not allowed
MILD_ERR_ATTR_SYNTAX_UTC_TIME_TOO_SHORT_109=La valeur indiqu\u00e9e %s est trop courte pour \u00eatre une valeur de temps UTC valide
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_YEAR_110=La valeur indiqu\u00e9e %s n'est pas une valeur de temps UTC valide car le caract\u00e8re '%s' n'est pas autoris\u00e9 dans la sp\u00e9cification de si\u00e8cle ou d'ann\u00e9e
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MONTH_111=La valeur indiqu\u00e9e %s n'est pas une valeur de temps UTC valide car %s n'est pas une sp\u00e9cification de mois valide
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_DAY_112=La valeur indiqu\u00e9e %s n'est pas une valeur de temps UTC valide car %s n'est pas une sp\u00e9cification de jour valide
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_HOUR_113=La valeur indiqu\u00e9e %s n'est pas une valeur de temps UTC valide car %s n'est pas une sp\u00e9cification d'heure valide
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MINUTE_114=La valeur indiqu\u00e9e %s n'est pas une valeur de temps UTC valide car %s n'est pas une sp\u00e9cification de minute valide
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_CHAR_115=La valeur indiqu\u00e9e %s n'est pas une valeur de temps UTC valide car elle contient un caract\u00e8re invalide %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_SECOND_116=La valeur indiqu\u00e9e %s n'est pas une valeur de temps UTC valide car %s n'est pas une sp\u00e9cification de seconde valide
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_OFFSET_117=La valeur indiqu\u00e9e %s n'est pas une valeur de temps UTC valide car %s n'est pas un d\u00e9calage GMT valide
MILD_ERR_ATTR_SYNTAX_UTC_TIME_CANNOT_PARSE_118=Impossible d'analyser la valeur indiqu\u00e9e %s en tant que temps UTC valide\u00a0:  %s
MILD_ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE_119=Impossible d'analyser la valeur indiqu\u00e9e en tant que description de r\u00e8gle de contenu DIT valide car elle est vide ou ne contient que des blancs
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS_120=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de contenu DIT car une parenth\u00e8se ouverte devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re '%s'
MILD_ERR_ATTR_SYNTAX_DCR_TRUNCATED_VALUE_121=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de contenu DIT car la fin de la valeur est atteinte alors que Directory Server attend plus de donn\u00e9es
MILD_ERR_ATTR_SYNTAX_DCR_DOUBLE_PERIOD_IN_NUMERIC_OID_122=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de contenu DIT car l'OID num\u00e9rique contient deux points cons\u00e9cutifs \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_NUMERIC_OID_123=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de contenu DIT car l'OID num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_STRING_OID_124=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de contenu DIT car l'OID non num\u00e9rique contenient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_DCR_UNEXPECTED_CLOSE_PARENTHESIS_125=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de contenu DIT car elle contient une parenth\u00e8se de fermeture inattendue \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_126=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de contenu DIT car elle contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS_127=La r\u00e8gle de contenu DIT "%s" est associ\u00e9e \u00e0 une classe d'objet structurelle %s non d\u00e9finie dans le sch\u00e9ma de serveur
MILD_ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL_128=La r\u00e8gle de contenu DIT "%s" est associ\u00e9e \u00e0 la classe d'objet avec OID %s (%s).  Cette classe d'objet existe dans le sch\u00e9ma de serveur mais est plut\u00f4t d\u00e9finie comme %s que comme structurelle
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS_129=La r\u00e8gle de contenu DIT "%s" est associ\u00e9e \u00e0 une classe d'objet auxiliaire %s non d\u00e9finie dans le sch\u00e9ma de serveur
MILD_ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY_130=La r\u00e8gle de contenu DIT "%s" est associ\u00e9e \u00e0 une classe d'objet auxiliaire %s. Cette classe d'objet existe dans le sch\u00e9ma de serveur mais est d\u00e9finie comme %s plut\u00f4t que comme auxiliaire
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR_131=La r\u00e8gle de contenu DIT "%s" est associ\u00e9e \u00e0 un type d'attribut requis %s non d\u00e9fini dans le sch\u00e9ma de serveur
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR_132=La r\u00e8gle de contenu DIT "%s" est associ\u00e9e \u00e0 un type d'attribut facultatif %s non d\u00e9fini dans le sch\u00e9ma de serveur
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR_133=La r\u00e8gle de contenu DIT "%s" est associ\u00e9e \u00e0 un type d'attribut interdit %s non d\u00e9fini dans le sch\u00e9ma de serveur
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_QUOTE_AT_POS_134=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de contenu DIT car un guillemet simple aurait d\u00fb se trouver \u00e0 la position %d au lieu du caract\u00e8re %s
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE_135=Impossible d'analyser la valeur indiqu\u00e9e en tant que description de formulaire de nom valide car elle est vide ou ne contient que des blancs
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_OPEN_PARENTHESIS_136=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de formulaire de nom car une parenth\u00e8se ouverte devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re '%c'
MILD_ERR_ATTR_SYNTAX_NAME_FORM_TRUNCATED_VALUE_137=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de formulaire de nom car la fin de la valeur est atteinte alors que Directory Server attend plus de donn\u00e9es
MILD_ERR_ATTR_SYNTAX_NAME_FORM_DOUBLE_PERIOD_IN_NUMERIC_OID_138=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de formulaire de nom car l'OID num\u00e9rique contient deux points cons\u00e9cutifs \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_NUMERIC_OID_139=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de formulaire de nom car l'OID num\u00e9rique contient un caract\u00e8re ill\u00e9gal %c \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_STRING_OID_140=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de formulaire de nom car l'OID non num\u00e9rique contient un caract\u00e8re ill\u00e9gal %c \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNEXPECTED_CLOSE_PARENTHESIS_141=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de formulaire de nom car elle contient une parenth\u00e8se de fermeture inattendue \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_142=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de formulaire de nom car elle contient un caract\u00e8re ill\u00e9gal %c \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS_143=La description de formulaire de nom "%s" est associ\u00e9e \u00e0 une classe d'objet structurelle %s non d\u00e9finie dans le sch\u00e9ma de serveur
MILD_ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL_144=La description de formulaire de nom "%s" est associ\u00e9e \u00e0 la classe d'objet avec OID %s (%s). Cette classe d'objet existe dans le sch\u00e9ma de serveur mais est plut\u00f4t d\u00e9finie comme %s que comme structurelle
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR_145=La d\u00e9finition pour le formulaire de nom avec l'OID %s d\u00e9clare qu'il devrait inclure l'attribut requis "%s".  Aucun type d'attribut correspondant \u00e0 ce nom ou cet OID n'existe dans le sch\u00e9ma de serveur
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR_146=La d\u00e9finition pour le formulaire de nom avec l'OID %s d\u00e9clare qu'elle devrait inclure l'attribut facultatif "%s".  Aucun type d'attribut correspondant \u00e0 ce nom ou cet OID n'existe dans le sch\u00e9ma de serveur
MILD_ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS_147=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de formulaire de nom car elle ne sp\u00e9cifie pas la classe d'objet structurelle avec laquelle elle est associ\u00e9e
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_QUOTE_AT_POS_148=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de formulaire de nom car un guillemet simple devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re %c
MILD_ERR_ATTR_SYNTAX_MR_EMPTY_VALUE_149=Impossible d'analyser la valeur indiqu\u00e9e en tant que description de r\u00e8gle de correspondance valide car elle est vide ou ne contient que des blancs
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_OPEN_PARENTHESIS_150=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de correspondance car une parenth\u00e8se ouverte devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re '%s'
MILD_ERR_ATTR_SYNTAX_MR_TRUNCATED_VALUE_151=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de correspondance car la fin de la valeur est atteinte alors que Directory Server attend plus de donn\u00e9es
MILD_ERR_ATTR_SYNTAX_MR_DOUBLE_PERIOD_IN_NUMERIC_OID_152=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de correspondance car l'OID num\u00e9rique contient deux points cons\u00e9cutifs \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_NUMERIC_OID_153=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de correspondance car l'OID num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_STRING_OID_154=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de correspondance car l'OID non num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_MR_UNEXPECTED_CLOSE_PARENTHESIS_155=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de correspondance car elle contient une parenth\u00e8se de fermeture inattendue \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_156=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de correspondance car elle contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX_157=La description de r\u00e8gle de correspondance "%s" est associ\u00e9e \u00e0 une syntaxe d'attribut %s non d\u00e9finie dans le sch\u00e9ma de serveur
MILD_ERR_ATTR_SYNTAX_MR_NO_SYNTAX_158=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de correspondance car elle ne sp\u00e9cifie par la syntaxe d'attribut avec laquelle elle est associ\u00e9e
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_QUOTE_AT_POS_159=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de correspondance car un guillemet simple devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re %s
MILD_ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE_160=Impossible d'analyser la valeur indiqu\u00e9e en tant que description d'utilisation d'une r\u00e8gle de correspondance valide car elle est vide ou ne contient que des blancs
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_OPEN_PARENTHESIS_161=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description d'utilisation d'une r\u00e8gle de correspondance car une parenth\u00e8se ouverte devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re '%s'
MILD_ERR_ATTR_SYNTAX_MRUSE_TRUNCATED_VALUE_162=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description d'utilisation d'une r\u00e8gle de correspondance car la fin de la valeur est atteinte alors que Directory Server attend plus de donn\u00e9es
MILD_ERR_ATTR_SYNTAX_MRUSE_DOUBLE_PERIOD_IN_NUMERIC_OID_163=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description d'utilisation d'une r\u00e8gle de correspondance car l'OID num\u00e9rique contient deux points cons\u00e9cutifs \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_NUMERIC_OID_164=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description d'utilisation d'une r\u00e8gle de correspondance car l'OID num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_STRING_OID_165=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description d'utilisation d'une r\u00e8gle de correspondance car l'OID non num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE_166=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description d'utilisation d'une r\u00e8gle de correspondance car la r\u00e8gle de correspondance %s est inconnue
MILD_ERR_ATTR_SYNTAX_MRUSE_UNEXPECTED_CLOSE_PARENTHESIS_167=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description d'utilisation d'une r\u00e8gle de correspondance car elle contient une parenth\u00e8se de fermeture inattendue \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_168=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description d'utilisation d'une r\u00e8gle de correspondance car elle contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR_169=La description d'utilisation d'une r\u00e8gle de correspondance "%s" est associ\u00e9e \u00e0 un type d'attribut %s non d\u00e9fini dans le sch\u00e9ma de serveur
MILD_ERR_ATTR_SYNTAX_MRUSE_NO_ATTR_170=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de correspondance car elle ne sp\u00e9cifie pas l'ensemble de types d'attributs \u00e0 utiliser avec l'OID associ\u00e9
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_QUOTE_AT_POS_171=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description d'utilisation d'une r\u00e8gle de correspondance car un guillemet simple devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re %s
MILD_ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE_172=Impossible d'analyser la valeur indiqu\u00e9e en tant que description de r\u00e8gle de structure DIT valide car elle est vide ou ne contient que des blancs
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS_173=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car une parenth\u00e8se ouverte devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re '%s'
MILD_ERR_ATTR_SYNTAX_DSR_TRUNCATED_VALUE_174=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car la fin de la valeur est atteinte alors que Directory Server attend plus de donn\u00e9es
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_RULE_ID_175=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car la r\u00e8gle DIT contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_DSR_UNEXPECTED_CLOSE_PARENTHESIS_176=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car elle contient une parenth\u00e8se de fermeture inattendue \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_177=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car elle contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_NAME_FORM_178=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car elle fait r\u00e9f\u00e9rence \u00e0 une forme de nom inconnu %s
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_RULE_ID_179=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car elle fait r\u00e9f\u00e9rence \u00e0 un ID %d de r\u00e8gle inconnu pour une r\u00e8gle de structure DIT sup\u00e9rieure
MILD_ERR_ATTR_SYNTAX_DSR_NO_NAME_FORM_180=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car elle ne sp\u00e9cifie par le formulaire de nom pour la r\u00e8gle
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_QUOTE_AT_POS_181=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car un guillemet simple devrait se trouver \u00e0 la position %d au lieu du caract\u00e8re %s
MILD_ERR_ATTR_SYNTAX_DSR_DOUBLE_PERIOD_IN_NUMERIC_OID_182=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car l'OID num\u00e9rique contient deux points cons\u00e9cutifs \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_NUMERIC_OID_183=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car l'OID num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_STRING_OID_184=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que description de r\u00e8gle de structure DIT car l'OID non num\u00e9rique contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_TELEX_TOO_SHORT_185=La valeur indiqu\u00e9e "%s" est trop courte pour \u00eatre une valeur de num\u00e9ro de t\u00e9lex valide
MILD_ERR_ATTR_SYNTAX_TELEX_NOT_PRINTABLE_186=La valeur indiqu\u00e9e "%s" ne contient pas un num\u00e9ro de t\u00e9lex valide car un caract\u00e8re %s \u00e0 la position %d n'est pas une cha\u00eene de caract\u00e8res imprimable valide
MILD_ERR_ATTR_SYNTAX_TELEX_ILLEGAL_CHAR_187=La valeur indiqu\u00e9e "%s" ne contient pas un num\u00e9ro de t\u00e9lex valide car un caract\u00e8re %s \u00e0 la position %d n'est ni une cha\u00eene de caract\u00e8res imprimable valide, ni le signe du dollar pour s\u00e9parer les composants du num\u00e9ro de t\u00e9lex
MILD_ERR_ATTR_SYNTAX_TELEX_TRUNCATED_188=La valeur indiqu\u00e9e "%s" ne contient pas un num\u00e9ro de t\u00e9lex valide car la fin de la valeur a \u00e9t\u00e9 atteinte avant que trois cha\u00eenes imprimables d\u00e9limit\u00e9s par des dollars puissent \u00eatre lues
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_EMPTY_189=Impossible d'analyser la valeur indiqu\u00e9e en tant que num\u00e9ro de t\u00e9l\u00e9copie valide car elle est vide
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_NOT_PRINTABLE_190=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que num\u00e9ro de t\u00e9l\u00e9copie valide car le caract\u00e8re %s \u00e0 la position %d n'est pas une cha\u00eene de caract\u00e8res imprimable valide
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_END_WITH_DOLLAR_191=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que num\u00e9ro de t\u00e9l\u00e9copie valide car elle termine par un signe dollar, mais ce signe devrait \u00eatre suivi d'un param\u00e8tre de fax
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_ILLEGAL_PARAMETER_192=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que num\u00e9ro de t\u00e9l\u00e9copie valide car la cha\u00eene "%s" entre les positions %d et %d n'est pas un param\u00e8tre de fax valide
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_INVALID_DN_193=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom et valeur UID facultative valides car une erreur s'est produite lors de la tentative d'analyse de la partie DN\u00a0:  %s
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_ILLEGAL_BINARY_DIGIT_194=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom et valeur UID facultative valides car la partie UID contient un chiffre binaire ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_TELETEXID_EMPTY_195=Impossible d'analyser la valeur indiqu\u00e9e en tant qu'identifiant de r\u00e9cepteur de teletexte valide car elle est vide
MILD_ERR_ATTR_SYNTAX_TELETEXID_NOT_PRINTABLE_196=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'identifiant de r\u00e9cepteur de teletexte valide car le caract\u00e8re %s \u00e0 la position %d n'est pas une cha\u00eene de caract\u00e8res imprimable valide
MILD_ERR_ATTR_SYNTAX_TELETEXID_END_WITH_DOLLAR_197=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'identifiant de r\u00e9cepteur de teletexte valide car elle se termine par le symbole dollar, mais ce symbole devrait \u00eatre suivi d'un param\u00e8tre TTX
MILD_ERR_ATTR_SYNTAX_TELETEXID_PARAM_NO_COLON_198=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'identifiant de r\u00e9cepteur de teletexte valide car la cha\u00eene de param\u00e8tres ne contient pas deux-points pour s\u00e9parer le nom de la valeur
MILD_ERR_ATTR_SYNTAX_TELETEXID_ILLEGAL_PARAMETER_199=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'identifiant de r\u00e9cepteur de teletexte valide car "%s" n'est pas un nom de param\u00e8tre TTX valide
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_EMPTY_VALUE_200=Impossible d'analyser la valeur indiqu\u00e9e en tant qu'autre valeur de bo\u00eete aux lettres car elle est vide
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MBTYPE_201=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'autre valeur de bo\u00eete aux lettres car il n'y a pas de type de bo\u00eete aux lettres avant le symbole dollar
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MBTYPE_CHAR_202=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'autre valeur de bo\u00eete aux lettres car le type de bo\u00eete aux lettres contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MAILBOX_203=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'autre valeur de bo\u00eete aux lettres car il n'y a pas de bo\u00eete aux lettres apr\u00e8s le symbole dollar
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MB_CHAR_204=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'autre valeur de bo\u00eete aux lettres car la bo\u00eete aux lettres contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_OC_205=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide car elle ne contient pas de nom de classe d'objet ni d'OID avant le caract\u00e8re di\u00e8se (#)
MILD_ERR_ATTR_SYNTAX_GUIDE_ILLEGAL_CHAR_206=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide car la partie crit\u00e8res %s contient un caract\u00e8re ill\u00e9gal %c \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_GUIDE_MISSING_CLOSE_PAREN_207=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide car la partie crit\u00e8res %s ne contient pas de parenth\u00e8se ferm\u00e9e correspondant \u00e0 la parenth\u00e8se ouverte initiale
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_QUESTION_MARK_208=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide car la partie crit\u00e8res %s commence par une interrogation mais n'est pas suivie de la cha\u00eene "true" ou "false"
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_DOLLAR_209=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide car la partie crit\u00e8res %s ne contient pas de signe dollar pour s\u00e9parer le type d'attribut du type de correspondance
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_ATTR_210=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide car la partie crit\u00e8res %s ne sp\u00e9cifiait pas de type d'attribut avant le signe dollar
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_MATCH_TYPE_211=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide car la partie crit\u00e8res  %s ne sp\u00e9cifie pas de type de correspondance apr\u00e8s le symbole dollar
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_MATCH_TYPE_212=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide car la partie crit\u00e8res %s a un type de correspondance ill\u00e9gal commen\u00e7ant \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP_213=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide optimis\u00e9e car elle ne contient pas de caract\u00e8re di\u00e8se (#) pour s\u00e9parer la classe d'objet des crit\u00e8res
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC_214=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide optimis\u00e9e car elle ne contient pas de nom de classe d'objet ou d'OID avant le caract\u00e8re di\u00e8se (#)
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_DOUBLE_PERIOD_IN_OC_OID_215=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide optimis\u00e9e car l'OID num\u00e9rique %s sp\u00e9cifiant la classe d'objet contient deux points cons\u00e9cutifs \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_OID_216=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide optimis\u00e9e car l'OID num\u00e9rique %s sp\u00e9cifiant la classe d'objet contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_NAME_217=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide optimis\u00e9e car le nom de classe d'objet %s contient un caract\u00e8re ill\u00e9gal %s \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_FINAL_SHARP_218=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide optimis\u00e9e car elle n'a pas de caract\u00e8re di\u00e8se (#) pour s\u00e9parer les crit\u00e8res du domaine
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SCOPE_219=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide optimis\u00e9e car aucun domaine n'est indiqu\u00e9 apr\u00e8s le caract\u00e8re di\u00e8se (#) final
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_INVALID_SCOPE_220=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide optimis\u00e9e car le domaine sp\u00e9cifi\u00e9 %s n'est pas valide
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_CRITERIA_221=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que valeur guide optimis\u00e9e car elle ne sp\u00e9cifie pas de crit\u00e8res entre les catact\u00e8res di\u00e8se (#)
MILD_ERR_ATTR_SYNTAX_OID_INVALID_VALUE_222=Impossible d'analyser la valeur indiqu\u00e9e %s en tant qu'OID valide\u00a0:  %s
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NORMALIZE_FAILURE_223=An unexpected \
### error occurred while trying to normalize value %s as a generalized time \
### value:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_CANNOT_NORMALIZE_224=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseExactOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_INVALID_TYPE_225=An error occurred while \
### attempting to compare two objects using the caseExactOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_CANNOT_NORMALIZE_226=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseIgnoreOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_INVALID_TYPE_227=An error occurred while \
### attempting to compare two objects using the caseIgnoreOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_CANNOT_NORMALIZE_228=An error \
### occurred while attempting to compare two AttributeValue objects using the \
### generalizedTimeOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_INVALID_TYPE_229=An error occurred \
### while attempting to compare two objects using the \
### generalizedTimeOrderingMatch matching rule because the objects were of an \
### unsupported type %s.  Only byte arrays, ASN.1 octet strings, and attribute \
### value objects may be compared
###SEVERE_WARN_OMR_INTEGER_COMPARE_CANNOT_NORMALIZE_230=An error occurred while \
### attempting to compare two AttributeValue objects using the \
### integerOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_INTEGER_COMPARE_INVALID_TYPE_231=An error occurred while \
### attempting to compare two objects using the integerOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_CANNOT_NORMALIZE_232=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### numericStringOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_INVALID_TYPE_233=An error occurred \
### while attempting to compare two objects using the numericStringOrderingMatch \
### matching rule because the objects were of an unsupported type %s.  Only byte \
### arrays, ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_CANNOT_NORMALIZE_234=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### octetStringOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_INVALID_TYPE_235=An error occurred while \
### attempting to compare two objects using the octetStringOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH_236=The provided value "%s" has \
### an invalid length for a UUID.  All UUID values must have a length of exactly \
### 36 bytes, but the provided value had a length of %d bytes
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH_237=The provided value "%s" should \
### have had a dash at position %d, but the character '%s' was found instead
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX_238=The provided value "%s" should \
### have had a hexadecimal digit at position %d, but the character '%s' was found \
### instead
INFO_ATTR_SYNTAX_DIRECTORYSTRING_DESCRIPTION_ALLOW_ZEROLENGTH_239=Indique si les attributs avec la syntaxe de cha\u00eene d'annuaires sont autoris\u00e9s \u00e0 avoir des valeurs de longueur null.  Cette option n'est pas techniquement autoris\u00e9e par les sp\u00e9cifications LDAP, mais elle pourrait \u00eatre utile pour la compatibilit\u00e9 ascendante avec les versions pr\u00e9c\u00e9dentes de Directory Server
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_CANNOT_DETERMINE_ZEROLENGTH_240=An \
### error occurred while trying to determine the value of the %s configuration \
### attribute, which indicates whether directory string attributes should be \
### allowed to have zero-length values:  %s
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_INVALID_ZEROLENGTH_VALUE_241=The \
### operation attempted to assign a zero-length value to an attribute with the \
### directory string syntax
INFO_ATTR_SYNTAX_DIRECTORYSTRING_UPDATED_ALLOW_ZEROLENGTH_242=L'attribut %s dans l'entr\u00e9e de configuration %s a \u00e9t\u00e9 mis \u00e0 jour avec une nouvelle valeur de %s
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_SCHEME_CHAR_243=The provided \
### authPassword value had an invalid scheme character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_244=The provided authPassword value \
### had a zero-length scheme element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_SEPARATOR_245=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the scheme and authInfo elements
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_INFO_CHAR_246=The provided \
### authPassword value had an invalid authInfo character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_247=The provided authPassword \
### value had a zero-length authInfo element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_SEPARATOR_248=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the authInfo and authValue elements
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_INITIAL_PARENTHESIS_249=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### it did not start with a parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_NONSPACE_250=The provided value "%s" could not \
### be parsed by the integer first component matching rule because it did not \
### have any non-space characters after the opening parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_SPACE_AFTER_INT_251=The provided value "%s" \
### could not be parsed by the integer first component matching rule because it \
### did not have any space characters after the first component
###SEVERE_ERR_EMR_INTFIRSTCOMP_FIRST_COMPONENT_NOT_INT_252=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### the first component does not appear to be an integer value
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_VALUE_253=No value was given to decode by \
### the user password attribute syntax
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_OPENING_BRACE_254=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not start with the opening curly brace ("{") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_CLOSING_BRACE_255=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not contain a closing curly brace ("}") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_SCHEME_256=Unable to decode the provided \
### value according to the user password syntax because the value does not \
### contain a storage scheme name
MILD_ERR_ATTR_SYNTAX_RFC3672_SUBTREE_SPECIFICATION_INVALID_257=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que sp\u00e9cification de sous-arborescence RFC 3672 valide
MILD_ERR_ATTR_SYNTAX_ABSOLUTE_SUBTREE_SPECIFICATION_INVALID_258=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que sp\u00e9cification de sous-arborescence absolue valide
MILD_ERR_ATTR_SYNTAX_RELATIVE_SUBTREE_SPECIFICATION_INVALID_259=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que sp\u00e9cification de sous-arborescence relative valide
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_INTEGER_260=The provided value %s is not \
### allowed for attributes with a Integer syntax
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_VALUE_CHAR_261=The provided \
### authPassword value had an invalid authValue character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_VALUE_262=The provided authPassword \
### value had a zero-length authValue element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_TRAILING_CHAR_263=The provided \
### authPassword value had an invalid trailing character at position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXTENSION_INVALID_CHARACTER_264=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant qu'extension de syntaxe d'attribut car un caract\u00e8re invalide se trouve \u00e0 la position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_INVALID_EXTENSION_265=Impossible d'analyser la syntaxe d'attribut \u00e0 cause d'une extension invalide.%s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE_266=The definition \
### for objectclass %s is invalid because it has an objectclass type of %s but \
### this is incompatible with the objectclass type %s for the superior class %s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP_267=The \
### definition for objectclass %s is invalid because it is defined as a \
### structural class but its superior chain does not include the "top" \
### objectclass
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_SUPERIOR_USAGE_268=The definition \
### for attribute type %s is invalid because its attribute usage %s is not the \
### same as the usage for its superior type %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_FROM_NONCOLLECTIVE_269=The \
### definition for attribute type %s is invalid because it is defined as a \
### collective type but the superior type %s is not collective
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NONCOLLECTIVE_FROM_COLLECTIVE_270=The \
### definition for attribute type %s is invalid because it is not defined as a \
### collective type but the superior type %s is collective
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_STRUCTURAL_271=La r\u00e8gle de contenu DIT "%s" n'est pas valide car elle interdit l'utilisation du type d'attribut %s requis par la classe d'objet structurelle associ\u00e9e %s
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_AUXILIARY_272=La r\u00e8gle de contenu DIT "%s" n'est pas valide car elle interdit l'utilisation du type d'attribut %s requis par la classe d'objet structurelle auxiliaire %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_IS_OPERATIONAL_273=The definition \
### for attribute type %s is invalid because it is declared COLLECTIVE but does \
### not have a usage of userApplications
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NO_USER_MOD_NOT_OPERATIONAL_274=The \
### definition for attribute type %s is invalid because it is declared \
### NO-USER-MODIFICATION but does not have an operational usage
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_FRACTION_CHAR_275=The \
### provided value %s is not a valid generalized time value because it contains \
### illegal character %s in the fraction component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_EMPTY_FRACTION_276=The provided \
### value %s is not a valid generalized time value because it does not contain at \
### least one digit after the period to use as the fractional component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NO_TIME_ZONE_INFO_277=The provided \
### value %s is not a valid generalized time value because it does not end with \
### 'Z' or a time zone offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_TIME_278=The provided value \
### %s is not a valid generalized time value because it represents an invalid \
### time (e.g., a date that does not exist):  %s
NOTICE_SCHEMA_IMPORT_FAILED_279=Un \u00e9l\u00e9ment de sch\u00e9ma ne peut \u00eatre import\u00e9\u00a0: %s, %s
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_LOCALE_280=La r\u00e8gle de classement %s sous la r\u00e8gle de correspondance %s est invalide car la variable locale %s n'est pas prise en charge par la JVM
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_FORMAT_281=La r\u00e8gle de classement fournie %s ne contient pas de format valide de OID LOCALE
MILD_ERR_ATTR_SYNTAX_DN_INVALID_REQUIRES_ESCAPE_CHAR_282=Impossible d'analyser la valeur fournie "%s" en tant que nom valide distinctif car la valeur de l'attribut commence avec un caract\u00e8re en position %d qui doit \u00eatre \u00e9vit\u00e9
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_CHAR_283=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le caract\u00e8re '%c' \u00e0 la position %d n'est pas autoris\u00e9 dans un nom de type d'attribut
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_284=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le trait de soulignement n'est pas autoris\u00e9 dans un nom de type d'attribut, sauf si l'option de configuration %s est activ\u00e9e
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_285=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que nom distinctif valide car le trait d'union n'est pas autoris\u00e9 en tant que premier caract\u00e8re d'un nom de type d'attribut
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_286=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que d\u00e9finition de type d'attribut car le tiret de soulignement n'est pas autoris\u00e9 en tant que premier caract\u00e8re d'un nom de type d'attribut, m\u00eame si l'option de configuration %s est activ\u00e9e
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_287=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que d\u00e9finition de type d'attribut car le chiffre '%c' n'est pas autoris\u00e9 en tant que premier caract\u00e8re d'un nom d'attribut, sauf si le nom est sp\u00e9cifi\u00e9 comme un OID ou que l'option de configuration %s est activ\u00e9e
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_CHAR_288=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que d\u00e9finition de classe d'objet car le caract\u00e8re '%c' \u00e0 la position %d n'est pas autoris\u00e9 dans un nom de classe d'objet
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_289=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que d\u00e9finition de classe d'objet car le trait de soulignement n'est pas autoris\u00e9 dans un nom de classe d'objet, sauf si l'option de configuration %s est activ\u00e9e
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_290=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que d\u00e9finition de classe d'objet car le trait d'union n'est pas autoris\u00e9 en tant que premier caract\u00e8re d'un nom de classe d'objet
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_291=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que d\u00e9finition de classe d'objet car le tiret de soulignement n'est pas autoris\u00e9 en tant que premier caract\u00e8re d'un nom de classe d'objet, m\u00eame si l'option de configuration %s est activ\u00e9e
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_292=Impossible d'analyser la valeur indiqu\u00e9e "%s" en tant que d\u00e9finition de classe d'objet car le chiffre '%c' n'est pas autoris\u00e9 en tant que premier caract\u00e8re d'une classe d'objet, sauf si le nom est sp\u00e9cifi\u00e9 comme un OID ou que l'option de configuration %s est activ\u00e9e
sdk/src/com/sun/opends/sdk/util/messages_ja.properties
New file
@@ -0,0 +1,531 @@
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#      Copyright 2009 Sun Microsystems, Inc.
#
# Global directives
#
global.ordinal=-1
#
# Format string definitions
#
# Keys must be formatted as follows:
#
# [DESCRIPTION]
#
# where:
#
# DESCRIPTION is an upper case string providing a hint as to the context of
# the message in upper case with the underscore ('_') character serving as
# word separator
#
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_APPROXIMATE_MATCHING_RULE_1=Unable to retrieve \
### approximate matching rule %s used as the default for the %s attribute syntax. \
### Approximate matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_EQUALITY_MATCHING_RULE_2=Unable to retrieve \
### equality matching rule %s used as the default for the %s attribute syntax. \
### Equality matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_ORDERING_MATCHING_RULE_3=Unable to retrieve \
### ordering matching rule %s used as the default for the %s attribute syntax. \
### Ordering matches will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_SUBSTRING_MATCHING_RULE_4=Unable to retrieve \
### substring matching rule %s used as the default for the %s attribute syntax. \
### Substring matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN_5=The provided value "%s" is not \
### allowed for attributes with a Boolean syntax.  The only allowed values are \
### 'TRUE' and 'FALSE'
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT_6=The provided value "%s" is too \
### short to be a valid bit string.  A bit string must be a series of binary \
### digits surrounded by single quotes and followed by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED_7=The provided value "%s" is not \
### a valid bit string because it is not surrounded by single quotes and followed \
### by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT_8=The provided value "%s" is \
### not a valid bit string because '%s' is not a valid binary digit
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_INVALID_LENGTH_9=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u3001\u9577\u3055\u304c\u6b63\u78ba\u306b 2 \u6587\u5b57\u3067\u306f\u306a\u3044\u305f\u3081\u3001\u6709\u52b9\u306a\u56fd\u6587\u5b57\u5217\u3067\u306f\u3042\u308a\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_NOT_PRINTABLE_10=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u3001\u30d7\u30ea\u30f3\u30c8\u4e0d\u53ef\u80fd\u306a\u6587\u5b57\u304c 1 \u3064\u4ee5\u4e0a\u542b\u307e\u308c\u308b\u305f\u3081\u3001\u6709\u52b9\u306a\u56fd\u6587\u5b57\u5217\u3067\u306f\u3042\u308a\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_NO_ELEMENTS_11=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u3001\u8981\u7d20\u304c\u4e00\u5207\u542b\u307e\u308c\u3066\u3044\u306a\u3044\u305f\u3081\u3001\u6709\u52b9\u306a\u5b9f\u65bd\u30e1\u30bd\u30c3\u30c9\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_INVALID_ELEMENT_12="%2$s" \u306f\u6709\u52b9\u306a\u30e1\u30bd\u30c3\u30c9\u3067\u306f\u306a\u3044\u305f\u3081\u3001\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u306f\u6709\u52b9\u306a\u5b9f\u65bd\u30e1\u30bd\u30c3\u30c9\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_TOO_SHORT_13=The provided value "%s" \
### is too short to be a valid generalized time value
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_YEAR_14=The provided value \
### "%s" is not a valid generalized time value because the '%s' character is not \
### allowed in the century or year specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MONTH_15=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid month \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_DAY_16=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid day \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_HOUR_17=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid hour \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MINUTE_18=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid minute \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SECOND_19=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid second \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SUBSECOND_20=The provided \
### value "%s" is not a valid generalized time value because the sub-second \
### component is not valid (between 1 and 3 numeric digits)
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_LONG_SUBSECOND_21=The provided value \
### "%s" is not a valid generalized time value because the sub-second value may \
### not contain more than three digits
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_OFFSET_22=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid GMT \
### offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_CHAR_23=The provided value \
### "%s" is not a valid generalized time value because it contains an invalid \
### character '%s' at position %d
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_CANNOT_PARSE_24=The provided value \
### "%s" could not be parsed as a valid generalized time:  %s
MILD_ERR_ATTR_SYNTAX_DN_INVALID_25=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f:  %s
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_COMMA_26=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6700\u5f8c\u306e\u7a7a\u767d\u3067\u306a\u3044\u6587\u5b57\u304c\u30b3\u30f3\u30de\u307e\u305f\u306f\u30bb\u30df\u30b3\u30ed\u30f3\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DN_ATTR_START_WITH_DIGIT_27=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5b57 '%s' \u3092\u5c5e\u6027\u540d\u306e\u6700\u521d\u306e\u6587\u5b57\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_CHAR_28=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306e\u6587\u5b57 '%2$c' \u3092\u5c5e\u6027\u540d\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_UNDERSCORE_CHAR_29=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002%s \u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u6709\u52b9\u3067\u306a\u3044\u304b\u304e\u308a\u3001\u5c5e\u6027\u540d\u306b\u4e0b\u7dda\u6587\u5b57\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DASH_30=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30cf\u30a4\u30d5\u30f3\u6587\u5b57\u3092\u5c5e\u6027\u540d\u306e\u6700\u521d\u306e\u6587\u5b57\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_UNDERSCORE_31=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002%s \u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u6709\u52b9\u306a\u5834\u5408\u3067\u3082\u3001\u4e0b\u7dda\u6587\u5b57\u3092\u5c5e\u6027\u540d\u306e\u6700\u521d\u306e\u6587\u5b57\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DIGIT_32=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u540d\u524d\u304c OID \u3068\u3057\u3066\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u304b\u3001%3$s \u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u6709\u52b9\u3067\u306a\u3044\u304b\u304e\u308a\u3001\u6570\u5b57 '%2$c' \u3092\u5c5e\u6027\u540d\u306e\u6700\u521d\u306e\u6587\u5b57\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_DN_ATTR_NO_NAME_33=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306b\u306f\u7a7a\u306e\u5c5e\u6027\u540d\u3092\u542b\u3080 RDN \u304c\u5b58\u5728\u3057\u3066\u3044\u305f\u305f\u3081\u3001\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_PERIOD_34=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u89e3\u6790\u3055\u308c\u305f\u5c5e\u6027\u540d %s \u306b\u30d4\u30ea\u30aa\u30c9\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u3053\u306e\u540d\u524d\u306f\u6709\u52b9\u306a OID \u3067\u306f\u306a\u3044\u3088\u3046\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_ATTR_NAME_35=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6700\u5f8c\u306e\u7a7a\u767d\u4ee5\u5916\u306e\u6587\u5b57\u304c\u5c5e\u6027\u540d '%s' \u306e\u4e00\u90e8\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DN_NO_EQUAL_36=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u5c5e\u6027\u540d "%s" \u306e\u6b21\u306e\u7a7a\u767d\u4ee5\u5916\u306e\u6587\u5b57\u306f\u7b49\u53f7\u3067\u3042\u308b\u3079\u304d\u3067\u3059\u304c\u3001'%c' \u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DN_INVALID_CHAR_37=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306e\u6587\u5b57 '%2$c' \u304c\u6709\u52b9\u3067\u306f\u3042\u308a\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_DN_HEX_VALUE_TOO_SHORT_38=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u5c5e\u6027\u5024\u306f\u30b7\u30e3\u30fc\u30d7\u8a18\u53f7 (#) \u3067\u59cb\u307e\u3063\u3066\u3044\u307e\u3059\u304c\u3001\u7d9a\u304f\u6587\u5b57\u304c 2 \u6841\u306e 16 \u9032\u6570\u306e\u8907\u6570\u306e\u7d44\u307f\u5408\u308f\u305b\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DN_INVALID_HEX_DIGIT_39=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u5c5e\u6027\u5024\u306f\u30b7\u30e3\u30fc\u30d7\u8a18\u53f7 (#) \u3067\u59cb\u307e\u3063\u3066\u3044\u307e\u3059\u304c\u3001\u6709\u52b9\u306a 16 \u9032\u6570\u3067\u306a\u3044\u6587\u5b57 %c \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DN_ATTR_VALUE_DECODE_FAILURE_40=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3044\u305a\u308c\u304b\u306e RDN \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u304b\u3089\u306e\u5c5e\u6027\u5024\u3092\u89e3\u6790\u4e2d\u306b\u4e88\u671f\u3057\u306a\u3044\u969c\u5bb3\u304c\u767a\u751f\u3057\u307e\u3057\u305f:  "%s"
MILD_ERR_ATTR_SYNTAX_DN_UNMATCHED_QUOTE_41=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3044\u305a\u308c\u304b\u306e RDN \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u3001\u5bfe\u5fdc\u3059\u308b\u9589\u3058\u5f15\u7528\u7b26\u3092\u6301\u305f\u306a\u3044\u5f15\u7528\u7b26\u4ed8\u304d\u306e\u5024\u304c\u3042\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DN_ESCAPED_HEX_VALUE_INVALID_42=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u3044\u305a\u308c\u304b\u306e RDN \u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u306e\u5024\u3067\u3001\u30a8\u30b9\u30b1\u30fc\u30d7\u3055\u308c\u305f 16 \u9032\u6570\u306e\u3042\u3068\u306b 2 \u756a\u76ee\u306e 16 \u9032\u6570\u304c\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INITIAL_ZERO_43=The provided value "%s" could \
### not be parsed as a valid integer because the first digit may not be zero \
### unless it is the only digit
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_MISPLACED_DASH_44=The provided value "%s" \
### could not be parsed as a valid integer because the dash may only appear if it \
### is the first character of the value followed by one or more digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INVALID_CHARACTER_45=The provided value "%s" \
### could not be parsed as a valid integer because character '%c' at position %d \
### is not allowed in an integer value
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_EMPTY_VALUE_46=The provided value "%s" could \
### not be parsed as a valid integer because it did not contain any digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_DASH_NEEDS_VALUE_47=The provided value "%s" \
### could not be parsed as a valid integer because it contained only a dash not \
### followed by an integer value
MILD_ERR_ATTR_SYNTAX_OID_NO_VALUE_48=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306b\u306f\u6587\u5b57\u304c\u4e00\u5207\u542b\u307e\u308c\u3066\u3044\u306a\u3044\u305f\u3081\u3001\u6709\u52b9\u306a OID \u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER_49=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u3001\u4f4d\u7f6e %d \u306b\u4e0d\u6b63\u306a\u6587\u5b57\u304c\u542b\u307e\u308c\u308b\u305f\u3081\u306b\u6709\u52b9\u306a OID \u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS_50=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u3001\u4f4d\u7f6e %d \u307e\u305f\u306f\u305d\u306e\u4ed8\u8fd1\u306b 2 \u3064\u306e\u9023\u7d9a\u3057\u305f\u30d4\u30ea\u30aa\u30c9\u304c\u5b58\u5728\u3059\u308b\u305f\u3081\u306b\u6709\u52b9\u306a OID \u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD_51=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u3001\u672b\u5c3e\u306b\u30d4\u30ea\u30aa\u30c9\u304c\u5b58\u5728\u3059\u308b\u305f\u3081\u306b\u6709\u52b9\u306a OID \u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE_52=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u304b\u7a7a\u767d\u306e\u307f\u304c\u542b\u307e\u308c\u308b\u305f\u3081\u306b\u6709\u52b9\u306a\u5c5e\u6027\u578b\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_OPEN_PARENTHESIS_53=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u578b\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u958b\u304d\u62ec\u5f27\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001'%s' \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_TRUNCATED_VALUE_54=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u578b\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306f\u3088\u308a\u591a\u304f\u306e\u30c7\u30fc\u30bf\u3092\u671f\u5f85\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u5024\u306e\u672b\u5c3e\u306b\u9054\u3057\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_DOUBLE_PERIOD_IN_NUMERIC_OID_55=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u578b\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %d \u306b\u9023\u7d9a\u3059\u308b 2 \u3064\u306e\u30d4\u30ea\u30aa\u30c9\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_NUMERIC_OID_56=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u5c5e\u6027\u578b\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_STRING_OID_57=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u5c5e\u6027\u578b\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u975e\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_58=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u5c5e\u6027\u578b\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_UNEXPECTED_CLOSE_PARENTHESIS_59=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u578b\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u4e88\u671f\u3057\u306a\u3044\u9589\u3058\u62ec\u5f27\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_60=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u578b\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c8\u30fc\u30af\u30f3 %s \u306b\u7d9a\u304f\u6700\u521d\u306e\u975e\u7a7a\u767d\u6587\u5b57\u3068\u3057\u3066\u5358\u4e00\u5f15\u7528\u7b26\u304c\u8a18\u8ff0\u3055\u308c\u308b\u3079\u304d\u3067\u3059\u304c\u3001\u6587\u5b57 %s \u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE_61=The definition for \
### the attribute type with OID %s declared a superior type with an OID of %s. \
### No attribute type with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR_62=The definition for \
### the attribute type with OID %s declared that approximate matching should be \
### performed using the matching rule "%s".  No such approximate matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR_63=The definition for \
### the attribute type with OID %s declared that equality matching should be \
### performed using the matching rule "%s".  No such equality matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR_64=The definition for \
### the attribute type with OID %s declared that ordering matching should be \
### performed using the matching rule "%s".  No such ordering matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR_65=The definition for \
### the attribute type with OID %s declared that substring matching should be \
### performed using the matching rule "%s".  No such substring matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SYNTAX_66=The definition for the \
### attribute type with OID %s declared that it should have a syntax with OID %s. \
### No such syntax is configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE_67=The definition \
### for the attribute type with OID %s declared that it should have an attribute \
### usage of %s.  This is an invalid usage
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_AT_POS_68=The provided value \
### "%s" could not be parsed as an attribute type description because a single \
### quote was expected at position %d but the character %s was found instead
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE_69=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u304b\u7a7a\u767d\u3060\u3051\u304c\u542b\u307e\u308c\u308b\u305f\u3081\u306b\u6709\u52b9\u306a\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS_70=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u958b\u304d\u62ec\u5f27\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001'%s' \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_TRUNCATED_VALUE_71=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306f\u3088\u308a\u591a\u304f\u306e\u30c7\u30fc\u30bf\u3092\u671f\u5f85\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u5024\u306e\u672b\u5c3e\u306b\u9054\u3057\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_DOUBLE_PERIOD_IN_NUMERIC_OID_72=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %d \u306b\u9023\u7d9a\u3059\u308b 2 \u3064\u306e\u30d4\u30ea\u30aa\u30c9\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_NUMERIC_OID_73=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_STRING_OID_74=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u975e\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_75=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_UNEXPECTED_CLOSE_PARENTHESIS_76=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u4e88\u671f\u3057\u306a\u3044\u9589\u3058\u62ec\u5f27\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_77=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c8\u30fc\u30af\u30f3 %s \u306b\u7d9a\u304f\u6700\u521d\u306e\u975e\u7a7a\u767d\u6587\u5b57\u3068\u3057\u3066\u5358\u4e00\u5f15\u7528\u7b26\u304c\u8a18\u8ff0\u3055\u308c\u308b\u3079\u304d\u3067\u3059\u304c\u3001\u6587\u5b57 %s \u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS_78=The definition \
### for the objectclass with OID %s declared a superior objectclass with an OID \
### of %s.  No objectclass with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_AT_POS_79=The provided \
### value "%s" could not be parsed as an objectclass description because a single \
### quote was expected at position %d but the character %s was found instead
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR_80=The definition \
### for the objectclass with OID %s declared that it should include required \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR_81=The definition \
### for the objectclass with OID %s declared that it should include optional \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER_82=The provided value "%s" \
### cannot be parsed as a valid IA5 string because it contains an illegal \
### character "%s" that is not allowed in the IA5 (ASCII) character set
INFO_ATTR_SYNTAX_TELEPHONE_DESCRIPTION_STRICT_MODE_83=\u3053\u308c\u306f\u3001\u96fb\u8a71\u756a\u53f7\u306e\u5c5e\u6027\u306e\u69cb\u6587\u306b ITU-T E.123 \u5f62\u5f0f\u306e\u5024\u306e\u307f\u3092\u53d7\u3051\u5165\u308c\u308b\u53b3\u683c\u306a\u30e2\u30fc\u30c9\u3092\u4f7f\u7528\u3059\u3079\u304d\u304b\u3069\u3046\u304b\u3092\u793a\u3057\u307e\u3059\u3002  \u3053\u308c\u304c\u6709\u52b9\u306a\u5834\u5408\u3001\u3053\u306e\u5f62\u5f0f\u4ee5\u5916\u306e\u5024\u306f\u3059\u3079\u3066\u62d2\u5426\u3055\u308c\u307e\u3059\u3002  \u3053\u308c\u304c\u7121\u52b9\u306a\u5834\u5408\u3001\u3059\u3079\u3066\u306e\u5024\u304c\u53d7\u3051\u5165\u308c\u3089\u308c\u307e\u3059\u304c\u3001\u30de\u30c3\u30c1\u30f3\u30b0\u306e\u5b9f\u884c\u6642\u306b\u6570\u5b57\u306e\u307f\u304c\u8003\u616e\u3055\u308c\u307e\u3059
###SEVERE_WARN_ATTR_SYNTAX_TELEPHONE_CANNOT_DETERMINE_STRICT_MODE_84=An error \
### occurred while trying to retrieve attribute \
### ds-cfg-strict-format from configuration entry %s:  %s.  The \
### Directory Server will not enforce strict compliance to the ITU-T E.123 format \
### for telephone number values
MILD_ERR_ATTR_SYNTAX_TELEPHONE_EMPTY_85=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u7a7a\u307e\u305f\u306f NULL \u3067\u3042\u308b\u305f\u3081\u3001\u6709\u52b9\u306a\u96fb\u8a71\u756a\u53f7\u3067\u306f\u3042\u308a\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_PLUS_86=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u6709\u52b9\u306a\u96fb\u8a71\u756a\u53f7\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u53b3\u683c\u306a\u96fb\u8a71\u756a\u53f7\u30c1\u30a7\u30c3\u30af\u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u304a\u308a\u3001\u5024\u306e\u5148\u982d\u304c ITU-T E.123 \u4ed5\u69d8\u306b\u6e96\u62e0\u3057\u305f\u30d7\u30e9\u30b9\u8a18\u53f7\u3067\u306f\u3042\u308a\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_TELEPHONE_ILLEGAL_CHAR_87=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u306f\u6709\u52b9\u306a\u96fb\u8a71\u756a\u53f7\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u53b3\u683c\u306a\u96fb\u8a71\u756a\u53f7\u30c1\u30a7\u30c3\u30af\u304c\u6709\u52b9\u306b\u306a\u3063\u3066\u304a\u308a\u3001\u4f4d\u7f6e %3$d \u306e\u6587\u5b57 %2$s \u306f ITU-T E.123 \u4ed5\u69d8\u3067\u306f\u8a31\u53ef\u3055\u308c\u3066\u3044\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_DIGITS_88=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u3001\u6570\u5b57\u304c\u4e00\u5207\u542b\u307e\u308c\u3066\u3044\u306a\u3044\u305f\u3081\u6709\u52b9\u306a\u96fb\u8a71\u756a\u53f7\u3067\u306f\u3042\u308a\u307e\u305b\u3093
INFO_ATTR_SYNTAX_TELEPHONE_UPDATED_STRICT_MODE_89=\u53b3\u683c\u306a\u96fb\u8a71\u756a\u53f7\u306e\u69cb\u6587\u30c1\u30a7\u30c3\u30af\u3092\u4f7f\u7528\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u793a\u3059\u8a2d\u5b9a\u5c5e\u6027 ds-cfg-strict-format \u306e\u5024\u304c\u3001\u69cb\u6210\u30a8\u30f3\u30c8\u30ea %2$s \u5185\u3067 %1$s \u306b\u66f4\u65b0\u3055\u308c\u307e\u3057\u305f
###SEVERE_WARN_ATTR_SYNTAX_NUMERIC_STRING_ILLEGAL_CHAR_90=The provided value \
### "%s" is not a valid numeric string because it contained character %s at \
### position %d that was neither a digit nor a space
MILD_ERR_ATTR_SYNTAX_NUMERIC_STRING_EMPTY_VALUE_91=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u6587\u5b57\u304c\u4e00\u5207\u542b\u307e\u308c\u3066\u3044\u306a\u3044\u305f\u3081\u306b\u6709\u52b9\u306a\u6570\u5024\u6587\u5b57\u5217\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002  \u6570\u5b57\u6587\u5b57\u5217\u306e\u5024\u306b\u306f\u30011 \u3064\u4ee5\u4e0a\u306e\u6570\u5b57\u307e\u305f\u306f\u7a7a\u767d\u3092\u542b\u3081\u3066\u304f\u3060\u3055\u3044
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE_92=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u304b\u7a7a\u767d\u306e\u307f\u304c\u542b\u307e\u308c\u308b\u305f\u3081\u306b\u6709\u52b9\u306a\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_OPEN_PARENTHESIS_93=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u958b\u304d\u62ec\u5f27\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001'%s' \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TRUNCATED_VALUE_94=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306f\u3088\u308a\u591a\u304f\u306e\u30c7\u30fc\u30bf\u3092\u671f\u5f85\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u5024\u306e\u672b\u5c3e\u306b\u9054\u3057\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_DOUBLE_PERIOD_IN_NUMERIC_OID_95=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %d \u306b\u9023\u7d9a\u3059\u308b 2 \u3064\u306e\u30d4\u30ea\u30aa\u30c9\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_NUMERIC_OID_96=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_STRING_OID_97=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u975e\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_UNEXPECTED_CLOSE_PARENTHESIS_98=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u4e88\u671f\u3057\u306a\u3044\u9589\u3058\u62ec\u5f27\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_TOKEN_99=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u307e\u305f\u306f\u305d\u306e\u4ed8\u8fd1\u306e\u6587\u5b57\u5217\u304b\u3089 "DESC" \u30c8\u30fc\u30af\u30f3\u3092\u8aad\u307f\u53d6\u308a\u4e2d\u306b\u3001\u4e88\u671f\u3057\u306a\u3044\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f:  %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TOKEN_NOT_DESC_100=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002"DESC" \u30c8\u30fc\u30af\u30f3\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001\u6587\u5b57\u5217 "%s" \u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_VALUE_101=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u307e\u305f\u306f\u305d\u306e\u4ed8\u8fd1\u306e\u6587\u5b57\u5217\u304b\u3089 "DESC" \u30c8\u30fc\u30af\u30f3\u306e\u5024\u3092\u8aad\u307f\u53d6\u308a\u4e2d\u306b\u3001\u4e88\u671f\u3057\u306a\u3044\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f:  %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_CLOSE_PARENTHESIS_102=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u9589\u3058\u62ec\u5f27\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001'%s' \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_AFTER_CLOSE_103=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u5c5e\u6027\u69cb\u6587\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u9589\u3058\u62ec\u5f27\u306e\u3042\u3068\u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
###SEVERE_WARN_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_QUOTE_AT_POS_104=The provided \
### value "%s" could not be parsed as an attribute syntax description because a \
### single quote was expected at position %d but the character %s was found \
### instead
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_EMPTY_VALUE_105=The provided value \
### could not be parsed as a printable string because it was null or empty.  A \
### printable string must contain at least one character
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_ILLEGAL_CHARACTER_106=The provided \
### value "%s" could not be parsed as a printable string because it contained an \
### invalid character %s at position %d
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_ONLY_WILDCARD_107=The provided value "*" \
### could not be parsed as a substring assertion because it consists only of a \
### wildcard character and zero-length substrings are not allowed
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS_108=The provided \
### value "%s" could not be parsed as a substring assertion because it contains \
### consecutive wildcard characters at position %d and zero-length substrings are \
### not allowed
MILD_ERR_ATTR_SYNTAX_UTC_TIME_TOO_SHORT_109=\u6307\u5b9a\u3055\u308c\u305f\u5024 %s \u306f\u77ed\u3059\u304e\u308b\u305f\u3081\u3001\u6709\u52b9\u306a UTC \u6642\u9593\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_YEAR_110=\u6307\u5b9a\u3055\u308c\u305f\u5024 %s \u306f\u6709\u52b9\u306a UTC \u6642\u9593\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002%s \u6587\u5b57\u3092\u4e16\u7d00\u3084\u5e74\u306e\u6307\u5b9a\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MONTH_111=\u6307\u5b9a\u3055\u308c\u305f\u5024 %s \u306f\u6709\u52b9\u306a UTC \u6642\u9593\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002%s \u3092\u6708\u306e\u6307\u5b9a\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_DAY_112=\u6307\u5b9a\u3055\u308c\u305f\u5024 %s \u306f\u6709\u52b9\u306a UTC \u6642\u9593\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002%s \u3092\u65e5\u306e\u6307\u5b9a\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_HOUR_113=\u6307\u5b9a\u3055\u308c\u305f\u5024 %s \u306f\u6709\u52b9\u306a UTC \u6642\u9593\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002%s \u3092\u6642\u9593\u306e\u6307\u5b9a\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MINUTE_114=\u6307\u5b9a\u3055\u308c\u305f\u5024 %s \u306f\u6709\u52b9\u306a UTC \u6642\u9593\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002%s \u3092\u5206\u306e\u6307\u5b9a\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_CHAR_115=\u6307\u5b9a\u3055\u308c\u305f\u5024 %1$s \u306f\u6709\u52b9\u306a UTC \u6642\u9593\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u4f4d\u7f6e %3$d \u306b\u7121\u52b9\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_SECOND_116=\u6307\u5b9a\u3055\u308c\u305f\u5024 %s \u306f\u6709\u52b9\u306a UTC \u6642\u9593\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002%s \u3092\u79d2\u306e\u6307\u5b9a\u306b\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_OFFSET_117=\u6307\u5b9a\u3055\u308c\u305f\u5024 %s \u306f\u6709\u52b9\u306a UTC \u6642\u9593\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002%s \u306f\u6709\u52b9\u306a GMT \u30aa\u30d5\u30bb\u30c3\u30c8\u3067\u306f\u3042\u308a\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_UTC_TIME_CANNOT_PARSE_118=\u6307\u5b9a\u3055\u308c\u305f\u5024 %s \u3092\u6709\u52b9\u306a UTC \u6642\u9593\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f:  %s
MILD_ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE_119=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u304b\u7a7a\u767d\u306e\u307f\u304c\u542b\u307e\u308c\u308b\u305f\u3081\u306b\u6709\u52b9\u306a DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS_120=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u958b\u304d\u62ec\u5f27\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001'%s' \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DCR_TRUNCATED_VALUE_121=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092 DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306f\u3088\u308a\u591a\u304f\u306e\u30c7\u30fc\u30bf\u3092\u671f\u5f85\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u5024\u306e\u672b\u5c3e\u306b\u9054\u3057\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DCR_DOUBLE_PERIOD_IN_NUMERIC_OID_122=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092 DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %d \u306b\u9023\u7d9a\u3059\u308b 2 \u3064\u306e\u30d4\u30ea\u30aa\u30c9\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_NUMERIC_OID_123=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092 DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_STRING_OID_124=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092 DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u975e\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DCR_UNEXPECTED_CLOSE_PARENTHESIS_125=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092 DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u4e88\u671f\u3057\u306a\u3044\u9589\u3058\u62ec\u5f27\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_126=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092 DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS_127=DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247 "%s" \u306f\u3001\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u3067\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u306a\u3044\u69cb\u9020\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9 %s \u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL_128=DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247 "%s" \u306f\u3001OID %s (%s) \u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059\u3002  \u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306f\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u306b\u5b58\u5728\u3057\u307e\u3059\u304c\u3001\u69cb\u9020\u3068\u3057\u3066\u3067\u306f\u306a\u304f %s \u3068\u3057\u3066\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS_129=DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247 "%s" \u306f\u3001\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u3067\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u306a\u3044\u88dc\u52a9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9 %s \u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY_130=DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247 "%s" \u306f\u88dc\u52a9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9 %s \u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059\u3002\u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306f\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u306b\u5b58\u5728\u3057\u307e\u3059\u304c\u3001\u88dc\u52a9\u3067\u306f\u306a\u304f %s \u3068\u3057\u3066\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR_131=DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247 "%s" \u306f\u3001\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u3067\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u306a\u3044\u5fc5\u9808\u5c5e\u6027\u578b %s \u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR_132=DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247 "%s" \u306f\u3001\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u3067\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u306a\u3044\u30aa\u30d7\u30b7\u30e7\u30f3\u5c5e\u6027\u578b %s \u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR_133=DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247 "%s" \u306f\u3001\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u3067\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u306a\u3044\u7981\u6b62\u5c5e\u6027\u578b %s \u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_QUOTE_AT_POS_134=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u5358\u4e00\u5f15\u7528\u7b26\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001%s \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE_135=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u304b\u7a7a\u767d\u306e\u307f\u304c\u542b\u307e\u308c\u308b\u305f\u3081\u306b\u6709\u52b9\u306a\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_OPEN_PARENTHESIS_136=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u958b\u304d\u62ec\u5f27\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001'%c' \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_TRUNCATED_VALUE_137=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306f\u3088\u308a\u591a\u304f\u306e\u30c7\u30fc\u30bf\u3092\u671f\u5f85\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u5024\u306e\u672b\u5c3e\u306b\u9054\u3057\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_DOUBLE_PERIOD_IN_NUMERIC_OID_138=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %d \u306b\u9023\u7d9a\u3059\u308b 2 \u3064\u306e\u30d4\u30ea\u30aa\u30c9\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_NUMERIC_OID_139=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$c \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_STRING_OID_140=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u975e\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$c \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNEXPECTED_CLOSE_PARENTHESIS_141=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u4e88\u671f\u3057\u306a\u3044\u9589\u3058\u62ec\u5f27\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_142=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$c \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS_143=\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e "%s" \u306f\u3001\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u3067\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u306a\u3044\u69cb\u9020\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9 %s \u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL_144=\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e "%s" \u306f\u3001OID %s (%s) \u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059\u3002 \u3053\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u306f\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u306b\u5b58\u5728\u3057\u307e\u3059\u304c\u3001\u69cb\u9020\u3068\u3057\u3066\u3067\u306f\u306a\u304f %s \u3068\u3057\u3066\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR_145=OID %s \u306e\u540d\u524d\u66f8\u5f0f\u306e\u5b9a\u7fa9\u3067\u306f\u3001\u5fc5\u9808\u5c5e\u6027 "%s" \u3092\u542b\u3081\u308b\u3079\u304d\u3067\u3042\u308b\u3068\u5ba3\u8a00\u3055\u308c\u3066\u3044\u307e\u3057\u305f\u3002  \u3053\u306e\u540d\u524d\u307e\u305f\u306f OID \u306b\u4e00\u81f4\u3059\u308b\u5c5e\u6027\u578b\u304c\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u306b\u5b58\u5728\u3057\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR_146=OID %s \u306e\u540d\u524d\u66f8\u5f0f\u306e\u5b9a\u7fa9\u3067\u306f\u3001\u30aa\u30d7\u30b7\u30e7\u30f3\u5c5e\u6027 "%s" \u3092\u542b\u3081\u308b\u3079\u304d\u3067\u3042\u308b\u3068\u5ba3\u8a00\u3055\u308c\u3066\u3044\u307e\u3057\u305f\u3002  \u3053\u306e\u540d\u524d\u307e\u305f\u306f OID \u306b\u4e00\u81f4\u3059\u308b\u5c5e\u6027\u578b\u304c\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u306b\u5b58\u5728\u3057\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS_147=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u95a2\u9023\u4ed8\u3051\u3089\u308c\u305f\u69cb\u9020\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_QUOTE_AT_POS_148=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u540d\u524d\u66f8\u5f0f\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u5358\u4e00\u5f15\u7528\u7b26\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001%c \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MR_EMPTY_VALUE_149=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u304b\u7a7a\u767d\u306e\u307f\u304c\u542b\u307e\u308c\u308b\u305f\u3081\u306b\u6709\u52b9\u306a\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_OPEN_PARENTHESIS_150=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u958b\u304d\u62ec\u5f27\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001'%s' \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MR_TRUNCATED_VALUE_151=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306f\u3088\u308a\u591a\u304f\u306e\u30c7\u30fc\u30bf\u3092\u671f\u5f85\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u5024\u306e\u672b\u5c3e\u306b\u9054\u3057\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MR_DOUBLE_PERIOD_IN_NUMERIC_OID_152=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %d \u306b\u9023\u7d9a\u3059\u308b 2 \u3064\u306e\u30d4\u30ea\u30aa\u30c9\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_NUMERIC_OID_153=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_STRING_OID_154=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u975e\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MR_UNEXPECTED_CLOSE_PARENTHESIS_155=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u4e88\u671f\u3057\u306a\u3044\u9589\u3058\u62ec\u5f27\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_156=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX_157=\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e "%s" \u306f\u3001\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u3067\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u306a\u3044\u5c5e\u6027\u69cb\u6587 %s \u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_MR_NO_SYNTAX_158=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u95a2\u9023\u4ed8\u3051\u3089\u308c\u305f\u5c5e\u6027\u69cb\u6587\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_QUOTE_AT_POS_159=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u5358\u4e00\u5f15\u7528\u7b26\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001%s \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE_160=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u304b\u7a7a\u767d\u306e\u307f\u304c\u542b\u307e\u308c\u308b\u305f\u3081\u306b\u6709\u52b9\u306a\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_OPEN_PARENTHESIS_161=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u958b\u304d\u62ec\u5f27\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001'%s' \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MRUSE_TRUNCATED_VALUE_162=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306f\u3088\u308a\u591a\u304f\u306e\u30c7\u30fc\u30bf\u3092\u671f\u5f85\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u5024\u306e\u672b\u5c3e\u306b\u9054\u3057\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MRUSE_DOUBLE_PERIOD_IN_NUMERIC_OID_163=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %d \u306b\u9023\u7d9a\u3059\u308b 2 \u3064\u306e\u30d4\u30ea\u30aa\u30c9\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_NUMERIC_OID_164=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_STRING_OID_165=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u975e\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE_166=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6307\u5b9a\u3055\u308c\u305f\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb %s \u306f\u4e0d\u660e\u3067\u3059
MILD_ERR_ATTR_SYNTAX_MRUSE_UNEXPECTED_CLOSE_PARENTHESIS_167=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u4e88\u671f\u3057\u306a\u3044\u9589\u3058\u62ec\u5f27\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_168=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR_169=\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e "%s" \u306f\u3001\u30b5\u30fc\u30d0\u30fc\u30b9\u30ad\u30fc\u30de\u5185\u3067\u5b9a\u7fa9\u3055\u308c\u3066\u3044\u306a\u3044\u5c5e\u6027\u578b %s \u306b\u95a2\u9023\u4ed8\u3051\u3089\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_MRUSE_NO_ATTR_170=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u95a2\u9023\u4ed8\u3051\u3089\u308c\u305f OID \u3067\u4f7f\u7528\u53ef\u80fd\u306a\u5c5e\u6027\u578b\u306e\u30bb\u30c3\u30c8\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_QUOTE_AT_POS_171=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u306e\u4f7f\u7528\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u5358\u4e00\u5f15\u7528\u7b26\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001%s \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE_172=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u304b\u7a7a\u767d\u306e\u307f\u304c\u542b\u307e\u308c\u308b\u305f\u3081\u306b\u6709\u52b9\u306a DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS_173=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u958b\u304d\u62ec\u5f27\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001'%s' \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_TRUNCATED_VALUE_174=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306f\u3088\u308a\u591a\u304f\u306e\u30c7\u30fc\u30bf\u3092\u671f\u5f85\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u5024\u306e\u672b\u5c3e\u306b\u9054\u3057\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_RULE_ID_175=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u898f\u5247 ID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_UNEXPECTED_CLOSE_PARENTHESIS_176=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u4e88\u671f\u3057\u306a\u3044\u9589\u3058\u62ec\u5f27\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_177=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_NAME_FORM_178=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4e0d\u660e\u306a\u540d\u524d\u66f8\u5f0f %s \u304c\u53c2\u7167\u3055\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_RULE_ID_179=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4e0a\u4f4d\u306e DIT \u69cb\u9020\u898f\u5247\u3068\u3057\u3066\u4e0d\u660e\u306a\u898f\u5247 ID %d \u304c\u53c2\u7167\u3055\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_NO_NAME_FORM_180=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u898f\u5247\u306e\u540d\u524d\u66f8\u5f0f\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_QUOTE_AT_POS_181=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u306f\u5358\u4e00\u5f15\u7528\u7b26\u304c\u5b58\u5728\u3059\u308b\u3079\u304d\u3067\u3059\u304c\u3001%s \u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_DOUBLE_PERIOD_IN_NUMERIC_OID_182=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %d \u306b\u9023\u7d9a\u3059\u308b 2 \u3064\u306e\u30d4\u30ea\u30aa\u30c9\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_NUMERIC_OID_183=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_STRING_OID_184=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092 DIT \u69cb\u9020\u898f\u5247\u306e\u8aac\u660e\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u975e\u6570\u5024 OID \u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_TELEX_TOO_SHORT_185=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306f\u77ed\u3059\u304e\u308b\u305f\u3081\u3001\u6709\u52b9\u306a\u30c6\u30ec\u30c3\u30af\u30b9\u756a\u53f7\u5024\u3067\u306f\u3042\u308a\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_TELEX_NOT_PRINTABLE_186=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u306b\u306f\u6709\u52b9\u306a\u30c6\u30ec\u30c3\u30af\u30b9\u756a\u53f7\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093\u3002\u4f4d\u7f6e %3$d \u306e\u6587\u5b57 %2$s \u306f\u6709\u52b9\u306a\u30d7\u30ea\u30f3\u30c8\u53ef\u80fd\u6587\u5b57\u5217\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_TELEX_ILLEGAL_CHAR_187=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u306b\u306f\u6709\u52b9\u306a\u30c6\u30ec\u30c3\u30af\u30b9\u756a\u53f7\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093\u3002\u4f4d\u7f6e %3$d \u306e\u6587\u5b57 %2$s \u306f\u3001\u6709\u52b9\u306a\u30d7\u30ea\u30f3\u30c8\u53ef\u80fd\u6587\u5b57\u5217\u3067\u3082\u3001\u30c6\u30ec\u30c3\u30af\u30b9\u756a\u53f7\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3092\u533a\u5207\u308b\u305f\u3081\u306e\u30c9\u30eb\u8a18\u53f7\u3067\u3082\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_TELEX_TRUNCATED_188=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u306b\u306f\u6709\u52b9\u306a\u30c6\u30ec\u30c3\u30af\u30b9\u756a\u53f7\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093\u3002\u30c9\u30eb\u8a18\u53f7\u3067\u533a\u5207\u3089\u308c\u305f 3 \u3064\u306e\u30d7\u30ea\u30f3\u30c8\u53ef\u80fd\u6587\u5b57\u5217\u3092\u8aad\u307f\u53d6\u308b\u524d\u306b\u3001\u5024\u306e\u672b\u5c3e\u304c\u691c\u51fa\u3055\u308c\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_EMPTY_189=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u305f\u3081\u306b\u6709\u52b9\u306a FAX \u756a\u53f7\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_NOT_PRINTABLE_190=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a FAX \u756a\u53f7\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306e\u6587\u5b57 %2$s \u306f\u6709\u52b9\u306a\u30d7\u30ea\u30f3\u30c8\u53ef\u80fd\u6587\u5b57\u5217\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_END_WITH_DOLLAR_191=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a FAX \u756a\u53f7\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u672b\u5c3e\u304c\u30c9\u30eb\u8a18\u53f7\u3067\u3057\u305f\u304c\u3001\u30c9\u30eb\u8a18\u53f7\u306e\u3042\u3068\u306b FAX \u30d1\u30e9\u30e1\u30fc\u30bf\u304c\u8a18\u8ff0\u3055\u308c\u3066\u3044\u308b\u3079\u304d\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_ILLEGAL_PARAMETER_192=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a FAX \u756a\u53f7\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u3068 %4$d \u306e\u9593\u306e\u6587\u5b57\u5217 "%2$s" \u306f\u6709\u52b9\u306a FAX \u30d1\u30e9\u30e1\u30fc\u30bf\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_INVALID_DN_193=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u540d\u524d\u304a\u3088\u3073\u30aa\u30d7\u30b7\u30e7\u30f3 UID \u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002DN \u90e8\u3092\u89e3\u6790\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f:  %s
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_ILLEGAL_BINARY_DIGIT_194=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a\u540d\u524d\u304a\u3088\u3073\u30aa\u30d7\u30b7\u30e7\u30f3 UID \u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002UID \u90e8\u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a 2 \u9032\u6570 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_TELETEXID_EMPTY_195=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u305f\u3081\u306b\u6709\u52b9\u306a\u30c6\u30ec\u30c6\u30c3\u30af\u30b9\u7aef\u672b\u8b58\u5225\u5b50\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_TELETEXID_NOT_PRINTABLE_196=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a\u30c6\u30ec\u30c6\u30c3\u30af\u30b9\u7aef\u672b\u8b58\u5225\u5b50\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306e\u6587\u5b57 %2$s \u306f\u6709\u52b9\u306a\u30d7\u30ea\u30f3\u30c8\u53ef\u80fd\u6587\u5b57\u5217\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_TELETEXID_END_WITH_DOLLAR_197=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u30c6\u30ec\u30c6\u30c3\u30af\u30b9\u7aef\u672b\u8b58\u5225\u5b50\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u672b\u5c3e\u304c\u30c9\u30eb\u8a18\u53f7\u3067\u3057\u305f\u304c\u3001\u30c9\u30eb\u8a18\u53f7\u306e\u3042\u3068\u306b TTX \u30d1\u30e9\u30e1\u30fc\u30bf\u304c\u8a18\u8ff0\u3055\u308c\u3066\u3044\u308b\u3079\u304d\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_TELETEXID_PARAM_NO_COLON_198=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u30c6\u30ec\u30c6\u30c3\u30af\u30b9\u7aef\u672b\u8b58\u5225\u5b50\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30d1\u30e9\u30e1\u30fc\u30bf\u6587\u5b57\u5217\u306b\u540d\u524d\u3068\u5024\u3092\u533a\u5207\u308b\u30b3\u30ed\u30f3\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_TELETEXID_ILLEGAL_PARAMETER_199=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u30c6\u30ec\u30c6\u30c3\u30af\u30b9\u7aef\u672b\u8b58\u5225\u5b50\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6587\u5b57\u5217 "%s" \u306f\u6709\u52b9\u306a TTX \u30d1\u30e9\u30e1\u30fc\u30bf\u540d\u3067\u306f\u3042\u308a\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_EMPTY_VALUE_200=\u6307\u5b9a\u3055\u308c\u305f\u5024\u306f\u3001\u7a7a\u3067\u3042\u308b\u305f\u3081\u306b\u5225\u306e\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MBTYPE_201=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5225\u306e\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c9\u30eb\u8a18\u53f7\u306e\u524d\u306b\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u578b\u304c\u8a18\u8ff0\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MBTYPE_CHAR_202=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u5225\u306e\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u578b\u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MAILBOX_203=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5225\u306e\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30c9\u30eb\u8a18\u53f7\u306e\u3042\u3068\u306b\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u304c\u8a18\u8ff0\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MB_CHAR_204=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u5225\u306e\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30e1\u30fc\u30eb\u30dc\u30c3\u30af\u30b9\u306e\u4f4d\u7f6e %3$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %2$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_OC_205=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30b7\u30e3\u30fc\u30d7\u8a18\u53f7 (#) \u306e\u524d\u306b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u540d\u3082 OID \u3082\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_GUIDE_ILLEGAL_CHAR_206=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6761\u4ef6\u90e8 %2$s \u306e\u4f4d\u7f6e %4$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %3$c \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_GUIDE_MISSING_CLOSE_PAREN_207=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6761\u4ef6\u90e8 %s \u306b\u3001\u6700\u521d\u306e\u958b\u304d\u62ec\u5f27\u306b\u5bfe\u5fdc\u3059\u308b\u9589\u3058\u62ec\u5f27\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_QUESTION_MARK_208=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6761\u4ef6\u90e8 %s \u306e\u5148\u982d\u306f\u7591\u554f\u7b26\u3067\u3057\u305f\u304c\u3001\u305d\u306e\u3042\u3068\u306b\u6587\u5b57\u5217 "true" \u307e\u305f\u306f "false" \u304c\u7d9a\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_DOLLAR_209=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6761\u4ef6\u90e8 %s \u306b\u3001\u5c5e\u6027\u578b\u3068\u4e00\u81f4\u578b\u3092\u533a\u5207\u308b\u30c9\u30eb\u8a18\u53f7\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_ATTR_210=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6761\u4ef6\u90e8 %s \u3067\u30c9\u30eb\u8a18\u53f7\u306e\u524d\u306b\u5c5e\u6027\u578b\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_MATCH_TYPE_211=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6761\u4ef6\u90e8 %s \u3067\u30c9\u30eb\u8a18\u53f7\u306e\u3042\u3068\u306b\u4e00\u81f4\u578b\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_MATCH_TYPE_212=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6761\u4ef6\u90e8 %s \u306b\u3001\u4f4d\u7f6e %d \u304b\u3089\u59cb\u307e\u308b\u7121\u52b9\u306a\u4e00\u81f4\u578b\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP_213=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u62e1\u5f35\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u3068\u6761\u4ef6\u3092\u533a\u5207\u308b\u30b7\u30e3\u30fc\u30d7\u8a18\u53f7 (#) \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC_214=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u62e1\u5f35\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30b7\u30e3\u30fc\u30d7\u8a18\u53f7 (#) \u306e\u524d\u306b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u540d\u3082 OID \u3082\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_DOUBLE_PERIOD_IN_OC_OID_215=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u62e1\u5f35\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u3092\u6307\u5b9a\u3059\u308b\u6570\u5024 OID %s \u306e\u4f4d\u7f6e %d \u306b\u9023\u7d9a\u3059\u308b 2 \u3064\u306e\u30d4\u30ea\u30aa\u30c9\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_OID_216=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u62e1\u5f35\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u3092\u6307\u5b9a\u3059\u308b\u6570\u5024 OID %2$s \u306e\u4f4d\u7f6e %4$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %3$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_NAME_217=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u62e1\u5f35\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u540d %2$s \u306e\u4f4d\u7f6e %4$d \u306b\u4e0d\u6b63\u306a\u6587\u5b57 %3$s \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_FINAL_SHARP_218=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u62e1\u5f35\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6761\u4ef6\u3068\u6709\u52b9\u7bc4\u56f2\u3092\u533a\u5207\u308b\u30b7\u30e3\u30fc\u30d7\u8a18\u53f7 (#) \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SCOPE_219=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u62e1\u5f35\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6700\u5f8c\u306e\u30b7\u30e3\u30fc\u30d7\u8a18\u53f7 (#) \u306e\u3042\u3068\u306b\u6709\u52b9\u7bc4\u56f2\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_INVALID_SCOPE_220=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u62e1\u5f35\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u6307\u5b9a\u3055\u308c\u305f\u6709\u52b9\u7bc4\u56f2 %s \u304c\u7121\u52b9\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_CRITERIA_221=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u62e1\u5f35\u30ac\u30a4\u30c9\u5024\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30b7\u30e3\u30fc\u30d7\u8a18\u53f7 (#) \u306e\u9593\u306b\u6761\u4ef6\u304c\u6307\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_OID_INVALID_VALUE_222=\u6307\u5b9a\u3055\u308c\u305f\u5024 %s \u3092\u6709\u52b9\u306a OID \u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f:  %s
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NORMALIZE_FAILURE_223=An unexpected \
### error occurred while trying to normalize value %s as a generalized time \
### value:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_CANNOT_NORMALIZE_224=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseExactOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_INVALID_TYPE_225=An error occurred while \
### attempting to compare two objects using the caseExactOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_CANNOT_NORMALIZE_226=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseIgnoreOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_INVALID_TYPE_227=An error occurred while \
### attempting to compare two objects using the caseIgnoreOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_CANNOT_NORMALIZE_228=An error \
### occurred while attempting to compare two AttributeValue objects using the \
### generalizedTimeOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_INVALID_TYPE_229=An error occurred \
### while attempting to compare two objects using the \
### generalizedTimeOrderingMatch matching rule because the objects were of an \
### unsupported type %s.  Only byte arrays, ASN.1 octet strings, and attribute \
### value objects may be compared
###SEVERE_WARN_OMR_INTEGER_COMPARE_CANNOT_NORMALIZE_230=An error occurred while \
### attempting to compare two AttributeValue objects using the \
### integerOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_INTEGER_COMPARE_INVALID_TYPE_231=An error occurred while \
### attempting to compare two objects using the integerOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_CANNOT_NORMALIZE_232=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### numericStringOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_INVALID_TYPE_233=An error occurred \
### while attempting to compare two objects using the numericStringOrderingMatch \
### matching rule because the objects were of an unsupported type %s.  Only byte \
### arrays, ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_CANNOT_NORMALIZE_234=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### octetStringOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_INVALID_TYPE_235=An error occurred while \
### attempting to compare two objects using the octetStringOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH_236=The provided value "%s" has \
### an invalid length for a UUID.  All UUID values must have a length of exactly \
### 36 bytes, but the provided value had a length of %d bytes
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH_237=The provided value "%s" should \
### have had a dash at position %d, but the character '%s' was found instead
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX_238=The provided value "%s" should \
### have had a hexadecimal digit at position %d, but the character '%s' was found \
### instead
INFO_ATTR_SYNTAX_DIRECTORYSTRING_DESCRIPTION_ALLOW_ZEROLENGTH_239=\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u6587\u5b57\u5217\u69cb\u6587\u3092\u542b\u3080\u5c5e\u6027\u306b\u9577\u3055\u304c 0 \u306e\u5024\u3092\u6307\u5b9a\u3067\u304d\u308b\u304b\u3069\u3046\u304b\u3092\u793a\u3057\u307e\u3059\u3002  \u3053\u308c\u306f\u3001\u53b3\u5bc6\u306b\u306f LDAP \u4ed5\u69d8\u3067\u306f\u8a31\u53ef\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u304c\u3001\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u30b5\u30fc\u30d0\u30fc\u306e\u4ee5\u524d\u306e\u30ea\u30ea\u30fc\u30b9\u3068\u306e\u4e0b\u4f4d\u4e92\u63db\u6027\u3092\u7dad\u6301\u3059\u308b\u305f\u3081\u306b\u6709\u7528\u3067\u3042\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_CANNOT_DETERMINE_ZEROLENGTH_240=An \
### error occurred while trying to determine the value of the %s configuration \
### attribute, which indicates whether directory string attributes should be \
### allowed to have zero-length values:  %s
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_INVALID_ZEROLENGTH_VALUE_241=The \
### operation attempted to assign a zero-length value to an attribute with the \
### directory string syntax
INFO_ATTR_SYNTAX_DIRECTORYSTRING_UPDATED_ALLOW_ZEROLENGTH_242=\u69cb\u6210\u30a8\u30f3\u30c8\u30ea %2$s \u5185\u306e %1$s \u5c5e\u6027\u304c\u65b0\u3057\u3044\u5024 %3$s \u3067\u66f4\u65b0\u3055\u308c\u307e\u3057\u305f
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_SCHEME_CHAR_243=The provided \
### authPassword value had an invalid scheme character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_244=The provided authPassword value \
### had a zero-length scheme element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_SEPARATOR_245=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the scheme and authInfo elements
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_INFO_CHAR_246=The provided \
### authPassword value had an invalid authInfo character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_247=The provided authPassword \
### value had a zero-length authInfo element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_SEPARATOR_248=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the authInfo and authValue elements
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_INITIAL_PARENTHESIS_249=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### it did not start with a parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_NONSPACE_250=The provided value "%s" could not \
### be parsed by the integer first component matching rule because it did not \
### have any non-space characters after the opening parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_SPACE_AFTER_INT_251=The provided value "%s" \
### could not be parsed by the integer first component matching rule because it \
### did not have any space characters after the first component
###SEVERE_ERR_EMR_INTFIRSTCOMP_FIRST_COMPONENT_NOT_INT_252=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### the first component does not appear to be an integer value
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_VALUE_253=No value was given to decode by \
### the user password attribute syntax
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_OPENING_BRACE_254=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not start with the opening curly brace ("{") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_CLOSING_BRACE_255=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not contain a closing curly brace ("}") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_SCHEME_256=Unable to decode the provided \
### value according to the user password syntax because the value does not \
### contain a storage scheme name
MILD_ERR_ATTR_SYNTAX_RFC3672_SUBTREE_SPECIFICATION_INVALID_257=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a RFC 3672 \u30b5\u30d6\u30c4\u30ea\u30fc\u4ed5\u69d8\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ABSOLUTE_SUBTREE_SPECIFICATION_INVALID_258=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u7d76\u5bfe\u30b5\u30d6\u30c4\u30ea\u30fc\u4ed5\u69d8\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
MILD_ERR_ATTR_SYNTAX_RELATIVE_SUBTREE_SPECIFICATION_INVALID_259=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u76f8\u5bfe\u30b5\u30d6\u30c4\u30ea\u30fc\u4ed5\u69d8\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_INTEGER_260=The provided value %s is not \
### allowed for attributes with a Integer syntax
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_VALUE_CHAR_261=The provided \
### authPassword value had an invalid authValue character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_VALUE_262=The provided authPassword \
### value had a zero-length authValue element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_TRAILING_CHAR_263=The provided \
### authPassword value had an invalid trailing character at position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXTENSION_INVALID_CHARACTER_264=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u5c5e\u6027\u69cb\u6587\u62e1\u5f35\u6a5f\u80fd\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %d \u306b\u7121\u52b9\u306a\u6587\u5b57\u304c\u898b\u3064\u304b\u308a\u307e\u3057\u305f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_INVALID_EXTENSION_265=\u62e1\u5f35\u6a5f\u80fd\u304c\u7121\u52b9\u3067\u3042\u308b\u305f\u3081\u3001\u5c5e\u6027\u69cb\u6587\u3092\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002%s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE_266=The definition \
### for objectclass %s is invalid because it has an objectclass type of %s but \
### this is incompatible with the objectclass type %s for the superior class %s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP_267=The \
### definition for objectclass %s is invalid because it is defined as a \
### structural class but its superior chain does not include the "top" \
### objectclass
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_SUPERIOR_USAGE_268=The definition \
### for attribute type %s is invalid because its attribute usage %s is not the \
### same as the usage for its superior type %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_FROM_NONCOLLECTIVE_269=The \
### definition for attribute type %s is invalid because it is defined as a \
### collective type but the superior type %s is not collective
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NONCOLLECTIVE_FROM_COLLECTIVE_270=The \
### definition for attribute type %s is invalid because it is not defined as a \
### collective type but the superior type %s is collective
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_STRUCTURAL_271=DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247 "%1$s" \u306f\u6709\u52b9\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u95a2\u9023\u4ed8\u3051\u3089\u308c\u305f\u69cb\u9020\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9 %3$s \u3067\u5fc5\u8981\u3068\u3055\u308c\u308b\u5c5e\u6027\u578b %2$s \u306e\u4f7f\u7528\u304c\u7981\u6b62\u3055\u308c\u3066\u3044\u307e\u3059
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_AUXILIARY_272=DIT \u30b3\u30f3\u30c6\u30f3\u30c4\u898f\u5247 "%1$s" \u306f\u6709\u52b9\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u95a2\u9023\u4ed8\u3051\u3089\u308c\u305f\u88dc\u52a9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9 %3$s \u3067\u5fc5\u8981\u3068\u3055\u308c\u308b\u5c5e\u6027\u578b %2$s \u306e\u4f7f\u7528\u304c\u7981\u6b62\u3055\u308c\u3066\u3044\u307e\u3059
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_IS_OPERATIONAL_273=The definition \
### for attribute type %s is invalid because it is declared COLLECTIVE but does \
### not have a usage of userApplications
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NO_USER_MOD_NOT_OPERATIONAL_274=The \
### definition for attribute type %s is invalid because it is declared \
### NO-USER-MODIFICATION but does not have an operational usage
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_FRACTION_CHAR_275=The \
### provided value %s is not a valid generalized time value because it contains \
### illegal character %s in the fraction component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_EMPTY_FRACTION_276=The provided \
### value %s is not a valid generalized time value because it does not contain at \
### least one digit after the period to use as the fractional component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NO_TIME_ZONE_INFO_277=The provided \
### value %s is not a valid generalized time value because it does not end with \
### 'Z' or a time zone offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_TIME_278=The provided value \
### %s is not a valid generalized time value because it represents an invalid \
### time (e.g., a date that does not exist):  %s
NOTICE_SCHEMA_IMPORT_FAILED_279=\u30b9\u30ad\u30fc\u30de\u8981\u7d20\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f: %s\u3001%s
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_LOCALE_280=\u30ed\u30b1\u30fc\u30eb %s \u306f JVM \u3067\u30b5\u30dd\u30fc\u30c8\u3055\u308c\u3066\u3044\u306a\u3044\u305f\u3081\u3001\u30de\u30c3\u30c1\u30f3\u30b0\u30eb\u30fc\u30eb\u30a8\u30f3\u30c8\u30ea %s \u306e\u7167\u5408\u30eb\u30fc\u30eb %s \u306f\u7121\u52b9\u3067\u3059
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_FORMAT_281=\u6307\u5b9a\u3055\u308c\u305f\u7167\u5408\u30eb\u30fc\u30eb %s \u306b\u3001\u6709\u52b9\u306a\u5f62\u5f0f\u306e OID:LOCALE \u304c\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093
MILD_ERR_ATTR_SYNTAX_DN_INVALID_REQUIRES_ESCAPE_CHAR_282=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u8b58\u5225\u540d\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u5c5e\u6027\u5024\u306e\u5148\u982d\u6587\u5b57 (\u4f4d\u7f6e %d) \u306f\u30a8\u30b9\u30b1\u30fc\u30d7\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u305f\u3081\u3067\u3059
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_CHAR_283=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a\u5c5e\u6027\u578b\u5b9a\u7fa9\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306e\u6587\u5b57 '%2$c' \u3092\u5c5e\u6027\u578b\u540d\u306b\u4f7f\u7528\u3067\u304d\u306a\u3044\u305f\u3081\u3067\u3059
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_284=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u5c5e\u6027\u578b\u5b9a\u7fa9\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002%s \u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u6709\u52b9\u3067\u306a\u3044\u304b\u304e\u308a\u3001\u5c5e\u6027\u578b\u540d\u306b\u4e0b\u7dda\u6587\u5b57\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u306a\u3044\u305f\u3081\u3067\u3059
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_285=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u5c5e\u6027\u578b\u5b9a\u7fa9\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30cf\u30a4\u30d5\u30f3\u6587\u5b57\u3092\u5c5e\u6027\u578b\u540d\u306e\u6700\u521d\u306e\u6587\u5b57\u3068\u3057\u3066\u4f7f\u7528\u3067\u304d\u306a\u3044\u305f\u3081\u3067\u3059
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_286=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u5c5e\u6027\u578b\u5b9a\u7fa9\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002%s \u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u6709\u52b9\u306a\u5834\u5408\u3067\u3082\u3001\u4e0b\u7dda\u6587\u5b57\u3092\u5c5e\u6027\u578b\u540d\u306e\u6700\u521d\u306e\u6587\u5b57\u3068\u3057\u3066\u4f7f\u7528\u3067\u304d\u306a\u3044\u305f\u3081\u3067\u3059
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_287=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a\u5c5e\u6027\u578b\u5b9a\u7fa9\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u540d\u524d\u304c OID \u3068\u3057\u3066\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u304b\u3001%3$s \u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u6709\u52b9\u3067\u306a\u3044\u304b\u304e\u308a\u3001\u6570\u5b57 '%2$c' \u3092\u5c5e\u6027\u578b\u540d\u306e\u6700\u521d\u306e\u6587\u5b57\u3068\u3057\u3066\u4f7f\u7528\u3067\u304d\u306a\u3044\u305f\u3081\u3067\u3059
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_CHAR_288=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u5b9a\u7fa9\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u4f4d\u7f6e %3$d \u306e\u6587\u5b57 '%2$c' \u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u540d\u306b\u4f7f\u7528\u3067\u304d\u306a\u3044\u305f\u3081\u3067\u3059
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_289=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u5b9a\u7fa9\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002%s \u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u6709\u52b9\u3067\u306a\u3044\u304b\u304e\u308a\u3001\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u540d\u306b\u4e0b\u7dda\u6587\u5b57\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u306f\u3067\u304d\u306a\u3044\u305f\u3081\u3067\u3059
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_290=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u5b9a\u7fa9\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30cf\u30a4\u30d5\u30f3\u6587\u5b57\u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u540d\u306e\u6700\u521d\u306e\u6587\u5b57\u3068\u3057\u3066\u4f7f\u7528\u3067\u304d\u306a\u3044\u305f\u3081\u3067\u3059
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_291=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%s" \u3092\u6709\u52b9\u306a\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u5b9a\u7fa9\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002%s \u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u6709\u52b9\u306a\u5834\u5408\u3067\u3082\u3001\u4e0b\u7dda\u6587\u5b57\u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u540d\u306e\u6700\u521d\u306e\u6587\u5b57\u3068\u3057\u3066\u4f7f\u7528\u3067\u304d\u306a\u3044\u305f\u3081\u3067\u3059
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_292=\u6307\u5b9a\u3055\u308c\u305f\u5024 "%1$s" \u3092\u6709\u52b9\u306a\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u5b9a\u7fa9\u3068\u3057\u3066\u89e3\u6790\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u540d\u524d\u304c OID \u3068\u3057\u3066\u6307\u5b9a\u3055\u308c\u3066\u3044\u308b\u304b\u3001%3$s \u69cb\u6210\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u6709\u52b9\u3067\u306a\u3044\u304b\u304e\u308a\u3001\u6570\u5b57 '%2$c' \u3092\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30af\u30e9\u30b9\u540d\u306e\u6700\u521d\u306e\u6587\u5b57\u3068\u3057\u3066\u4f7f\u7528\u3067\u304d\u306a\u3044\u305f\u3081\u3067\u3059
sdk/src/com/sun/opends/sdk/util/messages_ko.properties
New file
@@ -0,0 +1,531 @@
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#      Copyright 2009 Sun Microsystems, Inc.
#
# Global directives
#
global.ordinal=-1
#
# Format string definitions
#
# Keys must be formatted as follows:
#
# [DESCRIPTION]
#
# where:
#
# DESCRIPTION is an upper case string providing a hint as to the context of
# the message in upper case with the underscore ('_') character serving as
# word separator
#
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_APPROXIMATE_MATCHING_RULE_1=Unable to retrieve \
### approximate matching rule %s used as the default for the %s attribute syntax. \
### Approximate matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_EQUALITY_MATCHING_RULE_2=Unable to retrieve \
### equality matching rule %s used as the default for the %s attribute syntax. \
### Equality matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_ORDERING_MATCHING_RULE_3=Unable to retrieve \
### ordering matching rule %s used as the default for the %s attribute syntax. \
### Ordering matches will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_SUBSTRING_MATCHING_RULE_4=Unable to retrieve \
### substring matching rule %s used as the default for the %s attribute syntax. \
### Substring matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN_5=The provided value "%s" is not \
### allowed for attributes with a Boolean syntax.  The only allowed values are \
### 'TRUE' and 'FALSE'
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT_6=The provided value "%s" is too \
### short to be a valid bit string.  A bit string must be a series of binary \
### digits surrounded by single quotes and followed by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED_7=The provided value "%s" is not \
### a valid bit string because it is not surrounded by single quotes and followed \
### by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT_8=The provided value "%s" is \
### not a valid bit string because '%s' is not a valid binary digit
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_INVALID_LENGTH_9=\uae38\uc774\uac00 \uc815\ud655\ud788 \ub450 \ubb38\uc790\uac00 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc740(\ub294) \uc720\ud6a8\ud55c \uad6d\uac00 \ubb38\uc790\uc5f4\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_NOT_PRINTABLE_10=\ud558\ub098 \uc774\uc0c1\uc758 \uc778\uc1c4\ud560 \uc218 \uc5c6\ub294 \ubb38\uc790\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc740(\ub294) \uc720\ud6a8\ud55c \uad6d\uac00 \ubb38\uc790\uc5f4\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_NO_ELEMENTS_11=\uc694\uc18c\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc740(\ub294) \uc720\ud6a8\ud55c \uc804\ub2ec \ubc29\ubc95\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_INVALID_ELEMENT_12=\"%2$s\"\uc774(\uac00) \uc720\ud6a8\ud55c \ubc29\ubc95\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc740(\ub294) \uc720\ud6a8\ud55c \uc804\ub2ec \ubc29\ubc95\uc774 \uc544\ub2d9\ub2c8\ub2e4.
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_TOO_SHORT_13=The provided value "%s" \
### is too short to be a valid generalized time value
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_YEAR_14=The provided value \
### "%s" is not a valid generalized time value because the '%s' character is not \
### allowed in the century or year specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MONTH_15=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid month \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_DAY_16=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid day \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_HOUR_17=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid hour \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MINUTE_18=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid minute \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SECOND_19=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid second \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SUBSECOND_20=The provided \
### value "%s" is not a valid generalized time value because the sub-second \
### component is not valid (between 1 and 3 numeric digits)
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_LONG_SUBSECOND_21=The provided value \
### "%s" is not a valid generalized time value because the sub-second value may \
### not contain more than three digits
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_OFFSET_22=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid GMT \
### offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_CHAR_23=The provided value \
### "%s" is not a valid generalized time value because it contains an invalid \
### character '%s' at position %d
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_CANNOT_PARSE_24=The provided value \
### "%s" could not be parsed as a valid generalized time:  %s
MILD_ERR_ATTR_SYNTAX_DN_INVALID_25=\uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4: %s
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_COMMA_26=\uacf5\ubc31\uc774 \uc544\ub2cc \ub9c8\uc9c0\ub9c9 \ubb38\uc790\uac00 \uc27c\ud45c\ub098 \uc138\ubbf8\ucf5c\ub860\uc774\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_ATTR_START_WITH_DIGIT_27=\uc22b\uc790 '%2$s'\uc774(\uac00) \uc18d\uc131 \uc774\ub984\uc758 \uccab \ubc88\uc9f8 \ubb38\uc790\ub85c \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_CHAR_28=\uc704\uce58 %3$d\uc5d0 \uc788\ub294 \ubb38\uc790 '%2$c'\uc774(\uac00) \uc18d\uc131 \uc774\ub984\uc5d0 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_UNDERSCORE_CHAR_29=%2$s \uad6c\uc131 \uc635\uc158\uc774 \ud65c\uc131\ud654\ub418\uc5b4 \uc788\uc9c0 \uc54a\uc73c\uba74 \ubc11\uc904\uc774 \uc18d\uc131 \uc774\ub984\uc5d0 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DASH_30=\ud558\uc774\ud508\uc774 \uc18d\uc131 \uc774\ub984\uc758 \uccab \ubc88\uc9f8 \ubb38\uc790\ub85c \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_UNDERSCORE_31=%2$s \uad6c\uc131 \uc635\uc158\uc774 \ud65c\uc131\ud654\ub418\uc5b4 \uc788\ub354\ub77c\ub3c4 \ubc11\uc904\uc774 \uc18d\uc131 \uc774\ub984\uc758 \uccab \ubc88\uc9f8 \ubb38\uc790\ub85c \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DIGIT_32=The provided value "%s" could not be parsed as a valid distinguished name because the digit '%c' is not allowed as the first character of an attribute name unless the name is specified as an OID or the %s configuration option is enabled
MILD_ERR_ATTR_SYNTAX_DN_ATTR_NO_NAME_33=\ube48 \uc18d\uc131 \uc774\ub984\uc744 \uac00\uc9c4 RDN\uc774 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_PERIOD_34=\uad6c\ubb38 \ubd84\uc11d\ub41c \uc18d\uc131 \uc774\ub984 %2$s\uc5d0 \ub9c8\uce68\ud45c\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0\ub9cc \ud574\ub2f9 \uc774\ub984\uc774 \uc720\ud6a8\ud55c OID\uac00 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_ATTR_NAME_35=\uacf5\ubc31\uc774 \uc544\ub2cc \ub9c8\uc9c0\ub9c9 \ubb38\uc790\uac00 \uc18d\uc131 \uc774\ub984 '%2$s'\uc758 \uc77c\ubd80\uc774\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_NO_EQUAL_36=\uc18d\uc131 \uc774\ub984 \"%2$s\" \ub4a4\uc5d0 \uacf5\ubc31\uc774 \uc544\ub2cc \ub2e4\uc74c \ubb38\uc790\uac00 \ub4f1\ud638 \uae30\ud638\uc5ec\uc57c \ud558\ub294\ub370 '%3$c'\uc774\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_INVALID_CHAR_37=\uc704\uce58 %3$d\uc5d0 \uc788\ub294 \ubb38\uc790 '%2$c'\uc774(\uac00) \uc798\ubabb\ub418\uc5c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_HEX_VALUE_TOO_SHORT_38=\uc18d\uc131 \uac12\uc774 # \uae30\ud638\ub85c \uc2dc\uc791\ud558\uc9c0\ub9cc \ub4a4\uc5d0 \ub450 16\uc9c4\uc218 \uc22b\uc790\uc758 \uc591\uc758 \ubc30\uc218\uac00 \uc624\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_INVALID_HEX_DIGIT_39=\uc18d\uc131 \uac12\uc774 # \uae30\ud638\ub85c \uc2dc\uc791\ud558\uc9c0\ub9cc \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 16\uc9c4\uc218 \uc22b\uc790\uc778 %2$c \ubb38\uc790\ub97c \ud3ec\ud568\ud558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\" \uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_ATTR_VALUE_DECODE_FAILURE_40=RDN \uad6c\uc131\uc694\uc18c \uc911 \ud558\ub098\uc5d0\uc11c \uc18d\uc131 \uac12\uc744 \uad6c\ubb38 \ubd84\uc11d\ud558\ub294 \ub3d9\uc548 \uc608\uae30\uce58 \uc54a\uc740 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4: "%s"
MILD_ERR_ATTR_SYNTAX_DN_UNMATCHED_QUOTE_41=RDN \uad6c\uc131\uc694\uc18c \uc911 \ud558\ub098\uac00 \ud574\ub2f9\ud558\ub294 \ub2eb\ub294 \uc778\uc6a9 \ubd80\ud638\uac00 \uc5c6\ub294 \uc778\uc6a9 \uac12\uc744 \ud3ec\ud568\ud558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DN_ESCAPED_HEX_VALUE_INVALID_42=RDN \uad6c\uc131\uc694\uc18c \uc911 \ud558\ub098\uac00 \uc774\uc2a4\ucf00\uc774\ud504 \ucc98\ub9ac\ub41c 16\uc9c4\uc218 \uc22b\uc790\uac00 \uc788\ub294 \uac12\uc744 \ud3ec\ud568\ud558\uc9c0\ub9cc \ub4a4\uc5d0 \ub450 \ubc88\uc9f8 16\uc9c4\uc218 \uc22b\uc790\uac00 \uc624\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uace0\uc720 \uc774\ub984\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INITIAL_ZERO_43=The provided value "%s" could \
### not be parsed as a valid integer because the first digit may not be zero \
### unless it is the only digit
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_MISPLACED_DASH_44=The provided value "%s" \
### could not be parsed as a valid integer because the dash may only appear if it \
### is the first character of the value followed by one or more digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INVALID_CHARACTER_45=The provided value "%s" \
### could not be parsed as a valid integer because character '%c' at position %d \
### is not allowed in an integer value
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_EMPTY_VALUE_46=The provided value "%s" could \
### not be parsed as a valid integer because it did not contain any digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_DASH_NEEDS_VALUE_47=The provided value "%s" \
### could not be parsed as a valid integer because it contained only a dash not \
### followed by an integer value
MILD_ERR_ATTR_SYNTAX_OID_NO_VALUE_48=\ubb38\uc790\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c OID\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER_49=\uc704\uce58 %2$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c OID\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS_50=\uc704\uce58 %2$d \ub610\ub294 \uadf8 \uadfc\ucc98\uc5d0 \ub9c8\uce68\ud45c\uac00 \ub450 \uac1c \uc5f0\uc18d\ud574\uc11c \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c OID\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD_51=\ub9c8\uce68\ud45c\ub85c \ub05d\ub098\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c OID\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE_52=\ube44\uc5b4 \uc788\uac70\ub098 \uacf5\ubc31\ub9cc \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c \uc18d\uc131 \uc720\ud615 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_OPEN_PARENTHESIS_53=\uc704\uce58 %2$d\uc5d0 \uc5ec\ub294 \uad04\ud638\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 '%3$s' \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uc720\ud615 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_TRUNCATED_VALUE_54=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0 \ucd94\uac00 \ub370\uc774\ud130\ub97c \uc81c\uacf5\ud574\uc57c \ud558\ub294\ub370 \uac12\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc18d\uc131 \uc720\ud615 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_DOUBLE_PERIOD_IN_NUMERIC_OID_55=\uc22b\uc790 OID\uc758 \uc704\uce58 %2$d\uc5d0 \ub9c8\uce68\ud45c\uac00 \ub450 \uac1c \uc5f0\uc18d\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uc720\ud615 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_NUMERIC_OID_56=\uc22b\uc790 OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uc720\ud615 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_STRING_OID_57=\uc22b\uc790\uac00 \uc544\ub2cc OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uc720\ud615 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_58=\uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uc720\ud615 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_UNEXPECTED_CLOSE_PARENTHESIS_59=\uc704\uce58 %2$d\uc5d0 \uc608\uae30\uce58 \uc54a\uc740 \ub2eb\ub294 \uad04\ud638\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uc720\ud615 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_60=\ud1a0\ud070 %2$s \ub4a4\uc758 \uacf5\ubc31\uc774 \uc544\ub2cc \uccab \ubc88\uc9f8 \ubb38\uc790\ub85c \uc791\uc740 \ub530\uc634\ud45c\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 %3$s \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uc720\ud615 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE_61=The definition for \
### the attribute type with OID %s declared a superior type with an OID of %s. \
### No attribute type with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR_62=The definition for \
### the attribute type with OID %s declared that approximate matching should be \
### performed using the matching rule "%s".  No such approximate matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR_63=The definition for \
### the attribute type with OID %s declared that equality matching should be \
### performed using the matching rule "%s".  No such equality matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR_64=The definition for \
### the attribute type with OID %s declared that ordering matching should be \
### performed using the matching rule "%s".  No such ordering matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR_65=The definition for \
### the attribute type with OID %s declared that substring matching should be \
### performed using the matching rule "%s".  No such substring matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SYNTAX_66=The definition for the \
### attribute type with OID %s declared that it should have a syntax with OID %s. \
### No such syntax is configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE_67=The definition \
### for the attribute type with OID %s declared that it should have an attribute \
### usage of %s.  This is an invalid usage
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_AT_POS_68=The provided value \
### "%s" could not be parsed as an attribute type description because a single \
### quote was expected at position %d but the character %s was found instead
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE_69=\ube44\uc5b4 \uc788\uac70\ub098 \uacf5\ubc31\ub9cc \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c \uac1d\uccb4 \ud074\ub798\uc2a4 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS_70=\uc704\uce58 %2$d\uc5d0 \uc5ec\ub294 \uad04\ud638\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 '%3$s' \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac1d\uccb4 \ud074\ub798\uc2a4 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_TRUNCATED_VALUE_71=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0 \ucd94\uac00 \ub370\uc774\ud130\ub97c \uc81c\uacf5\ud574\uc57c \ud558\ub294\ub370 \uac12\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uac1d\uccb4 \ud074\ub798\uc2a4 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_DOUBLE_PERIOD_IN_NUMERIC_OID_72=\uc22b\uc790 OID\uc758 \uc704\uce58 %2$d\uc5d0 \ub9c8\uce68\ud45c\uac00 \ub450 \uac1c \uc5f0\uc18d\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac1d\uccb4 \ud074\ub798\uc2a4 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_NUMERIC_OID_73=\uc22b\uc790 OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac1d\uccb4 \ud074\ub798\uc2a4 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_STRING_OID_74=\uc22b\uc790\uac00 \uc544\ub2cc OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac1d\uccb4 \ud074\ub798\uc2a4 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_75=\uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac1d\uccb4 \ud074\ub798\uc2a4 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_UNEXPECTED_CLOSE_PARENTHESIS_76=\uc704\uce58 %2$d\uc5d0 \uc608\uae30\uce58 \uc54a\uc740 \ub2eb\ub294 \uad04\ud638\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac1d\uccb4 \ud074\ub798\uc2a4 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_77=\ud1a0\ud070 %2$s \ub4a4\uc758 \uacf5\ubc31\uc774 \uc544\ub2cc \uccab \ubc88\uc9f8 \ubb38\uc790\ub85c \uc791\uc740 \ub530\uc634\ud45c\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 %3$s \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac1d\uccb4 \ud074\ub798\uc2a4 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS_78=The definition \
### for the objectclass with OID %s declared a superior objectclass with an OID \
### of %s.  No objectclass with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_AT_POS_79=The provided \
### value "%s" could not be parsed as an objectclass description because a single \
### quote was expected at position %d but the character %s was found instead
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR_80=The definition \
### for the objectclass with OID %s declared that it should include required \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR_81=The definition \
### for the objectclass with OID %s declared that it should include optional \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER_82=The provided value "%s" \
### cannot be parsed as a valid IA5 string because it contains an illegal \
### character "%s" that is not allowed in the IA5 (ASCII) character set
INFO_ATTR_SYNTAX_TELEPHONE_DESCRIPTION_STRICT_MODE_83=\uc774\ub294 \uc804\ud654 \ubc88\ud638 \uc18d\uc131 \uad6c\ubb38\uc5d0\uc11c ITU-T E.123 \ud615\uc2dd\uc758 \uac12\ub9cc \ud5c8\uc6a9\ud558\ub294 \uc5c4\uaca9\ud55c \ubaa8\ub4dc\ub97c \uc0ac\uc6a9\ud560\uc9c0 \uc5ec\ubd80\ub97c \ub098\ud0c0\ub0c5\ub2c8\ub2e4.  \uc774 \ubaa8\ub4dc\ub97c \ud65c\uc131\ud654\ud558\uba74 \uc774 \ud615\uc2dd\uc5d0 \uc5c6\ub294 \uac12\uc740 \ubaa8\ub450 \uac70\ubd80\ub429\ub2c8\ub2e4.  \uc774 \ubaa8\ub4dc\ub97c \ube44\ud65c\uc131\ud654\ud558\uba74 \ubaa8\ub4e0 \uac12\uc774 \ud5c8\uc6a9\ub418\uc9c0\ub9cc \uc77c\uce58\ub97c \uc218\ud589\ud560 \ub54c \uc22b\uc790\ub9cc \uace0\ub824\ud569\ub2c8\ub2e4.
###SEVERE_WARN_ATTR_SYNTAX_TELEPHONE_CANNOT_DETERMINE_STRICT_MODE_84=An error \
### occurred while trying to retrieve attribute \
### ds-cfg-strict-format from configuration entry %s:  %s.  The \
### Directory Server will not enforce strict compliance to the ITU-T E.123 format \
### for telephone number values
MILD_ERR_ATTR_SYNTAX_TELEPHONE_EMPTY_85=\ube44\uc5b4 \uc788\uac70\ub098 null\uc774\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc740 \uc720\ud6a8\ud55c \uc804\ud654 \ubc88\ud638\uac00 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_PLUS_86=\uc5c4\uaca9\ud55c \uc804\ud654 \ubc88\ud638 \ud655\uc778\uc774 \ud65c\uc131\ud654\ub418\uc5b4 \uc788\uace0 \uac12\uc774 ITU-T E.123 \uc0ac\uc591\uc5d0 \ub9de\uac8c \ub354\ud558\uae30 \uae30\ud638\ub85c \uc2dc\uc791\ud558\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc740(\ub294) \uc720\ud6a8\ud55c \uc804\ud654 \ubc88\ud638\uac00 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELEPHONE_ILLEGAL_CHAR_87=\uc5c4\uaca9\ud55c \uc804\ud654 \ubc88\ud638 \ud655\uc778\uc774 \ud65c\uc131\ud654\ub418\uc5b4 \uc788\uace0 \uc704\uce58 %3$d\uc5d0 \uc788\ub294 \ubb38\uc790 %2$s\uc774(\uac00) ITU-T E.123 \uc0ac\uc591\uc5d0 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc740(\ub294) \uc720\ud6a8\ud55c \uc804\ud654 \ubc88\ud638\uac00 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_DIGITS_88=\uc22b\uc790\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc740(\ub294) \uc720\ud6a8\ud55c \uc804\ud654 \ubc88\ud638\uac00 \uc544\ub2d9\ub2c8\ub2e4.
INFO_ATTR_SYNTAX_TELEPHONE_UPDATED_STRICT_MODE_89=\uad6c\uc131 \ud56d\ubaa9 %2$s\uc5d0\uc11c \uc5c4\uaca9\ud55c \uc804\ud654 \ubc88\ud638 \uad6c\ubb38 \ud655\uc778\uc744 \uc0ac\uc6a9\ud560\uc9c0 \uc5ec\ubd80\ub97c \ub098\ud0c0\ub0b4\ub294 ds-cfg-strict-format \uad6c\uc131 \uc18d\uc131 \uac12\uc774 %1$s(\uc73c)\ub85c \uc5c5\ub370\uc774\ud2b8\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
###SEVERE_WARN_ATTR_SYNTAX_NUMERIC_STRING_ILLEGAL_CHAR_90=The provided value \
### "%s" is not a valid numeric string because it contained character %s at \
### position %d that was neither a digit nor a space
MILD_ERR_ATTR_SYNTAX_NUMERIC_STRING_EMPTY_VALUE_91=\ubb38\uc790\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc740 \uc720\ud6a8\ud55c \uc22b\uc790 \ubb38\uc790\uc5f4\uc774 \uc544\ub2d9\ub2c8\ub2e4.  \uc22b\uc790 \ubb38\uc790\uc5f4 \uac12\uc740 \ud558\ub098 \uc774\uc0c1\uc758 \uc22b\uc790\ub098 \uacf5\ubc31\uc744 \ud3ec\ud568\ud574\uc57c \ud569\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE_92=\ube44\uc5b4 \uc788\uac70\ub098 \uacf5\ubc31\ub9cc \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_OPEN_PARENTHESIS_93=\uc704\uce58 %2$d\uc5d0 \uc5ec\ub294 \uad04\ud638\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 '%3$s' \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TRUNCATED_VALUE_94=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0 \ucd94\uac00 \ub370\uc774\ud130\ub97c \uc81c\uacf5\ud574\uc57c \ud558\ub294\ub370 \uac12\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_DOUBLE_PERIOD_IN_NUMERIC_OID_95=\uc22b\uc790 OID\uc758 \uc704\uce58 %2$d\uc5d0 \ub9c8\uce68\ud45c\uac00 \ub450 \uac1c \uc5f0\uc18d\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_NUMERIC_OID_96=\uc22b\uc790 OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_STRING_OID_97=\uc22b\uc790\uac00 \uc544\ub2cc OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_UNEXPECTED_CLOSE_PARENTHESIS_98=\uc704\uce58 %2$d\uc5d0 \uc608\uae30\uce58 \uc54a\uc740 \ub2eb\ub294 \uad04\ud638\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_TOKEN_99=\uc704\uce58 %2$d \ub610\ub294 \uadf8 \uadfc\ucc98\uc5d0\uc11c "DESC" \ud1a0\ud070\uc744 \uc77d\ub294 \ub3d9\uc548 \uc608\uae30\uce58 \uc54a\uc740 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4: %3$s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TOKEN_NOT_DESC_100="DESC" \ud1a0\ud070\uc774 \uc788\uc5b4\uc57c \ud558\ub294\ub370 \"%2$s\" \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_VALUE_101=\uc704\uce58 %2$d \ub610\ub294 \uadf8 \uadfc\ucc98\uc5d0\uc11c "DESC" \ud1a0\ud070 \uac12\uc744 \uc77d\ub294 \ub3d9\uc548 \uc608\uae30\uce58 \uc54a\uc740 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4: %3$s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_CLOSE_PARENTHESIS_102=\uc704\uce58 %2$d\uc5d0 \ub2eb\ub294 \uad04\ud638\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 '%3$s' \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_AFTER_CLOSE_103=\uc704\uce58 %3$d\uc758 \ub2eb\ub294 \uad04\ud638 \ub4a4\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
###SEVERE_WARN_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_QUOTE_AT_POS_104=The provided \
### value "%s" could not be parsed as an attribute syntax description because a \
### single quote was expected at position %d but the character %s was found \
### instead
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_EMPTY_VALUE_105=The provided value \
### could not be parsed as a printable string because it was null or empty.  A \
### printable string must contain at least one character
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_ILLEGAL_CHARACTER_106=The provided \
### value "%s" could not be parsed as a printable string because it contained an \
### invalid character %s at position %d
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_ONLY_WILDCARD_107=The provided value "*" \
### could not be parsed as a substring assertion because it consists only of a \
### wildcard character and zero-length substrings are not allowed
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS_108=The provided \
### value "%s" could not be parsed as a substring assertion because it contains \
### consecutive wildcard characters at position %d and zero-length substrings are \
### not allowed
MILD_ERR_ATTR_SYNTAX_UTC_TIME_TOO_SHORT_109=\uc81c\uacf5\ub41c \uac12 %s\uc740(\ub294) \ub108\ubb34 \uc9e7\uc544 \uc720\ud6a8\ud55c UTC \uc2dc\uac04 \uac12\uc774 \ub420 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_YEAR_110=\uc138\uae30 \ub610\ub294 \uc5f0\ub3c4 \uc0ac\uc591\uc5d0 '%2$s' \ubb38\uc790\uac00 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 %1$s\uc740(\ub294) \uc720\ud6a8\ud55c UTC \uc2dc\uac04 \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MONTH_111=%2$s\uc774(\uac00) \uc720\ud6a8\ud55c \uc6d4 \uc0ac\uc591\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 %1$s\uc740(\ub294) \uc720\ud6a8\ud55c UTC \uc2dc\uac04 \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_DAY_112=%2$s\uc774(\uac00) \uc720\ud6a8\ud55c \uc77c \uc0ac\uc591\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 %1$s\uc740(\ub294) \uc720\ud6a8\ud55c UTC \uc2dc\uac04 \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_HOUR_113=%2$s\uc774(\uac00) \uc720\ud6a8\ud55c \uc2dc\uac04 \uc0ac\uc591\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 %1$s\uc740(\ub294) \uc720\ud6a8\ud55c UTC \uc2dc\uac04 \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MINUTE_114=%2$s\uc774(\uac00) \uc720\ud6a8\ud55c \ubd84 \uc0ac\uc591\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 %1$s\uc740(\ub294) \uc720\ud6a8\ud55c UTC \uc2dc\uac04 \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_CHAR_115=\uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 %1$s\uc740(\ub294) \uc720\ud6a8\ud55c UTC \uc2dc\uac04 \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_SECOND_116=%2$s\uc774(\uac00) \uc720\ud6a8\ud55c \ucd08\u00b7\uc0ac\uc591\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 %1$s\uc740(\ub294) \uc720\ud6a8\ud55c UTC \uc2dc\uac04 \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_OFFSET_117=%2$s\uc774(\uac00) \uc720\ud6a8\ud55c GMT \uc624\ud504\uc14b\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 %1$s\uc740(\ub294) \uc720\ud6a8\ud55c UTC \uc2dc\uac04 \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_UTC_TIME_CANNOT_PARSE_118=\uc81c\uacf5\ub41c \uac12 %s\uc744(\ub97c) \uc720\ud6a8\ud55c UTC \uc2dc\uac04\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4: %s
MILD_ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE_119=\ube44\uc5b4 \uc788\uac70\ub098 \uacf5\ubc31\ub9cc \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c DIT \ucee8\ud150\ud2b8 \uaddc\uce59\u00b7\uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS_120=\uc704\uce58 %2$d\uc5d0 \uc5ec\ub294 \uad04\ud638\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 '%3$s' \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_TRUNCATED_VALUE_121=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0 \ucd94\uac00 \ub370\uc774\ud130\ub97c \uc81c\uacf5\ud574\uc57c \ud558\ub294\ub370 \uac12\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_DOUBLE_PERIOD_IN_NUMERIC_OID_122=\uc22b\uc790 OID\uc758 \uc704\uce58 %2$d\uc5d0 \ub9c8\uce68\ud45c\uac00 \ub450 \uac1c \uc5f0\uc18d\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_NUMERIC_OID_123=\uc22b\uc790 OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_STRING_OID_124=\uc22b\uc790\uac00 \uc544\ub2cc OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_UNEXPECTED_CLOSE_PARENTHESIS_125=\uc704\uce58 %2$d\uc5d0 \uc608\uae30\uce58 \uc54a\uc740 \ub2eb\ub294 \uad04\ud638\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_126=\uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS_127=DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \"%s\"\uc774(\uac00) \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uad6c\uc870\uc801 \uac1d\uccb4 \ud074\ub798\uc2a4 %s\uacfc(\uc640) \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL_128=DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \"%s\"\uc774(\uac00) OID\uac00 %s(%s)\uc778 \uac1d\uccb4 \ud074\ub798\uc2a4\uc640 \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.  \uc774 \uac1d\uccb4 \ud074\ub798\uc2a4\ub294 \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc788\uc9c0\ub9cc \uad6c\uc870\uc801\uc774 \uc544\ub2cc %s(\uc73c)\ub85c \uc815\uc758\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS_129=DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \"%s\"\uc774(\uac00) \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc815\uc758\ub418\uc9c0 \uc54a\uc740 \ubcf4\uc870 \uac1d\uccb4 \ud074\ub798\uc2a4 %s\uacfc(\uc640) \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY_130=DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \"%s\"\uc774(\uac00) \ubcf4\uc870 \uac1d\uccb4 \ud074\ub798\uc2a4 %s\uacfc(\uc640) \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uac1d\uccb4 \ud074\ub798\uc2a4\ub294 \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc788\uc9c0\ub9cc \ubcf4\uc870\uac00 \uc544\ub2cc %s(\uc73c)\ub85c \uc815\uc758\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR_131=DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \"%s\"\uc774(\uac00) \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc815\uc758\ub418\uc9c0 \uc54a\uc740 \ud544\uc218 \uc18d\uc131 \uc720\ud615 %s\uacfc(\uc640) \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR_132=DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \"%s\"\uc774(\uac00) \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uc120\ud0dd \uc18d\uc131 \uc720\ud615 %s\uacfc(\uc640) \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR_133=DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \"%s\"\uc774(\uac00) \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uae08\uc9c0\ub41c \uc18d\uc131 \uc720\ud615 %s\uacfc(\uc640) \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_QUOTE_AT_POS_134=\uc704\uce58 %2$d\uc5d0 \uc791\uc740 \ub530\uc634\ud45c\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 %3$s \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE_135=\ube44\uc5b4 \uc788\uac70\ub098 \uacf5\ubc31\ub9cc \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c \uc774\ub984 \ud615\uc2dd \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_OPEN_PARENTHESIS_136=\uc704\uce58 %2$d\uc5d0 \uc5ec\ub294 \uad04\ud638\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 '%3$c' \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc774\ub984 \ud615\uc2dd \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_TRUNCATED_VALUE_137=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0 \ucd94\uac00 \ub370\uc774\ud130\ub97c \uc81c\uacf5\ud574\uc57c \ud558\ub294\ub370 \uac12\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc774\ub984 \ud615\uc2dd \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_DOUBLE_PERIOD_IN_NUMERIC_OID_138=\uc22b\uc790 OID\uc758 \uc704\uce58 %2$d\uc5d0 \ub9c8\uce68\ud45c\uac00 \ub450 \uac1c \uc5f0\uc18d\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc774\ub984 \ud615\uc2dd \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_NUMERIC_OID_139=\uc22b\uc790 OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$c\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc774\ub984 \ud615\uc2dd \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_STRING_OID_140=\uc22b\uc790\uac00 \uc544\ub2cc OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$c\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc774\ub984 \ud615\uc2dd \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNEXPECTED_CLOSE_PARENTHESIS_141=\uc704\uce58 %2$d\uc5d0 \uc608\uae30\uce58 \uc54a\uc740 \ub2eb\ub294 \uad04\ud638\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc774\ub984 \ud615\uc2dd \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_142=\uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$c\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc774\ub984 \ud615\uc2dd \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS_143=\uc774\ub984 \ud615\uc2dd \uc124\uba85 \"%s\"\uc774(\uac00) \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uad6c\uc870\uc801 \uac1d\uccb4 \ud074\ub798\uc2a4 %s\uacfc(\uc640) \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL_144=\uc774\ub984 \ud615\uc2dd \uc124\uba85 \"%s\"\uc774(\uac00) OID\uac00 %s(%s)\uc778 \uac1d\uccb4 \ud074\ub798\uc2a4\uc640 \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uac1d\uccb4 \ud074\ub798\uc2a4\ub294 \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc788\uc9c0\ub9cc \uad6c\uc870\uc801\uc774 \uc544\ub2cc %s(\uc73c)\ub85c \uc815\uc758\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR_145=OID\uac00 %s\uc778 \uc774\ub984 \ud615\uc2dd\uc5d0 \ub300\ud55c \uc815\uc758\uc5d0\uc11c \ud544\uc218 \uc18d\uc131 \"%s\"\uc744(\ub97c) \ud3ec\ud568\ud574\uc57c \ud55c\ub2e4\uace0 \uc120\uc5b8\ud588\uc2b5\ub2c8\ub2e4.  \uc774 \uc774\ub984 \ub610\ub294 OID\uc640 \uc77c\uce58\ud558\ub294 \uc18d\uc131 \uc720\ud615\uc774 \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc5c6\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR_146=OID\uac00 %s\uc778 \uc774\ub984 \ud615\uc2dd\uc5d0 \ub300\ud55c \uc815\uc758\uc5d0\uc11c \uc120\ud0dd \uc18d\uc131 \"%s\"\uc744(\ub97c) \ud3ec\ud568\ud574\uc57c \ud55c\ub2e4\uace0 \uc120\uc5b8\ud588\uc2b5\ub2c8\ub2e4.  \uc774 \uc774\ub984 \ub610\ub294 OID\uc640 \uc77c\uce58\ud558\ub294 \uc18d\uc131 \uc720\ud615\uc774 \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc5c6\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS_147=\uc5f0\uacb0\ub418\ub294 \uad6c\uc870\uc801 \uac1d\uccb4 \ud074\ub798\uc2a4\ub97c \uc9c0\uc815\ud558\uc9c0 \uc54a\uc558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc774\ub984 \ud615\uc2dd \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_QUOTE_AT_POS_148=\uc704\uce58 %2$d\uc5d0 \uc791\uc740 \ub530\uc634\ud45c\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 %3$c \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc774\ub984 \ud615\uc2dd \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_EMPTY_VALUE_149=\ube44\uc5b4 \uc788\uac70\ub098 \uacf5\ubc31\ub9cc \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_OPEN_PARENTHESIS_150=\uc704\uce58 %2$d\uc5d0 \uc5ec\ub294 \uad04\ud638\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 '%3$s' \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_TRUNCATED_VALUE_151=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0 \ucd94\uac00 \ub370\uc774\ud130\ub97c \uc81c\uacf5\ud574\uc57c \ud558\ub294\ub370 \uac12\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_DOUBLE_PERIOD_IN_NUMERIC_OID_152=\uc22b\uc790 OID\uc758 \uc704\uce58 %2$d\uc5d0 \ub9c8\uce68\ud45c\uac00 \ub450\uac1c \uc5f0\uc18d\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_NUMERIC_OID_153=\uc22b\uc790 OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_STRING_OID_154=\uc22b\uc790\uac00 \uc544\ub2cc OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_UNEXPECTED_CLOSE_PARENTHESIS_155=\uc704\uce58 %2$d\uc5d0 \uc608\uae30\uce58 \uc54a\uc740 \ub2eb\ub294 \uad04\ud638\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_156=\uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX_157=\uc77c\uce58 \uaddc\uce59 \uc124\uba85 \"%s\"\uc774(\uac00) \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uc18d\uc131 \uad6c\ubb38 %s\uacfc(\uc640) \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_NO_SYNTAX_158=\uc5f0\uacb0\ub418\ub294 \uc18d\uc131 \uad6c\ubb38\uc744 \uc9c0\uc815\ud558\uc9c0 \uc54a\uc558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_QUOTE_AT_POS_159=\uc704\uce58 %2$d\uc5d0 \uc791\uc740 \ub530\uc634\ud45c\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 %3$s \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE_160=\ube44\uc5b4 \uc788\uac70\ub098 \uacf5\ubc31\ub9cc \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c \uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_OPEN_PARENTHESIS_161=\uc704\uce58 %2$d\uc5d0 \uc5ec\ub294 \uad04\ud638\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 '%3$s' \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_TRUNCATED_VALUE_162=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0 \ucd94\uac00 \ub370\uc774\ud130\ub97c \uc81c\uacf5\ud574\uc57c \ud558\ub294\ub370 \uac12\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_DOUBLE_PERIOD_IN_NUMERIC_OID_163=\uc22b\uc790 OID\uc758 \uc704\uce58 %2$d\uc5d0 \ub9c8\uce68\ud45c\uac00 \ub450\uac1c \uc5f0\uc18d\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_NUMERIC_OID_164=\uc22b\uc790 OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_STRING_OID_165=\uc22b\uc790\uac00 \uc544\ub2cc OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE_166=\uc9c0\uc815\ub41c \uc77c\uce58 \uaddc\uce59 %2$s\uc744(\ub97c) \uc54c \uc218 \uc5c6\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_UNEXPECTED_CLOSE_PARENTHESIS_167=\uc704\uce58 %2$d\uc5d0 \uc608\uae30\uce58 \uc54a\uc740 \ub2eb\ub294 \uad04\ud638\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_168=\uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR_169=\uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85 \"%s\"\uc774(\uac00) \uc11c\ubc84 \uc2a4\ud0a4\ub9c8\uc5d0 \uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uc18d\uc131 \uc720\ud615 %s\uacfc(\uc640) \uc5f0\uacb0\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_NO_ATTR_170=\uc5f0\uacb0\ub41c OID\uc5d0\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \uc18d\uc131 \uc720\ud615 \uc9d1\ud569\uc744 \uc9c0\uc815\ud558\uc9c0 \uc54a\uc558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_QUOTE_AT_POS_171=\uc704\uce58 %2$d\uc5d0 \uc791\uc740 \ub530\uc634\ud45c\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 %3$s \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc77c\uce58 \uaddc\uce59 \uc0ac\uc6a9 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE_172=\ube44\uc5b4 \uc788\uac70\ub098 \uacf5\ubc31\ub9cc \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c DIT \uad6c\uc870 \uaddc\uce59\u00b7\uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS_173=\uc704\uce58 %2$d\uc5d0 \uc5ec\ub294 \uad04\ud638\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 '%3$s' \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_TRUNCATED_VALUE_174=\ub514\ub809\ud1a0\ub9ac \uc11c\ubc84\uc5d0 \ucd94\uac00 \ub370\uc774\ud130\ub97c \uc81c\uacf5\ud574\uc57c \ud558\ub294\ub370 \uac12\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_RULE_ID_175=\uc704\uce58 %3$d\uc5d0\uc11c \uaddc\uce59 \uc544\uc774\ub514\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_UNEXPECTED_CLOSE_PARENTHESIS_176=\uc704\uce58 %2$d\uc5d0 \uc608\uae30\uce58 \uc54a\uc740 \ub2eb\ub294 \uad04\ud638\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_177=\uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_NAME_FORM_178=\uc54c \uc218 \uc5c6\ub294 \uc774\ub984 \ud615\uc2dd %2$s\uc744(\ub97c) \ucc38\uc870\ud558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_RULE_ID_179=\uc0c1\uc704 DIT \uad6c\uc870 \uaddc\uce59\uc5d0 \ub300\ud574 \uc54c \uc218 \uc5c6\ub294 \uaddc\uce59 \uc544\uc774\ub514 %2$d\uc744(\ub97c) \ucc38\uc870\ud558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_NO_NAME_FORM_180=\uaddc\uce59\uc758 \uc774\ub984 \ud615\uc2dd\uc744 \uc9c0\uc815\ud558\uc9c0 \uc54a\uc558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_QUOTE_AT_POS_181=\uc704\uce58 %2$d\uc5d0 \uc791\uc740 \ub530\uc634\ud45c\uac00 \uc788\uc5b4\uc57c \ud558\ub294\ub370 %3$s \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_DOUBLE_PERIOD_IN_NUMERIC_OID_182=\uc22b\uc790 OID\uc758 \uc704\uce58 %2$d\uc5d0 \ub9c8\uce68\ud45c\uac00 \ub450\uac1c \uc5f0\uc18d\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_NUMERIC_OID_183=\uc22b\uc790 OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_STRING_OID_184=\uc22b\uc790\uac00 \uc544\ub2cc OID\uc758 \uc704\uce58 %3$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) DIT \uad6c\uc870 \uaddc\uce59 \uc124\uba85\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELEX_TOO_SHORT_185=\uc81c\uacf5\ub41c \uac12 "\%s\"\uc740(\ub294) \ub108\ubb34 \uc9e7\uc544 \uc720\ud6a8\ud55c \ud154\ub809\uc2a4 \ubc88\ud638 \uac12\uc774 \ub420 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELEX_NOT_PRINTABLE_186=\uc704\uce58 %3$d\uc5d0 \uc788\ub294 \ubb38\uc790 %2$s\uc774(\uac00) \uc778\uc1c4\ud560 \uc218 \uc788\ub294 \uc720\ud6a8\ud55c \ubb38\uc790\uc5f4\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc740(\ub294) \uc720\ud6a8\ud55c \ud154\ub809\uc2a4 \ubc88\ud638\ub97c \ud3ec\ud568\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELEX_ILLEGAL_CHAR_187=\uc704\uce58 %3$d\uc5d0 \uc788\ub294 \ubb38\uc790 %2$s\uc774(\uac00) \uc778\uc1c4\ud560 \uc218 \uc788\ub294 \uc720\ud6a8\ud55c \ubb38\uc790\uc5f4\ub3c4 \uc544\ub2c8\uace0 \ud154\ub809\uc2a4 \ubc88\ud638 \uad6c\uc131\uc694\uc18c\ub97c \uad6c\ubd84\ud558\ub294 \ub2ec\ub7ec \uae30\ud638\ub3c4 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc740(\ub294) \uc720\ud6a8\ud55c \ud154\ub809\uc2a4 \ubc88\ud638\ub97c \ud3ec\ud568\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELEX_TRUNCATED_188=\ub2ec\ub7ec\ub85c \uad6c\ubd84\ub41c \uc138 \uac1c\uc758 \uc778\uc1c4\ud560 \uc218 \uc788\ub294 \ubb38\uc790\uc5f4\uc744 \uc77d\uae30 \uc804\uc5d0 \uac12\uc758 \ub05d\uc5d0 \ub3c4\ub2ec\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc740(\ub294) \uc720\ud6a8\ud55c \ud154\ub809\uc2a4 \ubc88\ud638\ub97c \ud3ec\ud568\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_EMPTY_189=\ube44\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c \ud329\uc2a4 \ubc88\ud638\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_NOT_PRINTABLE_190=\uc704\uce58 %3$d\uc5d0 \uc788\ub294 \ubb38\uc790 %2$s\uc774(\uac00) \uc778\uc1c4\ud560 \uc218 \uc788\ub294 \uc720\ud6a8\ud55c \ubb38\uc790\uc5f4\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \ud329\uc2a4 \ubc88\ud638\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_END_WITH_DOLLAR_191=\ub2ec\ub7ec \uae30\ud638\ub85c \ub05d\ub098\uc9c0\ub9cc \ub2ec\ub7ec \uae30\ud638 \ub4a4\uc5d0 \ud329\uc2a4 \ub9e4\uac1c \ubcc0\uc218\uac00 \uc640\uc57c \ud558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \ud329\uc2a4 \ubc88\ud638\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_ILLEGAL_PARAMETER_192=\uc704\uce58 %3$d \ubc0f %4$d \uc0ac\uc774\uc5d0 \uc788\ub294 \ubb38\uc790\uc5f4 \"%2$s\"\uc774(\uac00) \uc720\ud6a8\ud55c \ud329\uc2a4 \ub9e4\uac1c \ubcc0\uc218\uac00 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \ud329\uc2a4 \ubc88\ud638\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_INVALID_DN_193=DN \ubd80\ubd84\uc744 \uad6c\ubb38 \ubd84\uc11d\ud558\ub294 \ub3d9\uc548 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uc774\ub984 \ubc0f \uc120\ud0dd\uc801 UID \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4: %s
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_ILLEGAL_BINARY_DIGIT_194=\uc704\uce58 %3$d\uc5d0\uc11c UID \ubd80\ubd84\uc5d0 \uc798\ubabb\ub41c \uc774\uc9c4 \uc22b\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 "%s"\uc744(\ub97c) \uc720\ud6a8\ud55c \uc774\ub984 \ubc0f \uc120\ud0dd\uc801 UID \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELETEXID_EMPTY_195=\ube44\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \uc720\ud6a8\ud55c \ud154\ub809\uc2a4 \ud130\ubbf8\ub110 \uc2dd\ubcc4\uc790\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELETEXID_NOT_PRINTABLE_196=\uc704\uce58 %3$d\uc5d0 \uc788\ub294 \ubb38\uc790 %2$s\uc774(\uac00) \uc778\uc1c4\ud560 \uc218 \uc788\ub294 \uc720\ud6a8\ud55c \ubb38\uc790\uc5f4\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \ud154\ub809\uc2a4 \ud130\ubbf8\ub110 \uc2dd\ubcc4\uc790\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELETEXID_END_WITH_DOLLAR_197=\ub2ec\ub7ec \uae30\ud638\ub85c \ub05d\ub098\uc9c0\ub9cc \ud574\ub2f9 \ub2ec\ub7ec \uae30\ud638 \ub4a4\uc5d0 TTX \ub9e4\uac1c \ubcc0\uc218\uac00 \uc640\uc57c \ud558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \ud154\ub809\uc2a4 \ud130\ubbf8\ub110 \uc2dd\ubcc4\uc790\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4
MILD_ERR_ATTR_SYNTAX_TELETEXID_PARAM_NO_COLON_198=\ub9e4\uac1c \ubcc0\uc218 \ubb38\uc790\uc5f4\uc5d0 \uc774\ub984\uacfc \uac12\uc744 \uad6c\ubd84\ud558\ub294 \ucf5c\ub860\uc774 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \ud154\ub809\uc2a4 \ud130\ubbf8\ub110 \uc2dd\ubcc4\uc790\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_TELETEXID_ILLEGAL_PARAMETER_199=\ubb38\uc790\uc5f4 \"%2$s\"\uc774(\uac00) \uc720\ud6a8\ud55c TTX \ub9e4\uac1c \ubcc0\uc218 \uc774\ub984\uc774 \uc544\ub2c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \ud154\ub809\uc2a4 \ud130\ubbf8\ub110 \uc2dd\ubcc4\uc790\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_EMPTY_VALUE_200=\ube44\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12\uc744 \ub2e4\ub978 \uba54\uc77c\ud568 \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MBTYPE_201=\ub2ec\ub7ec \uae30\ud638 \uc55e\uc5d0 \uba54\uc77c\ud568 \uc720\ud615\uc774 \uc5c6\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \ub2e4\ub978 \uba54\uc77c\ud568 \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MBTYPE_CHAR_202=\uc704\uce58 %3$d\uc5d0\uc11c \uba54\uc77c\ud568 \uc720\ud615\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \ub2e4\ub978 \uba54\uc77c\ud568 \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MAILBOX_203=\ub2ec\ub7ec \uae30\ud638 \ub4a4\uc5d0 \uba54\uc77c\ud568\uc774 \uc5c6\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \ub2e4\ub978 \uba54\uc77c\ud568 \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MB_CHAR_204=\uc704\uce58 %3$d\uc5d0\uc11c \uba54\uc77c\ud568\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \ub2e4\ub978 \uba54\uc77c\ud568 \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_OC_205=# \ubb38\uc790 \uc55e\uc5d0 \uac1d\uccb4 \ud074\ub798\uc2a4 \uc774\ub984 \ub610\ub294 OID\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_GUIDE_ILLEGAL_CHAR_206=\uc704\uce58 %4$d\uc5d0\uc11c \uae30\uc900 \ubd80\ubd84 %2$s\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %2$c\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_GUIDE_MISSING_CLOSE_PAREN_207=\uae30\uc900 \ubd80\ubd84 %2$s\uc5d0 \uccab \ubc88\uc9f8 \uc5ec\ub294 \uad04\ud638\uc5d0 \ud574\ub2f9\ud558\ub294 \ub2eb\ub294 \uad04\ud638\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_QUESTION_MARK_208=\uae30\uc900 \ubd80\ubd84 %2$s\uc774(\uac00) \ubb3c\uc74c\ud45c\ub85c \uc2dc\uc791\ub418\ub294\ub370 \ub4a4\uc5d0 \ubb38\uc790\uc5f4 "true" \ub610\ub294 "false"\uac00 \uc5c6\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_DOLLAR_209=\uae30\uc900 \ubd80\ubd84 %2$s\uc774(\uac00) \uc18d\uc131 \uc720\ud615\uacfc \uc77c\uce58 \uc720\ud615\uc744 \uad6c\ubd84\ud558\ub294 \ub2ec\ub7ec \uae30\ud638\ub97c \ud3ec\ud568\ud558\uace0 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_ATTR_210=\uae30\uc900 \ubd80\ubd84 %2$s\uc774(\uac00) \ub2ec\ub7ec \uae30\ud638 \uc55e\uc5d0 \uc18d\uc131 \uc720\ud615\uc744 \uc9c0\uc815\ud558\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_MATCH_TYPE_211=\uae30\uc900 \ubd80\ubd84 %2$s\uc774(\uac00) \ub2ec\ub7ec \uae30\ud638 \ub4a4\uc5d0 \uc77c\uce58 \uc720\ud615\uc744 \uc9c0\uc815\ud558\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_MATCH_TYPE_212=\uae30\uc900 \ubd80\ubd84 %2$s\uc5d0 \uc704\uce58 %3$d\uc5d0\uc11c \uc2dc\uc791\ub418\ub294 \uc798\ubabb\ub41c \uc77c\uce58 \uc720\ud615\uc774 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP_213=\uac1d\uccb4 \ud074\ub798\uc2a4\uc640 \uae30\uc900\uc744 \uad6c\ubd84\ud558\ub294 # \ubb38\uc790\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \ud5a5\uc0c1\ub41c \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC_214=# \ubb38\uc790 \uc55e\uc5d0 \uac1d\uccb4 \ud074\ub798\uc2a4 \uc774\ub984 \ub610\ub294 OID\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \ud5a5\uc0c1\ub41c \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_DOUBLE_PERIOD_IN_OC_OID_215=\uc704\uce58 %3$d\uc5d0\uc11c \uac1d\uccb4 \ud074\ub798\uc2a4\ub97c \uc9c0\uc815\ud558\ub294 \uc22b\uc790 OID %2$s\uc5d0 \ub9c8\uce68\ud45c\uac00 \ub450 \uac1c \uc5f0\uc18d\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \ud5a5\uc0c1\ub41c \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_OID_216=\uc704\uce58 %4$d\uc5d0\uc11c \uac1d\uccb4 \ud074\ub798\uc2a4\ub97c \uc9c0\uc815\ud558\ub294 \uc22b\uc790 OID %2$s\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %3$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \ud5a5\uc0c1\ub41c \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_NAME_217=\uc704\uce58 %4$d\uc5d0\uc11c \uac1d\uccb4 \ud074\ub798\uc2a4 \uc774\ub984 %2$s\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790 %3$s\uc774(\uac00) \ud3ec\ud568\ub418\uc5b4 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \ud5a5\uc0c1\ub41c \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_FINAL_SHARP_218=\uae30\uc900\uacfc \ubc94\uc704\ub97c \uad6c\ubd84\ud558\ub294 # \ubb38\uc790\uac00 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \ud5a5\uc0c1\ub41c \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SCOPE_219=\ub9c8\uc9c0\ub9c9 # \ubb38\uc790 \ub4a4\uc5d0 \ubc94\uc704\uac00 \uc81c\uacf5\ub418\uc5b4 \uc788\uc9c0 \uc54a\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \ud5a5\uc0c1\ub41c \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_INVALID_SCOPE_220=\uc9c0\uc815\ub41c \ubc94\uc704 %2$s\uc774(\uac00) \uc798\ubabb\ub418\uc5c8\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \ud5a5\uc0c1\ub41c \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_CRITERIA_221=# \ubb38\uc790 \uc0ac\uc774\uc5d0 \uae30\uc900\uc744 \uc9c0\uc815\ud558\uc9c0 \uc54a\uc558\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \ud5a5\uc0c1\ub41c \uac00\uc774\ub4dc \uac12\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_OID_INVALID_VALUE_222=\uc81c\uacf5\ub41c \uac12 %s\uc744(\ub97c) \uc720\ud6a8\ud55c OID\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4: %s
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NORMALIZE_FAILURE_223=An unexpected \
### error occurred while trying to normalize value %s as a generalized time \
### value:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_CANNOT_NORMALIZE_224=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseExactOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_INVALID_TYPE_225=An error occurred while \
### attempting to compare two objects using the caseExactOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_CANNOT_NORMALIZE_226=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseIgnoreOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_INVALID_TYPE_227=An error occurred while \
### attempting to compare two objects using the caseIgnoreOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_CANNOT_NORMALIZE_228=An error \
### occurred while attempting to compare two AttributeValue objects using the \
### generalizedTimeOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_INVALID_TYPE_229=An error occurred \
### while attempting to compare two objects using the \
### generalizedTimeOrderingMatch matching rule because the objects were of an \
### unsupported type %s.  Only byte arrays, ASN.1 octet strings, and attribute \
### value objects may be compared
###SEVERE_WARN_OMR_INTEGER_COMPARE_CANNOT_NORMALIZE_230=An error occurred while \
### attempting to compare two AttributeValue objects using the \
### integerOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_INTEGER_COMPARE_INVALID_TYPE_231=An error occurred while \
### attempting to compare two objects using the integerOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_CANNOT_NORMALIZE_232=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### numericStringOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_INVALID_TYPE_233=An error occurred \
### while attempting to compare two objects using the numericStringOrderingMatch \
### matching rule because the objects were of an unsupported type %s.  Only byte \
### arrays, ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_CANNOT_NORMALIZE_234=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### octetStringOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_INVALID_TYPE_235=An error occurred while \
### attempting to compare two objects using the octetStringOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH_236=The provided value "%s" has \
### an invalid length for a UUID.  All UUID values must have a length of exactly \
### 36 bytes, but the provided value had a length of %d bytes
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH_237=The provided value "%s" should \
### have had a dash at position %d, but the character '%s' was found instead
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX_238=The provided value "%s" should \
### have had a hexadecimal digit at position %d, but the character '%s' was found \
### instead
INFO_ATTR_SYNTAX_DIRECTORYSTRING_DESCRIPTION_ALLOW_ZEROLENGTH_239=\ub514\ub809\ud1a0\ub9ac \ubb38\uc790\uc5f4 \uad6c\ubb38\uc774 \uc788\ub294 \uc18d\uc131\uc5d0 \uae38\uc774\uac00 0\uc778 \uac12\uc744 \ud3ec\ud568\ud560 \uc218 \uc788\ub294\uc9c0 \uc5ec\ubd80\ub97c \ub098\ud0c0\ub0c5\ub2c8\ub2e4.  \uc774 \uae30\ub2a5\uc740 LDAP \uc0ac\uc591\uc5d0\uc11c \uae30\uc220\uc801\uc73c\ub85c \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc9c0\ub9cc \uc774\uc804 \ub514\ub809\ud1a0\ub9ac \uc11c\ubc84 \ub9b4\ub9ac\uc2a4\uc640\uc758 \uc5ed\ud638\ud658\uc131\uc5d0 \uc720\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_CANNOT_DETERMINE_ZEROLENGTH_240=An \
### error occurred while trying to determine the value of the %s configuration \
### attribute, which indicates whether directory string attributes should be \
### allowed to have zero-length values:  %s
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_INVALID_ZEROLENGTH_VALUE_241=The \
### operation attempted to assign a zero-length value to an attribute with the \
### directory string syntax
INFO_ATTR_SYNTAX_DIRECTORYSTRING_UPDATED_ALLOW_ZEROLENGTH_242=\uad6c\uc131 \ud56d\ubaa9 %2$s\uc758 %1$s \uc18d\uc131\uc774 \uc0c8 \uac12 %3$s(\uc73c)\ub85c \uc5c5\ub370\uc774\ud2b8\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_SCHEME_CHAR_243=The provided \
### authPassword value had an invalid scheme character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_244=The provided authPassword value \
### had a zero-length scheme element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_SEPARATOR_245=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the scheme and authInfo elements
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_INFO_CHAR_246=The provided \
### authPassword value had an invalid authInfo character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_247=The provided authPassword \
### value had a zero-length authInfo element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_SEPARATOR_248=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the authInfo and authValue elements
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_INITIAL_PARENTHESIS_249=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### it did not start with a parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_NONSPACE_250=The provided value "%s" could not \
### be parsed by the integer first component matching rule because it did not \
### have any non-space characters after the opening parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_SPACE_AFTER_INT_251=The provided value "%s" \
### could not be parsed by the integer first component matching rule because it \
### did not have any space characters after the first component
###SEVERE_ERR_EMR_INTFIRSTCOMP_FIRST_COMPONENT_NOT_INT_252=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### the first component does not appear to be an integer value
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_VALUE_253=No value was given to decode by \
### the user password attribute syntax
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_OPENING_BRACE_254=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not start with the opening curly brace ("{") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_CLOSING_BRACE_255=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not contain a closing curly brace ("}") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_SCHEME_256=Unable to decode the provided \
### value according to the user password syntax because the value does not \
### contain a storage scheme name
MILD_ERR_ATTR_SYNTAX_RFC3672_SUBTREE_SPECIFICATION_INVALID_257=\uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c RFC 3672 \ud558\uc704 \ud2b8\ub9ac \uc0ac\uc591\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ABSOLUTE_SUBTREE_SPECIFICATION_INVALID_258=\uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uc808\ub300 \ud558\uc704 \ud2b8\ub9ac \uc0ac\uc591\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_RELATIVE_SUBTREE_SPECIFICATION_INVALID_259=\uc81c\uacf5\ub41c \uac12 \"%s\"\uc744(\ub97c) \uc720\ud6a8\ud55c \uc0c1\ub300 \ud558\uc704 \ud2b8\ub9ac \uc0ac\uc591\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_INTEGER_260=The provided value %s is not \
### allowed for attributes with a Integer syntax
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_VALUE_CHAR_261=The provided \
### authPassword value had an invalid authValue character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_VALUE_262=The provided authPassword \
### value had a zero-length authValue element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_TRAILING_CHAR_263=The provided \
### authPassword value had an invalid trailing character at position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXTENSION_INVALID_CHARACTER_264=\uc704\uce58 %2$d\uc5d0 \uc798\ubabb\ub41c \ubb38\uc790\uac00 \uc788\uae30 \ub54c\ubb38\uc5d0 \uc81c\uacf5\ub41c \uac12 \"%1$s\"\uc744(\ub97c) \uc18d\uc131 \uad6c\ubb38 \ud655\uc7a5\uc73c\ub85c \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_INVALID_EXTENSION_265=\uc798\ubabb\ub41c \ud655\uc7a5 \ub54c\ubb38\uc5d0 \uc18d\uc131 \uad6c\ubb38\uc744 \uad6c\ubb38 \ubd84\uc11d\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4.%s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE_266=The definition \
### for objectclass %s is invalid because it has an objectclass type of %s but \
### this is incompatible with the objectclass type %s for the superior class %s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP_267=The \
### definition for objectclass %s is invalid because it is defined as a \
### structural class but its superior chain does not include the "top" \
### objectclass
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_SUPERIOR_USAGE_268=The definition \
### for attribute type %s is invalid because its attribute usage %s is not the \
### same as the usage for its superior type %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_FROM_NONCOLLECTIVE_269=The \
### definition for attribute type %s is invalid because it is defined as a \
### collective type but the superior type %s is not collective
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NONCOLLECTIVE_FROM_COLLECTIVE_270=The \
### definition for attribute type %s is invalid because it is not defined as a \
### collective type but the superior type %s is collective
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_STRUCTURAL_271=\uc5f0\uacb0\ub41c \uad6c\uc870\uc801 \uac1d\uccb4 \ud074\ub798\uc2a4 %3$s\uc5d0 \ud544\uc694\ud55c \uc18d\uc131 \uc720\ud615 %2$s \uc0ac\uc6a9\uc744 \uae08\uc9c0\ud558\uae30 \ub54c\ubb38\uc5d0 DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \"%s\"\uc774(\uac00) \uc798\ubabb\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_AUXILIARY_272=\uc5f0\uacb0\ub41c \ubcf4\uc870 \uac1d\uccb4 \ud074\ub798\uc2a4 %3$s\uc5d0 \ud544\uc694\ud55c \uc18d\uc131 \uc720\ud615 %2$s \uc0ac\uc6a9\uc744 \uae08\uc9c0\ud558\uae30 \ub54c\ubb38\uc5d0 DIT \ucee8\ud150\ud2b8 \uaddc\uce59 \"%s\"\uc774(\uac00) \uc798\ubabb\ub418\uc5c8\uc2b5\ub2c8\ub2e4.
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_IS_OPERATIONAL_273=The definition \
### for attribute type %s is invalid because it is declared COLLECTIVE but does \
### not have a usage of userApplications
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NO_USER_MOD_NOT_OPERATIONAL_274=The \
### definition for attribute type %s is invalid because it is declared \
### NO-USER-MODIFICATION but does not have an operational usage
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_FRACTION_CHAR_275=The \
### provided value %s is not a valid generalized time value because it contains \
### illegal character %s in the fraction component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_EMPTY_FRACTION_276=The provided \
### value %s is not a valid generalized time value because it does not contain at \
### least one digit after the period to use as the fractional component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NO_TIME_ZONE_INFO_277=The provided \
### value %s is not a valid generalized time value because it does not end with \
### 'Z' or a time zone offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_TIME_278=The provided value \
### %s is not a valid generalized time value because it represents an invalid \
### time (e.g., a date that does not exist):  %s
NOTICE_SCHEMA_IMPORT_FAILED_279=\uc2a4\ud0a4\ub9c8 \uc694\uc18c\ub97c \uac00\uc838\uc624\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4: %s, %s
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_LOCALE_280=The collation rule %s under matching rule entry %s is invalid as the locale %s is not supported by JVM
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_FORMAT_281=The provided collation rule %s does not contain a valid format of OID:LOCALE
MILD_ERR_ATTR_SYNTAX_DN_INVALID_REQUIRES_ESCAPE_CHAR_282=The provided value "%s" could not be parsed as a valid distinguished name because an attribute value started with a character at position %d that needs to be escaped
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_CHAR_283=The provided value "%s" could not be parsed as a valid attribute type definition because character '%c' at position %d is not allowed in an attribute type name
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_284=The provided value "%s" could not be parsed as a valid attribute type definition because the underscore character is not allowed in an attribute type name unless the %s configuration option is enabled
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_285=The provided value "%s" could not be parsed as a valid attribute type definition because the hyphen character is not allowed as the first character of an attribute type name
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_286=The provided value "%s" could not be parsed as a valid attribute type definition because the underscore character is not allowed as the first character of an attribute type name even if the %s configuration option is enabled
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_287=The provided value "%s" could not be parsed as a valid attribute type definition because the digit '%c' is not allowed as the first character of an attribute type name unless the name is specified as an OID or the %s configuration option is enabled
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_CHAR_288=The provided value "%s" could not be parsed as a valid object class definition because character '%c' at position %d is not allowed in an object class name
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_289=The provided value "%s" could not be parsed as a valid object class definition because the underscore character is not allowed in an object class name unless the %s configuration option is enabled
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_290=The provided value "%s" could not be parsed as a valid object class definition because the hyphen character is not allowed as the first character of an object class name
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_291=The provided value "%s" could not be parsed as a valid object class definition because the underscore character is not allowed as the first character of an object class name even if the %s configuration option is enabled
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_292=The provided value "%s" could not be parsed as a valid object class definition because the digit '%c' is not allowed as the first character of an object class name unless the name is specified as an OID or the %s configuration option is enabled
sdk/src/com/sun/opends/sdk/util/messages_zh_CN.properties
New file
@@ -0,0 +1,531 @@
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#      Copyright 2009 Sun Microsystems, Inc.
#
# Global directives
#
global.ordinal=-1
#
# Format string definitions
#
# Keys must be formatted as follows:
#
# [DESCRIPTION]
#
# where:
#
# DESCRIPTION is an upper case string providing a hint as to the context of
# the message in upper case with the underscore ('_') character serving as
# word separator
#
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_APPROXIMATE_MATCHING_RULE_1=Unable to retrieve \
### approximate matching rule %s used as the default for the %s attribute syntax. \
### Approximate matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_EQUALITY_MATCHING_RULE_2=Unable to retrieve \
### equality matching rule %s used as the default for the %s attribute syntax. \
### Equality matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_ORDERING_MATCHING_RULE_3=Unable to retrieve \
### ordering matching rule %s used as the default for the %s attribute syntax. \
### Ordering matches will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_SUBSTRING_MATCHING_RULE_4=Unable to retrieve \
### substring matching rule %s used as the default for the %s attribute syntax. \
### Substring matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN_5=The provided value "%s" is not \
### allowed for attributes with a Boolean syntax.  The only allowed values are \
### 'TRUE' and 'FALSE'
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT_6=The provided value "%s" is too \
### short to be a valid bit string.  A bit string must be a series of binary \
### digits surrounded by single quotes and followed by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED_7=The provided value "%s" is not \
### a valid bit string because it is not surrounded by single quotes and followed \
### by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT_8=The provided value "%s" is \
### not a valid bit string because '%s' is not a valid binary digit
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_INVALID_LENGTH_9=\u63d0\u4f9b\u7684\u503c "%s" \u4e0d\u662f\u6709\u6548\u7684\u56fd\u5bb6/\u5730\u533a\u5b57\u7b26\u4e32\uff0c\u56e0\u4e3a\u957f\u5ea6\u5e76\u975e\u6070\u597d\u4e3a\u4e24\u4e2a\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_NOT_PRINTABLE_10=\u63d0\u4f9b\u7684\u503c "%s" \u4e0d\u662f\u6709\u6548\u7684\u56fd\u5bb6/\u5730\u533a\u5b57\u7b26\u4e32\uff0c\u56e0\u4e3a\u5b83\u5305\u542b\u4e00\u4e2a\u6216\u591a\u4e2a\u4e0d\u53ef\u6253\u5370\u7684\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_NO_ELEMENTS_11=\u63d0\u4f9b\u7684\u503c "%s" \u4e0d\u662f\u6709\u6548\u7684\u4f20\u9001\u65b9\u6cd5\u503c\uff0c\u56e0\u4e3a\u5b83\u4e0d\u5305\u542b\u4efb\u4f55\u5143\u7d20
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_INVALID_ELEMENT_12=\u63d0\u4f9b\u7684\u503c "%s" \u4e0d\u662f\u6709\u6548\u7684\u4f20\u9001\u65b9\u6cd5\u503c\uff0c\u56e0\u4e3a "%s" \u4e0d\u662f\u6709\u6548\u7684\u65b9\u6cd5
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_TOO_SHORT_13=The provided value "%s" \
### is too short to be a valid generalized time value
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_YEAR_14=The provided value \
### "%s" is not a valid generalized time value because the '%s' character is not \
### allowed in the century or year specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MONTH_15=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid month \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_DAY_16=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid day \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_HOUR_17=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid hour \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MINUTE_18=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid minute \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SECOND_19=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid second \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SUBSECOND_20=The provided \
### value "%s" is not a valid generalized time value because the sub-second \
### component is not valid (between 1 and 3 numeric digits)
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_LONG_SUBSECOND_21=The provided value \
### "%s" is not a valid generalized time value because the sub-second value may \
### not contain more than three digits
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_OFFSET_22=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid GMT \
### offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_CHAR_23=The provided value \
### "%s" is not a valid generalized time value because it contains an invalid \
### character '%s' at position %d
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_CANNOT_PARSE_24=The provided value \
### "%s" could not be parsed as a valid generalized time:  %s
MILD_ERR_ATTR_SYNTAX_DN_INVALID_25=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d: %s
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_COMMA_26=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u6700\u540e\u4e00\u4e2a\u975e\u7a7a\u683c\u5b57\u7b26\u662f\u9017\u53f7\u6216\u5206\u53f7
MILD_ERR_ATTR_SYNTAX_DN_ATTR_START_WITH_DIGIT_27=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5c06\u6570\u5b57 '%s' \u4f5c\u4e3a\u5c5e\u6027\u540d\u79f0\u4e2d\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_CHAR_28=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u5c5e\u6027\u540d\u79f0\u4e2d\u4e0d\u5141\u8bb8\u4f7f\u7528\u4f4d\u7f6e %3$d \u5904\u7684\u5b57\u7b26 '%2$c'
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_UNDERSCORE_CHAR_29=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u5c5e\u6027\u540d\u79f0\u4e2d\u4e0d\u5141\u8bb8\u4f7f\u7528\u4e0b\u5212\u7ebf\u5b57\u7b26\uff0c\u9664\u975e\u542f\u7528\u4e86 %s \u914d\u7f6e\u9009\u9879
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DASH_30=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5c06\u8fde\u5b57\u7b26\u4f5c\u4e3a\u5c5e\u6027\u540d\u79f0\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_UNDERSCORE_31=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5c06\u4e0b\u5212\u7ebf\u5b57\u7b26\u4f5c\u4e3a\u5c5e\u6027\u540d\u79f0\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26\uff0c\u5373\u4f7f\u542f\u7528\u4e86 %s \u914d\u7f6e\u9009\u9879
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DIGIT_32=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5c06\u6570\u5b57 '%c' \u4f5c\u4e3a\u5c5e\u6027\u540d\u79f0\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26\uff0c\u9664\u975e\u5c06\u540d\u79f0\u6307\u5b9a\u4e3a OID \u6216\u542f\u7528\u4e86 %s \u914d\u7f6e\u9009\u9879
MILD_ERR_ATTR_SYNTAX_DN_ATTR_NO_NAME_33=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u5b83\u5305\u542b\u7684 RDN \u5177\u6709\u7a7a\u5c5e\u6027\u540d\u79f0
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_PERIOD_34=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u89e3\u6790\u7684\u5c5e\u6027\u540d\u79f0 %s \u5305\u542b\u4e00\u4e2a\u53e5\u70b9\uff0c\u4f46\u8be5\u540d\u79f0\u4f3c\u4e4e\u4e0d\u662f\u6709\u6548\u7684 OID
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_ATTR_NAME_35=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u6700\u540e\u4e00\u4e2a\u975e\u7a7a\u683c\u5b57\u7b26\u662f\u5c5e\u6027\u540d\u79f0 '%s' \u7684\u4e00\u90e8\u5206
MILD_ERR_ATTR_SYNTAX_DN_NO_EQUAL_36=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u5c5e\u6027\u540d\u79f0 "%s" \u540e\u9762\u7684\u4e0b\u4e00\u4e2a\u975e\u7a7a\u683c\u5b57\u7b26\u5e94\u8be5\u4e3a\u7b49\u53f7\uff0c\u800c\u5b9e\u9645\u4e3a '%c'
MILD_ERR_ATTR_SYNTAX_DN_INVALID_CHAR_37=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u4f4d\u7f6e %3$d \u5904\u7684\u5b57\u7b26 '%2$c' \u65e0\u6548
MILD_ERR_ATTR_SYNTAX_DN_HEX_VALUE_TOO_SHORT_38=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u5c5e\u6027\u503c\u4ee5\u4e95\u53f7 (#) \u5f00\u5934\uff0c\u4f46\u6ca1\u6709\u540e\u8ddf\u4e24\u4e2a\u5341\u516d\u8fdb\u5236\u6570\u5b57\u7684\u6b63\u500d\u6570
MILD_ERR_ATTR_SYNTAX_DN_INVALID_HEX_DIGIT_39=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u5c5e\u6027\u503c\u4ee5\u4e95\u53f7 (#) \u5f00\u5934\uff0c\u4f46\u5305\u542b\u7684\u5b57\u7b26 %c \u4e0d\u662f\u6709\u6548\u7684\u5341\u516d\u8fdb\u5236\u6570\u5b57
MILD_ERR_ATTR_SYNTAX_DN_ATTR_VALUE_DECODE_FAILURE_40=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u5728\u5c1d\u8bd5\u89e3\u6790\u67d0\u4e2a RDN \u7ec4\u4ef6\u4e2d\u7684\u5c5e\u6027\u503c\u65f6\u51fa\u73b0\u610f\u5916\u5931\u8d25: "%s"
MILD_ERR_ATTR_SYNTAX_DN_UNMATCHED_QUOTE_41=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u67d0\u4e2a RDN \u7ec4\u4ef6\u5305\u542b\u4e00\u4e2a\u7528\u5f15\u53f7\u5f15\u8d77\u6765\u7684\u503c\uff0c\u4f46\u8be5\u503c\u6ca1\u6709\u76f8\u5e94\u7684\u53f3\u5f15\u53f7
MILD_ERR_ATTR_SYNTAX_DN_ESCAPED_HEX_VALUE_INVALID_42=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u67d0\u4e2a RDN \u7ec4\u4ef6\u5305\u542b\u4e00\u4e2a\u5e26\u6709\u8f6c\u4e49\u5341\u516d\u8fdb\u5236\u6570\u5b57\u7684\u503c\uff0c\u4f46\u6ca1\u6709\u540e\u8ddf\u7b2c\u4e8c\u4e2a\u5341\u516d\u8fdb\u5236\u6570\u5b57
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INITIAL_ZERO_43=The provided value "%s" could \
### not be parsed as a valid integer because the first digit may not be zero \
### unless it is the only digit
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_MISPLACED_DASH_44=The provided value "%s" \
### could not be parsed as a valid integer because the dash may only appear if it \
### is the first character of the value followed by one or more digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INVALID_CHARACTER_45=The provided value "%s" \
### could not be parsed as a valid integer because character '%c' at position %d \
### is not allowed in an integer value
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_EMPTY_VALUE_46=The provided value "%s" could \
### not be parsed as a valid integer because it did not contain any digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_DASH_NEEDS_VALUE_47=The provided value "%s" \
### could not be parsed as a valid integer because it contained only a dash not \
### followed by an integer value
MILD_ERR_ATTR_SYNTAX_OID_NO_VALUE_48=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684 OID\uff0c\u56e0\u4e3a\u5b83\u4e0d\u5305\u542b\u4efb\u4f55\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER_49=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684 OID\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS_50=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684 OID\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %d \u5904\u6216\u9644\u8fd1\u5305\u542b\u4e24\u4e2a\u8fde\u7eed\u7684\u53e5\u70b9
MILD_ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD_51=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684 OID\uff0c\u56e0\u4e3a\u5b83\u4ee5\u53e5\u70b9\u7ed3\u5c3e
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE_52=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684\u5c5e\u6027\u7c7b\u578b\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a\u6216\u4ec5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_OPEN_PARENTHESIS_53=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u7c7b\u578b\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5de6\u5706\u62ec\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f '%s' \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_TRUNCATED_VALUE_54=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u7c7b\u578b\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u76ee\u5f55\u670d\u52a1\u5668\u8981\u6c42\u63d0\u4f9b\u66f4\u591a\u6570\u636e\u65f6\u5230\u8fbe\u503c\u672b\u5c3e
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_DOUBLE_PERIOD_IN_NUMERIC_OID_55=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u7c7b\u578b\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u4e24\u4e2a\u8fde\u7eed\u7684\u53e5\u70b9
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_NUMERIC_OID_56=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5c5e\u6027\u7c7b\u578b\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_STRING_OID_57=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5c5e\u6027\u7c7b\u578b\u63cf\u8ff0\uff0c\u56e0\u4e3a\u975e\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_58=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5c5e\u6027\u7c7b\u578b\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_UNEXPECTED_CLOSE_PARENTHESIS_59=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u7c7b\u578b\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u610f\u5916\u53f3\u5706\u62ec\u53f7
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_60=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u7c7b\u578b\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5c06\u5355\u5f15\u53f7\u4f5c\u4e3a\u6807\u8bb0 %s \u540e\u7684\u7b2c\u4e00\u4e2a\u975e\u7a7a\u767d\u5b57\u7b26\u3002\u4f46\u662f\uff0c\u627e\u5230\u7684\u662f\u5b57\u7b26 %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE_61=The definition for \
### the attribute type with OID %s declared a superior type with an OID of %s. \
### No attribute type with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR_62=The definition for \
### the attribute type with OID %s declared that approximate matching should be \
### performed using the matching rule "%s".  No such approximate matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR_63=The definition for \
### the attribute type with OID %s declared that equality matching should be \
### performed using the matching rule "%s".  No such equality matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR_64=The definition for \
### the attribute type with OID %s declared that ordering matching should be \
### performed using the matching rule "%s".  No such ordering matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR_65=The definition for \
### the attribute type with OID %s declared that substring matching should be \
### performed using the matching rule "%s".  No such substring matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SYNTAX_66=The definition for the \
### attribute type with OID %s declared that it should have a syntax with OID %s. \
### No such syntax is configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE_67=The definition \
### for the attribute type with OID %s declared that it should have an attribute \
### usage of %s.  This is an invalid usage
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_AT_POS_68=The provided value \
### "%s" could not be parsed as an attribute type description because a single \
### quote was expected at position %d but the character %s was found instead
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE_69=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684 objectclass \u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a\u6216\u4ec5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS_70=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a objectclass \u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5de6\u5706\u62ec\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f '%s' \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_TRUNCATED_VALUE_71=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a objectclass \u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u76ee\u5f55\u670d\u52a1\u5668\u8981\u6c42\u63d0\u4f9b\u66f4\u591a\u6570\u636e\u65f6\u5230\u8fbe\u503c\u672b\u5c3e
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_DOUBLE_PERIOD_IN_NUMERIC_OID_72=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a objectclass \u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u4e24\u4e2a\u8fde\u7eed\u7684\u53e5\u70b9
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_NUMERIC_OID_73=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a objectclass \u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_STRING_OID_74=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a objectclass \u63cf\u8ff0\uff0c\u56e0\u4e3a\u975e\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_75=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a objectclass \u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_UNEXPECTED_CLOSE_PARENTHESIS_76=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a objectclass \u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u610f\u5916\u53f3\u5706\u62ec\u53f7
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_77=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a objectclass \u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5c06\u5355\u5f15\u53f7\u4f5c\u4e3a\u6807\u8bb0 %s \u540e\u7684\u7b2c\u4e00\u4e2a\u975e\u7a7a\u767d\u5b57\u7b26\u3002\u4f46\u662f\uff0c\u627e\u5230\u7684\u662f\u5b57\u7b26 %s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS_78=The definition \
### for the objectclass with OID %s declared a superior objectclass with an OID \
### of %s.  No objectclass with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_AT_POS_79=The provided \
### value "%s" could not be parsed as an objectclass description because a single \
### quote was expected at position %d but the character %s was found instead
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR_80=The definition \
### for the objectclass with OID %s declared that it should include required \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR_81=The definition \
### for the objectclass with OID %s declared that it should include optional \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER_82=The provided value "%s" \
### cannot be parsed as a valid IA5 string because it contains an illegal \
### character "%s" that is not allowed in the IA5 (ASCII) character set
INFO_ATTR_SYNTAX_TELEPHONE_DESCRIPTION_STRICT_MODE_83=\u6b64\u5c5e\u6027\u6307\u793a\u7535\u8bdd\u53f7\u7801\u5c5e\u6027\u8bed\u6cd5\u662f\u5426\u5e94\u4f7f\u7528\u4e25\u683c\u6a21\u5f0f\uff0c\u8be5\u6a21\u5f0f\u4ec5\u63a5\u53d7 ITU-T E.123 \u683c\u5f0f\u7684\u503c\u3002\u5982\u679c\u542f\u7528\u6b64\u5c5e\u6027\uff0c\u5219\u4f1a\u62d2\u7edd\u4e0d\u4f7f\u7528\u8be5\u683c\u5f0f\u7684\u4efb\u4f55\u503c\u3002\u5982\u679c\u7981\u7528\u6b64\u5c5e\u6027\uff0c\u5219\u4f1a\u63a5\u53d7\u4efb\u4f55\u503c\uff0c\u4f46\u5728\u6267\u884c\u5339\u914d\u65f6\u4ec5\u8003\u8651\u6570\u5b57
###SEVERE_WARN_ATTR_SYNTAX_TELEPHONE_CANNOT_DETERMINE_STRICT_MODE_84=An error \
### occurred while trying to retrieve attribute \
### ds-cfg-strict-format from configuration entry %s:  %s.  The \
### Directory Server will not enforce strict compliance to the ITU-T E.123 format \
### for telephone number values
MILD_ERR_ATTR_SYNTAX_TELEPHONE_EMPTY_85=\u63d0\u4f9b\u7684\u503c\u4e0d\u662f\u6709\u6548\u7684\u7535\u8bdd\u53f7\u7801\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a\u6216 Null
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_PLUS_86=\u63d0\u4f9b\u7684\u503c "%s" \u4e0d\u662f\u6709\u6548\u7684\u7535\u8bdd\u53f7\u7801\uff0c\u56e0\u4e3a\u542f\u7528\u4e86\u4e25\u683c\u7535\u8bdd\u53f7\u7801\u68c0\u67e5\uff0c\u8be5\u503c\u6ca1\u6709\u6309\u7167 ITU-T E.123 \u89c4\u8303\u4ee5\u52a0\u53f7\u5f00\u5934
MILD_ERR_ATTR_SYNTAX_TELEPHONE_ILLEGAL_CHAR_87=\u63d0\u4f9b\u7684\u503c "%1$s" \u4e0d\u662f\u6709\u6548\u7684\u7535\u8bdd\u53f7\u7801\uff0c\u56e0\u4e3a\u542f\u7528\u4e86\u4e25\u683c\u7535\u8bdd\u53f7\u7801\u68c0\u67e5\uff0cITU-T E.123 \u89c4\u8303\u4e0d\u5141\u8bb8\u4f7f\u7528\u4f4d\u7f6e %3$d \u5904\u7684\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_DIGITS_88=\u63d0\u4f9b\u7684\u503c "%s" \u4e0d\u662f\u6709\u6548\u7684\u7535\u8bdd\u53f7\u7801\uff0c\u56e0\u4e3a\u5b83\u4e0d\u5305\u542b\u4efb\u4f55\u6570\u5b57
INFO_ATTR_SYNTAX_TELEPHONE_UPDATED_STRICT_MODE_89=\u5df2\u5c06\u914d\u7f6e\u6761\u76ee %2$s \u4e2d\u7684\u914d\u7f6e\u5c5e\u6027 ds-cfg-strict-format \u503c\u66f4\u65b0\u4e3a %1$s\uff0c\u8be5\u5c5e\u6027\u7528\u4e8e\u6307\u793a\u662f\u5426\u4f7f\u7528\u4e25\u683c\u7535\u8bdd\u53f7\u7801\u8bed\u6cd5\u68c0\u67e5
###SEVERE_WARN_ATTR_SYNTAX_NUMERIC_STRING_ILLEGAL_CHAR_90=The provided value \
### "%s" is not a valid numeric string because it contained character %s at \
### position %d that was neither a digit nor a space
MILD_ERR_ATTR_SYNTAX_NUMERIC_STRING_EMPTY_VALUE_91=\u63d0\u4f9b\u7684\u503c\u4e0d\u662f\u6709\u6548\u7684\u6570\u5b57\u5b57\u7b26\u4e32\uff0c\u56e0\u4e3a\u5b83\u4e0d\u5305\u542b\u4efb\u4f55\u5b57\u7b26\u3002\u6570\u5b57\u5b57\u7b26\u4e32\u503c\u5fc5\u987b\u81f3\u5c11\u5305\u542b\u4e00\u4e2a\u6570\u5b57\u6216\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE_92=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a\u6216\u4ec5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_OPEN_PARENTHESIS_93=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5de6\u5706\u62ec\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f '%s' \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TRUNCATED_VALUE_94=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u76ee\u5f55\u670d\u52a1\u5668\u8981\u6c42\u63d0\u4f9b\u66f4\u591a\u6570\u636e\u65f6\u5230\u8fbe\u503c\u672b\u5c3e
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_DOUBLE_PERIOD_IN_NUMERIC_OID_95=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u4e24\u4e2a\u8fde\u7eed\u7684\u53e5\u70b9
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_NUMERIC_OID_96=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_STRING_OID_97=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u975e\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_UNEXPECTED_CLOSE_PARENTHESIS_98=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u610f\u5916\u53f3\u5706\u62ec\u53f7
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_TOKEN_99=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u5c1d\u8bd5\u4ece\u4f4d\u7f6e %d \u5904\u6216\u9644\u8fd1\u7684\u5b57\u7b26\u4e32\u4e2d\u8bfb\u53d6 "DESC" \u6807\u8bb0\u65f6\u51fa\u73b0\u610f\u5916\u9519\u8bef: %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TOKEN_NOT_DESC_100=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u5e94\u8be5\u4e3a "DESC" \u6807\u8bb0\u7684\u4f4d\u7f6e\u627e\u5230\u4e86\u5b57\u7b26\u4e32 "%s"
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_VALUE_101=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u5c1d\u8bd5\u4ece\u4f4d\u7f6e %d \u5904\u6216\u9644\u8fd1\u7684\u5b57\u7b26\u4e32\u4e2d\u8bfb\u53d6 "DESC" \u6807\u8bb0\u503c\u65f6\u51fa\u73b0\u610f\u5916\u9519\u8bef: %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_CLOSE_PARENTHESIS_102=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u53f3\u5706\u62ec\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f '%s' \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_AFTER_CLOSE_103=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u53f3\u5706\u62ec\u53f7\u540e\u9762\u7684\u4f4d\u7f6e %3$d \u5904\u627e\u5230\u975e\u6cd5\u5b57\u7b26 %2$s
###SEVERE_WARN_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_QUOTE_AT_POS_104=The provided \
### value "%s" could not be parsed as an attribute syntax description because a \
### single quote was expected at position %d but the character %s was found \
### instead
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_EMPTY_VALUE_105=The provided value \
### could not be parsed as a printable string because it was null or empty.  A \
### printable string must contain at least one character
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_ILLEGAL_CHARACTER_106=The provided \
### value "%s" could not be parsed as a printable string because it contained an \
### invalid character %s at position %d
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_ONLY_WILDCARD_107=The provided value "*" \
### could not be parsed as a substring assertion because it consists only of a \
### wildcard character and zero-length substrings are not allowed
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS_108=The provided \
### value "%s" could not be parsed as a substring assertion because it contains \
### consecutive wildcard characters at position %d and zero-length substrings are \
### not allowed
MILD_ERR_ATTR_SYNTAX_UTC_TIME_TOO_SHORT_109=\u63d0\u4f9b\u7684\u503c %s \u592a\u77ed\u800c\u65e0\u6cd5\u4f5c\u4e3a\u6709\u6548\u7684 UTC \u65f6\u95f4\u503c
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_YEAR_110=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u65f6\u95f4\u503c\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5728\u4e16\u7eaa\u6216\u5e74\u4efd\u89c4\u8303\u4e2d\u4f7f\u7528 %s \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MONTH_111=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u65f6\u95f4\u503c\uff0c\u56e0\u4e3a %s \u4e0d\u662f\u6709\u6548\u7684\u6708\u4efd\u89c4\u8303
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_DAY_112=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u65f6\u95f4\u503c\uff0c\u56e0\u4e3a %s \u4e0d\u662f\u6709\u6548\u7684\u65e5\u671f\u89c4\u8303
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_HOUR_113=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u65f6\u95f4\u503c\uff0c\u56e0\u4e3a %s \u4e0d\u662f\u6709\u6548\u7684\u5c0f\u65f6\u89c4\u8303
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MINUTE_114=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u65f6\u95f4\u503c\uff0c\u56e0\u4e3a %s \u4e0d\u662f\u6709\u6548\u7684\u5206\u949f\u89c4\u8303
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_CHAR_115=\u63d0\u4f9b\u7684\u503c %1$s \u4e0d\u662f\u6709\u6548\u7684 UTC \u65f6\u95f4\u503c\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u65e0\u6548\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_SECOND_116=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u65f6\u95f4\u503c\uff0c\u56e0\u4e3a %s \u4e0d\u662f\u6709\u6548\u7684\u79d2\u949f\u89c4\u8303
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_OFFSET_117=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u65f6\u95f4\u503c\uff0c\u56e0\u4e3a %s \u4e0d\u662f\u6709\u6548\u7684 GMT \u504f\u79fb
MILD_ERR_ATTR_SYNTAX_UTC_TIME_CANNOT_PARSE_118=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c %s \u89e3\u6790\u4e3a\u6709\u6548\u7684 UTC \u65f6\u95f4: %s
MILD_ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE_119=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684 DIT \u5185\u5bb9\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a\u6216\u4ec5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS_120=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u5185\u5bb9\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5de6\u5706\u62ec\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f '%s' \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_DCR_TRUNCATED_VALUE_121=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u5185\u5bb9\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u76ee\u5f55\u670d\u52a1\u5668\u8981\u6c42\u63d0\u4f9b\u66f4\u591a\u6570\u636e\u65f6\u5230\u8fbe\u503c\u672b\u5c3e
MILD_ERR_ATTR_SYNTAX_DCR_DOUBLE_PERIOD_IN_NUMERIC_OID_122=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u5185\u5bb9\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u4e24\u4e2a\u8fde\u7eed\u7684\u53e5\u70b9
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_NUMERIC_OID_123=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a DIT \u5185\u5bb9\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_STRING_OID_124=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a DIT \u5185\u5bb9\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u975e\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_DCR_UNEXPECTED_CLOSE_PARENTHESIS_125=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u5185\u5bb9\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u610f\u5916\u53f3\u5706\u62ec\u53f7
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_126=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a DIT \u5185\u5bb9\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS_127=DIT \u5185\u5bb9\u89c4\u5219 "%s" \u4e0e\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u672a\u5b9a\u4e49\u7684\u7ed3\u6784\u5316 objectclass %s \u76f8\u5173\u8054
MILD_ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL_128=DIT \u5185\u5bb9\u89c4\u5219 "%s" \u4e0e OID \u4e3a %s (%s) \u7684 objectclass \u76f8\u5173\u8054\u3002\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u5b58\u5728\u6b64 objectclass\uff0c\u4f46\u5b9a\u4e49\u4e3a %s \u800c\u4e0d\u662f\u7ed3\u6784\u5316\u7c7b
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS_129=DIT \u5185\u5bb9\u89c4\u5219 "%s" \u4e0e\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u672a\u5b9a\u4e49\u7684\u8f85\u52a9 objectclass %s \u76f8\u5173\u8054
MILD_ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY_130=DIT \u5185\u5bb9\u89c4\u5219 "%s" \u4e0e\u8f85\u52a9 objectclass %s \u76f8\u5173\u8054\u3002\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u5b58\u5728\u6b64 objectclass\uff0c\u4f46\u5b9a\u4e49\u4e3a %s \u800c\u4e0d\u662f\u8f85\u52a9\u7c7b
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR_131=DIT \u5185\u5bb9\u89c4\u5219 "%s" \u4e0e\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u672a\u5b9a\u4e49\u7684\u5fc5\u9700\u5c5e\u6027\u7c7b\u578b %s \u76f8\u5173\u8054
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR_132=DIT \u5185\u5bb9\u89c4\u5219 "%s" \u4e0e\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u672a\u5b9a\u4e49\u7684\u53ef\u9009\u5c5e\u6027\u7c7b\u578b %s \u76f8\u5173\u8054
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR_133=DIT \u5185\u5bb9\u89c4\u5219 "%s" \u4e0e\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u672a\u5b9a\u4e49\u7684\u7981\u6b62\u5c5e\u6027\u7c7b\u578b %s \u76f8\u5173\u8054
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_QUOTE_AT_POS_134=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u5185\u5bb9\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5355\u5f15\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f\u5b57\u7b26 %s
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE_135=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a\u6216\u4ec5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_OPEN_PARENTHESIS_136=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5de6\u5706\u62ec\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f '%c' \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_NAME_FORM_TRUNCATED_VALUE_137=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u76ee\u5f55\u670d\u52a1\u5668\u8981\u6c42\u63d0\u4f9b\u66f4\u591a\u6570\u636e\u65f6\u5230\u8fbe\u503c\u672b\u5c3e
MILD_ERR_ATTR_SYNTAX_NAME_FORM_DOUBLE_PERIOD_IN_NUMERIC_OID_138=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u4e24\u4e2a\u8fde\u7eed\u7684\u53e5\u70b9
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_NUMERIC_OID_139=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$c
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_STRING_OID_140=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0\uff0c\u56e0\u4e3a\u975e\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$c
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNEXPECTED_CLOSE_PARENTHESIS_141=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u610f\u5916\u53f3\u5706\u62ec\u53f7
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_142=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$c
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS_143=\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0 "%s" \u4e0e\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u672a\u5b9a\u4e49\u7684\u7ed3\u6784\u5316 objectclass %s \u76f8\u5173\u8054
MILD_ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL_144=\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0 "%s" \u4e0e OID \u4e3a %s (%s) \u7684 objectclass \u76f8\u5173\u8054\u3002\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u5b58\u5728\u6b64 objectclass\uff0c\u4f46\u5b9a\u4e49\u4e3a %s \u800c\u4e0d\u662f\u7ed3\u6784\u5316\u7c7b
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR_145=OID \u4e3a %s \u7684\u540d\u79f0\u683c\u5f0f\u5b9a\u4e49\u58f0\u660e\u5b83\u5e94\u8be5\u5305\u542b\u5fc5\u9700\u5c5e\u6027 "%s"\u3002\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u4e0d\u5b58\u5728\u4e0e\u6b64\u540d\u79f0\u6216 OID \u5339\u914d\u7684\u5c5e\u6027\u7c7b\u578b
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR_146=OID \u4e3a %s \u7684\u540d\u79f0\u683c\u5f0f\u5b9a\u4e49\u58f0\u660e\u5b83\u5e94\u8be5\u5305\u542b\u53ef\u9009\u5c5e\u6027 "%s"\u3002\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u4e0d\u5b58\u5728\u4e0e\u6b64\u540d\u79f0\u6216 OID \u5339\u914d\u7684\u5c5e\u6027\u7c7b\u578b
MILD_ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS_147=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u672a\u6307\u5b9a\u5173\u8054\u7684\u7ed3\u6784\u5316 objectclass
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_QUOTE_AT_POS_148=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u540d\u79f0\u683c\u5f0f\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5355\u5f15\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f\u5b57\u7b26 %c
MILD_ERR_ATTR_SYNTAX_MR_EMPTY_VALUE_149=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a\u6216\u4ec5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_OPEN_PARENTHESIS_150=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5de6\u5706\u62ec\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f '%s' \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_MR_TRUNCATED_VALUE_151=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u76ee\u5f55\u670d\u52a1\u5668\u8981\u6c42\u63d0\u4f9b\u66f4\u591a\u6570\u636e\u65f6\u5230\u8fbe\u503c\u672b\u5c3e
MILD_ERR_ATTR_SYNTAX_MR_DOUBLE_PERIOD_IN_NUMERIC_OID_152=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u4e24\u4e2a\u8fde\u7eed\u7684\u53e5\u70b9
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_NUMERIC_OID_153=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_STRING_OID_154=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u975e\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_MR_UNEXPECTED_CLOSE_PARENTHESIS_155=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u610f\u5916\u53f3\u5706\u62ec\u53f7
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_156=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX_157=\u5339\u914d\u89c4\u5219\u63cf\u8ff0 "%s" \u4e0e\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u672a\u5b9a\u4e49\u7684\u5c5e\u6027\u8bed\u6cd5 %s \u76f8\u5173\u8054
MILD_ERR_ATTR_SYNTAX_MR_NO_SYNTAX_158=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u672a\u6307\u5b9a\u5173\u8054\u7684\u5c5e\u6027\u8bed\u6cd5
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_QUOTE_AT_POS_159=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5355\u5f15\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f\u5b57\u7b26 %s
MILD_ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE_160=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a\u6216\u4ec5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_OPEN_PARENTHESIS_161=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5de6\u5706\u62ec\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f '%s' \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_MRUSE_TRUNCATED_VALUE_162=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u76ee\u5f55\u670d\u52a1\u5668\u8981\u6c42\u63d0\u4f9b\u66f4\u591a\u6570\u636e\u65f6\u5230\u8fbe\u503c\u672b\u5c3e
MILD_ERR_ATTR_SYNTAX_MRUSE_DOUBLE_PERIOD_IN_NUMERIC_OID_163=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u4e24\u4e2a\u8fde\u7eed\u7684\u53e5\u70b9
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_NUMERIC_OID_164=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_STRING_OID_165=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u975e\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE_166=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6307\u5b9a\u7684\u5339\u914d\u89c4\u5219 %s \u672a\u77e5
MILD_ERR_ATTR_SYNTAX_MRUSE_UNEXPECTED_CLOSE_PARENTHESIS_167=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u610f\u5916\u53f3\u5706\u62ec\u53f7
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_168=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR_169=\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0 "%s" \u4e0e\u670d\u52a1\u5668\u6a21\u5f0f\u4e2d\u672a\u5b9a\u4e49\u7684\u5c5e\u6027\u7c7b\u578b %s \u76f8\u5173\u8054
MILD_ERR_ATTR_SYNTAX_MRUSE_NO_ATTR_170=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u672a\u6307\u5b9a\u53ef\u7528\u4e8e\u5173\u8054 OID \u7684\u5c5e\u6027\u7c7b\u578b\u96c6
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_QUOTE_AT_POS_171=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5339\u914d\u89c4\u5219\u7528\u6cd5\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5355\u5f15\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f\u5b57\u7b26 %s
MILD_ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE_172=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684 DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a\u6216\u4ec5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS_173=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5de6\u5706\u62ec\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f '%s' \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_DSR_TRUNCATED_VALUE_174=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5728\u76ee\u5f55\u670d\u52a1\u5668\u8981\u6c42\u63d0\u4f9b\u66f4\u591a\u6570\u636e\u65f6\u5230\u8fbe\u503c\u672b\u5c3e
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_RULE_ID_175=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u89c4\u5219 ID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_DSR_UNEXPECTED_CLOSE_PARENTHESIS_176=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u610f\u5916\u53f3\u5706\u62ec\u53f7
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_177=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_NAME_FORM_178=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5f15\u7528\u4e86\u672a\u77e5\u7684\u540d\u79f0\u683c\u5f0f %s
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_RULE_ID_179=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u5f15\u7528\u4e86\u4e0a\u7ea7 DIT \u7ed3\u6784\u89c4\u5219\u7684\u672a\u77e5\u89c4\u5219 ID %d
MILD_ERR_ATTR_SYNTAX_DSR_NO_NAME_FORM_180=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5b83\u672a\u6307\u5b9a\u89c4\u5219\u7684\u540d\u79f0\u683c\u5f0f
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_QUOTE_AT_POS_181=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u5e94\u8be5\u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u5355\u5f15\u53f7\uff0c\u4f46\u627e\u5230\u7684\u662f\u5b57\u7b26 %s
MILD_ERR_ATTR_SYNTAX_DSR_DOUBLE_PERIOD_IN_NUMERIC_OID_182=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u4e24\u4e2a\u8fde\u7eed\u7684\u53e5\u70b9
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_NUMERIC_OID_183=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_STRING_OID_184=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a DIT \u7ed3\u6784\u89c4\u5219\u63cf\u8ff0\uff0c\u56e0\u4e3a\u975e\u6570\u5b57 OID \u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_TELEX_TOO_SHORT_185=\u63d0\u4f9b\u7684\u503c "%s" \u592a\u77ed\u800c\u65e0\u6cd5\u4f5c\u4e3a\u6709\u6548\u7684\u7535\u62a5\u53f7\u7801\u503c
MILD_ERR_ATTR_SYNTAX_TELEX_NOT_PRINTABLE_186=\u63d0\u4f9b\u7684\u503c "%1$s" \u4e0d\u5305\u542b\u6709\u6548\u7684\u7535\u62a5\u53f7\u7801\uff0c\u56e0\u4e3a\u4f4d\u7f6e %3$d \u5904\u7684\u5b57\u7b26 %2$s \u4e0d\u662f\u6709\u6548\u7684\u53ef\u6253\u5370\u5b57\u7b26\u4e32\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_TELEX_ILLEGAL_CHAR_187=\u63d0\u4f9b\u7684\u503c "%1$s" \u4e0d\u5305\u542b\u6709\u6548\u7684\u7535\u62a5\u53f7\u7801\uff0c\u56e0\u4e3a\u4f4d\u7f6e %3$d \u5904\u7684\u5b57\u7b26 %2$s \u65e2\u4e0d\u662f\u6709\u6548\u7684\u53ef\u6253\u5370\u5b57\u7b26\u4e32\u5b57\u7b26\uff0c\u4e5f\u4e0d\u662f\u7528\u4e8e\u5206\u9694\u7535\u62a5\u53f7\u7801\u7ec4\u6210\u90e8\u5206\u7684\u7f8e\u5143\u7b26\u53f7
MILD_ERR_ATTR_SYNTAX_TELEX_TRUNCATED_188=\u63d0\u4f9b\u7684\u503c "%s" \u4e0d\u5305\u542b\u6709\u6548\u7684\u7535\u62a5\u53f7\u7801\uff0c\u56e0\u4e3a\u5728\u8bfb\u53d6\u4e09\u4e2a\u4ee5\u7f8e\u5143\u7b26\u53f7\u5206\u9694\u7684\u53ef\u6253\u5370\u5b57\u7b26\u4e32\u4e4b\u524d\u5230\u8fbe\u503c\u672b\u5c3e
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_EMPTY_189=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684\u4f20\u771f\u7535\u8bdd\u53f7\u7801\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_NOT_PRINTABLE_190=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u4f20\u771f\u7535\u8bdd\u53f7\u7801\uff0c\u56e0\u4e3a\u4f4d\u7f6e %3$d \u5904\u7684\u5b57\u7b26 %2$s \u4e0d\u662f\u6709\u6548\u7684\u53ef\u6253\u5370\u5b57\u7b26\u4e32\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_END_WITH_DOLLAR_191=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u4f20\u771f\u7535\u8bdd\u53f7\u7801\uff0c\u56e0\u4e3a\u5b83\u4ee5\u7f8e\u5143\u7b26\u53f7\u7ed3\u5c3e\uff0c\u4f46\u8be5\u7f8e\u5143\u7b26\u53f7\u5e94\u540e\u8ddf\u4f20\u771f\u53c2\u6570
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_ILLEGAL_PARAMETER_192=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u4f20\u771f\u7535\u8bdd\u53f7\u7801\uff0c\u56e0\u4e3a\u4f4d\u7f6e %3$d \u548c %4$d \u4e4b\u95f4\u7684\u5b57\u7b26\u4e32 "%2$s" \u4e0d\u662f\u6709\u6548\u7684\u4f20\u771f\u53c2\u6570
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_INVALID_DN_193=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u540d\u79f0\u548c\u53ef\u9009 UID \u503c\uff0c\u56e0\u4e3a\u5728\u5c1d\u8bd5\u89e3\u6790 DN \u90e8\u5206\u65f6\u51fa\u73b0\u9519\u8bef: %s
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_ILLEGAL_BINARY_DIGIT_194=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u540d\u79f0\u548c\u53ef\u9009 UID \u503c\uff0c\u56e0\u4e3a UID \u90e8\u5206\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u4e8c\u8fdb\u5236\u6570\u5b57 %2$s
MILD_ERR_ATTR_SYNTAX_TELETEXID_EMPTY_195=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u6709\u6548\u7684\u667a\u80fd\u7528\u6237\u7535\u62a5\u7ec8\u7aef\u6807\u8bc6\u7b26\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a
MILD_ERR_ATTR_SYNTAX_TELETEXID_NOT_PRINTABLE_196=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u667a\u80fd\u7528\u6237\u7535\u62a5\u7ec8\u7aef\u6807\u8bc6\u7b26\uff0c\u56e0\u4e3a\u4f4d\u7f6e %3$d \u5904\u7684\u5b57\u7b26 %2$s \u4e0d\u662f\u6709\u6548\u7684\u53ef\u6253\u5370\u5b57\u7b26\u4e32\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_TELETEXID_END_WITH_DOLLAR_197=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u667a\u80fd\u7528\u6237\u7535\u62a5\u7ec8\u7aef\u6807\u8bc6\u7b26\uff0c\u56e0\u4e3a\u5b83\u4ee5\u7f8e\u5143\u7b26\u53f7\u7ed3\u5c3e\uff0c\u4f46\u8be5\u7f8e\u5143\u7b26\u53f7\u5e94\u540e\u8ddf TTX \u53c2\u6570
MILD_ERR_ATTR_SYNTAX_TELETEXID_PARAM_NO_COLON_198=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u667a\u80fd\u7528\u6237\u7535\u62a5\u7ec8\u7aef\u6807\u8bc6\u7b26\uff0c\u56e0\u4e3a\u53c2\u6570\u5b57\u7b26\u4e32\u4e0d\u5305\u542b\u5c06\u540d\u79f0\u4e0e\u503c\u9694\u5f00\u7684\u5192\u53f7
MILD_ERR_ATTR_SYNTAX_TELETEXID_ILLEGAL_PARAMETER_199=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u667a\u80fd\u7528\u6237\u7535\u62a5\u7ec8\u7aef\u6807\u8bc6\u7b26\uff0c\u56e0\u4e3a\u5b57\u7b26\u4e32 "%s" \u4e0d\u662f\u6709\u6548\u7684 TTX \u53c2\u6570\u540d\u79f0
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_EMPTY_VALUE_200=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c\u89e3\u6790\u4e3a\u5176\u4ed6\u90ae\u7bb1\u503c\uff0c\u56e0\u4e3a\u5b83\u4e3a\u7a7a
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MBTYPE_201=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5176\u4ed6\u90ae\u7bb1\u503c\uff0c\u56e0\u4e3a\u7f8e\u5143\u7b26\u53f7\u524d\u9762\u6ca1\u6709\u90ae\u7bb1\u7c7b\u578b
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MBTYPE_CHAR_202=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5176\u4ed6\u90ae\u7bb1\u503c\uff0c\u56e0\u4e3a\u90ae\u7bb1\u7c7b\u578b\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MAILBOX_203=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5176\u4ed6\u90ae\u7bb1\u503c\uff0c\u56e0\u4e3a\u7f8e\u5143\u7b26\u53f7\u540e\u9762\u6ca1\u6709\u90ae\u7bb1
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MB_CHAR_204=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u5176\u4ed6\u90ae\u7bb1\u503c\uff0c\u56e0\u4e3a\u90ae\u7bb1\u5728\u4f4d\u7f6e %3$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %2$s
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_OC_205=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u5b83\u5728\u4e95\u53f7 (#) \u5b57\u7b26\u524d\u9762\u4e0d\u5305\u542b objectclass \u540d\u79f0\u6216 OID
MILD_ERR_ATTR_SYNTAX_GUIDE_ILLEGAL_CHAR_206=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u6761\u4ef6\u90e8\u5206 %2$s \u5728\u4f4d\u7f6e %4$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %3$c
MILD_ERR_ATTR_SYNTAX_GUIDE_MISSING_CLOSE_PAREN_207=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u6761\u4ef6\u90e8\u5206 %s \u4e0d\u5305\u542b\u4e0e\u521d\u59cb\u5de6\u5706\u62ec\u53f7\u5bf9\u5e94\u7684\u53f3\u5706\u62ec\u53f7
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_QUESTION_MARK_208=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u6761\u4ef6\u90e8\u5206 %s \u4ee5\u95ee\u53f7\u5f00\u5934\uff0c\u4f46\u6ca1\u6709\u540e\u8ddf\u5b57\u7b26\u4e32\u201c\u771f\u201d\u6216\u201c\u5047\u201d
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_DOLLAR_209=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u6761\u4ef6\u90e8\u5206 %s \u4e0d\u5305\u542b\u5c06\u5c5e\u6027\u7c7b\u578b\u4e0e\u5339\u914d\u7c7b\u578b\u9694\u5f00\u7684\u7f8e\u5143\u7b26\u53f7
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_ATTR_210=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u6761\u4ef6\u90e8\u5206 %s \u672a\u5728\u7f8e\u5143\u7b26\u53f7\u524d\u9762\u6307\u5b9a\u5c5e\u6027\u7c7b\u578b
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_MATCH_TYPE_211=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u6761\u4ef6\u90e8\u5206 %s \u672a\u5728\u7f8e\u5143\u7b26\u53f7\u540e\u9762\u6307\u5b9a\u5339\u914d\u7c7b\u578b
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_MATCH_TYPE_212=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u6761\u4ef6\u90e8\u5206 %s \u5177\u6709\u65e0\u6548\u7684\u5339\u914d\u7c7b\u578b\uff08\u4ece\u4f4d\u7f6e %d \u5904\u5f00\u59cb\uff09
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP_213=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u589e\u5f3a\u7684\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u5b83\u4e0d\u5305\u542b\u5c06 objectclass \u4e0e\u6761\u4ef6\u9694\u5f00\u7684\u4e95\u53f7 (#) \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC_214=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u589e\u5f3a\u7684\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u5b83\u5728\u4e95\u53f7 (#) \u5b57\u7b26\u524d\u9762\u4e0d\u5305\u542b objectclass \u540d\u79f0\u6216 OID
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_DOUBLE_PERIOD_IN_OC_OID_215=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u589e\u5f3a\u7684\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u6307\u5b9a objectclass \u7684\u6570\u5b57 OID %s \u5728\u4f4d\u7f6e %d \u5904\u5305\u542b\u4e24\u4e2a\u8fde\u7eed\u7684\u53e5\u70b9
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_OID_216=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u589e\u5f3a\u7684\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u6307\u5b9a objectclass \u7684\u6570\u5b57 OID %2$s \u5728\u4f4d\u7f6e %4$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %3$s
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_NAME_217=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%1$s" \u89e3\u6790\u4e3a\u589e\u5f3a\u7684\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a objectclass \u540d\u79f0 %2$s \u5728\u4f4d\u7f6e %4$d \u5904\u5305\u542b\u975e\u6cd5\u5b57\u7b26 %3$s
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_FINAL_SHARP_218=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u589e\u5f3a\u7684\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u5b83\u4e0d\u5305\u542b\u5c06\u6761\u4ef6\u4e0e\u8303\u56f4\u9694\u5f00\u7684\u4e95\u53f7 (#) \u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SCOPE_219=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u589e\u5f3a\u7684\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u672a\u5728\u6700\u7ec8\u4e95\u53f7 (#) \u5b57\u7b26\u540e\u9762\u63d0\u4f9b\u4efb\u4f55\u8303\u56f4
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_INVALID_SCOPE_220=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u589e\u5f3a\u7684\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u6307\u5b9a\u7684\u8303\u56f4 %s \u65e0\u6548
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_CRITERIA_221=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u589e\u5f3a\u7684\u6307\u5bfc\u503c\uff0c\u56e0\u4e3a\u5b83\u672a\u5728\u4e95\u53f7 (#) \u5b57\u7b26\u4e4b\u95f4\u6307\u5b9a\u4efb\u4f55\u6761\u4ef6
MILD_ERR_ATTR_SYNTAX_OID_INVALID_VALUE_222=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c %s \u89e3\u6790\u4e3a\u6709\u6548\u7684 OID: %s
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NORMALIZE_FAILURE_223=An unexpected \
### error occurred while trying to normalize value %s as a generalized time \
### value:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_CANNOT_NORMALIZE_224=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseExactOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_INVALID_TYPE_225=An error occurred while \
### attempting to compare two objects using the caseExactOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_CANNOT_NORMALIZE_226=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseIgnoreOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_INVALID_TYPE_227=An error occurred while \
### attempting to compare two objects using the caseIgnoreOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_CANNOT_NORMALIZE_228=An error \
### occurred while attempting to compare two AttributeValue objects using the \
### generalizedTimeOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_INVALID_TYPE_229=An error occurred \
### while attempting to compare two objects using the \
### generalizedTimeOrderingMatch matching rule because the objects were of an \
### unsupported type %s.  Only byte arrays, ASN.1 octet strings, and attribute \
### value objects may be compared
###SEVERE_WARN_OMR_INTEGER_COMPARE_CANNOT_NORMALIZE_230=An error occurred while \
### attempting to compare two AttributeValue objects using the \
### integerOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_INTEGER_COMPARE_INVALID_TYPE_231=An error occurred while \
### attempting to compare two objects using the integerOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_CANNOT_NORMALIZE_232=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### numericStringOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_INVALID_TYPE_233=An error occurred \
### while attempting to compare two objects using the numericStringOrderingMatch \
### matching rule because the objects were of an unsupported type %s.  Only byte \
### arrays, ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_CANNOT_NORMALIZE_234=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### octetStringOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_INVALID_TYPE_235=An error occurred while \
### attempting to compare two objects using the octetStringOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH_236=The provided value "%s" has \
### an invalid length for a UUID.  All UUID values must have a length of exactly \
### 36 bytes, but the provided value had a length of %d bytes
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH_237=The provided value "%s" should \
### have had a dash at position %d, but the character '%s' was found instead
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX_238=The provided value "%s" should \
### have had a hexadecimal digit at position %d, but the character '%s' was found \
### instead
INFO_ATTR_SYNTAX_DIRECTORYSTRING_DESCRIPTION_ALLOW_ZEROLENGTH_239=\u6307\u793a\u4f7f\u7528\u76ee\u5f55\u5b57\u7b26\u4e32\u8bed\u6cd5\u7684\u5c5e\u6027\u662f\u5426\u5141\u8bb8\u5177\u6709\u96f6\u957f\u5ea6\u503c\u3002\u4ece\u6280\u672f\u4e0a\u8bb2\uff0cLDAP \u89c4\u8303\u4e0d\u5141\u8bb8\u5b58\u5728\u8fd9\u79cd\u60c5\u51b5\uff0c\u4f46\u5bf9\u4e8e\u5411\u540e\u517c\u5bb9\u4ee5\u524d\u7684\u76ee\u5f55\u670d\u52a1\u5668\u53d1\u884c\u7248\u6765\u8bf4\uff0c\u8fd9\u53ef\u80fd\u975e\u5e38\u6709\u7528
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_CANNOT_DETERMINE_ZEROLENGTH_240=An \
### error occurred while trying to determine the value of the %s configuration \
### attribute, which indicates whether directory string attributes should be \
### allowed to have zero-length values:  %s
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_INVALID_ZEROLENGTH_VALUE_241=The \
### operation attempted to assign a zero-length value to an attribute with the \
### directory string syntax
INFO_ATTR_SYNTAX_DIRECTORYSTRING_UPDATED_ALLOW_ZEROLENGTH_242=\u5df2\u5c06\u914d\u7f6e\u6761\u76ee %2$s \u4e2d\u7684 %1$s \u5c5e\u6027\u66f4\u65b0\u4e3a\u65b0\u7684\u503c %3$s
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_SCHEME_CHAR_243=The provided \
### authPassword value had an invalid scheme character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_244=The provided authPassword value \
### had a zero-length scheme element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_SEPARATOR_245=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the scheme and authInfo elements
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_INFO_CHAR_246=The provided \
### authPassword value had an invalid authInfo character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_247=The provided authPassword \
### value had a zero-length authInfo element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_SEPARATOR_248=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the authInfo and authValue elements
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_INITIAL_PARENTHESIS_249=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### it did not start with a parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_NONSPACE_250=The provided value "%s" could not \
### be parsed by the integer first component matching rule because it did not \
### have any non-space characters after the opening parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_SPACE_AFTER_INT_251=The provided value "%s" \
### could not be parsed by the integer first component matching rule because it \
### did not have any space characters after the first component
###SEVERE_ERR_EMR_INTFIRSTCOMP_FIRST_COMPONENT_NOT_INT_252=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### the first component does not appear to be an integer value
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_VALUE_253=No value was given to decode by \
### the user password attribute syntax
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_OPENING_BRACE_254=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not start with the opening curly brace ("{") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_CLOSING_BRACE_255=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not contain a closing curly brace ("}") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_SCHEME_256=Unable to decode the provided \
### value according to the user password syntax because the value does not \
### contain a storage scheme name
MILD_ERR_ATTR_SYNTAX_RFC3672_SUBTREE_SPECIFICATION_INVALID_257=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684 RFC 3672 \u5b50\u6811\u89c4\u8303
MILD_ERR_ATTR_SYNTAX_ABSOLUTE_SUBTREE_SPECIFICATION_INVALID_258=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u7edd\u5bf9\u5b50\u6811\u89c4\u8303
MILD_ERR_ATTR_SYNTAX_RELATIVE_SUBTREE_SPECIFICATION_INVALID_259=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u76f8\u5bf9\u5b50\u6811\u89c4\u8303
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_INTEGER_260=The provided value %s is not \
### allowed for attributes with a Integer syntax
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_VALUE_CHAR_261=The provided \
### authPassword value had an invalid authValue character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_VALUE_262=The provided authPassword \
### value had a zero-length authValue element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_TRAILING_CHAR_263=The provided \
### authPassword value had an invalid trailing character at position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXTENSION_INVALID_CHARACTER_264=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u5c5e\u6027\u8bed\u6cd5\u6269\u5c55\uff0c\u56e0\u4e3a\u5728\u4f4d\u7f6e %d \u5904\u627e\u5230\u65e0\u6548\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_INVALID_EXTENSION_265=\u7531\u4e8e\u6269\u5c55\u65e0\u6548\u800c\u65e0\u6cd5\u89e3\u6790\u5c5e\u6027\u8bed\u6cd5\u3002%s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE_266=The definition \
### for objectclass %s is invalid because it has an objectclass type of %s but \
### this is incompatible with the objectclass type %s for the superior class %s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP_267=The \
### definition for objectclass %s is invalid because it is defined as a \
### structural class but its superior chain does not include the "top" \
### objectclass
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_SUPERIOR_USAGE_268=The definition \
### for attribute type %s is invalid because its attribute usage %s is not the \
### same as the usage for its superior type %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_FROM_NONCOLLECTIVE_269=The \
### definition for attribute type %s is invalid because it is defined as a \
### collective type but the superior type %s is not collective
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NONCOLLECTIVE_FROM_COLLECTIVE_270=The \
### definition for attribute type %s is invalid because it is not defined as a \
### collective type but the superior type %s is collective
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_STRUCTURAL_271=DIT \u5185\u5bb9\u89c4\u5219 "%1$s" \u65e0\u6548\uff0c\u56e0\u4e3a\u5b83\u7981\u6b62\u4f7f\u7528\u5173\u8054\u7ed3\u6784\u5316\u5bf9\u8c61\u7c7b %3$s \u6240\u9700\u7684\u5c5e\u6027\u7c7b\u578b %2$s
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_AUXILIARY_272=DIT \u5185\u5bb9\u89c4\u5219 "%1$s" \u65e0\u6548\uff0c\u56e0\u4e3a\u5b83\u7981\u6b62\u4f7f\u7528\u5173\u8054\u8f85\u52a9\u5bf9\u8c61\u7c7b %3$s \u6240\u9700\u7684\u5c5e\u6027\u7c7b\u578b %2$s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_IS_OPERATIONAL_273=The definition \
### for attribute type %s is invalid because it is declared COLLECTIVE but does \
### not have a usage of userApplications
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NO_USER_MOD_NOT_OPERATIONAL_274=The \
### definition for attribute type %s is invalid because it is declared \
### NO-USER-MODIFICATION but does not have an operational usage
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_FRACTION_CHAR_275=The \
### provided value %s is not a valid generalized time value because it contains \
### illegal character %s in the fraction component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_EMPTY_FRACTION_276=The provided \
### value %s is not a valid generalized time value because it does not contain at \
### least one digit after the period to use as the fractional component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NO_TIME_ZONE_INFO_277=The provided \
### value %s is not a valid generalized time value because it does not end with \
### 'Z' or a time zone offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_TIME_278=The provided value \
### %s is not a valid generalized time value because it represents an invalid \
### time (e.g., a date that does not exist):  %s
NOTICE_SCHEMA_IMPORT_FAILED_279=\u65e0\u6cd5\u5bfc\u5165\u6a21\u5f0f\u5143\u7d20: %s, %s
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_LOCALE_280=\u5339\u914d\u89c4\u5219\u6761\u76ee %s \u4e0b\u7684\u5bf9\u7167\u89c4\u5219 %s \u65e0\u6548\uff0c\u56e0\u4e3a JVM \u4e0d\u652f\u6301\u8bed\u8a00\u73af\u5883 %s
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_FORMAT_281=\u63d0\u4f9b\u7684\u5bf9\u7167\u89c4\u5219 %s \u4e0d\u5305\u542b\u6709\u6548\u7684 OID \u683c\u5f0f:LOCALE
MILD_ERR_ATTR_SYNTAX_DN_INVALID_REQUIRES_ESCAPE_CHAR_282=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u6807\u8bc6\u540d\uff0c\u56e0\u4e3a\u4e00\u4e2a\u5c5e\u6027\u503c\u4ee5\u5728\u9700\u8981\u907f\u5f00\u7684\u4f4d\u7f6e %d \u5904\u7684\u4e00\u4e2a\u5b57\u7b26\u5f00\u59cb
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_CHAR_283=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u5c5e\u6027\u7c7b\u578b\u5b9a\u4e49\uff0c\u56e0\u4e3a\u5c5e\u6027\u7c7b\u578b\u540d\u79f0\u4e2d\u4e0d\u5141\u8bb8\u4f7f\u7528\u4f4d\u7f6e %d \u5904\u7684\u5b57\u7b26 '%c'
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_284=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u5c5e\u6027\u7c7b\u578b\u5b9a\u4e49\uff0c\u56e0\u4e3a\u5c5e\u6027\u7c7b\u578b\u540d\u79f0\u4e2d\u4e0d\u5141\u8bb8\u4f7f\u7528\u4e0b\u5212\u7ebf\u5b57\u7b26\uff0c\u9664\u975e\u542f\u7528\u4e86 %s \u914d\u7f6e\u9009\u9879
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_285=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u5c5e\u6027\u7c7b\u578b\u5b9a\u4e49\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5c06\u8fde\u5b57\u7b26\u4f5c\u4e3a\u5c5e\u6027\u7c7b\u578b\u540d\u79f0\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_286=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u5c5e\u6027\u7c7b\u578b\u5b9a\u4e49\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5c06\u4e0b\u5212\u7ebf\u5b57\u7b26\u4f5c\u4e3a\u5c5e\u6027\u7c7b\u578b\u540d\u79f0\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26\uff0c\u5373\u4f7f\u542f\u7528\u4e86 %s \u914d\u7f6e\u9009\u9879
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_287=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u5c5e\u6027\u7c7b\u578b\u5b9a\u4e49\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5c06\u6570\u5b57 '%c' \u4f5c\u4e3a\u5c5e\u6027\u7c7b\u578b\u540d\u79f0\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26\uff0c\u9664\u975e\u5c06\u540d\u79f0\u6307\u5b9a\u4e3a OID \u6216\u542f\u7528\u4e86 %s \u914d\u7f6e\u9009\u9879
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_CHAR_288=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u5bf9\u8c61\u7c7b\u5b9a\u4e49\uff0c\u56e0\u4e3a\u5bf9\u8c61\u7c7b\u540d\u79f0\u4e2d\u4e0d\u5141\u8bb8\u4f7f\u7528\u4f4d\u7f6e %d \u5904\u7684\u5b57\u7b26 '%c'
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_289=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u5bf9\u8c61\u7c7b\u5b9a\u4e49\uff0c\u56e0\u4e3a\u5bf9\u8c61\u7c7b\u540d\u79f0\u4e2d\u4e0d\u5141\u8bb8\u4f7f\u7528\u4e0b\u5212\u7ebf\u5b57\u7b26\uff0c\u9664\u975e\u542f\u7528\u4e86 %s \u914d\u7f6e\u9009\u9879
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_290=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u5bf9\u8c61\u7c7b\u5b9a\u4e49\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5c06\u8fde\u5b57\u7b26\u4f5c\u4e3a\u5bf9\u8c61\u7c7b\u540d\u79f0\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_291=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u5bf9\u8c61\u7c7b\u5b9a\u4e49\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5c06\u4e0b\u5212\u7ebf\u5b57\u7b26\u4f5c\u4e3a\u5bf9\u8c61\u7c7b\u540d\u79f0\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26\uff0c\u5373\u4f7f\u542f\u7528\u4e86 %s \u914d\u7f6e\u9009\u9879
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_292=\u65e0\u6cd5\u5c06\u63d0\u4f9b\u7684\u503c "%s" \u89e3\u6790\u4e3a\u6709\u6548\u7684\u5bf9\u8c61\u7c7b\u5b9a\u4e49\uff0c\u56e0\u4e3a\u4e0d\u5141\u8bb8\u5c06\u6570\u5b57 '%c' \u4f5c\u4e3a\u5bf9\u8c61\u7c7b\u540d\u79f0\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26\uff0c\u9664\u975e\u5c06\u540d\u79f0\u6307\u5b9a\u4e3a OID \u6216\u542f\u7528\u4e86 %s \u914d\u7f6e\u9009\u9879
sdk/src/com/sun/opends/sdk/util/messages_zh_TW.properties
New file
@@ -0,0 +1,531 @@
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License").  You may not use this file except in compliance
# with the License.
#
# You can obtain a copy of the license at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE
# or https://OpenDS.dev.java.net/OpenDS.LICENSE.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at
# trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
# add the following below this CDDL HEADER, with the fields enclosed
# by brackets "[]" replaced with your own identifying information:
#      Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#      Copyright 2009 Sun Microsystems, Inc.
#
# Global directives
#
global.ordinal=-1
#
# Format string definitions
#
# Keys must be formatted as follows:
#
# [DESCRIPTION]
#
# where:
#
# DESCRIPTION is an upper case string providing a hint as to the context of
# the message in upper case with the underscore ('_') character serving as
# word separator
#
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_APPROXIMATE_MATCHING_RULE_1=Unable to retrieve \
### approximate matching rule %s used as the default for the %s attribute syntax. \
### Approximate matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_EQUALITY_MATCHING_RULE_2=Unable to retrieve \
### equality matching rule %s used as the default for the %s attribute syntax. \
### Equality matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_ORDERING_MATCHING_RULE_3=Unable to retrieve \
### ordering matching rule %s used as the default for the %s attribute syntax. \
### Ordering matches will not be allowed by default for attributes with this \
### syntax
###SEVERE_ERR_ATTR_SYNTAX_UNKNOWN_SUBSTRING_MATCHING_RULE_4=Unable to retrieve \
### substring matching rule %s used as the default for the %s attribute syntax. \
### Substring matching will not be allowed by default for attributes with this \
### syntax
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN_5=The provided value "%s" is not \
### allowed for attributes with a Boolean syntax.  The only allowed values are \
### 'TRUE' and 'FALSE'
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT_6=The provided value "%s" is too \
### short to be a valid bit string.  A bit string must be a series of binary \
### digits surrounded by single quotes and followed by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED_7=The provided value "%s" is not \
### a valid bit string because it is not surrounded by single quotes and followed \
### by a capital letter B
###SEVERE_WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT_8=The provided value "%s" is \
### not a valid bit string because '%s' is not a valid binary digit
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_INVALID_LENGTH_9=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u4e0d\u662f\u6709\u6548\u7684\u570b\u5bb6/\u5730\u5340\u5b57\u4e32\uff0c\u56e0\u70ba\u5176\u9577\u5ea6\u4e0d\u662f\u6b63\u597d\u5169\u500b\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_COUNTRY_STRING_NOT_PRINTABLE_10=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u4e0d\u662f\u6709\u6548\u7684\u570b\u5bb6/\u5730\u5340\u5b57\u4e32\uff0c\u56e0\u70ba\u5176\u4e2d\u5305\u542b\u4e00\u6216\u591a\u500b\u4e0d\u53ef\u5217\u5370\u7684\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_NO_ELEMENTS_11=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u4e0d\u662f\u6709\u6548\u7684\u50b3\u9001\u65b9\u6cd5\u503c\uff0c\u56e0\u70ba\u5176\u4e2d\u4e0d\u5305\u542b\u4efb\u4f55\u5143\u7d20
MILD_ERR_ATTR_SYNTAX_DELIVERY_METHOD_INVALID_ELEMENT_12=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u4e0d\u662f\u6709\u6548\u7684\u50b3\u9001\u65b9\u6cd5\u503c\uff0c\u56e0\u70ba\u300c%s\u300d\u4e0d\u662f\u6709\u6548\u7684\u65b9\u6cd5
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_TOO_SHORT_13=The provided value "%s" \
### is too short to be a valid generalized time value
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_YEAR_14=The provided value \
### "%s" is not a valid generalized time value because the '%s' character is not \
### allowed in the century or year specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MONTH_15=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid month \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_DAY_16=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid day \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_HOUR_17=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid hour \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_MINUTE_18=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid minute \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SECOND_19=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid second \
### specification
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_SUBSECOND_20=The provided \
### value "%s" is not a valid generalized time value because the sub-second \
### component is not valid (between 1 and 3 numeric digits)
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_LONG_SUBSECOND_21=The provided value \
### "%s" is not a valid generalized time value because the sub-second value may \
### not contain more than three digits
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_OFFSET_22=The provided value \
### "%s" is not a valid generalized time value because "%s" is not a valid GMT \
### offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_INVALID_CHAR_23=The provided value \
### "%s" is not a valid generalized time value because it contains an invalid \
### character '%s' at position %d
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_CANNOT_PARSE_24=The provided value \
### "%s" could not be parsed as a valid generalized time:  %s
MILD_ERR_ATTR_SYNTAX_DN_INVALID_25=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31: %s
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_COMMA_26=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u6700\u5f8c\u4e00\u500b\u975e\u7a7a\u683c\u5b57\u5143\u70ba\u9017\u865f\u6216\u5206\u865f
MILD_ERR_ATTR_SYNTAX_DN_ATTR_START_WITH_DIGIT_27=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u6578\u5b57\u300c%s\u300d\u4e0d\u5f97\u505a\u70ba\u5c6c\u6027\u540d\u7a31\u4e2d\u7684\u7b2c\u4e00\u500b\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_CHAR_28=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5c6c\u6027\u540d\u7a31\u4e2d\u4e0d\u5f97\u6709\u4f4d\u7f6e %3$d \u7684\u5b57\u5143\u300c%2$c\u300d
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_UNDERSCORE_CHAR_29=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5c6c\u6027\u540d\u7a31\u4e2d\u4e0d\u5f97\u6709\u5e95\u7dda\u5b57\u5143\uff0c\u9664\u975e\u5df2\u555f\u7528 %s \u914d\u7f6e\u9078\u9805
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DASH_30=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u9023\u5b57\u7b26\u5b57\u5143\u4e0d\u5f97\u505a\u70ba\u5c6c\u6027\u540d\u7a31\u7684\u7b2c\u4e00\u500b\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_UNDERSCORE_31=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5373\u4f7f\u5df2\u555f\u7528 %s \u914d\u7f6e\u9078\u9805\uff0c\u5e95\u7dda\u5b57\u5143\u4e5f\u4e0d\u5f97\u505a\u70ba\u5c6c\u6027\u540d\u7a31\u7684\u7b2c\u4e00\u500b\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_INITIAL_DIGIT_32=The provided value "%s" could not be parsed as a valid distinguished name because the digit '%c' is not allowed as the first character of an attribute name unless the name is specified as an OID or the %s configuration option is enabled
MILD_ERR_ATTR_SYNTAX_DN_ATTR_NO_NAME_33=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5176\u4e2d\u6240\u542b\u7684 RDN \u542b\u6709\u7a7a\u7684\u5c6c\u6027\u540d\u7a31
MILD_ERR_ATTR_SYNTAX_DN_ATTR_ILLEGAL_PERIOD_34=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5256\u6790\u7684\u5c6c\u6027\u540d\u7a31 %s \u5305\u542b\u4e00\u500b\u5c0f\u6578\u9ede\u865f\uff0c\u4f46\u8a72\u540d\u7a31\u4f3c\u4e4e\u4e0d\u662f\u6709\u6548\u7684 OID
MILD_ERR_ATTR_SYNTAX_DN_END_WITH_ATTR_NAME_35=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u6700\u5f8c\u4e00\u500b\u975e\u7a7a\u683c\u5b57\u5143\u662f\u5c6c\u6027\u540d\u7a31\u300c%s\u300d\u7684\u4e00\u90e8\u5206
MILD_ERR_ATTR_SYNTAX_DN_NO_EQUAL_36=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5c6c\u6027\u540d\u7a31\u300c%s\u300d\u5f8c\u7684\u4e0b\u4e00\u500b\u975e\u7a7a\u683c\u5b57\u5143\u61c9\u70ba\u7b49\u865f\uff0c\u4f46\u5be6\u969b\u4e0a\u662f\u300c%c\u300d
MILD_ERR_ATTR_SYNTAX_DN_INVALID_CHAR_37=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u4f4d\u7f6e %3$d \u7684\u5b57\u5143\u300c%2$c\u300d\u7121\u6548
MILD_ERR_ATTR_SYNTAX_DN_HEX_VALUE_TOO_SHORT_38=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5c6c\u6027\u503c\u662f\u4ee5\u4e95\u5b57\u865f (#) \u958b\u982d\uff0c\u4f46\u4e26\u672a\u7dca\u63a5\u8457\u5169\u500b\u5341\u516d\u9032\u5236\u6578\u5b57\u7684\u6b63\u500d\u6578
MILD_ERR_ATTR_SYNTAX_DN_INVALID_HEX_DIGIT_39=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5c6c\u6027\u503c\u662f\u4ee5\u4e95\u5b57\u865f (#) \u958b\u982d\uff0c\u4f46\u5176\u4e2d\u542b\u6709\u4e26\u975e\u6709\u6548\u5341\u516d\u9032\u5236\u6578\u5b57\u7684\u5b57\u5143 %c
MILD_ERR_ATTR_SYNTAX_DN_ATTR_VALUE_DECODE_FAILURE_40=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5728\u5617\u8a66\u5f9e\u5176\u4e2d\u4e00\u500b RDN \u5143\u4ef6\u5256\u6790\u5c6c\u6027\u503c\u6642\uff0c\u767c\u751f\u672a\u9810\u671f\u7684\u5931\u6557:\u300c%s\u300d
MILD_ERR_ATTR_SYNTAX_DN_UNMATCHED_QUOTE_41=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5176\u4e2d\u4e00\u500b RDN \u5143\u4ef6\u6240\u542b\u4e4b\u52a0\u4e0a\u5f15\u865f\u7684\u503c\uff0c\u6c92\u6709\u5c0d\u61c9\u7684\u53f3\u96d9\u5f15\u865f
MILD_ERR_ATTR_SYNTAX_DN_ESCAPED_HEX_VALUE_INVALID_42=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u8fa8\u5225\u540d\u7a31\uff0c\u56e0\u70ba\u5176\u4e2d\u4e00\u500b RDN \u5143\u4ef6\u6240\u5305\u542b\u7684\u503c\uff0c\u542b\u6709\u672a\u7dca\u63a5\u8457\u7b2c\u4e8c\u500b\u5341\u516d\u9032\u5236\u6578\u5b57\u7684\u9000\u51fa\u5341\u516d\u9032\u5236\u6578\u5b57
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INITIAL_ZERO_43=The provided value "%s" could \
### not be parsed as a valid integer because the first digit may not be zero \
### unless it is the only digit
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_MISPLACED_DASH_44=The provided value "%s" \
### could not be parsed as a valid integer because the dash may only appear if it \
### is the first character of the value followed by one or more digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_INVALID_CHARACTER_45=The provided value "%s" \
### could not be parsed as a valid integer because character '%c' at position %d \
### is not allowed in an integer value
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_EMPTY_VALUE_46=The provided value "%s" could \
### not be parsed as a valid integer because it did not contain any digits
###SEVERE_WARN_ATTR_SYNTAX_INTEGER_DASH_NEEDS_VALUE_47=The provided value "%s" \
### could not be parsed as a valid integer because it contained only a dash not \
### followed by an integer value
MILD_ERR_ATTR_SYNTAX_OID_NO_VALUE_48=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 OID\uff0c\u56e0\u70ba\u5176\u4e2d\u4e0d\u5305\u542b\u4efb\u4f55\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_OID_ILLEGAL_CHARACTER_49=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 OID\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %d \u6709\u975e\u6cd5\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_OID_CONSECUTIVE_PERIODS_50=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 OID\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %d \u6216\u9644\u8fd1\u6709\u5169\u500b\u9023\u7e8c\u7684\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_OID_ENDS_WITH_PERIOD_51=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 OID\uff0c\u56e0\u70ba\u5176\u7d50\u5c3e\u70ba\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE_52=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u5c6c\u6027\u985e\u578b\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684\u6216\u50c5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_OPEN_PARENTHESIS_53=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u985e\u578b\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u5de6\u62ec\u5f27\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f\u300c%s\u300d\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_TRUNCATED_VALUE_54=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u985e\u578b\u8aaa\u660e\uff0c\u56e0\u70ba\u5df2\u9054\u8a72\u503c\u7d50\u5c3e\uff0c\u4f46\u76ee\u9304\u4f3a\u670d\u5668\u9810\u671f\u61c9\u6709\u66f4\u591a\u63d0\u4f9b\u7684\u8cc7\u6599
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_DOUBLE_PERIOD_IN_NUMERIC_OID_55=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u985e\u578b\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %d \u542b\u6709\u5169\u500b\u9023\u7e8c\u7684\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_NUMERIC_OID_56=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u985e\u578b\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_IN_STRING_OID_57=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u985e\u578b\u8aaa\u660e\uff0c\u56e0\u70ba\u975e\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_ILLEGAL_CHAR_58=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u985e\u578b\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_UNEXPECTED_CLOSE_PARENTHESIS_59=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u985e\u578b\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %d \u542b\u6709\u672a\u9810\u671f\u7684\u53f3\u62ec\u5f27
MILD_ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_60=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u985e\u578b\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u8a18\u865f %s \u5f8c\u61c9\u4ee5\u55ae\u5f15\u865f\u505a\u70ba\u7b2c\u4e00\u500b\u975e\u7a7a\u767d\u5b57\u5143\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f %s \u5b57\u5143
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUPERIOR_TYPE_61=The definition for \
### the attribute type with OID %s declared a superior type with an OID of %s. \
### No attribute type with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_APPROXIMATE_MR_62=The definition for \
### the attribute type with OID %s declared that approximate matching should be \
### performed using the matching rule "%s".  No such approximate matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_EQUALITY_MR_63=The definition for \
### the attribute type with OID %s declared that equality matching should be \
### performed using the matching rule "%s".  No such equality matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_ORDERING_MR_64=The definition for \
### the attribute type with OID %s declared that ordering matching should be \
### performed using the matching rule "%s".  No such ordering matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SUBSTRING_MR_65=The definition for \
### the attribute type with OID %s declared that substring matching should be \
### performed using the matching rule "%s".  No such substring matching rule is \
### configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_UNKNOWN_SYNTAX_66=The definition for the \
### attribute type with OID %s declared that it should have a syntax with OID %s. \
### No such syntax is configured for use in the Directory Server
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE_67=The definition \
### for the attribute type with OID %s declared that it should have an attribute \
### usage of %s.  This is an invalid usage
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_EXPECTED_QUOTE_AT_POS_68=The provided value \
### "%s" could not be parsed as an attribute type description because a single \
### quote was expected at position %d but the character %s was found instead
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE_69=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u7269\u4ef6\u985e\u5225\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684\u6216\u50c5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS_70=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u7269\u4ef6\u985e\u5225\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u5de6\u62ec\u5f27\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f\u300c%s\u300d\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_TRUNCATED_VALUE_71=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u7269\u4ef6\u985e\u5225\u8aaa\u660e\uff0c\u56e0\u70ba\u5df2\u9054\u8a72\u503c\u7d50\u5c3e\uff0c\u4f46\u76ee\u9304\u4f3a\u670d\u5668\u9810\u671f\u61c9\u6709\u66f4\u591a\u63d0\u4f9b\u7684\u8cc7\u6599
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_DOUBLE_PERIOD_IN_NUMERIC_OID_72=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u7269\u4ef6\u985e\u5225\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %d \u542b\u6709\u5169\u500b\u9023\u7e8c\u7684\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_NUMERIC_OID_73=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u7269\u4ef6\u985e\u5225\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_IN_STRING_OID_74=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u7269\u4ef6\u985e\u5225\u8aaa\u660e\uff0c\u56e0\u70ba\u975e\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_ILLEGAL_CHAR_75=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u7269\u4ef6\u985e\u5225\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_UNEXPECTED_CLOSE_PARENTHESIS_76=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u7269\u4ef6\u985e\u5225\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %d \u542b\u6709\u672a\u9810\u671f\u7684\u53f3\u62ec\u5f27
MILD_ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_77=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u7269\u4ef6\u985e\u5225\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u8a18\u865f %s \u5f8c\u61c9\u4ee5\u55ae\u5f15\u865f\u505a\u70ba\u7b2c\u4e00\u500b\u975e\u7a7a\u767d\u5b57\u5143\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f %s \u5b57\u5143
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_SUPERIOR_CLASS_78=The definition \
### for the objectclass with OID %s declared a superior objectclass with an OID \
### of %s.  No objectclass with this OID exists in the server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_QUOTE_AT_POS_79=The provided \
### value "%s" could not be parsed as an objectclass description because a single \
### quote was expected at position %d but the character %s was found instead
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_REQUIRED_ATTR_80=The definition \
### for the objectclass with OID %s declared that it should include required \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_UNKNOWN_OPTIONAL_ATTR_81=The definition \
### for the objectclass with OID %s declared that it should include optional \
### attribute "%s".  No attribute type matching this name or OID exists in the \
### server schema
###SEVERE_WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER_82=The provided value "%s" \
### cannot be parsed as a valid IA5 string because it contains an illegal \
### character "%s" that is not allowed in the IA5 (ASCII) character set
INFO_ATTR_SYNTAX_TELEPHONE_DESCRIPTION_STRICT_MODE_83=\u9019\u8868\u793a\u96fb\u8a71\u865f\u78bc\u5c6c\u6027\u8a9e\u6cd5\u662f\u5426\u61c9\u4f7f\u7528\u56b4\u683c\u6a21\u5f0f\uff0c\u800c\u50c5\u63a5\u53d7 ITU-T E.123 \u683c\u5f0f\u7684\u503c\u3002\u82e5\u555f\u7528\u6b64\u9805\u76ee\uff0c\u5c07\u6703\u62d2\u7d55\u4efb\u4f55\u672a\u4f7f\u7528\u6b64\u683c\u5f0f\u7684\u503c\u3002\u82e5\u505c\u7528\u6b64\u9805\u76ee\uff0c\u5247\u6703\u63a5\u53d7\u4efb\u4f55\u503c\uff0c\u4f46\u5728\u57f7\u884c\u76f8\u7b26\u4f5c\u696d\u6642\u53ea\u6703\u8003\u91cf\u6578\u5b57
###SEVERE_WARN_ATTR_SYNTAX_TELEPHONE_CANNOT_DETERMINE_STRICT_MODE_84=An error \
### occurred while trying to retrieve attribute \
### ds-cfg-strict-format from configuration entry %s:  %s.  The \
### Directory Server will not enforce strict compliance to the ITU-T E.123 format \
### for telephone number values
MILD_ERR_ATTR_SYNTAX_TELEPHONE_EMPTY_85=\u63d0\u4f9b\u7684\u503c\u4e0d\u662f\u6709\u6548\u7684\u96fb\u8a71\u865f\u78bc\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684\u6216\u7a7a\u503c
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_PLUS_86=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u4e0d\u662f\u6709\u6548\u7684\u96fb\u8a71\u865f\u78bc\uff0c\u56e0\u70ba\u5df2\u555f\u7528\u56b4\u683c\u7684\u96fb\u8a71\u865f\u78bc\u6aa2\u67e5\uff0c\u4e14\u8a72\u503c\u4e26\u975e\u4ee5\u52a0\u865f\u958b\u982d\uff0c\u800c\u4e0d\u7b26\u5408 ITU-T E.123 \u898f\u683c
MILD_ERR_ATTR_SYNTAX_TELEPHONE_ILLEGAL_CHAR_87=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u4e0d\u662f\u6709\u6548\u7684\u96fb\u8a71\u865f\u78bc\uff0c\u56e0\u70ba\u5df2\u555f\u7528\u56b4\u683c\u7684\u96fb\u8a71\u865f\u78bc\u6aa2\u67e5\uff0c\u800c ITU-T E.123 \u898f\u683c\u4e0d\u5141\u8a31\u4f4d\u7f6e %3$d \u7684\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_TELEPHONE_NO_DIGITS_88=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u4e0d\u662f\u6709\u6548\u7684\u96fb\u8a71\u865f\u78bc\uff0c\u56e0\u70ba\u5176\u4e2d\u4e0d\u5305\u542b\u4efb\u4f55\u6578\u5b57
INFO_ATTR_SYNTAX_TELEPHONE_UPDATED_STRICT_MODE_89=\u5728\u914d\u7f6e\u9805\u76ee %2$s \u4e2d\uff0c\u5df2\u5c07\u53ef\u8868\u793a\u662f\u5426\u4f7f\u7528\u56b4\u683c\u96fb\u8a71\u865f\u78bc\u8a9e\u6cd5\u6aa2\u67e5\u7684\u914d\u7f6e\u5c6c\u6027 ds-cfg-strict-format \u7684\u503c\u66f4\u65b0\u70ba %1$s
###SEVERE_WARN_ATTR_SYNTAX_NUMERIC_STRING_ILLEGAL_CHAR_90=The provided value \
### "%s" is not a valid numeric string because it contained character %s at \
### position %d that was neither a digit nor a space
MILD_ERR_ATTR_SYNTAX_NUMERIC_STRING_EMPTY_VALUE_91=\u63d0\u4f9b\u7684\u503c\u4e0d\u662f\u6709\u6548\u7684\u6578\u503c\u5b57\u4e32\uff0c\u56e0\u70ba\u5176\u4e2d\u4e0d\u5305\u542b\u4efb\u4f55\u5b57\u5143\u3002\u6578\u503c\u5b57\u4e32\u503c\u5fc5\u9808\u5305\u542b\u81f3\u5c11\u4e00\u500b\u6578\u5b57\u6216\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EMPTY_VALUE_92=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684\u6216\u50c5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_OPEN_PARENTHESIS_93=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u5de6\u62ec\u5f27\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f\u300c%s\u300d\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TRUNCATED_VALUE_94=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u5df2\u9054\u8a72\u503c\u7d50\u5c3e\uff0c\u4f46\u76ee\u9304\u4f3a\u670d\u5668\u9810\u671f\u61c9\u6709\u66f4\u591a\u63d0\u4f9b\u7684\u8cc7\u6599
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_DOUBLE_PERIOD_IN_NUMERIC_OID_95=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %d \u542b\u6709\u5169\u500b\u9023\u7e8c\u7684\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_NUMERIC_OID_96=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_IN_STRING_OID_97=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u975e\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_UNEXPECTED_CLOSE_PARENTHESIS_98=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %d \u542b\u6709\u672a\u9810\u671f\u7684\u53f3\u62ec\u5f27
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_TOKEN_99=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u5617\u8a66\u5f9e\u4f4d\u7f6e %d \u6216\u9644\u8fd1\u7684\u5b57\u4e32\u8b80\u53d6\u300cDESC\u300d\u8a18\u865f\u6642\uff0c\u767c\u751f\u672a\u9810\u671f\u7684\u932f\u8aa4: %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_TOKEN_NOT_DESC_100=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u9810\u671f\u61c9\u70ba\u300cDESC\u300d\u8a18\u865f\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f\u5b57\u4e32\u300c%s\u300d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_CANNOT_READ_DESC_VALUE_101=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u5617\u8a66\u5f9e\u4f4d\u7f6e %d \u6216\u9644\u8fd1\u7684\u5b57\u4e32\u8b80\u53d6\u300cDESC\u300d\u8a18\u865f\u7684\u503c\u6642\uff0c\u767c\u751f\u672a\u9810\u671f\u7684\u932f\u8aa4: %s
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_CLOSE_PARENTHESIS_102=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u53f3\u62ec\u5f27\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f\u300c%s\u300d\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_ILLEGAL_CHAR_AFTER_CLOSE_103=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u53f3\u62ec\u5f27\u5f8c\u7684\u4f4d\u7f6e %3$d \u627e\u5230\u975e\u6cd5\u5b57\u5143 %2$s
###SEVERE_WARN_ATTR_SYNTAX_ATTRSYNTAX_EXPECTED_QUOTE_AT_POS_104=The provided \
### value "%s" could not be parsed as an attribute syntax description because a \
### single quote was expected at position %d but the character %s was found \
### instead
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_EMPTY_VALUE_105=The provided value \
### could not be parsed as a printable string because it was null or empty.  A \
### printable string must contain at least one character
###SEVERE_WARN_ATTR_SYNTAX_PRINTABLE_STRING_ILLEGAL_CHARACTER_106=The provided \
### value "%s" could not be parsed as a printable string because it contained an \
### invalid character %s at position %d
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_ONLY_WILDCARD_107=The provided value "*" \
### could not be parsed as a substring assertion because it consists only of a \
### wildcard character and zero-length substrings are not allowed
###SEVERE_WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS_108=The provided \
### value "%s" could not be parsed as a substring assertion because it contains \
### consecutive wildcard characters at position %d and zero-length substrings are \
### not allowed
MILD_ERR_ATTR_SYNTAX_UTC_TIME_TOO_SHORT_109=\u63d0\u4f9b\u7684\u503c %s \u592a\u77ed\uff0c\u7121\u6cd5\u505a\u70ba\u6709\u6548\u7684 UTC \u6642\u9593\u503c
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_YEAR_110=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u6642\u9593\u503c\uff0c\u56e0\u70ba\u4e16\u7d00\u6216\u5e74\u4efd\u898f\u683c\u4e2d\u4e0d\u5141\u8a31 %s \u5b57\u5143
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MONTH_111=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u6642\u9593\u503c\uff0c\u56e0\u70ba %s \u4e0d\u662f\u6709\u6548\u7684\u6708\u4efd\u898f\u683c
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_DAY_112=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u6642\u9593\u503c\uff0c\u56e0\u70ba %s \u4e0d\u662f\u6709\u6548\u7684\u65e5\u671f\u898f\u683c
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_HOUR_113=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u6642\u9593\u503c\uff0c\u56e0\u70ba %s \u4e0d\u662f\u6709\u6548\u7684\u5c0f\u6642\u898f\u683c
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_MINUTE_114=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u6642\u9593\u503c\uff0c\u56e0\u70ba %s \u4e0d\u662f\u6709\u6548\u7684\u5206\u9418\u898f\u683c
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_CHAR_115=\u63d0\u4f9b\u7684\u503c %1$s \u4e0d\u662f\u6709\u6548\u7684 UTC \u6642\u9593\u503c\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u7121\u6548\u7684\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_SECOND_116=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u6642\u9593\u503c\uff0c\u56e0\u70ba %s \u4e0d\u662f\u6709\u6548\u7684\u79d2\u9418\u898f\u683c
MILD_ERR_ATTR_SYNTAX_UTC_TIME_INVALID_OFFSET_117=\u63d0\u4f9b\u7684\u503c %s \u4e0d\u662f\u6709\u6548\u7684 UTC \u6642\u9593\u503c\uff0c\u56e0\u70ba %s \u4e0d\u662f\u6709\u6548\u7684 GMT \u504f\u79fb\u91cf
MILD_ERR_ATTR_SYNTAX_UTC_TIME_CANNOT_PARSE_118=\u63d0\u4f9b\u7684\u503c %s \u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 UTC \u6642\u9593: %s
MILD_ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE_119=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 DIT \u5167\u5bb9\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684\u6216\u50c5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS_120=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u5167\u5bb9\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u5de6\u62ec\u5f27\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f\u300c%s\u300d\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_DCR_TRUNCATED_VALUE_121=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u5167\u5bb9\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u5df2\u9054\u8a72\u503c\u7d50\u5c3e\uff0c\u4f46\u76ee\u9304\u4f3a\u670d\u5668\u9810\u671f\u61c9\u6709\u66f4\u591a\u63d0\u4f9b\u7684\u8cc7\u6599
MILD_ERR_ATTR_SYNTAX_DCR_DOUBLE_PERIOD_IN_NUMERIC_OID_122=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u5167\u5bb9\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %d \u542b\u6709\u5169\u500b\u9023\u7e8c\u7684\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_NUMERIC_OID_123=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u5167\u5bb9\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_IN_STRING_OID_124=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u5167\u5bb9\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u975e\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_DCR_UNEXPECTED_CLOSE_PARENTHESIS_125=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u5167\u5bb9\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %d \u542b\u6709\u672a\u9810\u671f\u7684\u53f3\u62ec\u5f27
MILD_ERR_ATTR_SYNTAX_DCR_ILLEGAL_CHAR_126=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u5167\u5bb9\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_STRUCTURAL_CLASS_127=DIT \u5167\u5bb9\u898f\u5247\u300c%s\u300d\u8207\u672a\u5b9a\u7fa9\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\u7684\u7d50\u69cb\u7269\u4ef6\u985e\u5225 %s \u76f8\u95dc\u806f
MILD_ERR_ATTR_SYNTAX_DCR_STRUCTURAL_CLASS_NOT_STRUCTURAL_128=DIT \u5167\u5bb9\u898f\u5247\u300c%s\u300d\u8207 OID \u70ba %s \u7684\u7269\u4ef6\u985e\u5225 (%s) \u76f8\u95dc\u806f\u3002\u6b64\u7269\u4ef6\u985e\u5225\u5b58\u5728\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\uff0c\u4f46\u5df2\u5b9a\u7fa9\u70ba %s \u800c\u975e\u7d50\u69cb
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_AUXILIARY_CLASS_129=DIT \u5167\u5bb9\u898f\u5247\u300c%s\u300d\u8207\u672a\u5b9a\u7fa9\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\u7684\u8f14\u52a9\u7269\u4ef6\u985e\u5225 %s \u76f8\u95dc\u806f
MILD_ERR_ATTR_SYNTAX_DCR_AUXILIARY_CLASS_NOT_AUXILIARY_130=DIT \u5167\u5bb9\u898f\u5247\u300c%s\u300d\u8207\u8f14\u52a9\u7269\u4ef6\u985e\u5225 %s \u76f8\u95dc\u806f\u3002\u6b64\u7269\u4ef6\u985e\u5225\u5b58\u5728\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\uff0c\u4f46\u5df2\u5b9a\u7fa9\u70ba %s \u800c\u975e\u8f14\u52a9
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_REQUIRED_ATTR_131=DIT \u5167\u5bb9\u898f\u5247\u300c%s\u300d\u8207\u672a\u5b9a\u7fa9\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\u7684\u5fc5\u8981\u5c6c\u6027\u985e\u578b %s \u76f8\u95dc\u806f
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_OPTIONAL_ATTR_132=DIT \u5167\u5bb9\u898f\u5247\u300c%s\u300d\u8207\u672a\u5b9a\u7fa9\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\u7684\u9078\u64c7\u6027\u5c6c\u6027\u985e\u578b %s \u76f8\u95dc\u806f
MILD_ERR_ATTR_SYNTAX_DCR_UNKNOWN_PROHIBITED_ATTR_133=DIT \u5167\u5bb9\u898f\u5247\u300c%s\u300d\u8207\u672a\u5b9a\u7fa9\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\u7684\u7981\u6b62\u5c6c\u6027\u985e\u578b %s \u76f8\u95dc\u806f
MILD_ERR_ATTR_SYNTAX_DCR_EXPECTED_QUOTE_AT_POS_134=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u5167\u5bb9\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u55ae\u5f15\u865f\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f %s \u5b57\u5143
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EMPTY_VALUE_135=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u540d\u7a31\u8868\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684\u6216\u50c5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_OPEN_PARENTHESIS_136=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u540d\u7a31\u8868\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u5de6\u62ec\u5f27\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f\u300c%c\u300d\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_NAME_FORM_TRUNCATED_VALUE_137=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u540d\u7a31\u8868\u8aaa\u660e\uff0c\u56e0\u70ba\u5df2\u9054\u8a72\u503c\u7d50\u5c3e\uff0c\u4f46\u76ee\u9304\u4f3a\u670d\u5668\u9810\u671f\u61c9\u6709\u66f4\u591a\u63d0\u4f9b\u7684\u8cc7\u6599
MILD_ERR_ATTR_SYNTAX_NAME_FORM_DOUBLE_PERIOD_IN_NUMERIC_OID_138=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u540d\u7a31\u8868\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %d \u542b\u6709\u5169\u500b\u9023\u7e8c\u7684\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_NUMERIC_OID_139=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u540d\u7a31\u8868\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$c
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_IN_STRING_OID_140=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u540d\u7a31\u8868\u8aaa\u660e\uff0c\u56e0\u70ba\u975e\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$c
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNEXPECTED_CLOSE_PARENTHESIS_141=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u540d\u7a31\u8868\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %d \u542b\u6709\u672a\u9810\u671f\u7684\u53f3\u62ec\u5f27
MILD_ERR_ATTR_SYNTAX_NAME_FORM_ILLEGAL_CHAR_142=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u540d\u7a31\u8868\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$c
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS_143=\u540d\u7a31\u8868\u8aaa\u660e\u300c%s\u300d\u8207\u672a\u5b9a\u7fa9\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\u7684\u7d50\u69cb\u7269\u4ef6\u985e\u5225 %s \u76f8\u95dc\u806f
MILD_ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL_144=\u540d\u7a31\u8868\u8aaa\u660e\u300c%s\u300d\u8207 OID \u70ba %s \u7684\u7269\u4ef6\u985e\u5225 (%s) \u76f8\u95dc\u806f\u3002\u6b64\u7269\u4ef6\u985e\u5225\u5b58\u5728\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\uff0c\u4f46\u5df2\u5b9a\u7fa9\u70ba %s \u800c\u975e\u7d50\u69cb
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR_145=OID \u70ba %s \u7684\u540d\u7a31\u8868\u5b9a\u7fa9\u5ba3\u544a\u4e86\u5b83\u61c9\u5305\u542b\u5fc5\u8981\u5c6c\u6027\u300c%s\u300d\u3002\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\u6c92\u6709\u7b26\u5408\u6b64\u540d\u7a31\u6216 OID \u7684\u5c6c\u6027\u985e\u578b\u5b58\u5728
MILD_ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR_146=OID \u70ba %s \u7684\u540d\u7a31\u8868\u5b9a\u7fa9\u5ba3\u544a\u4e86\u5b83\u61c9\u5305\u542b\u9078\u64c7\u6027\u5c6c\u6027\u300c%s\u300d\u3002\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\u6c92\u6709\u7b26\u5408\u6b64\u540d\u7a31\u6216 OID \u7684\u5c6c\u6027\u985e\u578b\u5b58\u5728
MILD_ERR_ATTR_SYNTAX_NAME_FORM_NO_STRUCTURAL_CLASS_147=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u540d\u7a31\u8868\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u672a\u6307\u5b9a\u5176\u76f8\u95dc\u806f\u7684\u7d50\u69cb\u7269\u4ef6\u985e\u5225
MILD_ERR_ATTR_SYNTAX_NAME_FORM_EXPECTED_QUOTE_AT_POS_148=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u540d\u7a31\u8868\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u55ae\u5f15\u865f\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f %c \u5b57\u5143
MILD_ERR_ATTR_SYNTAX_MR_EMPTY_VALUE_149=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684\u6216\u50c5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_OPEN_PARENTHESIS_150=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u5de6\u62ec\u5f27\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f\u300c%s\u300d\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_MR_TRUNCATED_VALUE_151=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u5df2\u9054\u8a72\u503c\u7d50\u5c3e\uff0c\u4f46\u76ee\u9304\u4f3a\u670d\u5668\u9810\u671f\u61c9\u6709\u66f4\u591a\u63d0\u4f9b\u7684\u8cc7\u6599
MILD_ERR_ATTR_SYNTAX_MR_DOUBLE_PERIOD_IN_NUMERIC_OID_152=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %d \u542b\u6709\u5169\u500b\u9023\u7e8c\u7684\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_NUMERIC_OID_153=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_IN_STRING_OID_154=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u975e\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_MR_UNEXPECTED_CLOSE_PARENTHESIS_155=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %d \u542b\u6709\u672a\u9810\u671f\u7684\u53f3\u62ec\u5f27
MILD_ERR_ATTR_SYNTAX_MR_ILLEGAL_CHAR_156=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX_157=\u76f8\u7b26\u898f\u5247\u8aaa\u660e\u300c%s\u300d\u8207\u672a\u5b9a\u7fa9\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\u7684\u5c6c\u6027\u8a9e\u6cd5 %s \u76f8\u95dc\u806f
MILD_ERR_ATTR_SYNTAX_MR_NO_SYNTAX_158=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u672a\u6307\u5b9a\u5176\u76f8\u95dc\u806f\u7684\u5c6c\u6027\u8a9e\u6cd5
MILD_ERR_ATTR_SYNTAX_MR_EXPECTED_QUOTE_AT_POS_159=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u55ae\u5f15\u865f\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f %s \u5b57\u5143
MILD_ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE_160=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684\u6216\u50c5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_OPEN_PARENTHESIS_161=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u5de6\u62ec\u5f27\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f\u300c%s\u300d\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_MRUSE_TRUNCATED_VALUE_162=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\uff0c\u56e0\u70ba\u5df2\u9054\u8a72\u503c\u7d50\u5c3e\uff0c\u4f46\u76ee\u9304\u4f3a\u670d\u5668\u9810\u671f\u61c9\u6709\u66f4\u591a\u63d0\u4f9b\u7684\u8cc7\u6599
MILD_ERR_ATTR_SYNTAX_MRUSE_DOUBLE_PERIOD_IN_NUMERIC_OID_163=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %d \u542b\u6709\u5169\u500b\u9023\u7e8c\u7684\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_NUMERIC_OID_164=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_IN_STRING_OID_165=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\uff0c\u56e0\u70ba\u975e\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE_166=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\uff0c\u56e0\u70ba\u6307\u5b9a\u7684\u76f8\u7b26\u898f\u5247 %s \u4e0d\u660e
MILD_ERR_ATTR_SYNTAX_MRUSE_UNEXPECTED_CLOSE_PARENTHESIS_167=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %d \u542b\u6709\u672a\u9810\u671f\u7684\u53f3\u62ec\u5f27
MILD_ERR_ATTR_SYNTAX_MRUSE_ILLEGAL_CHAR_168=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR_169=\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\u300c%s\u300d\u8207\u672a\u5b9a\u7fa9\u65bc\u4f3a\u670d\u5668\u6a21\u5f0f\u4e2d\u7684\u5c6c\u6027\u985e\u578b %s \u76f8\u95dc\u806f
MILD_ERR_ATTR_SYNTAX_MRUSE_NO_ATTR_170=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u672a\u6307\u5b9a\u53ef\u8207\u76f8\u95dc OID \u4e00\u8d77\u4f7f\u7528\u7684\u5c6c\u6027\u985e\u578b\u96c6
MILD_ERR_ATTR_SYNTAX_MRUSE_EXPECTED_QUOTE_AT_POS_171=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u76f8\u7b26\u898f\u5247\u4f7f\u7528\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u55ae\u5f15\u865f\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f %s \u5b57\u5143
MILD_ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE_172=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684\u6216\u50c5\u5305\u542b\u7a7a\u683c
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS_173=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u5de6\u62ec\u5f27\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f\u300c%s\u300d\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_DSR_TRUNCATED_VALUE_174=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u5df2\u9054\u8a72\u503c\u7d50\u5c3e\uff0c\u4f46\u76ee\u9304\u4f3a\u670d\u5668\u9810\u671f\u61c9\u6709\u66f4\u591a\u63d0\u4f9b\u7684\u8cc7\u6599
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_RULE_ID_175=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u898f\u5247 OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_DSR_UNEXPECTED_CLOSE_PARENTHESIS_176=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %d \u542b\u6709\u672a\u9810\u671f\u7684\u53f3\u62ec\u5f27
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_177=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_NAME_FORM_178=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u53c3\u7167\u4e86\u4e0d\u660e\u7684\u540d\u7a31\u8868 %s
MILD_ERR_ATTR_SYNTAX_DSR_UNKNOWN_RULE_ID_179=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u53c3\u7167\u4e86\u4e0a\u5c64 DIT \u7d50\u69cb\u898f\u5247\u7684\u4e0d\u660e\u898f\u5247 ID %d
MILD_ERR_ATTR_SYNTAX_DSR_NO_NAME_FORM_180=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u8a72\u503c\u672a\u6307\u5b9a\u898f\u5247\u7684\u540d\u7a31\u8868
MILD_ERR_ATTR_SYNTAX_DSR_EXPECTED_QUOTE_AT_POS_181=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u61c9\u6709\u55ae\u5f15\u865f\uff0c\u4f46\u627e\u5230\u7684\u537b\u662f %s \u5b57\u5143
MILD_ERR_ATTR_SYNTAX_DSR_DOUBLE_PERIOD_IN_NUMERIC_OID_182=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %d \u542b\u6709\u5169\u500b\u9023\u7e8c\u7684\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_NUMERIC_OID_183=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_DSR_ILLEGAL_CHAR_IN_STRING_OID_184=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba DIT \u7d50\u69cb\u898f\u5247\u8aaa\u660e\uff0c\u56e0\u70ba\u975e\u6578\u503c OID \u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_TELEX_TOO_SHORT_185=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u592a\u77ed\uff0c\u7121\u6cd5\u505a\u70ba\u6709\u6548\u7684\u96fb\u5831\u865f\u78bc\u503c
MILD_ERR_ATTR_SYNTAX_TELEX_NOT_PRINTABLE_186=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u4e0d\u542b\u6709\u6548\u7684\u96fb\u5831\u865f\u78bc\uff0c\u56e0\u70ba\u4f4d\u7f6e %3$d \u7684\u5b57\u5143 %2$s \u4e0d\u662f\u6709\u6548\u7684\u53ef\u5217\u5370\u5b57\u4e32\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_TELEX_ILLEGAL_CHAR_187=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u4e0d\u542b\u6709\u6548\u7684\u96fb\u5831\u865f\u78bc\uff0c\u56e0\u70ba\u4f4d\u7f6e %3$d \u7684\u5b57\u5143 %2$s \u4e0d\u662f\u6709\u6548\u7684\u53ef\u5217\u5370\u5b57\u4e32\u5b57\u5143\uff0c\u4e5f\u4e0d\u662f\u53ef\u5206\u9694\u96fb\u5831\u865f\u78bc\u5143\u4ef6\u7684\u8ca8\u5e63\u7b26\u865f
MILD_ERR_ATTR_SYNTAX_TELEX_TRUNCATED_188=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u4e0d\u542b\u6709\u6548\u7684\u96fb\u5831\u865f\u78bc\uff0c\u56e0\u70ba\u5728\u53ef\u8b80\u53d6\u4e09\u500b\u4ee5\u8ca8\u5e63\u7b26\u865f\u5206\u9694\u7684\u53ef\u5217\u5370\u5b57\u4e32\u4e4b\u524d\uff0c\u767c\u73fe\u8a72\u503c\u7684\u7d50\u5c3e
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_EMPTY_189=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u50b3\u771f\u96fb\u8a71\u865f\u78bc\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_NOT_PRINTABLE_190=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u50b3\u771f\u96fb\u8a71\u865f\u78bc\uff0c\u56e0\u70ba\u4f4d\u7f6e %3$d \u7684\u5b57\u5143 %2$s \u4e0d\u662f\u6709\u6548\u7684\u53ef\u5217\u5370\u5b57\u4e32\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_END_WITH_DOLLAR_191=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u50b3\u771f\u96fb\u8a71\u865f\u78bc\uff0c\u56e0\u70ba\u8a72\u503c\u7684\u7d50\u5c3e\u662f\u8ca8\u5e63\u7b26\u865f\uff0c\u4f46\u8a72\u8ca8\u5e63\u7b26\u865f\u539f\u61c9\u7dca\u63a5\u8457\u50b3\u771f\u53c3\u6578
MILD_ERR_ATTR_SYNTAX_FAXNUMBER_ILLEGAL_PARAMETER_192=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u50b3\u771f\u96fb\u8a71\u865f\u78bc\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %3$d \u8207 %4$d \u4e4b\u9593\u7684\u5b57\u4e32\u300c%2$s\u300d\u4e0d\u662f\u6709\u6548\u7684\u50b3\u771f\u53c3\u6578
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_INVALID_DN_193=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u540d\u7a31\u8207\u9078\u64c7\u6027 UID \u503c\uff0c\u56e0\u70ba\u5728\u5617\u8a66\u5256\u6790 DN \u90e8\u5206\u6642\u767c\u751f\u932f\u8aa4: %s
MILD_ERR_ATTR_SYNTAX_NAMEANDUID_ILLEGAL_BINARY_DIGIT_194=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u540d\u7a31\u8207\u9078\u64c7\u6027 UID \u503c\uff0c\u56e0\u70ba OID \u90e8\u5206\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u4e8c\u9032\u4f4d\u6578\u5b57 %2$s
MILD_ERR_ATTR_SYNTAX_TELETEXID_EMPTY_195=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 teletex \u7d42\u7aef\u6a5f\u8b58\u5225\u78bc\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684
MILD_ERR_ATTR_SYNTAX_TELETEXID_NOT_PRINTABLE_196=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 teletex \u7d42\u7aef\u6a5f\u8b58\u5225\u78bc\uff0c\u56e0\u70ba\u4f4d\u7f6e %3$d \u7684\u5b57\u5143 %2$s \u4e0d\u662f\u6709\u6548\u7684\u53ef\u5217\u5370\u5b57\u4e32\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_TELETEXID_END_WITH_DOLLAR_197=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 teletex \u7d42\u7aef\u6a5f\u8b58\u5225\u78bc\uff0c\u56e0\u70ba\u8a72\u503c\u7684\u7d50\u5c3e\u662f\u8ca8\u5e63\u7b26\u865f\uff0c\u4f46\u8a72\u8ca8\u5e63\u7b26\u865f\u539f\u61c9\u7dca\u63a5\u8457 TTX \u53c3\u6578
MILD_ERR_ATTR_SYNTAX_TELETEXID_PARAM_NO_COLON_198=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 teletex \u7d42\u7aef\u6a5f\u8b58\u5225\u78bc\uff0c\u56e0\u70ba\u53c3\u6578\u5b57\u4e32\u4e0d\u5305\u542b\u7528\u4ee5\u5340\u9694\u540d\u7a31\u8207\u503c\u7684\u5192\u865f
MILD_ERR_ATTR_SYNTAX_TELETEXID_ILLEGAL_PARAMETER_199=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 teletex \u7d42\u7aef\u6a5f\u8b58\u5225\u78bc\uff0c\u56e0\u70ba\u5b57\u4e32\u300c%s\u300d\u4e0d\u662f\u6709\u6548\u7684 TTX \u53c3\u6578\u540d\u7a31
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_EMPTY_VALUE_200=\u63d0\u4f9b\u7684\u503c\u7121\u6cd5\u5256\u6790\u70ba\u5176\u4ed6\u96fb\u5b50\u4fe1\u7bb1\u503c\uff0c\u56e0\u70ba\u8a72\u503c\u662f\u7a7a\u7684
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MBTYPE_201=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5176\u4ed6\u96fb\u5b50\u4fe1\u7bb1\u503c\uff0c\u56e0\u70ba\u5728\u8ca8\u5e63\u7b26\u865f\u4e4b\u524d\u6c92\u6709\u4efb\u4f55\u96fb\u5b50\u4fe1\u7bb1\u985e\u578b
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MBTYPE_CHAR_202=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5176\u4ed6\u96fb\u5b50\u4fe1\u7bb1\u503c\uff0c\u56e0\u70ba\u96fb\u5b50\u4fe1\u7bb1\u985e\u578b\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_NO_MAILBOX_203=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5176\u4ed6\u96fb\u5b50\u4fe1\u7bb1\u503c\uff0c\u56e0\u70ba\u5728\u8ca8\u5e63\u7b26\u865f\u4e4b\u5f8c\u6c92\u6709\u4efb\u4f55\u96fb\u5b50\u4fe1\u7bb1
MILD_ERR_ATTR_SYNTAX_OTHER_MAILBOX_ILLEGAL_MB_CHAR_204=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5176\u4ed6\u96fb\u5b50\u4fe1\u7bb1\u503c\uff0c\u56e0\u70ba\u96fb\u5b50\u4fe1\u7bb1\u5728\u4f4d\u7f6e %3$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %2$s
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_OC_205=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4e95\u5b57\u865f (#) \u5b57\u5143\u4e4b\u524d\u4e0d\u5305\u542b\u7269\u4ef6\u985e\u5225\u540d\u7a31\u6216 OID
MILD_ERR_ATTR_SYNTAX_GUIDE_ILLEGAL_CHAR_206=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u689d\u4ef6\u90e8\u5206 %2$s \u5728\u4f4d\u7f6e %4$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %3$c
MILD_ERR_ATTR_SYNTAX_GUIDE_MISSING_CLOSE_PAREN_207=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u689d\u4ef6\u90e8\u5206 %s \u4e0d\u5305\u542b\u8207\u521d\u59cb\u5de6\u62ec\u5f27\u5c0d\u61c9\u7684\u53f3\u62ec\u5f27
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_QUESTION_MARK_208=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u689d\u4ef6\u90e8\u5206 %s \u662f\u4ee5\u554f\u865f\u958b\u982d\uff0c\u4f46\u4e26\u672a\u7dca\u63a5\u8457\u5b57\u4e32\u300ctrue\u300d\u6216\u300cfalse\u300d
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_DOLLAR_209=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u689d\u4ef6\u90e8\u5206 %s \u4e0d\u5305\u542b\u7528\u4ee5\u5340\u9694\u5c6c\u6027\u985e\u578b\u8207\u76f8\u7b26\u985e\u578b\u7684\u8ca8\u5e63\u7b26\u865f
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_ATTR_210=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u689d\u4ef6\u90e8\u5206 %s \u672a\u5728\u8ca8\u5e63\u7b26\u865f\u4e4b\u524d\u6307\u5b9a\u5c6c\u6027\u985e\u578b
MILD_ERR_ATTR_SYNTAX_GUIDE_NO_MATCH_TYPE_211=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u689d\u4ef6\u90e8\u5206 %s \u672a\u5728\u8ca8\u5e63\u7b26\u865f\u4e4b\u5f8c\u6307\u5b9a\u76f8\u7b26\u985e\u578b
MILD_ERR_ATTR_SYNTAX_GUIDE_INVALID_MATCH_TYPE_212=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u689d\u4ef6\u90e8\u5206 %s \u5f9e\u4f4d\u7f6e %d \u8d77\u6709\u7121\u6548\u7684\u76f8\u7b26\u985e\u578b
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SHARP_213=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u589e\u5f37\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u8a72\u503c\u4e0d\u5305\u542b\u7528\u4ee5\u5340\u9694\u7269\u4ef6\u985e\u5225\u8207\u689d\u4ef6\u7684\u4e95\u5b57\u865f (#) \u5b57\u5143
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_OC_214=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u589e\u5f37\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4e95\u5b57\u865f (#) \u5b57\u5143\u4e4b\u524d\u4e0d\u5305\u542b\u7269\u4ef6\u985e\u5225\u540d\u7a31\u6216 OID
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_DOUBLE_PERIOD_IN_OC_OID_215=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u589e\u5f37\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u7528\u4ee5\u6307\u5b9a\u7269\u4ef6\u985e\u5225\u7684\u6578\u503c OID %s \u5728\u4f4d\u7f6e %d \u542b\u6709\u5169\u500b\u9023\u7e8c\u7684\u5c0f\u6578\u9ede\u865f
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_OID_216=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u589e\u5f37\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u7528\u4ee5\u6307\u5b9a\u7269\u4ef6\u985e\u5225\u7684\u6578\u503c OID %2$s \u5728\u4f4d\u7f6e %4$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %3$s
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_ILLEGAL_CHAR_IN_OC_NAME_217=\u63d0\u4f9b\u7684\u503c\u300c%1$s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u589e\u5f37\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u7269\u4ef6\u985e\u5225\u540d\u7a31 %2$s \u5728\u4f4d\u7f6e %4$d \u542b\u6709\u975e\u6cd5\u5b57\u5143 %3$s
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_FINAL_SHARP_218=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u589e\u5f37\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u8a72\u503c\u6c92\u6709\u7528\u4ee5\u5340\u9694\u689d\u4ef6\u8207\u7bc4\u570d\u7684\u4e95\u5b57\u865f (#) \u5b57\u5143
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_SCOPE_219=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u589e\u5f37\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u5728\u6700\u7d42\u7684\u4e95\u5b57\u865f (#) \u5b57\u5143\u4e4b\u5f8c\u672a\u63d0\u4f9b\u7bc4\u570d
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_INVALID_SCOPE_220=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u589e\u5f37\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u6307\u5b9a\u7684\u7bc4\u570d %s \u7121\u6548
MILD_ERR_ATTR_SYNTAX_ENHANCEDGUIDE_NO_CRITERIA_221=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u589e\u5f37\u5f15\u5c0e\u503c\uff0c\u56e0\u70ba\u8a72\u503c\u5728\u4e95\u5b57\u865f (#) \u5b57\u5143\u4e4b\u9593\u672a\u6307\u5b9a\u4efb\u4f55\u689d\u4ef6
MILD_ERR_ATTR_SYNTAX_OID_INVALID_VALUE_222=\u63d0\u4f9b\u7684\u503c %s \u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 OID: %s
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NORMALIZE_FAILURE_223=An unexpected \
### error occurred while trying to normalize value %s as a generalized time \
### value:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_CANNOT_NORMALIZE_224=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseExactOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_EXACT_COMPARE_INVALID_TYPE_225=An error occurred while \
### attempting to compare two objects using the caseExactOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_CANNOT_NORMALIZE_226=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### caseIgnoreOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_CASE_IGNORE_COMPARE_INVALID_TYPE_227=An error occurred while \
### attempting to compare two objects using the caseIgnoreOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_CANNOT_NORMALIZE_228=An error \
### occurred while attempting to compare two AttributeValue objects using the \
### generalizedTimeOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_GENERALIZED_TIME_COMPARE_INVALID_TYPE_229=An error occurred \
### while attempting to compare two objects using the \
### generalizedTimeOrderingMatch matching rule because the objects were of an \
### unsupported type %s.  Only byte arrays, ASN.1 octet strings, and attribute \
### value objects may be compared
###SEVERE_WARN_OMR_INTEGER_COMPARE_CANNOT_NORMALIZE_230=An error occurred while \
### attempting to compare two AttributeValue objects using the \
### integerOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_INTEGER_COMPARE_INVALID_TYPE_231=An error occurred while \
### attempting to compare two objects using the integerOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_CANNOT_NORMALIZE_232=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### numericStringOrderingMatch matching rule because the normalized form of one \
### of those values could not be retrieved:  %s
###SEVERE_WARN_OMR_NUMERIC_STRING_COMPARE_INVALID_TYPE_233=An error occurred \
### while attempting to compare two objects using the numericStringOrderingMatch \
### matching rule because the objects were of an unsupported type %s.  Only byte \
### arrays, ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_CANNOT_NORMALIZE_234=An error occurred \
### while attempting to compare two AttributeValue objects using the \
### octetStringOrderingMatch matching rule because the normalized form of one of \
### those values could not be retrieved:  %s
###SEVERE_WARN_OMR_OCTET_STRING_COMPARE_INVALID_TYPE_235=An error occurred while \
### attempting to compare two objects using the octetStringOrderingMatch matching \
### rule because the objects were of an unsupported type %s.  Only byte arrays, \
### ASN.1 octet strings, and attribute value objects may be compared
###SEVERE_WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH_236=The provided value "%s" has \
### an invalid length for a UUID.  All UUID values must have a length of exactly \
### 36 bytes, but the provided value had a length of %d bytes
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH_237=The provided value "%s" should \
### have had a dash at position %d, but the character '%s' was found instead
###SEVERE_WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX_238=The provided value "%s" should \
### have had a hexadecimal digit at position %d, but the character '%s' was found \
### instead
INFO_ATTR_SYNTAX_DIRECTORYSTRING_DESCRIPTION_ALLOW_ZEROLENGTH_239=\u8868\u793a\u4f7f\u7528\u76ee\u9304\u5b57\u4e32\u8a9e\u6cd5\u7684\u5c6c\u6027\u662f\u5426\u53ef\u6709\u96f6\u9577\u5ea6\u7684\u503c\u3002LDAP \u898f\u683c\u6280\u8853\u4e0a\u4e0d\u5141\u8a31\u6b64\u8a2d\u5b9a\uff0c\u4f46\u5728\u820a\u7248\u76ee\u9304\u4f3a\u670d\u5668\u7684\u5411\u4e0b\u76f8\u5bb9\u6027\u65b9\u9762\uff0c\u9019\u53ef\u80fd\u5f88\u6709\u7528
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_CANNOT_DETERMINE_ZEROLENGTH_240=An \
### error occurred while trying to determine the value of the %s configuration \
### attribute, which indicates whether directory string attributes should be \
### allowed to have zero-length values:  %s
###SEVERE_ERR_ATTR_SYNTAX_DIRECTORYSTRING_INVALID_ZEROLENGTH_VALUE_241=The \
### operation attempted to assign a zero-length value to an attribute with the \
### directory string syntax
INFO_ATTR_SYNTAX_DIRECTORYSTRING_UPDATED_ALLOW_ZEROLENGTH_242=\u914d\u7f6e\u9805\u76ee %2$s \u4e2d\u7684 %1$s \u5c6c\u6027\u5df2\u4f7f\u7528\u65b0\u503c %3$s \u9032\u884c\u66f4\u65b0
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_SCHEME_CHAR_243=The provided \
### authPassword value had an invalid scheme character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_244=The provided authPassword value \
### had a zero-length scheme element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_SCHEME_SEPARATOR_245=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the scheme and authInfo elements
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_INFO_CHAR_246=The provided \
### authPassword value had an invalid authInfo character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_247=The provided authPassword \
### value had a zero-length authInfo element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_INFO_SEPARATOR_248=The provided \
### authPassword value was missing the separator character or had an illegal \
### character between the authInfo and authValue elements
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_INITIAL_PARENTHESIS_249=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### it did not start with a parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_NONSPACE_250=The provided value "%s" could not \
### be parsed by the integer first component matching rule because it did not \
### have any non-space characters after the opening parenthesis
###SEVERE_ERR_EMR_INTFIRSTCOMP_NO_SPACE_AFTER_INT_251=The provided value "%s" \
### could not be parsed by the integer first component matching rule because it \
### did not have any space characters after the first component
###SEVERE_ERR_EMR_INTFIRSTCOMP_FIRST_COMPONENT_NOT_INT_252=The provided value \
### "%s" could not be parsed by the integer first component matching rule because \
### the first component does not appear to be an integer value
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_VALUE_253=No value was given to decode by \
### the user password attribute syntax
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_OPENING_BRACE_254=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not start with the opening curly brace ("{") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_CLOSING_BRACE_255=Unable to decode the \
### provided value according to the user password syntax because the value does \
### not contain a closing curly brace ("}") character
###SEVERE_ERR_ATTR_SYNTAX_USERPW_NO_SCHEME_256=Unable to decode the provided \
### value according to the user password syntax because the value does not \
### contain a storage scheme name
MILD_ERR_ATTR_SYNTAX_RFC3672_SUBTREE_SPECIFICATION_INVALID_257=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684 RFC 3672 \u5b50\u6a39\u72c0\u7d50\u69cb\u898f\u683c
MILD_ERR_ATTR_SYNTAX_ABSOLUTE_SUBTREE_SPECIFICATION_INVALID_258=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u7d55\u5c0d\u5b50\u6a39\u72c0\u7d50\u69cb\u898f\u683c
MILD_ERR_ATTR_SYNTAX_RELATIVE_SUBTREE_SPECIFICATION_INVALID_259=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u6709\u6548\u7684\u76f8\u5c0d\u5b50\u6a39\u72c0\u7d50\u69cb\u898f\u683c
###SEVERE_WARN_ATTR_SYNTAX_ILLEGAL_INTEGER_260=The provided value %s is not \
### allowed for attributes with a Integer syntax
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_AUTH_VALUE_CHAR_261=The provided \
### authPassword value had an invalid authValue character at position %d
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_NO_AUTH_VALUE_262=The provided authPassword \
### value had a zero-length authValue element
###SEVERE_ERR_ATTR_SYNTAX_AUTHPW_INVALID_TRAILING_CHAR_263=The provided \
### authPassword value had an invalid trailing character at position %d
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_EXTENSION_INVALID_CHARACTER_264=\u63d0\u4f9b\u7684\u503c\u300c%s\u300d\u7121\u6cd5\u5256\u6790\u70ba\u5c6c\u6027\u8a9e\u6cd5\u5ef6\u4f38\uff0c\u56e0\u70ba\u5728\u4f4d\u7f6e %d \u627e\u5230\u7121\u6548\u7684\u5b57\u5143
MILD_ERR_ATTR_SYNTAX_ATTRSYNTAX_INVALID_EXTENSION_265=\u5c6c\u6027\u8a9e\u6cd5\u56e0\u5ef6\u4f38\u7121\u6548\u800c\u7121\u6cd5\u5256\u6790\u3002%s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_INVALID_SUPERIOR_TYPE_266=The definition \
### for objectclass %s is invalid because it has an objectclass type of %s but \
### this is incompatible with the objectclass type %s for the superior class %s
###SEVERE_WARN_ATTR_SYNTAX_OBJECTCLASS_STRUCTURAL_SUPERIOR_NOT_TOP_267=The \
### definition for objectclass %s is invalid because it is defined as a \
### structural class but its superior chain does not include the "top" \
### objectclass
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_SUPERIOR_USAGE_268=The definition \
### for attribute type %s is invalid because its attribute usage %s is not the \
### same as the usage for its superior type %s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_FROM_NONCOLLECTIVE_269=The \
### definition for attribute type %s is invalid because it is defined as a \
### collective type but the superior type %s is not collective
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NONCOLLECTIVE_FROM_COLLECTIVE_270=The \
### definition for attribute type %s is invalid because it is not defined as a \
### collective type but the superior type %s is collective
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_STRUCTURAL_271=DIT \u5167\u5bb9\u898f\u5247\u300c%1$s\u300d\u7121\u6548\uff0c\u56e0\u70ba\u8a72\u898f\u5247\u7981\u6b62\u4f7f\u7528\u76f8\u95dc\u7d50\u69cb\u7269\u4ef6\u985e\u5225 %3$s \u6240\u9700\u7684\u5c6c\u6027\u985e\u578b %2$s
MILD_ERR_ATTR_SYNTAX_DCR_PROHIBITED_REQUIRED_BY_AUXILIARY_272=DIT \u5167\u5bb9\u898f\u5247\u300c%1$s\u300d\u7121\u6548\uff0c\u56e0\u70ba\u8a72\u898f\u5247\u7981\u6b62\u4f7f\u7528\u76f8\u95dc\u8f14\u52a9\u7269\u4ef6\u985e\u5225 %3$s \u6240\u9700\u7684\u5c6c\u6027\u985e\u578b %2$s
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_COLLECTIVE_IS_OPERATIONAL_273=The definition \
### for attribute type %s is invalid because it is declared COLLECTIVE but does \
### not have a usage of userApplications
###SEVERE_WARN_ATTR_SYNTAX_ATTRTYPE_NO_USER_MOD_NOT_OPERATIONAL_274=The \
### definition for attribute type %s is invalid because it is declared \
### NO-USER-MODIFICATION but does not have an operational usage
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_FRACTION_CHAR_275=The \
### provided value %s is not a valid generalized time value because it contains \
### illegal character %s in the fraction component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_EMPTY_FRACTION_276=The provided \
### value %s is not a valid generalized time value because it does not contain at \
### least one digit after the period to use as the fractional component
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_NO_TIME_ZONE_INFO_277=The provided \
### value %s is not a valid generalized time value because it does not end with \
### 'Z' or a time zone offset
###SEVERE_WARN_ATTR_SYNTAX_GENERALIZED_TIME_ILLEGAL_TIME_278=The provided value \
### %s is not a valid generalized time value because it represents an invalid \
### time (e.g., a date that does not exist):  %s
NOTICE_SCHEMA_IMPORT_FAILED_279=\u7121\u6cd5\u532f\u5165\u6a21\u5f0f\u5143\u7d20: %s, %s
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_LOCALE_280=The collation rule %s under matching rule entry %s is invalid as the locale %s is not supported by JVM
MILD_WARN_ATTR_INVALID_COLLATION_MATCHING_RULE_FORMAT_281=The provided collation rule %s does not contain a valid format of OID:LOCALE
MILD_ERR_ATTR_SYNTAX_DN_INVALID_REQUIRES_ESCAPE_CHAR_282=The provided value "%s" could not be parsed as a valid distinguished name because an attribute value started with a character at position %d that needs to be escaped
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_CHAR_283=The provided value "%s" could not be parsed as a valid attribute type definition because character '%c' at position %d is not allowed in an attribute type name
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_284=The provided value "%s" could not be parsed as a valid attribute type definition because the underscore character is not allowed in an attribute type name unless the %s configuration option is enabled
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_285=The provided value "%s" could not be parsed as a valid attribute type definition because the hyphen character is not allowed as the first character of an attribute type name
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_286=The provided value "%s" could not be parsed as a valid attribute type definition because the underscore character is not allowed as the first character of an attribute type name even if the %s configuration option is enabled
MILD_ERR_ATTR_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_287=The provided value "%s" could not be parsed as a valid attribute type definition because the digit '%c' is not allowed as the first character of an attribute type name unless the name is specified as an OID or the %s configuration option is enabled
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_CHAR_288=The provided value "%s" could not be parsed as a valid object class definition because character '%c' at position %d is not allowed in an object class name
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_UNDERSCORE_CHAR_289=The provided value "%s" could not be parsed as a valid object class definition because the underscore character is not allowed in an object class name unless the %s configuration option is enabled
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DASH_290=The provided value "%s" could not be parsed as a valid object class definition because the hyphen character is not allowed as the first character of an object class name
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_UNDERSCORE_291=The provided value "%s" could not be parsed as a valid object class definition because the underscore character is not allowed as the first character of an object class name even if the %s configuration option is enabled
MILD_ERR_OC_SYNTAX_ATTR_ILLEGAL_INITIAL_DIGIT_292=The provided value "%s" could not be parsed as a valid object class definition because the digit '%c' is not allowed as the first character of an object class name unless the name is specified as an OID or the %s configuration option is enabled
sdk/src/org/opends/sdk/AbstractConnection.java
@@ -29,7 +29,7 @@
import static org.opends.messages.ProtocolMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import java.util.Collection;
import java.util.LinkedList;
sdk/src/org/opends/sdk/AttributeDescription.java
@@ -29,12 +29,12 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.*;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.schema.AttributeType;
import org.opends.sdk.schema.Schema;
import org.opends.sdk.schema.UnknownSchemaElementException;
sdk/src/org/opends/sdk/DN.java
@@ -29,11 +29,11 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.schema.Schema;
import org.opends.sdk.schema.UnknownSchemaElementException;
import org.opends.sdk.util.LocalizedIllegalArgumentException;
sdk/src/org/opends/sdk/DecodeException.java
@@ -31,7 +31,7 @@
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.LocalizableException;
sdk/src/org/opends/sdk/Filter.java
@@ -29,17 +29,16 @@
import static org.opends.messages.ProtocolMessages.*;
import static org.opends.sdk.util.StaticUtils.byteToHex;
import static org.opends.sdk.util.StaticUtils.getBytes;
import static org.opends.sdk.util.StaticUtils.toLowerCase;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.*;
import java.util.*;
import org.opends.messages.Message;
import org.opends.sdk.schema.Schema;
import org.opends.sdk.util.*;
import com.sun.opends.sdk.util.Message;
/**
sdk/src/org/opends/sdk/RDN.java
@@ -29,12 +29,12 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.*;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.schema.*;
import org.opends.sdk.util.*;
sdk/src/org/opends/sdk/ResultCode.java
@@ -29,13 +29,13 @@
import static org.opends.messages.CoreMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/asn1/ASN1ByteSequenceReader.java
@@ -29,22 +29,21 @@
import static org.opends.messages.ProtocolMessages.*;
import static org.opends.sdk.asn1.ASN1Constants.ELEMENT_READ_STATE_NEED_FIRST_LENGTH_BYTE;
import static org.opends.sdk.asn1.ASN1Constants.ELEMENT_READ_STATE_NEED_TYPE;
import static org.opends.sdk.asn1.ASN1Constants.ELEMENT_READ_STATE_NEED_VALUE_BYTES;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.asn1.ASN1Constants.*;
import java.io.IOException;
import java.util.LinkedList;
import java.util.logging.Level;
import org.opends.messages.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequenceReader;
import org.opends.sdk.util.ByteString;
import org.opends.sdk.util.ByteStringBuilder;
import org.opends.sdk.util.StaticUtils;
import com.sun.opends.sdk.util.Message;
/**
sdk/src/org/opends/sdk/asn1/ASN1InputStreamReader.java
@@ -29,24 +29,22 @@
import static org.opends.messages.ProtocolMessages.*;
import static org.opends.sdk.asn1.ASN1Constants.ELEMENT_READ_STATE_NEED_ADDITIONAL_LENGTH_BYTES;
import static org.opends.sdk.asn1.ASN1Constants.ELEMENT_READ_STATE_NEED_FIRST_LENGTH_BYTE;
import static org.opends.sdk.asn1.ASN1Constants.ELEMENT_READ_STATE_NEED_TYPE;
import static org.opends.sdk.asn1.ASN1Constants.ELEMENT_READ_STATE_NEED_VALUE_BYTES;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.asn1.ASN1Constants.*;
import java.io.IOException;
import java.io.InputStream;
import java.util.LinkedList;
import java.util.logging.Level;
import org.opends.messages.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteString;
import org.opends.sdk.util.ByteStringBuilder;
import org.opends.sdk.util.SizeLimitInputStream;
import org.opends.sdk.util.StaticUtils;
import com.sun.opends.sdk.util.Message;
/**
sdk/src/org/opends/sdk/asn1/ASN1OutputStreamWriter.java
@@ -28,7 +28,7 @@
import static org.opends.messages.ProtocolMessages.ERR_ASN1_SEQUENCE_WRITE_NOT_STARTED;
import static com.sun.opends.sdk.util.Messages.ERR_ASN1_SEQUENCE_WRITE_NOT_STARTED;
import static org.opends.sdk.asn1.ASN1Constants.BOOLEAN_VALUE_FALSE;
import static org.opends.sdk.asn1.ASN1Constants.BOOLEAN_VALUE_TRUE;
@@ -37,7 +37,7 @@
import java.util.ArrayList;
import java.util.logging.Level;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteSequenceOutputStream;
import org.opends.sdk.util.ByteStringBuilder;
sdk/src/org/opends/sdk/asn1/AbstractASN1Reader.java
@@ -29,16 +29,17 @@
import static org.opends.messages.ProtocolMessages.ERR_ASN1_UNEXPECTED_TAG;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.asn1.ASN1Constants.*;
import java.io.IOException;
import org.opends.messages.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteString;
import org.opends.sdk.util.ByteStringBuilder;
import com.sun.opends.sdk.util.Message;
/**
sdk/src/org/opends/sdk/controls/AccountUsabilityControl.java
@@ -2,16 +2,16 @@
import static org.opends.messages.ProtocolMessages.ERR_ACCTUSABLEREQ_CONTROL_HAS_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_ACCTUSABLERES_DECODE_ERROR;
import static org.opends.messages.ProtocolMessages.ERR_ACCTUSABLERES_NO_CONTROL_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_ACCTUSABLERES_UNKNOWN_VALUE_ELEMENT_TYPE;
import static com.sun.opends.sdk.util.Messages.ERR_ACCTUSABLEREQ_CONTROL_HAS_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ACCTUSABLERES_DECODE_ERROR;
import static com.sun.opends.sdk.util.Messages.ERR_ACCTUSABLERES_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ACCTUSABLERES_UNKNOWN_VALUE_ELEMENT_TYPE;
import static org.opends.sdk.util.StaticUtils.byteToHex;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
import org.opends.sdk.asn1.ASN1Reader;
sdk/src/org/opends/sdk/controls/AssertionControl.java
@@ -29,13 +29,13 @@
import static org.opends.messages.ProtocolMessages.ERR_LDAPASSERT_INVALID_CONTROL_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_LDAPASSERT_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_LDAPASSERT_INVALID_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_LDAPASSERT_NO_CONTROL_VALUE;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.Filter;
import org.opends.sdk.asn1.ASN1;
sdk/src/org/opends/sdk/controls/AuthorizationIdentityControl.java
@@ -2,10 +2,10 @@
import static org.opends.messages.ProtocolMessages.ERR_AUTHZIDREQ_CONTROL_HAS_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_AUTHZIDRESP_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_AUTHZIDREQ_CONTROL_HAS_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_AUTHZIDRESP_NO_CONTROL_VALUE;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DN;
import org.opends.sdk.DecodeException;
import org.opends.sdk.schema.Schema;
sdk/src/org/opends/sdk/controls/EntryChangeNotificationControl.java
@@ -2,16 +2,16 @@
import static org.opends.messages.ProtocolMessages.ERR_ECN_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_ECN_ILLEGAL_PREVIOUS_DN;
import static org.opends.messages.ProtocolMessages.ERR_ECN_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ECN_CANNOT_DECODE_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ECN_ILLEGAL_PREVIOUS_DN;
import static com.sun.opends.sdk.util.Messages.ERR_ECN_NO_CONTROL_VALUE;
import static org.opends.sdk.asn1.ASN1Constants.UNIVERSAL_INTEGER_TYPE;
import static org.opends.sdk.asn1.ASN1Constants.UNIVERSAL_OCTET_STRING_TYPE;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DN;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
sdk/src/org/opends/sdk/controls/GetEffectiveRightsRequestControl.java
@@ -2,13 +2,13 @@
import static org.opends.messages.ProtocolMessages.INFO_GETEFFECTIVERIGHTS_DECODE_ERROR;
import static org.opends.messages.ProtocolMessages.INFO_GETEFFECTIVERIGHTS_INVALID_AUTHZID;
import static com.sun.opends.sdk.util.Messages.INFO_GETEFFECTIVERIGHTS_DECODE_ERROR;
import static com.sun.opends.sdk.util.Messages.INFO_GETEFFECTIVERIGHTS_INVALID_AUTHZID;
import java.io.IOException;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DN;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
sdk/src/org/opends/sdk/controls/MatchedValuesControl.java
@@ -29,7 +29,7 @@
import static org.opends.messages.ProtocolMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
@@ -37,7 +37,7 @@
import java.util.LinkedList;
import java.util.List;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.AbstractFilterVisitor;
import org.opends.sdk.DecodeException;
import org.opends.sdk.Filter;
sdk/src/org/opends/sdk/controls/PagedResultsControl.java
@@ -2,14 +2,14 @@
import static org.opends.messages.ProtocolMessages.ERR_LDAP_PAGED_RESULTS_DECODE_COOKIE;
import static org.opends.messages.ProtocolMessages.ERR_LDAP_PAGED_RESULTS_DECODE_NULL;
import static org.opends.messages.ProtocolMessages.ERR_LDAP_PAGED_RESULTS_DECODE_SEQUENCE;
import static org.opends.messages.ProtocolMessages.ERR_LDAP_PAGED_RESULTS_DECODE_SIZE;
import static com.sun.opends.sdk.util.Messages.ERR_LDAP_PAGED_RESULTS_DECODE_COOKIE;
import static com.sun.opends.sdk.util.Messages.ERR_LDAP_PAGED_RESULTS_DECODE_NULL;
import static com.sun.opends.sdk.util.Messages.ERR_LDAP_PAGED_RESULTS_DECODE_SEQUENCE;
import static com.sun.opends.sdk.util.Messages.ERR_LDAP_PAGED_RESULTS_DECODE_SIZE;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
import org.opends.sdk.asn1.ASN1Reader;
sdk/src/org/opends/sdk/controls/PasswordExpiredControl.java
@@ -2,9 +2,9 @@
import static org.opends.messages.ProtocolMessages.ERR_PWEXPIRED_CONTROL_INVALID_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PWEXPIRED_CONTROL_INVALID_VALUE;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.schema.Schema;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/controls/PasswordExpiringControl.java
@@ -2,11 +2,11 @@
import static org.opends.messages.ProtocolMessages.ERR_PWEXPIRING_CANNOT_DECODE_SECONDS_UNTIL_EXPIRATION;
import static org.opends.messages.ProtocolMessages.ERR_PWEXPIRING_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PWEXPIRING_CANNOT_DECODE_SECONDS_UNTIL_EXPIRATION;
import static com.sun.opends.sdk.util.Messages.ERR_PWEXPIRING_NO_CONTROL_VALUE;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.schema.Schema;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/controls/PasswordPolicyControl.java
@@ -2,13 +2,13 @@
import static org.opends.messages.ProtocolMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.byteToHex;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
import org.opends.sdk.asn1.ASN1Reader;
sdk/src/org/opends/sdk/controls/PasswordPolicyErrorType.java
@@ -2,12 +2,12 @@
import static org.opends.messages.ProtocolMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import java.util.Arrays;
import java.util.List;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/controls/PasswordPolicyWarningType.java
@@ -2,13 +2,13 @@
import static org.opends.messages.ProtocolMessages.INFO_PWPWARNTYPE_DESCRIPTION_GRACE_LOGINS_REMAINING;
import static org.opends.messages.ProtocolMessages.INFO_PWPWARNTYPE_DESCRIPTION_TIME_BEFORE_EXPIRATION;
import static com.sun.opends.sdk.util.Messages.INFO_PWPWARNTYPE_DESCRIPTION_GRACE_LOGINS_REMAINING;
import static com.sun.opends.sdk.util.Messages.INFO_PWPWARNTYPE_DESCRIPTION_TIME_BEFORE_EXPIRATION;
import java.util.Arrays;
import java.util.List;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/controls/PersistentSearchControl.java
@@ -2,13 +2,13 @@
import static org.opends.messages.ProtocolMessages.ERR_PSEARCH_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_PSEARCH_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PSEARCH_CANNOT_DECODE_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PSEARCH_NO_CONTROL_VALUE;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
import org.opends.sdk.asn1.ASN1Reader;
sdk/src/org/opends/sdk/controls/PostReadControl.java
@@ -29,17 +29,17 @@
import static org.opends.messages.ProtocolMessages.ERR_POSTREADREQ_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_POSTREADREQ_NO_CONTROL_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_POSTREADRESP_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_POSTREADRESP_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_POSTREADREQ_CANNOT_DECODE_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_POSTREADREQ_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_POSTREADRESP_CANNOT_DECODE_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_POSTREADRESP_NO_CONTROL_VALUE;
import java.io.IOException;
import java.util.Arrays;
import java.util.LinkedHashSet;
import java.util.Set;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
import org.opends.sdk.asn1.ASN1Reader;
sdk/src/org/opends/sdk/controls/PreReadControl.java
@@ -29,17 +29,17 @@
import static org.opends.messages.ProtocolMessages.ERR_PREREADREQ_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_PREREADREQ_NO_CONTROL_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_PREREADRESP_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_PREREADRESP_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PREREADREQ_CANNOT_DECODE_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PREREADREQ_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PREREADRESP_CANNOT_DECODE_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PREREADRESP_NO_CONTROL_VALUE;
import java.io.IOException;
import java.util.Arrays;
import java.util.LinkedHashSet;
import java.util.Set;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
import org.opends.sdk.asn1.ASN1Reader;
sdk/src/org/opends/sdk/controls/ProxiedAuthV1Control.java
@@ -2,14 +2,14 @@
import static org.opends.messages.ProtocolMessages.ERR_PROXYAUTH1_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_PROXYAUTH1_CONTROL_NOT_CRITICAL;
import static org.opends.messages.ProtocolMessages.ERR_PROXYAUTH1_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PROXYAUTH1_CANNOT_DECODE_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PROXYAUTH1_CONTROL_NOT_CRITICAL;
import static com.sun.opends.sdk.util.Messages.ERR_PROXYAUTH1_NO_CONTROL_VALUE;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DN;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
sdk/src/org/opends/sdk/controls/ProxiedAuthV2Control.java
@@ -2,14 +2,14 @@
import static org.opends.messages.ProtocolMessages.ERR_PROXYAUTH2_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.ERR_PROXYAUTH2_CONTROL_NOT_CRITICAL;
import static org.opends.messages.ProtocolMessages.ERR_PROXYAUTH2_NO_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PROXYAUTH2_CANNOT_DECODE_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PROXYAUTH2_CONTROL_NOT_CRITICAL;
import static com.sun.opends.sdk.util.Messages.ERR_PROXYAUTH2_NO_CONTROL_VALUE;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DN;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
sdk/src/org/opends/sdk/controls/ServerSideSortControl.java
@@ -2,7 +2,7 @@
import static org.opends.messages.ProtocolMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
@@ -10,7 +10,7 @@
import java.util.List;
import java.util.StringTokenizer;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
import org.opends.sdk.asn1.ASN1Reader;
sdk/src/org/opends/sdk/controls/SubtreeDeleteControl.java
@@ -2,9 +2,9 @@
import static org.opends.messages.ProtocolMessages.ERR_SUBTREE_DELETE_INVALID_CONTROL_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_SUBTREE_DELETE_INVALID_CONTROL_VALUE;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.schema.Schema;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/controls/VLVControl.java
@@ -2,15 +2,15 @@
import static org.opends.messages.ProtocolMessages.INFO_VLVREQ_CONTROL_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.INFO_VLVREQ_CONTROL_NO_VALUE;
import static org.opends.messages.ProtocolMessages.INFO_VLVRES_CONTROL_CANNOT_DECODE_VALUE;
import static org.opends.messages.ProtocolMessages.INFO_VLVRES_CONTROL_NO_VALUE;
import static com.sun.opends.sdk.util.Messages.INFO_VLVREQ_CONTROL_CANNOT_DECODE_VALUE;
import static com.sun.opends.sdk.util.Messages.INFO_VLVREQ_CONTROL_NO_VALUE;
import static com.sun.opends.sdk.util.Messages.INFO_VLVRES_CONTROL_CANNOT_DECODE_VALUE;
import static com.sun.opends.sdk.util.Messages.INFO_VLVRES_CONTROL_NO_VALUE;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1;
import org.opends.sdk.asn1.ASN1Reader;
sdk/src/org/opends/sdk/controls/VLVTarget.java
@@ -2,12 +2,12 @@
import static org.opends.messages.ProtocolMessages.INFO_VLVREQ_CONTROL_INVALID_TARGET_TYPE;
import static com.sun.opends.sdk.util.Messages.INFO_VLVREQ_CONTROL_INVALID_TARGET_TYPE;
import static org.opends.sdk.util.StaticUtils.byteToHex;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1Reader;
import org.opends.sdk.asn1.ASN1Writer;
sdk/src/org/opends/sdk/extensions/CancelRequest.java
@@ -2,13 +2,13 @@
import static org.opends.messages.ExtensionMessages.ERR_EXTOP_CANCEL_CANNOT_DECODE_REQUEST_VALUE;
import static org.opends.messages.ExtensionMessages.ERR_EXTOP_CANCEL_NO_REQUEST_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_EXTOP_CANCEL_CANNOT_DECODE_REQUEST_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_EXTOP_CANCEL_NO_REQUEST_VALUE;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.ResultCode;
import org.opends.sdk.asn1.ASN1;
sdk/src/org/opends/sdk/extensions/GetConnectionIDRequest.java
@@ -4,7 +4,7 @@
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.ResultCode;
import org.opends.sdk.asn1.ASN1;
sdk/src/org/opends/sdk/extensions/GetSymmetricKeyRequest.java
@@ -2,12 +2,12 @@
import static org.opends.messages.ExtensionMessages.ERR_GET_SYMMETRIC_KEY_ASN1_DECODE_EXCEPTION;
import static org.opends.messages.ExtensionMessages.ERR_GET_SYMMETRIC_KEY_NO_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_GET_SYMMETRIC_KEY_ASN1_DECODE_EXCEPTION;
import static com.sun.opends.sdk.util.Messages.ERR_GET_SYMMETRIC_KEY_NO_VALUE;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.ResultCode;
import org.opends.sdk.asn1.ASN1;
sdk/src/org/opends/sdk/extensions/PasswordModifyRequest.java
@@ -2,12 +2,12 @@
import static org.opends.messages.ExtensionMessages.ERR_EXTOP_PASSMOD_CANNOT_DECODE_REQUEST;
import static com.sun.opends.sdk.util.Messages.ERR_EXTOP_PASSMOD_CANNOT_DECODE_REQUEST;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.ResultCode;
import org.opends.sdk.asn1.ASN1;
sdk/src/org/opends/sdk/extensions/PasswordPolicyStateExtendedOperation.java
@@ -2,9 +2,9 @@
import static org.opends.messages.ExtensionMessages.ERR_PWPSTATE_EXTOP_DECODE_FAILURE;
import static org.opends.messages.ExtensionMessages.ERR_PWPSTATE_EXTOP_NO_REQUEST_VALUE;
import static org.opends.messages.ExtensionMessages.ERR_PWPSTATE_EXTOP_UNKNOWN_OP_TYPE;
import static com.sun.opends.sdk.util.Messages.ERR_PWPSTATE_EXTOP_DECODE_FAILURE;
import static com.sun.opends.sdk.util.Messages.ERR_PWPSTATE_EXTOP_NO_REQUEST_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_PWPSTATE_EXTOP_UNKNOWN_OP_TYPE;
import static org.opends.sdk.util.StaticUtils.formatAsGeneralizedTime;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
@@ -14,7 +14,7 @@
import java.util.Date;
import java.util.List;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DN;
import org.opends.sdk.DecodeException;
import org.opends.sdk.ResultCode;
sdk/src/org/opends/sdk/ldap/ASN1StreamReader.java
@@ -28,17 +28,13 @@
import static org.opends.messages.ProtocolMessages.*;
import static org.opends.sdk.ldap.LDAPConstants.ELEMENT_READ_STATE_NEED_ADDITIONAL_LENGTH_BYTES;
import static org.opends.sdk.ldap.LDAPConstants.ELEMENT_READ_STATE_NEED_FIRST_LENGTH_BYTE;
import static org.opends.sdk.ldap.LDAPConstants.ELEMENT_READ_STATE_NEED_TYPE;
import static org.opends.sdk.ldap.LDAPConstants.ELEMENT_READ_STATE_NEED_VALUE_BYTES;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.ldap.LDAPConstants.*;
import java.io.IOException;
import java.nio.BufferUnderflowException;
import java.util.logging.Level;
import org.opends.messages.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.asn1.ASN1Reader;
import org.opends.sdk.asn1.AbstractASN1Reader;
@@ -48,6 +44,7 @@
import com.sun.grizzly.streams.StreamReader;
import com.sun.grizzly.utils.PoolableObject;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/ldap/ASN1StreamWriter.java
@@ -28,14 +28,12 @@
import static org.opends.messages.ProtocolMessages.ERR_ASN1_SEQUENCE_WRITE_NOT_STARTED;
import static org.opends.sdk.asn1.ASN1Constants.BOOLEAN_VALUE_FALSE;
import static org.opends.sdk.asn1.ASN1Constants.BOOLEAN_VALUE_TRUE;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.asn1.ASN1Constants.*;
import java.io.IOException;
import java.util.logging.Level;
import org.opends.messages.Message;
import org.opends.sdk.asn1.ASN1Writer;
import org.opends.sdk.asn1.AbstractASN1Writer;
import org.opends.sdk.util.ByteSequence;
@@ -44,6 +42,7 @@
import com.sun.grizzly.streams.StreamWriter;
import com.sun.grizzly.utils.PoolableObject;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/ldap/LDAPDecoder.java
@@ -29,7 +29,7 @@
import static org.opends.messages.ProtocolMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.asn1.ASN1Constants.*;
import static org.opends.sdk.ldap.LDAPConstants.*;
sdk/src/org/opends/sdk/ldap/SASLStreamWriter.java
@@ -42,6 +42,7 @@
/**
 * SASL stream writer.
 */
@SuppressWarnings("unchecked")
final class SASLStreamWriter extends StreamWriterDecorator
{
  private final SASLFilter saslFilter;
sdk/src/org/opends/sdk/ldap/UnexpectedRequestException.java
@@ -31,7 +31,7 @@
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.requests.Request;
sdk/src/org/opends/sdk/ldap/UnexpectedResponseException.java
@@ -31,7 +31,7 @@
import java.io.IOException;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.responses.Response;
sdk/src/org/opends/sdk/ldap/UnsupportedMessageException.java
@@ -50,7 +50,7 @@
  public UnsupportedMessageException(int id, byte tag,
      ByteString content)
  {
    super(org.opends.messages.Message.raw(
    super(com.sun.opends.sdk.util.Message.raw(
        "Unsupported LDAP message: id=%d, tag=%d, content=%s", id, tag,
        content).toString());
    this.id = id;
sdk/src/org/opends/sdk/ldif/AbstractLDIFReader.java
@@ -29,7 +29,7 @@
import static org.opends.messages.UtilityMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.toLowerCase;
import java.io.BufferedReader;
@@ -41,8 +41,8 @@
import java.util.LinkedList;
import java.util.List;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.*;
import org.opends.sdk.util.*;
sdk/src/org/opends/sdk/ldif/LDIFChangeRecordReader.java
@@ -29,8 +29,8 @@
import static org.opends.messages.UtilityMessages.*;
import static org.opends.sdk.util.StaticUtils.toLowerCase;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.*;
import java.io.IOException;
import java.io.InputStream;
@@ -38,7 +38,6 @@
import java.util.Arrays;
import java.util.List;
import org.opends.messages.Message;
import org.opends.sdk.*;
import org.opends.sdk.requests.ModifyDNRequest;
import org.opends.sdk.requests.ModifyRequest;
@@ -48,6 +47,8 @@
import org.opends.sdk.util.LocalizedIllegalArgumentException;
import org.opends.sdk.util.Validator;
import com.sun.opends.sdk.util.Message;
/**
sdk/src/org/opends/sdk/ldif/LDIFEntryReader.java
@@ -29,21 +29,20 @@
import static org.opends.messages.UtilityMessages.WARN_READ_LDIF_RECORD_MULTIPLE_CHANGE_RECORDS_FOUND;
import static org.opends.messages.UtilityMessages.WARN_READ_LDIF_RECORD_NO_CHANGE_RECORD_FOUND;
import static org.opends.messages.UtilityMessages.WARN_READ_LDIF_RECORD_UNEXPECTED_IO_ERROR;
import static com.sun.opends.sdk.util.Messages.*;
import java.io.IOException;
import java.io.InputStream;
import java.util.Arrays;
import java.util.List;
import org.opends.messages.Message;
import org.opends.sdk.*;
import org.opends.sdk.schema.Schema;
import org.opends.sdk.util.LocalizedIllegalArgumentException;
import org.opends.sdk.util.Validator;
import com.sun.opends.sdk.util.Message;
/**
sdk/src/org/opends/sdk/requests/Requests.java
@@ -29,9 +29,8 @@
import static org.opends.messages.UtilityMessages.WARN_READ_LDIF_RECORD_CHANGE_RECORD_WRONG_TYPE;
import static com.sun.opends.sdk.util.Messages.*;
import org.opends.messages.Message;
import org.opends.sdk.*;
import org.opends.sdk.ldif.ChangeRecord;
import org.opends.sdk.ldif.LDIFChangeRecordReader;
@@ -39,6 +38,8 @@
import org.opends.sdk.util.LocalizedIllegalArgumentException;
import org.opends.sdk.util.Validator;
import com.sun.opends.sdk.util.Message;
/**
sdk/src/org/opends/sdk/sasl/AbstractSASLContext.java
@@ -29,7 +29,7 @@
import static org.opends.messages.ExtensionMessages.INFO_SASL_UNSUPPORTED_CALLBACK;
import static com.sun.opends.sdk.util.Messages.*;
import java.io.IOException;
@@ -101,7 +101,7 @@
      }
      else
      {
        org.opends.messages.Message message =
        com.sun.opends.sdk.util.Message message =
            INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
                .getSASLMechanism(), String.valueOf(callback));
        throw new UnsupportedCallbackException(callback, message
@@ -141,7 +141,7 @@
  protected void handle(AuthorizeCallback callback)
      throws UnsupportedCallbackException
  {
    org.opends.messages.Message message =
    com.sun.opends.sdk.util.Message message =
        INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
            .getSASLMechanism(), String.valueOf(callback));
    throw new UnsupportedCallbackException(callback, message.toString());
@@ -152,7 +152,7 @@
  protected void handle(ChoiceCallback callback)
      throws UnsupportedCallbackException
  {
    org.opends.messages.Message message =
    com.sun.opends.sdk.util.Message message =
        INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
            .getSASLMechanism(), String.valueOf(callback));
    throw new UnsupportedCallbackException(callback, message.toString());
@@ -163,7 +163,7 @@
  protected void handle(ConfirmationCallback callback)
      throws UnsupportedCallbackException
  {
    org.opends.messages.Message message =
    com.sun.opends.sdk.util.Message message =
        INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
            .getSASLMechanism(), String.valueOf(callback));
    throw new UnsupportedCallbackException(callback, message.toString());
@@ -174,7 +174,7 @@
  protected void handle(LanguageCallback callback)
      throws UnsupportedCallbackException
  {
    org.opends.messages.Message message =
    com.sun.opends.sdk.util.Message message =
        INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
            .getSASLMechanism(), String.valueOf(callback));
    throw new UnsupportedCallbackException(callback, message.toString());
@@ -185,7 +185,7 @@
  protected void handle(NameCallback callback)
      throws UnsupportedCallbackException
  {
    org.opends.messages.Message message =
    com.sun.opends.sdk.util.Message message =
        INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
            .getSASLMechanism(), String.valueOf(callback));
    throw new UnsupportedCallbackException(callback, message.toString());
@@ -196,7 +196,7 @@
  protected void handle(PasswordCallback callback)
      throws UnsupportedCallbackException
  {
    org.opends.messages.Message message =
    com.sun.opends.sdk.util.Message message =
        INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
            .getSASLMechanism(), String.valueOf(callback));
    throw new UnsupportedCallbackException(callback, message.toString());
@@ -207,7 +207,7 @@
  protected void handle(RealmCallback callback)
      throws UnsupportedCallbackException
  {
    org.opends.messages.Message message =
    com.sun.opends.sdk.util.Message message =
        INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
            .getSASLMechanism(), String.valueOf(callback));
    throw new UnsupportedCallbackException(callback, message.toString());
@@ -218,7 +218,7 @@
  protected void handle(RealmChoiceCallback callback)
      throws UnsupportedCallbackException
  {
    org.opends.messages.Message message =
    com.sun.opends.sdk.util.Message message =
        INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
            .getSASLMechanism(), String.valueOf(callback));
    throw new UnsupportedCallbackException(callback, message.toString());
@@ -229,7 +229,7 @@
  protected void handle(TextInputCallback callback)
      throws UnsupportedCallbackException
  {
    org.opends.messages.Message message =
    com.sun.opends.sdk.util.Message message =
        INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
            .getSASLMechanism(), String.valueOf(callback));
    throw new UnsupportedCallbackException(callback, message.toString());
@@ -240,7 +240,7 @@
  protected void handle(TextOutputCallback callback)
      throws UnsupportedCallbackException
  {
    org.opends.messages.Message message =
    com.sun.opends.sdk.util.Message message =
        INFO_SASL_UNSUPPORTED_CALLBACK.get(getSASLBindRequest()
            .getSASLMechanism(), String.valueOf(callback));
    throw new UnsupportedCallbackException(callback, message.toString());
sdk/src/org/opends/sdk/sasl/GSSAPISASLBindRequest.java
@@ -29,9 +29,8 @@
import static org.opends.messages.ExtensionMessages.ERR_SASL_CONTEXT_CREATE_ERROR;
import static org.opends.messages.ExtensionMessages.ERR_SASL_PROTOCOL_ERROR;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.*;
import java.security.PrivilegedActionException;
import java.security.PrivilegedExceptionAction;
@@ -44,11 +43,11 @@
import javax.security.sasl.SaslClient;
import javax.security.sasl.SaslException;
import org.opends.messages.Message;
import org.opends.sdk.DN;
import org.opends.sdk.util.ByteString;
import org.opends.sdk.util.Validator;
import com.sun.opends.sdk.util.Message;
import com.sun.security.auth.callback.TextCallbackHandler;
import com.sun.security.auth.module.Krb5LoginModule;
sdk/src/org/opends/sdk/schema/AbstractSubstringMatchingRuleImpl.java
@@ -28,10 +28,11 @@
import static com.sun.opends.sdk.util.Messages.*;
import java.util.LinkedList;
import java.util.List;
import org.opends.messages.SchemaMessages;
import org.opends.sdk.Assertion;
import org.opends.sdk.ConditionResult;
import org.opends.sdk.DecodeException;
@@ -172,7 +173,7 @@
    if (value.length() == 0)
    {
      throw DecodeException.error(
          SchemaMessages.WARN_ATTR_SYNTAX_SUBSTRING_EMPTY.get());
          WARN_ATTR_SYNTAX_SUBSTRING_EMPTY.get());
    }
    ByteSequence initialString = null;
@@ -199,7 +200,7 @@
    if (reader.remaining() == 0)
    {
      throw DecodeException.error(
          SchemaMessages.WARN_ATTR_SYNTAX_SUBSTRING_NO_WILDCARDS
          WARN_ATTR_SYNTAX_SUBSTRING_NO_WILDCARDS
              .get(value.toString()));
    }
    while (true)
@@ -211,7 +212,7 @@
        if (bytes.length() == 0)
        {
          throw DecodeException.error(
              SchemaMessages.WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS
              WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS
                  .get(value.toString(), reader.pos()));
        }
        if (anyStrings == null)
sdk/src/org/opends/sdk/schema/AttributeType.java
@@ -29,7 +29,7 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.SCHEMA_PROPERTY_APPROX_RULE;
import java.util.Collections;
@@ -37,7 +37,7 @@
import java.util.List;
import java.util.Map;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.StaticUtils;
import org.opends.sdk.util.Validator;
sdk/src/org/opends/sdk/schema/AttributeTypeSyntaxImpl.java
@@ -29,15 +29,15 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_OPEN_PARENTHESIS;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_ATTRTYPE_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_ATTRTYPE_EXPECTED_OPEN_PARENTHESIS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_ATTRTYPE_INVALID_ATTRIBUTE_USAGE;
import static org.opends.sdk.schema.SchemaConstants.EMR_OID_FIRST_COMPONENT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_ATTRIBUTE_TYPE_NAME;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.StaticUtils;
sdk/src/org/opends/sdk/schema/AuthPasswordSyntaxImpl.java
@@ -29,12 +29,12 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.EMR_AUTH_PASSWORD_EXACT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_AUTH_PASSWORD_NAME;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/BinarySyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.OMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_BINARY_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/BitStringEqualityMatchingRuleImpl.java
@@ -28,11 +28,11 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/schema/BitStringSyntaxImpl.java
@@ -29,13 +29,13 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_BIT_STRING_INVALID_BIT;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_BIT_STRING_NOT_QUOTED;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_BIT_STRING_TOO_SHORT;
import static org.opends.sdk.schema.SchemaConstants.EMR_BIT_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_BIT_STRING_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/BooleanEqualityMatchingRuleImpl.java
@@ -28,7 +28,7 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/BooleanSyntaxImpl.java
@@ -29,11 +29,11 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_ILLEGAL_BOOLEAN;
import static org.opends.sdk.schema.SchemaConstants.EMR_BOOLEAN_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_BOOLEAN_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/CaseExactIA5EqualityMatchingRuleImpl.java
@@ -28,12 +28,12 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER;
import static org.opends.sdk.util.StringPrepProfile.NO_CASE_FOLD;
import static org.opends.sdk.util.StringPrepProfile.TRIM;
import static org.opends.sdk.util.StringPrepProfile.prepareUnicode;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/schema/CaseExactIA5SubstringMatchingRuleImpl.java
@@ -28,12 +28,12 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER;
import static org.opends.sdk.util.StringPrepProfile.NO_CASE_FOLD;
import static org.opends.sdk.util.StringPrepProfile.TRIM;
import static org.opends.sdk.util.StringPrepProfile.prepareUnicode;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/schema/CaseIgnoreIA5EqualityMatchingRuleImpl.java
@@ -28,12 +28,12 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER;
import static org.opends.sdk.util.StringPrepProfile.CASE_FOLD;
import static org.opends.sdk.util.StringPrepProfile.TRIM;
import static org.opends.sdk.util.StringPrepProfile.prepareUnicode;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/schema/CaseIgnoreIA5SubstringMatchingRuleImpl.java
@@ -28,12 +28,12 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER;
import static org.opends.sdk.util.StringPrepProfile.CASE_FOLD;
import static org.opends.sdk.util.StringPrepProfile.TRIM;
import static org.opends.sdk.util.StringPrepProfile.prepareUnicode;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/schema/CertificateListSyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.OMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_CERTLIST_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/CertificatePairSyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.OMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_CERTPAIR_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/CertificateSyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.OMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_CERTIFICATE_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/ConflictingSchemaElementException.java
@@ -29,7 +29,7 @@
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.LocalizedIllegalArgumentException;
sdk/src/org/opends/sdk/schema/CoreSchemaImpl.java
@@ -32,7 +32,7 @@
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/schema/CountryStringSyntaxImpl.java
@@ -29,12 +29,12 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_COUNTRY_STRING_INVALID_LENGTH;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_COUNTRY_STRING_NOT_PRINTABLE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_COUNTRY_STRING_INVALID_LENGTH;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_COUNTRY_STRING_NOT_PRINTABLE;
import static org.opends.sdk.schema.SchemaConstants.*;
import static org.opends.sdk.util.StaticUtils.toLowerCase;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/DITContentRule.java
@@ -29,11 +29,11 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.Validator;
sdk/src/org/opends/sdk/schema/DITContentRuleSyntaxImpl.java
@@ -29,14 +29,14 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_DCR_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_DCR_EXPECTED_OPEN_PARENTHESIS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static org.opends.sdk.schema.SchemaConstants.EMR_OID_FIRST_COMPONENT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_DIT_CONTENT_RULE_NAME;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.StaticUtils;
sdk/src/org/opends/sdk/schema/DITStructureRule.java
@@ -29,12 +29,12 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_DSR_UNKNOWN_NAME_FORM;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_DSR_UNKNOWN_RULE_ID;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_DSR_UNKNOWN_NAME_FORM;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_DSR_UNKNOWN_RULE_ID;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.Validator;
sdk/src/org/opends/sdk/schema/DITStructureRuleSyntaxImpl.java
@@ -29,15 +29,15 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_DSR_NO_NAME_FORM;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_DSR_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_DSR_EXPECTED_OPEN_PARENTHESIS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_DSR_NO_NAME_FORM;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static org.opends.sdk.schema.SchemaConstants.EMR_INTEGER_FIRST_COMPONENT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_DIT_STRUCTURE_RULE_NAME;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.StaticUtils;
sdk/src/org/opends/sdk/schema/DeliveryMethodSyntaxImpl.java
@@ -29,15 +29,15 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_DELIVERY_METHOD_INVALID_ELEMENT;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_DELIVERY_METHOD_NO_ELEMENTS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_DELIVERY_METHOD_INVALID_ELEMENT;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_DELIVERY_METHOD_NO_ELEMENTS;
import static org.opends.sdk.schema.SchemaConstants.*;
import static org.opends.sdk.util.StaticUtils.toLowerCase;
import java.util.HashSet;
import java.util.StringTokenizer;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/DirectoryStringFirstComponentEqualityMatchingRuleImpl.java
@@ -28,13 +28,13 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_EXPECTED_OPEN_PARENTHESIS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_EXPECTED_OPEN_PARENTHESIS;
import static org.opends.sdk.util.StringPrepProfile.CASE_FOLD;
import static org.opends.sdk.util.StringPrepProfile.TRIM;
import static org.opends.sdk.util.StringPrepProfile.prepareUnicode;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.Assertion;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/DirectoryStringSyntaxImpl.java
@@ -29,10 +29,10 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_DIRECTORYSTRING_INVALID_ZEROLENGTH_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_DIRECTORYSTRING_INVALID_ZEROLENGTH_VALUE;
import static org.opends.sdk.schema.SchemaConstants.*;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/DistinguishedNameSyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_DN_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DN;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.LocalizedIllegalArgumentException;
sdk/src/org/opends/sdk/schema/EnhancedGuideSyntaxImpl.java
@@ -29,13 +29,13 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.EMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.OMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_ENHANCED_GUIDE_NAME;
import static org.opends.sdk.util.StaticUtils.toLowerCase;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.SubstringReader;
sdk/src/org/opends/sdk/schema/EnumOrderingMatchingRule.java
@@ -28,7 +28,7 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_LDAPSYNTAX_ENUM_INVALID_VALUE;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_LDAPSYNTAX_ENUM_INVALID_VALUE;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/EnumSyntaxImpl.java
@@ -29,7 +29,7 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_LDAPSYNTAX_ENUM_INVALID_VALUE;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_LDAPSYNTAX_ENUM_INVALID_VALUE;
import static org.opends.sdk.schema.SchemaConstants.AMR_DOUBLE_METAPHONE_OID;
import static org.opends.sdk.schema.SchemaConstants.EMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.OMR_OID_GENERIC_ENUM;
@@ -42,8 +42,8 @@
import java.util.Collections;
import java.util.List;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteString;
import org.opends.sdk.util.Validator;
sdk/src/org/opends/sdk/schema/FacsimileNumberSyntaxImpl.java
@@ -29,10 +29,10 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_FAXNUMBER_EMPTY;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_FAXNUMBER_END_WITH_DOLLAR;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_FAXNUMBER_ILLEGAL_PARAMETER;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_FAXNUMBER_NOT_PRINTABLE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_FAXNUMBER_EMPTY;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_FAXNUMBER_END_WITH_DOLLAR;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_FAXNUMBER_ILLEGAL_PARAMETER;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_FAXNUMBER_NOT_PRINTABLE;
import static org.opends.sdk.schema.SchemaConstants.EMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.OMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_IGNORE_OID;
@@ -41,7 +41,7 @@
import java.util.HashSet;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/FaxSyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.OMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_FAX_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/GeneralizedTimeSyntaxImpl.java
@@ -29,15 +29,15 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.*;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.TimeZone;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.StaticUtils;
sdk/src/org/opends/sdk/schema/GuideSyntaxImpl.java
@@ -29,13 +29,13 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.EMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.OMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_GUIDE_NAME;
import static org.opends.sdk.util.StaticUtils.toLowerCase;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.SubstringReader;
sdk/src/org/opends/sdk/schema/IA5StringSyntaxImpl.java
@@ -29,11 +29,11 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_IA5_ILLEGAL_CHARACTER;
import static org.opends.sdk.schema.SchemaConstants.*;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/IntegerEqualityMatchingRuleImpl.java
@@ -28,9 +28,9 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_ILLEGAL_INTEGER;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_ILLEGAL_INTEGER;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/schema/IntegerFirstComponentEqualityMatchingRuleImpl.java
@@ -28,11 +28,11 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_EXPECTED_OPEN_PARENTHESIS;
import static org.opends.messages.SchemaMessages.ERR_EMR_INTFIRSTCOMP_FIRST_COMPONENT_NOT_INT;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_EXPECTED_OPEN_PARENTHESIS;
import static com.sun.opends.sdk.util.Messages.ERR_EMR_INTFIRSTCOMP_FIRST_COMPONENT_NOT_INT;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.Assertion;
import org.opends.sdk.ConditionResult;
import org.opends.sdk.DecodeException;
sdk/src/org/opends/sdk/schema/IntegerOrderingMatchingRuleImpl.java
@@ -28,9 +28,9 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_ILLEGAL_INTEGER;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_ILLEGAL_INTEGER;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/schema/IntegerSyntaxImpl.java
@@ -29,16 +29,16 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_INTEGER_DASH_NEEDS_VALUE;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_INTEGER_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_INTEGER_INITIAL_ZERO;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_INTEGER_INVALID_CHARACTER;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_INTEGER_DASH_NEEDS_VALUE;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_INTEGER_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_INTEGER_INITIAL_ZERO;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_INTEGER_INVALID_CHARACTER;
import static org.opends.sdk.schema.SchemaConstants.EMR_INTEGER_OID;
import static org.opends.sdk.schema.SchemaConstants.OMR_INTEGER_OID;
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_EXACT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_INTEGER_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/JPEGSyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.OMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_JPEG_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/LDAPSyntaxDescriptionSyntaxImpl.java
@@ -29,15 +29,15 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.EMR_OID_FIRST_COMPONENT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_LDAP_SYNTAX_NAME;
import java.util.*;
import java.util.regex.Pattern;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.StaticUtils;
sdk/src/org/opends/sdk/schema/MatchingRule.java
@@ -29,15 +29,15 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX;
import static org.opends.messages.SchemaMessages.WARN_MATCHING_RULE_NOT_IMPLEMENTED;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_MR_UNKNOWN_SYNTAX;
import static com.sun.opends.sdk.util.Messages.WARN_MATCHING_RULE_NOT_IMPLEMENTED;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.Assertion;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/MatchingRuleSyntaxImpl.java
@@ -29,15 +29,15 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_MR_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_MR_EXPECTED_OPEN_PARENTHESIS;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_MR_NO_SYNTAX;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_MR_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_MR_EXPECTED_OPEN_PARENTHESIS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_MR_NO_SYNTAX;
import static org.opends.sdk.schema.SchemaConstants.EMR_OID_FIRST_COMPONENT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_MATCHING_RULE_NAME;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.StaticUtils;
sdk/src/org/opends/sdk/schema/MatchingRuleUse.java
@@ -29,12 +29,12 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_ATTR;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_MRUSE_UNKNOWN_MATCHING_RULE;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.Validator;
sdk/src/org/opends/sdk/schema/MatchingRuleUseSyntaxImpl.java
@@ -29,17 +29,17 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_MRUSE_EXPECTED_OPEN_PARENTHESIS;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_MRUSE_NO_ATTR;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_MRUSE_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_MRUSE_EXPECTED_OPEN_PARENTHESIS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_MRUSE_NO_ATTR;
import static org.opends.sdk.schema.SchemaConstants.EMR_OID_FIRST_COMPONENT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_MATCHING_RULE_USE_NAME;
import java.util.Set;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.StaticUtils;
sdk/src/org/opends/sdk/schema/NameAndOptionalUIDSyntaxImpl.java
@@ -29,13 +29,13 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_NAMEANDUID_ILLEGAL_BINARY_DIGIT;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_NAMEANDUID_INVALID_DN;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_NAMEANDUID_ILLEGAL_BINARY_DIGIT;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_NAMEANDUID_INVALID_DN;
import static org.opends.sdk.schema.SchemaConstants.EMR_UNIQUE_MEMBER_OID;
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_NAME_AND_OPTIONAL_UID_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DN;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.LocalizedIllegalArgumentException;
sdk/src/org/opends/sdk/schema/NameForm.java
@@ -29,14 +29,14 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_NAME_FORM_STRUCTURAL_CLASS_NOT_STRUCTURAL;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_OPTIONAL_ATTR;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_REQUIRED_ATTR;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_NAME_FORM_UNKNOWN_STRUCTURAL_CLASS;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.Validator;
sdk/src/org/opends/sdk/schema/NameFormSyntaxImpl.java
@@ -29,14 +29,14 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.EMR_OID_FIRST_COMPONENT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_NAME_FORM_NAME;
import java.util.Set;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.StaticUtils;
sdk/src/org/opends/sdk/schema/NumericStringSyntaxImpl.java
@@ -29,15 +29,15 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_NUMERIC_STRING_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_NUMERIC_STRING_ILLEGAL_CHAR;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_NUMERIC_STRING_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_NUMERIC_STRING_ILLEGAL_CHAR;
import static org.opends.sdk.schema.SchemaConstants.EMR_NUMERIC_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.OMR_NUMERIC_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_EXACT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_NUMERIC_STRING_NAME;
import static org.opends.sdk.util.StaticUtils.isDigit;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/OIDSyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_OID_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.SubstringReader;
sdk/src/org/opends/sdk/schema/ObjectClass.java
@@ -29,14 +29,14 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.EXTENSIBLE_OBJECT_OBJECTCLASS_NAME;
import static org.opends.sdk.schema.SchemaConstants.EXTENSIBLE_OBJECT_OBJECTCLASS_OID;
import static org.opends.sdk.schema.SchemaConstants.TOP_OBJECTCLASS_NAME;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.Validator;
sdk/src/org/opends/sdk/schema/ObjectClassSyntaxImpl.java
@@ -29,14 +29,14 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_ILLEGAL_TOKEN;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_OBJECTCLASS_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_OBJECTCLASS_EXPECTED_OPEN_PARENTHESIS;
import static org.opends.sdk.schema.SchemaConstants.EMR_OID_FIRST_COMPONENT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_OBJECTCLASS_NAME;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.StaticUtils;
sdk/src/org/opends/sdk/schema/ObjectIdentifierFirstComponentEqualityMatchingRuleImpl.java
@@ -28,10 +28,10 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_EXPECTED_OPEN_PARENTHESIS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_EXPECTED_OPEN_PARENTHESIS;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.Assertion;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/OctetStringSyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.OMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_OCTET_STRING_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/OtherMailboxSyntaxImpl.java
@@ -29,12 +29,12 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.EMR_CASE_IGNORE_LIST_OID;
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_IGNORE_LIST_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_OTHER_MAILBOX_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/PostalAddressSyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_POSTAL_ADDRESS_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/PresentationAddressSyntaxImpl.java
@@ -31,7 +31,7 @@
import static org.opends.sdk.schema.SchemaConstants.*;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/PrintableStringSyntaxImpl.java
@@ -29,11 +29,11 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_PRINTABLE_STRING_EMPTY_VALUE;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_PRINTABLE_STRING_ILLEGAL_CHARACTER;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_PRINTABLE_STRING_EMPTY_VALUE;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_PRINTABLE_STRING_ILLEGAL_CHARACTER;
import static org.opends.sdk.schema.SchemaConstants.*;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/ProtocolInformationSyntaxImpl.java
@@ -31,7 +31,7 @@
import static org.opends.sdk.schema.SchemaConstants.*;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/RegexSyntaxImpl.java
@@ -29,7 +29,7 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_LDAPSYNTAX_REGEX_INVALID_VALUE;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_LDAPSYNTAX_REGEX_INVALID_VALUE;
import static org.opends.sdk.schema.SchemaConstants.AMR_DOUBLE_METAPHONE_OID;
import static org.opends.sdk.schema.SchemaConstants.EMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.OMR_CASE_IGNORE_OID;
@@ -37,8 +37,8 @@
import java.util.regex.Pattern;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.Validator;
sdk/src/org/opends/sdk/schema/Schema.java
@@ -28,11 +28,11 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.*;
import org.opends.sdk.responses.SearchResultEntry;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/schema/SchemaBuilder.java
@@ -29,23 +29,20 @@
import static org.opends.messages.CoreMessages.*;
import static org.opends.messages.SchemaMessages.*;
import static org.opends.sdk.schema.SchemaConstants.EXTENSIBLE_OBJECT_OBJECTCLASS_OID;
import static org.opends.sdk.schema.SchemaConstants.OMR_GENERIC_ENUM_NAME;
import static org.opends.sdk.schema.SchemaConstants.SCHEMA_PROPERTY_APPROX_RULE;
import static org.opends.sdk.schema.SchemaConstants.TOP_OBJECTCLASS_NAME;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.*;
import java.util.*;
import java.util.regex.Pattern;
import org.opends.messages.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.LocalizedIllegalArgumentException;
import org.opends.sdk.util.StaticUtils;
import org.opends.sdk.util.SubstringReader;
import org.opends.sdk.util.Validator;
import com.sun.opends.sdk.util.Message;
/**
sdk/src/org/opends/sdk/schema/SchemaElement.java
@@ -32,7 +32,7 @@
import java.util.List;
import java.util.Map;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.Validator;
sdk/src/org/opends/sdk/schema/SchemaException.java
@@ -29,7 +29,7 @@
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.LocalizableException;
sdk/src/org/opends/sdk/schema/SchemaNotFoundException.java
@@ -29,7 +29,7 @@
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.LocalizableException;
sdk/src/org/opends/sdk/schema/SchemaUtils.java
@@ -28,13 +28,13 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.isAlpha;
import static org.opends.sdk.util.StaticUtils.isDigit;
import java.util.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.SubstringReader;
sdk/src/org/opends/sdk/schema/SubstringAssertionSyntaxImpl.java
@@ -34,8 +34,8 @@
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_SUBSTRING_ASSERTION_NAME;
import org.opends.messages.MessageBuilder;
import org.opends.messages.SchemaMessages;
import com.sun.opends.sdk.util.MessageBuilder;
import com.sun.opends.sdk.util.Messages;
import org.opends.sdk.util.ByteSequence;
@@ -120,7 +120,7 @@
      if (valueString.charAt(0) == '*')
      {
        invalidReason
            .append(SchemaMessages.WARN_ATTR_SYNTAX_SUBSTRING_ONLY_WILDCARD
            .append(Messages.WARN_ATTR_SYNTAX_SUBSTRING_ONLY_WILDCARD
                .get());
        return false;
@@ -138,7 +138,7 @@
            && valueString.charAt(i - 1) == '*')
        {
          invalidReason
              .append(SchemaMessages.WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS
              .append(Messages.WARN_ATTR_SYNTAX_SUBSTRING_CONSECUTIVE_WILDCARDS
                  .get(valueString, i));
          return false;
        }
sdk/src/org/opends/sdk/schema/SupportedAlgorithmSyntaxImpl.java
@@ -33,7 +33,7 @@
import static org.opends.sdk.schema.SchemaConstants.OMR_OCTET_STRING_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_SUPPORTED_ALGORITHM_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/Syntax.java
@@ -29,7 +29,7 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import java.util.Collections;
import java.util.Iterator;
@@ -37,8 +37,8 @@
import java.util.Map;
import java.util.regex.Pattern;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.Validator;
sdk/src/org/opends/sdk/schema/SyntaxImpl.java
@@ -29,7 +29,7 @@
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/TelephoneNumberSyntaxImpl.java
@@ -29,17 +29,17 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_TELEPHONE_EMPTY;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_TELEPHONE_ILLEGAL_CHAR;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_TELEPHONE_NO_DIGITS;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_TELEPHONE_NO_PLUS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_TELEPHONE_EMPTY;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_TELEPHONE_ILLEGAL_CHAR;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_TELEPHONE_NO_DIGITS;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_TELEPHONE_NO_PLUS;
import static org.opends.sdk.schema.SchemaConstants.EMR_TELEPHONE_OID;
import static org.opends.sdk.schema.SchemaConstants.SMR_TELEPHONE_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_TELEPHONE_NAME;
import static org.opends.sdk.util.StaticUtils.isDigit;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/TeletexTerminalIdentifierSyntaxImpl.java
@@ -29,7 +29,7 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.EMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.OMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_IGNORE_OID;
@@ -37,7 +37,7 @@
import java.util.HashSet;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/TelexNumberSyntaxImpl.java
@@ -29,16 +29,16 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_TELEX_ILLEGAL_CHAR;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_TELEX_NOT_PRINTABLE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_TELEX_TOO_SHORT;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_TELEX_TRUNCATED;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_TELEX_ILLEGAL_CHAR;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_TELEX_NOT_PRINTABLE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_TELEX_TOO_SHORT;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_TELEX_TRUNCATED;
import static org.opends.sdk.schema.SchemaConstants.EMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.OMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.SMR_CASE_IGNORE_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_TELEX_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/UTCTimeSyntaxImpl.java
@@ -29,15 +29,15 @@
import static org.opends.messages.SchemaMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.schema.SchemaConstants.*;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.StaticUtils;
sdk/src/org/opends/sdk/schema/UUIDEqualityMatchingRuleImpl.java
@@ -28,11 +28,11 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/schema/UUIDOrderingMatchingRuleImpl.java
@@ -28,11 +28,11 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
import org.opends.sdk.util.ByteString;
sdk/src/org/opends/sdk/schema/UUIDSyntaxImpl.java
@@ -29,12 +29,12 @@
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX;
import static org.opends.messages.SchemaMessages.WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_UUID_EXPECTED_DASH;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_UUID_EXPECTED_HEX;
import static com.sun.opends.sdk.util.Messages.WARN_ATTR_SYNTAX_UUID_INVALID_LENGTH;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_UUID_NAME;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/schema/UnknownSchemaElementException.java
@@ -29,7 +29,7 @@
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.LocalizedIllegalArgumentException;
sdk/src/org/opends/sdk/schema/UserPasswordSyntaxImpl.java
@@ -29,16 +29,16 @@
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_USERPW_NO_CLOSING_BRACE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_USERPW_NO_OPENING_BRACE;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_USERPW_NO_SCHEME;
import static org.opends.messages.SchemaMessages.ERR_ATTR_SYNTAX_USERPW_NO_VALUE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_USERPW_NO_CLOSING_BRACE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_USERPW_NO_OPENING_BRACE;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_USERPW_NO_SCHEME;
import static com.sun.opends.sdk.util.Messages.ERR_ATTR_SYNTAX_USERPW_NO_VALUE;
import static org.opends.sdk.schema.SchemaConstants.EMR_USER_PASSWORD_EXACT_OID;
import static org.opends.sdk.schema.SchemaConstants.SYNTAX_USER_PASSWORD_NAME;
import static org.opends.sdk.util.StaticUtils.toLowerCase;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import org.opends.sdk.DecodeException;
import org.opends.sdk.util.ByteSequence;
sdk/src/org/opends/sdk/tools/ApplicationKeyManager.java
New file
@@ -0,0 +1,335 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2008-2009 Sun Microsystems, Inc.
 *      Portions Copyright 2009 Parametric Technology Corporation (PTC)
 */
package org.opends.sdk.tools;
import java.net.Socket;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.NoSuchProviderException;
import java.security.Principal;
import java.security.PrivateKey;
import java.security.UnrecoverableKeyException;
import java.security.cert.X509Certificate;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.net.ssl.KeyManager;
import javax.net.ssl.KeyManagerFactory;
import javax.net.ssl.TrustManagerFactory;
import javax.net.ssl.X509KeyManager;
import org.opends.sdk.util.Platform;
/**
 * This class is in charge of checking whether the certificates that are
 * presented are trusted or not. This implementation tries to check also
 * that the subject DN of the certificate corresponds to the host passed
 * using the setHostName method.
 *<p>
 * The constructor tries to use a default TrustManager from the system
 * and if it cannot be retrieved this class will only accept the
 * certificates explicitly accepted by the user (and specified by
 * calling acceptCertificate).
 *<p>
 * NOTE: this class is not aimed to be used when we have connections in
 * parallel.
 */
final class ApplicationKeyManager implements X509KeyManager
{
  static private final Logger LOG = Logger
      .getLogger(ApplicationKeyManager.class.getName());
  /**
   * The default keyManager.
   */
  private X509KeyManager keyManager = null;
  /**
   * The default constructor.
   *
   * @param keystore
   *          The keystore to use for this keymanager.
   * @param password
   *          The keystore password to use for this keymanager.
   */
  ApplicationKeyManager(KeyStore keystore, char[] password)
  {
    KeyManagerFactory kmf = null;
    String userSpecifiedAlgo = System
        .getProperty("org.opends.admin.keymanageralgo");
    String userSpecifiedProvider = System
        .getProperty("org.opends.admin.keymanagerprovider");
    // Handle IBM specific cases if the user did not specify a algorithm
    // and/or provider.
    if (userSpecifiedAlgo == null && Platform.isVendor("IBM"))
      userSpecifiedAlgo = "IbmX509";
    if (userSpecifiedProvider == null && Platform.isVendor("IBM"))
      userSpecifiedProvider = "IBMJSSE2";
    // Have some fallbacks to choose the provider and algorith of the
    // key manager. First see if the user wanted to use something
    // specific, then try with the SunJSSE provider and SunX509
    // algorithm. Finally, fallback to the default algorithm of the JVM.
    String[] preferredProvider = { userSpecifiedProvider, "SunJSSE",
        null, null };
    String[] preferredAlgo = { userSpecifiedAlgo, "SunX509", "SunX509",
        TrustManagerFactory.getDefaultAlgorithm() };
    for (int i = 0; i < preferredProvider.length && keyManager == null; i++)
    {
      String provider = preferredProvider[i];
      String algo = preferredAlgo[i];
      if (algo == null)
      {
        continue;
      }
      try
      {
        if (provider != null)
        {
          kmf = KeyManagerFactory.getInstance(algo, provider);
        }
        else
        {
          kmf = KeyManagerFactory.getInstance(algo);
        }
        kmf.init(keystore, password);
        KeyManager kms[] = kmf.getKeyManagers();
        /*
         * Iterate over the returned keymanagers, look for an instance
         * of X509KeyManager. If found, use that as our "default" key
         * manager.
         */
        for (int j = 0; j < kms.length; j++)
        {
          if (kms[i] instanceof X509KeyManager)
          {
            keyManager = (X509KeyManager) kms[j];
            break;
          }
        }
      }
      catch (NoSuchAlgorithmException e)
      {
        // Nothing to do. Maybe we should avoid this and be strict, but
        // we are in a best effor mode.
        LOG.log(Level.WARNING, "Error with the algorithm", e);
      }
      catch (KeyStoreException e)
      {
        // Nothing to do. Maybe we should avoid this and be strict, but
        // we are in a best effor mode..
        LOG.log(Level.WARNING, "Error with the keystore", e);
      }
      catch (UnrecoverableKeyException e)
      {
        // Nothing to do. Maybe we should avoid this and be strict, but
        // we are in a best effor mode.
        LOG.log(Level.WARNING, "Error with the key", e);
      }
      catch (NoSuchProviderException e)
      {
        // Nothing to do. Maybe we should avoid this and be strict, but
        // we are in a best effor mode.
        LOG.log(Level.WARNING, "Error with the provider", e);
      }
    }
  }
  /**
   * Choose an alias to authenticate the client side of a secure socket
   * given the public key type and the list of certificate issuer
   * authorities recognized by the peer (if any).
   *
   * @param keyType
   *          the key algorithm type name(s), ordered with the
   *          most-preferred key type first.
   * @param issuers
   *          the list of acceptable CA issuer subject names or null if
   *          it does not matter which issuers are used.
   * @param socket
   *          the socket to be used for this connection. This parameter
   *          can be null, in which case this method will return the
   *          most generic alias to use.
   * @return the alias name for the desired key, or null if there are no
   *         matches.
   */
  public String chooseClientAlias(String[] keyType,
      Principal[] issuers, Socket socket)
  {
    if (keyManager != null)
    {
      return keyManager.chooseClientAlias(keyType, issuers, socket);
    }
    else
    {
      return null;
    }
  }
  /**
   * Choose an alias to authenticate the client side of a secure socket
   * given the public key type and the list of certificate issuer
   * authorities recognized by the peer (if any).
   *
   * @param keyType
   *          the key algorithm type name(s), ordered with the
   *          most-preferred key type first.
   * @param issuers
   *          the list of acceptable CA issuer subject names or null if
   *          it does not matter which issuers are used.
   * @param socket
   *          the socket to be used for this connection. This parameter
   *          can be null, in which case this method will return the
   *          most generic alias to use.
   * @return the alias name for the desired key, or null if there are no
   *         matches.
   */
  public String chooseServerAlias(String keyType, Principal[] issuers,
      Socket socket)
  {
    if (keyManager != null)
    {
      return keyManager.chooseServerAlias(keyType, issuers, socket);
    }
    else
    {
      return null;
    }
  }
  /**
   * Returns the certificate chain associated with the given alias.
   *
   * @param alias
   *          the alias name
   * @return the certificate chain (ordered with the user's certificate
   *         first and the root certificate authority last), or null if
   *         the alias can't be found.
   */
  public X509Certificate[] getCertificateChain(String alias)
  {
    if (keyManager != null)
    {
      return keyManager.getCertificateChain(alias);
    }
    else
    {
      return null;
    }
  }
  /**
   * Get the matching aliases for authenticating the server side of a
   * secure socket given the public key type and the list of certificate
   * issuer authorities recognized by the peer (if any).
   *
   * @param keyType
   *          the key algorithm type name
   * @param issuers
   *          the list of acceptable CA issuer subject names or null if
   *          it does not matter which issuers are used.
   * @return an array of the matching alias names, or null if there were
   *         no matches.
   */
  public String[] getClientAliases(String keyType, Principal[] issuers)
  {
    if (keyManager != null)
    {
      return keyManager.getClientAliases(keyType, issuers);
    }
    else
    {
      return null;
    }
  }
  /**
   * Returns the key associated with the given alias.
   *
   * @param alias
   *          the alias name
   * @return the requested key, or null if the alias can't be found.
   */
  public PrivateKey getPrivateKey(String alias)
  {
    if (keyManager != null)
    {
      return keyManager.getPrivateKey(alias);
    }
    else
    {
      return null;
    }
  }
  /**
   * Get the matching aliases for authenticating the server side of a
   * secure socket given the public key type and the list of certificate
   * issuer authorities recognized by the peer (if any).
   *
   * @param keyType
   *          the key algorithm type name
   * @param issuers
   *          the list of acceptable CA issuer subject names or null if
   *          it does not matter which issuers are used.
   * @return an array of the matching alias names, or null if there were
   *         no matches.
   */
  public String[] getServerAliases(String keyType, Principal[] issuers)
  {
    if (keyManager != null)
    {
      return keyManager.getServerAliases(keyType, issuers);
    }
    else
    {
      return null;
    }
  }
}
sdk/src/org/opends/sdk/tools/Argument.java
@@ -28,14 +28,14 @@
import static org.opends.messages.UtilityMessages.*;
import static org.opends.sdk.util.StaticUtils.toLowerCase;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.*;
import java.util.Iterator;
import java.util.LinkedList;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
sdk/src/org/opends/sdk/tools/ArgumentException.java
@@ -28,7 +28,7 @@
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
import org.opends.sdk.util.LocalizableException;
sdk/src/org/opends/sdk/tools/ArgumentGroup.java
@@ -34,7 +34,7 @@
import java.util.LinkedList;
import java.util.List;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/tools/ArgumentParser.java
@@ -28,18 +28,10 @@
import static org.opends.messages.ToolMessages.INFO_DESCRIPTION_GENERAL_ARGS;
import static org.opends.messages.ToolMessages.INFO_DESCRIPTION_IO_ARGS;
import static org.opends.messages.ToolMessages.INFO_DESCRIPTION_LDAP_CONNECTION_ARGS;
import static org.opends.messages.ToolMessages.INFO_DESCRIPTION_PRODUCT_VERSION;
import static org.opends.messages.UtilityMessages.*;
import static org.opends.server.tools.ToolConstants.*;
import static org.opends.server.util.ServerConstants.EOL;
import static org.opends.server.util.ServerConstants.PROPERTY_SCRIPT_NAME;
import static org.opends.server.util.StaticUtils.getBytes;
import static org.opends.server.util.StaticUtils.getExceptionMessage;
import static org.opends.server.util.StaticUtils.toLowerCase;
import static org.opends.server.util.StaticUtils.wrapText;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.tools.ToolConstants.*;
import static org.opends.sdk.tools.Utils.*;
import static org.opends.sdk.util.StaticUtils.*;
import java.io.File;
import java.io.FileInputStream;
@@ -47,9 +39,8 @@
import java.io.OutputStream;
import java.util.*;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import org.opends.server.util.SetupUtils;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
@@ -157,15 +148,15 @@
   * Group for arguments that have not been explicitly grouped. These
   * will appear at the top of the usage statement without a header.
   */
  private ArgumentGroup defaultArgGroup =
      new ArgumentGroup(Message.EMPTY, Integer.MAX_VALUE);
  private ArgumentGroup defaultArgGroup = new ArgumentGroup(
      Message.EMPTY, Integer.MAX_VALUE);
  /**
   * Group for arguments that are related to connection through LDAP.
   * This includes options like the bind DN, the port, etc.
   */
  private ArgumentGroup ldapArgGroup =
      new ArgumentGroup(INFO_DESCRIPTION_LDAP_CONNECTION_ARGS.get(),
  private ArgumentGroup ldapArgGroup = new ArgumentGroup(
      INFO_DESCRIPTION_LDAP_CONNECTION_ARGS.get(),
          Integer.MIN_VALUE + 2);
  /**
@@ -173,21 +164,19 @@
   * properties file, no-prompt etc. These will appear toward the bottom
   * of the usage statement.
   */
  private ArgumentGroup ioArgGroup =
      new ArgumentGroup(INFO_DESCRIPTION_IO_ARGS.get(),
          Integer.MIN_VALUE + 1);
  private ArgumentGroup ioArgGroup = new ArgumentGroup(
      INFO_DESCRIPTION_IO_ARGS.get(), Integer.MIN_VALUE + 1);
  /**
   * Group for arguments that are general like help, version etc. These
   * will appear at the end of the usage statement.
   */
  private ArgumentGroup generalArgGroup =
      new ArgumentGroup(INFO_DESCRIPTION_GENERAL_ARGS.get(),
          Integer.MIN_VALUE);
  private ArgumentGroup generalArgGroup = new ArgumentGroup(
      INFO_DESCRIPTION_GENERAL_ARGS.get(), Integer.MIN_VALUE);
  private final static String INDENT = "    ";
  private final static int MAX_LENGTH =
      SetupUtils.isWindows() ? 79 : 80;
  private final static int MAX_LENGTH = 80;
@@ -206,7 +195,7 @@
   *          Indicates whether long arguments should be treated in a
   *          case-sensitive manner.
   */
  public ArgumentParser(String mainClassName, Message toolDescription,
  ArgumentParser(String mainClassName, Message toolDescription,
      boolean longArgumentsCaseSensitive)
  {
    this.mainClassName = mainClassName;
@@ -264,7 +253,7 @@
   *          unnamed trailing arguments in the generated usage
   *          information.
   */
  public ArgumentParser(String mainClassName, Message toolDescription,
  ArgumentParser(String mainClassName, Message toolDescription,
      boolean longArgumentsCaseSensitive,
      boolean allowsTrailingArguments, int minTrailingArguments,
      int maxTrailingArguments, String trailingArgsDisplayName)
@@ -301,7 +290,7 @@
   *         invoked to launch the program with which this argument
   *         parser is associated.
   */
  public String getMainClassName()
  String getMainClassName()
  {
    return mainClassName;
  }
@@ -315,7 +304,7 @@
   * @return A human-readable description for this tool, or {@code null}
   *         if none is available.
   */
  public Message getToolDescription()
  Message getToolDescription()
  {
    return toolDescription;
  }
@@ -333,7 +322,7 @@
   * @return <CODE>true</CODE> if this parser allows unnamed trailing
   *         arguments, or <CODE>false</CODE> if it does not.
   */
  public boolean allowsTrailingArguments()
  boolean allowsTrailingArguments()
  {
    return allowsTrailingArguments;
  }
@@ -348,7 +337,7 @@
   *         be provided, or a value less than or equal to zero if no
   *         minimum will be enforced.
   */
  public int getMinTrailingArguments()
  int getMinTrailingArguments()
  {
    return minTrailingArguments;
  }
@@ -363,7 +352,7 @@
   *         be provided, or a value less than or equal to zero if no
   *         maximum will be enforced.
   */
  public int getMaxTrailingArguments()
  int getMaxTrailingArguments()
  {
    return maxTrailingArguments;
  }
@@ -377,7 +366,7 @@
   * @return The list of all arguments that have been defined for this
   *         argument parser.
   */
  public LinkedList<Argument> getArgumentList()
  LinkedList<Argument> getArgumentList()
  {
    return argumentList;
  }
@@ -392,7 +381,7 @@
   * @return The argument with the specified name, or <CODE>null</CODE>
   *         if there is no such argument.
   */
  public Argument getArgument(String name)
  Argument getArgument(String name)
  {
    return argumentMap.get(name);
  }
@@ -407,7 +396,7 @@
   * @return The set of arguments mapped by the short identifier that
   *         may be used to reference them.
   */
  public HashMap<Character, Argument> getArgumentsByShortID()
  HashMap<Character, Argument> getArgumentsByShortID()
  {
    return shortIDMap;
  }
@@ -422,7 +411,7 @@
   * @return The argument with the specified short identifier, or
   *         <CODE>null</CODE> if there is no such argument.
   */
  public Argument getArgumentForShortID(Character shortID)
  Argument getArgumentForShortID(Character shortID)
  {
    return shortIDMap.get(shortID);
  }
@@ -437,7 +426,7 @@
   * @return The set of arguments mapped by the long identifier that may
   *         be used to reference them.
   */
  public HashMap<String, Argument> getArgumentsByLongID()
  HashMap<String, Argument> getArgumentsByLongID()
  {
    return longIDMap;
  }
@@ -452,7 +441,7 @@
   * @return The argument with the specified long identifier, or
   *         <CODE>null</CODE> if there is no such argument.
   */
  public Argument getArgumentForLongID(String longID)
  Argument getArgumentForLongID(String longID)
  {
    return longIDMap.get(longID);
  }
@@ -466,7 +455,7 @@
   * @return The set of unnamed trailing arguments that were provided on
   *         the command line.
   */
  public ArrayList<String> getTrailingArguments()
  ArrayList<String> getTrailingArguments()
  {
    return trailingArguments;
  }
@@ -480,7 +469,7 @@
   *         <CODE>null</CODE> if the argument list has not yet been
   *         parsed.
   */
  public String[] getRawArguments()
  String[] getRawArguments()
  {
    return rawArguments;
  }
@@ -493,7 +482,7 @@
   * @param description
   *          for the default group
   */
  public void setDefaultArgumentGroupDescription(Message description)
  void setDefaultArgumentGroupDescription(Message description)
  {
    this.defaultArgGroup.setDescription(description);
  }
@@ -506,7 +495,7 @@
   * @param description
   *          for the LDAP group
   */
  public void setLdapArgumentGroupDescription(Message description)
  void setLdapArgumentGroupDescription(Message description)
  {
    this.ldapArgGroup.setDescription(description);
  }
@@ -520,7 +509,7 @@
   * @param description
   *          for the input/output group
   */
  public void setInputOutputArgumentGroupDescription(Message description)
  void setInputOutputArgumentGroupDescription(Message description)
  {
    this.ioArgGroup.setDescription(description);
  }
@@ -533,7 +522,7 @@
   * @param description
   *          for the general group
   */
  public void setGeneralArgumentGroupDescription(Message description)
  void setGeneralArgumentGroupDescription(Message description)
  {
    this.generalArgGroup.setDescription(description);
  }
@@ -550,7 +539,7 @@
   *           If the provided argument conflicts with another argument
   *           that has already been defined.
   */
  public void addArgument(Argument argument) throws ArgumentException
  void addArgument(Argument argument) throws ArgumentException
  {
    addArgument(argument, null);
  }
@@ -567,8 +556,7 @@
   *           If the provided argument conflicts with another argument
   *           that has already been defined.
   */
  public void addDefaultArgument(Argument argument)
      throws ArgumentException
  void addDefaultArgument(Argument argument) throws ArgumentException
  {
    addArgument(argument, defaultArgGroup);
  }
@@ -585,7 +573,7 @@
   *           If the provided argument conflicts with another argument
   *           that has already been defined.
   */
  public void addLdapConnectionArgument(Argument argument)
  void addLdapConnectionArgument(Argument argument)
      throws ArgumentException
  {
    addArgument(argument, ldapArgGroup);
@@ -603,7 +591,7 @@
   *           If the provided argument conflicts with another argument
   *           that has already been defined.
   */
  public void addInputOutputArgument(Argument argument)
  void addInputOutputArgument(Argument argument)
      throws ArgumentException
  {
    addArgument(argument, ioArgGroup);
@@ -621,8 +609,7 @@
   *           If the provided argument conflicts with another argument
   *           that has already been defined.
   */
  public void addGeneralArgument(Argument argument)
      throws ArgumentException
  void addGeneralArgument(Argument argument) throws ArgumentException
  {
    addArgument(argument, generalArgGroup);
  }
@@ -641,7 +628,7 @@
   *           If the provided argument conflicts with another argument
   *           that has already been defined.
   */
  public void addArgument(Argument argument, ArgumentGroup group)
  void addArgument(Argument argument, ArgumentGroup group)
      throws ArgumentException
  {
@@ -650,9 +637,8 @@
    {
      String conflictingName = shortIDMap.get(shortID).getName();
      Message message =
          ERR_ARGPARSER_DUPLICATE_SHORT_ID.get(argument.getName(),
              String.valueOf(shortID), conflictingName);
      Message message = ERR_ARGPARSER_DUPLICATE_SHORT_ID.get(argument
          .getName(), String.valueOf(shortID), conflictingName);
      throw new ArgumentException(message);
    }
@@ -664,8 +650,8 @@
        // identifier.
        try
        {
          versionArgument =
              new BooleanArgument(OPTION_LONG_PRODUCT_VERSION, null,
          versionArgument = new BooleanArgument(
              OPTION_LONG_PRODUCT_VERSION, null,
                  OPTION_LONG_PRODUCT_VERSION,
                  INFO_DESCRIPTION_PRODUCT_VERSION.get());
          this.generalArgGroup.addArgument(versionArgument);
@@ -688,9 +674,8 @@
      {
        String conflictingName = longIDMap.get(longID).getName();
        Message message =
            ERR_ARGPARSER_DUPLICATE_LONG_ID.get(argument.getName(),
                argument.getLongIdentifier(), conflictingName);
        Message message = ERR_ARGPARSER_DUPLICATE_LONG_ID.get(argument
            .getName(), argument.getLongIdentifier(), conflictingName);
        throw new ArgumentException(message);
      }
    }
@@ -732,7 +717,7 @@
   *          The argument whose presence should automatically trigger
   *          the display of usage information.
   */
  public void setUsageArgument(Argument argument)
  void setUsageArgument(Argument argument)
  {
    usageArgument = argument;
    usageOutputStream = System.out;
@@ -758,8 +743,7 @@
   *          The output stream to which the usage information should be
   *          written.
   */
  public void setUsageArgument(Argument argument,
      OutputStream outputStream)
  void setUsageArgument(Argument argument, OutputStream outputStream)
  {
    usageArgument = argument;
    usageOutputStream = outputStream;
@@ -775,7 +759,7 @@
   *          The argument which will be used to identify the file
   *          properties.
   */
  public void setFilePropertiesArgument(StringArgument argument)
  void setFilePropertiesArgument(StringArgument argument)
  {
    filePropertiesPathArgument = argument;
  }
@@ -790,7 +774,7 @@
   *          The argument which will be used to indicate if we have to
   *          look for properties file.
   */
  public void setNoPropertiesFileArgument(BooleanArgument argument)
  void setNoPropertiesFileArgument(BooleanArgument argument)
  {
    noPropertiesFileArgument = argument;
  }
@@ -807,8 +791,7 @@
   *           If a problem was encountered while parsing the provided
   *           arguments.
   */
  public void parseArguments(String[] rawArguments)
      throws ArgumentException
  void parseArguments(String[] rawArguments) throws ArgumentException
  {
    parseArguments(rawArguments, null);
  }
@@ -833,9 +816,8 @@
   *           If a problem was encountered while parsing the provided
   *           arguments or interacting with the properties file.
   */
  public void parseArguments(String[] rawArguments,
      String propertiesFile, boolean requirePropertiesFile)
      throws ArgumentException
  void parseArguments(String[] rawArguments, String propertiesFile,
      boolean requirePropertiesFile) throws ArgumentException
  {
    this.rawArguments = rawArguments;
@@ -853,9 +835,8 @@
    {
      if (requirePropertiesFile)
      {
        Message message =
            ERR_ARGPARSER_CANNOT_READ_PROPERTIES_FILE.get(String
                .valueOf(propertiesFile), getExceptionMessage(e));
        Message message = ERR_ARGPARSER_CANNOT_READ_PROPERTIES_FILE
            .get(String.valueOf(propertiesFile), getExceptionMessage(e));
        throw new ArgumentException(message, e);
      }
    }
@@ -881,7 +862,7 @@
   *           If a problem was encountered while parsing the provided
   *           arguments.
   */
  public void parseArguments(String[] rawArguments,
  void parseArguments(String[] rawArguments,
      Properties argumentProperties) throws ArgumentException
  {
    this.rawArguments = rawArguments;
@@ -899,8 +880,7 @@
        if ((maxTrailingArguments > 0)
            && (trailingArguments.size() > maxTrailingArguments))
        {
          Message message =
              ERR_ARGPARSER_TOO_MANY_TRAILING_ARGS
          Message message = ERR_ARGPARSER_TOO_MANY_TRAILING_ARGS
                  .get(maxTrailingArguments);
          throw new ArgumentException(message);
        }
@@ -937,8 +917,8 @@
        else if (equalPos == 0)
        {
          // The argument starts with "--=", which is not acceptable.
          Message message =
              ERR_ARGPARSER_LONG_ARG_WITHOUT_NAME.get(arg);
          Message message = ERR_ARGPARSER_LONG_ARG_WITHOUT_NAME
              .get(arg);
          throw new ArgumentException(message);
        }
        else
@@ -996,8 +976,8 @@
          else
          {
            // There is no such argument registered.
            Message message =
                ERR_ARGPARSER_NO_ARGUMENT_WITH_LONG_ID.get(origArgName);
            Message message = ERR_ARGPARSER_NO_ARGUMENT_WITH_LONG_ID
                .get(origArgName);
            throw new ArgumentException(message);
          }
        }
@@ -1032,8 +1012,7 @@
          {
            if ((i + 1) == numArguments)
            {
              Message message =
                  ERR_ARGPARSER_NO_VALUE_FOR_ARGUMENT_WITH_LONG_ID
              Message message = ERR_ARGPARSER_NO_VALUE_FOR_ARGUMENT_WITH_LONG_ID
                      .get(origArgName);
              throw new ArgumentException(message);
            }
@@ -1044,9 +1023,8 @@
          MessageBuilder invalidReason = new MessageBuilder();
          if (!a.valueIsAcceptable(argValue, invalidReason))
          {
            Message message =
                ERR_ARGPARSER_VALUE_UNACCEPTABLE_FOR_LONG_ID.get(
                    argValue, origArgName, invalidReason.toString());
            Message message = ERR_ARGPARSER_VALUE_UNACCEPTABLE_FOR_LONG_ID
                .get(argValue, origArgName, invalidReason.toString());
            throw new ArgumentException(message);
          }
@@ -1054,8 +1032,7 @@
          // acceptable to have more than one.
          if (a.hasValue() && (!a.isMultiValued()))
          {
            Message message =
                ERR_ARGPARSER_NOT_MULTIVALUED_FOR_LONG_ID
            Message message = ERR_ARGPARSER_NOT_MULTIVALUED_FOR_LONG_ID
                    .get(origArgName);
            throw new ArgumentException(message);
          }
@@ -1066,8 +1043,7 @@
        {
          if (argValue != null)
          {
            Message message =
                ERR_ARGPARSER_ARG_FOR_LONG_ID_DOESNT_TAKE_VALUE
            Message message = ERR_ARGPARSER_ARG_FOR_LONG_ID_DOESNT_TAKE_VALUE
                    .get(origArgName);
            throw new ArgumentException(message);
          }
@@ -1083,8 +1059,8 @@
        // -n value
        if (arg.equals("-"))
        {
          Message message =
              ERR_ARGPARSER_INVALID_DASH_AS_ARGUMENT.get();
          Message message = ERR_ARGPARSER_INVALID_DASH_AS_ARGUMENT
              .get();
          throw new ArgumentException(message);
        }
@@ -1139,9 +1115,8 @@
          else
          {
            // There is no such argument registered.
            Message message =
                ERR_ARGPARSER_NO_ARGUMENT_WITH_SHORT_ID.get(String
                    .valueOf(argCharacter));
            Message message = ERR_ARGPARSER_NO_ARGUMENT_WITH_SHORT_ID
                .get(String.valueOf(argCharacter));
            throw new ArgumentException(message);
          }
        }
@@ -1176,8 +1151,7 @@
          {
            if ((i + 1) == numArguments)
            {
              Message message =
                  ERR_ARGPARSER_NO_VALUE_FOR_ARGUMENT_WITH_SHORT_ID
              Message message = ERR_ARGPARSER_NO_VALUE_FOR_ARGUMENT_WITH_SHORT_ID
                      .get(String.valueOf(argCharacter));
              throw new ArgumentException(message);
            }
@@ -1188,9 +1162,8 @@
          MessageBuilder invalidReason = new MessageBuilder();
          if (!a.valueIsAcceptable(argValue, invalidReason))
          {
            Message message =
                ERR_ARGPARSER_VALUE_UNACCEPTABLE_FOR_SHORT_ID.get(
                    argValue, String.valueOf(argCharacter),
            Message message = ERR_ARGPARSER_VALUE_UNACCEPTABLE_FOR_SHORT_ID
                .get(argValue, String.valueOf(argCharacter),
                    invalidReason.toString());
            throw new ArgumentException(message);
          }
@@ -1199,9 +1172,8 @@
          // acceptable to have more than one.
          if (a.hasValue() && (!a.isMultiValued()))
          {
            Message message =
                ERR_ARGPARSER_NOT_MULTIVALUED_FOR_SHORT_ID.get(String
                    .valueOf(argCharacter));
            Message message = ERR_ARGPARSER_NOT_MULTIVALUED_FOR_SHORT_ID
                .get(String.valueOf(argCharacter));
            throw new ArgumentException(message);
          }
@@ -1228,9 +1200,8 @@
              if (b == null)
              {
                // There is no such argument registered.
                Message message =
                    ERR_ARGPARSER_NO_ARGUMENT_WITH_SHORT_ID.get(String
                        .valueOf(argCharacter));
                Message message = ERR_ARGPARSER_NO_ARGUMENT_WITH_SHORT_ID
                    .get(String.valueOf(argCharacter));
                throw new ArgumentException(message);
              }
              else if (b.needsValue())
@@ -1239,9 +1210,8 @@
                // a
                // valid argument that takes a value. We don't support
                // that.
                Message message =
                    ERR_ARGPARSER_CANT_MIX_ARGS_WITH_VALUES.get(String
                        .valueOf(argCharacter), argValue, String
                Message message = ERR_ARGPARSER_CANT_MIX_ARGS_WITH_VALUES
                    .get(String.valueOf(argCharacter), argValue, String
                        .valueOf(c));
                throw new ArgumentException(message);
              }
@@ -1283,8 +1253,8 @@
        // It doesn't start with a dash and we don't allow trailing
        // arguments,
        // so this is illegal.
        Message message =
            ERR_ARGPARSER_DISALLOWED_TRAILING_ARGUMENT.get(arg);
        Message message = ERR_ARGPARSER_DISALLOWED_TRAILING_ARGUMENT
            .get(arg);
        throw new ArgumentException(message);
      }
    }
@@ -1296,8 +1266,7 @@
    {
      if (trailingArguments.size() < minTrailingArguments)
      {
        Message message =
            ERR_ARGPARSER_TOO_FEW_TRAILING_ARGUMENTS
        Message message = ERR_ARGPARSER_TOO_FEW_TRAILING_ARGUMENTS
                .get(minTrailingArguments);
        throw new ArgumentException(message);
      }
@@ -1323,9 +1292,8 @@
        if ((argumentProperties != null)
            && (a.getPropertyName() != null))
        {
          String value =
              argumentProperties.getProperty(a.getPropertyName()
                  .toLowerCase());
          String value = argumentProperties.getProperty(a
              .getPropertyName().toLowerCase());
          MessageBuilder invalidReason = new MessageBuilder();
          if (value != null)
          {
@@ -1360,8 +1328,8 @@
        // a problem.
        if ((!a.hasValue()) && a.isRequired())
        {
          Message message =
              ERR_ARGPARSER_NO_VALUE_FOR_REQUIRED_ARG.get(a.getName());
          Message message = ERR_ARGPARSER_NO_VALUE_FOR_REQUIRED_ARG
              .get(a.getName());
          throw new ArgumentException(message);
        }
      }
@@ -1404,8 +1372,7 @@
    {
      // Check in "user home"/.opends directory
      String userDir = System.getProperty("user.home");
      propertiesFilePath =
          findPropertiesFile(userDir + File.separator
      propertiesFilePath = findPropertiesFile(userDir + File.separator
              + DEFAULT_OPENDS_CONFIG_DIR);
      // TODO
@@ -1425,7 +1392,7 @@
    // We have a location for the properties file.
    Properties argumentProperties = new Properties();
    String scriptName = System.getProperty(PROPERTY_SCRIPT_NAME);
    String scriptName = System.getProperty(Utils.PROPERTY_SCRIPT_NAME);
    try
    {
      Properties p = new Properties();
@@ -1444,8 +1411,8 @@
        {
          if (currentPropertyName.startsWith(scriptName))
          {
            propertyName =
                currentPropertyName.substring(scriptName.length() + 1);
            propertyName = currentPropertyName.substring(scriptName
                .length() + 1);
          }
          else
          {
@@ -1461,9 +1428,8 @@
    }
    catch (Exception e)
    {
      Message message =
          ERR_ARGPARSER_CANNOT_READ_PROPERTIES_FILE.get(String
              .valueOf(propertiesFilePath), getExceptionMessage(e));
      Message message = ERR_ARGPARSER_CANNOT_READ_PROPERTIES_FILE.get(
          String.valueOf(propertiesFilePath), getExceptionMessage(e));
      throw new ArgumentException(message, e);
    }
    return argumentProperties;
@@ -1481,8 +1447,7 @@
  private String findPropertiesFile(String directory)
  {
    // Look for the tools properties file
    File f =
        new File(directory, DEFAULT_OPENDS_PROPERTIES_FILE_NAME
    File f = new File(directory, DEFAULT_OPENDS_PROPERTIES_FILE_NAME
            + DEFAULT_OPENDS_PROPERTIES_FILE_EXTENSION);
    if (f.exists() && f.canRead())
    {
@@ -1504,7 +1469,7 @@
   *          The buffer to which the usage information should be
   *          appended.
   */
  public void getUsage(StringBuilder buffer)
  void getUsage(StringBuilder buffer)
  {
    usageOrVersionDisplayed = true;
    if ((toolDescription != null) && (toolDescription.length() > 0))
@@ -1601,7 +1566,7 @@
   * @return A string containing usage information based on the defined
   *         arguments.
   */
  public Message getUsageMessage()
  Message getUsageMessage()
  {
    StringBuilder buffer = new StringBuilder();
    getUsage(buffer);
@@ -1620,7 +1585,7 @@
   * @return A string containing usage information based on the defined
   *         arguments.
   */
  public String getUsage()
  String getUsage()
  {
    StringBuilder buffer = new StringBuilder();
    getUsage(buffer);
@@ -1641,7 +1606,7 @@
   *           If a problem occurs while attempting to write the usage
   *           information to the provided output stream.
   */
  public void getUsage(OutputStream outputStream) throws IOException
  void getUsage(OutputStream outputStream) throws IOException
  {
    StringBuilder buffer = new StringBuilder();
    getUsage(buffer);
@@ -1659,7 +1624,7 @@
   * @return {@code true} if the usage information has been displayed,
   *         or {@code false} if not.
   */
  public boolean usageOrVersionDisplayed()
  boolean usageOrVersionDisplayed()
  {
    return usageOrVersionDisplayed;
  }
@@ -1713,8 +1678,8 @@
          newBuffer.append(a.getValuePlaceholder());
        }
        int lineLength =
            (buffer.length() - currentLength) + newBuffer.length();
        int lineLength = (buffer.length() - currentLength)
            + newBuffer.length();
        if (lineLength > MAX_LENGTH)
        {
          buffer.append(EOL);
@@ -1884,11 +1849,10 @@
    try
    {
      versionArgument =
          new BooleanArgument(OPTION_LONG_PRODUCT_VERSION,
              OPTION_SHORT_PRODUCT_VERSION,
              OPTION_LONG_PRODUCT_VERSION,
              INFO_DESCRIPTION_PRODUCT_VERSION.get());
      versionArgument = new BooleanArgument(
          OPTION_LONG_PRODUCT_VERSION, OPTION_SHORT_PRODUCT_VERSION,
          OPTION_LONG_PRODUCT_VERSION, INFO_DESCRIPTION_PRODUCT_VERSION
              .get());
      this.generalArgGroup.addArgument(versionArgument);
    }
    catch (ArgumentException e)
@@ -1905,8 +1869,7 @@
    if (arg != null)
    {
      String longId = arg.getLongIdentifier();
      io =
          OPTION_LONG_VERBOSE.equals(longId)
      io = OPTION_LONG_VERBOSE.equals(longId)
              || OPTION_LONG_QUIET.equals(longId)
              || OPTION_LONG_NO_PROMPT.equals(longId)
              || OPTION_LONG_PROP_FILE_PATH.equals(longId)
@@ -1914,9 +1877,6 @@
              || OPTION_LONG_SCRIPT_FRIENDLY.equals(longId)
              || OPTION_LONG_DONT_WRAP.equals(longId)
              || OPTION_LONG_ENCODING.equals(longId)
              || OPTION_DSCFG_LONG_DISPLAY_EQUIVALENT.equals(longId)
              || OPTION_LONG_EQUIVALENT_COMMAND_FILE_PATH
                  .equals(longId)
              || OPTION_LONG_BATCH_FILE_PATH.equals(longId);
    }
    return io;
@@ -1930,8 +1890,7 @@
    if (arg != null)
    {
      String longId = arg.getLongIdentifier();
      ldap =
          OPTION_LONG_USE_SSL.equals(longId)
      ldap = OPTION_LONG_USE_SSL.equals(longId)
              || OPTION_LONG_START_TLS.equals(longId)
              || OPTION_LONG_HOST.equals(longId)
              || OPTION_LONG_PORT.equals(longId)
@@ -1965,8 +1924,7 @@
    if (arg != null)
    {
      String longId = arg.getLongIdentifier();
      general =
          OPTION_LONG_HELP.equals(longId)
      general = OPTION_LONG_HELP.equals(longId)
              || OPTION_LONG_PRODUCT_VERSION.equals(longId);
    }
    return general;
@@ -1981,7 +1939,7 @@
   * @return <CODE>true</CODE> if the usage argument was provided and
   *         <CODE>false</CODE> otherwise.
   */
  public boolean isUsageArgumentPresent()
  boolean isUsageArgumentPresent()
  {
    boolean isUsageArgumentPresent = false;
    if (usageArgument != null)
@@ -2000,7 +1958,7 @@
   * @return <CODE>true</CODE> if the version argument was provided and
   *         <CODE>false</CODE> otherwise.
   */
  public boolean isVersionArgumentPresent()
  boolean isVersionArgumentPresent()
  {
    return versionPresent;
  }
sdk/src/org/opends/sdk/tools/ArgumentParserConnectionFactory.java
@@ -29,9 +29,8 @@
import static org.opends.messages.AdminToolMessages.INFO_DESCRIPTION_ADMIN_UID;
import static org.opends.messages.ToolMessages.*;
import static org.opends.server.tools.ToolConstants.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.tools.ToolConstants.*;
import java.io.File;
import java.io.FileInputStream;
@@ -50,9 +49,6 @@
import javax.security.auth.Subject;
import javax.security.auth.login.LoginException;
import org.opends.admin.ads.util.ApplicationKeyManager;
import org.opends.messages.Message;
import org.opends.quicksetup.Constants;
import org.opends.sdk.*;
import org.opends.sdk.ldap.LDAPConnectionFactory;
import org.opends.sdk.ldap.LDAPConnectionOptions;
@@ -63,12 +59,8 @@
import org.opends.sdk.util.LocalizedIllegalArgumentException;
import org.opends.sdk.util.SSLUtils;
import org.opends.sdk.util.StaticUtils;
import org.opends.sdk.util.ssl.PromptingTrustManager;
import org.opends.sdk.util.ssl.TrustAllTrustManager;
import org.opends.sdk.util.ssl.TrustStoreTrustManager;
import org.opends.server.util.SelectableCertificateKeyManager;
import org.opends.server.util.cli.CLIException;
import org.opends.server.util.cli.ConsoleApplication;
import com.sun.opends.sdk.util.Message;
@@ -106,11 +98,6 @@
  private StringArgument bindDnArg = null;
  /**
   * The 'adminUID' global argument.
   */
  private StringArgument adminUidArg = null;
  /**
   * The 'bindPasswordFile' global argument.
   */
  private FileBasedArgument bindPasswordFileArg = null;
@@ -266,16 +253,6 @@
    bindDnArg.setPropertyName(OPTION_LONG_BINDDN);
    argumentParser.addLdapConnectionArgument(bindDnArg);
    // It is up to the classes that required admin UID to make this
    // argument
    // visible and add it.
    adminUidArg = new StringArgument("adminUID", 'I',
        OPTION_LONG_ADMIN_UID, false, false, true,
        INFO_ADMINUID_PLACEHOLDER.get(), Constants.GLOBAL_ADMIN_UID,
        null, INFO_DESCRIPTION_ADMIN_UID.get());
    adminUidArg.setPropertyName(OPTION_LONG_ADMIN_UID);
    adminUidArg.setHidden(true);
    bindPasswordArg = new StringArgument("bindPassword",
        OPTION_SHORT_BINDPWD, OPTION_LONG_BINDPWD, false, false, true,
        INFO_BINDPWD_PLACEHOLDER.get(), null, null,
sdk/src/org/opends/sdk/tools/BooleanArgument.java
@@ -28,10 +28,10 @@
import static org.opends.messages.UtilityMessages.ERR_BOOLEANARG_NO_VALUE_ALLOWED;
import static com.sun.opends.sdk.util.Messages.ERR_BOOLEANARG_NO_VALUE_ALLOWED;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
sdk/src/org/opends/sdk/tools/CLIException.java
New file
@@ -0,0 +1,104 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2008 Sun Microsystems, Inc.
 */
package org.opends.sdk.tools;
import org.opends.sdk.util.LocalizableException;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.Messages;
/**
 * Thrown to indicate that a problem occurred when interacting with the
 * client. For example, if input provided by the client was invalid.
 */
@SuppressWarnings("serial")
final class CLIException extends Exception implements
    LocalizableException
{
  /**
   * Adapts any exception that may have occurred whilst reading input
   * from the console.
   *
   * @param cause
   *          The exception that occurred whilst reading input from the
   *          console.
   * @return Returns a new CLI exception describing a problem that
   *         occurred whilst reading input from the console.
   */
  static CLIException adaptInputException(Throwable cause)
  {
    return new CLIException(Messages.ERR_CONSOLE_INPUT_ERROR.get(cause
        .getMessage()), cause);
  }
  /**
   * Creates a new CLI exception with the provided message.
   *
   * @param message
   *          The message explaining the problem that occurred.
   */
  CLIException(Message message)
  {
    super(message.toString());
    this.message = message;
  }
  /**
   * Creates a new CLI exception with the provided message and cause.
   *
   * @param message
   *          The message explaining the problem that occurred.
   * @param cause
   *          The cause of this exception.
   */
  CLIException(Message message, Throwable cause)
  {
    super(message.toString(), cause);
    this.message = message;
  }
  private final Message message;
  public Message getMessageObject()
  {
    return message;
  }
}
sdk/src/org/opends/sdk/tools/ConsoleApplication.java
New file
@@ -0,0 +1,594 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2008-2009 Sun Microsystems, Inc.
 */
package org.opends.sdk.tools;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.tools.Utils.*;
import java.io.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import com.sun.opends.sdk.util.Message;
/**
 * This class provides an abstract base class which can be used as the
 * basis of a console-based application.
 */
abstract class ConsoleApplication
{
  private static final class NullOutputStream extends OutputStream
  {
    /**
     * The singleton instance for this class.
     */
    private static final NullOutputStream instance = new NullOutputStream();
    /**
     * The singleton print stream tied to the null output stream.
     */
    private static final PrintStream printStream = new PrintStream(
        instance);
    /**
     * Retrieves a print stream using this null output stream.
     *
     * @return A print stream using this null output stream.
     */
    static PrintStream printStream()
    {
      return printStream;
    }
    /**
     * Creates a new instance of this null output stream.
     */
    private NullOutputStream()
    {
      // No implementation is required.
    }
    /**
     * Closes the output stream. This has no effect.
     */
    public void close()
    {
      // No implementation is required.
    }
    /**
     * Flushes the output stream. This has no effect.
     */
    public void flush()
    {
      // No implementation is required.
    }
    /**
     * Writes the provided data to this output stream. This has no
     * effect.
     *
     * @param b
     *          The byte array containing the data to be written.
     */
    public void write(byte[] b)
    {
      // No implementation is required.
    }
    /**
     * Writes the provided data to this output stream. This has no
     * effect.
     *
     * @param b
     *          The byte array containing the data to be written.
     * @param off
     *          The offset at which the real data begins.
     * @param len
     *          The number of bytes to be written.
     */
    public void write(byte[] b, int off, int len)
    {
      // No implementation is required.
    }
    /**
     * Writes the provided byte to this output stream. This has no
     * effect.
     *
     * @param b
     *          The byte to be written.
     */
    public void write(int b)
    {
      // No implementation is required.
    }
  }
  /**
   * A null reader.
   */
  private static final class NullReader extends Reader
  {
    /**
     * {@inheritDoc}
     */
    @Override
    public void close() throws IOException
    {
      // Do nothing.
    }
    /**
     * {@inheritDoc}
     */
    @Override
    public int read(char[] cbuf, int off, int len) throws IOException
    {
      return -1;
    }
  }
  // The error stream which this application should use.
  private final PrintStream err;
  // The input stream reader which this application should use.
  private final BufferedReader reader;
  private final InputStream in;
  // The output stream which this application should use.
  private final PrintStream out;
  /**
   * Creates a new console application instance.
   *
   * @param in
   *          The application input stream.
   * @param out
   *          The application output stream.
   * @param err
   *          The application error stream.
   */
  ConsoleApplication(InputStream in, OutputStream out, OutputStream err)
  {
    this.in = in;
    if (in != null)
    {
      this.reader = new BufferedReader(new InputStreamReader(in));
    }
    else
    {
      this.reader = new BufferedReader(new NullReader());
    }
    if (out != null)
    {
      this.out = new PrintStream(out);
    }
    else
    {
      this.out = NullOutputStream.printStream();
    }
    if (err != null)
    {
      this.err = new PrintStream(err);
    }
    else
    {
      this.err = NullOutputStream.printStream();
    }
  }
  /**
   * Gets the application error stream.
   *
   * @return Returns the application error stream.
   */
  final PrintStream getErrorStream()
  {
    return err;
  }
  /**
   * Gets the application input stream reader.
   *
   * @return Returns the application input stream.
   */
  final BufferedReader getInputReader()
  {
    return reader;
  }
  /**
   * Gets the application input stream.
   *
   * @return Returns the application input stream.
   */
  final InputStream getInputStream()
  {
    return in;
  }
  /**
   * Gets the application output stream.
   *
   * @return Returns the application output stream.
   */
  final PrintStream getOutputStream()
  {
    return out;
  }
  /**
   * Indicates whether or not the user has requested advanced mode.
   *
   * @return Returns <code>true</code> if the user has requested
   *         advanced mode.
   */
  abstract boolean isAdvancedMode();
  /**
   * Indicates whether or not the user has requested interactive
   * behavior.
   *
   * @return Returns <code>true</code> if the user has requested
   *         interactive behavior.
   */
  abstract boolean isInteractive();
  /**
   * Indicates whether or not this console application is running in its
   * menu-driven mode. This can be used to dictate whether output should
   * go to the error stream or not. In addition, it may also dictate
   * whether or not sub-menus should display a cancel option as well as
   * a quit option.
   *
   * @return Returns <code>true</code> if this console application is
   *         running in its menu-driven mode.
   */
  abstract boolean isMenuDrivenMode();
  /**
   * Indicates whether or not the user has requested quiet output.
   *
   * @return Returns <code>true</code> if the user has requested quiet
   *         output.
   */
  abstract boolean isQuiet();
  /**
   * Indicates whether or not the user has requested script-friendly
   * output.
   *
   * @return Returns <code>true</code> if the user has requested
   *         script-friendly output.
   */
  abstract boolean isScriptFriendly();
  /**
   * Indicates whether or not the user has requested verbose output.
   *
   * @return Returns <code>true</code> if the user has requested verbose
   *         output.
   */
  abstract boolean isVerbose();
  /**
   * Interactively prompts the user to press return to continue. This
   * method should be called in situations where a user needs to be
   * given a chance to read some documentation before continuing
   * (continuing may cause the documentation to be scrolled out of
   * view).
   */
  final void pressReturnToContinue()
  {
    Message msg = INFO_MENU_PROMPT_RETURN_TO_CONTINUE.get();
    try
    {
      readLineOfInput(msg);
    }
    catch (CLIException e)
    {
      // Ignore the exception - applications don't care.
    }
  }
  /**
   * Displays a blank line to the error stream.
   */
  final void println()
  {
    err.println();
  }
  /**
   * Displays a message to the error stream.
   *
   * @param msg
   *          The message.
   */
  final void println(Message msg)
  {
    err.println(wrapText(msg, MAX_LINE_WIDTH));
  }
  /**
   * Displays a message to the error stream.
   *
   * @param msg
   *          The message.
   */
  final void print(Message msg)
  {
    err.print(wrapText(msg, MAX_LINE_WIDTH));
  }
  /**
   * Displays a blank line to the output stream if we are not in quiet
   * mode.
   */
  final void printlnProgress()
  {
    if (!isQuiet())
    {
      out.println();
    }
  }
  /**
   * Displays a message to the output stream if we are not in quiet
   * mode.
   *
   * @param msg
   *          The message.
   */
  final void printProgress(Message msg)
  {
    if (!isQuiet())
    {
      out.print(msg);
    }
  }
  /**
   * Displays a message to the error stream indented by the specified
   * number of columns.
   *
   * @param msg
   *          The message.
   * @param indent
   *          The number of columns to indent.
   */
  final void println(Message msg, int indent)
  {
    err.println(wrapText(msg, MAX_LINE_WIDTH, indent));
  }
  /**
   * Displays a message to the error stream if verbose mode is enabled.
   *
   * @param msg
   *          The verbose message.
   */
  final void printVerboseMessage(Message msg)
  {
    if (isVerbose() || isInteractive())
    {
      err.println(wrapText(msg, MAX_LINE_WIDTH));
    }
  }
  /**
   * Interactively retrieves a line of input from the console.
   *
   * @param prompt
   *          The prompt.
   * @return Returns the line of input, or <code>null</code> if the end
   *         of input has been reached.
   * @throws CLIException
   *           If the line of input could not be retrieved for some
   *           reason.
   */
  final String readLineOfInput(Message prompt) throws CLIException
  {
    if (prompt != null)
    {
      err.print(wrapText(prompt, MAX_LINE_WIDTH));
      err.print(" ");
    }
    try
    {
      String s = reader.readLine();
      if (s == null)
      {
        throw CLIException.adaptInputException(new EOFException(
            "End of input"));
      }
      else
      {
        return s;
      }
    }
    catch (IOException e)
    {
      throw CLIException.adaptInputException(e);
    }
  }
  /**
   * Commodity method that interactively prompts (on error output) the
   * user to provide a string value. Any non-empty string will be
   * allowed (the empty string will indicate that the default should be
   * used, if there is one).
   *
   * @param prompt
   *          The prompt to present to the user.
   * @param defaultValue
   *          The default value to assume if the user presses ENTER
   *          without typing anything, or <CODE>null</CODE> if there
   *          should not be a default and the user must explicitly
   *          provide a value.
   * @throws CLIException
   *           If the line of input could not be retrieved for some
   *           reason.
   * @return The string value read from the user.
   */
  final String readInput(Message prompt, String defaultValue)
      throws CLIException
  {
    while (true)
    {
      if (defaultValue != null)
      {
        prompt = INFO_PROMPT_SINGLE_DEFAULT.get(prompt.toString(),
            defaultValue);
      }
      String response = readLineOfInput(prompt);
      if ("".equals(response))
      {
        if (defaultValue == null)
        {
          print(INFO_ERROR_EMPTY_RESPONSE.get());
        }
        else
        {
          return defaultValue;
        }
      }
      else
      {
        return response;
      }
    }
  }
  /**
   * Commodity method that interactively prompts (on error output) the
   * user to provide a string value. Any non-empty string will be
   * allowed (the empty string will indicate that the default should be
   * used, if there is one). If an error occurs a message will be logged
   * to the provided logger.
   *
   * @param prompt
   *          The prompt to present to the user.
   * @param defaultValue
   *          The default value to assume if the user presses ENTER
   *          without typing anything, or <CODE>null</CODE> if there
   *          should not be a default and the user must explicitly
   *          provide a value.
   * @param logger
   *          the Logger to be used to log the error message.
   * @return The string value read from the user.
   */
  final String readInput(Message prompt, String defaultValue,
      Logger logger)
  {
    String s = defaultValue;
    try
    {
      s = readInput(prompt, defaultValue);
    }
    catch (CLIException ce)
    {
      logger.log(Level.WARNING, "Error reading input: " + ce, ce);
    }
    return s;
  }
}
sdk/src/org/opends/sdk/tools/DistrustAllTrustManager.java
File was renamed from sdk/src/org/opends/sdk/util/ssl/DistrustAllTrustManager.java
@@ -25,7 +25,7 @@
 *      Copyright 2008 Sun Microsystems, Inc.
 */
package org.opends.sdk.util.ssl;
package org.opends.sdk.tools;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
@@ -35,7 +35,7 @@
/**
 * An X509TrustManager which trusts everything.
 */
public class DistrustAllTrustManager implements X509TrustManager {
final class DistrustAllTrustManager implements X509TrustManager {
  /**
   * {@inheritDoc}
sdk/src/org/opends/sdk/tools/FileBasedArgument.java
@@ -28,16 +28,16 @@
import static org.opends.messages.UtilityMessages.*;
import static org.opends.server.util.StaticUtils.getExceptionMessage;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.getExceptionMessage;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.LinkedHashMap;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
sdk/src/org/opends/sdk/tools/HostnameMismatchCertificateException.java
New file
@@ -0,0 +1,93 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2009 Sun Microsystems, Inc.
 */
package org.opends.sdk.tools;
import java.security.cert.CertificateException;
/**
 * The certificate's subject DN's value and the host name we tried to
 * connect to do not match.
 */
@SuppressWarnings("serial")
final class HostnameMismatchCertificateException extends
    CertificateException
{
  private String expectedHostname;
  private String certificateHostname;
  HostnameMismatchCertificateException(String expectedHostname,
      String certificateHostname)
  {
    this.expectedHostname = expectedHostname;
    this.certificateHostname = certificateHostname;
  }
  HostnameMismatchCertificateException(String msg,
      String expectedHostname, String certificateHostname)
  {
    super(msg);
    this.expectedHostname = expectedHostname;
    this.certificateHostname = certificateHostname;
  }
  String getExpectedHostname()
  {
    return expectedHostname;
  }
  void setExpectedHostname(String expectedHostname)
  {
    this.expectedHostname = expectedHostname;
  }
  String getCertificateHostname()
  {
    return certificateHostname;
  }
  void setCertificateHostname(String certificateHostname)
  {
    this.certificateHostname = certificateHostname;
  }
}
sdk/src/org/opends/sdk/tools/IntegerArgument.java
@@ -28,13 +28,10 @@
import static org.opends.messages.UtilityMessages.ERR_ARG_CANNOT_DECODE_AS_INT;
import static org.opends.messages.UtilityMessages.ERR_INTARG_LOWER_BOUND_ABOVE_UPPER_BOUND;
import static org.opends.messages.UtilityMessages.ERR_INTARG_VALUE_ABOVE_UPPER_BOUND;
import static org.opends.messages.UtilityMessages.ERR_INTARG_VALUE_BELOW_LOWER_BOUND;
import static com.sun.opends.sdk.util.Messages.*;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
sdk/src/org/opends/sdk/tools/LDAPCompare.java
@@ -29,14 +29,13 @@
import static org.opends.messages.ToolMessages.*;
import static org.opends.server.tools.ToolConstants.*;
import static org.opends.server.util.StaticUtils.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.tools.ToolConstants.*;
import static org.opends.sdk.tools.Utils.*;
import java.io.*;
import java.util.ArrayList;
import org.opends.messages.Message;
import org.opends.sdk.*;
import org.opends.sdk.controls.AssertionControl;
import org.opends.sdk.controls.Control;
@@ -48,7 +47,8 @@
import org.opends.sdk.util.Base64;
import org.opends.sdk.util.ByteString;
import org.opends.sdk.util.LocalizedIllegalArgumentException;
import org.opends.server.util.cli.ConsoleApplication;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/tools/LDAPModify.java
@@ -29,9 +29,9 @@
import static org.opends.messages.ToolMessages.*;
import static org.opends.server.tools.ToolConstants.*;
import static org.opends.server.util.StaticUtils.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.tools.ToolConstants.*;
import static org.opends.sdk.tools.Utils.*;
import java.io.FileInputStream;
import java.io.IOException;
@@ -41,7 +41,6 @@
import java.util.LinkedList;
import java.util.StringTokenizer;
import org.opends.messages.Message;
import org.opends.sdk.*;
import org.opends.sdk.controls.*;
import org.opends.sdk.ldif.*;
@@ -52,7 +51,8 @@
import org.opends.sdk.responses.Responses;
import org.opends.sdk.responses.Result;
import org.opends.sdk.util.LocalizedIllegalArgumentException;
import org.opends.server.util.cli.ConsoleApplication;
import com.sun.opends.sdk.util.Message;
@@ -63,8 +63,11 @@
public final class LDAPModify extends ConsoleApplication
{
  private Connection connection;
  private EntryWriter writer;
  private Collection<Control> controls;
  private BooleanArgument verbose;
@@ -144,9 +147,8 @@
    // Create the command-line argument parser for use with this
    // program.
    Message toolDescription = INFO_LDAPMODIFY_TOOL_DESCRIPTION.get();
    ArgumentParser argParser =
        new ArgumentParser(LDAPModify.class.getName(), toolDescription,
            false);
    ArgumentParser argParser = new ArgumentParser(LDAPModify.class
        .getName(), toolDescription, false);
    ArgumentParserConnectionFactory connectionFactory;
    BooleanArgument continueOnError;
@@ -167,111 +169,95 @@
    try
    {
      connectionFactory =
          new ArgumentParserConnectionFactory(argParser, this);
      propertiesFileArgument =
          new StringArgument("propertiesFilePath", null,
              OPTION_LONG_PROP_FILE_PATH, false, false, true,
      connectionFactory = new ArgumentParserConnectionFactory(
          argParser, this);
      propertiesFileArgument = new StringArgument("propertiesFilePath",
          null, OPTION_LONG_PROP_FILE_PATH, false, false, true,
              INFO_PROP_FILE_PATH_PLACEHOLDER.get(), null, null,
              INFO_DESCRIPTION_PROP_FILE_PATH.get());
      argParser.addArgument(propertiesFileArgument);
      argParser.setFilePropertiesArgument(propertiesFileArgument);
      noPropertiesFileArgument =
          new BooleanArgument("noPropertiesFileArgument", null,
              OPTION_LONG_NO_PROP_FILE, INFO_DESCRIPTION_NO_PROP_FILE
                  .get());
      noPropertiesFileArgument = new BooleanArgument(
          "noPropertiesFileArgument", null, OPTION_LONG_NO_PROP_FILE,
          INFO_DESCRIPTION_NO_PROP_FILE.get());
      argParser.addArgument(noPropertiesFileArgument);
      argParser.setNoPropertiesFileArgument(noPropertiesFileArgument);
      defaultAdd =
          new BooleanArgument("defaultAdd", 'a', "defaultAdd",
      defaultAdd = new BooleanArgument("defaultAdd", 'a', "defaultAdd",
              INFO_MODIFY_DESCRIPTION_DEFAULT_ADD.get());
      argParser.addArgument(defaultAdd);
      filename =
          new StringArgument("filename", OPTION_SHORT_FILENAME,
      filename = new StringArgument("filename", OPTION_SHORT_FILENAME,
              OPTION_LONG_FILENAME, false, false, true,
              INFO_FILE_PLACEHOLDER.get(), null, null,
              INFO_LDAPMODIFY_DESCRIPTION_FILENAME.get());
      filename.setPropertyName(OPTION_LONG_FILENAME);
      argParser.addArgument(filename);
      proxyAuthzID =
          new StringArgument("proxy_authzid", OPTION_SHORT_PROXYAUTHID,
              OPTION_LONG_PROXYAUTHID, false, false, true,
              INFO_PROXYAUTHID_PLACEHOLDER.get(), null, null,
      proxyAuthzID = new StringArgument("proxy_authzid",
          OPTION_SHORT_PROXYAUTHID, OPTION_LONG_PROXYAUTHID, false,
          false, true, INFO_PROXYAUTHID_PLACEHOLDER.get(), null, null,
              INFO_DESCRIPTION_PROXY_AUTHZID.get());
      proxyAuthzID.setPropertyName(OPTION_LONG_PROXYAUTHID);
      argParser.addArgument(proxyAuthzID);
      assertionFilter =
          new StringArgument("assertionfilter", null,
      assertionFilter = new StringArgument("assertionfilter", null,
              OPTION_LONG_ASSERTION_FILE, false, false, true,
              INFO_ASSERTION_FILTER_PLACEHOLDER.get(), null, null,
              INFO_DESCRIPTION_ASSERTION_FILTER.get());
      assertionFilter.setPropertyName(OPTION_LONG_ASSERTION_FILE);
      argParser.addArgument(assertionFilter);
      preReadAttributes =
          new StringArgument("prereadattrs", null, "preReadAttributes",
              false, false, true,
      preReadAttributes = new StringArgument("prereadattrs", null,
          "preReadAttributes", false, false, true,
              INFO_ATTRIBUTE_LIST_PLACEHOLDER.get(), null, null,
              INFO_DESCRIPTION_PREREAD_ATTRS.get());
      preReadAttributes.setPropertyName("preReadAttributes");
      argParser.addArgument(preReadAttributes);
      postReadAttributes =
          new StringArgument("postreadattrs", null,
      postReadAttributes = new StringArgument("postreadattrs", null,
              "postReadAttributes", false, false, true,
              INFO_ATTRIBUTE_LIST_PLACEHOLDER.get(), null, null,
              INFO_DESCRIPTION_POSTREAD_ATTRS.get());
      postReadAttributes.setPropertyName("postReadAttributes");
      argParser.addArgument(postReadAttributes);
      controlStr =
          new StringArgument("control", 'J', "control", false, true,
              true, INFO_LDAP_CONTROL_PLACEHOLDER.get(), null, null,
      controlStr = new StringArgument("control", 'J', "control", false,
          true, true, INFO_LDAP_CONTROL_PLACEHOLDER.get(), null, null,
              INFO_DESCRIPTION_CONTROLS.get());
      controlStr.setPropertyName("control");
      argParser.addArgument(controlStr);
      version =
          new IntegerArgument("version", OPTION_SHORT_PROTOCOL_VERSION,
              OPTION_LONG_PROTOCOL_VERSION, false, false, true,
              INFO_PROTOCOL_VERSION_PLACEHOLDER.get(), 3, null,
              INFO_DESCRIPTION_VERSION.get());
      version = new IntegerArgument("version",
          OPTION_SHORT_PROTOCOL_VERSION, OPTION_LONG_PROTOCOL_VERSION,
          false, false, true, INFO_PROTOCOL_VERSION_PLACEHOLDER.get(),
          3, null, INFO_DESCRIPTION_VERSION.get());
      version.setPropertyName(OPTION_LONG_PROTOCOL_VERSION);
      argParser.addArgument(version);
      encodingStr =
          new StringArgument("encoding", 'i', "encoding", false, false,
              true, INFO_ENCODING_PLACEHOLDER.get(), null, null,
              INFO_DESCRIPTION_ENCODING.get());
      encodingStr = new StringArgument("encoding", 'i', "encoding",
          false, false, true, INFO_ENCODING_PLACEHOLDER.get(), null,
          null, INFO_DESCRIPTION_ENCODING.get());
      encodingStr.setPropertyName("encoding");
      argParser.addArgument(encodingStr);
      continueOnError =
          new BooleanArgument("continueOnError", 'c',
              "continueOnError", INFO_DESCRIPTION_CONTINUE_ON_ERROR
                  .get());
      continueOnError = new BooleanArgument("continueOnError", 'c',
          "continueOnError", INFO_DESCRIPTION_CONTINUE_ON_ERROR.get());
      continueOnError.setPropertyName("continueOnError");
      argParser.addArgument(continueOnError);
      noop =
          new BooleanArgument("no-op", OPTION_SHORT_DRYRUN,
      noop = new BooleanArgument("no-op", OPTION_SHORT_DRYRUN,
              OPTION_LONG_DRYRUN, INFO_DESCRIPTION_NOOP.get());
      noop.setPropertyName(OPTION_LONG_DRYRUN);
      argParser.addArgument(noop);
      verbose =
          new BooleanArgument("verbose", 'v', "verbose",
      verbose = new BooleanArgument("verbose", 'v', "verbose",
              INFO_DESCRIPTION_VERBOSE.get());
      verbose.setPropertyName("verbose");
      argParser.addArgument(verbose);
      showUsage =
          new BooleanArgument("showUsage", OPTION_SHORT_HELP,
      showUsage = new BooleanArgument("showUsage", OPTION_SHORT_HELP,
              OPTION_LONG_HELP, INFO_DESCRIPTION_SHOWUSAGE.get());
      argParser.addArgument(showUsage);
      argParser.setUsageArgument(showUsage, getOutputStream());
@@ -339,8 +325,8 @@
        }
        catch (DecodeException de)
        {
          Message message =
              ERR_TOOL_INVALID_CONTROL_STRING.get(ctrlString);
          Message message = ERR_TOOL_INVALID_CONTROL_STRING
              .get(ctrlString);
          println(message);
          ResultCode.CLIENT_SIDE_PARAM_ERROR.intValue();
        }
@@ -349,8 +335,8 @@
    if (proxyAuthzID.isPresent())
    {
      Control proxyControl =
          new ProxiedAuthV2Control(proxyAuthzID.getValue());
      Control proxyControl = new ProxiedAuthV2Control(proxyAuthzID
          .getValue());
      controls.add(proxyControl);
    }
@@ -370,8 +356,8 @@
      }
      catch (LocalizedIllegalArgumentException le)
      {
        Message message =
            ERR_LDAP_ASSERTION_INVALID_FILTER.get(le.getMessage());
        Message message = ERR_LDAP_ASSERTION_INVALID_FILTER.get(le
            .getMessage());
        println(message);
        return ResultCode.CLIENT_SIDE_PARAM_ERROR.intValue();
      }
@@ -393,8 +379,8 @@
    {
      String valueStr = postReadAttributes.getValue();
      StringTokenizer tokenizer = new StringTokenizer(valueStr, ", ");
      PostReadControl.Request control =
          new PostReadControl.Request(true);
      PostReadControl.Request control = new PostReadControl.Request(
          true);
      while (tokenizer.hasMoreTokens())
      {
        control.addAttribute(tokenizer.nextToken());
@@ -425,15 +411,13 @@
      {
        try
        {
          reader =
              new LDIFChangeRecordReader(new FileInputStream(filename
                  .getValue()));
          reader = new LDIFChangeRecordReader(new FileInputStream(
              filename.getValue()));
        }
        catch (Exception e)
        {
          Message message =
              ERR_LDIF_FILE_CANNOT_OPEN_FOR_READ.get(filename
                  .getValue(), e.getLocalizedMessage());
          Message message = ERR_LDIF_FILE_CANNOT_OPEN_FOR_READ.get(
              filename.getValue(), e.getLocalizedMessage());
          println(message);
          return ResultCode.CLIENT_SIDE_PARAM_ERROR.intValue();
        }
@@ -458,9 +442,8 @@
      }
      catch (IOException ioe)
      {
        Message message =
            ERR_LDIF_FILE_READ_ERROR.get(filename.getValue(), ioe
                .getLocalizedMessage());
        Message message = ERR_LDIF_FILE_READ_ERROR.get(filename
            .getValue(), ioe.getLocalizedMessage());
        println(message);
        return ResultCode.CLIENT_SIDE_LOCAL_ERROR.intValue();
      }
@@ -502,8 +485,8 @@
      }
      else
      {
        Message msg =
            INFO_OPERATION_SUCCESSFUL.get(operationType, name);
        Message msg = INFO_OPERATION_SUCCESSFUL
            .get(operationType, name);
        println(msg);
        if ((r.getDiagnosticMessage() != null)
            && (r.getDiagnosticMessage().length() > 0))
@@ -519,8 +502,8 @@
        }
      }
      Control control =
          r.getControl(PreReadControl.OID_LDAP_READENTRY_PREREAD);
      Control control = r
          .getControl(PreReadControl.OID_LDAP_READENTRY_PREREAD);
      if (control != null && control instanceof PreReadControl.Response)
      {
        PreReadControl.Response dc = (PreReadControl.Response) control;
@@ -534,13 +517,12 @@
          throw new RuntimeException(ioe);
        }
      }
      control =
          r.getControl(PostReadControl.OID_LDAP_READENTRY_POSTREAD);
      control = r
          .getControl(PostReadControl.OID_LDAP_READENTRY_POSTREAD);
      if (control != null
          && control instanceof PostReadControl.Response)
      {
        PostReadControl.Response dc =
            (PostReadControl.Response) control;
        PostReadControl.Response dc = (PostReadControl.Response) control;
        println(INFO_LDAPMODIFY_POSTREAD_ENTRY.get());
        try
        {
sdk/src/org/opends/sdk/tools/LDAPPasswordModify.java
@@ -1,13 +1,12 @@
package org.opends.sdk.tools;
import static org.opends.messages.ToolMessages.*;
import static org.opends.server.tools.ToolConstants.*;
import static org.opends.server.util.StaticUtils.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.tools.ToolConstants.*;
import static org.opends.sdk.tools.Utils.*;
import java.io.InputStream;
import java.io.OutputStream;
import org.opends.messages.Message;
import org.opends.sdk.Connection;
import org.opends.sdk.DecodeException;
import org.opends.sdk.ErrorResultException;
@@ -16,7 +15,8 @@
import org.opends.sdk.extensions.PasswordModifyRequest;
import org.opends.sdk.extensions.PasswordModifyResult;
import org.opends.sdk.util.ByteString;
import org.opends.server.util.cli.ConsoleApplication;
import com.sun.opends.sdk.util.Message;
/**
 * This program provides a utility that uses the LDAP password modify extended
sdk/src/org/opends/sdk/tools/LDAPSearch.java
@@ -29,9 +29,8 @@
import static org.opends.messages.ToolMessages.*;
import static org.opends.server.tools.ToolConstants.*;
import static org.opends.server.util.ServerConstants.*;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.tools.ToolConstants.*;
import java.io.*;
import java.util.ArrayList;
@@ -39,7 +38,6 @@
import java.util.List;
import java.util.StringTokenizer;
import org.opends.messages.Message;
import org.opends.sdk.*;
import org.opends.sdk.controls.*;
import org.opends.sdk.ldif.EntryWriter;
@@ -53,7 +51,8 @@
import org.opends.sdk.util.ByteString;
import org.opends.sdk.util.LocalizedIllegalArgumentException;
import org.opends.sdk.util.StaticUtils;
import org.opends.server.util.cli.ConsoleApplication;
import com.sun.opends.sdk.util.Message;
@@ -83,7 +82,8 @@
    {
      entryCount++;
      Control control = entry.getControl(OID_ENTRY_CHANGE_NOTIFICATION);
      Control control = entry
          .getControl(EntryChangeNotificationControl.OID_ENTRY_CHANGE_NOTIFICATION);
      if (control != null
          && control instanceof EntryChangeNotificationControl)
      {
@@ -96,7 +96,8 @@
          println(INFO_LDAPSEARCH_PSEARCH_PREVIOUS_DN.get(previousDN));
        }
      }
      control = entry.getControl(OID_ACCOUNT_USABLE_CONTROL);
      control = entry
          .getControl(AccountUsabilityControl.OID_ACCOUNT_USABLE_CONTROL);
      if (control != null
          && control instanceof AccountUsabilityControl.Response)
      {
sdk/src/org/opends/sdk/tools/ModRate.java
@@ -29,20 +29,19 @@
import static org.opends.messages.ToolMessages.*;
import static org.opends.server.tools.ToolConstants.*;
import static org.opends.server.util.StaticUtils.filterExitCode;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.tools.ToolConstants.*;
import static org.opends.sdk.tools.Utils.*;
import java.io.InputStream;
import java.io.OutputStream;
import org.opends.messages.Message;
import org.opends.sdk.*;
import org.opends.sdk.requests.ModifyRequest;
import org.opends.sdk.requests.Requests;
import org.opends.sdk.responses.Result;
import org.opends.server.util.cli.ConsoleApplication;
import com.sun.opends.sdk.util.Message;
/**
sdk/src/org/opends/sdk/tools/MultiChoiceArgument.java
@@ -28,12 +28,12 @@
import static org.opends.messages.UtilityMessages.ERR_MCARG_VALUE_NOT_ALLOWED;
import static com.sun.opends.sdk.util.Messages.ERR_MCARG_VALUE_NOT_ALLOWED;
import java.util.Collection;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
sdk/src/org/opends/sdk/tools/MultiColumnPrinter.java
@@ -31,16 +31,14 @@
import java.util.Enumeration;
import java.util.Vector;
import org.opends.server.util.cli.ConsoleApplication;
/**
 * Utility class for printing aligned collumns of text.
 * Utility class for printing aligned columns of text.
 * <P>
 * This class allows you to specify:
 * <UL>
 * <LI>The number of collumns in the output. This will determine the
 * <LI>The number of columns in the output. This will determine the
 * dimension of the string arrays passed to add(String[]) or
 * addTitle(String[]).
 * <LI>spacing/gap between columns
@@ -130,17 +128,25 @@
{
  final public static int LEFT = 0;
  final public static int CENTER = 1;
  final public static int RIGHT = 2;
  private int numCol = 2;
  private int gap = 4;
  private int align = CENTER;
  private int titleAlign = CENTER;
  private String border = null;
  private Vector<String[]> titleTable = null;
  private Vector<int[]> titleSpanTable = null;
  private int curLength[];
  private final ConsoleApplication app;
@@ -159,8 +165,8 @@
   * @param align
   *          type of alignment within columns
   */
  public MultiColumnPrinter(int numCol, int gap, String border,
      int align, ConsoleApplication app)
  MultiColumnPrinter(int numCol, int gap, String border, int align,
      ConsoleApplication app)
  {
    titleTable = new Vector<String[]>();
@@ -188,7 +194,7 @@
   * @param border
   *          character used to frame the titles
   */
  public MultiColumnPrinter(int numCol, int gap, String border,
  MultiColumnPrinter(int numCol, int gap, String border,
      ConsoleApplication app)
  {
    this(numCol, gap, border, LEFT, app);
@@ -205,7 +211,7 @@
   * @param gap
   *          gap between each column
   */
  public MultiColumnPrinter(int numCol, int gap, ConsoleApplication app)
  MultiColumnPrinter(int numCol, int gap, ConsoleApplication app)
  {
    this(numCol, gap, null, LEFT, app);
  }
@@ -218,10 +224,9 @@
   * @param row
   *          Array of strings to print in one row of title.
   */
  public void addTitle(String[] row)
  void addTitle(String[] row)
  {
    if (row == null)
      return;
    if (row == null) return;
    int[] span = new int[row.length];
    for (int i = 0; i < row.length; i++)
@@ -281,7 +286,7 @@
   *          Array of integers that reflect the number of collumns the
   *          corresponding title string will occupy.
   */
  public void addTitle(String[] row, int span[])
  void addTitle(String[] row, int span[])
  {
    // Need to create a new instance of it, otherwise the new values
    // will always overwrite the old values.
@@ -303,7 +308,7 @@
   * 
   * @param titleAlign
   */
  public void setTitleAlign(int titleAlign)
  void setTitleAlign(int titleAlign)
  {
    this.titleAlign = titleAlign;
  }
@@ -313,7 +318,7 @@
  /**
   * Clears title strings.
   */
  public void clearTitle()
  void clearTitle()
  {
    titleTable.clear();
    titleSpanTable.clear();
@@ -324,7 +329,7 @@
  /**
   * Prints the table title
   */
  public void printTitle()
  void printTitle()
  {
    // Get the longest string for each column and store in curLength[]
@@ -333,15 +338,14 @@
    Enumeration<int[]> spanEnum = titleSpanTable.elements();
    while (elm.hasMoreElements())
    {
      String[] row = (String[]) elm.nextElement();
      int[] curSpan = (int[]) spanEnum.nextElement();
      String[] row = elm.nextElement();
      int[] curSpan = spanEnum.nextElement();
      for (int i = 0; i < numCol; i++)
      {
        // None of the fields should be null, but if it
        // happens to be so, replace it with "-".
        if (row[i] == null)
          row[i] = "-";
        if (row[i] == null) row[i] = "-";
        int len = row[i].length();
@@ -384,15 +388,14 @@
    while (elm.hasMoreElements())
    {
      String[] row = (String[]) elm.nextElement();
      int[] curSpan = (int[]) spanEnum.nextElement();
      String[] row = elm.nextElement();
      int[] curSpan = spanEnum.nextElement();
      for (int i = 0; i < numCol; i++)
      {
        int availableSpace = 0, span = curSpan[i];
        if (span == 0)
          continue;
        if (span == 0) continue;
        availableSpace = curLength[i];
@@ -410,8 +413,7 @@
          int space_before = availableSpace - row[i].length();
          printSpaces(space_before);
          app.getOutputStream().print(row[i]);
          if (i < numCol - 1)
            printSpaces(gap);
          if (i < numCol - 1) printSpaces(gap);
        }
        else if (titleAlign == CENTER)
        {
@@ -422,8 +424,7 @@
          printSpaces(space_before);
          app.getOutputStream().print(row[i]);
          printSpaces(space_after);
          if (i < numCol - 1)
            printSpaces(gap);
          if (i < numCol - 1) printSpaces(gap);
        }
        else
        {
@@ -446,7 +447,7 @@
   * @param row
   *          Array of strings to print in one row.
   */
  public void printRow(String... row)
  void printRow(String... row)
  {
    for (int i = 0; i < numCol; i++)
    {
@@ -455,8 +456,7 @@
        int space_before = curLength[i] - row[i].length();
        printSpaces(space_before);
        app.getOutputStream().print(row[i]);
        if (i < numCol - 1)
          printSpaces(gap);
        if (i < numCol - 1) printSpaces(gap);
      }
      else if (align == CENTER)
      {
@@ -467,8 +467,7 @@
        printSpaces(space1);
        app.getOutputStream().print(row[i]);
        printSpaces(space2);
        if (i < numCol - 1)
          printSpaces(gap);
        if (i < numCol - 1) printSpaces(gap);
      }
      else
      {
@@ -494,8 +493,7 @@
  private void printBorder()
  {
    if (border == null)
      return;
    if (border == null) return;
    // For the value in each column
    for (int i = 0; i < numCol; i++)
sdk/src/org/opends/sdk/tools/PerformanceRunner.java
@@ -37,11 +37,11 @@
import java.util.concurrent.atomic.AtomicLong;
import java.util.concurrent.atomic.AtomicReference;
import org.opends.messages.Message;
import org.opends.sdk.*;
import org.opends.sdk.AuthenticatedConnectionFactory.AuthenticatedAsynchronousConnection;
import org.opends.sdk.responses.Result;
import org.opends.server.util.cli.ConsoleApplication;
import com.sun.opends.sdk.util.Message;
@@ -50,34 +50,53 @@
 */
abstract class PerformanceRunner
{
  private final AtomicInteger operationRecentCount =
      new AtomicInteger();
  private final AtomicInteger operationRecentCount = new AtomicInteger();
  private final AtomicInteger successRecentCount = new AtomicInteger();
  private final AtomicInteger failedRecentCount = new AtomicInteger();
  private final AtomicLong waitRecentTime = new AtomicLong();
  private final AtomicReference<ReversableArray> eTimeBuffer =
      new AtomicReference<ReversableArray>(new ReversableArray(100000));
  private final AtomicReference<ReversableArray> eTimeBuffer = new AtomicReference<ReversableArray>(
      new ReversableArray(100000));
  private final ConsoleApplication app;
  private final ThreadLocal<DataSource[]> dataSources =
      new ThreadLocal<DataSource[]>();
  private final ThreadLocal<DataSource[]> dataSources = new ThreadLocal<DataSource[]>();
  private volatile boolean stopRequested;
  private int numThreads;
  private int numConnections;
  private int targetThroughput;
  private int maxIterations;
  private boolean isAsync;
  private boolean noRebind;
  private int statsInterval;
  private IntegerArgument numThreadsArgument;
  private IntegerArgument maxIterationsArgument;
  private IntegerArgument statsIntervalArgument;
  private IntegerArgument targetThroughputArgument;
  private IntegerArgument numConnectionsArgument;
  private IntegerArgument percentilesArgument;
  private BooleanArgument keepConnectionsOpen;
  private BooleanArgument noRebindArgument;
  private BooleanArgument asyncArgument;
  private StringArgument arguments;
@@ -88,86 +107,65 @@
      throws ArgumentException
  {
    this.app = app;
    numThreadsArgument =
        new IntegerArgument("numThreads", 't', "numThreads", false,
            false, true, Message.raw("{numThreads}"), 1, null, true, 1,
            false, 0, Message
    numThreadsArgument = new IntegerArgument("numThreads", 't',
        "numThreads", false, false, true, Message.raw("{numThreads}"),
        1, null, true, 1, false, 0, Message
                .raw("number of search threads per connection"));
    numThreadsArgument.setPropertyName("numThreads");
    argParser.addArgument(numThreadsArgument);
    numConnectionsArgument =
        new IntegerArgument("numConnections", 'c', "numConnections",
            false, false, true, Message.raw("{numConnections}"), 1,
            null, true, 1, false, 0, Message
                .raw("number of connections"));
    numConnectionsArgument = new IntegerArgument("numConnections", 'c',
        "numConnections", false, false, true, Message
            .raw("{numConnections}"), 1, null, true, 1, false, 0,
        Message.raw("number of connections"));
    numThreadsArgument.setPropertyName("numConnections");
    argParser.addArgument(numConnectionsArgument);
    maxIterationsArgument =
        new IntegerArgument("maxIterations", 'm', "maxIterations",
            false, false, true, Message.raw("{maxIterations}"), 0,
            null, Message
    maxIterationsArgument = new IntegerArgument("maxIterations", 'm',
        "maxIterations", false, false, true, Message
            .raw("{maxIterations}"), 0, null, Message
                .raw("max searches per thread, 0 for unlimited"));
    numThreadsArgument.setPropertyName("maxIterations");
    argParser.addArgument(maxIterationsArgument);
    statsIntervalArgument =
        new IntegerArgument(
            "statInterval",
            'i',
            "statInterval",
            false,
            false,
            true,
            Message.raw("{statInterval}"),
            5,
            null,
            true,
            1,
            false,
            0,
            Message
    statsIntervalArgument = new IntegerArgument("statInterval", 'i',
        "statInterval", false, false, true, Message
            .raw("{statInterval}"), 5, null, true, 1, false, 0, Message
                .raw("Display results each specified number of seconds"));
    numThreadsArgument.setPropertyName("statInterval");
    argParser.addArgument(statsIntervalArgument);
    targetThroughputArgument =
        new IntegerArgument("targetThroughput", 'M',
            "targetThroughput", false, false, true, Message
    targetThroughputArgument = new IntegerArgument("targetThroughput",
        'M', "targetThroughput", false, false, true, Message
                .raw("{targetThroughput}"), 0, null, Message
                .raw("Target average throughput to achieve"));
    targetThroughputArgument.setPropertyName("targetThroughput");
    argParser.addArgument(targetThroughputArgument);
    percentilesArgument =
        new IntegerArgument("percentile", 'e', "percentile", false,
            true, Message.raw("{percentile}"), true, 50, true, 100,
            Message.raw("Calculate max response time for a "
    percentilesArgument = new IntegerArgument("percentile", 'e',
        "percentile", false, true, Message.raw("{percentile}"), true,
        50, true, 100, Message.raw("Calculate max response time for a "
                + "percentile of operations"));
    percentilesArgument.setPropertyName("percentile");
    argParser.addArgument(percentilesArgument);
    keepConnectionsOpen =
        new BooleanArgument("keepConnectionsOpen", 'f',
            "keepConnectionsOpen", Message.raw("keep connections open"));
    keepConnectionsOpen = new BooleanArgument("keepConnectionsOpen",
        'f', "keepConnectionsOpen", Message
            .raw("keep connections open"));
    keepConnectionsOpen.setPropertyName("keepConnectionsOpen");
    argParser.addArgument(keepConnectionsOpen);
    noRebindArgument =
        new BooleanArgument("noRebind", 'F', "noRebind", Message
            .raw("keep connections open and don't rebind"));
    noRebindArgument = new BooleanArgument("noRebind", 'F', "noRebind",
        Message.raw("keep connections open and don't rebind"));
    keepConnectionsOpen.setPropertyName("noRebind");
    argParser.addArgument(noRebindArgument);
    asyncArgument =
        new BooleanArgument("asynchronous", 'A', "asynchronous",
            Message.raw("asynch, don't wait for results"));
    asyncArgument = new BooleanArgument("asynchronous", 'A',
        "asynchronous", Message.raw("asynch, don't wait for results"));
    keepConnectionsOpen.setPropertyName("asynchronous");
    argParser.addArgument(asyncArgument);
    arguments =
        new StringArgument(
    arguments = new StringArgument(
            "arguments",
            'g',
            "arguments",
@@ -239,9 +237,8 @@
        if (keepConnectionsOpen.isPresent()
            || noRebindArgument.isPresent())
        {
          connection =
              connectionFactory.getAsynchronousConnection(null, null)
                  .get();
          connection = connectionFactory.getAsynchronousConnection(
              null, null).get();
        }
        for (int j = 0; j < numThreads; j++)
        {
@@ -357,7 +354,9 @@
      Thread
  {
    private int count;
    private final AsynchronousConnection connection;
    private final ConnectionFactory<?> connectionFactory;
@@ -400,8 +399,7 @@
      AsynchronousConnection connection;
      R handler;
      double targetTimeInMS =
          (1.0 / (targetThroughput / (numThreads * numConnections))) * 1000.0;
      double targetTimeInMS = (1.0 / (targetThroughput / (numThreads * numConnections))) * 1000.0;
      double sleepTimeInMS = 0;
      long start;
      while (!stopRequested
@@ -414,9 +412,8 @@
        {
          try
          {
            connection =
                connectionFactory.getAsynchronousConnection(null, null)
                    .get();
            connection = connectionFactory.getAsynchronousConnection(
                null, null).get();
          }
          catch (InterruptedException e)
          {
@@ -441,8 +438,7 @@
          if (!noRebind
              && connection instanceof AuthenticatedAsynchronousConnection)
          {
            AuthenticatedAsynchronousConnection ac =
                (AuthenticatedAsynchronousConnection) connection;
            AuthenticatedAsynchronousConnection ac = (AuthenticatedAsynchronousConnection) connection;
            try
            {
              ac.rebind(null, null).get();
@@ -464,8 +460,8 @@
            }
          }
        }
        future =
            performOperation(connection, handler, dataSources.get());
        future = performOperation(connection, handler, dataSources
            .get());
        operationRecentCount.getAndIncrement();
        count++;
        if (!isAsync)
@@ -508,8 +504,7 @@
            continue;
          }
          sleepTimeInMS +=
              targetTimeInMS
          sleepTimeInMS += targetTimeInMS
                  - ((System.nanoTime() - start) / 1000000.0);
          if (sleepTimeInMS < -60000)
          {
@@ -527,26 +522,41 @@
  class StatsThread extends Thread
  {
    protected final String[] EMPTY_STRINGS = new String[0];
    private final MultiColumnPrinter printer;
    private final List<GarbageCollectorMXBean> beans;
    private final Set<Double> percentiles;
    private final int numColumns;
    private ReversableArray etimes = new ReversableArray(100000);
    private final ReversableArray array = new ReversableArray(200000);
    protected long totalSuccessCount;
    protected long totalOperationCount;
    protected long totalFailedCount;
    protected long totalWaitTime;
    protected int successCount;
    protected int searchCount;
    protected int failedCount;
    protected long waitTime;
    protected long lastStatTime;
    protected long lastGCDuration;
    protected double recentDuration;
    protected double averageDuration;
@@ -569,11 +579,9 @@
        }
      }
      this.percentiles = pSet.descendingSet();
      numColumns =
          5 + this.percentiles.size() + additionalColumns.length
              + (isAsync ? 1 : 0);
      printer =
          new MultiColumnPrinter(numColumns, 2, "-",
      numColumns = 5 + this.percentiles.size()
          + additionalColumns.length + (isAsync ? 1 : 0);
      printer = new MultiColumnPrinter(numColumns, 2, "-",
              MultiColumnPrinter.RIGHT, app);
      printer.setTitleAlign(MultiColumnPrinter.RIGHT);
@@ -676,16 +684,14 @@
        averageDuration -= gcDuration;
        recentDuration /= 1000.0;
        averageDuration /= 1000.0;
        strings[0] =
            String.format("%.1f", successCount / recentDuration);
        strings[1] =
            String.format("%.1f", totalSuccessCount / averageDuration);
        strings[2] =
            String.format("%.3f",
                (waitTime - (gcDuration - lastGCDuration))
                    / successCount / 1000000.0);
        strings[3] =
            String.format("%.3f", (totalWaitTime - gcDuration)
        strings[0] = String.format("%.1f", successCount
            / recentDuration);
        strings[1] = String.format("%.1f", totalSuccessCount
            / averageDuration);
        strings[2] = String.format("%.3f",
            (waitTime - (gcDuration - lastGCDuration)) / successCount
                / 1000000.0);
        strings[3] = String.format("%.3f", (totalWaitTime - gcDuration)
                / totalSuccessCount / 1000000.0);
        boolean changed = false;
@@ -733,28 +739,26 @@
        int i = 4;
        for (Double percent : percentiles)
        {
          index =
              array.size()
                  - (int) Math.floor((percent / 100.0)
                      * totalSuccessCount) - 1;
          index = array.size()
              - (int) Math.floor((percent / 100.0) * totalSuccessCount)
              - 1;
          if (index < 0)
          {
            strings[i++] =
                String.format("*%.3f", array.get(0) / 1000000.0);
            strings[i++] = String.format("*%.3f",
                array.get(0) / 1000000.0);
          }
          else
          {
            strings[i++] =
                String.format("%.3f", array.get(index) / 1000000.0);
            strings[i++] = String.format("%.3f",
                array.get(index) / 1000000.0);
          }
        }
        strings[i++] =
            String.format("%.1f", totalFailedCount / averageDuration);
        strings[i++] = String.format("%.1f", totalFailedCount
            / averageDuration);
        if (isAsync)
        {
          strings[i++] =
              String
                  .format("%.1f", (double) searchCount / successCount);
          strings[i++] = String.format("%.1f", (double) searchCount
              / successCount);
        }
        for (String column : getAdditionalColumns())
        {
@@ -770,7 +774,9 @@
  private static class ReversableArray
  {
    private final long[] array;
    private boolean reversed;
    private int size;
sdk/src/org/opends/sdk/tools/PromptingTrustManager.java
New file
@@ -0,0 +1,483 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2008 Sun Microsystems, Inc.
 */
package org.opends.sdk.tools;
import static com.sun.opends.sdk.util.Messages.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.NoSuchAlgorithmException;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.net.ssl.TrustManager;
import javax.net.ssl.TrustManagerFactory;
import javax.net.ssl.X509TrustManager;
import org.opends.sdk.util.Validator;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
/**
 * A trust manager which prompts the user for the length of time that
 * they would like to trust a server certificate.
 */
final class PromptingTrustManager implements X509TrustManager
{
  static private final Logger LOG = Logger
      .getLogger(PromptingTrustManager.class.getName());
  static private final String DEFAULT_PATH = System
      .getProperty("user.home")
      + File.separator + ".opends" + File.separator + "keystore";
  static private final char[] DEFAULT_PASSWORD = "OpenDS".toCharArray();
  /**
   * Enumeration description server certificate trust option.
   */
  private static enum TrustOption
  {
    UNTRUSTED(1, INFO_LDAP_CONN_PROMPT_SECURITY_TRUST_OPTION_NO.get()), SESSION(
        2, INFO_LDAP_CONN_PROMPT_SECURITY_TRUST_OPTION_SESSION.get()), PERMANENT(
        3, INFO_LDAP_CONN_PROMPT_SECURITY_TRUST_OPTION_ALWAYS.get()), CERTIFICATE_DETAILS(
        4, INFO_LDAP_CONN_PROMPT_SECURITY_CERTIFICATE_DETAILS.get());
    private Integer choice;
    private Message msg;
    /**
     * Private constructor.
     *
     * @param i
     *          the menu return value.
     * @param msg
     *          the message message.
     */
    private TrustOption(int i, Message msg)
    {
      choice = i;
      this.msg = msg;
    }
    /**
     * Returns the choice number.
     *
     * @return the attribute name.
     */
    Integer getChoice()
    {
      return choice;
    }
    /**
     * Return the menu message.
     *
     * @return the menu message.
     */
    Message getMenuMessage()
    {
      return msg;
    }
  }
  private final KeyStore inMemoryTrustStore;
  private final KeyStore onDiskTrustStore;
  private final X509TrustManager inMemoryTrustManager;
  private final X509TrustManager onDiskTrustManager;
  private final X509TrustManager nestedTrustManager;
  private final ConsoleApplication app;
  PromptingTrustManager(ConsoleApplication app,
      X509TrustManager sourceTrustManager) throws KeyStoreException,
      IOException, NoSuchAlgorithmException, CertificateException
  {
    this(app, DEFAULT_PATH, sourceTrustManager);
  }
  PromptingTrustManager(ConsoleApplication app,
      String acceptedStorePath, X509TrustManager sourceTrustManager)
      throws KeyStoreException, IOException, NoSuchAlgorithmException,
      CertificateException
  {
    Validator.ensureNotNull(app, acceptedStorePath);
    this.app = app;
    this.nestedTrustManager = sourceTrustManager;
    inMemoryTrustStore = KeyStore
        .getInstance(KeyStore.getDefaultType());
    onDiskTrustStore = KeyStore.getInstance(KeyStore.getDefaultType());
    File onDiskTrustStorePath = new File(acceptedStorePath);
    inMemoryTrustStore.load(null, null);
    if (!onDiskTrustStorePath.exists())
    {
      onDiskTrustStore.load(null, null);
    }
    else
    {
      FileInputStream fos = new FileInputStream(onDiskTrustStorePath);
      onDiskTrustStore.load(fos, DEFAULT_PASSWORD);
    }
    TrustManagerFactory tmf = TrustManagerFactory
        .getInstance(TrustManagerFactory.getDefaultAlgorithm());
    tmf.init(inMemoryTrustStore);
    X509TrustManager x509tm = null;
    for (TrustManager tm : tmf.getTrustManagers())
    {
      if (tm instanceof X509TrustManager)
      {
        x509tm = (X509TrustManager) tm;
        break;
      }
    }
    if (x509tm == null)
    {
      throw new NoSuchAlgorithmException();
    }
    this.inMemoryTrustManager = x509tm;
    tmf.init(onDiskTrustStore);
    x509tm = null;
    for (TrustManager tm : tmf.getTrustManagers())
    {
      if (tm instanceof X509TrustManager)
      {
        x509tm = (X509TrustManager) tm;
        break;
      }
    }
    if (x509tm == null)
    {
      throw new NoSuchAlgorithmException();
    }
    this.onDiskTrustManager = x509tm;
  }
  public void checkClientTrusted(X509Certificate[] x509Certificates,
      String s) throws CertificateException
  {
    try
    {
      inMemoryTrustManager.checkClientTrusted(x509Certificates, s);
    }
    catch (Exception ce1)
    {
      try
      {
        onDiskTrustManager.checkClientTrusted(x509Certificates, s);
      }
      catch (Exception ce2)
      {
        if (nestedTrustManager != null)
        {
          try
          {
            nestedTrustManager.checkClientTrusted(x509Certificates, s);
          }
          catch (Exception ce3)
          {
            checkManuallyTrusted(x509Certificates, ce3);
          }
        }
        else
        {
          checkManuallyTrusted(x509Certificates, ce1);
        }
      }
    }
  }
  public void checkServerTrusted(X509Certificate[] x509Certificates,
      String s) throws CertificateException
  {
    try
    {
      inMemoryTrustManager.checkServerTrusted(x509Certificates, s);
    }
    catch (Exception ce1)
    {
      try
      {
        onDiskTrustManager.checkServerTrusted(x509Certificates, s);
      }
      catch (Exception ce2)
      {
        if (nestedTrustManager != null)
        {
          try
          {
            nestedTrustManager.checkServerTrusted(x509Certificates, s);
          }
          catch (Exception ce3)
          {
            checkManuallyTrusted(x509Certificates, ce3);
          }
        }
        else
        {
          checkManuallyTrusted(x509Certificates, ce1);
        }
      }
    }
  }
  public X509Certificate[] getAcceptedIssuers()
  {
    if (nestedTrustManager != null)
    {
      return nestedTrustManager.getAcceptedIssuers();
    }
    return new X509Certificate[0];
  }
  /**
   * Indicate if the certificate chain can be trusted.
   *
   * @param chain
   *          The certificate chain to validate certificate.
   */
  private void checkManuallyTrusted(X509Certificate[] chain,
      Exception exception) throws CertificateException
  {
    app.println();
    app
        .println(INFO_LDAP_CONN_PROMPT_SECURITY_SERVER_CERTIFICATE
            .get());
    app.println();
    for (int i = 0; i < chain.length; i++)
    {
      // Certificate DN
      app.println(INFO_LDAP_CONN_SECURITY_SERVER_CERTIFICATE_USER_DN
          .get(chain[i].getSubjectDN().toString()));
      // certificate validity
      app.println(INFO_LDAP_CONN_SECURITY_SERVER_CERTIFICATE_VALIDITY
          .get(chain[i].getNotBefore().toString(), chain[i]
              .getNotAfter().toString()));
      // certificate Issuer
      app.println(INFO_LDAP_CONN_SECURITY_SERVER_CERTIFICATE_ISSUER
          .get(chain[i].getIssuerDN().toString()));
      app.println();
      app.println();
    }
    app.println();
    app.println(INFO_LDAP_CONN_PROMPT_SECURITY_TRUST_OPTION.get());
    app.println();
    Map<String, TrustOption> menuOptions = new HashMap<String, TrustOption>();
    for (TrustOption t : TrustOption.values())
    {
      menuOptions.put(t.getChoice().toString(), t);
      MessageBuilder builder = new MessageBuilder();
      builder.append(t.getChoice());
      builder.append(") ");
      builder.append(t.getMenuMessage());
      app.println(builder.toMessage(), 2 /* Indent options */);
    }
    TrustOption defaultTrustMethod = TrustOption.SESSION;
    Message promptMsg = INFO_MENU_PROMPT_SINGLE_DEFAULT
        .get(defaultTrustMethod.getChoice().toString());
    while (true)
    {
      app.println();
      String choice;
      try
      {
        choice = app.readInput(promptMsg, defaultTrustMethod
            .getChoice().toString());
      }
      catch (CLIException e)
      {
        // What can we do here?
        throw new CertificateException(exception);
      }
      finally
      {
        app.println();
      }
      TrustOption option = menuOptions.get(choice.trim());
      if (option == null)
      {
        app.println(ERR_MENU_BAD_CHOICE_SINGLE.get());
        app.println();
        continue;
      }
      switch (option)
      {
      case UNTRUSTED:
        if (exception instanceof CertificateException)
        {
          throw (CertificateException) exception;
        }
        else
        {
          throw new CertificateException(exception);
        }
      case CERTIFICATE_DETAILS:
        for (X509Certificate aChain : chain)
        {
          app.println();
          app.println(INFO_LDAP_CONN_SECURITY_SERVER_CERTIFICATE
              .get(aChain.toString()));
          app.println();
        }
        break;
      default: // SESSION / PERMANENT.
        // Update the trust manager with the new certificate
        acceptCertificate(chain, option == TrustOption.PERMANENT);
        return;
      }
    }
  }
  /**
   * This method is called when the user accepted a certificate.
   *
   * @param chain
   *          the certificate chain accepted by the user. certificate.
   */
  void acceptCertificate(X509Certificate[] chain, boolean permanent)
  {
    if (permanent)
    {
      LOG.log(Level.INFO, "Permanently accepting certificate chain to "
          + "truststore");
    }
    else
    {
      LOG.log(Level.INFO,
          "Accepting certificate chain for this session");
    }
    for (X509Certificate aChain : chain)
    {
      try
      {
        String alias = aChain.getSubjectDN().getName();
        inMemoryTrustStore.setCertificateEntry(alias, aChain);
        if (permanent)
        {
          onDiskTrustStore.setCertificateEntry(alias, aChain);
        }
      }
      catch (Exception e)
      {
        LOG.log(Level.WARNING, "Error setting certificate to store: "
            + e + "\nCert: " + aChain.toString());
      }
    }
    if (permanent)
    {
      try
      {
        File truststoreFile = new File(DEFAULT_PATH);
        if (!truststoreFile.exists())
        {
          createFile(truststoreFile);
        }
        FileOutputStream fos = new FileOutputStream(truststoreFile);
        onDiskTrustStore.store(fos, DEFAULT_PASSWORD);
        fos.close();
      }
      catch (Exception e)
      {
        LOG.log(Level.WARNING, "Error saving store to disk: " + e);
      }
    }
  }
  private boolean createFile(File f) throws IOException
  {
    boolean success = false;
    if (f != null)
    {
      File parent = f.getParentFile();
      if (!parent.exists())
      {
        parent.mkdirs();
      }
      success = f.createNewFile();
    }
    return success;
  }
}
sdk/src/org/opends/sdk/tools/SearchRate.java
@@ -29,9 +29,9 @@
import static org.opends.messages.ToolMessages.*;
import static org.opends.server.tools.ToolConstants.*;
import static org.opends.server.util.StaticUtils.filterExitCode;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.tools.ToolConstants.*;
import static org.opends.sdk.tools.Utils.*;
import java.io.InputStream;
import java.io.OutputStream;
@@ -40,12 +40,14 @@
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
import org.opends.messages.Message;
import org.opends.sdk.*;
import org.opends.sdk.requests.Requests;
import org.opends.sdk.requests.SearchRequest;
import org.opends.sdk.responses.*;
import org.opends.server.util.cli.ConsoleApplication;
import org.opends.sdk.responses.Result;
import org.opends.sdk.responses.SearchResultEntry;
import org.opends.sdk.responses.SearchResultReference;
import com.sun.opends.sdk.util.Message;
@@ -67,8 +69,8 @@
  public static void main(String[] args)
  {
    int retCode =
        mainSearchRate(args, System.in, System.out, System.err);
    int retCode = mainSearchRate(args, System.in, System.out,
        System.err);
    if (retCode != 0)
    {
@@ -133,13 +135,13 @@
  {
    // Create the command-line argument parser for use with this
    // program.
    Message toolDescription =
        Message.raw("This utility can be used to "
    Message toolDescription = Message
        .raw("This utility can be used to "
            + "measure search performance");
    // TODO: correct usage
    ArgumentParser argParser =
        new ArgumentParser(SearchRate.class.getName(), toolDescription,
            false, true, 1, 0, "[filter] [attributes ...]");
    ArgumentParser argParser = new ArgumentParser(SearchRate.class
        .getName(), toolDescription, false, true, 1, 0,
        "[filter] [attributes ...]");
    ArgumentParserConnectionFactory connectionFactory;
    SearchPerformanceRunner runner;
@@ -153,50 +155,44 @@
    try
    {
      connectionFactory =
          new ArgumentParserConnectionFactory(argParser, this);
      connectionFactory = new ArgumentParserConnectionFactory(
          argParser, this);
      runner = new SearchPerformanceRunner(argParser, this);
      propertiesFileArgument =
          new StringArgument("propertiesFilePath", null,
              OPTION_LONG_PROP_FILE_PATH, false, false, true,
      propertiesFileArgument = new StringArgument("propertiesFilePath",
          null, OPTION_LONG_PROP_FILE_PATH, false, false, true,
              INFO_PROP_FILE_PATH_PLACEHOLDER.get(), null, null,
              INFO_DESCRIPTION_PROP_FILE_PATH.get());
      argParser.addArgument(propertiesFileArgument);
      argParser.setFilePropertiesArgument(propertiesFileArgument);
      noPropertiesFileArgument =
          new BooleanArgument("noPropertiesFileArgument", null,
              OPTION_LONG_NO_PROP_FILE, INFO_DESCRIPTION_NO_PROP_FILE
                  .get());
      noPropertiesFileArgument = new BooleanArgument(
          "noPropertiesFileArgument", null, OPTION_LONG_NO_PROP_FILE,
          INFO_DESCRIPTION_NO_PROP_FILE.get());
      argParser.addArgument(noPropertiesFileArgument);
      argParser.setNoPropertiesFileArgument(noPropertiesFileArgument);
      showUsage =
          new BooleanArgument("showUsage", OPTION_SHORT_HELP,
      showUsage = new BooleanArgument("showUsage", OPTION_SHORT_HELP,
              OPTION_LONG_HELP, INFO_DESCRIPTION_SHOWUSAGE.get());
      argParser.addArgument(showUsage);
      argParser.setUsageArgument(showUsage, getOutputStream());
      baseDN =
          new StringArgument("baseDN", OPTION_SHORT_BASEDN,
      baseDN = new StringArgument("baseDN", OPTION_SHORT_BASEDN,
              OPTION_LONG_BASEDN, true, false, true,
              INFO_BASEDN_PLACEHOLDER.get(), null, null,
              INFO_SEARCH_DESCRIPTION_BASEDN.get());
      baseDN.setPropertyName(OPTION_LONG_BASEDN);
      argParser.addArgument(baseDN);
      searchScope =
          new MultiChoiceArgument<SearchScope>("searchScope", 's',
              "searchScope", false, true, INFO_SEARCH_SCOPE_PLACEHOLDER
                  .get(), SearchScope.values(), false,
              INFO_SEARCH_DESCRIPTION_SEARCH_SCOPE.get());
      searchScope = new MultiChoiceArgument<SearchScope>("searchScope",
          's', "searchScope", false, true,
          INFO_SEARCH_SCOPE_PLACEHOLDER.get(), SearchScope.values(),
          false, INFO_SEARCH_DESCRIPTION_SEARCH_SCOPE.get());
      searchScope.setPropertyName("searchScope");
      searchScope.setDefaultValue(SearchScope.WHOLE_SUBTREE);
      argParser.addArgument(searchScope);
      dereferencePolicy =
          new MultiChoiceArgument<DereferenceAliasesPolicy>(
      dereferencePolicy = new MultiChoiceArgument<DereferenceAliasesPolicy>(
              "derefpolicy", 'a', "dereferencePolicy", false, true,
              INFO_DEREFERENCE_POLICE_PLACEHOLDER.get(),
              DereferenceAliasesPolicy.values(), false,
@@ -205,8 +201,7 @@
      dereferencePolicy.setDefaultValue(DereferenceAliasesPolicy.NEVER);
      argParser.addArgument(dereferencePolicy);
      verbose =
          new BooleanArgument("verbose", 'v', "verbose",
      verbose = new BooleanArgument("verbose", 'v', "verbose",
              INFO_DESCRIPTION_VERBOSE.get());
      verbose.setPropertyName("verbose");
      argParser.addArgument(verbose);
@@ -241,8 +236,8 @@
    }
    List<String> attributes = new LinkedList<String>();
    ArrayList<String> filterAndAttributeStrings =
        argParser.getTrailingArguments();
    ArrayList<String> filterAndAttributeStrings = argParser
        .getTrailingArguments();
    if (filterAndAttributeStrings.size() > 0)
    {
      // the list of trailing arguments should be structured as follow:
@@ -255,14 +250,14 @@
        attributes.add(s);
      }
    }
    runner.attributes =
        attributes.toArray(new String[attributes.size()]);
    runner.attributes = attributes
        .toArray(new String[attributes.size()]);
    runner.baseDN = baseDN.getValue();
    try
    {
      runner.scope = searchScope.getTypedValue();
      runner.dereferencesAliasesPolicy =
          dereferencePolicy.getTypedValue();
      runner.dereferencesAliasesPolicy = dereferencePolicy
          .getTypedValue();
    }
    catch (ArgumentException ex1)
    {
@@ -274,8 +269,8 @@
    {
      // Try it out to make sure the format string and data sources
      // match.
      Object[] data =
          DataSource.generateData(runner.getDataSources(), null);
      Object[] data = DataSource.generateData(runner.getDataSources(),
          null);
      String.format(runner.filter, data);
      String.format(runner.baseDN, data);
    }
@@ -289,6 +284,8 @@
    return runner.run(connectionFactory);
  }
  private final AtomicInteger entryRecentCount = new AtomicInteger();
@@ -296,9 +293,13 @@
  private class SearchPerformanceRunner extends PerformanceRunner
  {
    private String filter;
    private String baseDN;
    private SearchScope scope;
    private DereferenceAliasesPolicy dereferencesAliasesPolicy;
    private String[] attributes;
@@ -356,6 +357,7 @@
        WorkerThread<SearchStatsHandler>
    {
      private SearchRequest sr;
      private Object[] data;
@@ -389,9 +391,8 @@
          else
          {
            data = DataSource.generateData(dataSources, data);
            sr =
                Requests.newSearchRequest(String.format(baseDN, data), scope,
                    String.format(filter, data), attributes);
            sr = Requests.newSearchRequest(String.format(baseDN, data),
                scope, String.format(filter, data), attributes);
          }
          sr.setDereferenceAliasesPolicy(dereferencesAliasesPolicy);
        }
@@ -410,6 +411,7 @@
    private class SearchStatsThread extends StatsThread
    {
      private long totalEntryCount;
      private final String[] extraColumn;
@@ -426,8 +428,8 @@
      {
        int entryCount = entryRecentCount.getAndSet(0);
        totalEntryCount += entryCount;
        extraColumn[0] =
            String.format("%.1f", (double) entryCount / successCount);
        extraColumn[0] = String.format("%.1f", (double) entryCount
            / successCount);
        return extraColumn;
      }
    }
sdk/src/org/opends/sdk/tools/SelectableCertificateKeyManager.java
New file
@@ -0,0 +1,314 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2008-2009 Sun Microsystems, Inc.
 */
package org.opends.sdk.tools;
import java.net.Socket;
import java.security.Principal;
import java.security.PrivateKey;
import java.security.cert.X509Certificate;
import javax.net.ssl.SSLEngine;
import javax.net.ssl.X509ExtendedKeyManager;
import javax.net.ssl.X509KeyManager;
/**
 * This class implements an X.509 key manager that will be used to wrap
 * an existing key manager and makes it possible to configure which
 * certificate(s) should be used for client and/or server operations.
 * The certificate selection will be based on the alias (also called the
 * nickname) of the certificate.
 */
final class SelectableCertificateKeyManager extends
    X509ExtendedKeyManager
{
  // The alias of the certificate that should be selected from the key
  // manager.
  private String alias;
  // The key manager that is wrapped by this key manager.
  private X509KeyManager keyManager;
  /**
   * Creates a new instance of this key manager that will wrap the
   * provided key manager and use the certificate with the specified
   * alias.
   *
   * @param keyManager
   *          The key manager to be wrapped by this key manager.
   * @param alias
   *          The nickname of the certificate that should be selected
   *          for operations involving this key manager.
   */
  SelectableCertificateKeyManager(X509KeyManager keyManager,
      String alias)
  {
    this.keyManager = keyManager;
    this.alias = alias;
  }
  /**
   * Chooses the alias of the client certificate that should be used
   * based on the provided critieria. This will either return the
   * preferred alias configured for this key manager, or {@code null} if
   * no client certificate with that alias is configured in the
   * underlying key manager.
   *
   * @param keyType
   *          The set of key algorithm names, ordered with the most
   *          preferred key type first.
   * @param issuers
   *          The list of acceptable issuer subject names, or {@code
   *          null} if any issuer may be used.
   * @param socket
   *          The socket to be used for this connection.
   * @return The alias configured for this key manager, or {@code null}
   *         if no such client certificate is available with that alias.
   */
  public String chooseClientAlias(String[] keyType,
      Principal[] issuers, Socket socket)
  {
    for (String type : keyType)
    {
      String[] clientAliases = keyManager.getClientAliases(type,
          issuers);
      if (clientAliases != null)
      {
        for (String clientAlias : clientAliases)
        {
          if (clientAlias.equals(alias))
          {
            return alias;
          }
        }
      }
    }
    return null;
  }
  /**
   * Chooses the alias of the client certificate that should be used
   * based on the provided critieria. This will either return the
   * preferred alias configured for this key manager, or {@code null} if
   * no client certificate with that alias is configured in the
   * underlying key manager.
   *
   * @param keyType
   *          The set of key algorithm names, ordered with the most
   *          preferred key type first.
   * @param issuers
   *          The list of acceptable issuer subject names, or {@code
   *          null} if any issuer may be used.
   * @param engine
   *          The SSL engine to be used for this connection.
   * @return The alias configured for this key manager, or {@code null}
   *         if no such client certificate is available with that alias.
   */
  public String chooseEngineClientAlias(String[] keyType,
      Principal[] issuers, SSLEngine engine)
  {
    for (String type : keyType)
    {
      String[] clientAliases = keyManager.getClientAliases(type,
          issuers);
      if (clientAliases != null)
      {
        for (String clientAlias : clientAliases)
        {
          if (clientAlias.equals(alias))
          {
            return alias;
          }
        }
      }
    }
    return null;
  }
  /**
   * Chooses the alias of the server certificate that should be used
   * based on the provided critieria. This will either return the
   * preferred alias configured for this key manager, or {@code null} if
   * no server certificate with that alias is configured in the
   * underlying key manager.
   *
   * @param keyType
   *          The public key type for the certificate.
   * @param issuers
   *          The list of acceptable issuer subject names, or {@code
   *          null} if any issuer may be used.
   * @param socket
   *          The socket to be used for this connection.
   * @return The alias configured for this key manager, or {@code null}
   *         if no such server certificate is available with that alias.
   */
  public String chooseServerAlias(String keyType, Principal[] issuers,
      Socket socket)
  {
    String[] serverAliases = keyManager.getServerAliases(keyType,
        issuers);
    if (serverAliases != null)
    {
      for (String serverAlias : serverAliases)
      {
        if (serverAlias.equals(alias))
        {
          return alias;
        }
      }
    }
    return null;
  }
  /**
   * Chooses the alias of the server certificate that should be used
   * based on the provided critieria. This will either return the
   * preferred alias configured for this key manager, or {@code null} if
   * no server certificate with that alias is configured in the
   * underlying key manager. Note that the returned alias can be
   * transformed in lowercase, depending on the KeyStore implementation.
   * It is recommended not to use aliases in a KeyStore that only differ
   * in case.
   *
   * @param keyType
   *          The public key type for the certificate.
   * @param issuers
   *          The list of acceptable issuer subject names, or {@code
   *          null} if any issuer may be used.
   * @param engine
   *          The SSL engine to be used for this connection.
   * @return The alias configured for this key manager, or {@code null}
   *         if no such server certificate is available with that alias.
   */
  public String chooseEngineServerAlias(String keyType,
      Principal[] issuers, SSLEngine engine)
  {
    String[] serverAliases = keyManager.getServerAliases(keyType,
        issuers);
    if (serverAliases != null)
    {
      for (String serverAlias : serverAliases)
      {
        if (serverAlias.equalsIgnoreCase(alias))
        {
          return serverAlias;
        }
      }
    }
    return null;
  }
  /**
   * Retrieves the certificate chain for the provided alias.
   *
   * @param alias
   *          The alias for the certificate chain to retrieve.
   * @return The certificate chain for the provided alias, or {@code
   *         null} if no certificate is associated with the provided
   *         alias.
   */
  public X509Certificate[] getCertificateChain(String alias)
  {
    return keyManager.getCertificateChain(alias);
  }
  /**
   * Retrieves the set of certificate aliases that may be used for
   * client authentication with the given public key type and set of
   * issuers.
   *
   * @param keyType
   *          The public key type for the aliases to retrieve.
   * @param issuers
   *          The list of acceptable issuer subject names, or {@code
   *          null} if any issuer may be used.
   * @return The set of certificate aliases that may be used for client
   *         authentication with the given public key type and set of
   *         issuers, or {@code null} if there were none.
   */
  public String[] getClientAliases(String keyType, Principal[] issuers)
  {
    return keyManager.getClientAliases(keyType, issuers);
  }
  /**
   * Retrieves the private key for the provided alias.
   *
   * @param alias
   *          The alias for the private key to return.
   * @return The private key for the provided alias, or {@code null} if
   *         no private key is available for the provided alias.
   */
  public PrivateKey getPrivateKey(String alias)
  {
    return keyManager.getPrivateKey(alias);
  }
  /**
   * Retrieves the set of certificate aliases that may be used for
   * server authentication with the given public key type and set of
   * issuers.
   *
   * @param keyType
   *          The public key type for the aliases to retrieve.
   * @param issuers
   *          The list of acceptable issuer subject names, or {@code
   *          null} if any issuer may be used.
   * @return The set of certificate aliases that may be used for server
   *         authentication with the given public key type and set of
   *         issuers, or {@code null} if there were none.
   */
  public String[] getServerAliases(String keyType, Principal[] issuers)
  {
    return keyManager.getServerAliases(keyType, issuers);
  }
}
sdk/src/org/opends/sdk/tools/StringArgument.java
@@ -28,8 +28,8 @@
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
sdk/src/org/opends/sdk/tools/ToolConstants.java
New file
@@ -0,0 +1,614 @@
/*
 * CDDL HEADER START
 *
 * The contents of this file are subject to the terms of the
 * Common Development and Distribution License, Version 1.0 only
 * (the "License").  You may not use this file except in compliance
 * with the License.
 *
 * You can obtain a copy of the license at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
 * See the License for the specific language governing permissions
 * and limitations under the License.
 *
 * When distributing Covered Code, include this CDDL HEADER in each
 * file and include the License file at
 * trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
 * add the following below this CDDL HEADER, with the fields enclosed
 * by brackets "[]" replaced with your own identifying information:
 *      Portions Copyright [yyyy] [name of copyright owner]
 *
 * CDDL HEADER END
 *
 *
 *      Copyright 2006-2009 Sun Microsystems, Inc.
 */
package org.opends.sdk.tools;
/**
 * This class defines a number of constants used in one or more
 * Directory Server tools.
 */
final class ToolConstants
{
  // Prevent instantiation.
  private ToolConstants()
  {
  }
  /**
   * The name of the SASL property that can be used to provide the
   * authentication ID for the bind.
   */
  static final String SASL_PROPERTY_AUTHID = "authid";
  /**
   * The name of the SASL property that can be used to provide the
   * authorization ID for the bind.
   */
  static final String SASL_PROPERTY_AUTHZID = "authzid";
  /**
   * The name of the SASL property that can be used to provide the
   * digest URI for the bind.
   */
  static final String SASL_PROPERTY_DIGEST_URI = "digest-uri";
  /**
   * The name of the SASL property that can be used to provide the KDC
   * for use in Kerberos authentication.
   */
  static final String SASL_PROPERTY_KDC = "kdc";
  /**
   * The name of the SASL property that can be used to provide the
   * quality of protection for the bind.
   */
  static final String SASL_PROPERTY_QOP = "qop";
  /**
   * The name of the SASL property that can be used to provide the realm
   * for the bind.
   */
  static final String SASL_PROPERTY_REALM = "realm";
  /**
   * The name of the SASL property that can be used to provide trace
   * information for a SASL ANONYMOUS request.
   */
  static final String SASL_PROPERTY_TRACE = "trace";
  /**
   * The name of the SASL property that can be used to provide the SASL
   * mechanism to use.
   */
  static final String SASL_PROPERTY_MECH = "mech";
  /**
   * The name of the opends configuration direction in the user home
   * directory.
   */
  static final String DEFAULT_OPENDS_CONFIG_DIR = ".opends";
  /**
   * The default properties file name.
   */
  static final String DEFAULT_OPENDS_PROPERTIES_FILE_NAME = "tools";
  /**
   * The default properties file extension.
   */
  static final String DEFAULT_OPENDS_PROPERTIES_FILE_EXTENSION = ".properties";
  /**
   * The value for the short option batchFilePath.
   */
  static final char OPTION_SHORT_BATCH_FILE_PATH = 'F';
  /**
   * The value for the long option batchFilePath .
   */
  static final String OPTION_LONG_BATCH_FILE_PATH = "batchFilePath";
  /**
   * The value for the short option hostname.
   */
  static final char OPTION_SHORT_HOST = 'h';
  /**
   * The value for the long option hostname.
   */
  static final String OPTION_LONG_HOST = "hostname";
  /**
   * The value for the short option port.
   */
  static final char OPTION_SHORT_PORT = 'p';
  /**
   * The value for the long option port.
   */
  static final String OPTION_LONG_PORT = "port";
  /**
   * The value for the short option useSSL.
   */
  static final char OPTION_SHORT_USE_SSL = 'Z';
  /**
   * The value for the long option useSSL.
   */
  static final String OPTION_LONG_USE_SSL = "useSSL";
  /**
   * The value for the short option baseDN.
   */
  static final char OPTION_SHORT_BASEDN = 'b';
  /**
   * The value for the long option baseDN.
   */
  static final String OPTION_LONG_BASEDN = "baseDN";
  /**
   * The value for the short option bindDN.
   */
  static final char OPTION_SHORT_BINDDN = 'D';
  /**
   * The value for the long option bindDN.
   */
  static final String OPTION_LONG_BINDDN = "bindDN";
  /**
   * The value for the short option bindPassword.
   */
  static final char OPTION_SHORT_BINDPWD = 'w';
  /**
   * The value for the long option bindPassword.
   */
  static final String OPTION_LONG_BINDPWD = "bindPassword";
  /**
   * The value for the short option bindPasswordFile.
   */
  static final char OPTION_SHORT_BINDPWD_FILE = 'j';
  /**
   * The value for the long option bindPasswordFile.
   */
  static final String OPTION_LONG_BINDPWD_FILE = "bindPasswordFile";
  /**
   * The value for the short option compress.
   */
  static final char OPTION_SHORT_COMPRESS = 'c';
  /**
   * The value for the long option compress.
   */
  static final String OPTION_LONG_COMPRESS = "compress";
  /**
   * The value for the short option filename.
   */
  static final char OPTION_SHORT_FILENAME = 'f';
  /**
   * The value for the long option filename.
   */
  static final String OPTION_LONG_FILENAME = "filename";
  /**
   * The value for the short option ldifFile.
   */
  static final char OPTION_SHORT_LDIF_FILE = 'l';
  /**
   * The value for the long option ldifFile.
   */
  static final String OPTION_LONG_LDIF_FILE = "ldifFile";
  /**
   * The value for the short option useStartTLS.
   */
  static final char OPTION_SHORT_START_TLS = 'q';
  /**
   * The value for the long option useStartTLS.
   */
  static final String OPTION_LONG_START_TLS = "useStartTLS";
  /**
   * The value for the short option randomSeed.
   */
  static final char OPTION_SHORT_RANDOM_SEED = 's';
  /**
   * The value for the long option randomSeed.
   */
  static final String OPTION_LONG_RANDOM_SEED = "randomSeed";
  /**
   * The value for the short option keyStorePath.
   */
  static final char OPTION_SHORT_KEYSTOREPATH = 'K';
  /**
   * The value for the long option keyStorePath.
   */
  static final String OPTION_LONG_KEYSTOREPATH = "keyStorePath";
  /**
   * The value for the short option trustStorePath.
   */
  static final char OPTION_SHORT_TRUSTSTOREPATH = 'P';
  /**
   * The value for the long option trustStorePath.
   */
  static final String OPTION_LONG_TRUSTSTOREPATH = "trustStorePath";
  /**
   * The value for the short option keyStorePassword.
   */
  static final char OPTION_SHORT_KEYSTORE_PWD = 'W';
  /**
   * The value for the long option keyStorePassword.
   */
  static final String OPTION_LONG_KEYSTORE_PWD = "keyStorePassword";
  /**
   * The value for the short option trustStorePassword.
   */
  static final char OPTION_SHORT_TRUSTSTORE_PWD = 'T';
  /**
   * The value for the long option trustStorePassword.
   */
  static final String OPTION_LONG_TRUSTSTORE_PWD = "trustStorePassword";
  /**
   * The value for the short option keyStorePasswordFile .
   */
  static final char OPTION_SHORT_KEYSTORE_PWD_FILE = 'u';
  /**
   * The value for the long option keyStorePasswordFile .
   */
  static final String OPTION_LONG_KEYSTORE_PWD_FILE = "keyStorePasswordFile";
  /**
   * The value for the short option keyStorePasswordFile .
   */
  static final char OPTION_SHORT_TRUSTSTORE_PWD_FILE = 'U';
  /**
   * The value for the long option keyStorePasswordFile .
   */
  static final String OPTION_LONG_TRUSTSTORE_PWD_FILE = "trustStorePasswordFile";
  /**
   * The value for the short option trustAll .
   */
  static final char OPTION_SHORT_TRUSTALL = 'X';
  /**
   * The value for the long option trustAll .
   */
  static final String OPTION_LONG_TRUSTALL = "trustAll";
  /**
   * The value for the short option certNickname .
   */
  static final char OPTION_SHORT_CERT_NICKNAME = 'N';
  /**
   * The value for the long option certNickname .
   */
  static final String OPTION_LONG_CERT_NICKNAME = "certNickname";
  /**
   * The value for the long option assertionFilter .
   */
  static final String OPTION_LONG_ASSERTION_FILE = "assertionFilter";
  /**
   * The value for the short option dry-run.
   */
  static final char OPTION_SHORT_DRYRUN = 'n';
  /**
   * The value for the long option dry-run.
   */
  static final String OPTION_LONG_DRYRUN = "dry-run";
  /**
   * The value for the short option help.
   */
  static final char OPTION_SHORT_HELP = 'H';
  /**
   * The value for the long option help.
   */
  static final String OPTION_LONG_HELP = "help";
  /**
   * The value for the long option cli.
   */
  static final String OPTION_LONG_CLI = "cli";
  /**
   * The value for the short option cli.
   */
  static final char OPTION_SHORT_CLI = 'i';
  /**
   * The value for the short option proxyAs.
   */
  static final char OPTION_SHORT_PROXYAUTHID = 'Y';
  /**
   * The value for the long option proxyAs.
   */
  static final String OPTION_LONG_PROXYAUTHID = "proxyAs";
  /**
   * The value for the short option saslOption.
   */
  static final char OPTION_SHORT_SASLOPTION = 'o';
  /**
   * The value for the long option saslOption.
   */
  static final String OPTION_LONG_SASLOPTION = "saslOption";
  /**
   * The value for the short option geteffectiverights control authzid.
   */
  static final char OPTION_SHORT_EFFECTIVERIGHTSUSER = 'g';
  /**
   * The value for the long option geteffectiverights control authzid.
   */
  static final String OPTION_LONG_EFFECTIVERIGHTSUSER = "getEffectiveRightsAuthzid";
  /**
   * The value for the short option geteffectiveights control
   * attributes.
   */
  static final char OPTION_SHORT_EFFECTIVERIGHTSATTR = 'e';
  /**
   * The value for the long option geteffectiverights control specific
   * attribute list.
   */
  static final String OPTION_LONG_EFFECTIVERIGHTSATTR = "getEffectiveRightsAttribute";
  /**
   * The value for the short option protocol version attributes.
   */
  static final char OPTION_SHORT_PROTOCOL_VERSION = 'V';
  /**
   * The value for the long option protocol version attribute.
   */
  static final String OPTION_LONG_PROTOCOL_VERSION = "ldapVersion";
  /**
   * The value for the long option version.
   */
  static final char OPTION_SHORT_PRODUCT_VERSION = 'V';
  /**
   * The value for the long option version.
   */
  static final String OPTION_LONG_PRODUCT_VERSION = "version";
  /**
   * The value for the short option description attributes.
   */
  static final char OPTION_SHORT_DESCRIPTION = 'd';
  /**
   * The value for the long option description attribute.
   */
  static final String OPTION_LONG_DESCRIPTION = "description";
  /**
   * The value for the short option groupName attributes.
   */
  static final char OPTION_SHORT_GROUPNAME = 'g';
  /**
   * The value for the long option groupName attribute.
   */
  static final String OPTION_LONG_GROUPNAME = "groupName";
  /**
   * The value for the short option newGroupName attribute.
   */
  static final char OPTION_SHORT_NEWGROUPNAME = 'n';
  /**
   * The value for the long option groupName attribute.
   */
  static final String OPTION_LONG_NEWGROUPNAME = "newGroupName";
  /**
   * The value for the short option member-name attributes.
   */
  static final char OPTION_SHORT_MEMBERNAME = 'm';
  /**
   * The value for the long member-name version attribute.
   */
  static final String OPTION_LONG_MEMBERNAME = "memberName";
  /**
   * The value for the short option serverID attributes.
   */
  static final String OPTION_SHORT_SERVERID = null;
  /**
   * The value for the long option serverID attribute.
   */
  static final String OPTION_LONG_SERVERID = "serverID";
  /**
   * The value for the short option userID attributes.
   */
  static final String OPTION_SHORT_USERID = null;
  /**
   * The value for the long option userID attribute.
   */
  static final String OPTION_LONG_USERID = "userID";
  /**
   * The value for the short option set.
   */
  static final Character OPTION_SHORT_SET = null;
  /**
   * The value for the long option set.
   */
  static final String OPTION_LONG_SET = "set";
  /**
   * Value for the quiet option short form.
   */
  static final Character OPTION_SHORT_QUIET = 'Q';
  /**
   * Value for the quiet option long form.
   */
  static final String OPTION_LONG_QUIET = "quiet";
  /**
   * Value for noninteractive session short form.
   */
  static final Character OPTION_SHORT_NO_PROMPT = 'n';
  /**
   * Value for noninteractive session long form.
   */
  static final String OPTION_LONG_NO_PROMPT = "no-prompt";
  /**
   * Long form of script friendly option.
   */
  static final String OPTION_LONG_SCRIPT_FRIENDLY = "script-friendly";
  /**
   * Short form of script friendly option.
   */
  static final Character OPTION_SHORT_SCRIPT_FRIENDLY = 's';
  /**
   * Value for verbose option short form.
   */
  static final Character OPTION_SHORT_VERBOSE = 'v';
  /**
   * Value for verbose option long form.
   */
  static final String OPTION_LONG_VERBOSE = "verbose";
  /**
   * The value for the long option propertiesFilePAth .
   */
  static final String OPTION_LONG_PROP_FILE_PATH = "propertiesFilePath";
  /**
   * The value for the long option propertiesFilePAth .
   */
  static final String OPTION_LONG_NO_PROP_FILE = "noPropertiesFile";
  /**
   * Long form of referenced host name.
   */
  static final String OPTION_LONG_REFERENCED_HOST_NAME = "referencedHostName";
  /**
   * Long form of admin UID.
   */
  static final String OPTION_LONG_ADMIN_UID = "adminUID";
  /**
   * Long form of report authorization ID connection option.
   */
  static final String OPTION_LONG_REPORT_AUTHZ_ID = "reportAuthzID";
  /**
   * Long form of use password policy control connection option.
   */
  static final String OPTION_LONG_USE_PW_POLICY_CTL = "usePasswordPolicyControl";
  /**
   * Long form of use SASL external connection option.
   */
  static final String OPTION_LONG_USE_SASL_EXTERNAL = "useSASLExternal";
  /**
   * Long form of option for the command-line encoding option.
   */
  static final String OPTION_LONG_ENCODING = "encoding";
  /**
   * Long form of option specifying no wrapping of the command-line.
   */
  static final String OPTION_LONG_DONT_WRAP = "dontWrap";
  /**
   * Long form of email notification upon completion option.
   */
  static final String OPTION_LONG_COMPLETION_NOTIFICATION_EMAIL = "completionNotify";
  /**
   * Short form of email notification upon completion option.
   */
  static final Character OPTION_SHORT_COMPLETION_NOTIFICATION_EMAIL = null;
  /**
   * Long form of email notification upon error option.
   */
  static final String OPTION_LONG_ERROR_NOTIFICATION_EMAIL = "errorNotify";
  /**
   * Short form of email notification upon error option.
   */
  static final Character OPTION_SHORT_ERROR_NOTIFICATION_EMAIL = null;
  /**
   * Long form of dependency option.
   */
  static final String OPTION_LONG_DEPENDENCY = "dependency";
  /**
   * Short form of dependency option.
   */
  static final Character OPTION_SHORT_DEPENDENCY = null;
  /**
   * Long form of failed dependency action option.
   */
  static final String OPTION_LONG_FAILED_DEPENDENCY_ACTION = "failedDependencyAction";
  /**
   * Short form of failed dependency action option.
   */
  static final Character OPTION_SHORT_FAILED_DEPENDENCY_ACTION = null;
  /**
   * The default separator to be used in tables.
   */
  static final String LIST_TABLE_SEPARATOR = ":";
}
sdk/src/org/opends/sdk/tools/TrustAllTrustManager.java
File was renamed from sdk/src/org/opends/sdk/util/ssl/TrustAllTrustManager.java
@@ -25,34 +25,43 @@
 *      Copyright 2008 Sun Microsystems, Inc.
 */
package org.opends.sdk.util.ssl;
package org.opends.sdk.tools;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
import javax.net.ssl.X509TrustManager;
/**
 * An X509TrustManager which trusts everything.
 */
public class TrustAllTrustManager implements X509TrustManager {
final class TrustAllTrustManager implements X509TrustManager
{
  /**
   * {@inheritDoc}
   */
  public void checkClientTrusted(X509Certificate[] chain, String authType)
  throws CertificateException
  public void checkClientTrusted(X509Certificate[] chain,
      String authType) throws CertificateException
  {
  }
  /**
   * {@inheritDoc}
   */
  public void checkServerTrusted(X509Certificate[] chain, String authType)
  throws CertificateException
  public void checkServerTrusted(X509Certificate[] chain,
      String authType) throws CertificateException
  {
  }
  /**
   * {@inheritDoc}
   */
@@ -61,4 +70,3 @@
    return new X509Certificate[0];
  }
}
sdk/src/org/opends/sdk/tools/TrustStoreTrustManager.java
File was renamed from sdk/src/org/opends/sdk/util/ssl/TrustStoreTrustManager.java
@@ -26,7 +26,7 @@
 *      Portions Copyright 2009 Parametric Technology Corporation (PTC)
 */
package org.opends.sdk.util.ssl;
package org.opends.sdk.tools;
@@ -64,7 +64,7 @@
 * retrieved this class will only accept the certificates explicitly
 * accepted by the user (and specified by calling acceptCertificate).
 */
public class TrustStoreTrustManager implements X509TrustManager
class TrustStoreTrustManager implements X509TrustManager
{
  static private final Logger LOG = Logger
      .getLogger(TrustStoreTrustManager.class.getName());
@@ -79,14 +79,12 @@
  private final String hostname;
  private final boolean checkValidityDates;
  /**
   * The default constructor.
   */
  public TrustStoreTrustManager(String truststorePath,
  TrustStoreTrustManager(String truststorePath,
      String truststorePassword, String hostname,
      boolean checkValidityDates) throws KeyStoreException,
      IOException, NoSuchAlgorithmException, CertificateException
@@ -124,7 +122,7 @@
    }
    this.trustManager = x509tm;
    this.hostname = hostname;
    this.checkValidityDates = checkValidityDates;
    // this.checkValidityDates = checkValidityDates;
  }
sdk/src/org/opends/sdk/tools/Utils.java
@@ -28,17 +28,14 @@
import static org.opends.messages.ToolMessages.*;
import static org.opends.messages.UtilityMessages.INFO_TIME_IN_DAYS_HOURS_MINUTES_SECONDS;
import static org.opends.messages.UtilityMessages.INFO_TIME_IN_HOURS_MINUTES_SECONDS;
import static org.opends.messages.UtilityMessages.INFO_TIME_IN_MINUTES_SECONDS;
import static org.opends.messages.UtilityMessages.INFO_TIME_IN_SECONDS;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.StaticUtils.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.StringTokenizer;
import org.opends.messages.Message;
import org.opends.sdk.Connection;
import org.opends.sdk.DecodeException;
import org.opends.sdk.ErrorResultException;
@@ -47,7 +44,8 @@
import org.opends.sdk.responses.BindResult;
import org.opends.sdk.util.ByteString;
import org.opends.sdk.util.StaticUtils;
import org.opends.server.util.cli.ConsoleApplication;
import com.sun.opends.sdk.util.Message;
@@ -65,6 +63,254 @@
  /**
   * The name of a command-line script used to launch a tool.
   */
  static final String PROPERTY_SCRIPT_NAME = "org.opends.sdk.tools.scriptName";
  /**
   * The column at which to wrap long lines of output in the
   * command-line tools.
   */
  static final int MAX_LINE_WIDTH;
  static
  {
    int columns = 80;
    try
    {
      String s = System.getenv("COLUMNS");
      if (s != null)
      {
        columns = Integer.parseInt(s);
      }
    }
    catch (Exception e)
    {
      // Do nothing.
    }
    MAX_LINE_WIDTH = columns - 1;
  }
  /**
   * Inserts line breaks into the provided buffer to wrap text at no
   * more than the specified column width. Wrapping will only be done at
   * space boundaries and if there are no spaces within the specified
   * width, then wrapping will be performed at the first space after the
   * specified column.
   *
   * @param message
   *          The message to be wrapped.
   * @param width
   *          The maximum number of characters to allow on a line if
   *          there is a suitable breaking point.
   * @return The wrapped text.
   */
  static String wrapText(Message message, int width)
  {
    return wrapText(Message.toString(message), width, 0);
  }
  /**
   * Inserts line breaks into the provided buffer to wrap text at no
   * more than the specified column width. Wrapping will only be done at
   * space boundaries and if there are no spaces within the specified
   * width, then wrapping will be performed at the first space after the
   * specified column.
   *
   * @param text
   *          The text to be wrapped.
   * @param width
   *          The maximum number of characters to allow on a line if
   *          there is a suitable breaking point.
   * @return The wrapped text.
   */
  static String wrapText(String text, int width)
  {
    return wrapText(text, width, 0);
  }
  /**
   * Inserts line breaks into the provided buffer to wrap text at no
   * more than the specified column width. Wrapping will only be done at
   * space boundaries and if there are no spaces within the specified
   * width, then wrapping will be performed at the first space after the
   * specified column. In addition each line will be indented by the
   * specified amount.
   *
   * @param message
   *          The message to be wrapped.
   * @param width
   *          The maximum number of characters to allow on a line if
   *          there is a suitable breaking point (including any
   *          indentation).
   * @param indent
   *          The number of columns to indent each line.
   * @return The wrapped text.
   */
  static String wrapText(Message message, int width, int indent)
  {
    return wrapText(Message.toString(message), width, indent);
  }
  /**
   * Inserts line breaks into the provided buffer to wrap text at no
   * more than the specified column width. Wrapping will only be done at
   * space boundaries and if there are no spaces within the specified
   * width, then wrapping will be performed at the first space after the
   * specified column. In addition each line will be indented by the
   * specified amount.
   *
   * @param text
   *          The text to be wrapped.
   * @param width
   *          The maximum number of characters to allow on a line if
   *          there is a suitable breaking point (including any
   *          indentation).
   * @param indent
   *          The number of columns to indent each line.
   * @return The wrapped text.
   */
  static String wrapText(String text, int width, int indent)
  {
    // Calculate the real width and indentation padding.
    width -= indent;
    StringBuilder pb = new StringBuilder();
    for (int i = 0; i < indent; i++)
    {
      pb.append(' ');
    }
    String padding = pb.toString();
    StringBuilder buffer = new StringBuilder();
    if (text != null)
    {
      StringTokenizer lineTokenizer = new StringTokenizer(text, "\r\n",
          true);
      while (lineTokenizer.hasMoreTokens())
      {
        String line = lineTokenizer.nextToken();
        if (line.equals("\r") || line.equals("\n"))
        {
          // It's an end-of-line character, so append it as-is.
          buffer.append(line);
        }
        else if (line.length() < width)
        {
          // The line fits in the specified width, so append it as-is.
          buffer.append(padding);
          buffer.append(line);
        }
        else
        {
          // The line doesn't fit in the specified width, so it needs to
          // be
          // wrapped. Do so at space boundaries.
          StringBuilder lineBuffer = new StringBuilder();
          StringBuilder delimBuffer = new StringBuilder();
          StringTokenizer wordTokenizer = new StringTokenizer(line,
              " ", true);
          while (wordTokenizer.hasMoreTokens())
          {
            String word = wordTokenizer.nextToken();
            if (word.equals(" "))
            {
              // It's a space, so add it to the delim buffer only if the
              // line
              // buffer is not empty.
              if (lineBuffer.length() > 0)
              {
                delimBuffer.append(word);
              }
            }
            else if (word.length() > width)
            {
              // This is a long word that can't be wrapped, so we'll
              // just have
              // to make do.
              if (lineBuffer.length() > 0)
              {
                buffer.append(padding);
                buffer.append(lineBuffer);
                buffer.append(EOL);
                lineBuffer = new StringBuilder();
              }
              buffer.append(padding);
              buffer.append(word);
              if (wordTokenizer.hasMoreTokens())
              {
                // The next token must be a space, so remove it. If
                // there are
                // still more tokens after that, then append an EOL.
                wordTokenizer.nextToken();
                if (wordTokenizer.hasMoreTokens())
                {
                  buffer.append(EOL);
                }
              }
              if (delimBuffer.length() > 0)
              {
                delimBuffer = new StringBuilder();
              }
            }
            else
            {
              // It's not a space, so see if we can fit it on the curent
              // line.
              int newLineLength = lineBuffer.length()
                  + delimBuffer.length() + word.length();
              if (newLineLength < width)
              {
                // It does fit on the line, so add it.
                lineBuffer.append(delimBuffer).append(word);
                if (delimBuffer.length() > 0)
                {
                  delimBuffer = new StringBuilder();
                }
              }
              else
              {
                // It doesn't fit on the line, so end the current line
                // and start
                // a new one.
                buffer.append(padding);
                buffer.append(lineBuffer);
                buffer.append(EOL);
                lineBuffer = new StringBuilder();
                lineBuffer.append(word);
                if (delimBuffer.length() > 0)
                {
                  delimBuffer = new StringBuilder();
                }
              }
            }
          }
          // If there's anything left in the line buffer, then add it to
          // the
          // final buffer.
          buffer.append(padding);
          buffer.append(lineBuffer);
        }
      }
    }
    return buffer.toString();
  }
  /**
   * Parse the specified command line argument to create the appropriate
   * LDAPControl. The argument string should be in the format
   * controloid[:criticality[:value|::b64value|:&lt;fileurl]]
@@ -78,7 +324,7 @@
   * @throws org.opends.sdk.DecodeException
   *           If an error occurs.
   */
  public static GenericControl getControl(String argString)
  static GenericControl getControl(String argString)
      throws DecodeException
  {
    String controlOID = null;
@@ -231,8 +477,7 @@
   *           If a problem occurs while trying to read the specified
   *           file.
   */
  public static byte[] readBytesFromFile(String filePath)
      throws IOException
  static byte[] readBytesFromFile(String filePath) throws IOException
  {
    byte[] val = null;
    FileInputStream fis = null;
@@ -281,7 +526,7 @@
   *          The error result.
   * @return The error code.
   */
  public static int printErrorMessage(ConsoleApplication app,
  static int printErrorMessage(ConsoleApplication app,
      ErrorResultException ere)
  {
    // if ((ere.getMessage() != null) && (ere.getMessage().length() >
@@ -332,7 +577,7 @@
   * @return The user-friendly representation of the specified number of
   *         seconds.
   */
  public static Message secondsToTimeString(int numSeconds)
  static Message secondsToTimeString(int numSeconds)
  {
    if (numSeconds < 60)
    {
@@ -367,7 +612,7 @@
  public static void printPasswordPolicyResults(ConsoleApplication app,
  static void printPasswordPolicyResults(ConsoleApplication app,
      Connection connection)
  {
    if (connection instanceof AuthenticatedConnection)
@@ -458,7 +703,7 @@
   *         original value will be returned. If the provided value was
   *         out of this range, then 255 will be returned.
   */
  public static int filterExitCode(int exitCode)
  static int filterExitCode(int exitCode)
  {
    if (exitCode < 0)
    {
sdk/src/org/opends/sdk/util/Base64.java
@@ -28,11 +28,10 @@
import static org.opends.messages.UtilityMessages.ERR_BASE64_DECODE_INVALID_CHARACTER;
import static org.opends.messages.UtilityMessages.ERR_BASE64_DECODE_INVALID_LENGTH;
import static org.opends.sdk.util.Validator.ensureNotNull;
import static com.sun.opends.sdk.util.Messages.*;
import static org.opends.sdk.util.Validator.*;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/util/LocalizableException.java
@@ -28,7 +28,7 @@
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/util/LocalizedIllegalArgumentException.java
@@ -29,7 +29,7 @@
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
sdk/src/org/opends/sdk/util/Platform.java
@@ -28,7 +28,7 @@
package org.opends.sdk.util;
import static org.opends.messages.UtilityMessages.*;
import static com.sun.opends.sdk.util.Messages.*;
import java.io.*;
import java.lang.reflect.Constructor;
@@ -38,7 +38,7 @@
import java.security.cert.CertificateFactory;
import java.security.cert.X509Certificate;
import org.opends.messages.Message;
import com.sun.opends.sdk.util.Message;
/**
 * Provides a wrapper class that collects all of the JVM vendor
sdk/src/org/opends/sdk/util/StaticUtils.java
@@ -29,9 +29,7 @@
import static org.opends.messages.UtilityMessages.ERR_HEX_DECODE_INVALID_CHARACTER;
import static org.opends.messages.UtilityMessages.ERR_HEX_DECODE_INVALID_LENGTH;
import static org.opends.messages.UtilityMessages.ERR_INVALID_ESCAPE_CHAR;
import static com.sun.opends.sdk.util.Messages.*;
import java.lang.reflect.InvocationTargetException;
import java.text.ParseException;
@@ -42,11 +40,12 @@
import java.util.zip.Deflater;
import java.util.zip.Inflater;
import org.opends.messages.Message;
import org.opends.messages.MessageBuilder;
import org.opends.messages.MessageDescriptor;
import org.opends.sdk.DecodeException;
import com.sun.opends.sdk.util.Message;
import com.sun.opends.sdk.util.MessageBuilder;
import com.sun.opends.sdk.util.MessageDescriptor;
/**
@@ -1040,7 +1039,7 @@
      final Message ieMsg = ie.getMessageObject();
      if (ieMsg != null)
      {
        message.append(ieMsg.getDescriptor().getId());
        message.append(ieMsg.getDescriptor().getOrdinal());
      }
      else
      {
sdk/src/org/opends/sdk/util/ssl/HostnameMismatchCertificateException.java
File was deleted
sdk/src/org/opends/sdk/util/ssl/PromptingTrustManager.java
File was deleted