mirror of
https://github.com/moodle/moodle.git
synced 2025-01-29 19:50:14 +01:00
MDL-70304 core: updated adapter.js to 7.4.0
This commit is contained in:
parent
9dabd071fe
commit
e174f19db6
2
lib/amd/build/adapter.min.js
vendored
2
lib/amd/build/adapter.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -5053,22 +5053,76 @@ SDPUtils.writeDtlsParameters = function(params, setupType) {
|
||||
});
|
||||
return sdp;
|
||||
};
|
||||
|
||||
// Parses a=crypto lines into
|
||||
// https://rawgit.com/aboba/edgertc/master/msortc-rs4.html#dictionary-rtcsrtpsdesparameters-members
|
||||
SDPUtils.parseCryptoLine = function(line) {
|
||||
var parts = line.substr(9).split(' ');
|
||||
return {
|
||||
tag: parseInt(parts[0], 10),
|
||||
cryptoSuite: parts[1],
|
||||
keyParams: parts[2],
|
||||
sessionParams: parts.slice(3),
|
||||
};
|
||||
};
|
||||
|
||||
SDPUtils.writeCryptoLine = function(parameters) {
|
||||
return 'a=crypto:' + parameters.tag + ' ' +
|
||||
parameters.cryptoSuite + ' ' +
|
||||
(typeof parameters.keyParams === 'object'
|
||||
? SDPUtils.writeCryptoKeyParams(parameters.keyParams)
|
||||
: parameters.keyParams) +
|
||||
(parameters.sessionParams ? ' ' + parameters.sessionParams.join(' ') : '') +
|
||||
'\r\n';
|
||||
};
|
||||
|
||||
// Parses the crypto key parameters into
|
||||
// https://rawgit.com/aboba/edgertc/master/msortc-rs4.html#rtcsrtpkeyparam*
|
||||
SDPUtils.parseCryptoKeyParams = function(keyParams) {
|
||||
if (keyParams.indexOf('inline:') !== 0) {
|
||||
return null;
|
||||
}
|
||||
var parts = keyParams.substr(7).split('|');
|
||||
return {
|
||||
keyMethod: 'inline',
|
||||
keySalt: parts[0],
|
||||
lifeTime: parts[1],
|
||||
mkiValue: parts[2] ? parts[2].split(':')[0] : undefined,
|
||||
mkiLength: parts[2] ? parts[2].split(':')[1] : undefined,
|
||||
};
|
||||
};
|
||||
|
||||
SDPUtils.writeCryptoKeyParams = function(keyParams) {
|
||||
return keyParams.keyMethod + ':'
|
||||
+ keyParams.keySalt +
|
||||
(keyParams.lifeTime ? '|' + keyParams.lifeTime : '') +
|
||||
(keyParams.mkiValue && keyParams.mkiLength
|
||||
? '|' + keyParams.mkiValue + ':' + keyParams.mkiLength
|
||||
: '');
|
||||
};
|
||||
|
||||
// Extracts all SDES paramters.
|
||||
SDPUtils.getCryptoParameters = function(mediaSection, sessionpart) {
|
||||
var lines = SDPUtils.matchPrefix(mediaSection + sessionpart,
|
||||
'a=crypto:');
|
||||
return lines.map(SDPUtils.parseCryptoLine);
|
||||
};
|
||||
|
||||
// Parses ICE information from SDP media section or sessionpart.
|
||||
// FIXME: for consistency with other functions this should only
|
||||
// get the ice-ufrag and ice-pwd lines as input.
|
||||
SDPUtils.getIceParameters = function(mediaSection, sessionpart) {
|
||||
var lines = SDPUtils.splitLines(mediaSection);
|
||||
// Search in session part, too.
|
||||
lines = lines.concat(SDPUtils.splitLines(sessionpart));
|
||||
var iceParameters = {
|
||||
usernameFragment: lines.filter(function(line) {
|
||||
return line.indexOf('a=ice-ufrag:') === 0;
|
||||
})[0].substr(12),
|
||||
password: lines.filter(function(line) {
|
||||
return line.indexOf('a=ice-pwd:') === 0;
|
||||
})[0].substr(10)
|
||||
var ufrag = SDPUtils.matchPrefix(mediaSection + sessionpart,
|
||||
'a=ice-ufrag:')[0];
|
||||
var pwd = SDPUtils.matchPrefix(mediaSection + sessionpart,
|
||||
'a=ice-pwd:')[0];
|
||||
if (!(ufrag && pwd)) {
|
||||
return null;
|
||||
}
|
||||
return {
|
||||
usernameFragment: ufrag.substr(12),
|
||||
password: pwd.substr(10),
|
||||
};
|
||||
return iceParameters;
|
||||
};
|
||||
|
||||
// Serializes ICE parameters to SDP.
|
||||
|
@ -280,7 +280,7 @@
|
||||
<location>amd/src/adapter.js</location>
|
||||
<name>WebRTC adapter</name>
|
||||
<license>BSD</license>
|
||||
<version>7.3.0</version>
|
||||
<version>7.4.0</version>
|
||||
<licenseversion>3-Clause</licenseversion>
|
||||
</library>
|
||||
<library>
|
||||
|
Loading…
x
Reference in New Issue
Block a user