Exemple #1
0
def set_media_transceiver(interface_obj):
    # get front panel port from ifindex
    if_obj = cps_object.CPSObject(obj=interface_obj)
    npu = if_obj.get_attr_data('base-if-phy/if/interfaces/interface/npu-id')
    port = if_obj.get_attr_data('base-if-phy/if/interfaces/interface/port-id')
    nas_if.log_info("set_media_transceiver for "+str(npu)+" , " +str(port))
    enable = if_obj.get_attr_data('if/interfaces/interface/enabled')
    port_list = nas_if.nas_os_phy_list(
        d={'npu-id': npu, 'port-id': port})
    phy_obj = cps_object.CPSObject(obj=port_list[0])
    fanout = phy_obj.get_attr_data('fanout-mode')
    try:
        hwport = phy_obj.get_attr_data('hardware-port-id')
        fp_details = fp.find_port_by_hwport(npu, hwport)
    except:
        nas_if.log_err(" Error in setting media Transceiver for ", if_obj.get_attr_data('name'))
        return
    # set media transceiver using media Id and channel ID
    # in case of 40G mode all channels should be enabled/disabled
    #  else only one channel.
    #
    nas_if.log_info("fanout " + str(fanout))
    if fanout == 2:  # then it is in 4x10G fanout mode BASE_PORT_BREAKOUT_MODE_BREAKOUT_4X1
        _lane = fp_details.lane
    else:    # non-fanout mode 1x40g mode
        _lane = None # enable/disable all channels. Do not pass Lane #
    media.media_transceiver_set(1, fp_details.media_id, _lane, enable)
Exemple #2
0
def __if_present(name):
    """Method to check if the interface is present in linux"""
    if len(dn_base_ip_tool.get_if_details(name)) > 0:
        nas_if.log_info("Interface exists " + str(name))
        return True
    nas_if.log_info("Interface doesn't exist " + str(name))
    return False
def add_fp_caps_to_fp_obj(fp_port, fp_obj):
    br_modes = fp_port.get_breakout_caps()
    hw_speeds = fp_port.get_hwport_speed_caps()
    hwp_count = len(fp_port.get_hwports())
    phy_mode = nas_comm.yang.get_value(
        'ether', 'yang-phy-mode'
    )  # FP port does not support FC capability directly. it is on the port group
    cap_index = 0
    cap_list = {}
    for mode in br_modes:
        skip_ports = nas_comm.yang.get_tbl('breakout-to-skip-port')[mode]
        for speed in hw_speeds:
            phy_speed = fp.get_phy_npu_port_speed(mode, speed * hwp_count)
            if fp.verify_npu_supported_speed(phy_speed) == False:
                nas_if.log_info(
                    "create_and_add_fp_caps: fp port %s doesn't support yang speed %s "
                    % (str(fp_port.id), str(phy_speed)))
                # breakout mode and this speed is excluded from cps show
                continue
            cap_list[str(cap_index)] = {
                'phy-mode': phy_mode,
                'breakout-mode': mode,
                'port-speed': phy_speed,
                'skip-ports': skip_ports
            }
            cap_index += 1
    fp_obj.add_attr('br-cap', cap_list)
def _add_default_duplex(media_type, cps_obj):
    # fetch default duplex
    duplex = media.get_default_media_setting(media_type, 'duplex')
    if duplex == None:
        duplex = _yang_dup_full
    cps_obj.add_attr(duplex_attr_name, duplex)
    nas_if.log_info("default Duplex is " + str(duplex))
