130 lines
4.6 KiB
XML
130 lines
4.6 KiB
XML
<?xml version="1.0"?>
|
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.netfilter.org/xml/libnetfilter_conntrack"
|
|
xmlns:nfct="http://www.netfilter.org/xml/libnetfilter_conntrack">
|
|
<xs:complexType name="empty_type">
|
|
</xs:complexType>
|
|
<xs:simpleType name="hour_type">
|
|
<xs:restriction base="xs:nonNegativeInteger">
|
|
<xs:maxInclusive value="23"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
<xs:simpleType name="minute_type">
|
|
<xs:restriction base="xs:nonNegativeInteger">
|
|
<xs:maxInclusive value="59"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
<xs:simpleType name="second_type">
|
|
<xs:restriction base="xs:nonNegativeInteger">
|
|
<xs:maxInclusive value="59"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
<xs:simpleType name="mday_type">
|
|
<xs:restriction base="xs:positiveInteger">
|
|
<xs:maxInclusive value="31"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
<xs:simpleType name="month_type">
|
|
<xs:restriction base="xs:positiveInteger">
|
|
<xs:maxInclusive value="12"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
<xs:simpleType name="wday_type">
|
|
<xs:restriction base="xs:positiveInteger">
|
|
<xs:maxInclusive value="7"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
<xs:complexType name="layer3_type">
|
|
<xs:sequence>
|
|
<xs:element name="src" type="xs:string"/>
|
|
<xs:element name="dst" type="xs:string"/>
|
|
</xs:sequence>
|
|
<xs:attribute name="protonum" type="xs:string"/>
|
|
<xs:attribute name="protoname" type="xs:string"/>
|
|
</xs:complexType>
|
|
<xs:complexType name="layer4_type">
|
|
<xs:sequence>
|
|
<xs:element name="sport" type="xs:integer"/>
|
|
<xs:element name="dport" type="xs:integer"/>
|
|
</xs:sequence>
|
|
<!-- srckey/dstkey for GRE -->
|
|
<xs:attribute name="protonum" type="xs:string"/>
|
|
<xs:attribute name="protoname" type="xs:string"/>
|
|
</xs:complexType>
|
|
<xs:complexType name="counters_type">
|
|
<xs:sequence>
|
|
<xs:element name="bytes" type="xs:unsignedLong"/>
|
|
<xs:element name="packets" type="xs:unsignedLong"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="timestamp_type">
|
|
<xs:sequence>
|
|
<xs:element name="start" type="xs:unsignedLong"/>
|
|
<xs:element name="stop" type="xs:unsignedLong"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:complexType name="when_type">
|
|
<xs:sequence>
|
|
<xs:element name="hour" type="nfct:hour_type"/>
|
|
<xs:element name="min" type="nfct:minute_type"/>
|
|
<xs:element name="sec" type="nfct:second_type"/>
|
|
<xs:element name="wday" type="nfct:wday_type"/>
|
|
<xs:element name="day" type="nfct:mday_type"/>
|
|
<xs:element name="month" type="nfct:month_type"/>
|
|
<xs:element name="year" type="xs:integer"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:group name="orig_repl_group">
|
|
<!-- original or reply tuple -->
|
|
<xs:sequence>
|
|
<xs:element name="layer3" type="nfct:layer3_type"/>
|
|
<xs:element name="layer4" type="nfct:layer4_type"/>
|
|
<xs:element name="zone" type="xs:integer" minOccurs="0"/>
|
|
<xs:element name="counters" type="nfct:counters_type" minOccurs="0"/>
|
|
</xs:sequence>
|
|
</xs:group>
|
|
<xs:group name="indep_group">
|
|
<xs:sequence>
|
|
<xs:element name="state" type="xs:string" minOccurs="0"/>
|
|
<xs:element name="timeout" type="xs:integer" minOccurs="0"/>
|
|
<xs:element name="mark" type="xs:integer" minOccurs="0"/>
|
|
<xs:element name="secmark" type="xs:integer" minOccurs="0"/>
|
|
<xs:element name="zone" type="xs:integer" minOccurs="0"/>
|
|
<xs:element name="use" type="xs:integer" minOccurs="0"/>
|
|
<xs:element name="id" type="xs:integer" minOccurs="0"/>
|
|
<xs:element name="assured" type="nfct:empty_type" minOccurs="0"/>
|
|
<xs:element name="unreplied" type="nfct:empty_type" minOccurs="0"/>
|
|
<xs:element name="timestamp" type="nfct:timestamp_type" minOccurs="0"/>
|
|
<xs:element name="deltatime" type="xs:integer" minOccurs="0"/>
|
|
</xs:sequence>
|
|
</xs:group>
|
|
<xs:complexType name="meta_type">
|
|
<xs:choice>
|
|
<xs:group ref="nfct:orig_repl_group"/>
|
|
<xs:group ref="nfct:indep_group"/>
|
|
</xs:choice>
|
|
<xs:attribute name="direction" use="required">
|
|
<xs:simpleType>
|
|
<xs:restriction base="xs:string">
|
|
<xs:pattern value="original|reply|independent"/>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
</xs:attribute>
|
|
</xs:complexType>
|
|
<xs:complexType name="flow_type">
|
|
<xs:sequence>
|
|
<xs:element name="meta" type="nfct:meta_type"/>
|
|
<xs:element name="meta" type="nfct:meta_type"/>
|
|
<xs:element name="meta" type="nfct:meta_type"/>
|
|
<xs:element name="when" type="nfct:when_type" minOccurs="0"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
<xs:element name="flow" type="nfct:flow_type"/>
|
|
<xs:element name="flows">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element name="flow" type="nfct:flow_type" minOccurs="1" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
</xs:schema>
|