Commit 4c081aa3 authored by wattelet's avatar wattelet
Browse files

Typing S9 new draft

parent e833a3b3
Loading
Loading
Loading
Loading
+111 −24
Original line number Diff line number Diff line
@@ -76,8 +76,7 @@ group HeaderAndBodyTypes {
                octetstring							aVP_Data
			}
                
// [ TWAN-Identifier ]															//Gx (TS129 212) only
// [ 3GPP2-BSID ]																//S9 (TS129 215) & Gxx (TS129 212)
// [ TWAN-Identifier ] TODO

			type record QoS_Rule_Report_AVP {										//ref: TS129 212 5a.3.5
				AVP_Header							aVP_Header, 					//QoS-Rule-Report ::= <AVP header:1055>
@@ -153,20 +152,6 @@ group HeaderAndBodyTypes {
                octetstring							aVP_Data
			}

			type record Flow_Information_AVP {										//ref: TS129 212 5.3.53
				AVP_Header							aVP_Header, 					//Flow-Information ::= <AVP header:1058>
				/*
							 [ Flow-Description ]
							 [ Packet-Filter-Identifier ]
							 [ Packet-Filter-Usage ]
							 [ ToS-Traffic-Class ]
							 [ Security-Parameter-Index ]
							 [ Flow-Label ]
							 [ Flow-Direction ]
				 */
                set of AVP_Type                    	aVP_Type						optional
			}

			type record HeNB_Local_IP_Address_AVP {									//ref: TS129 212 5.3.95
				AVP_Header							aVP_Header, 					//HeNB-Local-IP-Address ::= <AVP header:2804>
                Address								aVP_Data
@@ -197,10 +182,32 @@ group HeaderAndBodyTypes {
                octetstring							aVP_Data
			}

 			type record Subses_Decision_Info_AVP {									//ref: TS129 215 5.3.1
				AVP_Header							aVP_Header, 					//Subsession-Decision-Info ::= <AVP header:2200>
                Subsession_Id_AVP					subsession_Id,
                set length (0..2) of AN_GW_Addr_AVP	aN_GW_Address					optional,
				Result_Code_AVP						result_Code						optional,
				Experimental_Result_AVP				experimental_Result				optional,
                set of Charging_Rule_Remove_AVP    	charging_Rule_Remove			optional,
                set of Charging_Rule_Install_AVP    charging_Rule_Install			optional,
                set of QoS_Rule_Install_AVP			qoS_Rule_Install				optional,
                set of QoS_Rule_Remove_AVP			qoS_Rule_Remove					optional,
                Default_EPS_Bearer_QoS_AVP       	default_EPS_Bearer_QoS			optional,
                set of Usage_Monitoring_Info_AVP    usage_Monitoring_Information	optional,
                Session_Release_Cause_AVP           session_Release_Cause			optional,
                Bearer_Control_Mode_AVP            	bearer_Control_Mode				optional,
                set of Event_Trigger_AVP        	event_Trigger					optional,
                Revalidation_Time_AVP            	revalidation_Time				optional,
                Online_AVP                        	online							optional,
                Offline_AVP                        	offline							optional,
                QoS_Information_AVP                	qoS_Information					optional,
                set of AVP_Type                    	aVP_Type						optional
			}

			type record Subses_Enforcement_Info_AVP {								//ref: TS129 215 5.3.2
				AVP_Header							aVP_Header, 					//Subsession-Enforcement-Info ::= <AVP header:2201>
               	//                { Subsession-Id }
                //                [ Subsession-Operation ]
                Subsession_Id_AVP					subsession_Id,
                Subsession_Operation_AVP			subsession_Operation			optional,
                set length (0..2) of AN_GW_Addr_AVP	aN_GW_Address					optional,
                Bearer_Identifier_AVP            	bearer_Identifier				optional,
                Bearer_Operation_AVP            	bearer_Operation				optional,
@@ -227,23 +234,103 @@ group HeaderAndBodyTypes {
				ThreeGPP_SGSN_IPv6_Address_AVP    	threeGPP_SGSN_IPv6_Address		optional,
				RAI_AVP                            	rAI								optional,
				ThreeGPP_User_Location_Info_AVP    	threeGPP_User_Location_Info		optional,
				// [ 3GPP2-BSID ]
                ThreeGPP2_BSID_AVP					threeGPP2_BSID					optional,
                User_CSG_Information_AVP			user_CSG_Information			optional,
                Default_EPS_Bearer_QoS_AVP       	default_EPS_Bearer_QoS			optional,
                Network_Request_Support_AVP        	network_Request_Support			optional,   //S9 (TS129 215) & Gx,Gxx (TS129 212)
                Network_Request_Support_AVP        	network_Request_Support			optional,
                Routing_Rule_Install_AVP        	routing_Rule_Install			optional,
                Routing_Rule_Remove_AVP            	routing_Rule_Remove				optional,
                Logical_Access_ID_AVP            	logical_Access_ID				optional,
                Physical_Access_ID_AVP            	physical_Access_ID				optional,
                set of Usage_Monitoring_Info_AVP    usage_Monitoring_Information	optional,
				//				[ Multiple-BBERF-Action ]
                Multiple_BBERF_Action_AVP			multiple_BBERF_Action			optional,
                set of Event_Trigger_AVP        	event_Trigger					optional,
                Access_Netw_Charging_Addr_AVP    	access_Network_Charging_Address optional,
                set of Access_Netw_Charg_Id_Gx_AVP  access_Network_Charging_Id_Gx	optional,
                Session_Linking_Indicator_AVP		session_Linking_Indicator		optional,
                set of AVP_Type                    	aVP_Type						optional
			}
            // [ Multiple-BBERF-Action ]													//S9 (TS129 215) only

			type record Subsession_Id_AVP {											//ref: TS129 215 5.3.3
				AVP_Header							aVP_Header, 					//Subsession-Id ::= <AVP header:2202>
                UInt32								aVP_Data
			}
 
            type enumerated Subsession_Operation_Code {
				TERMINATION_E	(0),
				ESTABLISHMENT_E	(1),
				MODIFICATION_E	(2)
			}

			type record Subsession_Operation_AVP {									//ref: TS129 215 5.3.4
				AVP_Header							aVP_Header, 					//Subsession-Operation ::= <AVP header: 2203>
                Subsession_Operation_Code			subsession_Operation
			}

            type enumerated Multiple_BBERF_Action_Code {
				ESTABLISHMENT_E	(0),
				TERMINATION_E	(1)
			}

			type record Multiple_BBERF_Action_AVP {									//ref: TS129 215 5.3.6
				AVP_Header							aVP_Header, 					//Multiple-BBERF-Action ::= <AVP header: 2204>
                Multiple_BBERF_Action_Code			multiple_BBERF_Action
			}

            type Resource_Allocation_Notification_AVP
            										Resource_Alloc_Notification_AVP;			// Shortened Name - Alias
			type record QoS_Rule_Install_AVP {										//ref: TS129 212 5a.3.1
				AVP_Header							aVP_Header, 					//QoS-Rule-Install ::= <AVP header: 1051>
				set of QoS_Rule_Definition_AVP		qoS_Rule_Definition				optional,
				set of QoS_Rule_Name_AVP			qoS_Rule_Name					optional,
				set of QoS_Rule_Base_Name_AVP		qoS_Rule_Base_Name				optional,
                Tunnel_Information_AVP    			tunnel_Information				optional,
                ANw_Charging_Id_Value_AVP			aNw_Charging_Id_Value			optional,
				Resource_Alloc_Notification_AVP		resource_Alloc_Notification		optional,
                Rule_Activation_Time_AVP            rule_Activation_Time			optional,
                Rule_DeActivation_Time_AVP          rule_DeActivation_Time			optional,
                ThreeGPP_GGSN_Address_AVP			threeGPP_GGSN_Address			optional,
                ThreeGPP_GGSN_IPv6_Address_AVP		threeGPP_GGSN_IPv6_Address		optional,
                set length (0..2) of AN_GW_Addr_AVP	aN_GW_Address					optional,
                UDP_Source_Port_AVP					uDP_Source_Port					optional,
                set of AVP_Type                    	aVP_Type						optional
			}

			type record QoS_Rule_Remove_AVP {										//ref: TS129 212 5a.3.2
				AVP_Header							aVP_Header, 					//QoS-Rule-Remove ::= <AVP header: 1052>
				set of QoS_Rule_Name_AVP			qoS_Rule_Name					optional,
				set of QoS_Rule_Base_Name_AVP		qoS_Rule_Base_Name				optional,
                set of AVP_Type                    	aVP_Type						optional
			}

			type record QoS_Rule_Definition_AVP {									//ref: TS129 212 5a.3.3
				AVP_Header							aVP_Header, 					//QoS-Rule-Definition ::= <AVP header: 1053>
				QoS_Rule_Name_AVP					qoS_Rule_Name,
                set of Flow_Information_AVP			flow_Information				optional,
                QoS_Information_AVP                	qoS_Information					optional,
                Precedence_AVP                		precedence						optional,
                set of Required_Access_Info_AVP		required_Access_Info			optional,
                set of AVP_Type                    	aVP_Type						optional
			}

            type enumerated Required_Access_Info_Code {
                USER_LOCATION_E	(0),
                MS_TIME_ZONE_E	(1)			}

			type record Required_Access_Info_AVP {									//ref: TS129 214 5.3.34
				AVP_Header							aVP_Header, 					//Required-Access-Info ::= <AVP header: 536>
                Required_Access_Info_Code			required_Access_Info
			}

			type record ANw_Charging_Id_Value_AVP {									//ref: TS129 214 5.3.4
				AVP_Header							aVP_Header, 					//Access-Network-Charging-Identifier-Value::= <AVP header:503>
                octetstring							aVP_Data
			}

			type record ThreeGPP2_BSID_AVP {										//ref: 
				AVP_Header							aVP_Header, 					//3GPP2-BSID ::= <AVP header:>
                octetstring							aVP_Data
			}
		}//end of group TS129_215_AVPs
	}//end group AVPs

@@ -302,7 +389,7 @@ group HeaderAndBodyTypes {
				ThreeGPP_User_Location_Info_AVP    	threeGPP_User_Location_Info		optional,   //S9 (TS129 215) & Gx,Gxx (TS129 212)
				// [ TWAN-Identifier ]															//Gx (TS129 212)
				ThreeGPP_MS_TimeZone_AVP        	threeGPP_MS_TimeZone			optional,   //S9 (TS129 215) & Gx,Gxx (TS129 212)
				// [ 3GPP2-BSID ]																//S9 (TS129 215) & Gxx (TS129 212)
                ThreeGPP2_BSID_AVP					threeGPP2_BSID					optional,	//S9 (TS129 215) & Gxx (TS129 212)
                User_CSG_Information_AVP			user_CSG_Information			optional,	//S9 (TS129 215) & Gxx (TS129 212)
				Called_Station_Id_AVP            	called_Station_Id				optional,   //Gx, Gxx (TS129 212)
				PDN_Connection_ID_AVP            	pDN_Connection_ID				optional,   //Gx, Gxx (TS129 212)
@@ -330,7 +417,7 @@ group HeaderAndBodyTypes {
                Trace_Data_AVP						trace_Data						optional,	//Gxx (TS129 212)
                Trace_Reference_AVP					trace_Reference					optional,	//Gxx (TS129 212)
                set of Subses_Enforcement_Info_AVP	subsesion_Enforcement_Info		optional,	//S9 (TS129 215)
                // [ Multiple-BBERF-Action ]													//S9 (TS129 215)
                Multiple_BBERF_Action_AVP			multiple_BBERF_Action			optional,	//S9 (TS129 215)
                // *[ ADC-Rule-Report]															//Sd (TS129 212)
                Service_Context_Id_AVP				service_Context_Id				optional,   //RFC4006
				User_Name_AVP                     	user_Name						optional,   //RFC4006