def if_handle_set_media_type(op, obj):
    if_name = None
    try:
        npu = obj.get_attr_data(npu_attr_name)
        port = obj.get_attr_data(port_attr_name)
        media_type = obj.get_attr_data(media_type_attr_name)
    except:
        nas_if.log_err(
            'missing npu,port or media type in set media type request')
        return
    # find npu, port in the _if_config
    if_name = find_if_config_by_npu_port(npu, port)
    if if_name == None:
        nas_if.log_err("No interface present for the npu " + str(npu) +
                       "and port " + str(port))
        return
    nas_if.log_info("if name is " + str(if_name))
    config = _if_config[if_name]
    config.set_media_type(media_type)
    obj.add_attr(ifname_attr_name, if_name)
    # set the default speed if the speed is configured to auto it is in non-breakout mode
    if config.get_breakout_mode() == _yang_breakout_1x1 and config.get_speed(
    ) == _yang_auto_speed:
        _add_default_speed(media_type, obj)
    if config.get_negotiation() == _yang_auto_neg:
        _add_default_autoneg(media_type, obj)
    if config.get_duplex() == _yang_auto_dup:
        _add_default_duplex(media_type, obj)

    nas_if.log_info("media type setting is successful for " + str(if_name))
    config.show()
def _add_default_autoneg(media_type, cps_obj):
    # fetch default autoneg
    autoneg = media.get_default_media_setting(media_type, 'autoneg')
    if autoneg == None:
        return
    nas_if.log_info("default autoneg is " + str(autoneg))
    cps_obj.add_attr(autoneg_attr_name, autoneg)
def get_remote_endpoint_list(cps_obj):
    """Method to retrive a list of remote endpoints from the CPS object"""
    rlist = {}
    remote_endpoints = __read_attr(cps_obj, REMOTE_ENDPOINT_LIST)

    if remote_endpoints is not None:
        for name in remote_endpoints:
            ip = None
            addr_family = None
            flooding_enabled = 1
            try:
                endpoint = remote_endpoints[name]
                nas_if.log_info(" remote endpoint %s" % (str(remote_endpoints)))
                addr_family = endpoint[REMOTE_ENDPOINT_ADDR_FAMILY]
                if addr_family is None:
                    return False, rlist
                ip = None
                if addr_family is socket.AF_INET:
                    ip_ba = ba.hex_to_ba('ipv4', endpoint[REMOTE_ENDPOINT_IP_ADDR])
                    ip = ba.ba_to_ipv4str('ipv4', ip_ba)
                else:
                    ip_ba = ba.hex_to_ba('ipv6', endpoint[REMOTE_ENDPOINT_IP_ADDR])
                    ip = ba.ba_to_ipv6str('ipv6', ip_ba)
                if REMOTE_ENDPOINT_FLOODING_ENABLED in endpoint:
                    flooding_enabled = endpoint[REMOTE_ENDPOINT_FLOODING_ENABLED]
            except ValueError:
                logging.exception('error:')
                nas_if.log_err("Failed to read attr of remote endpoint")
                pass

            if ip is None or addr_family is None or flooding_enabled is None:
                return False, rlist
            rlist[ip] = RemoteEndpoint(ip, addr_family, flooding_enabled)

    return True, rlist
Exemple #8
0
def create_loopback_interface(obj, params):
    name = None
    mac_str = None
    mac = None
    try:
        name = obj.get_attr_data('if/interfaces/interface/name')
        mac_str = obj.get_attr_data(
            'dell-if/if/interfaces/interface/phys-address')
    except:
        pass
    if name is None:
        nas_if.log_err("Failed to create interface without name")
        return False
    nas_if.log_info("interface name is" + str(name))
    lst = dn_base_ip_tool.get_if_details(name)
    if (len(lst)) > 0:
        nas_if.log_err("Interface already exists" + str(name))
        return False
    if mac_str is None:
        mac_str = ma.get_offset_mac_addr(ma.get_base_mac_addr(), 0)
    rc = dn_base_ip_tool.create_loopback_if(name, mac=mac_str)
    if rc:
        nas_if.log_info("loopback interface is created" + str(name))
        rc = set_loopback_interface(obj)
        if_index = ifindex_utils.if_nametoindex(name)
        obj.add_attr(nas_comm.yang.get_value('if_index', 'attr_name'),
                     if_index)
        params['change'] = obj.get()
    return rc
