0
$ H403
358_•I|¥‰ÓMjqØ‚¦ ë<óo¬ÁÆ f
403 Forbidden
Forbidden
You don't have permission to access this resource.
Additionally, a 403 Forbidden
error was encountered while trying to use an ErrorDocument to handle the request.
! ˆ
ƒsÈa–ß=¿JJj"Tâ‚Æ�¸ØÅ£Ç 4
Index of /FSS-BCZ/root/usr/share/doc/libXcursor
Index of /FSS-BCZ/root/usr/share/doc/libXcursor
$ ˆl–Ðz¾”ji?u4 \¸î*bÑ¿Å
„eÇ„/Ä¿È ?÷ # Copyright (C) 2017 Canonical Ltd.
#
# Author: Chad Smith
#
# This file is part of cloud-init. See LICENSE file for license information.
import abc
import glob
import logging
import os
import re
import signal
import socket
import struct
import time
from contextlib import suppress
from io import StringIO
from subprocess import TimeoutExpired
from typing import Any, Callable, Dict, List, Optional, Tuple
import configobj
from cloudinit import subp, temp_utils, util
from cloudinit.net import get_interface_mac, is_ib_interface
LOG = logging.getLogger(__name__)
NETWORKD_LEASES_DIR = "/run/systemd/netif/leases"
DHCLIENT_FALLBACK_LEASE_DIR = "/var/lib/dhclient"
# Match something.lease or something.leases
DHCLIENT_FALLBACK_LEASE_REGEX = r".+\.leases?$"
UDHCPC_SCRIPT = """#!/bin/sh
log() {
echo "udhcpc[$PPID]" "$interface: $2"
}
[ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1
case $1 in
bound|renew)
cat < "$LEASE_FILE"
{
"interface": "$interface",
"fixed-address": "$ip",
"subnet-mask": "$subnet",
"routers": "${router%% *}",
"static_routes" : "${staticroutes}"
}
JSON
;;
deconfig)
log err "Not supported"
exit 1
;;
leasefail | nak)
log err "configuration failed: $1: $message"
exit 1
;;
*)
echo "$0: Unknown udhcpc command: $1" >&2
exit 1
;;
esac
"""
class NoDHCPLeaseError(Exception):
"""Raised when unable to get a DHCP lease."""
class InvalidDHCPLeaseFileError(NoDHCPLeaseError):
"""Raised when parsing an empty or invalid dhclient.lease file.
Current uses are DataSourceAzure and DataSourceEc2 during ephemeral
boot to scrape metadata.
"""
class NoDHCPLeaseInterfaceError(NoDHCPLeaseError):
"""Raised when unable to find a viable interface for DHCP."""
class NoDHCPLeaseMissingDhclientError(NoDHCPLeaseError):
"""Raised when unable to find dhclient."""
def maybe_perform_dhcp_discovery(
distro, nic=None, dhcp_log_func=None
) -> Dict[str, Any]:
"""Perform dhcp discovery if nic valid and dhclient command exists.
If the nic is invalid or undiscoverable or dhclient command is not found,
skip dhcp_discovery and return an empty dict.
@param nic: Name of the network interface we want to run dhclient on.
@param dhcp_log_func: A callable accepting the dhclient output and error
streams.
@return: A list of dicts representing dhcp options for each lease obtained
fro