diff options
Diffstat (limited to 'contrib/awk/test')
49 files changed, 4179 insertions, 0 deletions
diff --git a/contrib/awk/test/arynocls.awk b/contrib/awk/test/arynocls.awk new file mode 100644 index 0000000..724c9ac --- /dev/null +++ b/contrib/awk/test/arynocls.awk @@ -0,0 +1,95 @@ +#To: bug-gnu-utils@gnu.org +#From: Kristján Jónasson <kristjan@decode.is> +#Subject: Gawk bug +#Cc: arnold@gnu.org +# +#Hi! +# +#The following seems to be a bug in gawk. I have tried as I could to +#minimize the bug-causing program, so of course it does not seem to do +#anything useful in its present form. The error message received is: +# +#gawk: test.awk:15: fatal error: internal error +#Aborted +# +#Note that there is an attached file that the program reads, called "a". I +#played with the program a fair bit and my feeling is that the error is +#related with the delete statement, and not the reading of the file and the +#close statement. At one point I was able to remove the file reading and +#still obtain the error. If, for example, I remove the close statement and +#make two copies of the file instead, (reading one copy in sub1 and the +#other in sub2), the error still occurs. +# +#The operating system is Red Hat Linux, version 6.0, the gawk is version +#3.0.4, and the gawk was obtained from an rpm file gawk-3.0.4-1.i386.rpm. +# +#The program is: +# + +# Wed Mar 8 13:41:34 IST 2000 +# ADR: modified to use INPUT, so can set it from command line. +# When run, no output is produced, but it shouldn't core +# dump, either. +# +# The program bug is to not close the file in sub2. + +function sub1(x) { +# while (getline < "a" == 1) i++ + while (getline < INPUT == 1) i++ +# close("a") + close(INPUT) +} + +function sub2(x) { + i=0 + delete y +# while (getline < "a" == 1) z[++i] = $1 + while (getline < INPUT == 1) z[++i] = $1 + for(i in z) y[i] = x[i] + z[i] +} + +function sub3(x, y, z) { + sub2(x) + for(i=1; i<=4; i++) z[i] = y[i] +} + +BEGIN { + sub1(x) + sub2(x) + sub3(x, y, z) +} +# +#And the data file is: +# +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# 32.440 3.830 3.383700000000000 10.08 298 865 +# +# diff --git a/contrib/awk/test/arynocls.in b/contrib/awk/test/arynocls.in new file mode 100644 index 0000000..8f4712c --- /dev/null +++ b/contrib/awk/test/arynocls.in @@ -0,0 +1,30 @@ + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 + 32.440 3.830 3.383700000000000 10.08 298 865 diff --git a/contrib/awk/test/arynocls.ok b/contrib/awk/test/arynocls.ok new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/contrib/awk/test/arynocls.ok diff --git a/contrib/awk/test/arysubnm.awk b/contrib/awk/test/arysubnm.awk new file mode 100644 index 0000000..961b54a --- /dev/null +++ b/contrib/awk/test/arysubnm.awk @@ -0,0 +1 @@ +BEGIN { n = 11 ; foo[n] = n; print (2 <= n) } diff --git a/contrib/awk/test/arysubnm.ok b/contrib/awk/test/arysubnm.ok new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/contrib/awk/test/arysubnm.ok @@ -0,0 +1 @@ +1 diff --git a/contrib/awk/test/fnamedat.awk b/contrib/awk/test/fnamedat.awk new file mode 100644 index 0000000..33a0704 --- /dev/null +++ b/contrib/awk/test/fnamedat.awk @@ -0,0 +1 @@ +function foo() { print foo } {foo()} diff --git a/contrib/awk/test/fnamedat.in b/contrib/awk/test/fnamedat.in new file mode 100644 index 0000000..257cc56 --- /dev/null +++ b/contrib/awk/test/fnamedat.in @@ -0,0 +1 @@ +foo diff --git a/contrib/awk/test/fnamedat.ok b/contrib/awk/test/fnamedat.ok new file mode 100644 index 0000000..0dd0ae5 --- /dev/null +++ b/contrib/awk/test/fnamedat.ok @@ -0,0 +1 @@ +gawk: fnamedat.awk:1: (FILENAME=- FNR=1) fatal: can't use function name `foo' as variable or array diff --git a/contrib/awk/test/fnparydl.awk b/contrib/awk/test/fnparydl.awk new file mode 100644 index 0000000..ef3a822 --- /dev/null +++ b/contrib/awk/test/fnparydl.awk @@ -0,0 +1,31 @@ +# fnparydl.awk --- check that deleting works with arrays +# that are parameters. +# +# Tue Jul 11 14:20:58 EDT 2000 + +function delit(a, k) +{ + print "BEFORE LOOP" + for (k in a) { + print "DELETING KEY", k + delete a[k] + } + print "AFTER LOOP" +} + +BEGIN { + for (i = 1 ; i <= 7; i++) { + q[i] = sprintf("element %d", i) + x[i] = i + y[i] = q[i] + } +# adump(q) + delit(q) +# for (i in q) +# delete q[i] + j = 0; + for (i in q) + j++ + print j, "elements still in q[]" +# adump(q) +} diff --git a/contrib/awk/test/fnparydl.ok b/contrib/awk/test/fnparydl.ok new file mode 100644 index 0000000..26a5c39 --- /dev/null +++ b/contrib/awk/test/fnparydl.ok @@ -0,0 +1,10 @@ +BEFORE LOOP +DELETING KEY 4 +DELETING KEY 5 +DELETING KEY 6 +DELETING KEY 7 +DELETING KEY 1 +DELETING KEY 2 +DELETING KEY 3 +AFTER LOOP +0 elements still in q[] diff --git a/contrib/awk/test/funsmnam.awk b/contrib/awk/test/funsmnam.awk new file mode 100644 index 0000000..1e8ca50 --- /dev/null +++ b/contrib/awk/test/funsmnam.awk @@ -0,0 +1,6 @@ +function foo( \ + foo) +{ + print foo +} +{ foo() } diff --git a/contrib/awk/test/funsmnam.ok b/contrib/awk/test/funsmnam.ok new file mode 100644 index 0000000..bc68a2f --- /dev/null +++ b/contrib/awk/test/funsmnam.ok @@ -0,0 +1 @@ +gawk: funsmnam.awk:6: fatal: function `foo': can't use function name as parameter name diff --git a/contrib/awk/test/getlnbuf.awk b/contrib/awk/test/getlnbuf.awk new file mode 100644 index 0000000..8a4483e --- /dev/null +++ b/contrib/awk/test/getlnbuf.awk @@ -0,0 +1,18 @@ +#Date: Tue, 21 Dec 1999 16:11:07 +0100 +#From: Daniel Schnell <Daniel.Schnell.GP@icn.siemens.de> +#To: bug-gnu-utils@gnu.org +#CC: arnold@gnu.org +#Subject: BUG in gawk (version 3.0.4 linux, windows): Text mangeling in between + +# search for "@K@CODE" segment + +$0 ~ /@K@CODE/ { + # get next record + getline temp + printf ("@K@CODE\n") + printf ("%s\n",temp) + } + +$0 !~ /@K@CODE/ { + printf ("%s\n", $0) + } diff --git a/contrib/awk/test/getlnbuf.in b/contrib/awk/test/getlnbuf.in new file mode 100644 index 0000000..062b377 --- /dev/null +++ b/contrib/awk/test/getlnbuf.in @@ -0,0 +1,1708 @@ +EXTRA_INFO.TYP3.EC := EC; +EXTRA_INFO.TYP3.TEXT:= 'CONNECT_SERVICE TO OAM FAILED'; + +G9PXYA1S!G9TE500_EHP_P( +'G9IBSA1C003', /*@@ID*/ +G9PXYA1S!G9TE102_ERR_CLASS_SWERR, /*@@CLASS*/ +ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */ +G9PXYA1S!G9TE100_GB_LM, /* USER-ID */ +NULL /* OPTIONAL-SWET-INFO ADDR */ +); +/***@@@ END OF ERROR ***/ + +@K@FREEZE +917596041 +@K@NAME +T_ERR4_1 +@K@INSCRIPT +ERROR_HANDLING: +DB_OVERFLOW +MP/NSEI +@K@CODE +/***@@@ ERROR ***/ +/*@@ERRORTEXT +*@ DB-OVERFLOW +*@ +*@ +*@@DESCRIPTION +*@ THE INSTANCE-CREATION WAS NOT POSSIBLE +*@ BECAUSE THE DATABASE WOULD OVERFLOW +*@ +*@@EXTRA INFO +*@ (EXTRA_INFO_4_STRUCT) +*@ NSEI +*@ NSVCI +*@ TEXT +*@ +*/ + +EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0); +EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1); +EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: MP/NSEI-OVERFLOW'; + +G9PXYA1S!G9TE500_EHP_P( +'G9IBSA1C004', /*@@ID*/ +G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/ +ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */ +G9PXYA1S!G9TE100_GB_LM, /* USER-ID */ +NULL /* OPTIONAL-SWET-INFO ADDR */ +); +/***@@@ END OF ERROR ***/ + +@K@FREEZE +920903219 +@K@NAME +T_ERR4_2 +@K@INSCRIPT +ERROR_HANDLING: +DB_OVERFLOW +MP/NSVCI +@K@CODE +/***@@@ ERROR ***/ +/*@@ERRORTEXT +*@ DB-OVERFLOW +*@ +*@ +*@@DESCRIPTION +*@ THE INSTANCE-CREATION WAS NOT POSSIBLE +*@ BECAUSE THE DATABASE WOULD OVERFLOW +*@ +*@@EXTRA INFO +*@ (EXTRA_INFO_4_STRUCT) +*@ NSEI +*@ NSVCI +*@ TEXT +*@ +*/ + +EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0); +EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1); +EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: MP/NSVCI-OVERFLOW'; + +G9PXYA1S!G9TE500_EHP_P( +'G9IBSA1C004', /*@@ID*/ +G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/ +ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */ +G9PXYA1S!G9TE100_GB_LM, /* USER-ID */ +NULL /* OPTIONAL-SWET-INFO ADDR */ +); +/***@@@ END OF ERROR ***/ + +@K@FREEZE +920903222 +@K@NAME +T_ERR4_3 +@K@INSCRIPT +ERROR_HANDLING: +DB_OVERFLOW +NSEI/NSVCI +@K@CODE +/***@@@ ERROR ***/ +/*@@ERRORTEXT +*@ DB-OVERFLOW +*@ +*@ +*@@DESCRIPTION +*@ THE INSTANCE-CREATION WAS NOT POSSIBLE +*@ BECAUSE THE DATABASE WOULD OVERFLOW +*@ +*@@EXTRA INFO +*@ (EXTRA_INFO_4_STRUCT) +*@ NSEI +*@ NSVCI +*@ TEXT +*@ +*/ + +EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0); +EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1); +EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: NSEI/NSVC-OVERFLOW'; + +G9PXYA1S!G9TE500_EHP_P( +'G9IBSA1C004', /*@@ID*/ +G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/ +ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */ +G9PXYA1S!G9TE100_GB_LM, /* USER-ID */ +NULL /* OPTIONAL-SWET-INFO ADDR */ +); +/***@@@ END OF ERROR ***/ + +@K@FREEZE +920903226 +@K@NAME +TR_RESET +@K@INSCRIPT +RESTART_ +TNS_RESET_ +TIMER +@K@CODE +/* TIMER EVENT DESCRIPTOR STILL THERE */ + +/* INITIALIZATION OF THE TIMER-EVENT-DESCRIPTOR STILL VALID */ +NSVCI_CON_PTR->.TIM_EVD_PTR->.TIMER:= TNS_RESET_MAP; + +/* START TIMER */ +G9PX508_START_TIMER_P +( +NSVCI_CON_PTR->.TIM_EVD_PTR +); + +@K@FREEZE +924684867 +@K@NAME +TX_AUDIT +@K@INSCRIPT +FOR +AUDIT + +@K@NAME +M_BLKOACKM +@K@INSCRIPT +NS_ +BLOCK_ACK +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C), +TX_EVD_PTR +); + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE; + +IF +/* 'OTHER' ALIVE NSVC TO THIS NSEI EXISTING? */ +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL +THEN +/* USE THIS 'OTHER' FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(0):= + +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; +/* NSEI TO BE USED FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= + +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; +/* NSVCI TO BE USED FOR TRANSPORT */ +ELSE +/* USE AFFECTED NSVC AGAIN FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(0):= + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR +TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR +TRANSPORT */ +FI; + + +/* POINTER TO PDU IN POOL-ELEMENT */ +NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT) + + G9IBD44_NS_PDU_DATA_OFFSET_C); +/* OFFSET OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C; +/* LENGTH OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) + +SIZE(NS_PDU_PTR->.D3); + +/* NOW THE POOL-ELEMENT */ +NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR2_NS_BLOCK_ACK_C; /* PDU-TYPE */ + +NS_PDU_PTR->.D3.NSVCI_TLV.NSVCI_VAL := + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */ + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +938805885 +@K@NAME +T_RCTRUE +@K@INSCRIPT +RC += +TRUE +@K@CODE +RC:= TRUE; + +@K@FREEZE +922176328 +@K@NAME +M_AC_SBVCN +@K@INSCRIPT +G9IBME0_ +ACT_ +SIGN_BVC_C +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB512_GET_MSG_LESS_EV_DESCR_P +( +SID_GBNSVC, +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +TX_EVD_PTR->.EVENT_CMD:= G9IBME0_ACT_SIGN_BVC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE; +TX_EVD_PTR->.KEYS.INT_ARR(0):= EVD_PTR->.KEYS.INT_ARR(0); +TX_EVD_PTR->.KEYS.INT_ARR(1):= SIGN_BVCI; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +938788211 +@K@NAME +T_RC_EOD +@K@INSCRIPT +RC += +END OF DATA + +@K@CODE +RC:= G9IBSM4_RC_END_OF_DATA; + +@K@FREEZE +921083785 +@K@NAME +T_RC_EMP +@K@INSCRIPT +RC += +EMPTY + +@K@CODE +RC:= G9IBSM4_RC_EMPTY; + +@K@FREEZE +921083757 +@K@NAME +T_RC_ERR +@K@INSCRIPT +RC += +ERROR + +@K@CODE +RC:= G9IBSM4_RC_ERROR; + +@K@FREEZE +921083731 +@K@NAME +S_UNUSED +@K@INSCRIPT +G9IBSM0_ +UNUSED +@K@CODE + + +@K@FREEZE +919416670 +@K@NAME +TA_UNBLOCK +@K@INSCRIPT +START_ +TNS_UNBLOCK_ +TIMER +@K@CODE +/* GET TIMER-EVENT DESCRIPTOR */ +G9PB513_GET_TIMER_EV_DESCR_P +( +SID_GBNSVC, +NSVCI_CON_PTR->.TIM_EVD_PTR +); + +/* INITIALIZATION OF THE TIMER-EVENT-DESCRIPTOR */ +NSVCI_CON_PTR->.TIM_EVD_PTR->.EVENT_CMD:= G9IBSE4_TO_TNS_C; +NSVCI_CON_PTR->.TIM_EVD_PTR->.EVENT_DESTINATION:= GBNSVC_HANDLE; +NSVCI_CON_PTR->.TIM_EVD_PTR->.KEYS.INT_ARR(0):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; +NSVCI_CON_PTR->.TIM_EVD_PTR->.KEYS.INT_ARR(1):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; +NSVCI_CON_PTR->.TIM_EVD_PTR->.TIMER:= TNS_UNBLOCK_MAP; + +/* START TIMER */ +G9PX508_START_TIMER_P +( +NSVCI_CON_PTR->.TIM_EVD_PTR +); + +@K@FREEZE +924686210 +@K@NAME +M_BLK_ACKM +@K@INSCRIPT +NS_ +BLOCK_ACK +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C), +TX_EVD_PTR +); + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE; +TX_EVD_PTR->.KEYS.INT_ARR(0):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR +TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR +TRANSPORT */ +/* POINTER TO PDU IN POOL-ELEMENT */ +NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT) + + G9IBD44_NS_PDU_DATA_OFFSET_C); +/* OFFSET OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C; +/* LENGTH OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) + +SIZE(NS_PDU_PTR->.D3); + +/* NOW THE POOL-ELEMENT */ +NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR2_NS_BLOCK_ACK_C; /* PDU-TYPE */ + +NS_PDU_PTR->.D3.NSVCI_TLV.NSVCI_VAL := + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */ + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +926348442 +@K@NAME +TA_NXTALIV +@K@INSCRIPT +DEFINE +NEW 'NEXT_ +ALIVE' +@K@CODE +IF +/* ALIVE NSVC TO THE NSEI EXISTING? */ +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL + +THEN +/* TAKE NEXT ELEMENT IN THE LINKED LIST AS THE NEXT ALIVE NSVC */ +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR:= + +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.NEXT_ALV_NSVCI_CON_PTR; + +FI; + +@K@FREEZE +938801086 +@K@NAME +M_DE_CBVCN +@K@INSCRIPT +G9IBME2_ +DEACT_ +CELL_BVC_C + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB512_GET_MSG_LESS_EV_DESCR_P +( +SID_GBNSVC, +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +TX_EVD_PTR->.EVENT_CMD:= G9IBME2_DEACT_CELL_BVC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE; +TX_EVD_PTR->.KEYS.INT_ARR(0):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; +TX_EVD_PTR->.KEYS.INT_ARR(1):= EVD_PTR->.ADD_DATA(3); + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +933318270 +@K@NAME +TA_NXTRESP +@K@INSCRIPT +DEFINE +NEW 'NEXT_ +RESPONSIBLE' +@K@CODE +NSEI_CON_PTR->.NEXT_RESP_NSVCI_CON_PTR:= + NSEI_CON_PTR->.NEXT_RESP_NSVCI_CON_PTR->.NEXT_LSP_NSVCI_CON_PTR; + + +@K@FREEZE +938005006 +@K@NAME +TA_NXTSUBS +@K@INSCRIPT +DEFINE +NEW 'NEXT_ +SUBSTITUTE' +@K@CODE +NSEI_CON_PTR->.NEXT_SUBS_NSVCI_CON_PTR:= + NSEI_CON_PTR->.NEXT_SUBS_NSVCI_CON_PTR->.NEXT_UBL_NSVCI_CON_PTR; + +@K@NAME +M_BLK_O__M +@K@INSCRIPT +NS_ +BLOCK +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C), +TX_EVD_PTR +); + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE; + +IF +/* 'OTHER' ALIVE NSVC TO THIS NSEI EXISTING? */ +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL +THEN +/* USE THIS 'OTHER' FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(0):= + +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; +/* NSEI TO BE USED FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= + +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; +/* NSVCI TO BE USED FOR TRANSPORT */ +ELSE +/* USE AFFECTED NSVC AGAIN FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(0):= + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR +TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR +TRANSPORT */ +FI; + + +/* POINTER TO PDU IN POOL-ELEMENT */ +NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT) + + G9IBD44_NS_PDU_DATA_OFFSET_C); +/* OFFSET OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C; +/* LENGTH OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) + +SIZE(NS_PDU_PTR->.D2); + + +/* NOW THE POOL-ELEMENT */ +NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR1_NS_BLOCK_C; /* PDU-TYPE */ + +NS_PDU_PTR->.D2.CAUSE_TLV.CAUSE_VAL:= + G9IBBA2_NS_TRANSIT_NETWORK_FAILURE; /* CAUSE FOR BLOCK */ +NS_PDU_PTR->.D2.NSVCI_TLV.NSVCI_VAL := + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */ + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@TEXT +GSM 8.16 CHAP. 7.2: +THE NS-BLOCK-PDU MAY BE SENT IN ANY ALIVE +(BLOCKED OR UNBLOCKED) NS-VC... +@K@FREEZE +938803215 +@K@NAME +M_DE_SBVCN +@K@INSCRIPT +G9IBME1_ +DEACT_ +SIGN_BVC_C +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB512_GET_MSG_LESS_EV_DESCR_P +( +SID_GBNSVC, +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +TX_EVD_PTR->.EVENT_CMD:= G9IBME1_DEACT_SIGN_BVC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE; +TX_EVD_PTR->.KEYS.INT_ARR(0):= EVD_PTR->.KEYS.INT_ARR(0); +TX_EVD_PTR->.KEYS.INT_ARR(1):= SIGN_BVCI; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +938788201 +@K@NAME +M_OAME401M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +RESET_PDU + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSE */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSE; +OAM_MSG_PTR->.HANDLED_OBJECT.NSE_ID:= EVD_PTR->.KEYS.INT_ARR(0); /* +USED NSEI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_RESET_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.ADD_DATA(0); /* AFFECTED NSEI (FROM PDU) */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.ADD_DATA(1); /* AFFECTED NSVCI (FROM PDU) */ + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +935766108 +@K@NAME +M_OAME402M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +RESET_PDU + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.KEYS.INT_ARR(1); /* +USED NSVCI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_RESET_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */ + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +935766407 +@K@NAME +M_OAME411M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +RESET_ACK_PDU + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSE */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSE; +OAM_MSG_PTR->.HANDLED_OBJECT.NSE_ID:= EVD_PTR->.KEYS.INT_ARR(0); /* +USED NSEI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_RESET_ACK_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */ + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +935767332 +@K@NAME +M_OAME412M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +RESET_ACK_PDU + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.KEYS.INT_ARR(1); /* +USED NSVCI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_RESET_ACK_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */ + + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +935767189 +@K@NAME +C_CON +@K@INSCRIPT +RC_DB +@K@CODE +RC_DB + +@K@FREEZE +922176673 +@K@NAME +M_BLK____M +@K@INSCRIPT +NS_ +BLOCK +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C), +TX_EVD_PTR +); + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE; +TX_EVD_PTR->.KEYS.INT_ARR(0):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR +TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR +TRANSPORT */ +/* POINTER TO PDU IN POOL-ELEMENT */ +NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT) + + G9IBD44_NS_PDU_DATA_OFFSET_C); +/* OFFSET OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C; +/* LENGTH OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) + +SIZE(NS_PDU_PTR->.D2); + + +/* NOW THE POOL-ELEMENT */ +NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR1_NS_BLOCK_C; /* PDU-TYPE */ + +NS_PDU_PTR->.D2.CAUSE_TLV.CAUSE_VAL:= + G9IBBA2_NS_OAM_INTERVENTION; /* CAUSE FOR BLOCK */ +NS_PDU_PTR->.D2.NSVCI_TLV.NSVCI_VAL := + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */ + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@TEXT +GSM 8.16 CHAP. 7.2: +THE NS-BLOCK-PDU MAY BE SENT IN ANY ALIVE +(BLOCKED OR UNBLOCKED) NS-VC... +@K@FREEZE +926348613 +@K@NAME +S_BLOCKED +@K@INSCRIPT +G9IBSM0_ +BLOCKED +@K@CODE + + +@K@FREEZE +922176496 +@K@NAME +D_CON +@K@INSCRIPT +CONTEXT +GOT +@K@CODE +RC_DB = G9IBSR0_RC_OK + +@K@FREEZE +921772339 +@K@NAME +M_OAME901M +@K@INSCRIPT +ERROR_MESSAGE: +OPERATIONAL_STATE_CHANGE +UBL->BLK +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE; +/* ADDITIONAL_OPERATIONAL_STATE_INFO */ +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:= + G9OC101_UNBLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:= + G9OC102_ENABLED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:= + G9OC102_ENABLED; + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +925970975 +@K@NAME +M_OAME902M +@K@INSCRIPT +ERROR_MESSAGE: +OPERATIONAL_STATE_CHANGE +UBL->BLK + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE; +/* ADDITIONAL_OPERATIONAL_STATE_INFO */ +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:= + G9OC101_UNBLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:= + G9OC102_ENABLED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:= + G9OC102_DISABLED; + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +925970987 +@K@NAME +M_OAME10SM +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_BEGIN_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + TRUE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@NAME +M_OAME911M +@K@INSCRIPT +ERROR_MESSAGE: +OPERATIONAL_STATE_CHANGE +BLK->UBL +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE; +/* ADDITIONAL_OPERATIONAL_STATE_INFO */ +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:= + G9OC101_UNBLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:= + G9OC102_ENABLED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:= + G9OC102_ENABLED; + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +925970996 +@K@NAME +M_OAME20SM +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_END_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + TRUE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@NAME +M_OAME10_M +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_BEGIN_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + TRUE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922443813 +@K@NAME +D_SEM +@K@INSCRIPT +CALL_SEM += +TRUE +@K@CODE +CALL_SEM = TRUE + +@K@FREEZE +922176624 +@K@NAME +D_N_0 +@K@INSCRIPT +N = 0 + +@K@CODE +NSVCI_CON_PTR->.N = 0 + +@K@FREEZE +921511000 +@K@NAME +M_OAME12_M +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_BEGIN_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + FALSE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_ALIVE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922443829 +@K@NAME +M_OAME21_M +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_END_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + TRUE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + FALSE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922443856 +@K@NAME +M_OAME13_M +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_BEGIN_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + FALSE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_UNBLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_ALIVE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922443838 +@K@NAME +M_OAME22_M +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_END_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + FALSE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_ALIVE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922443864 +@K@NAME +M_OAME30_M +@K@INSCRIPT +ERROR_MESSAGE: +NO_ANSWER_FORM_BSS +RESET_PROCEDURE + + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS; +/* INITIATED_PROCEDURE */ +OAM_MSG_PTR->.INITIATED_PROCEDURE:= + G9OC123_RESET_PROCEDURE; + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922175973 +@K@NAME +M_OAME31_M +@K@INSCRIPT +ERROR_MESSAGE: +NO_ANSWER_FROM_BSS +BLOCK_PROCEDURE + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS; +/* INITIATED_PROCEDURE */ +OAM_MSG_PTR->.INITIATED_PROCEDURE:= + G9OC123_BLOCK_PROCEDURE; + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922175976 +@K@NAME +M_OAME32_M +@K@INSCRIPT +ERROR_MESSAGE: +NO_ANSWER_FROM_BSS +UNBLOCK_PROCEDURE + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS; +/* INITIATED_PROCEDURE */ +OAM_MSG_PTR->.INITIATED_PROCEDURE:= + G9OC123_UNBLOCK_PROCEDURE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922175980 +@K@NAME +M_OAME42_M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +BLOCK_PDU +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.ADD_DATA(1); /* +USED NSVCI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_BLOCK_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.KEYS.INT_ARR(0); /* AFFECTED NSEI (FROM PDU) */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.KEYS.INT_ARR(1); /* AFFECTED NSVCI (FROM PDU) */ + + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +934296141 +@K@NAME +M_OAME50_M +@K@INSCRIPT +ERROR_MESSAGE: +STATUS_PDU_CONTAINS_ERROR_INFO +RECEIVED +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR-CAUSE = STATUS_PDU_CONTAINS_ERROR_INFO */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_STATUS_PDU_CONTAINS_ERROR_INFO; +/* ADDITIONAL_STATUS_PDU_INFO */ +INT_CAUSE_PTR.INT_PTR:= ADDR(EVD_PTR->.ADD_DATA(2)); +OAM_MSG_PTR->.ADDITIONAL_STATUS_PDU_INFO:= + INT_CAUSE_PTR.CAUSE_PTR->; /* CAUSE */ + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@TEXT +NICHT OK + +@K@FREEZE +934298924 +@K@NAME +M_OAME43_M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +BLOCK_ACK_PDU +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.ADD_DATA(1); /* +USED NSVCI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_BLOCK_ACK_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.KEYS.INT_ARR(0); /* AFFECTED NSEI (FROM PDU) */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.KEYS.INT_ARR(1); /* AFFECTED NSVCI (FROM PDU) */ + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +934297710 diff --git a/contrib/awk/test/getlnbuf.ok b/contrib/awk/test/getlnbuf.ok new file mode 100644 index 0000000..062b377 --- /dev/null +++ b/contrib/awk/test/getlnbuf.ok @@ -0,0 +1,1708 @@ +EXTRA_INFO.TYP3.EC := EC; +EXTRA_INFO.TYP3.TEXT:= 'CONNECT_SERVICE TO OAM FAILED'; + +G9PXYA1S!G9TE500_EHP_P( +'G9IBSA1C003', /*@@ID*/ +G9PXYA1S!G9TE102_ERR_CLASS_SWERR, /*@@CLASS*/ +ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */ +G9PXYA1S!G9TE100_GB_LM, /* USER-ID */ +NULL /* OPTIONAL-SWET-INFO ADDR */ +); +/***@@@ END OF ERROR ***/ + +@K@FREEZE +917596041 +@K@NAME +T_ERR4_1 +@K@INSCRIPT +ERROR_HANDLING: +DB_OVERFLOW +MP/NSEI +@K@CODE +/***@@@ ERROR ***/ +/*@@ERRORTEXT +*@ DB-OVERFLOW +*@ +*@ +*@@DESCRIPTION +*@ THE INSTANCE-CREATION WAS NOT POSSIBLE +*@ BECAUSE THE DATABASE WOULD OVERFLOW +*@ +*@@EXTRA INFO +*@ (EXTRA_INFO_4_STRUCT) +*@ NSEI +*@ NSVCI +*@ TEXT +*@ +*/ + +EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0); +EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1); +EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: MP/NSEI-OVERFLOW'; + +G9PXYA1S!G9TE500_EHP_P( +'G9IBSA1C004', /*@@ID*/ +G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/ +ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */ +G9PXYA1S!G9TE100_GB_LM, /* USER-ID */ +NULL /* OPTIONAL-SWET-INFO ADDR */ +); +/***@@@ END OF ERROR ***/ + +@K@FREEZE +920903219 +@K@NAME +T_ERR4_2 +@K@INSCRIPT +ERROR_HANDLING: +DB_OVERFLOW +MP/NSVCI +@K@CODE +/***@@@ ERROR ***/ +/*@@ERRORTEXT +*@ DB-OVERFLOW +*@ +*@ +*@@DESCRIPTION +*@ THE INSTANCE-CREATION WAS NOT POSSIBLE +*@ BECAUSE THE DATABASE WOULD OVERFLOW +*@ +*@@EXTRA INFO +*@ (EXTRA_INFO_4_STRUCT) +*@ NSEI +*@ NSVCI +*@ TEXT +*@ +*/ + +EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0); +EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1); +EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: MP/NSVCI-OVERFLOW'; + +G9PXYA1S!G9TE500_EHP_P( +'G9IBSA1C004', /*@@ID*/ +G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/ +ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */ +G9PXYA1S!G9TE100_GB_LM, /* USER-ID */ +NULL /* OPTIONAL-SWET-INFO ADDR */ +); +/***@@@ END OF ERROR ***/ + +@K@FREEZE +920903222 +@K@NAME +T_ERR4_3 +@K@INSCRIPT +ERROR_HANDLING: +DB_OVERFLOW +NSEI/NSVCI +@K@CODE +/***@@@ ERROR ***/ +/*@@ERRORTEXT +*@ DB-OVERFLOW +*@ +*@ +*@@DESCRIPTION +*@ THE INSTANCE-CREATION WAS NOT POSSIBLE +*@ BECAUSE THE DATABASE WOULD OVERFLOW +*@ +*@@EXTRA INFO +*@ (EXTRA_INFO_4_STRUCT) +*@ NSEI +*@ NSVCI +*@ TEXT +*@ +*/ + +EXTRA_INFO.TYP4.NSEI := EVD_PTR->.KEYS.INT_ARR(0); +EXTRA_INFO.TYP4.NSVCI:= EVD_PTR->.KEYS.INT_ARR(1); +EXTRA_INFO.TYP4.TEXT := 'NSVC-HAND.: NSEI/NSVC-OVERFLOW'; + +G9PXYA1S!G9TE500_EHP_P( +'G9IBSA1C004', /*@@ID*/ +G9PXYA1S!G9TE102_ERR_CLASS_ESC_MAX_ANY, /*@@CLASS*/ +ADDR(EXTRA_INFO.ERROR_HANDLER), /* EXTRA-INFO ADDR */ +G9PXYA1S!G9TE100_GB_LM, /* USER-ID */ +NULL /* OPTIONAL-SWET-INFO ADDR */ +); +/***@@@ END OF ERROR ***/ + +@K@FREEZE +920903226 +@K@NAME +TR_RESET +@K@INSCRIPT +RESTART_ +TNS_RESET_ +TIMER +@K@CODE +/* TIMER EVENT DESCRIPTOR STILL THERE */ + +/* INITIALIZATION OF THE TIMER-EVENT-DESCRIPTOR STILL VALID */ +NSVCI_CON_PTR->.TIM_EVD_PTR->.TIMER:= TNS_RESET_MAP; + +/* START TIMER */ +G9PX508_START_TIMER_P +( +NSVCI_CON_PTR->.TIM_EVD_PTR +); + +@K@FREEZE +924684867 +@K@NAME +TX_AUDIT +@K@INSCRIPT +FOR +AUDIT + +@K@NAME +M_BLKOACKM +@K@INSCRIPT +NS_ +BLOCK_ACK +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C), +TX_EVD_PTR +); + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE; + +IF +/* 'OTHER' ALIVE NSVC TO THIS NSEI EXISTING? */ +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL +THEN +/* USE THIS 'OTHER' FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(0):= + +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; +/* NSEI TO BE USED FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= + +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; +/* NSVCI TO BE USED FOR TRANSPORT */ +ELSE +/* USE AFFECTED NSVC AGAIN FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(0):= + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR +TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR +TRANSPORT */ +FI; + + +/* POINTER TO PDU IN POOL-ELEMENT */ +NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT) + + G9IBD44_NS_PDU_DATA_OFFSET_C); +/* OFFSET OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C; +/* LENGTH OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) + +SIZE(NS_PDU_PTR->.D3); + +/* NOW THE POOL-ELEMENT */ +NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR2_NS_BLOCK_ACK_C; /* PDU-TYPE */ + +NS_PDU_PTR->.D3.NSVCI_TLV.NSVCI_VAL := + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */ + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +938805885 +@K@NAME +T_RCTRUE +@K@INSCRIPT +RC += +TRUE +@K@CODE +RC:= TRUE; + +@K@FREEZE +922176328 +@K@NAME +M_AC_SBVCN +@K@INSCRIPT +G9IBME0_ +ACT_ +SIGN_BVC_C +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB512_GET_MSG_LESS_EV_DESCR_P +( +SID_GBNSVC, +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +TX_EVD_PTR->.EVENT_CMD:= G9IBME0_ACT_SIGN_BVC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE; +TX_EVD_PTR->.KEYS.INT_ARR(0):= EVD_PTR->.KEYS.INT_ARR(0); +TX_EVD_PTR->.KEYS.INT_ARR(1):= SIGN_BVCI; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +938788211 +@K@NAME +T_RC_EOD +@K@INSCRIPT +RC += +END OF DATA + +@K@CODE +RC:= G9IBSM4_RC_END_OF_DATA; + +@K@FREEZE +921083785 +@K@NAME +T_RC_EMP +@K@INSCRIPT +RC += +EMPTY + +@K@CODE +RC:= G9IBSM4_RC_EMPTY; + +@K@FREEZE +921083757 +@K@NAME +T_RC_ERR +@K@INSCRIPT +RC += +ERROR + +@K@CODE +RC:= G9IBSM4_RC_ERROR; + +@K@FREEZE +921083731 +@K@NAME +S_UNUSED +@K@INSCRIPT +G9IBSM0_ +UNUSED +@K@CODE + + +@K@FREEZE +919416670 +@K@NAME +TA_UNBLOCK +@K@INSCRIPT +START_ +TNS_UNBLOCK_ +TIMER +@K@CODE +/* GET TIMER-EVENT DESCRIPTOR */ +G9PB513_GET_TIMER_EV_DESCR_P +( +SID_GBNSVC, +NSVCI_CON_PTR->.TIM_EVD_PTR +); + +/* INITIALIZATION OF THE TIMER-EVENT-DESCRIPTOR */ +NSVCI_CON_PTR->.TIM_EVD_PTR->.EVENT_CMD:= G9IBSE4_TO_TNS_C; +NSVCI_CON_PTR->.TIM_EVD_PTR->.EVENT_DESTINATION:= GBNSVC_HANDLE; +NSVCI_CON_PTR->.TIM_EVD_PTR->.KEYS.INT_ARR(0):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; +NSVCI_CON_PTR->.TIM_EVD_PTR->.KEYS.INT_ARR(1):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; +NSVCI_CON_PTR->.TIM_EVD_PTR->.TIMER:= TNS_UNBLOCK_MAP; + +/* START TIMER */ +G9PX508_START_TIMER_P +( +NSVCI_CON_PTR->.TIM_EVD_PTR +); + +@K@FREEZE +924686210 +@K@NAME +M_BLK_ACKM +@K@INSCRIPT +NS_ +BLOCK_ACK +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C), +TX_EVD_PTR +); + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE; +TX_EVD_PTR->.KEYS.INT_ARR(0):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR +TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR +TRANSPORT */ +/* POINTER TO PDU IN POOL-ELEMENT */ +NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT) + + G9IBD44_NS_PDU_DATA_OFFSET_C); +/* OFFSET OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C; +/* LENGTH OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) + +SIZE(NS_PDU_PTR->.D3); + +/* NOW THE POOL-ELEMENT */ +NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR2_NS_BLOCK_ACK_C; /* PDU-TYPE */ + +NS_PDU_PTR->.D3.NSVCI_TLV.NSVCI_VAL := + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */ + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +926348442 +@K@NAME +TA_NXTALIV +@K@INSCRIPT +DEFINE +NEW 'NEXT_ +ALIVE' +@K@CODE +IF +/* ALIVE NSVC TO THE NSEI EXISTING? */ +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL + +THEN +/* TAKE NEXT ELEMENT IN THE LINKED LIST AS THE NEXT ALIVE NSVC */ +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR:= + +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.NEXT_ALV_NSVCI_CON_PTR; + +FI; + +@K@FREEZE +938801086 +@K@NAME +M_DE_CBVCN +@K@INSCRIPT +G9IBME2_ +DEACT_ +CELL_BVC_C + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB512_GET_MSG_LESS_EV_DESCR_P +( +SID_GBNSVC, +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +TX_EVD_PTR->.EVENT_CMD:= G9IBME2_DEACT_CELL_BVC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE; +TX_EVD_PTR->.KEYS.INT_ARR(0):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; +TX_EVD_PTR->.KEYS.INT_ARR(1):= EVD_PTR->.ADD_DATA(3); + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +933318270 +@K@NAME +TA_NXTRESP +@K@INSCRIPT +DEFINE +NEW 'NEXT_ +RESPONSIBLE' +@K@CODE +NSEI_CON_PTR->.NEXT_RESP_NSVCI_CON_PTR:= + NSEI_CON_PTR->.NEXT_RESP_NSVCI_CON_PTR->.NEXT_LSP_NSVCI_CON_PTR; + + +@K@FREEZE +938005006 +@K@NAME +TA_NXTSUBS +@K@INSCRIPT +DEFINE +NEW 'NEXT_ +SUBSTITUTE' +@K@CODE +NSEI_CON_PTR->.NEXT_SUBS_NSVCI_CON_PTR:= + NSEI_CON_PTR->.NEXT_SUBS_NSVCI_CON_PTR->.NEXT_UBL_NSVCI_CON_PTR; + +@K@NAME +M_BLK_O__M +@K@INSCRIPT +NS_ +BLOCK +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C), +TX_EVD_PTR +); + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE; + +IF +/* 'OTHER' ALIVE NSVC TO THIS NSEI EXISTING? */ +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR /= NULL +THEN +/* USE THIS 'OTHER' FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(0):= + +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; +/* NSEI TO BE USED FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= + +NSVCI_CON_PTR->.OWN_NSEI_CON_PTR->.NEXT_ALIV_NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; +/* NSVCI TO BE USED FOR TRANSPORT */ +ELSE +/* USE AFFECTED NSVC AGAIN FOR TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(0):= + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR +TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR +TRANSPORT */ +FI; + + +/* POINTER TO PDU IN POOL-ELEMENT */ +NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT) + + G9IBD44_NS_PDU_DATA_OFFSET_C); +/* OFFSET OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C; +/* LENGTH OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) + +SIZE(NS_PDU_PTR->.D2); + + +/* NOW THE POOL-ELEMENT */ +NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR1_NS_BLOCK_C; /* PDU-TYPE */ + +NS_PDU_PTR->.D2.CAUSE_TLV.CAUSE_VAL:= + G9IBBA2_NS_TRANSIT_NETWORK_FAILURE; /* CAUSE FOR BLOCK */ +NS_PDU_PTR->.D2.NSVCI_TLV.NSVCI_VAL := + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */ + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@TEXT +GSM 8.16 CHAP. 7.2: +THE NS-BLOCK-PDU MAY BE SENT IN ANY ALIVE +(BLOCKED OR UNBLOCKED) NS-VC... +@K@FREEZE +938803215 +@K@NAME +M_DE_SBVCN +@K@INSCRIPT +G9IBME1_ +DEACT_ +SIGN_BVC_C +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB512_GET_MSG_LESS_EV_DESCR_P +( +SID_GBNSVC, +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +TX_EVD_PTR->.EVENT_CMD:= G9IBME1_DEACT_SIGN_BVC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBBVC_HANDLE; +TX_EVD_PTR->.KEYS.INT_ARR(0):= EVD_PTR->.KEYS.INT_ARR(0); +TX_EVD_PTR->.KEYS.INT_ARR(1):= SIGN_BVCI; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +938788201 +@K@NAME +M_OAME401M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +RESET_PDU + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSE */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSE; +OAM_MSG_PTR->.HANDLED_OBJECT.NSE_ID:= EVD_PTR->.KEYS.INT_ARR(0); /* +USED NSEI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_RESET_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.ADD_DATA(0); /* AFFECTED NSEI (FROM PDU) */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.ADD_DATA(1); /* AFFECTED NSVCI (FROM PDU) */ + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +935766108 +@K@NAME +M_OAME402M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +RESET_PDU + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.KEYS.INT_ARR(1); /* +USED NSVCI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_RESET_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */ + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +935766407 +@K@NAME +M_OAME411M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +RESET_ACK_PDU + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSE */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSE; +OAM_MSG_PTR->.HANDLED_OBJECT.NSE_ID:= EVD_PTR->.KEYS.INT_ARR(0); /* +USED NSEI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_RESET_ACK_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */ + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +935767332 +@K@NAME +M_OAME412M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +RESET_ACK_PDU + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.KEYS.INT_ARR(1); /* +USED NSVCI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_RESET_ACK_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.ADD_DATA(0); /* NSEI FROM PDU */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.ADD_DATA(1); /* NSVCI FROM PDU */ + + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +935767189 +@K@NAME +C_CON +@K@INSCRIPT +RC_DB +@K@CODE +RC_DB + +@K@FREEZE +922176673 +@K@NAME +M_BLK____M +@K@INSCRIPT +NS_ +BLOCK +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9IBDF4_NS_LM_M) + G9IBD44_NS_PDU_DATA_OFFSET_C), +TX_EVD_PTR +); + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9IBD40_NS_LM_PDU_C; +TX_EVD_PTR->.EVENT_DESTINATION:= GBDL_HANDLE; +TX_EVD_PTR->.KEYS.INT_ARR(0):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSEI; /* NSEI TO BE USED FOR +TRANSPORT */ +TX_EVD_PTR->.KEYS.INT_ARR(1):= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVCI TO BE USED FOR +TRANSPORT */ +/* POINTER TO PDU IN POOL-ELEMENT */ +NS_PDU_PTR:= NS_PDU_REF_M (INT(TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT) + + G9IBD44_NS_PDU_DATA_OFFSET_C); +/* OFFSET OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_OFFSET:= G9IBD44_NS_PDU_DATA_OFFSET_C; +/* LENGTH OF THE PDU IN POOL-ELEMENT */ +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(NS_PDU_PTR->.G9IBDF4_PDU_TYPE) + +SIZE(NS_PDU_PTR->.D2); + + +/* NOW THE POOL-ELEMENT */ +NS_PDU_PTR->.G9IBDF4_PDU_TYPE:= G9IBDR1_NS_BLOCK_C; /* PDU-TYPE */ + +NS_PDU_PTR->.D2.CAUSE_TLV.CAUSE_VAL:= + G9IBBA2_NS_OAM_INTERVENTION; /* CAUSE FOR BLOCK */ +NS_PDU_PTR->.D2.NSVCI_TLV.NSVCI_VAL := + NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; /* NSVC TO BE BLOCKED */ + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@TEXT +GSM 8.16 CHAP. 7.2: +THE NS-BLOCK-PDU MAY BE SENT IN ANY ALIVE +(BLOCKED OR UNBLOCKED) NS-VC... +@K@FREEZE +926348613 +@K@NAME +S_BLOCKED +@K@INSCRIPT +G9IBSM0_ +BLOCKED +@K@CODE + + +@K@FREEZE +922176496 +@K@NAME +D_CON +@K@INSCRIPT +CONTEXT +GOT +@K@CODE +RC_DB = G9IBSR0_RC_OK + +@K@FREEZE +921772339 +@K@NAME +M_OAME901M +@K@INSCRIPT +ERROR_MESSAGE: +OPERATIONAL_STATE_CHANGE +UBL->BLK +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE; +/* ADDITIONAL_OPERATIONAL_STATE_INFO */ +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:= + G9OC101_UNBLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:= + G9OC102_ENABLED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:= + G9OC102_ENABLED; + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +925970975 +@K@NAME +M_OAME902M +@K@INSCRIPT +ERROR_MESSAGE: +OPERATIONAL_STATE_CHANGE +UBL->BLK + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE; +/* ADDITIONAL_OPERATIONAL_STATE_INFO */ +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:= + G9OC101_UNBLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:= + G9OC102_ENABLED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:= + G9OC102_DISABLED; + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +925970987 +@K@NAME +M_OAME10SM +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_BEGIN_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + TRUE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@NAME +M_OAME911M +@K@INSCRIPT +ERROR_MESSAGE: +OPERATIONAL_STATE_CHANGE +BLK->UBL +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = OPERATIONAL_STATE_CHANGE */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_OPERATIONAL_STATE_CHANGE; +/* ADDITIONAL_OPERATIONAL_STATE_INFO */ +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.OPER_STATE_NEW:= + G9OC101_UNBLOCKED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_OLD:= + G9OC102_ENABLED; +OAM_MSG_PTR->.ADDITIONAL_OPERATIONAL_STATE_INFO.ADMIN_STATE_NEW:= + G9OC102_ENABLED; + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +925970996 +@K@NAME +M_OAME20SM +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_END_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + TRUE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@NAME +M_OAME10_M +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_BEGIN_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + TRUE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922443813 +@K@NAME +D_SEM +@K@INSCRIPT +CALL_SEM += +TRUE +@K@CODE +CALL_SEM = TRUE + +@K@FREEZE +922176624 +@K@NAME +D_N_0 +@K@INSCRIPT +N = 0 + +@K@CODE +NSVCI_CON_PTR->.N = 0 + +@K@FREEZE +921511000 +@K@NAME +M_OAME12_M +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_BEGIN_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + FALSE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_ALIVE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922443829 +@K@NAME +M_OAME21_M +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_END_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + TRUE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + FALSE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922443856 +@K@NAME +M_OAME13_M +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_BEGIN_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_BEGIN_NS_ALIVE_TEST*/ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_BEGIN_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + FALSE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_UNBLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_ALIVE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922443838 +@K@NAME +M_OAME22_M +@K@INSCRIPT +ERROR_MESSAGE: +ALARM_END_NS_ALIVE_TEST +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = ALARM_END_NS_ALIVE_TEST */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ALARM_END_NS_ALIVE_TEST; +/* ADDITIONAL_ALARM_INFO */ +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.ADMINISTRATIVE_STATE_CHANGED:= + FALSE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_OLD:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.OPER_STATE_NEW:= + G9OC101_BLOCKED; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_OLD:= + G9OC103_DEAD; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.AVAIL_STATE_NEW:= + G9OC103_ALIVE; +OAM_MSG_PTR->.ADDITIONAL_ALARM_INFO.CONFIGURATION_OF_NSVC:= + TRUE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922443864 +@K@NAME +M_OAME30_M +@K@INSCRIPT +ERROR_MESSAGE: +NO_ANSWER_FORM_BSS +RESET_PROCEDURE + + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS; +/* INITIATED_PROCEDURE */ +OAM_MSG_PTR->.INITIATED_PROCEDURE:= + G9OC123_RESET_PROCEDURE; + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922175973 +@K@NAME +M_OAME31_M +@K@INSCRIPT +ERROR_MESSAGE: +NO_ANSWER_FROM_BSS +BLOCK_PROCEDURE + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS; +/* INITIATED_PROCEDURE */ +OAM_MSG_PTR->.INITIATED_PROCEDURE:= + G9OC123_BLOCK_PROCEDURE; + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922175976 +@K@NAME +M_OAME32_M +@K@INSCRIPT +ERROR_MESSAGE: +NO_ANSWER_FROM_BSS +UNBLOCK_PROCEDURE + +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR_CAUSE = NO_ANSWER_FROM_BSS */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_NO_ANSWER_FROM_BSS; +/* INITIATED_PROCEDURE */ +OAM_MSG_PTR->.INITIATED_PROCEDURE:= + G9OC123_UNBLOCK_PROCEDURE; + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +922175980 +@K@NAME +M_OAME42_M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +BLOCK_PDU +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.ADD_DATA(1); /* +USED NSVCI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_BLOCK_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.KEYS.INT_ARR(0); /* AFFECTED NSEI (FROM PDU) */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.KEYS.INT_ARR(1); /* AFFECTED NSVCI (FROM PDU) */ + + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +934296141 +@K@NAME +M_OAME50_M +@K@INSCRIPT +ERROR_MESSAGE: +STATUS_PDU_CONTAINS_ERROR_INFO +RECEIVED +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= +NSVCI_CON_PTR->.DBMS.NSVC_INSTANCE.NSVCI; + +/* ERROR-CAUSE = STATUS_PDU_CONTAINS_ERROR_INFO */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_STATUS_PDU_CONTAINS_ERROR_INFO; +/* ADDITIONAL_STATUS_PDU_INFO */ +INT_CAUSE_PTR.INT_PTR:= ADDR(EVD_PTR->.ADD_DATA(2)); +OAM_MSG_PTR->.ADDITIONAL_STATUS_PDU_INFO:= + INT_CAUSE_PTR.CAUSE_PTR->; /* CAUSE */ + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@TEXT +NICHT OK + +@K@FREEZE +934298924 +@K@NAME +M_OAME43_M +@K@INSCRIPT +ERROR_MESSAGE: +ERRONOUS_PDU +BLOCK_ACK_PDU +@K@CODE +/* GETTING THE EVENT DESCRIPTOR */ +G9PB511_GET_MSG_BOUND_EV_DESCR_P +( +SID_GBNSVC, +(SIZE(G9OC109_REPORTED_EVENT_STR_M)), +TX_EVD_PTR +); + + +/* COMPOSING THE EVENT */ +/* FIRST THE DESCRIPTOR */ +TX_EVD_PTR->.EVENT_CMD:= G9PX040_SEND_MBC_C; +TX_EVD_PTR->.EVENT_DESTINATION:= RXTX_HANDLE; +TX_EVD_PTR->.KEYS.UBI_INDEX:= OAM_UBI_INDEX; +TX_EVD_PTR->.BOUND.DATA_OFFSET:= 0; +TX_EVD_PTR->.BOUND.DATA_LENGTH:= SIZE(G9OC109_REPORTED_EVENT_STR_M); + +/* NOW THE POOL-ELEMENT */ +/* INITIALIZATION OF THE POINTER WITH THE POOL-ELEMENT-START */ +OAM_MSG_PTR:= OAM_MSG_PTR_M (TX_EVD_PTR->.BOUND.PTR_TO_POOL_ELEMENT); + +/* COMPOSING THE MESSAGE */ +/* HANDLED OBJECT = AFFECTED INSTANCE, TYPE NSVC */ +OAM_MSG_PTR->.HANDLED_OBJECT.OBJECT_TYPE:= G9OC104_NSVC; +OAM_MSG_PTR->.HANDLED_OBJECT.NSVC_ID:= EVD_PTR->.ADD_DATA(1); /* +USED NSVCI (FROM ECI) */ + +/* ERROR-CAUSE = ERRONEOUS_PDU */ +OAM_MSG_PTR->.ERROR_CAUSE:= G9OC108_ERRONEOUS_PDU; +/* ADDITIONAL_PDU_INFO */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_PDU_TYPE:= + G9OC124_BLOCK_ACK_PDU; +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSEI:= + EVD_PTR->.KEYS.INT_ARR(0); /* AFFECTED NSEI (FROM PDU) */ +OAM_MSG_PTR->.ADDITIONAL_PDU_INFO.G9OC120_REPORTED_NSVC:= + EVD_PTR->.KEYS.INT_ARR(1); /* AFFECTED NSVCI (FROM PDU) */ + + + +/* SENDING */ +G9PX503_POST_EVENT_P(TX_EVD_PTR); + +@K@FREEZE +934297710 diff --git a/contrib/awk/test/getnr2tb.awk b/contrib/awk/test/getnr2tb.awk new file mode 100644 index 0000000..204acf4 --- /dev/null +++ b/contrib/awk/test/getnr2tb.awk @@ -0,0 +1,111 @@ +#From vp@dmat.uevora.pt Thu Jun 18 09:10 EDT 1998 +#Received: from mescaline.gnu.org (we-refuse-to-spy-on-our-users@mescaline.gnu.org [158.121.106.21]) by cssun.mathcs.emory.edu (8.7.5/8.6.9-940818.01cssun) with ESMTP id JAA23649 for <arnold@mathcs.emory.edu>; Thu, 18 Jun 1998 09:10:54 -0400 (EDT) +#Received: from khromeleque.dmat.uevora.pt by mescaline.gnu.org (8.8.5/8.6.12GNU) with ESMTP id JAA21732 for <arnold@gnu.ai.mit.edu>; Thu, 18 Jun 1998 09:11:19 -0400 +#Received: from khromeleque.dmat.uevora.pt (vp@localhost [127.0.0.1]) +# by khromeleque.dmat.uevora.pt (8.8.8/8.8.8/Debian/GNU) with ESMTP id OAA11817 +# for <arnold@gnu.ai.mit.edu>; Thu, 18 Jun 1998 14:13:57 +0100 +#Message-Id: <199806181313.OAA11817@khromeleque.dmat.uevora.pt> +#To: arnold@gnu.org +#Subject: concatenation bug in gawk 3.0.3 +#Date: Thu, 18 Jun 1998 14:13:57 +0200 +#From: Vasco Pedro <vp@dmat.uevora.pt> +#Content-Type: text +#Content-Length: 2285 +#Status: RO +# +#Hi, +# +#The gawk program '{print NR " " 10/NR}' will print: +# +#1 10 +#5 5 +#3 3.33333 +#2 2.5 +#2 2 +#1 1.66667 +# +#instead of the correct: +# +#1 10 +#2 5 +#3 3.33333 +#4 2.5 +#5 2 +#6 1.66667 +# +#You'll notice, on the incorrect output, that the first column is +#the first digit of the second. +# +#I think the problem comes from the way builtin variables are handled. +#Since the items to be concatenated are processed in reverse order and +#the return value of tree_eval(``NR'') is a pointer to the value part +#of `NR_node', the `unref()' of `NR_node' due to its second occurrence +#will leave a dangling pointer in `strlist'. The reason that it doesn't +#reuse the freed space with objects of the same type. (Using Electric +#Fence with EF_PROTECT_FREE set confirms that freed space is being +#accessed.) +# +#The enclosed patch (hack would be a better word to describe it) is +#all I could come up with. With it installed, things seem to work ok, +#but I doubt this is the correct way to do it. (If I treated the +#case for `Node_field_spec' as the I did others, `make check' would +#fail in several places.) +# +#Regards, +#vasco +# +#*** eval.c~ Tue May 6 21:39:55 1997 +#--- eval.c Thu Jun 18 13:39:25 1998 +#*************** +#*** 685,697 **** +# return func_call(tree->rnode, tree->lnode); +# +# /* unary operations */ +# case Node_NR: +# case Node_FNR: +# case Node_NF: +# case Node_FIELDWIDTHS: +# case Node_FS: +# case Node_RS: +#- case Node_field_spec: +# case Node_subscript: +# case Node_IGNORECASE: +# case Node_OFS: +#--- 685,700 ---- +# return func_call(tree->rnode, tree->lnode); +# +# /* unary operations */ +#+ case Node_field_spec: +#+ lhs = get_lhs(tree, (Func_ptr *) NULL); +#+ return *lhs; +#+ +# case Node_NR: +# case Node_FNR: +# case Node_NF: +# case Node_FIELDWIDTHS: +# case Node_FS: +# case Node_RS: +# case Node_subscript: +# case Node_IGNORECASE: +# case Node_OFS: +#*************** +#*** 699,705 **** +# case Node_OFMT: +# case Node_CONVFMT: +# lhs = get_lhs(tree, (Func_ptr *) NULL); +#! return *lhs; +# +# case Node_var_array: +# fatal("attempt to use array `%s' in a scalar context", +#--- 702,710 ---- +# case Node_OFMT: +# case Node_CONVFMT: +# lhs = get_lhs(tree, (Func_ptr *) NULL); +#! r = dupnode(*lhs); +#! r->flags |= TEMP; +#! return r; +# +# case Node_var_array: +# fatal("attempt to use array `%s' in a scalar context", +# +{ print NR " " 10/NR } diff --git a/contrib/awk/test/getnr2tb.in b/contrib/awk/test/getnr2tb.in new file mode 100644 index 0000000..f985857 --- /dev/null +++ b/contrib/awk/test/getnr2tb.in @@ -0,0 +1,6 @@ +line 1 +line 2 +line 3 +line 4 +line 5 +line 6 diff --git a/contrib/awk/test/getnr2tb.ok b/contrib/awk/test/getnr2tb.ok new file mode 100644 index 0000000..7b40e8d --- /dev/null +++ b/contrib/awk/test/getnr2tb.ok @@ -0,0 +1,6 @@ +1 10 +2 5 +3 3.33333 +4 2.5 +5 2 +6 1.66667 diff --git a/contrib/awk/test/getnr2tm.awk b/contrib/awk/test/getnr2tm.awk new file mode 100644 index 0000000..dfe377a --- /dev/null +++ b/contrib/awk/test/getnr2tm.awk @@ -0,0 +1,75 @@ +#From dhw@gamgee.acad.emich.edu Sat Oct 31 22:54:07 1998 +#Return-Path: <dhw@gamgee.acad.emich.edu> +#Received: from cssun.mathcs.emory.edu (cssun.mathcs.emory.edu [170.140.150.1]) +# by amx.netvision.net.il (8.9.0.Beta5/8.8.6) with ESMTP id HAA08891 +# for <arobbins@netvision.net.il>; Sat, 31 Oct 1998 07:14:07 +0200 (IST) +#Received: from mescaline.gnu.org (we-refuse-to-spy-on-our-users@mescaline.gnu.org [158.121.106.21]) by cssun.mathcs.emory.edu (8.7.5/8.6.9-940818.01cssun) with ESMTP id AAA14947 for <arnold@mathcs.emory.edu>; Sat, 31 Oct 1998 00:14:32 -0500 (EST) +#Received: from gamgee.acad.emich.edu (gamgee.acad.emich.edu [164.76.102.76]) +# by mescaline.gnu.org (8.9.1a/8.9.1) with SMTP id AAA20645 +# for <arnold@gnu.ai.mit.edu>; Sat, 31 Oct 1998 00:17:54 -0500 +#Received: by gamgee.acad.emich.edu (Smail3.1.29.1 #57) +# id m0zZUKY-000IDSC; Sat, 31 Oct 98 00:16 CST +#Message-Id: <m0zZUKY-000IDSC@gamgee.acad.emich.edu> +#Date: Sat, 31 Oct 98 00:16 CST +#From: dhw@gamgee.acad.emich.edu (David H. West) +#To: bug-gnu-utils@gnu.org +#Subject: gawk 3.0.3 bug report +#Cc: arnold@gnu.org +#X-UIDL: 7474b825cff989adf38f13883d84fdd7 +#Status: RO +# +#gawk version: 3.03 +#System used: Linux, kernel 2.0.28, libc 5.4.33, AMD K5PR133 (i586 clone) +#Remark: There seems to be at least one bug shown by the demo below. +# There may also be a Dark Corner involving the value of NR in an +# END block, a topic on which the info file is silent. In gawk +# 3.0.3, NR often seems to have the least-surprise value in an +# END block, but sometimes it doesn't - see example below. +#Problem descr: the log below shows a case where: +# a) (this may be a red herring) the output of the gawk script +# is different depending on whether its input file is named on +# the command line or catted to stdin, without any use of the +# legitimate means which could produce this effect. +# b) NR is clearly getting clobbered; I have tried to simplify +# the 19-line script "awkerr1" below, but seemingly unrelated +# changes, like shortening constant strings which appear only in +# print statements, or removing unexecuted or irrelevant code, +# cause the clobbering to go away. Some previous (larger) +# versions of this code would clobber NR also when reading from +# stdin, but I thought you'd prefer a shorter example :-). +#Reproduce-By: using the gawk script "awkerr1", the contents of +# which appear in the transcript below as the output of the +# command "cat awkerr1". Comments following # were added +# to the transcript later as explanation. +#---------------------------------------------- Script started on Fri +#Oct 30 20:04:16 1998 chipmunk:/ram0# ls -l a1 awkerr1 -rw-r--r-- 1 +#root root 2 Oct 30 18:42 a1 -rwxr-xr-x 1 root root +#389 Oct 30 19:54 awkerr1 chipmunk:/ram0# cat a1 #a1 contains +#one printable char and a newline a chipmunk:/ram0# od -c xc a1 +#0000000 0a61 +# a \n +#0000002 chipmunk:/ram0# cat a1 | awkerr1 #no surprises here +#1 lines in 1 sec: 1 lines/sec; nlines=1 chipmunk:/ram0# awkerr1 a1 Č +#lines in 1 sec: 1 lines/sec; nlines=1 #?! first char is an uppercase +#E-grave chipmunk:/ram0# awkerr1 a1 | od -N1 -xc 0000000 00c8 +# 310 \0 +#0000001 chipmunk:/ram0# cat awkerr1 #the apparent ^M's are not +#actually in the file +#!/usr/bin/awk -f +function process(w) { + if(w in ws) { + printf " : found\n"; lc[p " " w]++; rc[w " " n]++; } + } +BEGIN {IGNORECASE=1; + } +/^/ {if(NR % 10 ==0)print "processing line " NR; + process($1); nlines++; + } +END {p=w; w=n; n=""; + if(w)process(w); t=1; print NR " lines in " t " sec: " NR+0 " lines/sec; nlines=" nlines; + } +#chipmunk:/ram0# exit Script done on Fri Oct 30 20:07:31 1998 +#--------------------------------------------- +# +#-David West dhw@gamgee.acad.emich.edu +# diff --git a/contrib/awk/test/getnr2tm.in b/contrib/awk/test/getnr2tm.in new file mode 100644 index 0000000..7898192 --- /dev/null +++ b/contrib/awk/test/getnr2tm.in @@ -0,0 +1 @@ +a diff --git a/contrib/awk/test/getnr2tm.ok b/contrib/awk/test/getnr2tm.ok new file mode 100644 index 0000000..d63fca0 --- /dev/null +++ b/contrib/awk/test/getnr2tm.ok @@ -0,0 +1 @@ +1 lines in 1 sec: 1 lines/sec; nlines=1 diff --git a/contrib/awk/test/gtlnbufv.awk b/contrib/awk/test/gtlnbufv.awk new file mode 100644 index 0000000..ce7d243 --- /dev/null +++ b/contrib/awk/test/gtlnbufv.awk @@ -0,0 +1,2 @@ +/@K@CODE/ { print ; getline temp ; print temp ;next } +{print} diff --git a/contrib/awk/test/igncdym.awk b/contrib/awk/test/igncdym.awk new file mode 100644 index 0000000..3119c3e --- /dev/null +++ b/contrib/awk/test/igncdym.awk @@ -0,0 +1,56 @@ +#From Jeffrey.B.Woodward@Hitchcock.ORG Mon Feb 21 09:33:32 2000 +#Message-id: <12901034@mailbox2.Hitchcock.ORG> +#Date: 20 Feb 2000 18:14:11 EST +#From: Jeffrey.B.Woodward@Hitchcock.ORG (Jeffrey B. Woodward) +#Subject: gawk 3.0.4 bug +#To: bug-gnu-utils@gnu.org +#Cc: arnold@gnu.org +# +#O/S: Digital UNIX 4.0D +# +#C Compiler: DEC C +# +#gawk version: 3.0.4 +# +#Sample Program: +#gawk ' + BEGIN { + pattern[1] = "bar" ; ignore[1] = 1 + pattern[2] = "foo" ; ignore[2] = 0 + } + + { + for (i = 1 ; i <= 2 ; i++) { + IGNORECASE = ignore[i] + print match($0, pattern[i]) " " pattern[i] ":" $0 + } + } +#' << -EOF- +#This is foo +#This is bar +#-EOF- +# +#Program Output: +#0 bar:This is foo +#0 foo:This is foo +#9 bar:This is bar +#9 foo:This is bar +# +# +#**Expected** Output: +#0 bar:This is foo +#9 foo:This is foo +#9 bar:This is bar +#0 foo:This is bar +# +# +#This problem appears to be directly related to IGNORECASE. If +#IGNORECASE remains constant, the program behaves as expected; +#however, switching IGNORECASE seems to causes problems - it is +#almost as though the pattern stored in the variable is treated +#as a constant and the regexp() is not recompiled(?) - just a +#guess... +# +# +#Thanks, +#-Jeff Woodward diff --git a/contrib/awk/test/igncdym.in b/contrib/awk/test/igncdym.in new file mode 100644 index 0000000..43e361a --- /dev/null +++ b/contrib/awk/test/igncdym.in @@ -0,0 +1,2 @@ +This is foo +This is bar diff --git a/contrib/awk/test/igncdym.ok b/contrib/awk/test/igncdym.ok new file mode 100644 index 0000000..e715a6d --- /dev/null +++ b/contrib/awk/test/igncdym.ok @@ -0,0 +1,4 @@ +0 bar:This is foo +9 foo:This is foo +9 bar:This is bar +0 foo:This is bar diff --git a/contrib/awk/test/nasty.awk b/contrib/awk/test/nasty.awk new file mode 100644 index 0000000..b9c20c8 --- /dev/null +++ b/contrib/awk/test/nasty.awk @@ -0,0 +1,92 @@ +#From hankedr@manatee.dms.auburn.edu Tue Oct 13 22:15:59 1998 +#Return-Path: <hankedr@manatee.dms.auburn.edu> +#Received: from cssun.mathcs.emory.edu (cssun.mathcs.emory.edu [170.140.150.1]) +# by dmx.netvision.net.il (8.9.0.Beta5/8.8.6) with ESMTP id PAA03924 +# for <arobbins@netvision.net.il>; Tue, 13 Oct 1998 15:32:13 +0200 (IST) +#Received: from mescaline.gnu.org (we-refuse-to-spy-on-our-users@mescaline.gnu.org [158.121.106.21]) by cssun.mathcs.emory.edu (8.7.5/8.6.9-940818.01cssun) with ESMTP id KAA11644 for <arnold@mathcs.emory.edu>; Tue, 13 Oct 1998 10:22:32 -0400 (EDT) +#Received: from manatee.dms.auburn.edu (manatee.dms.auburn.edu [131.204.53.104]) +# by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id KAA03250 +# for <arnold@gnu.org>; Tue, 13 Oct 1998 10:25:32 -0400 +#Received: (from hankedr@localhost) +# by manatee.dms.auburn.edu (8.9.1a/8.9.1) id JAA13348; +# Tue, 13 Oct 1998 09:22:29 -0500 (CDT) +#Date: Tue, 13 Oct 1998 09:22:29 -0500 (CDT) +#Message-Id: <199810131422.JAA13348@manatee.dms.auburn.edu> +#From: Darrel Hankerson <hankedr@dms.auburn.edu> +#To: arnold@gnu.org +#In-reply-to: <199810131313.QAA31784@alpha.netvision.net.il> (message from +# Aharon Robbins on Tue, 13 Oct 1998 16:10:36 +0200) +#Subject: Re: full text of bug report? +#Mime-Version: 1.0 +#Content-Type: text/plain; charset=US-ASCII +#X-UIDL: bf3fce492dad4ab030c561e7b2f27d0a +#Status: RO +# +# Do you have the full text of the a = a "\n" f() bug report? +# I can't find it.... I'm not sure there really is a bug. +# +#Yes, see below. +# +#His example has unnecessary fragments (in particular, the use of +#gensub is irrelevant). As I wrote to you earlier, the interesting +#question for me is: +# +# Is the concatenation result undefined? If the result is defined or +# implementation-dependent, then gawk has a bug. +# +# +#=== Original report ===================================================== +#From: Attila Torcsvari <arcdev@mail.matav.hu> +#To: "'bug-gnu-utils@prep.ai.mit.edu'" <bug-gnu-utils@gnu.org> +#Subject: gawk 3.0.3 bug +#Date: Thu, 17 Sep 1998 18:12:13 +0200 +#MIME-Version: 1.0 +#Content-Transfer-Encoding: 7bit +#Resent-From: bug-gnu-utils@gnu.org +#X-Mailing-List: <bug-gnu-utils@gnu.org> archive/latest/3396 +#X-Loop: bug-gnu-utils@gnu.org +#Precedence: list +#Resent-Sender: bug-gnu-utils-request@gnu.org +#Content-Transfer-Encoding: 7bit +#Content-Type: text/plain; charset="us-ascii" +#Content-Length: 618 +# +#Bug-gnuers, +#please pass it to the responsible. +# +#The following generates something interesting: +# +BEGIN{ +a="aaaaa" +a=a a #10 +a=a a #20 +a=a a #40 +a=a a #80 +a=a a #160 +a=a a # i.e. a is long enough + +a=a"\n"f() # this causes the trouble +print a # guess the result +} + +function f() +{ +#print "a before: ", a +#a=gensub("a","123,","g",a) # 'a' will be just a bit longer (4 times, but still should fit: 4*160=640) +gsub(/a/, "123", a) +#print "a after: ", a +return "X" +} +# +#Possible reason: +#during f the a is modified, +#it can be even freed, because gensub modifies its size +#the printout contains trash. +# +#Used version: VC compiled WinNT 32 bit Intel. +# +#Regards, +# +#Attila Torcsvari +#Arcanum Development +# diff --git a/contrib/awk/test/nasty.ok b/contrib/awk/test/nasty.ok new file mode 100644 index 0000000..5189cf8 --- /dev/null +++ b/contrib/awk/test/nasty.ok @@ -0,0 +1,2 @@ +123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123123 +X diff --git a/contrib/awk/test/nlstrina.awk b/contrib/awk/test/nlstrina.awk new file mode 100644 index 0000000..41dbd5f --- /dev/null +++ b/contrib/awk/test/nlstrina.awk @@ -0,0 +1,77 @@ +# From E.Ab@chem.rug.nl Wed Aug 2 13:16:53 2000 +# Received: from mail.actcom.co.il +# by localhost with POP3 (fetchmail-5.1.2) +# for arnold@localhost (single-drop); Wed, 02 Aug 2000 13:16:53 -0400 (EDT) +# Received: from lmail.actcom.co.il by actcom.co.il with ESMTP +# (8.9.1a/actcom-0.2) id MAA21699 for <arobbins@actcom.co.il>; +# Wed, 2 Aug 2000 12:20:38 +0300 (EET DST) +# (rfc931-sender: lmail.actcom.co.il [192.114.47.13]) +# Received: from freefriends.org (freefriends.org [63.85.55.109]) +# by lmail.actcom.co.il (8.9.3/8.9.1) with ESMTP id LAA22723 +# for <arobbins@actcom.co.il>; Wed, 2 Aug 2000 11:23:22 +0300 +# Received: from mescaline.gnu.org (mescaline.gnu.org [158.121.106.21]) +# by freefriends.org (8.9.3/8.9.3) with ESMTP id FAA23582 +# for <arnold@skeeve.com>; Wed, 2 Aug 2000 05:18:59 -0400 +# Received: from dep.chem.rug.nl (dep.chem.rug.nl [129.125.7.81]) +# by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id FAA30670; +# Wed, 2 Aug 2000 05:20:24 -0400 +# Received: from rugmd34.chem.rug.nl (rugmd34.chem.rug.nl [129.125.42.34]) +# by dep.chem.rug.nl (8.9.3/8.9.3/Debian 8.9.3-21) with ESMTP id LAA17089; +# Wed, 2 Aug 2000 11:20:23 +0200 +# Received: from chem.rug.nl (localhost [127.0.0.1]) by rugmd34.chem.rug.nl (980427.SGI.8.8.8/980728.SGI.AUTOCF) via ESMTP id LAA25392; Wed, 2 Aug 2000 11:20:22 +0200 (MDT) +# Sender: E.Ab@chem.rug.nl +# Message-ID: <3987E7D5.2BDC5FD3@chem.rug.nl> +# Date: Wed, 02 Aug 2000 11:20:21 +0200 +# From: Eiso AB <E.Ab@chem.rug.nl> +# X-Mailer: Mozilla 4.72C-SGI [en] (X11; I; IRIX 6.5 IP32) +# X-Accept-Language: en +# MIME-Version: 1.0 +# To: bug-gnu-utils@gnu.org, arnold@gnu.org +# Subject: bug? [GNU Awk 3.0.5] +# +# Content-Type: text/plain; charset=us-ascii +# Content-Transfer-Encoding: 7bit +# X-UIDL: \f8"!(8G!!ZL$#!h>X!! +# Status: R +# +# hi Arnold, +# +# +# Please try the script beneath... +# I'm not sure if this is a bug or not, but I would expect +# the empty string as an array index just to be treated +# like any other string +# +# so if ("" in ta) would be true, and for ( i in ta ) should loop only once. +# +BEGIN { + v="" + ta[v]++ + if ( v in ta) print "a",v,++ta[v],ta[v] + print "b",v,++ta[v],ta[v] + for( i in ta) print "c",++c,i,ta[i] +} +# +# goodluck, Eiso +# +# -- +# _________ +# _______________________________/ Eiso AB \_________________________ +# +# o +# +# o Dept. of Biochemistry +# University of Groningen +# The Netherlands +# o +# . . +# o ^ mailto:eiso@chem.rug.nl +# | - _ mailto:eiso@dds.nl +# \__|__/ http://md.chem.rug.nl/~eiso +# | tel 4326 +# | +# / \ +# / \ +# | | +# ________ ._| |_. ________________________________________________ +# diff --git a/contrib/awk/test/nlstrina.ok b/contrib/awk/test/nlstrina.ok new file mode 100644 index 0000000..690f1a2 --- /dev/null +++ b/contrib/awk/test/nlstrina.ok @@ -0,0 +1,3 @@ +a 2 2 +b 3 3 +c 1 3 diff --git a/contrib/awk/test/numindex.awk b/contrib/awk/test/numindex.awk new file mode 100644 index 0000000..1762e45 --- /dev/null +++ b/contrib/awk/test/numindex.awk @@ -0,0 +1,55 @@ +#To: bug-gnu-utils@gnu.org +#cc: arnold@gnu.org +#Subject: Possible bug in GNU Awk 3.0.4 +#Date: Wed, 24 Nov 1999 21:47:24 +0000 +#From: Daniel Elphick <de397@ecs.soton.ac.uk> +#Message-Id: <E11qkG4-0000l0-00@cameron> +# +#This is a multipart MIME message. +# +#--==_Exmh_-11192982200 +#Content-Type: text/plain; charset=us-ascii +# +# +#When I use the attached awk script unique on the attached data file, it +#reports that all 4 lines of the data are the same. Using mawk it correctly +#reports that there are no repeats. +# +#I don't know if there are limits on the size of associative array keys for the +#purposes of reliable indexing but if there is then it is not (obviously) +#documented. +# +# +#--==_Exmh_-11192982200 +#Content-Type: text/plain ; name="data"; charset=us-ascii +#Content-Description: data +#Content-Disposition: attachment; filename="data" +# +#322322111111112232231111 +#322322111111112213223111 +#322322111111112211132231 +#322322111111112211113223 +# +#--==_Exmh_-11192982200 +#Content-Type: text/plain ; name="unique"; charset=us-ascii +#Content-Description: unique +#Content-Disposition: attachment; filename="unique" +# +{ + if($0 in a) + { + printf("line %d has been seen before at line %d\n", NR, a[$0]) + repeat_count += 1 + } + else + { + a[$0] = NR + } + count += 1 +} +END { +# printf("%d %f%%\n", repeat_count, (float)repeat_count / count * 100) + printf("%d %f%%\n", repeat_count, repeat_count / count * 100) +} +# +#--==_Exmh_-11192982200-- diff --git a/contrib/awk/test/numindex.in b/contrib/awk/test/numindex.in new file mode 100644 index 0000000..3852058 --- /dev/null +++ b/contrib/awk/test/numindex.in @@ -0,0 +1,4 @@ +322322111111112232231111 +322322111111112213223111 +322322111111112211132231 +322322111111112211113223 diff --git a/contrib/awk/test/numindex.ok b/contrib/awk/test/numindex.ok new file mode 100644 index 0000000..8e086f6 --- /dev/null +++ b/contrib/awk/test/numindex.ok @@ -0,0 +1 @@ +0 0.000000% diff --git a/contrib/awk/test/opasnidx.awk b/contrib/awk/test/opasnidx.awk new file mode 100644 index 0000000..e398860 --- /dev/null +++ b/contrib/awk/test/opasnidx.awk @@ -0,0 +1 @@ +BEGIN { b = 1; a[b] = 2; a[b++] += 1; print b,a[1] } diff --git a/contrib/awk/test/opasnidx.ok b/contrib/awk/test/opasnidx.ok new file mode 100644 index 0000000..654d526 --- /dev/null +++ b/contrib/awk/test/opasnidx.ok @@ -0,0 +1 @@ +2 3 diff --git a/contrib/awk/test/opasnslf.awk b/contrib/awk/test/opasnslf.awk new file mode 100644 index 0000000..46cd2b8 --- /dev/null +++ b/contrib/awk/test/opasnslf.awk @@ -0,0 +1,6 @@ +BEGIN { + print b += b += 1 + b = 6 + print b += b++ + print b +} diff --git a/contrib/awk/test/opasnslf.ok b/contrib/awk/test/opasnslf.ok new file mode 100644 index 0000000..2fa9fd5 --- /dev/null +++ b/contrib/awk/test/opasnslf.ok @@ -0,0 +1,3 @@ +2 +13 +13 diff --git a/contrib/awk/test/printf1.awk b/contrib/awk/test/printf1.awk new file mode 100644 index 0000000..1cd7b99 --- /dev/null +++ b/contrib/awk/test/printf1.awk @@ -0,0 +1,19 @@ +# Tue May 25 16:36:16 IDT 1999 +# +# Test cases based on email from Andreas Schwab, schwab@gnu.org + +BEGIN { + fmt[1] = "%8.5d"; data[1] = 100 + fmt[2] = "%#o"; data[2] = 0 + fmt[3] = "%#.1o"; data[3] = 0 + fmt[4] = "%#.0o"; data[4] = 0 + fmt[5] = "%#x"; data[5] = 0 + fmt[6] = "%.0d"; data[6] = 0 + fmt[7] = "%5.0d"; data[7] = 0 + + for (i = 1; i <= 7; i++) { + format = "%s, %d --- |" fmt[i] "|\n" + printf(format, fmt[i], data[i], data[i]) + } + +} diff --git a/contrib/awk/test/printf1.ok b/contrib/awk/test/printf1.ok new file mode 100644 index 0000000..32b3a7d --- /dev/null +++ b/contrib/awk/test/printf1.ok @@ -0,0 +1,7 @@ +%8.5d, 100 --- | 00100| +%#o, 0 --- |0| +%#.1o, 0 --- |0| +%#.0o, 0 --- |0| +%#x, 0 --- |0| +%.0d, 0 --- || +%5.0d, 0 --- | | diff --git a/contrib/awk/test/reg/Obsolete/exp.awk b/contrib/awk/test/reg/Obsolete/exp.awk new file mode 100644 index 0000000..4e707f8 --- /dev/null +++ b/contrib/awk/test/reg/Obsolete/exp.awk @@ -0,0 +1 @@ +BEGIN { print exp(0), exp(1000000), exp(0.5) } diff --git a/contrib/awk/test/reg/Obsolete/exp.good b/contrib/awk/test/reg/Obsolete/exp.good new file mode 100644 index 0000000..07b8853 --- /dev/null +++ b/contrib/awk/test/reg/Obsolete/exp.good @@ -0,0 +1,2 @@ +1 gawk: reg/exp.awk:1: warning: exp argument 1e+06 is out of range +Inf 1.64872 diff --git a/contrib/awk/test/reg/Obsolete/exp.in b/contrib/awk/test/reg/Obsolete/exp.in new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/contrib/awk/test/reg/Obsolete/exp.in diff --git a/contrib/awk/test/reg/Obsolete/log.awk b/contrib/awk/test/reg/Obsolete/log.awk new file mode 100644 index 0000000..bcae90b --- /dev/null +++ b/contrib/awk/test/reg/Obsolete/log.awk @@ -0,0 +1 @@ +BEGIN { print log(0), log(-1), log(100) } diff --git a/contrib/awk/test/reg/Obsolete/log.good b/contrib/awk/test/reg/Obsolete/log.good new file mode 100644 index 0000000..857ab77 --- /dev/null +++ b/contrib/awk/test/reg/Obsolete/log.good @@ -0,0 +1,4 @@ +log: SING error +-Inf gawk: reg/log.awk:1: warning: log called with negative argument -1 +log: DOMAIN error +NaN 4.60517 diff --git a/contrib/awk/test/reg/Obsolete/log.in b/contrib/awk/test/reg/Obsolete/log.in new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/contrib/awk/test/reg/Obsolete/log.in diff --git a/contrib/awk/test/strftime.awk b/contrib/awk/test/strftime.awk new file mode 100644 index 0000000..8c1f401 --- /dev/null +++ b/contrib/awk/test/strftime.awk @@ -0,0 +1,15 @@ +# strftime.awk ; test the strftime code +# +# input is the output of `date', see Makefile.in +# +# The mucking about with $0 and $N is to avoid problems +# on cygwin, where the timezone field is empty and there +# are two consecutive blanks. + +{ + $3 = sprintf("%02d", $3 + 0) + print > "strftime.ok" + $0 = strftime() + $NF = $NF + print > OUTPUT +} diff --git a/contrib/awk/test/subslash.awk b/contrib/awk/test/subslash.awk new file mode 100644 index 0000000..87ab029 --- /dev/null +++ b/contrib/awk/test/subslash.awk @@ -0,0 +1,6 @@ +BEGIN { + i = 2 + a[i] = 5 + a[i] /= 2 + printf "a[%s] = %f\n", i, a[i] +} diff --git a/contrib/awk/test/subslash.ok b/contrib/awk/test/subslash.ok new file mode 100644 index 0000000..4f3beff --- /dev/null +++ b/contrib/awk/test/subslash.ok @@ -0,0 +1 @@ +a[2] = 2.500000 diff --git a/contrib/awk/test/zeroflag.awk b/contrib/awk/test/zeroflag.awk new file mode 100644 index 0000000..526ed0e --- /dev/null +++ b/contrib/awk/test/zeroflag.awk @@ -0,0 +1 @@ +BEGIN { printf("%2.1d---%02.1d\n", 2, 2) } diff --git a/contrib/awk/test/zeroflag.ok b/contrib/awk/test/zeroflag.ok new file mode 100644 index 0000000..937c0ed --- /dev/null +++ b/contrib/awk/test/zeroflag.ok @@ -0,0 +1 @@ + 2--- 2 |