def set_macvlan_interface(obj):
    data = obj.get()['data']
    nas_if.log_info("data = " + str(data))
    vrf = 'default'

    if if_name not in data:
        nas_if.log_err("Missing Maclvan interface name")
        return False
    name = obj.get_attr_data(if_name)
    if name is None:
        nas_if.log_err("Empty Macvlan interface name")
    if vrf_name in data:
        vrf = obj.get_attr_data(vrf_name)

    if physical_addr in data:
        mac_addr = obj.get_attr_data(physical_addr)
        if dn_base_ip_tool.set_if_mac(name, mac_addr, vrf) == False:
            nas_if.log_err("Failed to set MAC address for " + str(name))
            return False

    if if_state in data:
        state = obj.get_attr_data(if_state)
        if dn_base_ip_tool.set_if_state(name, state, vrf) == False:
            nas_if.log_err("Failed to set the interface state for " + str(name))
            return False
    return True
Exemple #10
0
def _set_fec_mode(fec_mode, config, obj, op):
    if_cfg_speed = config.get_cfg_speed()
    if fec_mode != None:
        if not nas_comm.is_fec_supported(fec_mode, if_cfg_speed):
            _str_err = ('FEC mode %s is not supported with speed %s'
                        %(nas_comm.get_value(nas_comm.fec_mode_to_yang,fec_mode),
                        nas_comm.get_value(nas_comm.yang_to_mbps_speed,if_cfg_speed)))
            nas_if.log_err(_str_err)
            obj.set_error_string(1,_str_err)
            return False
    else:
        if (op == 'create' and
            nas_comm.is_fec_supported(nas_comm.get_value(nas_comm.yang_fec_mode, 'AUTO'), if_cfg_speed)):
            # set default FEC mode as auto to newly created interface
            fec_mode = nas_comm.get_value(nas_comm.yang_fec_mode, 'AUTO')
        else:
            return True

    nas_if.log_info('set FEC mode %d' % fec_mode)
    config.set_fec_mode(fec_mode)
    if fec_mode == nas_comm.get_value(nas_comm.yang_fec_mode, 'AUTO'):
        media_type = config.get_media_type()
        fec_mode = _get_default_fec_mode(media_type,if_cfg_speed)
    obj.add_attr(fec_mode_attr_name, fec_mode)
    return True
def _gen_npu_lanes(obj, resp):

    for npu in fp.get_npu_list():
        key_dict = {_lane_attr('npu-id'): npu.id}

        if not obj.key_compare(key_dict):
            continue

        for p in npu.ports:
            port = npu.ports[p]

            for h in port.hwports:
                if not obj.key_compare({_lane_attr('hw-port'): h}):
                    continue

                elem = cps_object.CPSObject(module='base-if-phy/hardware-port',
                                            data={
                                                'npu-id':
                                                npu.id,
                                                'hw-port':
                                                h,
                                                'front-panel-port':
                                                port.id,
                                                'hw-control-port':
                                                port.control_port(),
                                                'subport-id':
                                                port.lane(h),
                                                'fanout-mode':
                                                port.get_breakout_mode()
                                            })
                nas_if.log_info(str(elem.get()))
                resp.append(elem.get())
