1 /*******************************************************************************
2 ################################################################################
3 # Copyright (c) [2017-2019] [Radisys] #
5 # Licensed under the Apache License, Version 2.0 (the "License"); #
6 # you may not use this file except in compliance with the License. #
7 # You may obtain a copy of the License at #
9 # http://www.apache.org/licenses/LICENSE-2.0 #
11 # Unless required by applicable law or agreed to in writing, software #
12 # distributed under the License is distributed on an "AS IS" BASIS, #
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
14 # See the License for the specific language governing permissions and #
15 # limitations under the License. #
16 ################################################################################
17 *******************************************************************************/
19 /********************************************************************20**
21 Name: LTE PDCP Interface
25 Desc: This file contains the pack/unpack functions for the
26 data structures at UDX Interface.
30 *********************************************************************21*/
31 #if(defined(LCUDX) || defined(LWLCUDX))
32 static const char* RLOG_MODULE_NAME="PDCP";
33 static int RLOG_MODULE_ID=1024;
34 static int RLOG_FILE_ID=224;
37 /* header include files (.h) */
39 #include "envopt.h" /* Environment options */
40 #include "envdep.h" /* Environment dependent */
41 #include "envind.h" /* Environment independent */
42 #include "gen.h" /* General */
43 #include "ssi.h" /* System services interface */
44 #include "cm_lte.h" /* Common LTE header file */
45 #include "cm_llist.h" /* Linked List header file */
46 #include "cm_tkns.h" /* Common tokens header file */
47 #include "cm_hash.h" /* Hash List header file */
48 #include "cpj.h" /* CPJ Interface header file */
54 /* header/extern include files (.x) */
56 #include "gen.x" /* General */
57 #include "ssi.x" /* System services interface */
58 #include "cm_lib.x" /* Common lib header file */
59 #include "cm_hash.x" /* Hash List header file */
60 #include "cm_llist.x" /* Linked List header file */
61 #include "cm_tkns.x" /* Common tokens header file */
62 #include "cm_lte.x" /* Common LTE header file */
63 #include "cpj.x" /* CPJ Interface header file */
68 #if(defined(LCUDX) || defined(LWLCUDX))
69 /* Packing/Unpacking Macros */
72 PUBLIC S16 cmPkPjUdxBndReq
79 PUBLIC S16 cmPkPjUdxBndReq(pst, suId, spId)
88 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
89 #if (ERRCLASS & ERRCLS_ADD_RES)
90 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
91 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
92 (ErrVal)EUDX001, (ErrVal)0, "Packing failed");
96 if (SPkS16(spId, mBuf) != ROK) {
97 #if (ERRCLASS & ERRCLS_ADD_RES)
98 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
99 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
100 (ErrVal)EUDX002, (ErrVal)0, "Packing failed");
105 if (SPkS16(suId, mBuf) != ROK) {
106 #if (ERRCLASS & ERRCLS_ADD_RES)
107 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
108 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
109 (ErrVal)EUDX003, (ErrVal)0, "Packing failed");
114 pst->event = (Event) EVTUDXBNDREQ;
115 RETVALUE(SPstTsk(pst,mBuf));
119 PUBLIC S16 cmUnpkPjUdxBndReq
126 PUBLIC S16 cmUnpkPjUdxBndReq(func, pst, mBuf)
135 TRC3(cmUnpkPjUdxBndReq)
137 if (SUnpkS16(&suId, mBuf) != ROK) {
139 #if (ERRCLASS & ERRCLS_ADD_RES)
140 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
141 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
142 (ErrVal)EUDX004, (ErrVal)0, "Packing failed");
146 if (SUnpkS16(&spId, mBuf) != ROK) {
148 #if (ERRCLASS & ERRCLS_ADD_RES)
149 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
150 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
151 (ErrVal)EUDX005, (ErrVal)0, "Packing failed");
156 RETVALUE((*func)(pst, suId, spId));
160 PUBLIC S16 cmPkPjUdxBndCfm
167 PUBLIC S16 cmPkPjUdxBndCfm(pst, suId, status)
173 Buffer *mBuf = NULLP;
174 TRC3(cmPkPjUdxBndCfm)
176 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
177 #if (ERRCLASS & ERRCLS_ADD_RES)
178 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
179 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
180 (ErrVal)ECPJ006, (ErrVal)0, "Packing failed");
184 if (SPkU8(status, mBuf) != ROK) {
185 #if (ERRCLASS & ERRCLS_ADD_RES)
186 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
187 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
188 (ErrVal)ECPJ007, (ErrVal)0, "Packing failed");
193 if (SPkS16(suId, mBuf) != ROK) {
194 #if (ERRCLASS & ERRCLS_ADD_RES)
195 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
196 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
197 (ErrVal)ECPJ008, (ErrVal)0, "Packing failed");
202 pst->event = (Event) EVTCPJBNDCFM;
203 RETVALUE(SPstTsk(pst,mBuf));
207 PUBLIC S16 cmUnpkPjUdxBndCfm
214 PUBLIC S16 cmUnpkPjUdxBndCfm(func, pst, mBuf)
223 TRC3(cmUnpkPjUdxBndCfm)
225 if (SUnpkS16(&suId, mBuf) != ROK) {
227 #if (ERRCLASS & ERRCLS_ADD_RES)
228 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
229 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
230 (ErrVal)ECPJ009, (ErrVal)0, "Packing failed");
234 if (SUnpkU8(&status, mBuf) != ROK) {
236 #if (ERRCLASS & ERRCLS_ADD_RES)
237 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
238 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
239 (ErrVal)ECPJ010, (ErrVal)0, "Packing failed");
244 RETVALUE((*func)(pst, suId, status));
248 PUBLIC S16 cmPkPjUdxUbndReq
255 PUBLIC S16 cmPkPjUdxUbndReq(pst, spId, reason)
261 Buffer *mBuf = NULLP;
262 TRC3(cmPkPjUdxUbndReq)
264 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
265 #if (ERRCLASS & ERRCLS_ADD_RES)
266 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
267 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
268 (ErrVal)EUDX011, (ErrVal)0, "Packing failed");
273 if (SPkS16(reason, mBuf) != ROK) {
274 #if (ERRCLASS & ERRCLS_ADD_RES)
275 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
276 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
277 (ErrVal)EUDX012, (ErrVal)0, "Packing failed");
282 if (SPkS16(spId, mBuf) != ROK) {
283 #if (ERRCLASS & ERRCLS_ADD_RES)
284 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
285 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
286 (ErrVal)EUDX013, (ErrVal)0, "Packing failed");
291 pst->event = (Event) EVTUDXUBNDREQ;
292 RETVALUE(SPstTsk(pst,mBuf));
296 PUBLIC S16 cmUnpkPjUdxUbndReq
303 PUBLIC S16 cmUnpkPjUdxUbndReq(func, pst, mBuf)
312 TRC3(cmUnpkPjUdxUbndReq)
314 if (SUnpkS16(&spId, mBuf) != ROK) {
316 #if (ERRCLASS & ERRCLS_ADD_RES)
317 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
318 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
319 (ErrVal)EUDX014, (ErrVal)0, "Packing failed");
323 if (SUnpkS16(&reason, mBuf) != ROK) {
325 #if (ERRCLASS & ERRCLS_ADD_RES)
326 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
327 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
328 (ErrVal)EUDX015, (ErrVal)0, "Packing failed");
333 RETVALUE((*func)(pst, spId, reason));
337 PUBLIC S16 cmPkPjUdxCfgReq
341 UdxCfgReqInfo * cfgReq
344 PUBLIC S16 cmPkPjUdxCfgReq(pst, spId, cfgReq)
347 UdxCfgReqInfo * cfgReq;
350 Buffer *mBuf = NULLP;
351 TRC3(cmPkPjUdxCfgReq)
353 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
354 #if (ERRCLASS & ERRCLS_ADD_RES)
355 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
356 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
357 (ErrVal)EUDX016, (ErrVal)0, "Packing failed");
359 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, cfgReq, sizeof(UdxCfgReqInfo));
363 switch(pst->selector)
369 if (cmPkPjUdxCfgReqInfo(pst, cfgReq, mBuf) != ROK) {
370 #if (ERRCLASS & ERRCLS_ADD_RES)
371 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
372 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
373 (ErrVal)EUDX017, (ErrVal)0, "Packing failed");
375 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, cfgReq, sizeof(UdxCfgReqInfo));
380 /* Free Request Structure after packing */
381 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, cfgReq, sizeof(UdxCfgReqInfo));
388 CMCHKPKLOG(cmPkPtr,(PTR)cfgReq,mBuf,EUDXXXX,pst);
394 if (SPkS16(spId, mBuf) != ROK) {
395 #if (ERRCLASS & ERRCLS_ADD_RES)
396 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
397 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
398 (ErrVal)EUDX019, (ErrVal)0, "Packing failed");
400 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, cfgReq, sizeof(UdxCfgReqInfo));
404 pst->event = (Event) EVTUDXCFGREQ;
406 RETVALUE(SPstTsk(pst,mBuf));
410 PUBLIC S16 cmPkPjUdxUlStaRep
414 UdxUlStaRepInfo *staRep
417 PUBLIC S16 cmPkPjUdxUlStaRep(pst, spId, staRep)
420 UdxUlStaRepInfo *staRep;
427 TRC3(cmPkPjUdxUlStaRep)
429 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
430 #if (ERRCLASS & ERRCLS_ADD_RES)
431 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
432 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
433 (ErrVal)EUDX016, (ErrVal)0, "Packing failed");
436 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staRep, sizeof(UdxUlStaRepInfo));
441 switch(pst->selector)
446 ret = cmPkPjUdxUlStaRepInfo( (staRep), pst, mBuf);
447 #if (ERRCLASS & ERRCLS_ADD_RES)
451 PJ_FREE_BUF(staRep->sta);
452 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, (Data *)staRep, sizeof(UdxUlStaRepInfo), 0);
454 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
455 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
456 (ErrVal)EUDXXXX, (ErrVal)ret, "Packing failure");
459 #endif /* ERRCLASS & ERRCLS_ADD_RES */
460 PJ_FREE_BUF(staRep->sta);
461 #ifndef XEON_SPECIFIC_CHANGES
462 if (SPutStaticBuffer(pst->region, pst->pool, (Data *)staRep,
463 sizeof(UdxUlStaRepInfo), 0) != ROK)
465 if (SPutSBuf(pst->region, pst->pool, (Data *)staRep,
466 sizeof(UdxUlStaRepInfo)) != ROK)
477 CMCHKPKLOG(cmPkPtr,(PTR)staRep,mBuf,EUDXXXX,pst);
483 CMCHKPKLOG(SPkS16, spId, mBuf, EUDXXXX, pst);
484 pst->event = (Event) EVTUDXULSTAREP;
486 RETVALUE(SPstTsk(pst,mBuf));
490 PUBLIC S16 cmPkPjUdxDlStaRep
494 UdxDlStaRepInfo *staRep
497 PUBLIC S16 cmPkPjUdxDlStaRep(pst, spId, staRep)
500 UdxDlStaRepInfo *staRep;
507 TRC3(cmPkPjUdxDlStaRep)
509 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
511 #if (ERRCLASS & ERRCLS_ADD_RES)
512 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
513 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
514 (ErrVal)EUDX016, (ErrVal)0, "Packing failed");
516 PJ_FREE_BUF(staRep->staPdu);
517 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staRep, sizeof(UdxDlStaRepInfo));
522 switch(pst->selector)
527 ret = cmPkPjUdxDlStaRepInfo( (staRep), pst, mBuf);
528 #if (ERRCLASS & ERRCLS_ADD_RES)
532 PJ_FREE_BUF(staRep->staPdu);
533 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staRep, sizeof(UdxDlStaRepInfo));
535 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
536 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
537 (ErrVal)EUDXXXX, (ErrVal)ret, "Packing failure");
540 #endif /* ERRCLASS & ERRCLS_ADD_RES */
541 PJ_FREE_BUF(staRep->staPdu);
542 #ifndef XEON_SPECIFIC_CHANGES
543 if (SPutStaticBuffer(pst->region, pst->pool, (Data *)staRep,
544 sizeof(UdxDlStaRepInfo), 0) != ROK)
546 if (SPutSBuf(pst->region, pst->pool, (Data *)staRep,
547 sizeof(UdxDlStaRepInfo)) != ROK)
558 CMCHKPKLOG(cmPkPtr,(PTR)staRep,mBuf,EUDXXXX,pst);
564 CMCHKPKLOG(SPkS16, spId, mBuf, EUDXXXX, pst);
565 pst->event = (Event) EVTUDXDLSTAREP;
567 RETVALUE(SPstTsk(pst,mBuf));
572 PUBLIC S16 cmUnpkPjUdxCfgReq
579 PUBLIC S16 cmUnpkPjUdxCfgReq(func, pst, mBuf)
587 UdxCfgReqInfo *cfgReq;
589 TRC3(cmUnpkPjUdxCfgReq)
590 if (SUnpkS16(&spId, mBuf) != ROK) {
592 #if (ERRCLASS & ERRCLS_ADD_RES)
593 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
594 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
595 (ErrVal)EUDX021, (ErrVal)0, "Packing failed");
600 switch(pst->selector)
606 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&cfgReq,\
607 sizeof(UdxCfgReqInfo))) != ROK)
609 #if (ERRCLASS & ERRCLS_ADD_RES)
610 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
611 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
612 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
613 #endif /* ERRCLASS & ERRCLS_ADD_RES */
617 if (cmUnpkPjUdxCfgReqInfo(pst, cfgReq, mBuf) != ROK) {
618 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, cfgReq, sizeof(UdxCfgReqInfo);
620 #if (ERRCLASS & ERRCLS_ADD_RES)
621 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
622 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
623 (ErrVal)EUDX023, (ErrVal)0, "Packing failed");
631 CMCHKUNPK(cmUnpkPtr,(PTR *) &cfgReq, mBuf);
637 RETVALUE((*func)(pst, spId, cfgReq));
641 PUBLIC S16 cmPkPjUdxCfgCfm
645 UdxCfgCfmInfo * cfgCfm
648 PUBLIC S16 cmPkPjUdxCfgCfm(pst, suId, cfgCfm)
651 UdxCfgCfmInfo * cfgCfm;
654 Buffer *mBuf = NULLP;
655 TRC3(cmPkPjUdxCfgCfm)
657 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
658 #if (ERRCLASS & ERRCLS_ADD_RES)
659 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
660 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
661 (ErrVal)ECPJ024, (ErrVal)0, "Packing failed");
663 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, cfgCfm, sizeof(UdxCfgCfmInfo));
666 switch(pst->selector)
672 if (cmPkPjUdxCfgCfmInfo(cfgCfm, mBuf) != ROK) {
673 #if (ERRCLASS & ERRCLS_ADD_RES)
674 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
675 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
676 (ErrVal)ECPJ025, (ErrVal)0, "Packing failed");
678 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, cfgCfm, sizeof(UdxCfgCfmInfo));
682 /* cpj_c_001.main_3 */
683 /* Free Confirm Structure after packing */
684 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, cfgCfm, sizeof(UdxCfgCfmInfo));
691 CMCHKPKLOG(cmPkPtr,(PTR)cfgCfm,mBuf,EUDXXXX,pst);
698 if (SPkS16(suId, mBuf) != ROK) {
699 #if (ERRCLASS & ERRCLS_ADD_RES)
700 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
701 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
702 (ErrVal)ECPJ027, (ErrVal)0, "Packing failed");
704 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, cfgCfm, sizeof(UdxCfgCfmInfo));
708 pst->event = (Event) EVTCPJCFGCFM;
709 RETVALUE(SPstTsk(pst,mBuf));
713 PUBLIC S16 cmUnpkPjUdxCfgCfm
720 PUBLIC S16 cmUnpkPjUdxCfgCfm(func, pst, mBuf)
728 UdxCfgCfmInfo *cfgCfm;
730 TRC3(cmUnpkPjUdxCfgCfm)
731 if (SUnpkS16(&suId, mBuf) != ROK) {
733 #if (ERRCLASS & ERRCLS_ADD_RES)
734 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
735 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
736 (ErrVal)ECPJ029, (ErrVal)0, "Packing failed");
740 switch(pst->selector)
747 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&cfgCfm,\
748 sizeof(UdxCfgCfmInfo))) != ROK)
750 #if (ERRCLASS & ERRCLS_ADD_RES)
751 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
752 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
753 (ErrVal)ECPJ040, (ErrVal)0, "SGetMsg() failed");
754 #endif /* ERRCLASS & ERRCLS_ADD_RES */
758 if (cmUnpkPjUdxCfgCfmInfo(cfgCfm, mBuf) != ROK) {
759 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, cfgCfm, sizeof(UdxCfgCfmInfo));
761 #if (ERRCLASS & ERRCLS_ADD_RES)
762 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
763 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
764 (ErrVal)ECPJ031, (ErrVal)0, "Packing failed");
772 CMCHKUNPK(cmUnpkPtr,(PTR *) &cfgCfm, mBuf);
778 RETVALUE((*func)(pst, suId, cfgCfm));
783 PUBLIC S16 cmPkPjUdxReEstReq
787 UdxReEstReqInfo * reEstReq
790 PUBLIC S16 cmPkPjUdxReEstReq(pst, spId, reEstReq)
793 UdxReEstReqInfo * reEstReq;
796 Buffer *mBuf = NULLP;
797 TRC3(cmPkPjUdxReEstReq)
799 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
801 #if (ERRCLASS & ERRCLS_ADD_RES)
802 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
803 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
804 (ErrVal)EUDX032, (ErrVal)0, "Packing failed");
806 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, reEstReq, sizeof(UdxReEstReqInfo));
809 switch(pst->selector)
814 if (cmPkPjUdxReEstReqInfo(reEstReq, mBuf) != ROK) {
815 #if (ERRCLASS & ERRCLS_ADD_RES)
816 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
817 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
818 (ErrVal)EUDX033, (ErrVal)0, "Packing failed");
820 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, reEstReq, sizeof(UdxReEstReqInfo));
824 /* Free Request Structure after packing */
825 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, reEstReq, sizeof(UdxReEstReqInfo));
831 CMCHKPKLOG(cmPkPtr,(PTR)reEstReq,mBuf,EUDXXXX,pst);
837 if (SPkS16(spId, mBuf) != ROK) {
838 #if (ERRCLASS & ERRCLS_ADD_RES)
839 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
840 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
841 (ErrVal)EUDX035, (ErrVal)0, "Packing failed");
843 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, reEstReq, sizeof(UdxReEstReqInfo));
848 pst->event = (Event) EVTUDXREESTREQ;
849 RETVALUE(SPstTsk(pst,mBuf));
853 PUBLIC S16 cmUnpkPjUdxReEstReq
860 PUBLIC S16 cmUnpkPjUdxReEstReq(func, pst, mBuf)
868 UdxReEstReqInfo *reEstReq;
870 TRC3(cmUnpkPjUdxReEstReq)
872 if (SUnpkS16(&spId, mBuf) != ROK) {
874 #if (ERRCLASS & ERRCLS_ADD_RES)
875 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
876 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
877 (ErrVal)EUDX037, (ErrVal)0, "Packing failed");
881 switch(pst->selector)
887 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&reEstReq,\
888 sizeof(UdxReEstReqInfo))) != ROK)
890 #if (ERRCLASS & ERRCLS_ADD_RES)
891 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
892 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
893 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
894 #endif /* ERRCLASS & ERRCLS_ADD_RES */
898 if (cmUnpkPjUdxReEstReqInfo(reEstReq, mBuf) != ROK) {
899 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, reEstReq, sizeof(UdxReEstReqInfo));
901 #if (ERRCLASS & ERRCLS_ADD_RES)
902 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
903 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
904 (ErrVal)EUDX039, (ErrVal)0, "Packing failed");
912 CMCHKUNPK(cmUnpkPtr,(PTR *) &reEstReq, mBuf);
919 RETVALUE((*func)(pst, spId, reEstReq));
924 PUBLIC S16 cmPkPjUdxReEstCfm
928 UdxReEstCfmInfo * reEstCfm
931 PUBLIC S16 cmPkPjUdxReEstCfm(pst, suId, reEstCfm)
934 UdxReEstCfmInfo * reEstCfm;
937 Buffer *mBuf = NULLP;
938 TRC3(cmPkPjUdxReEstCfm)
940 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
941 #if (ERRCLASS & ERRCLS_ADD_RES)
942 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
943 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
944 (ErrVal)ECPJ040, (ErrVal)0, "Packing failed");
946 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, reEstCfm, sizeof(UdxReEstCfmInfo));
949 switch(pst->selector)
955 if (cmPkPjUdxReEstCfmInfo(reEstCfm, mBuf) != ROK) {
956 #if (ERRCLASS & ERRCLS_ADD_RES)
957 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
958 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
959 (ErrVal)ECPJ041, (ErrVal)0, "Packing failed");
961 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, reEstCfm, sizeof(UdxReEstCfmInfo));
966 /* Free Confirm Structure after packing */
967 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, reEstCfm, sizeof(UdxReEstCfmInfo));
972 CMCHKPKLOG(cmPkPtr,(PTR)reEstCfm,mBuf,EUDXXXX,pst);
977 if (SPkS16(suId, mBuf) != ROK)
979 #if (ERRCLASS & ERRCLS_ADD_RES)
980 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
981 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
982 (ErrVal)ECPJ043, (ErrVal)0, "Packing failed");
984 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, reEstCfm, sizeof(UdxReEstCfmInfo));
990 pst->event = (Event) EVTCPJREESTCFM;
991 RETVALUE(SPstTsk(pst,mBuf));
995 PUBLIC S16 cmUnpkPjUdxReEstCfm
1002 PUBLIC S16 cmUnpkPjUdxReEstCfm(func, pst, mBuf)
1010 UdxReEstCfmInfo *reEstCfm;
1012 TRC3(cmUnpkPjUdxReEstCfm)
1014 if (SUnpkS16(&suId, mBuf) != ROK) {
1016 #if (ERRCLASS & ERRCLS_ADD_RES)
1017 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1018 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1019 (ErrVal)ECPJ045, (ErrVal)0, "Packing failed");
1023 switch(pst->selector)
1030 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&reEstCfm,\
1031 sizeof(UdxReEstCfmInfo))) != ROK)
1033 #if (ERRCLASS & ERRCLS_ADD_RES)
1034 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1035 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1036 (ErrVal)ECPJ040, (ErrVal)0, "SGetMsg() failed");
1037 #endif /* ERRCLASS & ERRCLS_ADD_RES */
1041 if (cmUnpkPjUdxReEstCfmInfo(reEstCfm, mBuf) != ROK) {
1042 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, reEstCfm, sizeof(UdxReEstCfmInfo));
1044 #if (ERRCLASS & ERRCLS_ADD_RES)
1045 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1046 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1047 (ErrVal)ECPJ047, (ErrVal)0, "Packing failed");
1055 CMCHKUNPK(cmUnpkPtr,(PTR *) &reEstCfm, mBuf);
1062 RETVALUE((*func)(pst, suId, reEstCfm));
1067 PUBLIC S16 cmPkPjUdxSecCfgReq
1071 UdxSecCfgReqInfo * secCfgReq
1074 PUBLIC S16 cmPkPjUdxSecCfgReq(pst, spId, secCfgReq)
1077 UdxSecCfgReqInfo * secCfgReq;
1080 Buffer *mBuf = NULLP;
1081 TRC3(cmPkPjUdxSecCfgReq)
1083 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
1084 #if (ERRCLASS & ERRCLS_ADD_RES)
1085 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1086 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1087 (ErrVal)EUDX048, (ErrVal)0, "Packing failed");
1089 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, secCfgReq, sizeof(UdxSecCfgReqInfo));
1093 switch(pst->selector)
1099 if (cmPkPjUdxSecCfgReqInfo(secCfgReq, mBuf) != ROK) {
1100 #if (ERRCLASS & ERRCLS_ADD_RES)
1101 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1102 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1103 (ErrVal)EUDX049, (ErrVal)0, "Packing failed");
1105 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, secCfgReq, sizeof(UdxSecCfgReqInfo));
1109 /* Free Request Structure after packing */
1110 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, secCfgReq, sizeof(UdxSecCfgReqInfo));
1116 CMCHKPKLOG(cmPkPtr,(PTR)secCfgReq,mBuf,EUDXXXX,pst);
1122 if (SPkS16(spId, mBuf) != ROK) {
1123 #if (ERRCLASS & ERRCLS_ADD_RES)
1124 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1125 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1126 (ErrVal)EUDX051, (ErrVal)0, "Packing failed");
1128 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, secCfgReq, sizeof(UdxSecCfgReqInfo));
1133 pst->event = (Event) EVTUDXSECCFGREQ;
1134 RETVALUE(SPstTsk(pst,mBuf));
1138 PUBLIC S16 cmUnpkPjUdxSecCfgReq
1145 PUBLIC S16 cmUnpkPjUdxSecCfgReq(func, pst, mBuf)
1153 UdxSecCfgReqInfo *secCfgReq;
1155 TRC3(cmUnpkPjUdxSecCfgReq)
1157 if (SUnpkS16(&spId, mBuf) != ROK) {
1159 #if (ERRCLASS & ERRCLS_ADD_RES)
1160 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1161 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1162 (ErrVal)EUDX053, (ErrVal)0, "Packing failed");
1166 switch(pst->selector)
1172 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&secCfgReq,\
1173 sizeof(UdxSecCfgReqInfo))) != ROK)
1175 #if (ERRCLASS & ERRCLS_ADD_RES)
1176 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1177 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1178 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
1179 #endif /* ERRCLASS & ERRCLS_ADD_RES */
1183 if (cmUnpkPjUdxSecCfgReqInfo(secCfgReq, mBuf) != ROK) {
1184 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, secCfgReq, sizeof(UdxSecCfgReqInfo));
1186 #if (ERRCLASS & ERRCLS_ADD_RES)
1187 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1188 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1189 (ErrVal)EUDX055, (ErrVal)0, "Packing failed");
1198 CMCHKUNPK(cmUnpkPtr,(PTR *) &secCfgReq,mBuf);
1204 RETVALUE((*func)(pst, spId, secCfgReq));
1209 PUBLIC S16 cmPkPjUdxSecCfgCfm
1213 UdxSecCfgCfmInfo * secCfgCfm
1216 PUBLIC S16 cmPkPjUdxSecCfgCfm(pst, suId, secCfgCfm)
1219 UdxSecCfgCfmInfo * secCfgCfm;
1222 Buffer *mBuf = NULLP;
1223 TRC3(cmPkPjUdxSecCfgCfm)
1225 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
1226 #if (ERRCLASS & ERRCLS_ADD_RES)
1227 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1228 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1229 (ErrVal)ECPJ056, (ErrVal)0, "Packing failed");
1231 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, secCfgCfm, sizeof(UdxSecCfgCfmInfo));
1234 switch(pst->selector)
1241 if (cmPkPjUdxSecCfgCfmInfo(secCfgCfm, mBuf) != ROK) {
1242 #if (ERRCLASS & ERRCLS_ADD_RES)
1243 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1244 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1245 (ErrVal)ECPJ057, (ErrVal)0, "Packing failed");
1247 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, secCfgCfm, sizeof(UdxSecCfgCfmInfo));
1251 /* Free Confirm Structure after packing */
1252 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, secCfgCfm, sizeof(UdxSecCfgCfmInfo));
1260 CMCHKPKLOG(cmPkPtr,(PTR)secCfgCfm,mBuf,EUDXXXX,pst);
1268 if (SPkS16(suId, mBuf) != ROK) {
1269 #if (ERRCLASS & ERRCLS_ADD_RES)
1270 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1271 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1272 (ErrVal)ECPJ059, (ErrVal)0, "Packing failed");
1274 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, secCfgCfm, sizeof(UdxSecCfgCfmInfo));
1279 pst->event = (Event) EVTCPJSECCFGCFM;
1280 RETVALUE(SPstTsk(pst,mBuf));
1284 PUBLIC S16 cmUnpkPjUdxSecCfgCfm
1291 PUBLIC S16 cmUnpkPjUdxSecCfgCfm(func, pst, mBuf)
1299 UdxSecCfgCfmInfo *secCfgCfm;
1301 TRC3(cmUnpkPjUdxSecCfgCfm)
1303 if (SUnpkS16(&suId, mBuf) != ROK) {
1305 #if (ERRCLASS & ERRCLS_ADD_RES)
1306 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1307 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1308 (ErrVal)ECPJ061, (ErrVal)0, "Packing failed");
1312 switch(pst->selector)
1319 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&secCfgCfm,\
1320 sizeof(UdxSecCfgCfmInfo))) != ROK)
1322 #if (ERRCLASS & ERRCLS_ADD_RES)
1323 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1324 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1325 (ErrVal)ECPJ040, (ErrVal)0, "SGetMsg() failed");
1326 #endif /* ERRCLASS & ERRCLS_ADD_RES */
1330 if (cmUnpkPjUdxSecCfgCfmInfo(secCfgCfm, mBuf) != ROK) {
1331 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, secCfgCfm, sizeof(UdxSecCfgCfmInfo));
1333 #if (ERRCLASS & ERRCLS_ADD_RES)
1334 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1335 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1336 (ErrVal)ECPJ063, (ErrVal)0, "Packing failed");
1345 CMCHKUNPK(cmUnpkPtr,(PTR *)&secCfgCfm,mBuf);
1351 RETVALUE((*func)(pst, suId, secCfgCfm));
1356 PUBLIC S16 cmPkPjUdxUeIdChgReq
1361 UdxUeInfo * oldUeInfo,
1362 UdxUeInfo * newUeInfo
1365 PUBLIC S16 cmPkPjUdxUeIdChgReq(pst, spId, transId, oldUeInfo, newUeInfo)
1369 UdxUeInfo * oldUeInfo;
1370 UdxUeInfo * newUeInfo;
1373 Buffer *mBuf = NULLP;
1374 TRC3(cmPkPjUdxUeIdChgReq)
1376 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
1377 #if (ERRCLASS & ERRCLS_ADD_RES)
1378 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1379 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1380 (ErrVal)EUDX064, (ErrVal)0, "Packing failed");
1382 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, oldUeInfo, sizeof(UdxUeInfo));
1383 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, newUeInfo, sizeof(UdxUeInfo));
1386 if (cmPkPjUdxUeInfo(newUeInfo, mBuf) != ROK) {
1387 #if (ERRCLASS & ERRCLS_ADD_RES)
1388 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1389 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1390 (ErrVal)EUDX065, (ErrVal)0, "Packing failed");
1392 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, oldUeInfo, sizeof(UdxUeInfo));
1393 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, newUeInfo, sizeof(UdxUeInfo));
1398 if (cmPkPjUdxUeInfo(oldUeInfo, mBuf) != ROK) {
1399 #if (ERRCLASS & ERRCLS_ADD_RES)
1400 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1401 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1402 (ErrVal)EUDX067, (ErrVal)0, "Packing failed");
1404 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, oldUeInfo, sizeof(UdxUeInfo));
1405 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, newUeInfo, sizeof(UdxUeInfo));
1410 if (SPkU32(transId, mBuf) != ROK) {
1411 #if (ERRCLASS & ERRCLS_ADD_RES)
1412 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1413 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1414 (ErrVal)EUDX069, (ErrVal)0, "Packing failed");
1416 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, oldUeInfo, sizeof(UdxUeInfo));
1417 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, newUeInfo, sizeof(UdxUeInfo));
1421 if (SPkS16(spId, mBuf) != ROK) {
1422 #if (ERRCLASS & ERRCLS_ADD_RES)
1423 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1424 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1425 (ErrVal)EUDX070, (ErrVal)0, "Packing failed");
1427 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, oldUeInfo, sizeof(UdxUeInfo));
1428 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, newUeInfo, sizeof(UdxUeInfo));
1433 /* Free Request Structure after packing */
1434 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, oldUeInfo, sizeof(UdxUeInfo));
1435 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, newUeInfo, sizeof(UdxUeInfo));
1437 pst->event = (Event) EVTUDXUEIDCHGREQ;
1438 RETVALUE(SPstTsk(pst,mBuf));
1442 PUBLIC S16 cmUnpkPjUdxUeIdChgReq
1449 PUBLIC S16 cmUnpkPjUdxUeIdChgReq(func, pst, mBuf)
1458 UdxUeInfo *oldUeInfo;
1459 UdxUeInfo *newUeInfo;
1461 TRC3(cmUnpkPjUdxUeIdChgReq)
1463 if (SUnpkS16(&spId, mBuf) != ROK) {
1465 #if (ERRCLASS & ERRCLS_ADD_RES)
1466 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1467 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1468 (ErrVal)EUDX073, (ErrVal)0, "Packing failed");
1472 if (SUnpkU32(&transId, mBuf) != ROK) {
1474 #if (ERRCLASS & ERRCLS_ADD_RES)
1475 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1476 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1477 (ErrVal)EUDX074, (ErrVal)0, "Packing failed");
1482 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&oldUeInfo,\
1483 sizeof(UdxUeInfo))) != ROK)
1485 #if (ERRCLASS & ERRCLS_ADD_RES)
1486 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1487 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1488 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
1489 #endif /* ERRCLASS & ERRCLS_ADD_RES */
1493 if (cmUnpkPjUdxUeInfo(oldUeInfo, mBuf) != ROK) {
1494 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, oldUeInfo, sizeof(UdxUeInfo));
1496 #if (ERRCLASS & ERRCLS_ADD_RES)
1497 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1498 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1499 (ErrVal)EUDX076, (ErrVal)0, "Packing failed");
1504 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&newUeInfo,\
1505 sizeof(UdxUeInfo))) != ROK)
1507 #if (ERRCLASS & ERRCLS_ADD_RES)
1508 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1509 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1510 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
1511 #endif /* ERRCLASS & ERRCLS_ADD_RES */
1515 if (cmUnpkPjUdxUeInfo(newUeInfo, mBuf) != ROK)
1517 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, oldUeInfo, sizeof(UdxUeInfo));
1518 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, newUeInfo, sizeof(UdxUeInfo));
1520 #if (ERRCLASS & ERRCLS_ADD_RES)
1521 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1522 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1523 (ErrVal)EUDX078, (ErrVal)0, "Packing failed");
1528 RETVALUE((*func)(pst, spId, transId, oldUeInfo, newUeInfo));
1533 PUBLIC S16 cmPkPjUdxUeIdChgCfm
1542 PUBLIC S16 cmPkPjUdxUeIdChgCfm(pst, suId, transId, ueInfo, status)
1550 Buffer *mBuf = NULLP;
1551 TRC3(cmPkPjUdxUeIdChgCfm)
1553 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
1554 #if (ERRCLASS & ERRCLS_ADD_RES)
1555 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1556 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1557 (ErrVal)ECPJ079, (ErrVal)0, "Packing failed");
1559 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, ueInfo, sizeof(UdxUeInfo));
1562 if (cmPkCmStatus(&status, mBuf) != ROK) {
1563 #if (ERRCLASS & ERRCLS_ADD_RES)
1564 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1565 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1566 (ErrVal)ECPJ080, (ErrVal)0, "Packing failed");
1568 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, ueInfo, sizeof(UdxUeInfo));
1572 if (cmPkPjUdxUeInfo(ueInfo, mBuf) != ROK) {
1573 #if (ERRCLASS & ERRCLS_ADD_RES)
1574 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1575 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1576 (ErrVal)ECPJ081, (ErrVal)0, "Packing failed");
1578 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, ueInfo, sizeof(UdxUeInfo));
1583 if (SPkU32(transId, mBuf) != ROK) {
1584 #if (ERRCLASS & ERRCLS_ADD_RES)
1585 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1586 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1587 (ErrVal)ECPJ083, (ErrVal)0, "Packing failed");
1589 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, ueInfo, sizeof(UdxUeInfo));
1593 if (SPkS16(suId, mBuf) != ROK) {
1594 #if (ERRCLASS & ERRCLS_ADD_RES)
1595 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1596 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1597 (ErrVal)ECPJ084, (ErrVal)0, "Packing failed");
1599 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, ueInfo, sizeof(UdxUeInfo));
1604 /* Free Confirm Structure after packing */
1605 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, ueInfo, sizeof(UdxUeInfo));
1607 pst->event = (Event) EVTCPJUEIDCHGCFM;
1608 RETVALUE(SPstTsk(pst,mBuf));
1612 PUBLIC S16 cmUnpkPjUdxUeIdChgCfm
1619 PUBLIC S16 cmUnpkPjUdxUeIdChgCfm(func, pst, mBuf)
1631 TRC3(cmUnpkPjUdxUeIdChgCfm)
1633 if (SUnpkS16(&suId, mBuf) != ROK) {
1635 #if (ERRCLASS & ERRCLS_ADD_RES)
1636 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1637 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1638 (ErrVal)ECPJ086, (ErrVal)0, "Packing failed");
1642 if (SUnpkU32(&transId, mBuf) != ROK) {
1644 #if (ERRCLASS & ERRCLS_ADD_RES)
1645 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1646 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1647 (ErrVal)ECPJ087, (ErrVal)0, "Packing failed");
1652 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&ueInfo,\
1653 sizeof(UdxUeInfo))) != ROK)
1655 #if (ERRCLASS & ERRCLS_ADD_RES)
1656 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1657 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1658 (ErrVal)ECPJ040, (ErrVal)0, "SGetMsg() failed");
1659 #endif /* ERRCLASS & ERRCLS_ADD_RES */
1663 if (cmUnpkPjUdxUeInfo(ueInfo, mBuf) != ROK) {
1664 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, ueInfo, sizeof(UdxUeInfo));
1666 #if (ERRCLASS & ERRCLS_ADD_RES)
1667 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1668 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1669 (ErrVal)ECPJ089, (ErrVal)0, "Packing failed");
1673 if (cmUnpkCmStatus(&status, mBuf) != ROK) {
1674 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, ueInfo, sizeof(UdxUeInfo));
1676 #if (ERRCLASS & ERRCLS_ADD_RES)
1677 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1678 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1679 (ErrVal)ECPJ090, (ErrVal)0, "Packing failed");
1684 RETVALUE((*func)(pst, suId, transId, ueInfo, status));
1688 PUBLIC S16 cmPkPjUdxCountReq
1692 UdxCountReqInfo * countReq
1695 PUBLIC S16 cmPkPjUdxCountReq(pst, spId, countReq)
1698 UdxCountReqInfo * countReq;
1701 Buffer *mBuf = NULLP;
1702 TRC3(cmPkPjUdxCountReq)
1704 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
1705 #if (ERRCLASS & ERRCLS_ADD_RES)
1706 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1707 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1708 (ErrVal)EUDX091, (ErrVal)0, "Packing failed");
1710 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, countReq, sizeof(UdxCountReqInfo));
1714 switch(pst->selector)
1720 if (cmPkPjUdxCountReqInfo(countReq, mBuf) != ROK) {
1721 #if (ERRCLASS & ERRCLS_ADD_RES)
1722 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1723 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1724 (ErrVal)EUDX092, (ErrVal)0, "Packing failed");
1726 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, countReq, sizeof(UdxCountReqInfo));
1730 /* Free Request Structure after packing */
1731 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, countReq, sizeof(UdxCountReqInfo));
1736 CMCHKPKLOG(cmPkPtr,(PTR)countReq,mBuf,EUDXXXX,pst);
1742 if (SPkS16(spId, mBuf) != ROK) {
1743 #if (ERRCLASS & ERRCLS_ADD_RES)
1744 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1745 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1746 (ErrVal)EUDX094, (ErrVal)0, "Packing failed");
1748 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, countReq, sizeof(UdxCountReqInfo));
1753 pst->event = (Event) EVTUDXCOUNTREQ;
1754 RETVALUE(SPstTsk(pst,mBuf));
1758 PUBLIC S16 cmUnpkPjUdxCountReq
1765 PUBLIC S16 cmUnpkPjUdxCountReq(func, pst, mBuf)
1773 UdxCountReqInfo *countReq;
1775 TRC3(cmUnpkPjUdxCountReq)
1777 if (SUnpkS16(&spId, mBuf) != ROK) {
1779 #if (ERRCLASS & ERRCLS_ADD_RES)
1780 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1781 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1782 (ErrVal)EUDX096, (ErrVal)0, "Packing failed");
1786 switch(pst->selector)
1792 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&countReq,\
1793 sizeof(UdxCountReqInfo))) != ROK)
1795 #if (ERRCLASS & ERRCLS_ADD_RES)
1796 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1797 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1798 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
1799 #endif /* ERRCLASS & ERRCLS_ADD_RES */
1803 if (cmUnpkPjUdxCountReqInfo(countReq, mBuf) != ROK) {
1804 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, countReq, sizeof(UdxCountReqInfo));
1806 #if (ERRCLASS & ERRCLS_ADD_RES)
1807 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1808 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1809 (ErrVal)EUDX098, (ErrVal)0, "Packing failed");
1817 CMCHKUNPK(cmUnpkPtr,(PTR *) &countReq,mBuf);
1824 RETVALUE((*func)(pst, spId, countReq));
1829 PUBLIC S16 cmPkPjUdxCountCfm
1833 UdxCountCfmInfo * countCfm
1836 PUBLIC S16 cmPkPjUdxCountCfm(pst, suId, countCfm)
1839 UdxCountCfmInfo * countCfm;
1842 Buffer *mBuf = NULLP;
1843 TRC3(cmPkPjUdxCountCfm)
1845 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
1846 #if (ERRCLASS & ERRCLS_ADD_RES)
1847 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1848 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1849 (ErrVal)ECPJ099, (ErrVal)0, "Packing failed");
1851 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, countCfm, sizeof(UdxCountCfmInfo));
1854 switch(pst->selector)
1860 if (cmPkPjUdxCountCfmInfo(countCfm, mBuf) != ROK) {
1861 #if (ERRCLASS & ERRCLS_ADD_RES)
1862 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1863 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1864 (ErrVal)ECPJ100, (ErrVal)0, "Packing failed");
1866 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, countCfm, sizeof(UdxCountCfmInfo));
1870 /* Free Confirm Structure after packing */
1871 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, countCfm, sizeof(UdxCountCfmInfo));
1877 CMCHKPKLOG(cmPkPtr,(PTR)countCfm,mBuf,EUDXXXX,pst);
1883 if (SPkS16(suId, mBuf) != ROK) {
1884 #if (ERRCLASS & ERRCLS_ADD_RES)
1885 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1886 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1887 (ErrVal)ECPJ102, (ErrVal)0, "Packing failed");
1889 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, countCfm, sizeof(UdxCountCfmInfo));
1894 pst->event = (Event) EVTCPJCOUNTCFM;
1895 RETVALUE(SPstTsk(pst,mBuf));
1899 PUBLIC S16 cmUnpkPjUdxCountCfm
1906 PUBLIC S16 cmUnpkPjUdxCountCfm(func, pst, mBuf)
1914 UdxCountCfmInfo *countCfm = NULLP;
1916 TRC3(cmUnpkPjUdxCountCfm)
1918 if (SUnpkS16(&suId, mBuf) != ROK) {
1920 #if (ERRCLASS & ERRCLS_ADD_RES)
1921 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1922 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1923 (ErrVal)ECPJ104, (ErrVal)0, "Packing failed");
1928 switch(pst->selector)
1935 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&countCfm,\
1936 sizeof(UdxCountCfmInfo))) != ROK)
1938 #if (ERRCLASS & ERRCLS_ADD_RES)
1939 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1940 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1941 (ErrVal)ECPJ040, (ErrVal)0, "SGetMsg() failed");
1942 #endif /* ERRCLASS & ERRCLS_ADD_RES */
1946 if (cmUnpkPjUdxCountCfmInfo(countCfm, mBuf) != ROK) {
1947 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, countCfm, sizeof(UdxCountCfmInfo));
1949 #if (ERRCLASS & ERRCLS_ADD_RES)
1950 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1951 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1952 (ErrVal)ECPJ106, (ErrVal)0, "Packing failed");
1960 CMCHKUNPK(cmUnpkPtr,(PTR *) &countCfm,mBuf);
1967 RETVALUE((*func)(pst, suId, countCfm));
1972 PUBLIC S16 cmPkPjUdxSduStaReq
1976 UdxSduStaReqInfo * staReq
1979 PUBLIC S16 cmPkPjUdxSduStaReq(pst, spId, staReq)
1982 UdxSduStaReqInfo * staReq;
1985 Buffer *mBuf = NULLP;
1986 TRC3(cmPkPjUdxSduStaReq)
1988 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
1989 #if (ERRCLASS & ERRCLS_ADD_RES)
1990 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
1991 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
1992 (ErrVal)EUDX107, (ErrVal)0, "Packing failed");
1994 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staReq, sizeof(UdxSduStaReqInfo));
1998 switch(pst->selector)
2004 if (cmPkPjUdxSduStaReqInfo(staReq, mBuf) != ROK) {
2005 #if (ERRCLASS & ERRCLS_ADD_RES)
2006 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2007 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2008 (ErrVal)EUDX108, (ErrVal)0, "Packing failed");
2010 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staReq, sizeof(UdxSduStaReqInfo));
2014 /* Free Request Structure after packing */
2015 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staReq, sizeof(UdxSduStaReqInfo));
2022 CMCHKPKLOG(cmPkPtr,(PTR)staReq,mBuf,EUDXXXX,pst);
2027 if (SPkS16(spId, mBuf) != ROK) {
2028 #if (ERRCLASS & ERRCLS_ADD_RES)
2029 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2030 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2031 (ErrVal)EUDX110, (ErrVal)0, "Packing failed");
2033 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staReq, sizeof(UdxSduStaReqInfo));
2038 pst->event = (Event) EVTUDXSDUSTAREQ;
2039 RETVALUE(SPstTsk(pst,mBuf));
2043 PUBLIC S16 cmUnpkPjUdxSduStaReq
2050 PUBLIC S16 cmUnpkPjUdxSduStaReq(func, pst, mBuf)
2058 UdxSduStaReqInfo *staReq;
2060 TRC3(cmUnpkPjUdxSduStaReq)
2062 if (SUnpkS16(&spId, mBuf) != ROK) {
2064 #if (ERRCLASS & ERRCLS_ADD_RES)
2065 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2066 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2067 (ErrVal)EUDX112, (ErrVal)0, "Packing failed");
2071 switch(pst->selector)
2077 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&staReq,\
2078 sizeof(UdxSduStaReqInfo))) != ROK)
2080 #if (ERRCLASS & ERRCLS_ADD_RES)
2081 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2082 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2083 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
2084 #endif /* ERRCLASS & ERRCLS_ADD_RES */
2088 if (cmUnpkPjUdxSduStaReqInfo(staReq, mBuf) != ROK) {
2089 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staReq, sizeof(UdxSduStaReqInfo));
2091 #if (ERRCLASS & ERRCLS_ADD_RES)
2092 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2093 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2094 (ErrVal)EUDX114, (ErrVal)0, "Packing failed");
2102 CMCHKUNPK(cmUnpkPtr,(PTR *) &staReq,mBuf);
2108 RETVALUE((*func)(pst, spId, staReq));
2113 PUBLIC S16 cmPkPjUdxSduStaCfm
2117 UdxSduStaCfmInfo * staCfm
2120 PUBLIC S16 cmPkPjUdxSduStaCfm(pst, suId, staCfm)
2123 UdxSduStaCfmInfo * staCfm;
2126 Buffer *mBuf = NULLP;
2127 TRC3(cmPkPjUdxSduStaCfm)
2129 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
2130 #if (ERRCLASS & ERRCLS_ADD_RES)
2131 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2132 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2133 (ErrVal)ECPJ115, (ErrVal)0, "Packing failed");
2135 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staCfm, sizeof(UdxSduStaCfmInfo));
2138 switch(pst->selector)
2145 if (cmPkPjUdxSduStaCfmInfo(pst, staCfm, mBuf) != ROK) {
2146 #if (ERRCLASS & ERRCLS_ADD_RES)
2147 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2148 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2149 (ErrVal)ECPJ116, (ErrVal)0, "Packing failed");
2151 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staCfm, sizeof(UdxSduStaCfmInfo));
2159 CMCHKPKLOG(cmPkPtr,(PTR)staCfm,mBuf,EUDXXXX,pst);
2165 if (SPkS16(suId, mBuf) != ROK) {
2166 #if (ERRCLASS & ERRCLS_ADD_RES)
2167 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2168 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2169 (ErrVal)ECPJ118, (ErrVal)0, "Packing failed");
2171 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staCfm, sizeof(UdxSduStaCfmInfo));
2176 /* Free Confirm Structure after packing */
2177 /*SPutSBuf(pst->region, pst->pool, (Data *)staCfm, sizeof(UdxSduStaCfmInfo));*/
2179 pst->event = (Event) EVTUDXSDUSTACFM;
2180 RETVALUE(SPstTsk(pst,mBuf));
2184 PUBLIC S16 cmUnpkPjUdxSduStaCfm
2191 PUBLIC S16 cmUnpkPjUdxSduStaCfm(func, pst, mBuf)
2199 UdxSduStaCfmInfo *staCfm;
2201 TRC3(cmUnpkPjUdxSduStaCfm)
2203 if (SUnpkS16(&suId, mBuf) != ROK) {
2205 #if (ERRCLASS & ERRCLS_ADD_RES)
2206 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2207 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2208 (ErrVal)ECPJ120, (ErrVal)0, "Packing failed");
2212 switch(pst->selector)
2217 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&staCfm,\
2218 sizeof(UdxSduStaCfmInfo))) != ROK)
2220 #if (ERRCLASS & ERRCLS_ADD_RES)
2221 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2222 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2223 (ErrVal)ECPJ040, (ErrVal)0, "SGetMsg() failed");
2224 #endif /* ERRCLASS & ERRCLS_ADD_RES */
2228 if (cmUnpkPjUdxSduStaCfmInfo(pst, staCfm, mBuf) != ROK) {
2229 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staCfm, sizeof(UdxSduStaCfmInfo));
2231 #if (ERRCLASS & ERRCLS_ADD_RES)
2232 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2233 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2234 (ErrVal)ECPJ122, (ErrVal)0, "Packing failed");
2243 CMCHKUNPK(cmUnpkPtr,(PTR *) &staCfm,mBuf);
2251 RETVALUE((*func)(pst, suId, staCfm));
2255 PUBLIC S16 cmPkPjUdxDatResumeCfm
2259 UdxDatResumeCfmInfo * datResumeCfm
2262 PUBLIC S16 cmPkPjUdxDatResumeCfm(pst, suId, datResumeCfm)
2265 UdxDatResumeCfmInfo * datResumeCfm;
2268 Buffer *mBuf = NULLP;
2269 TRC3(cmPkPjUdxDatResumeCfm)
2271 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
2272 #if (ERRCLASS & ERRCLS_ADD_RES)
2273 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2274 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2275 (ErrVal)ECPJ115, (ErrVal)0, "Packing failed");
2277 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, datResumeCfm, sizeof(UdxDatResumeCfmInfo));
2280 switch(pst->selector)
2285 if (cmPkPjUdxDatResumeCfmInfo(pst, datResumeCfm, mBuf) != ROK) {
2286 #if (ERRCLASS & ERRCLS_ADD_RES)
2287 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2288 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2289 (ErrVal)ECPJ116, (ErrVal)0, "Packing failed");
2291 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, datResumeCfm, sizeof(UdxDatResumeCfmInfo));
2299 CMCHKPKLOG(cmPkPtr,(PTR)datResumeCfm,mBuf,EUDXXXX,pst);
2305 if (SPkS16(suId, mBuf) != ROK) {
2306 #if (ERRCLASS & ERRCLS_ADD_RES)
2307 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2308 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2309 (ErrVal)ECPJ118, (ErrVal)0, "Packing failed");
2311 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, datResumeCfm, sizeof(UdxDatResumeCfmInfo));
2316 /* Free Confirm Structure after packing */
2317 /*SPutSBuf(pst->region, pst->pool, (Data *)datResumeCfm, sizeof(UdxSduStaCfmInfo));*/
2319 pst->event = (Event) EVTUDXDATRESUMECFM;
2320 RETVALUE(SPstTsk(pst,mBuf));
2325 * Fun: cmPkPjUdxDatForwardCfm
2334 PUBLIC S16 cmPkPjUdxDatForwardCfm
2338 UdxDatFwdCfmInfo * datFwdCfm
2341 PUBLIC S16 cmPkPjUdxDatForwardCfm(pst, suId, datFwdCfm)
2344 UdxDatFwdCfmInfo * datFwdCfm;
2348 Buffer *mBuf = NULLP;
2349 TRC3(cmPkPjUdxDatForwardCfm)
2351 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
2352 #if (ERRCLASS & ERRCLS_ADD_RES)
2353 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2354 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2355 (ErrVal)ECPJ115, (ErrVal)0, "Packing failed");
2357 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, datFwdCfm, sizeof(UdxDatFwdCfmInfo));
2361 switch(pst->selector)
2366 if (cmPkPjUdxDatForwardCfmInfo(pst, datFwdCfm, mBuf) != ROK) {
2367 #if (ERRCLASS & ERRCLS_ADD_RES)
2368 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2369 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2370 (ErrVal)ECPJ116, (ErrVal)0, "Packing failed");
2372 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, datFwdCfm, sizeof(UdxDatFwdCfmInfo));
2380 CMCHKPKLOG(cmPkPtr,(PTR)datFwdCfm,mBuf,EUDXXXX,pst);
2386 if (SPkS16(suId, mBuf) != ROK) {
2387 #if (ERRCLASS & ERRCLS_ADD_RES)
2388 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2389 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2390 (ErrVal)ECPJ118, (ErrVal)0, "Packing failed");
2392 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, datFwdCfm, sizeof(UdxDatFwdCfmInfo));
2397 /* Free Confirm Structure after packing */
2398 /*SPutSBuf(pst->region, pst->pool, (Data *)datFwdCfm, sizeof(UdxDatFwdCfmInfo));*/
2400 pst->event = (Event) EVTUDXDATFRWDCFM;
2401 RETVALUE(SPstTsk(pst,mBuf));
2405 PUBLIC S16 cmUnpkPjUdxDatResumeCfm
2407 UdxDatResumeCfm func,
2412 PUBLIC S16 cmUnpkPjUdxDatResumeCfm(func, pst, mBuf)
2413 UdxDatResumeCfm func;
2420 UdxDatResumeCfmInfo *datResumeCfm = NULLP;
2422 TRC3(cmUnpkPjUdxDatResumeCfm)
2424 RLOG0(L_DEBUG," Unpacking UdxDatResumeCfm");
2425 if (SUnpkS16(&suId, mBuf) != ROK) {
2427 #if (ERRCLASS & ERRCLS_ADD_RES)
2428 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2429 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2430 (ErrVal)ECPJ120, (ErrVal)0, "Packing failed");
2434 switch(pst->selector)
2439 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&datResumeCfm,\
2440 sizeof(UdxDatResumeCfmInfo))) != ROK)
2442 #if (ERRCLASS & ERRCLS_ADD_RES)
2443 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2444 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2445 (ErrVal)ECPJ040, (ErrVal)0, "SGetMsg() failed");
2446 #endif /* ERRCLASS & ERRCLS_ADD_RES */
2450 if (cmUnpkPjUdxDatResumeCfmInfo(pst, datResumeCfm, mBuf) != ROK) {
2451 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, datResumeCfm, sizeof(UdxDatResumeCfmInfo));
2453 #if (ERRCLASS & ERRCLS_ADD_RES)
2454 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2455 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2456 (ErrVal)ECPJ122, (ErrVal)0, "Packing failed");
2465 CMCHKUNPK(cmUnpkPtr,(PTR *) &datResumeCfm,mBuf);
2473 RETVALUE((*func)(pst, suId, datResumeCfm));
2477 PUBLIC S16 cmUnpkPjUdxDatForwardCfm
2479 UdxDatForwardCfm func,
2484 PUBLIC S16 cmUnpkPjUdxDatForwardCfm(func, pst, mBuf)
2485 UdxDatForwardCfm func;
2492 UdxDatFwdCfmInfo *datFwdCfm;
2494 TRC3(cmUnpkPjUdxDatForwardCfm)
2496 if (SUnpkS16(&suId, mBuf) != ROK) {
2498 #if (ERRCLASS & ERRCLS_ADD_RES)
2499 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2500 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2501 (ErrVal)ECPJ120, (ErrVal)0, "Packing failed");
2505 switch(pst->selector)
2510 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&datFwdCfm,\
2511 sizeof(UdxDatFwdCfmInfo))) != ROK)
2513 #if (ERRCLASS & ERRCLS_ADD_RES)
2514 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2515 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2516 (ErrVal)ECPJ040, (ErrVal)0, "SGetMsg() failed");
2517 #endif /* ERRCLASS & ERRCLS_ADD_RES */
2521 if (cmUnpkPjUdxDatForwardCfmInfo(pst, datFwdCfm, mBuf) != ROK) {
2522 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, datFwdCfm, sizeof(UdxDatFwdCfmInfo));
2524 #if (ERRCLASS & ERRCLS_ADD_RES)
2525 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
2526 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
2527 (ErrVal)ECPJ122, (ErrVal)0, "Packing failed");
2536 CMCHKUNPK(cmUnpkPtr,(PTR *) &datFwdCfm,mBuf);
2543 RETVALUE((*func)(pst, suId, datFwdCfm));
2548 /***********************************************************
2550 * Func : cmPkPjUdxRlcAm
2553 * Desc : * RLC parameter information in AM mode.
2562 **********************************************************/
2564 PUBLIC S16 cmPkPjUdxRlcAm
2570 PUBLIC S16 cmPkPjUdxRlcAm(param, mBuf)
2576 TRC3(cmPkPjUdxRlcAm)
2578 CMCHKPK(SPkU8, param->statusRepReqd, mBuf);
2584 /***********************************************************
2586 * Func : cmUnpkPjUdxRlcAm
2589 * Desc : * RLC parameter information in AM mode.
2598 **********************************************************/
2600 PUBLIC S16 cmUnpkPjUdxRlcAm
2606 PUBLIC S16 cmUnpkPjUdxRlcAm(param, mBuf)
2612 TRC3(cmUnpkPjUdxRlcAm)
2614 CMCHKUNPK(SUnpkU8, ¶m->statusRepReqd, mBuf);
2620 /***********************************************************
2622 * Func : cmPkPjUdxRlcUm
2625 * Desc : * RLC parameter information in UM mode.
2634 **********************************************************/
2636 PUBLIC S16 cmPkPjUdxRlcUm
2642 PUBLIC S16 cmPkPjUdxRlcUm(param, mBuf)
2648 TRC3(cmPkPjUdxRlcUm)
2650 CMCHKPK(SPkU8, param->pdcpSNSize, mBuf);
2656 /***********************************************************
2658 * Func : cmUnpkPjUdxRlcUm
2661 * Desc : * RLC parameter information in UM mode.
2670 **********************************************************/
2672 PUBLIC S16 cmUnpkPjUdxRlcUm
2678 PUBLIC S16 cmUnpkPjUdxRlcUm(param, mBuf)
2684 TRC3(cmUnpkPjUdxRlcUm)
2686 CMCHKUNPK(SUnpkU8, ¶m->pdcpSNSize, mBuf);
2692 /***********************************************************
2694 * Func : cmPkPjUdxRlcInfo
2697 * Desc : * Mapped RLC entity information in RLC for the PDCP entity
2706 **********************************************************/
2708 PUBLIC S16 cmPkPjUdxRlcInfo
2714 PUBLIC S16 cmPkPjUdxRlcInfo(param, mBuf)
2720 TRC3(cmPkPjUdxRlcInfo)
2722 switch(param->mode) {
2723 case CM_LTE_MODE_UM:
2724 CMCHKPK(cmPkPjUdxRlcUm, ¶m->m.rlcUm, mBuf);
2726 case CM_LTE_MODE_AM:
2727 CMCHKPK(cmPkPjUdxRlcAm, ¶m->m.rlcAm, mBuf);
2732 CMCHKPK(SPkU8, param->mode, mBuf);
2733 CMCHKPK(SPkU8, param->dir, mBuf);
2739 /***********************************************************
2741 * Func : cmUnpkPjUdxRlcInfo
2744 * Desc : * Mapped RLC entity information in RLC for the PDCP entity
2753 **********************************************************/
2755 PUBLIC S16 cmUnpkPjUdxRlcInfo
2761 PUBLIC S16 cmUnpkPjUdxRlcInfo(param, mBuf)
2767 TRC3(cmUnpkPjUdxRlcInfo)
2769 CMCHKUNPK(SUnpkU8, ¶m->dir, mBuf);
2770 CMCHKUNPK(SUnpkU8, ¶m->mode, mBuf);
2771 switch(param->mode) {
2772 case CM_LTE_MODE_AM:
2773 CMCHKUNPK(cmUnpkPjUdxRlcAm, ¶m->m.rlcAm, mBuf);
2775 case CM_LTE_MODE_UM:
2776 CMCHKUNPK(cmUnpkPjUdxRlcUm, ¶m->m.rlcUm, mBuf);
2786 /***********************************************************
2788 * Func : cmPkPjUdxCipherInfo
2791 * Desc : * Ciphering information to be configured per UE in PDCP.
2800 **********************************************************/
2802 PUBLIC S16 cmPkPjUdxCipherInfo
2804 UdxCipherInfo *param,
2808 PUBLIC S16 cmPkPjUdxCipherInfo(param, mBuf)
2809 UdxCipherInfo *param;
2815 TRC3(cmPkPjUdxCipherInfo)
2817 CMCHKPK(SPkU8, param->algoType, mBuf);
2818 for (i=UDX_CIPHER_KEY_LEN-1; i >= 0; i--) {
2819 CMCHKPK(SPkU8, param->usrplnKey[i], mBuf);
2821 for (i=UDX_CIPHER_KEY_LEN-1; i >= 0; i--) {
2822 CMCHKPK(SPkU8, param->ctrlplnKey[i], mBuf);
2829 /***********************************************************
2831 * Func : cmUnpkPjUdxCipherInfo
2834 * Desc : * Ciphering information to be configured per UE in PDCP.
2843 **********************************************************/
2845 PUBLIC S16 cmUnpkPjUdxCipherInfo
2847 UdxCipherInfo *param,
2851 PUBLIC S16 cmUnpkPjUdxCipherInfo(param, mBuf)
2852 UdxCipherInfo *param;
2858 TRC3(cmUnpkPjUdxCipherInfo)
2860 for (i=0; i<UDX_CIPHER_KEY_LEN; i++) {
2861 CMCHKUNPK(SUnpkU8, ¶m->ctrlplnKey[i], mBuf);
2863 for (i=0; i<UDX_CIPHER_KEY_LEN; i++) {
2864 CMCHKUNPK(SUnpkU8, ¶m->usrplnKey[i], mBuf);
2866 CMCHKUNPK(SUnpkU8, ¶m->algoType, mBuf);
2872 /***********************************************************
2874 * Func : cmPkPjUdxIntegInfo
2877 * Desc : * Integrity protection paramater information.
2886 **********************************************************/
2888 PUBLIC S16 cmPkPjUdxIntegInfo
2890 UdxIntegInfo *param,
2894 PUBLIC S16 cmPkPjUdxIntegInfo(param, mBuf)
2895 UdxIntegInfo *param;
2901 TRC3(cmPkPjUdxIntegInfo)
2903 for (i=UDX_INTG_KEY_LEN-1; i >= 0; i--) {
2904 CMCHKPK(SPkU8, param->intKey[i], mBuf);
2906 CMCHKPK(SPkU8, param->algoType, mBuf);
2912 /***********************************************************
2914 * Func : cmUnpkPjUdxIntegInfo
2917 * Desc : * Integrity protection paramater information.
2926 **********************************************************/
2928 PUBLIC S16 cmUnpkPjUdxIntegInfo
2930 UdxIntegInfo *param,
2934 PUBLIC S16 cmUnpkPjUdxIntegInfo(param, mBuf)
2935 UdxIntegInfo *param;
2941 TRC3(cmUnpkPjUdxIntegInfo)
2943 CMCHKUNPK(SUnpkU8, ¶m->algoType, mBuf);
2944 for (i=0; i<UDX_INTG_KEY_LEN; i++) {
2945 CMCHKUNPK(SUnpkU8, ¶m->intKey[i], mBuf);
2951 /***********************************************************
2953 * Func : cmPkPjUdxSecCfg
2956 * Desc : * PDCP Security configuration parameter.
2965 **********************************************************/
2967 PUBLIC S16 cmPkPjUdxSecCfg
2973 PUBLIC S16 cmPkPjUdxSecCfg(param, mBuf)
2979 TRC3(cmPkPjUdxSecCfg)
2981 CMCHKPK(cmPkPjUdxCipherInfo, ¶m->cipherInfo, mBuf);
2982 CMCHKPK(cmPkPjUdxIntegInfo, ¶m->integInfo, mBuf);
2983 CMCHKPK(SPkU8, param->selSecAct, mBuf);
2984 CMCHKPK(SPkU8, param->isHo, mBuf);
2990 /***********************************************************
2992 * Func : cmUnpkPjUdxSecCfg
2995 * Desc : * PDCP Security configuration parameter.
3004 **********************************************************/
3006 PUBLIC S16 cmUnpkPjUdxSecCfg
3012 PUBLIC S16 cmUnpkPjUdxSecCfg(param, mBuf)
3018 TRC3(cmUnpkPjUdxSecCfg)
3020 CMCHKUNPK(SUnpkU8, ¶m->isHo, mBuf);
3021 CMCHKUNPK(SUnpkU8, ¶m->selSecAct, mBuf);
3022 CMCHKUNPK(cmUnpkPjUdxIntegInfo, ¶m->integInfo, mBuf);
3023 CMCHKUNPK(cmUnpkPjUdxCipherInfo, ¶m->cipherInfo, mBuf);
3028 /***********************************************************
3030 * Func : cmPkPjUdxRohcInfo
3033 * Desc : * ROHC compression protocol information structure.
3042 **********************************************************/
3044 PUBLIC S16 cmPkPjUdxRohcInfo
3050 PUBLIC S16 cmPkPjUdxRohcInfo(param, mBuf)
3057 TRC3(cmPkPjUdxRohcInfo)
3059 for (i=UDX_MAX_ROHC_PROF_LIST-1; i >= 0; i--) {
3060 CMCHKPK(SPkU8, param->profLst[i], mBuf);
3062 CMCHKPK(SPkU16, param->maxCid, mBuf);
3068 /***********************************************************
3070 * Func : cmUnpkPjUdxRohcInfo
3073 * Desc : * ROHC compression protocol information structure.
3082 **********************************************************/
3084 PUBLIC S16 cmUnpkPjUdxRohcInfo
3090 PUBLIC S16 cmUnpkPjUdxRohcInfo(param, mBuf)
3097 TRC3(cmUnpkPjUdxRohcInfo)
3099 CMCHKUNPK(SUnpkU16, ¶m->maxCid, mBuf);
3100 for (i=0; i<UDX_MAX_ROHC_PROF_LIST; i++) {
3101 CMCHKUNPK(SUnpkU8, ¶m->profLst[i], mBuf);
3108 /***********************************************************
3110 * Func : cmPkPjUdxHdrCompCfg
3113 * Desc : * ROHC configuration information for PDCP entity.
3122 **********************************************************/
3124 PUBLIC S16 cmPkPjUdxHdrCompCfg
3126 UdxHdrCompCfg *param,
3130 PUBLIC S16 cmPkPjUdxHdrCompCfg(param, mBuf)
3131 UdxHdrCompCfg *param;
3136 TRC3(cmPkPjUdxHdrCompCfg)
3138 CMCHKPK(cmPkPjUdxRohcInfo, ¶m->rohcInfo, mBuf);
3139 CMCHKPK(SPkU8, param->hdrCompUsed, mBuf);
3145 /***********************************************************
3147 * Func : cmUnpkPjUdxHdrCompCfg
3150 * Desc : * ROHC configuration information for PDCP entity.
3159 **********************************************************/
3161 PUBLIC S16 cmUnpkPjUdxHdrCompCfg
3163 UdxHdrCompCfg *param,
3167 PUBLIC S16 cmUnpkPjUdxHdrCompCfg(param, mBuf)
3168 UdxHdrCompCfg *param;
3173 TRC3(cmUnpkPjUdxHdrCompCfg)
3175 CMCHKUNPK(SUnpkU8, ¶m->hdrCompUsed, mBuf);
3176 CMCHKUNPK(cmUnpkPjUdxRohcInfo, ¶m->rohcInfo, mBuf);
3182 /***********************************************************
3184 * Func : cmPkPjUdxHoInfo
3187 * Desc : * Handover Information for RB.
3196 **********************************************************/
3198 PUBLIC S16 cmPkPjUdxHoInfo
3205 PUBLIC S16 cmPkPjUdxHoInfo(pst, param, mBuf)
3213 TRC3(cmPkPjUdxHoInfo)
3215 if (param->numBits % 8 == 0)
3216 cnt = param->numBits/8;
3218 cnt = param->numBits/8 + 1;
3220 for (idx = cnt-1; idx >= 0; idx--)
3222 CMCHKPK(SPkU8, param->ulBitMap[idx], mBuf);
3225 /* Free ulBitMap after packing */
3227 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, param->ulBitMap, cnt * sizeof(U8));
3229 CMCHKPK(SPkU16, param->numBits, mBuf);
3230 CMCHKPK(SPkU32, param->ulCount, mBuf);
3231 CMCHKPK(SPkU32, param->dlCount, mBuf);
3232 CMCHKPK(SPkU8, param->isHoPres, mBuf);
3238 /***********************************************************
3240 * Func : cmUnpkPjUdxHoInfo
3243 * Desc : * Handover Information for RB.
3252 **********************************************************/
3254 PUBLIC S16 cmUnpkPjUdxHoInfo
3261 PUBLIC S16 cmUnpkPjUdxHoInfo(pst, param, mBuf)
3270 TRC3(cmUnpkPjUdxHoInfo)
3272 CMCHKUNPK(SUnpkU8, ¶m->isHoPres, mBuf);
3273 CMCHKUNPK(SUnpkU32, ¶m->dlCount, mBuf);
3274 CMCHKUNPK(SUnpkU32, ¶m->ulCount, mBuf);
3275 CMCHKUNPK(SUnpkU16, ¶m->numBits, mBuf);
3277 if (param->numBits % 8 == 0)
3278 cnt = param->numBits/8;
3280 cnt = param->numBits/8 + 1;
3282 if(cnt && (ret1 = SGetStaticBuffer(pst->region, pst->pool, (Data **)¶m->ulBitMap,\
3283 cnt * sizeof(U8), 0)) != ROK)
3285 #if (ERRCLASS & ERRCLS_ADD_RES)
3286 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
3287 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
3288 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
3289 #endif /* ERRCLASS & ERRCLS_ADD_RES */
3294 param->ulBitMap = NULLP;
3296 for (idx = 0; idx < cnt; idx++)
3298 CMCHKUNPK(SUnpkU8, ¶m->ulBitMap[idx], mBuf);
3306 /***********************************************************
3308 * Func : cmPkPjUdxCfgEnt
3311 * Desc : * Configuration structure for PDCP entity.
3320 **********************************************************/
3322 PUBLIC S16 cmPkPjUdxCfgEnt
3329 PUBLIC S16 cmPkPjUdxCfgEnt(pst, param, mBuf)
3335 TRC3(cmPkPjUdxCfgEnt)
3337 switch(param->cfgType) {
3338 case UDX_CFG_MODIFY:
3339 if (cmPkPjUdxModCfgEnt(pst, ¶m->m.modCfg, mBuf) != ROK)
3343 CMCHKPK(cmPkPjUdxAddCfgEnt, ¶m->m.addCfg, mBuf);
3346 CMCHKPK(SPkU8, param->cfgType, mBuf);
3347 CMCHKPK(SPkU8, param->rbType, mBuf);
3348 CMCHKPK(SPkU8, param->rbId, mBuf);
3354 /***********************************************************
3356 * Func : cmUnpkPjUdxCfgEnt
3359 * Desc : * Configuration structure for PDCP entity.
3368 **********************************************************/
3370 PUBLIC S16 cmUnpkPjUdxCfgEnt
3377 PUBLIC S16 cmUnpkPjUdxCfgEnt(pst, param, mBuf)
3383 TRC3(cmUnpkPjUdxCfgEnt)
3385 CMCHKUNPK(SUnpkU8, ¶m->rbId, mBuf);
3386 CMCHKUNPK(SUnpkU8, ¶m->rbType, mBuf);
3387 CMCHKUNPK(SUnpkU8, ¶m->cfgType, mBuf);
3388 switch(param->cfgType) {
3390 CMCHKUNPK(cmUnpkPjUdxAddCfgEnt, ¶m->m.addCfg, mBuf);
3392 case UDX_CFG_MODIFY:
3393 if (cmUnpkPjUdxModCfgEnt(pst, ¶m->m.modCfg, mBuf) != ROK)
3402 PUBLIC S16 cmPkPjUdxAddCfgEnt
3404 UdxAddCfgEnt *param,
3408 PUBLIC S16 cmPkPjUdxAddCfgEnt(param, mBuf)
3409 UdxAddCfgEnt *param;
3414 TRC3(cmPkPjUdxAddCfgEnt)
3416 CMCHKPK(cmPkPjUdxHdrCompCfg, ¶m->hdrCompCfg, mBuf);
3417 CMCHKPK(SPkS16, param->discardTmr, mBuf);
3418 CMCHKPK(cmPkPjUdxRlcInfo, ¶m->rlcInfo, mBuf);
3419 /* cpj_c_001.main_4 added support for L2 Measurement */
3421 CMCHKPK(SPkU8, param->qci, mBuf);
3422 #endif /* LTE_L2_MEAS */
3423 CMCHKPK(SPkU8, param->cfmReqd, mBuf);
3424 CMCHKPK(SPkU8, param->discReqd, mBuf);
3430 PUBLIC S16 cmUnpkPjUdxAddCfgEnt
3432 UdxAddCfgEnt *param,
3436 PUBLIC S16 cmUnpkPjUdxAddCfgEnt(param, mBuf)
3437 UdxAddCfgEnt *param;
3442 TRC3(cmUnpkPjUdxAddCfgEnt)
3444 CMCHKUNPK(SUnpkU8, ¶m->discReqd, mBuf);
3445 CMCHKUNPK(SUnpkU8, ¶m->cfmReqd, mBuf);
3446 /* cpj_c_001.main_4 added support for L2 Measurement */
3448 CMCHKUNPK(SUnpkU8, ¶m->qci, mBuf);
3449 #endif /* LTE_L2_MEAS */
3450 CMCHKUNPK(cmUnpkPjUdxRlcInfo, ¶m->rlcInfo, mBuf);
3451 CMCHKUNPK(SUnpkS16, ¶m->discardTmr, mBuf);
3452 CMCHKUNPK(cmUnpkPjUdxHdrCompCfg, ¶m->hdrCompCfg, mBuf);
3458 PUBLIC S16 cmPkPjUdxModCfgEnt
3461 UdxModCfgEnt *param,
3465 PUBLIC S16 cmPkPjUdxModCfgEnt(pst, param, mBuf)
3467 UdxModCfgEnt *param;
3471 TRC3(cmPkPjUdxModCfgEnt)
3473 if (cmPkPjUdxHoInfo(pst, ¶m->hoInfo, mBuf) != ROK)
3475 CMCHKPK(cmPkPjUdxHdrCompCfg, ¶m->hdrCompCfg, mBuf);
3476 CMCHKPK(SPkU8, param->cfmReqd, mBuf);
3477 CMCHKPK(SPkU8, param->discReqd, mBuf);
3478 CMCHKPK(SPkU8, param->bitFlag, mBuf);
3484 PUBLIC S16 cmUnpkPjUdxModCfgEnt
3487 UdxModCfgEnt *param,
3491 PUBLIC S16 cmUnpkPjUdxModCfgEnt(pst, param, mBuf)
3493 UdxModCfgEnt *param;
3497 TRC3(cmUnpkPjUdxModCfgEnt)
3499 CMCHKUNPK(SUnpkU8, ¶m->bitFlag, mBuf);
3500 CMCHKUNPK(SUnpkU8, ¶m->discReqd, mBuf);
3501 CMCHKUNPK(SUnpkU8, ¶m->cfmReqd, mBuf);
3502 CMCHKUNPK(cmUnpkPjUdxHdrCompCfg, ¶m->hdrCompCfg, mBuf);
3503 if (cmUnpkPjUdxHoInfo(pst, ¶m->hoInfo, mBuf) != ROK)
3509 /***********************************************************
3511 * Func : cmPkPjUdxCfgReqInfo
3514 * Desc : * PDCP Configuration structure. Parameters are filled by RRC
3515 layer while configuring the PDCP layer.
3524 **********************************************************/
3526 PUBLIC S16 cmPkPjUdxCfgReqInfo
3529 UdxCfgReqInfo *param,
3533 PUBLIC S16 cmPkPjUdxCfgReqInfo(pst, param, mBuf)
3535 UdxCfgReqInfo *param;
3541 TRC3(cmPkPjUdxCfgReqInfo)
3543 for (i=param->numEnt-1; i >= 0; i--) {
3544 if (cmPkPjUdxCfgEnt(pst, ¶m->cfgEnt[i], mBuf) != ROK)
3547 #ifdef TENB_MULT_CELL_SUPPRT
3548 CMCHKPK(SPkS16, param->rlcDlSapId, mBuf);
3549 CMCHKPK(SPkS16, param->rlcUlSapId, mBuf);
3552 CMCHKPK(SPkU8, param->numEnt, mBuf);
3553 CMCHKPK(SPkU32, param->transId, mBuf);
3554 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
3555 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
3561 * Fun: cmPkPjUdxUlStaRepInfo
3563 * Desc: pack the structure UdxUlStaRepInfo
3573 PUBLIC S16 cmPkPjUdxUlStaRepInfo
3575 UdxUlStaRepInfo *param,
3580 PUBLIC S16 cmPkPjUdxUlStaRepInfo(param, pst, mBuf)
3581 UdxUlStaRepInfo *param;
3587 TRC3(cmPkPjUdxUlStaRepInfo)
3589 CMCHKPK(SPkU8, param->pdcpId.rbType, mBuf);
3590 CMCHKPK(cmPkLteRbId, param->pdcpId.rbId, mBuf);
3591 CMCHKPK(cmPkLteRnti, param->pdcpId.ueId, mBuf);
3592 CMCHKPK(cmPkLteCellId, param->pdcpId.cellId, mBuf);
3594 if (SFndLenMsg(param->sta, &msgLen) != ROK)
3596 if (SCatMsg(mBuf, param->sta, M1M2) != ROK)
3599 CMCHKPK(SPkS16, msgLen, mBuf);
3602 } /* cmPkPjUdxUlStaRepInfo */
3605 PUBLIC S16 cmUnpkPjUdxUlStaRepInfo
3608 UdxUlStaRepInfo *param,
3612 PUBLIC S16 cmUnpkPjUdxUlStaRepInfo(pst, param, mBuf)
3614 UdxUlStaRepInfo *param;
3621 TRC3(cmUnpkPjUdxUlStaRepInfo);
3623 CMCHKUNPK(SUnpkU8, ¶m->pdcpId.rbType, mBuf);
3624 CMCHKUNPK(cmUnpkLteRbId, ¶m->pdcpId.rbId, mBuf);
3625 CMCHKUNPK(cmUnpkLteRnti, ¶m->pdcpId.ueId, mBuf);
3626 CMCHKUNPK(cmUnpkLteCellId, ¶m->pdcpId.cellId, mBuf);
3628 if (SFndLenMsg(mBuf, &totalMsgLen) != ROK)
3631 if (SSegMsg(mBuf, totalMsgLen-msgLen, ¶m->sta) != ROK)
3638 PUBLIC S16 cmUnpkPjUdxUlFdbkPktInfo
3641 UdxUlFdbkPktInfo *param,
3645 PUBLIC S16 cmUnpkPjUdxUlFdbkPktInfo(pst, param, mBuf)
3647 UdxUlFdbkPktInfo *param;
3654 TRC3(cmUnpkPjUdxUlFdbkPktInfo);
3656 CMCHKUNPK(SUnpkU8, ¶m->pdcpId.rbType, mBuf);
3657 CMCHKUNPK(cmUnpkLteRbId, ¶m->pdcpId.rbId, mBuf);
3658 CMCHKUNPK(cmUnpkLteRnti, ¶m->pdcpId.ueId, mBuf);
3659 CMCHKUNPK(cmUnpkLteCellId, ¶m->pdcpId.cellId, mBuf);
3661 if (SFndLenMsg(mBuf, &totalMsgLen) != ROK)
3664 if (SSegMsg(mBuf, totalMsgLen-msgLen, ¶m->fbPkt) != ROK)
3671 PUBLIC S16 cmUnpkPjUdxDlFdbkPktInfo
3674 UdxDlFdbkPktInfo *param,
3678 PUBLIC S16 cmUnpkPjUdxDlFdbkPktInfo(pst, param, mBuf)
3680 UdxDlFdbkPktInfo *param;
3687 TRC3(cmUnpkPjUdxDlFdbkPktInfo);
3689 CMCHKUNPK(SUnpkU8, ¶m->pdcpId.rbType, mBuf);
3690 CMCHKUNPK(cmUnpkLteRbId, ¶m->pdcpId.rbId, mBuf);
3691 CMCHKUNPK(cmUnpkLteRnti, ¶m->pdcpId.ueId, mBuf);
3692 CMCHKUNPK(cmUnpkLteCellId, ¶m->pdcpId.cellId, mBuf);
3694 if (SFndLenMsg(mBuf, &totalMsgLen) != ROK)
3697 if (SSegMsg(mBuf, totalMsgLen-msgLen, ¶m->fbPkt) != ROK)
3705 * Fun: cmPkPjUdxDlStaRepInfo
3707 * Desc: pack the structure UdxDlStaRepInfo
3717 PUBLIC S16 cmPkPjUdxDlStaRepInfo
3719 UdxDlStaRepInfo *param,
3724 PUBLIC S16 cmPkPjUdxDlStaRepInfo(param, pst, mBuf)
3725 UdxDlStaRepInfo *param;
3731 TRC3(cmPkPjUdxDlStaRepInfo)
3733 CMCHKPK(SPkU8, param->pdcpId.rbType, mBuf);
3734 CMCHKPK(cmPkLteRbId, param->pdcpId.rbId, mBuf);
3735 CMCHKPK(cmPkLteRnti, param->pdcpId.ueId, mBuf);
3736 CMCHKPK(cmPkLteCellId, param->pdcpId.cellId, mBuf);
3737 CMCHKPK(SPkU32, param->fmc, mBuf);
3739 if (SFndLenMsg(param->staPdu, &msgLen) != ROK)
3741 if (SCatMsg(mBuf, param->staPdu, M1M2) != ROK)
3744 CMCHKPK(SPkS16, msgLen, mBuf);
3747 } /* cmPkPjUdxUlStaRepInfo */
3750 PUBLIC S16 cmUnpkPjUdxDlStaRepInfo
3753 UdxDlStaRepInfo *param,
3757 PUBLIC S16 cmUnpkPjUdxDlStaRepInfo(pst, param, mBuf)
3759 UdxDlStaRepInfo *param;
3766 TRC3(cmUnpkPjUdxDlStaRepInfo);
3768 CMCHKUNPK(SUnpkU8, ¶m->pdcpId.rbType, mBuf);
3769 CMCHKUNPK(cmUnpkLteRbId, ¶m->pdcpId.rbId, mBuf);
3770 CMCHKUNPK(cmUnpkLteRnti, ¶m->pdcpId.ueId, mBuf);
3771 CMCHKUNPK(cmUnpkLteCellId, ¶m->pdcpId.cellId, mBuf);
3772 CMCHKUNPK(SUnpkU32, ¶m->fmc, mBuf);
3774 if (SFndLenMsg(mBuf, &totalMsgLen) != ROK)
3777 if (SSegMsg(mBuf, totalMsgLen-msgLen, ¶m->staPdu) != ROK)
3785 /***********************************************************
3787 * Func : cmUnpkPjUdxCfgReqInfo
3790 * Desc : * PDCP Configuration structure. Parameters are filled by RRC
3791 layer while configuring the PDCP layer.
3800 **********************************************************/
3802 PUBLIC S16 cmUnpkPjUdxCfgReqInfo
3805 UdxCfgReqInfo *param,
3809 PUBLIC S16 cmUnpkPjUdxCfgReqInfo(pst, param, mBuf)
3811 UdxCfgReqInfo *param;
3817 TRC3(cmUnpkPjUdxCfgReqInfo)
3819 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
3820 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
3821 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
3822 CMCHKUNPK(SUnpkU8, ¶m->numEnt, mBuf);
3823 #ifdef TENB_MULT_CELL_SUPPRT
3824 CMCHKUNPK(SUnpkS16, ¶m->rlcUlSapId, mBuf);
3825 CMCHKUNPK(SUnpkS16, ¶m->rlcDlSapId, mBuf);
3827 for (i=0; i<param->numEnt; i++) {
3828 if (cmUnpkPjUdxCfgEnt(pst, ¶m->cfgEnt[i], mBuf) != ROK)
3835 /***********************************************************
3837 * Func : cmPkPjUdxCfmEnt
3840 * Desc : * PDCP confirm parameter structure for PDCP entity.
3849 **********************************************************/
3851 PUBLIC S16 cmPkPjUdxCfmEnt
3857 PUBLIC S16 cmPkPjUdxCfmEnt(param, mBuf)
3863 TRC3(cmPkPjUdxCfmEnt)
3865 CMCHKPK(SPkS16, param->reason, mBuf);
3866 CMCHKPK(SPkS16, param->status, mBuf);
3867 CMCHKPK(SPkU8, param->rbType, mBuf);
3868 CMCHKPK(SPkU8, param->rbId, mBuf);
3874 /***********************************************************
3876 * Func : cmUnpkPjUdxCfmEnt
3879 * Desc : * PDCP confirm parameter structure for PDCP entity.
3888 **********************************************************/
3890 PUBLIC S16 cmUnpkPjUdxCfmEnt
3896 PUBLIC S16 cmUnpkPjUdxCfmEnt(param, mBuf)
3902 TRC3(cmUnpkPjUdxCfmEnt)
3904 CMCHKUNPK(SUnpkU8, ¶m->rbId, mBuf);
3905 CMCHKUNPK(SUnpkU8, ¶m->rbType, mBuf);
3906 CMCHKUNPK(SUnpkS16, ¶m->status, mBuf);
3907 CMCHKUNPK(SUnpkS16, ¶m->reason, mBuf);
3913 /***********************************************************
3915 * Func : cmPkPjUdxCfgCfmInfo
3918 * Desc : * PDCP configuration confirm structure.
3927 **********************************************************/
3929 PUBLIC S16 cmPkPjUdxCfgCfmInfo
3931 UdxCfgCfmInfo *param,
3935 PUBLIC S16 cmPkPjUdxCfgCfmInfo(param, mBuf)
3936 UdxCfgCfmInfo *param;
3942 TRC3(cmPkPjUdxCfgCfmInfo)
3944 for (i=param->numEnt-1; i >= 0; i--) {
3945 CMCHKPK(cmPkPjUdxCfmEnt, ¶m->cfmEnt[i], mBuf);
3947 CMCHKPK(SPkU8, param->numEnt, mBuf);
3948 CMCHKPK(SPkU32, param->transId, mBuf);
3949 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
3950 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
3956 /***********************************************************
3958 * Func : cmUnpkPjUdxCfgCfmInfo
3961 * Desc : * PDCP configuration confirm structure.
3970 **********************************************************/
3972 PUBLIC S16 cmUnpkPjUdxCfgCfmInfo
3974 UdxCfgCfmInfo *param,
3978 PUBLIC S16 cmUnpkPjUdxCfgCfmInfo(param, mBuf)
3979 UdxCfgCfmInfo *param;
3985 TRC3(cmUnpkPjUdxCfgCfmInfo)
3987 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
3988 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
3989 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
3990 CMCHKUNPK(SUnpkU8, ¶m->numEnt, mBuf);
3991 for (i=0; i<param->numEnt; i++) {
3992 CMCHKUNPK(cmUnpkPjUdxCfmEnt, ¶m->cfmEnt[i], mBuf);
3998 /***********************************************************
4000 * Func : cmPkPjUdxReEstReqInfo
4003 * Desc : * Reestabishment request structure for SRB1 of an UE.
4012 **********************************************************/
4014 PUBLIC S16 cmPkPjUdxReEstReqInfo
4016 UdxReEstReqInfo *param,
4020 PUBLIC S16 cmPkPjUdxReEstReqInfo(param, mBuf)
4021 UdxReEstReqInfo *param;
4027 TRC3(cmPkPjUdxReEstReqInfo)
4029 for (i=UDX_CIPHER_KEY_LEN-1; i >= 0; i--) {
4030 CMCHKPK(SPkU8, param->usrplnKey[i], mBuf);
4032 for (i=UDX_CIPHER_KEY_LEN-1; i >= 0; i--) {
4033 CMCHKPK(SPkU8, param->ctrlplnKey[i], mBuf);
4035 for (i=UDX_INTG_KEY_LEN-1; i >= 0; i--) {
4036 CMCHKPK(SPkU8, param->intKey[i], mBuf);
4038 CMCHKPK(SPkU32, param->transId, mBuf);
4040 CMCHKPK(cmPkLtePdcpId, ¶m->pdcpId, mBuf);
4046 /***********************************************************
4048 * Func : cmUnpkPjUdxReEstReqInfo
4051 * Desc : * Reestabishment request structure for SRB1 of an UE.
4060 **********************************************************/
4062 PUBLIC S16 cmUnpkPjUdxReEstReqInfo
4064 UdxReEstReqInfo *param,
4068 PUBLIC S16 cmUnpkPjUdxReEstReqInfo(param, mBuf)
4069 UdxReEstReqInfo *param;
4075 TRC3(cmUnpkPjUdxReEstReqInfo)
4077 CMCHKUNPK(cmUnpkLtePdcpId, ¶m->pdcpId, mBuf);
4078 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
4079 for (i=0; i<UDX_INTG_KEY_LEN; i++) {
4080 CMCHKUNPK(SUnpkU8, ¶m->intKey[i], mBuf);
4082 for (i=0; i<UDX_CIPHER_KEY_LEN; i++) {
4083 CMCHKUNPK(SUnpkU8, ¶m->ctrlplnKey[i], mBuf);
4085 for (i=0; i<UDX_CIPHER_KEY_LEN; i++) {
4086 CMCHKUNPK(SUnpkU8, ¶m->usrplnKey[i], mBuf);
4092 /***********************************************************
4094 * Func : cmPkPjUdxReEstCfmInfo
4097 * Desc : * Reestablishment confirmation structure for an UE.
4106 **********************************************************/
4108 PUBLIC S16 cmPkPjUdxReEstCfmInfo
4110 UdxReEstCfmInfo *param,
4114 PUBLIC S16 cmPkPjUdxReEstCfmInfo(param, mBuf)
4115 UdxReEstCfmInfo *param;
4120 TRC3(cmPkPjUdxReEstCfmInfo)
4122 CMCHKPK(SPkS16, param->status, mBuf);
4123 CMCHKPK(SPkU32, param->transId, mBuf);
4124 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
4125 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
4131 /***********************************************************
4133 * Func : cmUnpkPjUdxReEstCfmInfo
4136 * Desc : * Reestablishment confirmation structure for an UE.
4145 **********************************************************/
4147 PUBLIC S16 cmUnpkPjUdxReEstCfmInfo
4149 UdxReEstCfmInfo *param,
4153 PUBLIC S16 cmUnpkPjUdxReEstCfmInfo(param, mBuf)
4154 UdxReEstCfmInfo *param;
4159 TRC3(cmUnpkPjUdxReEstCfmInfo)
4161 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
4162 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
4163 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
4164 CMCHKUNPK(SUnpkS16, ¶m->status, mBuf);
4169 /***********************************************************
4171 * Func : cmPkPjUdxSecCfgReqInfo
4174 * Desc : * PDCP Security Configuration structure. Parameters are filled by RRC
4175 * while configuring the security parameters.
4184 **********************************************************/
4186 PUBLIC S16 cmPkPjUdxSecCfgReqInfo
4188 UdxSecCfgReqInfo *param,
4192 PUBLIC S16 cmPkPjUdxSecCfgReqInfo(param, mBuf)
4193 UdxSecCfgReqInfo *param;
4198 TRC3(cmPkPjUdxSecCfgReqInfo)
4200 CMCHKPK(cmPkPjUdxSecCfg, ¶m->secCfg, mBuf);
4201 CMCHKPK(SPkU32, param->transId, mBuf);
4202 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
4203 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
4209 /***********************************************************
4211 * Func : cmUnpkPjUdxSecCfgReqInfo
4214 * Desc : * PDCP Security Configuration structure. Parameters are filled by RRC
4215 * while configuring the security parameters.
4224 **********************************************************/
4226 PUBLIC S16 cmUnpkPjUdxSecCfgReqInfo
4228 UdxSecCfgReqInfo *param,
4232 PUBLIC S16 cmUnpkPjUdxSecCfgReqInfo(param, mBuf)
4233 UdxSecCfgReqInfo *param;
4238 TRC3(cmUnpkPjUdxSecCfgReqInfo)
4240 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
4241 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
4242 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
4243 CMCHKUNPK(cmUnpkPjUdxSecCfg, ¶m->secCfg, mBuf);
4248 /***********************************************************
4250 * Func : cmPkPjUdxSecCfgCfmInfo
4253 * Desc : * PDCP Security configuration confirm structure.
4262 **********************************************************/
4264 PUBLIC S16 cmPkPjUdxSecCfgCfmInfo
4266 UdxSecCfgCfmInfo *param,
4270 PUBLIC S16 cmPkPjUdxSecCfgCfmInfo(param, mBuf)
4271 UdxSecCfgCfmInfo *param;
4276 TRC3(cmPkPjUdxSecCfgCfmInfo)
4278 CMCHKPK(SPkS16, param->reason, mBuf);
4279 CMCHKPK(SPkS16, param->status, mBuf);
4280 CMCHKPK(SPkU32, param->transId, mBuf);
4281 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
4282 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
4288 /***********************************************************
4290 * Func : cmUnpkPjUdxSecCfgCfmInfo
4293 * Desc : * PDCP Security configuration confirm structure.
4302 **********************************************************/
4304 PUBLIC S16 cmUnpkPjUdxSecCfgCfmInfo
4306 UdxSecCfgCfmInfo *param,
4310 PUBLIC S16 cmUnpkPjUdxSecCfgCfmInfo(param, mBuf)
4311 UdxSecCfgCfmInfo *param;
4316 TRC3(cmUnpkPjUdxSecCfgCfmInfo)
4318 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
4319 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
4320 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
4321 CMCHKUNPK(SUnpkS16, ¶m->status, mBuf);
4322 CMCHKUNPK(SUnpkS16, ¶m->reason, mBuf);
4327 /***********************************************************
4329 * Func : cmPkPjUdxUeInfo
4332 * Desc : * UE ID information
4341 **********************************************************/
4343 PUBLIC S16 cmPkPjUdxUeInfo
4349 PUBLIC S16 cmPkPjUdxUeInfo(param, mBuf)
4355 TRC3(cmPkPjUdxUeInfo)
4357 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
4358 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
4364 /***********************************************************
4366 * Func : cmUnpkPjUdxUeInfo
4369 * Desc : * UE ID information
4378 **********************************************************/
4380 PUBLIC S16 cmUnpkPjUdxUeInfo
4386 PUBLIC S16 cmUnpkPjUdxUeInfo(param, mBuf)
4392 TRC3(cmUnpkPjUdxUeInfo)
4394 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
4395 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
4401 /***********************************************************
4403 * Func : cmPkPjUdxCountReqInfo
4406 * Desc : * PDCP Count Request Information from RRC.
4415 **********************************************************/
4417 PUBLIC S16 cmPkPjUdxCountReqInfo
4419 UdxCountReqInfo *param,
4423 PUBLIC S16 cmPkPjUdxCountReqInfo(param, mBuf)
4424 UdxCountReqInfo *param;
4429 TRC3(cmPkPjUdxCountReqInfo)
4431 CMCHKPK(SPkU32, param->transId, mBuf);
4432 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
4433 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
4439 /***********************************************************
4441 * Func : cmUnpkPjUdxCountReqInfo
4444 * Desc : * PDCP Count Request Information from RRC.
4453 **********************************************************/
4455 PUBLIC S16 cmUnpkPjUdxCountReqInfo
4457 UdxCountReqInfo *param,
4461 PUBLIC S16 cmUnpkPjUdxCountReqInfo(param, mBuf)
4462 UdxCountReqInfo *param;
4467 TRC3(cmUnpkPjUdxCountReqInfo)
4469 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
4470 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
4471 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
4476 /***********************************************************
4478 * Func : cmPkPjUdxCountInfo
4481 * Desc : * PDCP Count Information for a DRB.
4490 **********************************************************/
4492 PUBLIC S16 cmPkPjUdxCountInfo
4494 UdxCountInfo *param,
4498 PUBLIC S16 cmPkPjUdxCountInfo(param, mBuf)
4499 UdxCountInfo *param;
4504 TRC3(cmPkPjUdxCountInfo)
4506 CMCHKPK(SPkU32, param->dlCount, mBuf);
4507 CMCHKPK(SPkU32, param->ulCount, mBuf);
4508 CMCHKPK(SPkU8, param->dir, mBuf);
4509 CMCHKPK(SPkU8, param->rbId, mBuf);
4515 /***********************************************************
4517 * Func : cmUnpkPjUdxCountInfo
4520 * Desc : * PDCP Count Information for a DRB.
4529 **********************************************************/
4531 PUBLIC S16 cmUnpkPjUdxCountInfo
4533 UdxCountInfo *param,
4537 PUBLIC S16 cmUnpkPjUdxCountInfo(param, mBuf)
4538 UdxCountInfo *param;
4543 TRC3(cmUnpkPjUdxCountInfo)
4545 CMCHKUNPK(SUnpkU8, ¶m->rbId, mBuf);
4546 CMCHKUNPK(SUnpkU8, ¶m->dir, mBuf);
4547 CMCHKUNPK(SUnpkU32, ¶m->ulCount, mBuf);
4548 CMCHKUNPK(SUnpkU32, ¶m->dlCount, mBuf);
4554 /***********************************************************
4556 * Func : cmPkPjUdxCountCfmInfo
4559 * Desc : * PDCP Count Request Confirmation to RRC.
4568 **********************************************************/
4570 PUBLIC S16 cmPkPjUdxCountCfmInfo
4572 UdxCountCfmInfo *param,
4576 PUBLIC S16 cmPkPjUdxCountCfmInfo(param, mBuf)
4577 UdxCountCfmInfo *param;
4583 TRC3(cmPkPjUdxCountCfmInfo)
4585 CMCHKPK(SPkS16, param->reason, mBuf);
4586 CMCHKPK(SPkS16, param->status, mBuf);
4587 for (i=param->numRb-1; i >= 0; i--) {
4588 CMCHKPK(cmPkPjUdxCountInfo, ¶m->countInfo[i], mBuf);
4590 CMCHKPK(SPkU8, param->numRb, mBuf);
4591 CMCHKPK(SPkU32, param->transId, mBuf);
4592 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
4593 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
4599 /***********************************************************
4601 * Func : cmUnpkPjUdxCountCfmInfo
4604 * Desc : * PDCP Count Request Confirmation to RRC.
4613 **********************************************************/
4615 PUBLIC S16 cmUnpkPjUdxCountCfmInfo
4617 UdxCountCfmInfo *param,
4621 PUBLIC S16 cmUnpkPjUdxCountCfmInfo(param, mBuf)
4622 UdxCountCfmInfo *param;
4628 TRC3(cmUnpkPjUdxCountCfmInfo)
4630 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
4631 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
4632 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
4633 CMCHKUNPK(SUnpkU8, ¶m->numRb, mBuf);
4634 for (i=0; i<param->numRb; i++) {
4635 CMCHKUNPK(cmUnpkPjUdxCountInfo, ¶m->countInfo[i], mBuf);
4637 CMCHKUNPK(SUnpkS16, ¶m->status, mBuf);
4638 CMCHKUNPK(SUnpkS16, ¶m->reason, mBuf);
4643 /***********************************************************
4645 * Func : cmPkPjUdxSduStaReqInfo
4648 * Desc : * PDCP SDU Status Request Information from RRC - Used for reestablishment
4658 **********************************************************/
4660 PUBLIC S16 cmPkPjUdxSduStaReqInfo
4662 UdxSduStaReqInfo *param,
4666 PUBLIC S16 cmPkPjUdxSduStaReqInfo(param, mBuf)
4667 UdxSduStaReqInfo *param;
4672 TRC3(cmPkPjUdxSduStaReqInfo)
4674 CMCHKPK(SPkU32, param->transId, mBuf);
4675 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
4676 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
4682 /***********************************************************
4684 * Func : cmUnpkPjUdxSduStaReqInfo
4687 * Desc : * PDCP SDU Status Request Information from RRC - Used for reestablishment
4697 **********************************************************/
4699 PUBLIC S16 cmUnpkPjUdxSduStaReqInfo
4701 UdxSduStaReqInfo *param,
4705 PUBLIC S16 cmUnpkPjUdxSduStaReqInfo(param, mBuf)
4706 UdxSduStaReqInfo *param;
4711 TRC3(cmUnpkPjUdxSduStaReqInfo)
4713 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
4714 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
4715 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
4720 /***********************************************************
4722 * Func : cmPkPjUdxDlSduStaInfo
4725 * Desc : * PDCP DL SDU Status Information for a DRB mapped to RLC AM.
4734 **********************************************************/
4736 PUBLIC S16 cmPkPjUdxDlSduStaInfo
4738 UdxDlSduStaInfo *param,
4742 PUBLIC S16 cmPkPjUdxDlSduStaInfo(param, mBuf)
4743 UdxDlSduStaInfo *param;
4748 TRC3(cmPkPjUdxDlSduStaInfo)
4750 CMCHKPK(cmPkBool, param->hoPres, mBuf);
4751 CMCHKPK(SPkU32, param->count, mBuf);
4757 /***********************************************************
4759 * Func : cmUnpkPjUdxDlSduStaInfo
4762 * Desc : * PDCP DL SDU Status Information for a DRB mapped to RLC AM.
4771 **********************************************************/
4773 PUBLIC S16 cmUnpkPjUdxDlSduStaInfo
4775 UdxDlSduStaInfo *param,
4779 PUBLIC S16 cmUnpkPjUdxDlSduStaInfo(param, mBuf)
4780 UdxDlSduStaInfo *param;
4785 TRC3(cmUnpkPjUdxDlSduStaInfo)
4787 CMCHKUNPK(cmUnpkBool, ¶m->hoPres, mBuf);
4788 CMCHKUNPK(SUnpkU32, ¶m->count, mBuf);
4794 /***********************************************************
4796 * Func : cmPkPjUdxSduStaInfo
4799 * Desc : * PDCP SDU Status Information for a DRB mapped to RLC AM.
4808 **********************************************************/
4810 PUBLIC S16 cmPkPjUdxSduStaInfo
4813 UdxSduStaInfo *param,
4817 PUBLIC S16 cmPkPjUdxSduStaInfo(pst, param, mBuf)
4819 UdxSduStaInfo *param;
4823 TRC3(cmPkPjUdxSduStaInfo)
4825 CMCHKPK(cmPkPjUdxDlSduStaInfo, ¶m->dlSduStaInfo, mBuf);
4826 CMCHKPK(SPkU8, param->dir, mBuf);
4827 CMCHKPK(SPkU8, param->rbId, mBuf);
4833 /***********************************************************
4835 * Func : cmUnpkPjUdxSduStaInfo
4838 * Desc : * PDCP SDU Status Information for a DRB mapped to RLC AM.
4847 **********************************************************/
4849 PUBLIC S16 cmUnpkPjUdxSduStaInfo
4852 UdxSduStaInfo *param,
4856 PUBLIC S16 cmUnpkPjUdxSduStaInfo(pst, param, mBuf)
4858 UdxSduStaInfo *param;
4862 TRC3(cmUnpkPjUdxSduStaInfo)
4864 CMCHKUNPK(SUnpkU8, ¶m->rbId, mBuf);
4865 CMCHKUNPK(SUnpkU8, ¶m->dir, mBuf);
4867 CMCHKUNPK(cmUnpkPjUdxDlSduStaInfo, ¶m->dlSduStaInfo, mBuf);
4873 /***********************************************************
4875 * Func : cmPkPjUdxSduStaCfmInfo
4878 * Desc : * PDCP SDU Status Request Confirmation for an UE.
4887 **********************************************************/
4889 PUBLIC S16 cmPkPjUdxSduStaCfmInfo
4892 UdxSduStaCfmInfo *param,
4896 PUBLIC S16 cmPkPjUdxSduStaCfmInfo(pst, param, mBuf)
4898 UdxSduStaCfmInfo *param;
4904 TRC3(cmPkPjUdxSduStaCfmInfo)
4906 CMCHKPK(SPkS16, param->reason, mBuf);
4907 CMCHKPK(SPkS16, param->status, mBuf);
4908 for (i=param->numRb-1; i >= 0; i--) {
4909 if (cmPkPjUdxSduStaInfo(pst, ¶m->sduStaInfo[i], mBuf) != ROK)
4912 CMCHKPK(SPkU8, param->numRb, mBuf);
4913 CMCHKPK(SPkU32, param->transId, mBuf);
4914 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
4915 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
4920 /***********************************************************
4922 * Func : cmPkPjUdxDatResumeCfmInfo
4925 * Desc : * PDCP SDU Status Request Confirmation for an UE.
4934 **********************************************************/
4936 PUBLIC S16 cmPkPjUdxDatResumeCfmInfo
4939 UdxDatResumeCfmInfo *param,
4943 PUBLIC S16 cmPkPjUdxDatResumeCfmInfo(pst, param, mBuf)
4945 UdxDatResumeCfmInfo *param;
4950 TRC3(cmPkPjUdxDatResumeCfmInfo)
4952 CMCHKPK(SPkS16, param->reason, mBuf);
4953 CMCHKPK(SPkS16, param->status, mBuf);
4954 CMCHKPK(SPkU32, param->transId, mBuf);
4955 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
4956 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
4961 PUBLIC S16 cmPkPjUdxDatForwardCfmInfo
4964 UdxDatFwdCfmInfo *param,
4968 PUBLIC S16 cmPkPjUdxDatForwardCfmInfo(pst, param, mBuf)
4970 UdxDatFwdCfmInfo *param;
4974 TRC3(cmPkPjUdxDatForwardCfmInfo)
4976 CMCHKPK(SPkS16, param->reason, mBuf);
4977 CMCHKPK(SPkS16, param->status, mBuf);
4978 CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
4979 CMCHKPK(cmPkLteRnti, param->ueId, mBuf);
4984 * Fun: cmPkPjUdxDlFdbkPktInfo
4986 * Desc: pack the structure UdxDlFdbPktInfo
4996 PUBLIC S16 cmPkPjUdxDlFdbkPktInfo
4998 UdxDlFdbkPktInfo *param,
5003 PUBLIC S16 cmPkPjUdxDlFdbkPktInfo(param, pst, mBuf)
5004 UdxDlFdbkPktInfo *param;
5010 TRC3(cmPkPjUdxDlFdbkPktInfo)
5012 CMCHKPK(SPkU8, param->pdcpId.rbType, mBuf);
5013 CMCHKPK(cmPkLteRbId, param->pdcpId.rbId, mBuf);
5014 CMCHKPK(cmPkLteRnti, param->pdcpId.ueId, mBuf);
5015 CMCHKPK(cmPkLteCellId, param->pdcpId.cellId, mBuf);
5017 if (SFndLenMsg(param->fbPkt, &msgLen) != ROK)
5019 if (SCatMsg(mBuf, param->fbPkt, M1M2) != ROK)
5022 CMCHKPK(SPkS16, msgLen, mBuf);
5025 } /* cmPkPjUdxDlFdbkPktInfo */
5028 /***********************************************************
5030 * Func : cmUnpkPjUdxSduStaCfmInfo
5033 * Desc : * PDCP SDU Status Request Confirmation for an UE.
5042 **********************************************************/
5044 PUBLIC S16 cmUnpkPjUdxSduStaCfmInfo
5047 UdxSduStaCfmInfo *param,
5051 PUBLIC S16 cmUnpkPjUdxSduStaCfmInfo(pst, param, mBuf)
5053 UdxSduStaCfmInfo *param;
5059 TRC3(cmUnpkPjUdxSduStaCfmInfo)
5061 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
5062 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
5063 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
5064 CMCHKUNPK(SUnpkU8, ¶m->numRb, mBuf);
5065 for (i=0; i<param->numRb; i++) {
5066 if (cmUnpkPjUdxSduStaInfo(pst, ¶m->sduStaInfo[i], mBuf) != ROK)
5069 CMCHKUNPK(SUnpkS16, ¶m->status, mBuf);
5070 CMCHKUNPK(SUnpkS16, ¶m->reason, mBuf);
5075 /***********************************************************
5077 * Func : cmUnpkPjUdxDatResumeCfmInfo
5080 * Desc : * PDCP SDU Status Request Confirmation for an UE.
5089 **********************************************************/
5091 PUBLIC S16 cmUnpkPjUdxDatResumeCfmInfo
5094 UdxDatResumeCfmInfo *param,
5098 PUBLIC S16 cmUnpkPjUdxDatResumeCfmInfo(pst, param, mBuf)
5100 UdxDatResumeCfmInfo *param;
5105 TRC3(cmUnpkPjUdxDatResumeCfmInfo)
5107 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
5108 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
5109 CMCHKUNPK(SUnpkU32, ¶m->transId, mBuf);
5110 CMCHKUNPK(SUnpkS16, ¶m->status, mBuf);
5111 CMCHKUNPK(SUnpkS16, ¶m->reason, mBuf);
5114 /***********************************************************
5116 * Func : cmUnpkPjUdxDatForwardCfm
5119 * Desc : * PDCP Data Forward Confirmation for an UE.
5128 **********************************************************/
5130 PUBLIC S16 cmUnpkPjUdxDatForwardCfmInfo
5133 UdxDatFwdCfmInfo *param,
5137 PUBLIC S16 cmUnpkPjUdxDatForwardCfmInfo(pst, param, mBuf)
5139 UdxDatFwdCfmInfo *param;
5144 TRC3(cmUnpkPjUdxDatForwardCfmInfo)
5146 CMCHKUNPK(cmUnpkLteRnti, ¶m->ueId, mBuf);
5147 CMCHKUNPK(cmUnpkLteCellId, ¶m->cellId, mBuf);
5148 CMCHKUNPK(SUnpkS16, ¶m->status, mBuf);
5149 CMCHKUNPK(SUnpkS16, ¶m->reason, mBuf);
5155 PUBLIC S16 cmPkPjUdxUlFdbkPkt
5159 UdxUlFdbkPktInfo *fdbkPktInfo
5162 PUBLIC S16 cmPkPjUdxUlFdbkPkt(pst, spId, fdbkPktInfo)
5165 UdxUlFdbkPktInfo *fdbkPktInfo;
5172 TRC3(cmPkPjUdxUlFdbkPkt)
5174 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
5175 #if (ERRCLASS & ERRCLS_ADD_RES)
5176 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5177 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5178 (ErrVal)EUDX016, (ErrVal)0, "Packing failed");
5181 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, fdbkPktInfo, sizeof(UdxUlFdbkPktInfo));
5186 switch(pst->selector)
5191 ret = cmPkPjUdxUlFdbkPktInfo( (fdbkPktInfo), pst, mBuf);
5192 #if (ERRCLASS & ERRCLS_ADD_RES)
5196 PJ_FREE_BUF(fdbkPktInfo->fbPkt);
5197 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, fdbkPktInfo, sizeof(UdxUlFdbkPktInfo));
5199 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5200 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5201 (ErrVal)EUDXXXX, (ErrVal)ret, "Packing failure");
5204 #endif /* ERRCLASS & ERRCLS_ADD_RES */
5205 PJ_FREE_BUF(fdbkPktInfo->fbPkt);
5206 #ifndef XEON_SPECIFIC_CHANGES
5207 if (SPutStaticBuffer(pst->region, pst->pool, (Data *)fdbkPktInfo,
5208 sizeof(UdxUlFdbkPktInfo), 0) != ROK)
5210 if (SPutSBuf(pst->region, pst->pool, (Data *)fdbkPktInfo,
5211 sizeof(UdxUlFdbkPktInfo)) != ROK)
5222 CMCHKPKLOG(cmPkPtr,(PTR)fdbkPktInfo,mBuf,EUDXXXX,pst);
5228 CMCHKPKLOG(SPkS16, spId, mBuf, EUDXXXX, pst);
5229 pst->event = (Event) EVTUDXULROHCFDB;
5231 RETVALUE(SPstTsk(pst,mBuf));
5235 PUBLIC S16 cmPkPjUdxDlFdbkPkt
5239 UdxDlFdbkPktInfo *fdbkPktInfo
5242 PUBLIC S16 cmPkPjUdxDlFdbkPkt(pst, spId, fdbkPktInfo)
5245 UdxDlFdbkPktInfo *fdbkPktInfo;
5252 TRC3(cmPkPjUdxDlFdbkPkt)
5254 if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
5255 #if (ERRCLASS & ERRCLS_ADD_RES)
5256 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5257 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5258 (ErrVal)EUDX016, (ErrVal)0, "Packing failed");
5261 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, fdbkPktInfo, sizeof(UdxUlFdbkPktInfo));
5266 switch(pst->selector)
5271 ret = cmPkPjUdxDlFdbkPktInfo( (fdbkPktInfo), pst, mBuf);
5272 #if (ERRCLASS & ERRCLS_ADD_RES)
5276 PJ_FREE_BUF(fdbkPktInfo->fbPkt);
5277 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, fdbkPktInfo, sizeof(UdxUlFdbkPktInfo));
5279 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5280 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5281 (ErrVal)EUDXXXX, (ErrVal)ret, "Packing failure");
5284 #endif /* ERRCLASS & ERRCLS_ADD_RES */
5285 PJ_FREE_BUF(fdbkPktInfo->fbPkt);
5286 #ifndef XEON_SPECIFIC_CHANGES
5287 if (SPutStaticBuffer(pst->region, pst->pool, (Data *)fdbkPktInfo,
5288 sizeof(UdxDlFdbkPktInfo), 0) != ROK)
5290 if (SPutSBuf(pst->region, pst->pool, (Data *)fdbkPktInfo,
5291 sizeof(UdxDlFdbkPktInfo)) != ROK)
5302 CMCHKPKLOG(cmPkPtr,(PTR)fdbkPktInfo,mBuf,EUDXXXX,pst);
5308 CMCHKPKLOG(SPkS16, spId, mBuf, EUDXXXX, pst);
5309 pst->event = (Event) EVTUDXDLROHCFDB;
5311 RETVALUE(SPstTsk(pst,mBuf));
5316 * Fun: cmPkPjUdxUlFdbkPktInfo
5318 * Desc: pack the structure UdxUlFdbPktInfo
5328 PUBLIC S16 cmPkPjUdxUlFdbkPktInfo
5330 UdxUlFdbkPktInfo *param,
5335 PUBLIC S16 cmPkPjUdxUlFdbkPktInfo(param, pst, mBuf)
5336 UdxUlFdbkPktInfo *param;
5342 TRC3(cmPkPjUdxUlFdbkPktInfo)
5344 CMCHKPK(SPkU8, param->pdcpId.rbType, mBuf);
5345 CMCHKPK(cmPkLteRbId, param->pdcpId.rbId, mBuf);
5346 CMCHKPK(cmPkLteRnti, param->pdcpId.ueId, mBuf);
5347 CMCHKPK(cmPkLteCellId, param->pdcpId.cellId, mBuf);
5349 if (SFndLenMsg(param->fbPkt, &msgLen) != ROK)
5351 if (SCatMsg(mBuf, param->fbPkt, M1M2) != ROK)
5353 PJ_FREE_BUF(param->fbPkt);
5354 CMCHKPK(SPkS16, msgLen, mBuf);
5357 } /* cmPkPjUdxUlFdbkPktInfo */
5361 PUBLIC S16 cmUnpkPjUdxDlFdbkPkt
5368 PUBLIC S16 cmUnpkPjUdxDlFdbkPkt(func, pst, mBuf)
5376 UdxDlFdbkPktInfo *fdbkPkt;
5378 TRC3(cmUnpkPjUdxDlFdbkPkt)
5380 if (SUnpkS16(&spId, mBuf) != ROK) {
5382 #if (ERRCLASS & ERRCLS_ADD_RES)
5383 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5384 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5385 (ErrVal)EUDX021, (ErrVal)0, "Unpacking failed");
5390 switch(pst->selector)
5395 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&fdbkPkt,\
5396 sizeof(UdxDlFdbkPktInfo))) != ROK)
5398 #if (ERRCLASS & ERRCLS_ADD_RES)
5399 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5400 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5401 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
5402 #endif /* ERRCLASS & ERRCLS_ADD_RES */
5408 if (cmUnpkPjUdxDlFdbkPktInfo(pst, fdbkPkt, mBuf) != ROK)
5410 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, fdbkPkt, sizeof(UdxDlFdbkPktInfo));
5412 #if (ERRCLASS & ERRCLS_ADD_RES)
5413 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5414 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5415 (ErrVal)EUDX023, (ErrVal)0, "Unpacking failed");
5425 CMCHKUNPK(cmUnpkPtr,(PTR *) &fdbkPkt, mBuf);
5433 RETVALUE((*func)(pst, spId, fdbkPkt));
5438 PUBLIC S16 cmUnpkPjUdxDlFdbPktInfo
5441 UdxDlFdbkPktInfo *param,
5445 PUBLIC S16 cmUnpkPjUdxDlFdbPktInfo(pst, param, mBuf)
5447 UdxDlFdbkPktInfo *param;
5454 TRC3(cmUnpkPjUdxDlFdbPktInfo);
5456 CMCHKUNPK(SUnpkU8, ¶m->pdcpId.rbType, mBuf);
5457 CMCHKUNPK(cmUnpkLteRbId, ¶m->pdcpId.rbId, mBuf);
5458 CMCHKUNPK(cmUnpkLteRnti, ¶m->pdcpId.ueId, mBuf);
5459 CMCHKUNPK(cmUnpkLteCellId, ¶m->pdcpId.cellId, mBuf);
5461 if (SFndLenMsg(mBuf, &totalMsgLen) != ROK)
5464 if (SSegMsg(mBuf, totalMsgLen-msgLen, ¶m->fbPkt) != ROK)
5472 PUBLIC S16 cmUnpkPjUdxUlStaRep
5479 PUBLIC S16 cmUnpkPjUdxUlStaRep(func, pst, mBuf)
5487 UdxUlStaRepInfo *staRep;
5489 TRC3(cmUnpkPjUdxUlStaRep)
5491 if (SUnpkS16(&spId, mBuf) != ROK) {
5493 #if (ERRCLASS & ERRCLS_ADD_RES)
5494 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5495 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5496 (ErrVal)EUDX021, (ErrVal)0, "Unpacking failed");
5501 switch(pst->selector)
5506 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&staRep,\
5507 sizeof(UdxUlStaRepInfo))) != ROK)
5509 #if (ERRCLASS & ERRCLS_ADD_RES)
5510 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5511 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5512 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
5513 #endif /* ERRCLASS & ERRCLS_ADD_RES */
5519 if (cmUnpkPjUdxUlStaRepInfo(pst, staRep, mBuf) != ROK)
5521 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staRep, sizeof(UdxUlStaRepInfo));
5523 #if (ERRCLASS & ERRCLS_ADD_RES)
5524 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5525 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5526 (ErrVal)EUDX023, (ErrVal)0, "Unpacking failed");
5536 CMCHKUNPK(cmUnpkPtr,(PTR *) &staRep, mBuf);
5544 RETVALUE((*func)(pst, spId, staRep));
5548 PUBLIC S16 cmUnpkPjUdxDlStaRep
5555 PUBLIC S16 cmUnpkPjUdxDlStaRep(func, pst, mBuf)
5563 UdxDlStaRepInfo *staRep;
5565 TRC3(cmUnpkPjUdxDlStaRep)
5567 if (SUnpkS16(&spId, mBuf) != ROK) {
5569 #if (ERRCLASS & ERRCLS_ADD_RES)
5570 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5571 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5572 (ErrVal)EUDX021, (ErrVal)0, "Unpacking failed");
5577 switch(pst->selector)
5582 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&staRep,\
5583 sizeof(UdxDlStaRepInfo))) != ROK)
5585 #if (ERRCLASS & ERRCLS_ADD_RES)
5586 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5587 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5588 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
5589 #endif /* ERRCLASS & ERRCLS_ADD_RES */
5595 if (cmUnpkPjUdxDlStaRepInfo(pst, staRep, mBuf) != ROK)
5597 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, staRep, sizeof(UdxDlStaRepInfo));
5599 #if (ERRCLASS & ERRCLS_ADD_RES)
5600 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5601 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5602 (ErrVal)EUDX023, (ErrVal)0, "Unpacking failed");
5612 CMCHKUNPK(cmUnpkPtr,(PTR *) &staRep, mBuf);
5620 RETVALUE((*func)(pst, spId, staRep));
5624 PUBLIC S16 cmUnpkPjUdxUlFdbkPkt
5631 PUBLIC S16 cmUnpkPjUdxUlFdbkPkt(func, pst, mBuf)
5639 UdxUlFdbkPktInfo *fdbkPkt;
5641 TRC3(cmUnpkPjUdxUlFdbkPkt)
5643 if (SUnpkS16(&spId, mBuf) != ROK) {
5645 #if (ERRCLASS & ERRCLS_ADD_RES)
5646 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5647 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5648 (ErrVal)EUDX021, (ErrVal)0, "Unpacking failed");
5653 switch(pst->selector)
5658 if((ret1 = SGetSBuf(pst->region, pst->pool, (Data **)&fdbkPkt,\
5659 sizeof(UdxUlFdbkPktInfo))) != ROK)
5661 #if (ERRCLASS & ERRCLS_ADD_RES)
5662 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5663 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5664 (ErrVal)EUDX040, (ErrVal)0, "SGetMsg() failed");
5665 #endif /* ERRCLASS & ERRCLS_ADD_RES */
5671 if (cmUnpkPjUdxUlFdbkPktInfo(pst, fdbkPkt, mBuf) != ROK)
5673 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, fdbkPkt, sizeof(UdxUlFdbkPktInfo));
5675 #if (ERRCLASS & ERRCLS_ADD_RES)
5676 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5677 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5678 (ErrVal)EUDX023, (ErrVal)0, "Unpacking failed");
5688 CMCHKUNPK(cmUnpkPtr,(PTR *) &fdbkPkt, mBuf);
5696 RETVALUE((*func)(pst, spId, fdbkPkt));
5702 * Fun: cmPkPjUdxL2MeasReq
5711 PUBLIC S16 cmPkPjUdxL2MeasReq
5714 PjL2MeasReqEvt *measReqEvt
5717 PUBLIC S16 cmPkPjUdxL2MeasReq(pst, measReqEvt)
5719 PjL2MeasReqEvt *measReqEvt;
5723 Buffer *mBuf = NULLP;
5725 TRC3(cmPkPjUdxL2MeasReq)
5727 if((ret1 = SGetMsg(pst->region, pst->pool, &mBuf)) != ROK)
5729 #if (ERRCLASS & ERRCLS_ADD_RES)
5732 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5733 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5734 (ErrVal)EUDXXXX, (ErrVal)0, "SGetMsg() failed");
5736 #endif /* ERRCLASS & ERRCLS_ADD_RES */
5741 switch (pst->selector)
5748 CMCHKPK(cmPkPtr,(PTR) measReqEvt, mBuf);
5752 pst->event = (Event) PJ_UDX_EVT_L2MEAS_REQ;
5754 RETVALUE(SPstTsk(pst, mBuf));
5756 } /* cmPkPjUdxStaUpdReq */
5760 * Fun: cmPkPjUdxL2MeasSendReq
5769 PUBLIC S16 cmPkPjUdxL2MeasSendReq
5775 PUBLIC S16 cmPkPjUdxL2MeasSendReq(pst, measReqEvt)
5781 Buffer *mBuf = NULLP;
5783 TRC3(cmPkPjUdxL2MeasSendReq)
5785 if((ret1 = SGetMsg(pst->region, pst->pool, &mBuf)) != ROK)
5787 #if (ERRCLASS & ERRCLS_ADD_RES)
5790 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5791 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5792 (ErrVal)EUDXXXX, (ErrVal)0, "SGetMsg() failed");
5794 #endif /* ERRCLASS & ERRCLS_ADD_RES */
5799 switch (pst->selector)
5806 CMCHKPKLOG(SPkU8, measType, mBuf, EUDXXXX, pst);
5810 pst->event = (Event) PJ_UDX_EVT_L2MEAS_SEND_REQ;
5812 RETVALUE(SPstTsk(pst, mBuf));
5818 * Fun: cmPkPjUdxL2MeasStopReq
5827 PUBLIC S16 cmPkPjUdxL2MeasStopReq
5833 PUBLIC S16 cmPkPjUdxL2MeasStopReq(pst, measType)
5839 Buffer *mBuf = NULLP;
5841 TRC3(cmPkPjUdxL2MeasStopReq)
5843 if((ret1 = SGetMsg(pst->region, pst->pool, &mBuf)) != ROK)
5845 #if (ERRCLASS & ERRCLS_ADD_RES)
5848 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
5849 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
5850 (ErrVal)EUDXXXX, (ErrVal)0, "SGetMsg() failed");
5852 #endif /* ERRCLASS & ERRCLS_ADD_RES */
5857 switch (pst->selector)
5864 CMCHKPKLOG(SPkU8, measType, mBuf, EUDXXXX, pst);
5868 pst->event = (Event) PJ_UDX_EVT_L2MEAS_STOP_REQ;
5870 RETVALUE(SPstTsk(pst, mBuf));
5877 * Fun: cmUnpkPjUdxL2MeasReq
5886 PUBLIC S16 cmUnpkPjUdxL2MeasReq
5893 PUBLIC S16 cmUnpkPjUdxL2MeasReq(func, pst, mBuf)
5900 PjL2MeasReqEvt *measReqEvt;
5902 TRC3(cmUnpkPjUdxL2MeasReq)
5904 switch (pst->selector)
5911 CMCHKUNPK(cmUnpkPtr, (PTR *)&measReqEvt,mBuf);
5918 RETVALUE((*func)(pst, measReqEvt));
5919 } /* cmUnpkPjUdxL2MeasReq */
5923 * Fun: cmUnpkPjUdxL2MeasSendReq
5932 PUBLIC S16 cmUnpkPjUdxL2MeasSendReq
5934 UdxL2MeasSendReq func,
5939 PUBLIC S16 cmUnpkPjUdxL2MeasSendReq(func, pst, mBuf)
5940 UdxL2MeasSendReq func;
5948 TRC3(cmUnpkPjUdxL2MeasSendReq)
5950 switch (pst->selector)
5957 CMCHKUNPK(SUnpkU8, &measType, mBuf);
5964 RETVALUE((*func)(pst, measType));
5965 } /* cmUnpkPjUdxL2MeasReq */
5969 * Fun: cmUnpkPjUdxL2MeasStopReq
5978 PUBLIC S16 cmUnpkPjUdxL2MeasStopReq
5980 UdxL2MeasStopReq func,
5985 PUBLIC S16 cmUnpkPjUdxL2MeasStopReq(func, pst, mBuf)
5986 UdxL2MeasStopReq func;
5993 TRC3(cmUnpkPjUdxL2MeasStopReq)
5995 switch (pst->selector)
6002 CMCHKUNPK(SUnpkU8, &measType, mBuf);
6009 RETVALUE((*func)(pst, measType));
6010 } /* cmUnpkPjUdxL2MeasStopReq */
6015 * Fun: cmPkPjUdxDatResumeReq
6024 PUBLIC S16 cmPkPjUdxDatResumeReq
6027 UdxDatResumeInfo *udxDatResumeInfo
6030 PUBLIC S16 cmPkPjUdxDatResumeReq(pst, cellId, ueId)
6032 UdxDatResumeInfo *udxDatResumeInfo;
6036 Buffer *mBuf = NULLP;
6038 TRC3(cmPkPjUdxDatResume)
6040 if((ret1 = SGetMsg(pst->region, pst->pool, &mBuf)) != ROK)
6042 #if (ERRCLASS & ERRCLS_ADD_RES)
6045 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
6046 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
6047 (ErrVal)EUDXXXX, (ErrVal)0, "SGetMsg() failed");
6049 #endif /* ERRCLASS & ERRCLS_ADD_RES */
6050 PJ_FREE_SHRABL_BUF_PST(pst->region, pst->pool, (Data *)udxDatResumeInfo,sizeof(UdxDatResumeInfo));
6054 switch (pst->selector)
6061 CMCHKPKLOG(cmPkPtr,(PTR)udxDatResumeInfo,mBuf,EUDXXXX,pst);
6065 pst->event = (Event) EVTUDXDATRESUME;
6067 RETVALUE(SPstTsk(pst, mBuf));
6069 } /* cmPkPjUdxDatResumeReq */
6073 * Fun: cmUnpkPjUdxDatResumeReq
6082 PUBLIC S16 cmUnpkPjUdxDatResumeReq
6084 UdxDatResumeReq func,
6089 PUBLIC S16 cmUnpkPjUdxDatResumeReq(func, pst, mBuf)
6090 UdxDatResumeReq func;
6095 UdxDatResumeInfo *datResumeInfo;
6097 TRC3(cmUnpkPjUdxDatResumeReq)
6099 switch (pst->selector)
6106 CMCHKUNPK(cmUnpkPtr,(PTR *) &datResumeInfo, mBuf);
6113 RETVALUE((*func)(pst, datResumeInfo));
6114 } /* cmUnpkPjUdxDatResumeReq */
6118 * Fun: cmPkPjUdxDatForwardReq
6127 PUBLIC S16 cmPkPjUdxDatForwardReq
6130 UdxDatForwardInfo *datFwdInfo
6133 PUBLIC S16 cmPkPjUdxDatForwardReq(pst, datFwdInfo)
6135 UdxDatForwardInfo *datFwdInfo;
6139 Buffer *mBuf = NULLP;
6141 TRC3(cmPkPjUdxDatForwardReq)
6143 RLOG0(L_DEBUG,"Packing UdxDatForwadReq");
6144 if((ret1 = SGetMsg(pst->region, pst->pool, &mBuf)) != ROK)
6146 #if (ERRCLASS & ERRCLS_ADD_RES)
6149 SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
6150 __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
6151 (ErrVal)EUDXXXX, (ErrVal)0, "SGetMsg() failed");
6153 #endif /* ERRCLASS & ERRCLS_ADD_RES */
6158 switch (pst->selector)
6165 CMCHKPKLOG(cmPkPtr,(PTR)datFwdInfo,mBuf,EUDXXXX,pst);
6169 pst->event = (Event) EVTUDXDATFRWD;
6171 RETVALUE(SPstTsk(pst, mBuf));
6173 } /* cmPkPjUdxDatForwardReq */
6177 * Fun: cmUnpkPjUdxDatForwardReq
6186 PUBLIC S16 cmUnpkPjUdxDatForwardReq
6188 UdxDatForwardReq func,
6193 PUBLIC S16 cmUnpkPjUdxDatForwardReq(func, pst, mBuf)
6194 UdxDatForwardReq func;
6199 UdxDatForwardInfo *datFwdInfo;
6201 TRC3(cmUnpkPjUdxDatForwardReq)
6203 RLOG0(L_DEBUG,"Unpacking UdxDatForwadReq");
6204 switch (pst->selector)
6211 CMCHKUNPK(cmUnpkPtr,(PTR *) &datFwdInfo, mBuf);
6218 RETVALUE((*func)(pst, datFwdInfo));
6219 } /* cmUnpkPjUdxDatForwardReq */
6220 #endif /* end of #if(defined(LCUDX) || defined(LWLCUDX)) */
6222 /********************************************************************30**
6225 **********************************************************************/