@@ -235,6 +235,63 @@ ogs_pkbuf_t *ogs_pfcp_up_build_association_setup_response(uint8_t type,
235
235
return ogs_pfcp_build_msg (& pfcp_message );
236
236
}
237
237
238
+ ogs_pkbuf_t * ogs_pfcp_cp_build_session_set_deletion_request (uint8_t type )
239
+ {
240
+ ogs_pfcp_message_t pfcp_message ;
241
+ ogs_pfcp_session_set_deletion_request_t * req = NULL ;
242
+
243
+ ogs_pfcp_node_id_t node_id ;
244
+ int node_id_len = 0 , rv ;
245
+
246
+ ogs_debug ("Session Set Deletion Request" );
247
+
248
+ req = & pfcp_message .pfcp_session_set_deletion_request ;
249
+ memset (& pfcp_message , 0 , sizeof (ogs_pfcp_message_t ));
250
+
251
+ rv = ogs_pfcp_sockaddr_to_node_id (
252
+ ogs_pfcp_self ()-> pfcp_addr , ogs_pfcp_self ()-> pfcp_addr6 ,
253
+ ogs_app ()-> parameter .prefer_ipv4 ,
254
+ & node_id , & node_id_len );
255
+ ogs_expect_or_return_val (rv == OGS_OK , NULL );
256
+ req -> node_id .presence = 1 ;
257
+ req -> node_id .data = & node_id ;
258
+ req -> node_id .len = node_id_len ;
259
+
260
+ pfcp_message .h .type = type ;
261
+ return ogs_pfcp_build_msg (& pfcp_message );
262
+ }
263
+
264
+ ogs_pkbuf_t * ogs_pfcp_up_build_session_set_deletion_response (uint8_t type , uint8_t cause )
265
+ {
266
+ ogs_pfcp_message_t pfcp_message ;
267
+ ogs_pfcp_session_set_deletion_response_t * rsp = NULL ;
268
+
269
+ ogs_pfcp_node_id_t node_id ;
270
+ int node_id_len = 0 , rv ;
271
+
272
+ ogs_debug ("Session Set Deletion Response" );
273
+
274
+ rsp = & pfcp_message .pfcp_session_set_deletion_response ;
275
+ memset (& pfcp_message , 0 , sizeof (ogs_pfcp_message_t ));
276
+
277
+ // node id
278
+ rv = ogs_pfcp_sockaddr_to_node_id (
279
+ ogs_pfcp_self ()-> pfcp_addr , ogs_pfcp_self ()-> pfcp_addr6 ,
280
+ ogs_app ()-> parameter .prefer_ipv4 ,
281
+ & node_id , & node_id_len );
282
+ ogs_expect_or_return_val (rv == OGS_OK , NULL );
283
+ rsp -> node_id .presence = 1 ;
284
+ rsp -> node_id .data = & node_id ;
285
+ rsp -> node_id .len = node_id_len ;
286
+
287
+ // cause
288
+ rsp -> cause .presence = 1 ;
289
+ rsp -> cause .u8 = cause ;
290
+
291
+ pfcp_message .h .type = type ;
292
+ return ogs_pfcp_build_msg (& pfcp_message );
293
+ }
294
+
238
295
static struct {
239
296
ogs_pfcp_f_teid_t f_teid ;
240
297
char dnn [OGS_MAX_DNN_LEN + 1 ];
0 commit comments