Exemple #12
0
def set_media_transceiver(interface_obj):
    # get front panel port from ifindex
    if_obj = cps_object.CPSObject(obj=interface_obj)
    npu = if_obj.get_attr_data('base-if-phy/if/interfaces/interface/npu-id')
    port = if_obj.get_attr_data('base-if-phy/if/interfaces/interface/port-id')
    enable = if_obj.get_attr_data('if/interfaces/interface/enabled')
    nas_if.log_info("set_media_transceiver as " + str(enable) + " for " +
                    str(npu) + " , " + str(port))
    port_list = nas_if.nas_os_phy_list(d={'npu-id': npu, 'port-id': port})
    phy_obj = cps_object.CPSObject(obj=port_list[0])
    try:
        hwport_list = phy_obj.get_attr_data('hardware-port-list')
    except:
        nas_if.log_err(" Error in setting media Transceiver for %s" %
                       if_obj.get_attr_data('name'))
        return
    # set media transceiver using media Id and channel ID
    #
    for hwport in hwport_list:
        fp_details = fp.find_port_by_hwport(npu, hwport)
        if fp_details.port_group_id is None:
            _lane = fp_details.lane
        else:
            pg_list = fp.get_port_group_list()
            pg_obj = pg_list[fp_details.port_group_id]
            if ((pg_obj.get_profile_type()) == "ethernet_ddqsfp28"):
                _lane = pg_obj.get_lane(hwport)
            else:
                _lane = fp_details.lane
        media.media_transceiver_set(1, fp_details.media_id, _lane, enable)
def _add_default_speed(media_type, cps_obj):
    # fetch default speed
    speed = media.get_default_media_setting(media_type, 'speed')
    if speed == None:
        return
    cps_obj.add_attr(speed_attr_name, speed)
    nas_if.log_info("default speed is " + str(speed))
def set_fp_port_config(fr_port, br_mode, phy_port_speed, phy_mode):
    nas_if.log_info(
        'Front-panel-port %d config request: br_mode %s speed %s phy_mode %s' %
        (fr_port, br_mode, phy_port_speed, phy_mode))

    fp_port_obj = fp.find_front_panel_port(fr_port)
    if fp_port_obj is None:
        nas_if.log_err('Front-panel-port %d not found' % fr_port)
        return False

    npu = fp_port_obj.npu
    if phy_mode == None:
        phy_mode = nas_comm.yang.get_value('ether', 'yang-phy-mode')

    #Check if breakout mode is same as current breakout mode
    if (br_mode == fp_port_obj.get_breakout_mode()
            and fp_port_obj.get_phy_mode() == phy_mode
            and fp_port_obj.get_port_speed() == phy_port_speed):
        nas_if.log_info('FP config is same as current config')
        return True

    #check if breakout mode is supported by the FP port   ( not now)
    # TODO

    port_list = port_utils.get_phy_port_list()
    #convert FP port to Hwport list ( control port)
    hwports = fp_port_obj.hwports[:]
    deleted_phy_ports = {}
    for hwport in hwports:
        phy_port_obj = port_utils.get_phy_port_by_hw_port(
            port_list, npu, hwport)
        if phy_port_obj == None:
            continue
        if port_utils.cps_del_nas_port(phy_port_obj):
            port_utils.del_phy_port(port_list, phy_port_obj)
            deleted_phy_ports[hwport] = phy_port_obj
        else:
            nas_if.log_err('Failed to delete physical port')
            return False
    # Create new phy ports based on the new breakout mode
    created_phy_ports = {}
    if port_utils.create_nas_ports(npu, hwports, br_mode, phy_port_speed,
                                   phy_mode, fr_port,
                                   created_phy_ports) == True:
        for port in created_phy_ports:
            port_utils.add_phy_port(port_list, created_phy_ports[port])
    else:
        nas_if.log_err(
            'Failed to create physical port, rollback to previous status')
        port_utils.rollback_port_add_del(port_list, created_phy_ports,
                                         deleted_phy_ports,
                                         fp_port_obj.get_port_speed(),
                                         fp_port_obj.get_phy_mode())
        return False

    #set new breakout mode and new port speed
    fp_port_obj.set_breakout_mode(br_mode)
    fp_port_obj.set_port_speed(phy_port_speed)
    send_fp_event(fp_port_obj)
    return True
