Initial commit
Change-Id: I6a4444e3c193dae437cd7929f4c39aba7b749efa
diff --git a/contrib/CxDx/dict_cxdx.xml b/contrib/CxDx/dict_cxdx.xml
new file mode 100644
index 0000000..9956c21
--- /dev/null
+++ b/contrib/CxDx/dict_cxdx.xml
@@ -0,0 +1,407 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE dictionary SYSTEM "dictionary.dtd">
+
+
+<!--**************************************************************************************
+
+ === CpqD/DRC - Projeto ADRIMS - Mar/2011 ===
+ === Dicionario Dx/Cx ===
+ Baseado no "dict_sip" do FreeDiameter (www.freediameter.net)
+ Norberto R Goes Jr
+**************************************************************************************-->
+
+
+<dictionary>
+
+ <!-- ******************************************************** -->
+ <!-- ********************* Vendors ************************** -->
+ <!-- ******************************************************** -->
+
+ <vendor id="13019" name="ETSI" />
+
+ <vendor id="10415" name="3GPP" />
+
+ <!-- ******************************************************** -->
+ <!-- ***************** CxDx Application *********************-->
+ <!-- ******************************************************** -->
+
+ <application id="16777216" name="Diameter CxDx Application"
+ uri="http://www.cpqd.com.br">
+
+ <!-- ******************************************************** -->
+ <!-- ******************** Commands ************************** -->
+ <!-- ******************************************************** -->
+
+ <command name="User-Authorization" code="300" >
+
+ <requestrules>
+ <fixed>
+ <avprule name="Session-Id" minimum="1" maximum="1"/>
+ </fixed>
+
+ <required>
+ <avprule name="Vendor-Specific-Application-Id" maximum="1" />
+ <avprule name="Auth-Session-State" maximum="1" />
+ <avprule name="Origin-Host" maximum="1" />
+ <avprule name="Origin-Realm" maximum="1" />
+ <avprule name="Destination-Realm" maximum="1" />
+ <avprule name="User-Name" maximum="1" />
+ <avprule name="Public-Identity" maximum="1" />
+ <avprule name="Visited-Network-Identifier" maximum="1" />
+ </required>
+
+ <optional>
+ <avprule name="Destination-Host" maximum="1"/>
+ <avprule name="Supported-Features" />
+ <avprule name="User-Authorization-Type" maximum="1"/>
+ <avprule name="UAR-Flags" maximum="1" />
+ <avprule name="AVP" />
+ <avprule name="Proxy-Info" />
+ <avprule name="Route-Record" />
+ </optional>
+ </requestrules>
+
+
+ <answerrules>
+ <fixed>
+ <avprule name="Session-Id" minimum="1" maximum="1"/>
+ </fixed>
+
+ <required>
+ <avprule name="Vendor-Specific-Application-Id" maximum="1" />
+ <avprule name="Auth-Session-State" maximum="1" />
+ <avprule name="Origin-Host" maximum="1" />
+ <avprule name="Origin-Realm" maximum="1"/>
+
+ </required>
+
+ <optional>
+ <avprule name="Result-Code" maximum="1"/>
+ <avprule name="Experimental-Result" maximum="1"/>
+ <avprule name="Supported-Features" />
+ <avprule name="Server-Name" maximum="1"/>
+ <avprule name="Server-Capabilities" maximum="1"/>
+ <avprule name="Wildcarded-IMPU" maximum="1"/>
+ <avprule name="AVP" />
+ <avprule name="Failed-AVP" />
+ <avprule name="Proxy-Info" />
+ <avprule name="Route-Record" />
+ </optional>
+
+ </answerrules>
+
+ </command>
+
+
+
+ <command name="Server-Assignment" code="301" >
+
+ <requestrules>
+ <fixed>
+ <avprule name="Session-Id" minimum="1" maximum="1"/>
+ </fixed>
+
+ <required>
+ <avprule name="Vendor-Specific-Application-Id" maximum="1" />
+ <avprule name="Auth-Session-State" maximum="1" />
+ <avprule name="Origin-Host" maximum="1" />
+ <avprule name="Origin-Realm" maximum="1" />
+ <avprule name="Destination-Realm" maximum="1" />
+ <avprule name="Server-Name" maximum="1"/>
+ <avprule name="Server-Assignment-Type" maximum="1" />
+ <avprule name="User-Data-Already-Available" maximum="1" />
+ </required>
+
+ <optional>
+ <avprule name="Destination-Host" maximum="1"/>
+ <avprule name="User-Name" maximum="1" />
+ <avprule name="Supported-Features" />
+ <avprule name="Public-Identity" />
+ <avprule name="Wildcarded-PSI" maximum="1"/>
+ <avprule name="Wildcarded-IMPU" maximum="1"/>
+ <!-- avprule name="SCSCF-Restoration-Info" maximum="1"/> -->
+ <!-- avprule name="Multiple-Registration-Indication" maximum="1"/> -->
+ <!--avprule name="Session-Priority" maximum="1"/> -->
+ <avprule name="AVP" />
+ <avprule name="Proxy-Info" />
+ <avprule name="Route-Record" />
+ </optional>
+ </requestrules>
+
+
+ <answerrules>
+ <fixed>
+ <avprule name="Session-Id" minimum="1" maximum="1"/>
+ </fixed>
+
+ <required>
+ <avprule name="Vendor-Specific-Application-Id" maximum="1" />
+ <avprule name="Auth-Session-State" maximum="1" />
+ <avprule name="Origin-Host" maximum="1" />
+ <avprule name="Origin-Realm" maximum="1"/>
+ </required>
+
+ <optional>
+ <avprule name="Result-Code" maximum="1"/>
+ <avprule name="Experimental-Result" maximum="1"/>
+ <avprule name="User-Name" maximum="1" />
+ <avprule name="Supported-Features" />
+ <!--avprule name="User-Data" maximum="1"/> -->
+ <!--avprule name="Charging-Information" maximum="1"/> -->
+ <!--avprule name="Associated-Identities" maximum="1"/> -->
+ <!--avprule name="Loose-Route-Indication" maximum="1"/> -->
+ <!--avprule name="SCSCF-Restoration-Info" /> -->
+ <!--avprule name="Associated-Registered-Identities " maximum="1"/> -->
+ <avprule name="AVP" />
+ <avprule name="Server-Name" maximum="1"/>
+ <avprule name="Failed-AVP" />
+ <avprule name="Proxy-Info" />
+ <avprule name="Route-Record" />
+
+ </optional>
+
+ </answerrules>
+
+ </command>
+
+
+
+
+
+ <!-- ******************************************************** -->
+ <!-- *********************** AVPs *************************** -->
+ <!-- ******************************************************** -->
+
+ <avp name="Visited-Network-Identifier" code="600" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="OctetString" />
+ </avp>
+
+ <avp name="Public-Identity" code="601" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="UTF8String" />
+ </avp>
+
+ <avp name="Server-Name" code="602" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="UTF8String" />
+ </avp>
+
+ <!-- "Server-Capabilites" (603) usa as duas AVPs a seguir : -->
+ <avp name="Feature-List-ID" code="629" vendor-id="10415" mandatory="must"
+ may-encrypt="no"> <!-- verificar flags / NRGJ -->
+ <type type-name="Unsigned32" />
+ </avp>
+
+ <avp name="Feature-List" code="630" vendor-id="10415" mandatory="must"
+ may-encrypt="no"> <!-- verificar flags / NRGJ -->
+ <type type-name="Unsigned32" />
+ </avp>
+
+ <avp name="Server-Capabilities" code="603" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <grouped>
+ <optional>
+ <avprule name="Vendor-Id" maximum="1" />
+ <avprule name="Feature-List-ID" maximum="1" />
+ <avprule name="Feature-List" maximum="1" />
+ </optional>
+ </grouped>
+ </avp>
+
+ <avp name="Mandatory-Capability" code="604" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="Unsigned32" />
+ </avp>
+
+ <avp name="Optional-Capability" code="605" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="Unsigned32" />
+ </avp>
+
+ <avp name="User-Data" code="606" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="OctetString" />
+ </avp>
+
+ <avp name="SIP-Number-Auth-Items" code="607" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="Unsigned32" />
+ </avp>
+
+ <avp name="SIP-Authentication-Scheme" code="608" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="UTF8String" />
+ </avp>
+
+ <avp name="SIP-Authenticate" code="609" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="OctetString" />
+ </avp>
+
+ <avp name="SIP-Authorization" code="610" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="OctetString" />
+ </avp>
+
+ <avp name="SIP-Authentication-Context" code="611" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="OctetString" />
+ </avp>
+
+
+
+ <!-- "SIP-Auth-Data-Item" (612) usa as AVPs a seguir : -->
+
+ <avp name="SIP-Item-Number" code="613" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="Unsigned32" />
+ </avp>
+
+ <avp name="Confidentiality-Key" code="625" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="OctetString" />
+ </avp>
+
+ <avp name="Integrity-Key" code="626" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="OctetString" />
+ </avp>
+
+ <avp name="Digest-Realm" code="104" vendor-id="10415" mandatory="must"
+ may-encrypt="no"> <!-- verificar flags / NRGJ -->
+ <type type-name="UTF8String" />
+ </avp>
+
+ <avp name="Digest-Algorithm" code="111" vendor-id="10415" mandatory="must"
+ may-encrypt="no"> <!-- verificar flags / NRGJ -->
+ <type type-name="UTF8String" />
+ </avp>
+
+ <avp name="Digest-QoP" code="110" vendor-id="10415" mandatory="must"
+ may-encrypt="no"> <!-- verificar flags / NRGJ -->
+ <type type-name="UTF8String" />
+ </avp>
+
+ <avp name="Digest-HA1" code="121" vendor-id="10415" mandatory="must"
+ may-encrypt="no"> <!-- verificar flags / NRGJ -->
+ <type type-name="UTF8String" />
+ </avp>
+
+
+ <avp name="SIP-Digest-Authenticate" code="635" vendor-id="10415"
+ may-encrypt="no"> <!-- verificar flags / NRGJ -->
+ <grouped>
+ <required>
+ <avprule name="Digest-Realm" minimum="1" maximum="1" />
+ </required>
+ <optional>
+ <avprule name="Digest-Algorithm" maximum="1" />
+ <avprule name="Digest-QoP" maximum="1" />
+ <avprule name="Digest-HA1" maximum="1" />
+ <avprule name="AVP" />
+ </optional>
+ </grouped>
+
+ </avp>
+
+ <avp name="Line-Identifier" code="500" vendor-id="13019" mandatory="must"
+ may-encrypt="no"> <!-- verificar flags / NRGJ -->
+ <type type-name="OctetString" />
+ </avp>
+
+ <avp name="SIP-Auth-Data-Item" code="612" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <grouped>
+ <optional>
+ <avprule name="SIP-Item-Number" maximum="1" />
+ <avprule name="SIP-Authentication-Scheme" maximum="1" />
+ <avprule name="SIP-Authenticate" maximum="1" />
+ <avprule name="SIP-Authorization" maximum="1" />
+ <avprule name="SIP-Authentication-Context" maximum="1" />
+ <avprule name="Confidentiality-Key" maximum="1" />
+ <avprule name="Integrity-Key" maximum="1" />
+ <avprule name="SIP-Digest-Authenticate" maximum="1" />
+ <avprule name="Framed-IP-Address" maximum="1" />
+ <avprule name="Framed-IPv6-Prefix" maximum="1" />
+ <avprule name="Framed-Interface-Id" maximum="1" />
+ <avprule name="Line-Identifier" />
+ <avprule name="AVP" />
+ </optional>
+ </grouped>
+ </avp>
+
+
+
+
+ <avp name="Server-Assignment-Type" code="614" mandatory="must"
+ may-encrypt="no">
+ <type type-name="Enumerated"/>
+ <enum name="NO_ASSIGNMENT" code="0"/>
+ <enum name="REGISTRATION" code="1"/>
+ <enum name="RE_REGISTRATION" code="2"/>
+ <enum name="UNREGISTERED_USER" code="3"/>
+ <enum name="TIMEOUT_DEREGISTRATION" code="4"/>
+ <enum name="USER_DEREGISTRATION" code="5"/>
+ <enum name="TIMEOUT_DEREGISTRATION_STORE_SERVER_NAME" code="6"/>
+ <enum name="USER_DEREGISTRATION_STORE_SERVER_NAME" code="7"/>
+ <enum name="ADMINISTRATIVE_DEREGISTRATION " code="8"/>
+ <enum name="AUTHENTICATION_FAILURE" code="9"/>
+ <enum name="AUTHENTICATION_TIMEOUT" code="10"/>
+ <enum name="DEREGISTRATION_TOO_MUCH_DATA" code="11"/>
+ <enum name="AAA_USER_DATA_REQUEST" code="12"/>
+ <enum name="PGW_UPDATE " code="13"/>
+ </avp>
+
+
+ <avp name="User-Data-Already-Available" code="624" mandatory="must"
+ may-encrypt="no">
+ <type type-name="Enumerated"/>
+ <enum name="USER_DATA_NOT_AVAILABLE" code="0"/>
+ <enum name="USER_DATA_ALREADY_AVAILABLE" code="1"/>
+ </avp>
+
+
+ <avp name="Wildcarded-PSI" code="634" vendor-id="10415"
+ may-encrypt="no">
+ <type type-name="UTF8String" />
+ </avp>
+
+
+ <avp name="User-Authorization-Type" code="623" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="UTF8String" />
+ </avp>
+
+
+
+ <avp name="Wildcarded-IMPU" code="636" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="UTF8String" />
+ </avp>
+
+ <avp name="UAR-Flags" code="637" vendor-id="10415" mandatory="must"
+ may-encrypt="no">
+ <type type-name="Unsigned32" />
+ </avp>
+
+
+ <avp name="Supported-Features" code="628" vendor-id="10415"
+ may-encrypt="no">
+ <grouped>
+ <optional>
+ <avprule name="Vendor-Id" maximum="1" />
+ <avprule name="Feature-List-ID" maximum="1" />
+ <avprule name="Feature-List" maximum="1" />
+ </optional>
+ </grouped>
+ </avp>
+
+
+
+ </application>
+
+
+</dictionary>
+
+