INNER CODE UNIT · Python

data

kejilion/sh · site_access_cli.py:221

    data = sys.stdin.buffer.read(MAX_REQUEST + 1)
    if len(data) > MAX_REQUEST:
        raise ConfigError('request too large')
    request = json.loads(data)
    rootfd = os.open('/home/web', os.O_RDONLY | os.O_DIRECTORY | os.O_NOFOLLOW | os.O_CLOEXEC)
    try:
        if isinstance(request, dict) and request.get('operation') == 'create-stage':
            version = apply_creation(rootfd, request,
                                     expected_version=os.environ.get('KJ_WEB_ACCESS_CONFIG_VERSION', ''),
                                     expected_domain=os.environ.get('KJ_WEB_ACCESS_DOMAIN', ''),
                                     staged_name=os.environ.get('KJ_WEB_ACCESS_STAGED_NAME', ''),
                                     verify_only=os.environ.get('KJ_WEB_ACCESS_VERIFY', '') == '1')
        elif isinstance(request, dict) and request.get('operation') == 'quarantine':
            version = apply_quarantine(rootfd, request)
        elif isinstance(request, dict) and request.get('operation') in ('rule-add', 'rule-delete'):
            version = apply_rule(rootfd, request)
        else:
            version = apply_account(rootfd, request)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…