def create_and_add_fp_caps(fp_port, resp):
    br_modes = fp_port.get_breakout_caps()
    hw_speeds = fp_port.get_hwport_speed_caps()
    hwp_count = len(fp_port.get_hwports())
    phy_mode = nas_comm.yang.get_value(
        'ether', 'yang-phy-mode'
    )  # FP port does not support FC capability directly. it is on the port group
    for mode in br_modes:
        skip_ports = nas_comm.yang.get_tbl('breakout-to-skip-port')[mode]
        for speed in hw_speeds:
            phy_speed = fp.get_phy_npu_port_speed(mode, speed * hwp_count)
            if fp.verify_npu_supported_speed(phy_speed) == False:
                nas_if.log_info(
                    "create_and_add_fp_caps: fp port %s doesn't support yang speed %s "
                    % (str(fp_port.id), str(phy_speed)))
                # breakout mode and this speed is excluded from cps show
                continue
            cps_obj = cps_object.CPSObject(
                module='base-if-phy/front-panel-port/br-cap',
                qual='target',
                data={
                    _fp_attr('br-cap/phy-mode'): phy_mode,
                    _fp_attr('br-cap/breakout-mode'): mode,
                    _fp_attr('br-cap/port-speed'): phy_speed,
                    _fp_attr('br-cap/skip-ports'): skip_ports,
                    _fp_attr('front-panel-port'): fp_port.id
                })
            resp.append(cps_obj.get())
            cps_obj = None
Exemple #16
0
def process_media_event(npu, port, pas_media_obj):

    try:
        media_id = pas_media_obj.get_attr_data('base-pas/media/port')
        display_str = pas_media_obj.get_attr_data(
            'base-pas/media/display-string')
    except:
        nas_if.log_info(
            "Media event without enough attributes to determine default media settings"
        )
        return

    if_name = if_config.if_config_get_by_npu_port(npu, port)
    if if_name is None:
        nas_if.log_err("Interface Name: None")
        return False

    config = if_config.if_config_get(if_name)

    port = fp.find_front_panel_port(config.fp_port)
    pas_media_obj.add_attr('dell-if/if/interfaces/interface/speed',
                           config.get_speed())
    pas_media_obj.add_attr('base-if-phy/physical/speed',
                           fp.get_max_port_speed(port))
    config.set_media_obj(pas_media_obj)
    return True
def create_macvlan_interface(obj):
    data = obj.get()['data']
    nas_if.log_info("data = " + str(data))
    vrf = 'default'

    #Check if attributes are present in the object or not
    if if_name not in data or parent_interface not in data or physical_addr not in data:
        nas_if.log_err("Missing Macvlan interface, or parent interface or mac address attribute")
        return False

    if vrf_name in data:
        vrf = obj.get_attr_data(vrf_name)

    #Get the attribute data
    name = obj.get_attr_data(if_name)
    parent_if = obj.get_attr_data(parent_interface)
    mac_addr = obj.get_attr_data(physical_addr)

    #Check if the attributes are empty strings or not
    if name is None or parent_if is None or mac_addr is None:
        nas_if.log_err("Empty Maclvan interface, or parent interface, or mac address")
        return False

    # Check if interface already exists
    lst = dn_base_ip_tool.get_if_details(vrf, name)
    if (len(lst)) > 0:
        nas_if.log_err("Interface " + str(name) + " already exists")
        return False

    rc = dn_base_ip_tool.create_macvlan_if(name, parent_if, mac_addr, vrf)
    if rc:
        nas_if.log_info("Macvlan interface " + str(name) + " is created")
        rc = set_macvlan_interface(obj)

    return rc
