Socket
Socket
Sign inDemoInstall

ldapts

Package Overview
Dependencies
Maintainers
1
Versions
99
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ldapts - npm Package Compare versions

Comparing version 1.2.0 to 1.2.1

dist/errors/index.d.ts

4

CHANGELOG.md

@@ -0,1 +1,5 @@

### 1.2.1
* Provide exports for public classes: errors, filters, and messages (Fix #4)
### 1.2.0

@@ -2,0 +6,0 @@

4

dist/Client.d.ts
/// <reference types="node" />
import * as tls from 'tls';
import { Attribute } from './Attribute';
import { Change } from './Change';
import { Control } from './controls/Control';
import { Filter } from './filters/Filter';
import { Attribute } from './Attribute';
import { Change } from './Change';
export interface ClientOptions {

@@ -8,0 +8,0 @@ /**

@@ -17,21 +17,8 @@ "use strict";

const tls = __importStar(require("tls"));
const BindRequest_1 = require("./messages/BindRequest");
const UnbindRequest_1 = require("./messages/UnbindRequest");
const AbandonRequest_1 = require("./messages/AbandonRequest");
const CompareRequest_1 = require("./messages/CompareRequest");
const DeleteRequest_1 = require("./messages/DeleteRequest");
const ExtendedRequest_1 = require("./messages/ExtendedRequest");
const ModifyDNRequest_1 = require("./messages/ModifyDNRequest");
const SearchRequest_1 = require("./messages/SearchRequest");
const PagedResultsControl_1 = require("./controls/PagedResultsControl");
const Attribute_1 = require("./Attribute");
const MessageParser_1 = require("./MessageParser");
const MessageResponseStatus_1 = require("./MessageResponseStatus");
const CompareResponse_1 = require("./messages/CompareResponse");
const SearchResponse_1 = require("./messages/SearchResponse");
const SearchReference_1 = require("./messages/SearchReference");
const SearchEntry_1 = require("./messages/SearchEntry");
const StatusCodeParser_1 = require("./StatusCodeParser");
const Attribute_1 = require("./Attribute");
const AddRequest_1 = require("./messages/AddRequest");
const ModifyRequest_1 = require("./messages/ModifyRequest");
const PagedResultsControl_1 = require("./controls/PagedResultsControl");
const messages_1 = require("./messages");
const MAX_MESSAGE_ID = Math.pow(2, 31) - 1;

@@ -94,3 +81,3 @@ const logDebug = debug_1.default('ldapts');

}
const req = new BindRequest_1.BindRequest({
const req = new messages_1.BindRequest({
messageId: this._nextMessageId(),

@@ -140,3 +127,3 @@ dn,

}
const req = new AddRequest_1.AddRequest({
const req = new messages_1.AddRequest({
messageId: this._nextMessageId(),

@@ -167,3 +154,3 @@ dn,

}
const req = new CompareRequest_1.CompareRequest({
const req = new messages_1.CompareRequest({
messageId: this._nextMessageId(),

@@ -177,5 +164,5 @@ dn,

switch (response.status) {
case CompareResponse_1.CompareResult.compareTrue:
case messages_1.CompareResult.compareTrue:
return true;
case CompareResponse_1.CompareResult.compareFalse:
case messages_1.CompareResult.compareFalse:
return false;

@@ -199,3 +186,3 @@ default:

}
const req = new DeleteRequest_1.DeleteRequest({
const req = new messages_1.DeleteRequest({
messageId: this._nextMessageId(),

@@ -224,3 +211,3 @@ dn,

}
const req = new ExtendedRequest_1.ExtendedRequest({
const req = new messages_1.ExtendedRequest({
messageId: this._nextMessageId(),

@@ -258,3 +245,3 @@ oid,

}
const req = new ModifyRequest_1.ModifyRequest({
const req = new messages_1.ModifyRequest({
messageId: this._nextMessageId(),

@@ -285,3 +272,3 @@ dn,

// TODO: parse newDN to determine if newSuperior should be specified
const req = new ModifyDNRequest_1.ModifyDNRequest({
const req = new messages_1.ModifyDNRequest({
messageId: this._nextMessageId(),

@@ -345,3 +332,3 @@ dn,

controls.push(pagedResultsControl);
const searchRequest = new SearchRequest_1.SearchRequest({
const searchRequest = new messages_1.SearchRequest({
messageId: -1,

@@ -372,3 +359,3 @@ baseDN,

}
const req = new UnbindRequest_1.UnbindRequest({
const req = new messages_1.UnbindRequest({
messageId: this._nextMessageId(),

@@ -467,3 +454,3 @@ });

for (const [key, messageDetails] of Object.entries(this.messageDetailsByMessageId)) {
if (messageDetails.message instanceof UnbindRequest_1.UnbindRequest) {
if (messageDetails.message instanceof messages_1.UnbindRequest) {
// Consider unbind as success since the connection is closed.

@@ -506,3 +493,3 @@ messageDetails.resolve();

for (const [key, messageDetails] of Object.entries(this.messageDetailsByMessageId)) {
if (messageDetails.message instanceof UnbindRequest_1.UnbindRequest) {
if (messageDetails.message instanceof messages_1.UnbindRequest) {
// Consider unbind as success since the connection is closed.

@@ -557,3 +544,3 @@ messageDetails.resolve();

this.socket.write(message.write(), () => {
if (message instanceof AbandonRequest_1.AbandonRequest) {
if (message instanceof messages_1.AbandonRequest) {
logDebug(`Abandoned message: ${message.messageId}`);

@@ -563,3 +550,3 @@ delete this.messageDetailsByMessageId[message.messageId.toString()];

}
else if (message instanceof UnbindRequest_1.UnbindRequest) {
else if (message instanceof messages_1.UnbindRequest) {
logDebug(`Unbind success. Ending socket`);

@@ -587,11 +574,11 @@ this.connected = false;

// same messageId as the SearchRequest. Finally, a SearchResponse will come through to complete the request.
if (message instanceof SearchEntry_1.SearchEntry) {
if (message instanceof messages_1.SearchEntry) {
messageDetails.searchEntries = messageDetails.searchEntries || [];
messageDetails.searchEntries.push(message);
}
else if (message instanceof SearchReference_1.SearchReference) {
else if (message instanceof messages_1.SearchReference) {
messageDetails.searchReferences = messageDetails.searchReferences || [];
messageDetails.searchReferences.push(message);
}
else if (message instanceof SearchResponse_1.SearchResponse) {
else if (message instanceof messages_1.SearchResponse) {
// Assign any previously collected entries & references

@@ -598,0 +585,0 @@ if (messageDetails.searchEntries) {

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const PresenceFilter_1 = require("./filters/PresenceFilter");
const AndFilter_1 = require("./filters/AndFilter");
const GreaterThanEqualsFilter_1 = require("./filters/GreaterThanEqualsFilter");
const ExtensibleFilter_1 = require("./filters/ExtensibleFilter");
const NotFilter_1 = require("./filters/NotFilter");
const SubstringFilter_1 = require("./filters/SubstringFilter");
const EqualityFilter_1 = require("./filters/EqualityFilter");
const ApproximateFilter_1 = require("./filters/ApproximateFilter");
const OrFilter_1 = require("./filters/OrFilter");
const LessThanEqualsFilter_1 = require("./filters/LessThanEqualsFilter");
const filters_1 = require("./filters");
const SearchFilter_1 = require("./SearchFilter");

@@ -70,3 +61,3 @@ class FilterParser {

const andFilters = FilterParser._parseSet(reader);
filter = new AndFilter_1.AndFilter({
filter = new filters_1.AndFilter({
filters: andFilters,

@@ -76,19 +67,19 @@ });

case SearchFilter_1.SearchFilter.approxMatch:
filter = new ApproximateFilter_1.ApproximateFilter();
filter = new filters_1.ApproximateFilter();
filter.parse(reader);
break;
case SearchFilter_1.SearchFilter.equalityMatch:
filter = new EqualityFilter_1.EqualityFilter();
filter = new filters_1.EqualityFilter();
filter.parse(reader);
break;
case SearchFilter_1.SearchFilter.extensibleMatch:
filter = new ExtensibleFilter_1.ExtensibleFilter();
filter = new filters_1.ExtensibleFilter();
filter.parse(reader);
break;
case SearchFilter_1.SearchFilter.greaterOrEqual:
filter = new GreaterThanEqualsFilter_1.GreaterThanEqualsFilter();
filter = new filters_1.GreaterThanEqualsFilter();
filter.parse(reader);
break;
case SearchFilter_1.SearchFilter.lessOrEqual:
filter = new LessThanEqualsFilter_1.LessThanEqualsFilter();
filter = new filters_1.LessThanEqualsFilter();
filter.parse(reader);

@@ -98,3 +89,3 @@ break;

const innerFilter = FilterParser.parse(reader);
filter = new NotFilter_1.NotFilter({
filter = new filters_1.NotFilter({
filter: innerFilter,

@@ -105,3 +96,3 @@ });

const orFilters = FilterParser._parseSet(reader);
filter = new OrFilter_1.OrFilter({
filter = new filters_1.OrFilter({
filters: orFilters,

@@ -111,7 +102,7 @@ });

case SearchFilter_1.SearchFilter.present:
filter = new PresenceFilter_1.PresenceFilter();
filter = new filters_1.PresenceFilter();
filter.parse(reader);
break;
case SearchFilter_1.SearchFilter.substrings:
filter = new SubstringFilter_1.SubstringFilter();
filter = new filters_1.SubstringFilter();
filter.parse(reader);

@@ -141,3 +132,3 @@ break;

} while (cursor < length && filterString[cursor] !== ')');
filter = new AndFilter_1.AndFilter({
filter = new filters_1.AndFilter({
filters: children,

@@ -155,3 +146,3 @@ });

} while (cursor < length && filterString[cursor] !== ')');
filter = new OrFilter_1.OrFilter({
filter = new filters_1.OrFilter({
filters: children,

@@ -163,3 +154,3 @@ });

const childResult = FilterParser._parseString(filterString, cursor + 1, fullString);
filter = new NotFilter_1.NotFilter({
filter = new filters_1.NotFilter({
filter: childResult.filter,

@@ -203,3 +194,3 @@ });

if (remainingExpression === '=*') {
return new PresenceFilter_1.PresenceFilter({
return new filters_1.PresenceFilter({
attribute,

@@ -212,3 +203,3 @@ });

const escapedExpression = FilterParser._unescapeSubstring(remainingExpression);
return new SubstringFilter_1.SubstringFilter({
return new filters_1.SubstringFilter({
attribute,

@@ -220,3 +211,3 @@ initial: escapedExpression.initial,

}
return new EqualityFilter_1.EqualityFilter({
return new filters_1.EqualityFilter({
attribute,

@@ -227,3 +218,3 @@ value: FilterParser._unescapeHexValues(remainingExpression),

if (remainingExpression[0] === '>' && remainingExpression[1] === '=') {
return new GreaterThanEqualsFilter_1.GreaterThanEqualsFilter({
return new filters_1.GreaterThanEqualsFilter({
attribute,

@@ -234,3 +225,3 @@ value: FilterParser._unescapeHexValues(remainingExpression.substr(2)),

if (remainingExpression[0] === '<' && remainingExpression[1] === '=') {
return new LessThanEqualsFilter_1.LessThanEqualsFilter({
return new filters_1.LessThanEqualsFilter({
attribute,

@@ -241,3 +232,3 @@ value: FilterParser._unescapeHexValues(remainingExpression.substr(2)),

if (remainingExpression[0] === '~' && remainingExpression[1] === '=') {
return new ApproximateFilter_1.ApproximateFilter({
return new filters_1.ApproximateFilter({
attribute,

@@ -285,3 +276,3 @@ value: FilterParser._unescapeHexValues(remainingExpression.substr(2)),

// }
return new ExtensibleFilter_1.ExtensibleFilter(options);
return new filters_1.ExtensibleFilter(options);
}

@@ -288,0 +279,0 @@ static _unescapeHexValues(input) {

@@ -14,13 +14,4 @@ "use strict";

const ProtocolOperation_1 = require("./ProtocolOperation");
const AddResponse_1 = require("./messages/AddResponse");
const BindResponse_1 = require("./messages/BindResponse");
const CompareResponse_1 = require("./messages/CompareResponse");
const DeleteResponse_1 = require("./messages/DeleteResponse");
const ExtendedResponse_1 = require("./messages/ExtendedResponse");
const ModifyDNResponse_1 = require("./messages/ModifyDNResponse");
const ModifyResponse_1 = require("./messages/ModifyResponse");
const MessageParserError_1 = require("./errors/MessageParserError");
const SearchResponse_1 = require("./messages/SearchResponse");
const SearchEntry_1 = require("./messages/SearchEntry");
const SearchReference_1 = require("./messages/SearchReference");
const messages_1 = require("./messages");
const errors_1 = require("./errors");
class MessageParser extends events_1.EventEmitter {

@@ -87,3 +78,3 @@ read(data) {

case ProtocolOperation_1.ProtocolOperation.LDAP_RES_BIND:
message = new BindResponse_1.BindResponse({
message = new messages_1.BindResponse({
messageId,

@@ -93,3 +84,3 @@ });

case ProtocolOperation_1.ProtocolOperation.LDAP_RES_ADD:
message = new AddResponse_1.AddResponse({
message = new messages_1.AddResponse({
messageId,

@@ -99,3 +90,3 @@ });

case ProtocolOperation_1.ProtocolOperation.LDAP_RES_COMPARE:
message = new CompareResponse_1.CompareResponse({
message = new messages_1.CompareResponse({
messageId,

@@ -105,3 +96,3 @@ });

case ProtocolOperation_1.ProtocolOperation.LDAP_RES_DELETE:
message = new DeleteResponse_1.DeleteResponse({
message = new messages_1.DeleteResponse({
messageId,

@@ -111,3 +102,3 @@ });

case ProtocolOperation_1.ProtocolOperation.LDAP_RES_EXTENSION:
message = new ExtendedResponse_1.ExtendedResponse({
message = new messages_1.ExtendedResponse({
messageId,

@@ -117,3 +108,3 @@ });

case ProtocolOperation_1.ProtocolOperation.LDAP_RES_MODRDN:
message = new ModifyDNResponse_1.ModifyDNResponse({
message = new messages_1.ModifyDNResponse({
messageId,

@@ -123,3 +114,3 @@ });

case ProtocolOperation_1.ProtocolOperation.LDAP_RES_MODIFY:
message = new ModifyResponse_1.ModifyResponse({
message = new messages_1.ModifyResponse({
messageId,

@@ -129,3 +120,3 @@ });

case ProtocolOperation_1.ProtocolOperation.LDAP_RES_SEARCH:
message = new SearchResponse_1.SearchResponse({
message = new messages_1.SearchResponse({
messageId,

@@ -135,3 +126,3 @@ });

case ProtocolOperation_1.ProtocolOperation.LDAP_RES_SEARCH_ENTRY:
message = new SearchEntry_1.SearchEntry({
message = new messages_1.SearchEntry({
messageId,

@@ -141,3 +132,3 @@ });

case ProtocolOperation_1.ProtocolOperation.LDAP_RES_SEARCH_REF:
message = new SearchReference_1.SearchReference({
message = new messages_1.SearchReference({
messageId,

@@ -147,3 +138,3 @@ });

default:
const error = new MessageParserError_1.MessageParserError(`Protocol Operation not supported: 0x${protocolOperation.toString(16)}`);
const error = new errors_1.MessageParserError(`Protocol Operation not supported: 0x${protocolOperation.toString(16)}`);
error.messageDetails = {

@@ -150,0 +141,0 @@ messageId,

@@ -1,4 +0,4 @@

import { ResultCodeError } from './errors/resultCodeErrors/ResultCodeError';
import { ResultCodeError } from './errors/resultCodeErrors';
export declare class StatusCodeParser {
static parse(code: number): ResultCodeError;
}
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const OperationsError_1 = require("./errors/resultCodeErrors/OperationsError");
const UnknownStatusCodeError_1 = require("./errors/resultCodeErrors/UnknownStatusCodeError");
const ProtocolError_1 = require("./errors/resultCodeErrors/ProtocolError");
const TimeLimitExceededError_1 = require("./errors/resultCodeErrors/TimeLimitExceededError");
const SizeLimitExceededError_1 = require("./errors/resultCodeErrors/SizeLimitExceededError");
const AuthMethodNotSupportedError_1 = require("./errors/resultCodeErrors/AuthMethodNotSupportedError");
const StrongAuthRequiredError_1 = require("./errors/resultCodeErrors/StrongAuthRequiredError");
const AdminLimitExceededError_1 = require("./errors/resultCodeErrors/AdminLimitExceededError");
const UnavailableCriticalExtensionError_1 = require("./errors/resultCodeErrors/UnavailableCriticalExtensionError");
const ConfidentialityRequiredError_1 = require("./errors/resultCodeErrors/ConfidentialityRequiredError");
const NoSuchAttributeError_1 = require("./errors/resultCodeErrors/NoSuchAttributeError");
const UndefinedTypeError_1 = require("./errors/resultCodeErrors/UndefinedTypeError");
const InappropriateMatchingError_1 = require("./errors/resultCodeErrors/InappropriateMatchingError");
const ConstraintViolationError_1 = require("./errors/resultCodeErrors/ConstraintViolationError");
const TypeOrValueExistsError_1 = require("./errors/resultCodeErrors/TypeOrValueExistsError");
const InvalidSyntaxError_1 = require("./errors/resultCodeErrors/InvalidSyntaxError");
const NoSuchObjectError_1 = require("./errors/resultCodeErrors/NoSuchObjectError");
const AliasProblemError_1 = require("./errors/resultCodeErrors/AliasProblemError");
const InvalidDNSyntaxError_1 = require("./errors/resultCodeErrors/InvalidDNSyntaxError");
const IsLeafError_1 = require("./errors/resultCodeErrors/IsLeafError");
const AliasDerefProblemError_1 = require("./errors/resultCodeErrors/AliasDerefProblemError");
const InappropriateAuthError_1 = require("./errors/resultCodeErrors/InappropriateAuthError");
const InsufficientAccessError_1 = require("./errors/resultCodeErrors/InsufficientAccessError");
const InvalidCredentialsError_1 = require("./errors/resultCodeErrors/InvalidCredentialsError");
const BusyError_1 = require("./errors/resultCodeErrors/BusyError");
const UnavailableError_1 = require("./errors/resultCodeErrors/UnavailableError");
const UnwillingToPerformError_1 = require("./errors/resultCodeErrors/UnwillingToPerformError");
const LoopDetectError_1 = require("./errors/resultCodeErrors/LoopDetectError");
const NamingViolationError_1 = require("./errors/resultCodeErrors/NamingViolationError");
const ObjectClassViolationError_1 = require("./errors/resultCodeErrors/ObjectClassViolationError");
const NotAllowedOnNonLeafError_1 = require("./errors/resultCodeErrors/NotAllowedOnNonLeafError");
const NotAllowedOnRDNError_1 = require("./errors/resultCodeErrors/NotAllowedOnRDNError");
const AlreadyExistsError_1 = require("./errors/resultCodeErrors/AlreadyExistsError");
const NoObjectClassModsError_1 = require("./errors/resultCodeErrors/NoObjectClassModsError");
const ResultsTooLargeError_1 = require("./errors/resultCodeErrors/ResultsTooLargeError");
const AffectsMultipleDSAsError_1 = require("./errors/resultCodeErrors/AffectsMultipleDSAsError");
const TLSNotSupportedError_1 = require("./errors/resultCodeErrors/TLSNotSupportedError");
const resultCodeErrors_1 = require("./errors/resultCodeErrors");
class StatusCodeParser {

@@ -44,75 +8,75 @@ static parse(code) {

case 1:
return new OperationsError_1.OperationsError();
return new resultCodeErrors_1.OperationsError();
case 2:
return new ProtocolError_1.ProtocolError();
return new resultCodeErrors_1.ProtocolError();
case 3:
return new TimeLimitExceededError_1.TimeLimitExceededError();
return new resultCodeErrors_1.TimeLimitExceededError();
case 4:
return new SizeLimitExceededError_1.SizeLimitExceededError();
return new resultCodeErrors_1.SizeLimitExceededError();
case 7:
return new AuthMethodNotSupportedError_1.AuthMethodNotSupportedError();
return new resultCodeErrors_1.AuthMethodNotSupportedError();
case 8:
return new StrongAuthRequiredError_1.StrongAuthRequiredError();
return new resultCodeErrors_1.StrongAuthRequiredError();
case 11:
return new AdminLimitExceededError_1.AdminLimitExceededError();
return new resultCodeErrors_1.AdminLimitExceededError();
case 12:
return new UnavailableCriticalExtensionError_1.UnavailableCriticalExtensionError();
return new resultCodeErrors_1.UnavailableCriticalExtensionError();
case 13:
return new ConfidentialityRequiredError_1.ConfidentialityRequiredError();
return new resultCodeErrors_1.ConfidentialityRequiredError();
case 16:
return new NoSuchAttributeError_1.NoSuchAttributeError();
return new resultCodeErrors_1.NoSuchAttributeError();
case 17:
return new UndefinedTypeError_1.UndefinedTypeError();
return new resultCodeErrors_1.UndefinedTypeError();
case 18:
return new InappropriateMatchingError_1.InappropriateMatchingError();
return new resultCodeErrors_1.InappropriateMatchingError();
case 19:
return new ConstraintViolationError_1.ConstraintViolationError();
return new resultCodeErrors_1.ConstraintViolationError();
case 20:
return new TypeOrValueExistsError_1.TypeOrValueExistsError();
return new resultCodeErrors_1.TypeOrValueExistsError();
case 21:
return new InvalidSyntaxError_1.InvalidSyntaxError();
return new resultCodeErrors_1.InvalidSyntaxError();
case 32:
return new NoSuchObjectError_1.NoSuchObjectError();
return new resultCodeErrors_1.NoSuchObjectError();
case 33:
return new AliasProblemError_1.AliasProblemError();
return new resultCodeErrors_1.AliasProblemError();
case 34:
return new InvalidDNSyntaxError_1.InvalidDNSyntaxError();
return new resultCodeErrors_1.InvalidDNSyntaxError();
case 35:
return new IsLeafError_1.IsLeafError();
return new resultCodeErrors_1.IsLeafError();
case 36:
return new AliasDerefProblemError_1.AliasDerefProblemError();
return new resultCodeErrors_1.AliasDerefProblemError();
case 48:
return new InappropriateAuthError_1.InappropriateAuthError();
return new resultCodeErrors_1.InappropriateAuthError();
case 49:
return new InvalidCredentialsError_1.InvalidCredentialsError();
return new resultCodeErrors_1.InvalidCredentialsError();
case 50:
return new InsufficientAccessError_1.InsufficientAccessError();
return new resultCodeErrors_1.InsufficientAccessError();
case 51:
return new BusyError_1.BusyError();
return new resultCodeErrors_1.BusyError();
case 52:
return new UnavailableError_1.UnavailableError();
return new resultCodeErrors_1.UnavailableError();
case 53:
return new UnwillingToPerformError_1.UnwillingToPerformError();
return new resultCodeErrors_1.UnwillingToPerformError();
case 54:
return new LoopDetectError_1.LoopDetectError();
return new resultCodeErrors_1.LoopDetectError();
case 64:
return new NamingViolationError_1.NamingViolationError();
return new resultCodeErrors_1.NamingViolationError();
case 65:
return new ObjectClassViolationError_1.ObjectClassViolationError();
return new resultCodeErrors_1.ObjectClassViolationError();
case 66:
return new NotAllowedOnNonLeafError_1.NotAllowedOnNonLeafError();
return new resultCodeErrors_1.NotAllowedOnNonLeafError();
case 67:
return new NotAllowedOnRDNError_1.NotAllowedOnRDNError();
return new resultCodeErrors_1.NotAllowedOnRDNError();
case 68:
return new AlreadyExistsError_1.AlreadyExistsError();
return new resultCodeErrors_1.AlreadyExistsError();
case 69:
return new NoObjectClassModsError_1.NoObjectClassModsError();
return new resultCodeErrors_1.NoObjectClassModsError();
case 70:
return new ResultsTooLargeError_1.ResultsTooLargeError();
return new resultCodeErrors_1.ResultsTooLargeError();
case 71:
return new AffectsMultipleDSAsError_1.AffectsMultipleDSAsError();
return new resultCodeErrors_1.AffectsMultipleDSAsError();
case 112:
return new TLSNotSupportedError_1.TLSNotSupportedError();
return new resultCodeErrors_1.TLSNotSupportedError();
default:
return new UnknownStatusCodeError_1.UnknownStatusCodeError(code);
return new resultCodeErrors_1.UnknownStatusCodeError(code);
}

@@ -119,0 +83,0 @@ }

{
"name": "ldapts",
"version": "1.2.0",
"version": "1.2.1",
"description": "LDAP client",

@@ -5,0 +5,0 @@ "main": "dist/index.js",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc