Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
self.provider.previousRequestToken(requestParameters['oauth_consumer_key'], function(err, result) {
if(err) {
callback(new errors.OAuthUnauthorizedError("Invalid / expired Token"), null);
} else {
// If we have a user for this consumer key let's calculate the signature
var calculatedSignature = self.calculateSignature(method, protocol, url, path, requestParameters, tokenObject.token_secret, user.secret);
// Check if the signature is correct and return a access token
if(calculatedSignature == requestParameters.oauth_signature || self.calculateSignatureGoogleWay(method, protocol, url, path, requestParameters, tokenObject.token_secret, user.secret) == requestParameters.oauth_signature) {
self.provider.generateAccessToken(requestParameters['oauth_token'], function(err, result) {
if(result.access_token == null || result.token_secret == null) { callback(new errors.OAuthProviderError("generateAccessToken must return a object with fields [access_token, token_secret]"), null); return; }
callback(null, result);
});
} else {
callback(new errors.OAuthUnauthorizedError("Invalid signature"), null);
}
}
});
} else {
self.provider.validateNotReplay(requestParameters.oauth_token, requestParameters.oauth_timestamp, requestParameters.oauth_nonce, function(err, result) {
if(err) {
callback(new errors.OAuthUnauthorizedError('Invalid / used nonce'), null);
} else {
self.provider.applicationByConsumerKey(token.consumer_key, function(err, user) {
if(user.consumer_key == null || user.secret == null) { callback(new errors.OAuthProviderError("provider: applicationByConsumerKey must return a object with fields [token, secret]"), null); return;}
// If we have a user for this consumer key let's calculate the signature
var calculatedSignature = self.calculateSignature(method, protocol, url, path, requestParameters, token.token_secret, user.secret);
// Check if the signature is correct and return a access token
if(calculatedSignature == requestParameters.oauth_signature || self.calculateSignatureGoogleWay(method, protocol, url, path, requestParameters, token.token_secret, user.secret) == requestParameters.oauth_signature) {
// Fetch the user id to pass back
self.provider.userIdByToken(requestParameters.oauth_token, function(err, doc) {
if(doc.id == null) { callback(new errors.OAuthProviderError("provider: userIdByToken must return a object with fields [id]"), null); return;}
// Return the user id to the calling function
callback(null, doc);
});
} else {
callback(new errors.OAuthBadRequestError("Invalid signature"), null);
}
self.provider.previousRequestToken(requestParameters['oauth_consumer_key'], function(err, result) {
if(err) {
callback(new errors.OAuthUnauthorizedError("Invalid / expired Token"), null);
} else {
// If we have a user for this consumer key let's calculate the signature
var calculatedSignature = self.calculateSignature(method, protocol, url, path, requestParameters, tokenObject.token_secret, user.secret);
// Check if the signature is correct and return a access token
if(calculatedSignature == requestParameters.oauth_signature || self.calculateSignatureGoogleWay(method, protocol, url, path, requestParameters, tokenObject.token_secret, user.secret) == requestParameters.oauth_signature) {
self.provider.generateAccessToken(requestParameters['oauth_token'], function(err, result) {
if(result.access_token == null || result.token_secret == null) { callback(new errors.OAuthProviderError("generateAccessToken must return a object with fields [access_token, token_secret]"), null); return; }
callback(null, result);
});
} else {
callback(new errors.OAuthUnauthorizedError("Invalid signature"), null);
}
}
});
} else {