Exemple #18
0
def nas_set_media_type_by_media_id(slot, media_id, media_type):
    l = []
    port_list = []
    o = cps_object.CPSObject(module='base-if-phy/front-panel-port',
                             data={'media-id': media_id})
    cps.get([o.get()], l)

    if len(l) == 0:
        nas_if.log_err("No such port found... for medial " + str(media_id))
        return

    #fetching 2 front panel port object from 1 phy media id for QSFP28-DD ports
    for fp_obj in l:
        obj = cps_object.CPSObject(obj=fp_obj)
        if _fp_port_key == obj.get_key():
            port_list = port_list + nas_if.physical_ports_for_front_panel_port(
                obj)

    if len(port_list) == 0:
        nas_if.log_err("There are no physical ports for front panel port ")
        nas_if.log_err(l[0])
        return

    for port in port_list:
        nas_if.log_info(" port id : " + str(port.get_attr_data('port-id')) +
                        ". media type: " + str(media_type))
        port.add_attr('phy-media', media_type)
        ch = {'operation': 'set', 'change': port.get()}
        cps.transaction([ch])
 def get_setting(self, cps_obj):
     val = _get_setting(cps_obj, 'fec', 'override')
     if val is None:
         val = _get_setting(cps_obj, 'fec', 'default')
     nas_if.log_info('Default Media FEC: ' +
                     str(nas_comm.yang.get_key(val, 'yang-fec')))
     return val
Exemple #20
0
def __delete_vlan_sub_if(parent_intf, vlan_id):
    """Method to delete VLAN SubInterface in Linux"""
    vlan_subintf_name = str(parent_intf) + '.' + str(vlan_id)
    if dn_base_ip_tool.delete_if(vlan_subintf_name) is False:
        nas_if.log_err("Failed to delete VLAN SubInterface for " + str(vlan_subintf_name))
        return False
    nas_if.log_info("Successfully deleted VLAN SubInterface " + str(vlan_subintf_name))
    return True
Exemple #21
0
def set_media_info(pas_media_obj):
    slot = pas_media_obj.get_attr_data('slot')
    media_id = pas_media_obj.get_attr_data('port')
    media_type = pas_media_obj.get_attr_data('type')
    # PAS sends slot # 1 based but for NAS slot number is 0 based
    nas_set_media_type_by_media_id((slot - 1), media_id, media_type)
    nas_if.log_info("setting media id: " + str(media_id) + " media type: " +
                    str(media_type))
def __delete_br_if(br_name):
    """Method to delete bridge interface in Linux"""
    if __if_present(br_name) is True and \
       dn_base_br_tool.del_br(br_name) is False:
        nas_if.log_err("Failed to delete Bridge Interface " + str(br_name))
        return False
    nas_if.log_info("Successfully deleted Bridge Interface " + str(br_name))
    return True
Exemple #23
0
def __create_vlan_sub_if(parent_intf, vlan_id):
    """Method to create VLAN SubInterface in Linux"""
    vlan_subintf_name = str(parent_intf) + '.' + str(vlan_id)
    if dn_base_ip_tool.configure_vlan_tag(parent_intf, vlan_id) is False:
        nas_if.log_err("Failed to configure VLAN tag for " + str(vlan_subintf_name))
        return False
    nas_if.log_info("Successfully created VLAN SubInterface " + str(vlan_subintf_name))
    return True
