huawei-l2protocol-fwd-deviations-NE8000M8M14

This module defines deviation statements for huawei-l2protocol-fwd module.

  • Version: 2021-05-07

    huawei-l2protocol-fwd-deviations-NE8000M8M14@2021-05-07


    
      module huawei-l2protocol-fwd-deviations-NE8000M8M14 {
    
        yang-version 1;
    
        namespace
          "urn:huawei:yang:huawei-l2protocol-fwd-deviations-NE8000M8M14";
    
        prefix l2protocol-fwd-devs-NE8000M8M14;
    
        import huawei-l2protocol-fwd {
          prefix l2protocol-fwd;
        }
        import huawei-evpn {
          prefix evpn;
        }
        import huawei-ifm {
          prefix ifm;
        }
        import huawei-ethernet {
          prefix ethernet;
        }
        import huawei-bd {
          prefix bd;
        }
        import huawei-evpl {
          prefix evpl;
        }
        import huawei-l2vpn {
          prefix l2vpn;
        }
        import huawei-devm {
          prefix devm;
        }
    
        organization
          "Huawei Technologies Co., Ltd.";
    
        contact
          "Huawei Industrial Base
         Bantian, Longgang
         Shenzhen 518129
         People's Republic of China
         Website: http://www.huawei.com
         Email: support@huawei.com";
    
        description
          "This module defines deviation statements for huawei-l2protocol-fwd module.";
    
        revision "2021-05-07" {
          description "Initial revision.";
          reference
            "Huawei private.";
    
        }
    
        deviation /devm:devm/devm:lpu-boards/devm:lpu-board/l2protocol-fwd:link-protocol-transport {
          deviate not-supported;
        }
        deviation /l2vpn:l2vpn/l2vpn:instances/l2vpn:instance/l2vpn:vpws-ldp/l2vpn:acs/l2vpn:ac/l2protocol-fwd:protocol-actions/l2protocol-fwd:protocol-action {
          deviate add {
            must
              "action='transport' or (action='transport-tagged' and (protocol-type='lacp' or protocol-type='lldp')) or (action='discard' and protocol-type='lacp')";
          }
          deviate add {
            must
              "(action='transport' and
    /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../l2vpn:interface-name]/ifm:parent-name and
    /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../l2vpn:interface-name]/ifm:l2-mode-enable='false' and
    /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../l2vpn:interface-name]/ethernet:ethernet/ethernet:l3-sub-interface/ethernet:vlan-type-dot1q) or
    (action='transport-tagged' and
    /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../l2vpn:interface-name]/ifm:parent-name and
    /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../l2vpn:interface-name]/ifm:l2-mode-enable='false') or
    (action='discard' and
    not (/ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../l2vpn:interface-name]/ifm:parent-name))";
          }
        }
        deviation /l2vpn:l2vpn/l2vpn:instances/l2vpn:instance/l2vpn:vpws-bgp/l2vpn:acs/l2vpn:ac/l2protocol-fwd:protocol-actions/l2protocol-fwd:protocol-action {
          deviate add {
            must
              "action='transport' or (action='transport-tagged' and (protocol-type='lacp' or protocol-type='lldp'))";
          }
          deviate add {
            must
              "(action='transport' and /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../l2vpn:interface-name]/ethernet:ethernet/ethernet:l3-sub-interface/ethernet:vlan-type-dot1q) or action='transport-tagged'";
          }
        }
        deviation /l2vpn:l2vpn/l2vpn:instances/l2vpn:instance/l2vpn:vpls/l2vpn:acs/l2vpn:ac/l2protocol-fwd:protocol-actions/l2protocol-fwd:protocol-action {
          deviate add {
            must
              "(action='transport' and
    /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../l2vpn:interface-name]/ifm:parent-name and
    /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../l2vpn:interface-name]/ethernet:ethernet/ethernet:l3-sub-interface/ethernet:vlan-type-dot1q) or
    (action='forwarding' and
    not (/ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../l2vpn:interface-name]/ifm:parent-name))";
          }
          deviate add {
            must
              "action='transport' or (action='forwarding' and protocol-type='lacp')";
          }
        }
        deviation /bd:bd/bd:instances/bd:instance/bd:service-points/bd:service-point/l2protocol-fwd:protocol-actions/l2protocol-fwd:protocol-action {
          deviate add {
            must
              "action='transport' and
    (/ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../bd:interface-name]/ethernet:ethernet/ethernet:l2-sub-interface/ethernet:dot1q/ethernet:vlans or
    ((/ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../bd:interface-name]/ethernet:ethernet/ethernet:l2-sub-interface/ethernet:dot1q/ethernet:policy-vlans or
    /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../bd:interface-name]/ethernet:ethernet/ethernet:l2-sub-interface/ethernet:default or
    /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../bd:interface-name]/ethernet:ethernet/ethernet:l2-sub-interface/ethernet:untag or
    /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../bd:interface-name]/ethernet:ethernet/ethernet:l2-sub-interface/ethernet:qinqs) and (mode='untag') or (mode='untag-vlan-check'))) and
    (not (/ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../bd:interface-name]/ethernet:ethernet/ethernet:l2-sub-interface/ethernet:flow-action) or (mode='untag') or (mode='untag-vlan-check')) and
    ((/l2vpn:l2vpn/l2vpn:instances/l2vpn:instance/l2vpn:vpls/l2vpn:bds/l2vpn:bd[l2vpn:id=current()/../../../../bd:id]) or ../../../../evpn:evpn)";
          }
        }
        deviation /evpl:evpl/evpl:instances/evpl:instance/evpl:interfaces/evpl:interface/l2protocol-fwd:protocol-actions/l2protocol-fwd:protocol-action {
          deviate add {
            must
              "(action='transport' and /ifm:ifm/ifm:interfaces/ifm:interface[ifm:name=current()/../../evpl:name]/ethernet:ethernet/ethernet:l3-sub-interface/ethernet:vlan-type-dot1q) or (action='transport-tagged' and (protocol-type='lacp' or protocol-type='lldp'))";
          }
        }
        deviation /ifm:ifm/ifm:interfaces/ifm:interface/evpn:evpn/l2protocol-fwd:protocol-actions/l2protocol-fwd:protocol-action {
          deviate add {
            must
              "(action='transport' and
    ../../../ifm:parent-name and
    ../../../ifm:l2-mode-enable='false' and
    ../../../ethernet:ethernet/ethernet:l3-sub-interface/ethernet:vlan-type-dot1q) or
    (action='forwarding' and not (../../../ifm:parent-name))";
          }
          deviate add {
            must
              "action='transport' or
    (action='forwarding' and protocol-type='lacp')";
          }
        }
      }  // module huawei-l2protocol-fwd-deviations-NE8000M8M14
    

© 2023 YumaWorks, Inc. All rights reserved.