diff --git a/services/real-time/app/js/Router.js b/services/real-time/app/js/Router.js index 02c751c22f..0b4b3f00d7 100644 --- a/services/real-time/app/js/Router.js +++ b/services/real-time/app/js/Router.js @@ -21,6 +21,8 @@ const httpAuth = basicAuth(function (user, pass) { return isValid }) +const HOSTNAME = require('os').hostname() + let Router module.exports = Router = { _handleError(callback, error, client, method, attrs) { @@ -157,6 +159,19 @@ module.exports = Router = { user = { _id: 'anonymous-user' } } + if (settings.exposeHostname) { + client.on('debug.getHostname', function (callback) { + if (typeof callback !== 'function') { + return Router._handleInvalidArguments( + client, + 'debug.getHostname', + arguments + ) + } + callback(HOSTNAME) + }) + } + client.on('joinProject', function (data, callback) { data = data || {} if (typeof callback !== 'function') { diff --git a/services/real-time/config/settings.defaults.js b/services/real-time/config/settings.defaults.js index 1e4ec6fe72..cbf6d3be82 100644 --- a/services/real-time/config/settings.defaults.js +++ b/services/real-time/config/settings.defaults.js @@ -109,6 +109,9 @@ const settings = { cookieName: process.env.COOKIE_NAME || 'sharelatex.sid', + // Expose the hostname in the `debug.getHostname` rpc + exposeHostname: process.env.EXPOSE_HOSTNAME === 'true', + max_doc_length: 2 * 1024 * 1024, // 2mb // combine