def if_media_type_set(pas_media_obj):
    try:
        media_id = pas_media_obj.get_attr_data('port')
        media_type = pas_media_obj.get_attr_data('type')
    except:
        nas_if.log_err(
            "media Id or media type is not present in the media event")
        return
    # fetch FP info from media ID
    l = nas_if.nas_os_fp_list(d={'media-id': media_id})
    if len(l) == 0:
        nas_if.log_err("No such port found... for media  " + str(media_id))
        return

    # fetch PHY port list for the FP port
    port_list = nas_if.physical_ports_for_front_panel_port(
        cps_object.CPSObject(obj=l[0]))
    if len(port_list) == 0:
        nas_if.log_err("There are no physical ports for front panel port ")
        nas_if.log_err(l[0])
        return

    # create interface set RPC obj for each phy port in the list and send it
    for p in port_list:
        npu = p.get_attr_data('npu-id')
        port = p.get_attr_data('port-id')
        fanout = p.get_attr_data('fanout-mode')
        hwport = p.get_attr_data('hardware-port-id')

        nas_if.log_info("send if rpc for media id set for phy port " +
                        str(port))
        ifobj = cps_object.CPSObject(
            module='dell-base-if-cmn/set-interface',
            data={
                'dell-base-if-cmn/set-interface/input/operation': 3,
                'base-if-phy/if/interfaces/interface/npu-id': npu,
                'base-if-phy/if/interfaces/interface/port-id': port,
                'base-if-phy/if/interfaces/interface/phy-media': media_type,
                'if/interfaces/interface/type': "ianaift:ethernetCsmacd"
            })
        ch = {'operation': 'rpc', 'change': ifobj.get()}
        cps.transaction([ch])
        if_name = ba.ba_to_str(
            ch['change']['data']['if/interfaces/interface/name'],
            len(_if_name))
        if_details = nas_if.nas_os_if_list(
            d={'if/interfaces/interface/name': if_name})
        enable = ba.from_ba(
            if_details[0]['data']['if/interfaces/interface/enabled'],
            "uint64_t")
        fp_details = fp.find_port_by_hwport(npu, hwport)
        if fanout == 2:  # then it is in 4x10G fanout mode BASE_PORT_BREAKOUT_MODE_BREAKOUT_4X1
            _lane = fp_details.lane
        else:  # non-fanout mode 1x40g mode
            _lane = None  # enable/disable all channels. Do not pass Lane #
        media_transceiver_set(1, fp_details.media_id, _lane, enable)
    nas_if.log_info("setting media id: " + str(media_id) + " media type: " +
                    str(media_type))
 def get_key(self, key, tbl):
     global yang_values
     if tbl not in yang_values:
         nas_if.log_info('No yang table ' + str(tbl))
         return None
     tbl = self.inv(yang_values[tbl])
     if key in tbl:
         return tbl[key]
     return None
def get_hg_state_hdlr(methods, params):
    '''CPS Get Handler for Hybrid Group State'''
    ret = False
    try:
        nas_if.log_info("CPS Get Handler for Hybrid Group State Invoked")
        ret = _get_hg_state_hdlr(methods, params)
    except:
        logging.exception('Error: CPS Get for Hybrid Group State Failed')
    return ret
def set_hg_hdlr(methods, params):
    '''CPS Set Handler for Hybrid Group'''
    ret = False
    try:
        nas_if.log_info("CPS Set Handler for Hybrid Group Invoked")
        ret = _set_hg_hdlr(methods, params)
    except:
        logging.exception('Error: CPS Set for Hybrid Group Failed')
    return ret
Exemple #28
0
def _set_duplex(duplex, config, obj):
    nas_if.log_info("duplex is " + str(duplex))
    config.set_duplex(duplex)
    if duplex == _yang_auto_dup:
        media_type = config.get_media_type()
        _add_default_duplex(media_type, obj)
    else:
        obj.add_attr(duplex_attr_name, duplex)
    return
Exemple #29
0
 def show(self):
     nas_if.log_info("Name " + str(self.name))
     if self.speed != None:
         nas_if.log_info("speed " + str(self.speed))
     if self.autoneg != None:
         nas_if.log_info("autoneg " + str(self.autoneg))
     if self.duplex != None:
         nas_if.log_info("duplex " + str(self.duplex))
     nas_if.log_info("supported speed :" + str(self.supported_speed))
Exemple #30
0
def __delete_vtep_if(vtep_name):
    """Method to delete vtep interface in Linux"""
    if __if_present(vtep_name) is True and \
       dn_base_ip_tool.delete_if(vtep_name):
        nas_if.log_info("Successfully deleted VTEP Interface " +
                        str(vtep_name))
        return True
    nas_if.log_err("Failed to delete VTEP Interface " + str(vtep_name))
    return False