Skip to content

Commit

Permalink
chore(service-provider-core): parse authMechProps rather than applyin…
Browse files Browse the repository at this point in the history
…g regex (#1051)

This is a slightly cleaner way of accessing authMechanismProperties.
  • Loading branch information
addaleax committed Aug 6, 2021
1 parent f95591d commit 9bf876d
Show file tree
Hide file tree
Showing 8 changed files with 16 additions and 13 deletions.
1 change: 0 additions & 1 deletion packages/browser-repl/config/empty.js

This file was deleted.

1 change: 1 addition & 0 deletions packages/browser-repl/config/plain-url.js
@@ -0,0 +1 @@
module.exports = { URL: window.URL, URLSearchParams: window.URLSearchParams, __from: __filename };
2 changes: 1 addition & 1 deletion packages/browser-repl/config/webpack.config.base.js
Expand Up @@ -6,7 +6,7 @@ module.exports = {
extensions: ['.tsx', '.ts', '.jsx', '.js', '.less'],
alias: {
// imports in service-provider-core that can break the browser build
'whatwg-url': path.resolve(__dirname, 'empty.js'),
'whatwg-url': path.resolve(__dirname, 'plain-url.js'),
}
},
module: {
Expand Down
7 changes: 4 additions & 3 deletions packages/service-provider-core/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion packages/service-provider-core/package.json
Expand Up @@ -35,7 +35,7 @@
"bson": "^4.4.1",
"mongodb": "^4.1.0",
"mongodb-build-info": "^1.2.0",
"mongodb-connection-string-url": "^1.0.0"
"mongodb-connection-string-url": "^1.1.2"
},
"optionalDependencies": {
"mongodb-client-encryption": "^1.2.6"
Expand Down
7 changes: 4 additions & 3 deletions packages/service-provider-core/src/uri-generator.ts
Expand Up @@ -3,7 +3,7 @@
import { CommonErrors, MongoshInvalidInputError } from '@mongosh/errors';
import i18n from '@mongosh/i18n';
import CliOptions from './cli-options';
import ConnectionString from 'mongodb-connection-string-url';
import ConnectionString, { CommaAndColonSeparatedRecord } from 'mongodb-connection-string-url';
import { DEFAULT_DB } from './index';

/**
Expand Down Expand Up @@ -58,8 +58,9 @@ function validateConflicts(options: CliOptions, connectionString?: ConnectionStr
}

if (options.gssapiServiceName && connectionString?.searchParams.has('authMechanismProperties')) {
const authProperties = connectionString.searchParams.get('authMechanismProperties') ?? '';
const serviceName = /,?SERVICE_NAME:([^,]+)/.exec(authProperties)?.[1];
const authProperties = new CommaAndColonSeparatedRecord(
connectionString.searchParams.get('authMechanismProperties'));
const serviceName = authProperties.get('SERVICE_NAME');
if (serviceName !== undefined && options.gssapiServiceName !== serviceName) {
throw new MongoshInvalidInputError(i18n.__(DIVERGING_SERVICE_NAME), CommonErrors.InvalidArgument);
}
Expand Down
7 changes: 4 additions & 3 deletions packages/service-provider-server/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion packages/service-provider-server/package.json
Expand Up @@ -44,7 +44,7 @@
"@types/sinon-chai": "^3.2.3",
"mongodb": "^4.1.0",
"saslprep": "mongodb-js/saslprep#v1.0.4",
"mongodb-connection-string-url": "^1.0.0"
"mongodb-connection-string-url": "^1.1.2"
},
"optionalDependencies": {
"mongodb-client-encryption": "^1.2.6",
Expand Down

0 comments on commit 9bf876d

Please sign in to comment.