Commit 561ca3e0 authored by Mahesh Jethanandani's avatar Mahesh Jethanandani
Browse files

Added security-group-rule

parent 1e9c93d1
Loading
Loading
Loading
Loading
Loading
+110 −0
Original line number Diff line number Diff line
@@ -571,5 +571,115 @@ submodule etsi-nfv-common {
      reference
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
    }

    leaf security-group-rule-id {
      type leafref {
        path "/nfv/vnfd/security-group-rule/id";
      }
      description
        "Reference of the security group rules bound to this
         CPD.";
      reference
        "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
    }
  }

  grouping security-group-rule {
    list security-group-rule {
      key "id";

      leaf id {
        type string;
        description
          "Identifier of this SecurityGroupRule information
           element.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf description {
        type string;
        description
          "Human readable description of the security group rule.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf direction {
        type enumeration {
          enum ingress;
          enum egress;
        }
        default "ingress";
        description
          "The direction in which the security group rule is applied.
           Permitted values: INGRESS, EGRESS. Defaults to INGRESS.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf ether-type {
        type enumeration {
          enum ipv4;
          enum ipv6;
        }
        default "ipv4";
        description
          "Indicates the protocol carried over the Ethernet layer.
           Permitted values: IPV4, IPV6. Defaults to IPV4.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf protocol {
        type enumeration {
          enum tcp;
          enum udp;
          enum icmp;
        }
        default "tcp";
        description
          "Indicates the protocol carried over the IP layer.
           Permitted values: any protocol defined in the IANA
           protocol registry, e.g. TCP, UDP, ICMP, etc. Defaults
           to TCP.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf port-range-min {
        must ". <= ../port-range-max";
        type uint16;
        default "0";
        description
          "Indicates minimum port number in the range that is
           matched by the security group rule. Defaults to 0.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      leaf port-range-max {
        must ". >= ../port-range-min";
        type uint16;
        default "65535";
        description
          "Indicates maximum port number in the range that is
           matched by the security group rule. Defaults to 65535.";
        reference
          "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
           information element.";
      }

      description
        "Defines security group rules to be used by the VNF.";
      reference
        "GS NFV IFA011: Section 7.1.2, VNFD information element.";
    }
  }
}
+1 −0
Original line number Diff line number Diff line
@@ -111,6 +111,7 @@ submodule etsi-nfv-pnf {
        reference
          "GS NFV-IFA014: Section 6.6.2, Pnfd information element";
      }
      uses security-group-rule;
    }
  }
}
+1 −118
Original line number Diff line number Diff line
@@ -280,18 +280,7 @@ submodule etsi-nfv-vnf {
              "GS NFV IFA011: Section 7.1.6.4, VduCpd information
               element.";
          }

          uses cpd;
          leaf security-group-rule-id {
            type leafref {
              path "../../../security-group-rule/id";
            }
            description
              "Reference of the security group rules bound to this
               CPD.";
            reference
              "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
          }
        }
        leaf virtual-compute-desc {
          type leafref {
@@ -1120,102 +1109,7 @@ submodule etsi-nfv-vnf {
        }
      }

      list security-group-rule {
        key "id";

        leaf id {
          type string;
          description
            "Identifier of this SecurityGroupRule information
             element.";
          reference
            "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
             information element.";
        }

        leaf description {
          type string;
          description
            "Human readable description of the security group rule.";
          reference
            "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
             information element.";
        }

        leaf direction {
          type enumeration {
            enum ingress;
            enum egress;
          }
          default "ingress";
          description
            "The direction in which the security group rule is applied.
             Permitted values: INGRESS, EGRESS. Defaults to INGRESS.";
          reference
            "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
             information element.";
        }

        leaf ether-type {
          type enumeration {
            enum ipv4;
            enum ipv6;
          }
          default "ipv4";
          description
            "Indicates the protocol carried over the Ethernet layer.
             Permitted values: IPV4, IPV6. Defaults to IPV4.";
          reference
            "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
             information element.";
        }

        leaf protocol {
          type enumeration {
            enum tcp;
            enum udp;
            enum icmp;
          }
          default "tcp";
          description
            "Indicates the protocol carried over the IP layer.
             Permitted values: any protocol defined in the IANA
             protocol registry, e.g. TCP, UDP, ICMP, etc. Defaults
             to TCP.";
          reference
            "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
             information element.";
        }

        leaf port-range-min {
          must ". <= ../port-range-max";
          type uint16;
          default "0";
          description
            "Indicates minimum port number in the range that is
             matched by the security group rule. Defaults to 0.";
          reference
            "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
             information element.";
        }

        leaf port-range-max {
          must ". >= ../port-range-min";
          type uint16;
          default "65535";
          description
            "Indicates maximum port number in the range that is
             matched by the security group rule. Defaults to 65535.";
          reference
            "GS NFV IFA011: Section 7.1.6.9, SecurityGroupRule
             information element.";
        }

        description
          "Defines security group rules to be used by the VNF.";
        reference
          "GS NFV IFA011: Section 7.1.2, VNFD information element.";
      }
      uses security-group-rule;

      list ext-cpd {
        key "id";
@@ -1253,17 +1147,6 @@ submodule etsi-nfv-vnf {
        }
        uses virtual-network-interface-requirements;
        uses cpd;

        leaf security-group-rule-id {
          type leafref {
            path "../../security-group-rule/id";
          }
          description
            "Reference of the security group rules bound to this
             CPD.";
          reference
            "GS NFV IFA011: Section 7.1.6.3 Cpd information element";
	}
      }

      list df {
+1 −1

File changed.

Contains only whitespace changes.