Fix cryptget inner

This commit is contained in:
yflory 2019-12-17 10:57:13 +01:00
parent e38d6d1093
commit 5a055233c0
5 changed files with 17 additions and 9 deletions

View File

@ -214,7 +214,7 @@ app.get('/api/config', function(req, res){
// FIXME don't send websocketURL if websocketPath is provided. deprecated.
websocketURL:'ws' + ((useSecureWebsockets) ? 's' : '') + '://' + host + ':' +
websocketPort + '/cryptpad_websocket',
httpUnsafeOrigin: config.httpUnsafeOrigin,
httpUnsafeOrigin: config.httpUnsafeOrigin.replace(/^ /, ''),
adminEmail: config.adminEmail,
adminKeys: admins,
inactiveTime: config.inactiveTime,

View File

@ -33,7 +33,7 @@ define([
var secret = Hash.getSecrets('pad', hash, opt.password);
if (!secret.keys) { secret.keys = secret.key; } // support old hashses
var config = {
websocketURL: NetConfig.getWebsocketURL(),
websocketURL: NetConfig.getWebsocketURL(opt.origin),
channel: secret.channel,
validateKey: secret.keys.validateKey || undefined,
crypto: Crypto.createEncryptor(secret.keys),

View File

@ -43,7 +43,7 @@ var factory = function (Hash, Crypt, Nacl, Scrypt/*, Util, Cred, nThen */) {
'base64'); // format, could be 'base64'
};
Invite.getPreviewContent = function (seeds, cb) {
Invite.getPreviewContent = function (seeds, cryptgetOpts, cb) {
setTimeout(function () {
cb(void 0, {
author: {
@ -67,7 +67,7 @@ var factory = function (Hash, Crypt, Nacl, Scrypt/*, Util, Cred, nThen */) {
console.error(e);
cb(e);
}
});
}, cryptgetOpts);
// cb("NOT_IMPLEMENTED"); // XXX cryptget
};

View File

@ -3,13 +3,18 @@ define([
], function (ApiConfig) {
var Config = {};
Config.getWebsocketURL = function () {
Config.getWebsocketURL = function (origin) {
if (!ApiConfig.websocketPath) { return ApiConfig.websocketURL; }
var path = ApiConfig.websocketPath;
if (/^ws{1,2}:\/\//.test(path)) { return path; }
var protocol = window.location.protocol.replace(/http/, 'ws');
var host = window.location.host;
var l = window.location;
if (origin && window && window.document) {
var l = document.createElement("a");
l.href = origin;
}
var protocol = l.protocol.replace(/http/, 'ws');
var host = l.host;
var url = protocol + '//' + host + path;
return url;

View File

@ -1032,7 +1032,8 @@ define([
};
makeBlock('link', function (common, cb) {
var hash = common.getMetadataMgr().getPrivateData().teamInviteHash;
var privateData = common.getMetadataMgr().getPrivateData();
var hash = privateData.teamInviteHash;
var hashData = Hash.parseTypeHash('invite', hash);
var password = hashData.password;
var seeds = InviteInner.deriveSeeds(hashData.key);
@ -1083,7 +1084,9 @@ define([
};
nThen(function (waitFor) {
InviteInner.getPreviewContent(seeds, waitFor(function (err, json) {
InviteInner.getPreviewContent(seeds, {
origin: privateData.origin
}, waitFor(function (err, json) {
if (err) {
// XXX handle errors
}