openbcm

Git mirror of https://github.com/Broadcom-Network-Switching-Software/OpenBCM
git clone git://git.finwo.net/mirror/broadcom/openbcm
Log | Files | Refs | README

ui_rom_defi_pss.h (226337B)


      1 /* 
      2  * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file.
      3  * 
      4  * Copyright 2007-2020 Broadcom Inc. All rights reserved.
      5 */
      6 #ifndef UI_ROM_DEFI_PSS_INCLUDED
      7 /* { */
      8 #define UI_ROM_DEFI_PSS_INCLUDED
      9 /*
     10  * General include file for reference design.
     11  */
     12 #include <appl/diag/dpp/ref_sys.h>
     13 #include <ui_pure_defi_pss.h>
     14 /* { */
     15 #include <appl/diag/dpp/ui_defx.h>
     16 #include <appl/diag/dpp/utils_defx.h>
     17 /* } */
     18 
     19 
     20 /*
     21  * UI definition{
     22  */
     23 /********************************************************
     24 *NAME
     25 *  Pss_clear_after_read_vals
     26 *TYPE: BUFFER
     27 *DATE: 18/JULY/2003
     28 *FUNCTION:
     29 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
     30 *  RELATED TO THE PARAMETER "PORT_UTILS" IN THE
     31 *  CONTEXT OF SUBJECT 'PSS' (AND
     32 *  'DISPLAY_ALL_MAC_COUNTERS').
     33 *ORGANIZATION:
     34 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
     35 *    int val_type -
     36 *      Type of value. Can be:
     37 *        VAL_END_OF_LIST 0
     38 *        VAL_NUMERIC     1
     39 *        VAL_SYMBOL      2
     40 *        VAL_TEXT        3
     41 *        VAL_IP          4
     42 *      The first one is only to indicate the end of
     43 *      this array. The others indicate what kind of
     44 *      value this is.
     45 *    char *symb_val -
     46 *      ASCII presentation of the symbolic value.
     47 *      Note: Must be small letters only!
     48 *      For numeric variables:
     49 *      This is a dummy variable. Enables searching
     50 *      array of 'PARAM_VAL_RULES' for name (string)
     51 *      matching without special case for numeric
     52 *      variable.
     53 *    VAL_DESCRIPTOR val_descriptor -
     54 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
     55 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
     56 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
     57 *      See details in file of definition. Note: Symbols
     58 *      must be small letters only!
     59 *USAGE:
     60 *  SEE ORGANIZATION.
     61 *REMARKS:
     62 *  NONE.
     63 *SEE ALSO:
     64  */
     65 EXTERN CONST
     66    PARAM_VAL_RULES
     67      Pss_clear_after_read_vals[]
     68 #ifdef INIT
     69    =
     70 {
     71   {
     72     VAL_SYMBOL,
     73     "on",
     74     {
     75       {
     76         ON_EQUIVALENT,
     77           /*
     78            * Casting added here just to keep the compiler silent.
     79            */
     80         (long)"    Clear counters after reading. Next reading starts from last read action",
     81           /*
     82            * Pointer to a function to call after symbolic value
     83            * has been accepted. Casting should be 'VAL_PROC_PTR'.
     84            * Casting to 'long' added here just to keep the
     85            * compiler silent.
     86            */
     87         (long)NULL
     88       }
     89     }
     90   },
     91   {
     92     VAL_SYMBOL,
     93     "off",
     94     {
     95       {
     96         OFF_EQUIVALENT,
     97           /*
     98            * Casting added here just to keep the compiler silent.
     99            */
    100         (long)"    Do not change counters after reading. Readings are accumulative\r\n"
    101               "    Note, however, that counting restarts when changing target port",
    102           /*
    103            * Pointer to a function to call after symbolic value
    104            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    105            * Casting to 'long' added here just to keep the
    106            * compiler silent.
    107            */
    108         (long)NULL
    109       }
    110     }
    111   },
    112 /*
    113  * Last element. Do not remove.
    114  */
    115   {
    116     VAL_END_OF_LIST
    117   }
    118 }
    119 #endif
    120 ;
    121 /********************************************************
    122 *NAME
    123 *  Pss_port_force_link_pass_vals
    124 *TYPE: BUFFER
    125 *DATE: 01/MAY/2003
    126 *FUNCTION:
    127 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
    128 *  RELATED TO THE PARAMETER "port_utils" IN THE
    129 *  CONTEXT OF SUBJECT 'PSS' (AND
    130 *  'ctrl').
    131 *ORGANIZATION:
    132 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    133 *    int val_type -
    134 *      Type of value. Can be:
    135 *        VAL_END_OF_LIST 0
    136 *        VAL_NUMERIC     1
    137 *        VAL_SYMBOL      2
    138 *        VAL_TEXT        3
    139 *        VAL_IP          4
    140 *      The first one is only to indicate the end of
    141 *      this array. The others indicate what kind of
    142 *      value this is.
    143 *    char *symb_val -
    144 *      ASCII presentation of the symbolic value.
    145 *      Note: Must be small letters only!
    146 *      For numeric variables:
    147 *      This is a dummy variable. Enables searching
    148 *      array of 'PARAM_VAL_RULES' for name (string)
    149 *      matching without special case for numeric
    150 *      variable.
    151 *    VAL_DESCRIPTOR val_descriptor -
    152 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
    153 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
    154 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
    155 *      See details in file of definition. Note: Symbols
    156 *      must be small letters only!
    157 *USAGE:
    158 *  SEE ORGANIZATION.
    159 *REMARKS:
    160 *  NONE.
    161 *SEE ALSO:
    162  */
    163 EXTERN CONST
    164    PARAM_VAL_RULES
    165      Pss_port_force_link_pass_vals[]
    166 #ifdef INIT
    167    =
    168 {
    169   {
    170     VAL_SYMBOL,
    171     "on",
    172     {
    173       {
    174         1,
    175           /*
    176            * Casting added here just to keep the compiler silent.
    177            */
    178         (long)"    Link in PASS state.\r\n",
    179           /*
    180            * Pointer to a function to call after symbolic value
    181            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    182            * Casting to 'long' added here just to keep the
    183            * compiler silent.
    184            */
    185         (long)NULL
    186       }
    187     }
    188   },
    189   {
    190     VAL_SYMBOL,
    191     "off",
    192     {
    193       {
    194         0,
    195           /*
    196            * Casting added here just to keep the compiler silent.
    197            */
    198         (long)"    Link in normal state.\r\n",
    199           /*
    200            * Pointer to a function to call after symbolic value
    201            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    202            * Casting to 'long' added here just to keep the
    203            * compiler silent.
    204            */
    205         (long)NULL
    206       }
    207     }
    208   },
    209 /*
    210  * Last element. Do not remove.
    211  */
    212   {
    213     VAL_END_OF_LIST
    214   }
    215 }
    216 #endif
    217 ;
    218 /********************************************************
    219 *NAME
    220 *  Pss_learn_enable_vals
    221 *TYPE: BUFFER
    222 *DATE: 01/MAY/2003
    223 *FUNCTION:
    224 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
    225 *  RELATED TO THE PARAMETER "port_utils" IN THE
    226 *  CONTEXT OF SUBJECT 'PSS' (AND
    227 *  'ctrl').
    228 *ORGANIZATION:
    229 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    230 *    int val_type -
    231 *      Type of value. Can be:
    232 *        VAL_END_OF_LIST 0
    233 *        VAL_NUMERIC     1
    234 *        VAL_SYMBOL      2
    235 *        VAL_TEXT        3
    236 *        VAL_IP          4
    237 *      The first one is only to indicate the end of
    238 *      this array. The others indicate what kind of
    239 *      value this is.
    240 *    char *symb_val -
    241 *      ASCII presentation of the symbolic value.
    242 *      Note: Must be small letters only!
    243 *      For numeric variables:
    244 *      This is a dummy variable. Enables searching
    245 *      array of 'PARAM_VAL_RULES' for name (string)
    246 *      matching without special case for numeric
    247 *      variable.
    248 *    VAL_DESCRIPTOR val_descriptor -
    249 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
    250 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
    251 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
    252 *      See details in file of definition. Note: Symbols
    253 *      must be small letters only!
    254 *USAGE:
    255 *  SEE ORGANIZATION.
    256 *REMARKS:
    257 *  NONE.
    258 *SEE ALSO:
    259  */
    260 EXTERN CONST
    261    PARAM_VAL_RULES
    262      Pss_learn_enable_vals[]
    263 #ifdef INIT
    264    =
    265 {
    266   {
    267     VAL_SYMBOL,
    268     "on",
    269     {
    270       {
    271         1,
    272           /*
    273            * Casting added here just to keep the compiler silent.
    274            */
    275         (long)"    Auto-learn new mac addresses.\r\n",
    276           /*
    277            * Pointer to a function to call after symbolic value
    278            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    279            * Casting to 'long' added here just to keep the
    280            * compiler silent.
    281            */
    282         (long)NULL
    283       }
    284     }
    285   },
    286   {
    287     VAL_SYMBOL,
    288     "off",
    289     {
    290       {
    291         0,
    292           /*
    293            * Casting added here just to keep the compiler silent.
    294            */
    295         (long)"    NO auto-learn new mac addresses.\r\n",
    296           /*
    297            * Pointer to a function to call after symbolic value
    298            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    299            * Casting to 'long' added here just to keep the
    300            * compiler silent.
    301            */
    302         (long)NULL
    303       }
    304     }
    305   },
    306 /*
    307  * Last element. Do not remove.
    308  */
    309   {
    310     VAL_END_OF_LIST
    311   }
    312 }
    313 #endif
    314 ;
    315 
    316 /********************************************************
    317 *NAME
    318 *  Pss_unknown_cmd_vals
    319 *TYPE: BUFFER
    320 *DATE: 01/MAY/2003
    321 *FUNCTION:
    322 *ORGANIZATION:
    323 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    324 *    int val_type -
    325 *      Type of value. Can be:
    326 *        VAL_END_OF_LIST 0
    327 *        VAL_NUMERIC     1
    328 *        VAL_SYMBOL      2
    329 *        VAL_TEXT        3
    330 *        VAL_IP          4
    331 *      The first one is only to indicate the end of
    332 *      this array. The others indicate what kind of
    333 *      value this is.
    334 *    char *symb_val -
    335 *      ASCII presentation of the symbolic value.
    336 *      Note: Must be small letters only!
    337 *      For numeric variables:
    338 *      This is a dummy variable. Enables searching
    339 *      array of 'PARAM_VAL_RULES' for name (string)
    340 *      matching without special case for numeric
    341 *      variable.
    342 *    VAL_DESCRIPTOR val_descriptor -
    343 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
    344 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
    345 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
    346 *      See details in file of definition. Note: Symbols
    347 *      must be small letters only!
    348 *USAGE:
    349 *  SEE ORGANIZATION.
    350 *REMARKS:
    351 *  NONE.
    352 *SEE ALSO:
    353  */
    354 EXTERN CONST
    355    PARAM_VAL_RULES
    356      Pss_unknown_cmd_vals[]
    357 #ifdef INIT
    358    =
    359 {
    360   {
    361     VAL_SYMBOL,
    362     "forward",
    363     {
    364       {
    365         GT_LOCK_FRWRD,
    366           /*
    367            * Casting added here just to keep the compiler silent.
    368            */
    369         (long)"    do not drop (forward as usual).\r\n",
    370           /*
    371            * Pointer to a function to call after symbolic value
    372            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    373            * Casting to 'long' added here just to keep the
    374            * compiler silent.
    375            */
    376         (long)NULL
    377       }
    378     }
    379   },
    380   {
    381     VAL_SYMBOL,
    382     "drop",
    383     {
    384       {
    385         GT_LOCK_DROP,
    386           /*
    387            * Casting added here just to keep the compiler silent.
    388            */
    389         (long)"    drop packets.\r\n",
    390           /*
    391            * Pointer to a function to call after symbolic value
    392            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    393            * Casting to 'long' added here just to keep the
    394            * compiler silent.
    395            */
    396         (long)NULL
    397       }
    398     }
    399   },
    400   {
    401     VAL_SYMBOL,
    402     "trap_to_cpu",
    403     {
    404       {
    405         GT_LOCK_TRAP,
    406           /*
    407            * Casting added here just to keep the compiler silent.
    408            */
    409         (long)"    Trap to CPU.\r\n",
    410           /*
    411            * Pointer to a function to call after symbolic value
    412            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    413            * Casting to 'long' added here just to keep the
    414            * compiler silent.
    415            */
    416         (long)NULL
    417       }
    418     }
    419   },
    420 
    421 /*
    422  * Last element. Do not remove.
    423  */
    424   {
    425     VAL_END_OF_LIST
    426   }
    427 }
    428 #endif
    429 ;
    430 
    431 /********************************************************
    432 *NAME
    433 *  Pss_phy_reg_offset_vals
    434 *TYPE: BUFFER
    435 *DATE: 18/JAN/2002
    436 *FUNCTION:
    437 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
    438 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
    439 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
    440 *ORGANIZATION:
    441 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    442 *    int val_type -
    443 *      Type of value. Can be:
    444 *        VAL_END_OF_LIST 0
    445 *        VAL_NUMERIC     1
    446 *        VAL_SYMBOL      2
    447 *        VAL_TEXT        3
    448 *        VAL_IP          4
    449 *      The first one is only to indicate the end of
    450 *      this array. The others indicate what kind of
    451 *      value this is.
    452 *    char *symb_val -
    453 *      ASCII presentation of the symbolic value.
    454 *      Note: Must be small letters only!
    455 *      For numeric variables:
    456 *      This is a dummy variable. Enables searching
    457 *      array of 'PARAM_VAL_RULES' for name (string)
    458 *      matching without special case for numeric
    459 *      variable.
    460 *    VAL_DESCRIPTOR val_descriptor -
    461 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
    462 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
    463 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
    464 *      See details in file of definition. Note: Symbols
    465 *      must be small letters only!
    466 *USAGE:
    467 *  SEE ORGANIZATION.
    468 *REMARKS:
    469 *  NONE.
    470 *SEE ALSO:
    471  */
    472 EXTERN CONST
    473    PARAM_VAL_RULES
    474      Pss_phy_reg_offset_vals[]
    475 #ifdef INIT
    476    =
    477 {
    478   {
    479     VAL_NUMERIC,SYMB_NAME_NUMERIC,
    480     {
    481       {
    482         HAS_MIN_VALUE | HAS_MAX_VALUE,
    483         31, 0,
    484           /*
    485            * Number of times this value can be repeated (i.e.,
    486            * value is an array). Must be at least 1!
    487            */
    488         1,
    489         (VAL_PROC_PTR)NULL
    490       }
    491     }
    492   },
    493 /*
    494  * Last element. Do not remove.
    495  */
    496   {
    497     VAL_END_OF_LIST
    498   }
    499 }
    500 #endif
    501 ;
    502 /********************************************************
    503 *NAME
    504 *  Pss_indefinite_num_vals
    505 *TYPE: BUFFER
    506 *DATE: 18/JAN/2002
    507 *FUNCTION:
    508 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
    509 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
    510 *  THE PARAMETER "PRINT_ERRNO" WITHIN 'VX_SHELL'.
    511 *ORGANIZATION:
    512 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    513 *    int val_type -
    514 *      Type of value. Can be:
    515 *        VAL_END_OF_LIST 0
    516 *        VAL_NUMERIC     1
    517 *        VAL_SYMBOL      2
    518 *        VAL_TEXT        3
    519 *        VAL_IP          4
    520 *      The first one is only to indicate the end of
    521 *      this array. The others indicate what kind of
    522 *      value this is.
    523 *    char *symb_val -
    524 *      ASCII presentation of the symbolic value.
    525 *      Note: Must be small letters only!
    526 *      For numeric variables:
    527 *      This is a dummy variable. Enables searching
    528 *      array of 'PARAM_VAL_RULES' for name (string)
    529 *      matching without special case for numeric
    530 *      variable.
    531 *    VAL_DESCRIPTOR val_descriptor -
    532 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
    533 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
    534 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
    535 *      See details in file of definition. Note: Symbols
    536 *      must be small letters only!
    537 *USAGE:
    538 *  SEE ORGANIZATION.
    539 *REMARKS:
    540 *  NONE.
    541 *SEE ALSO:
    542  */
    543 EXTERN CONST
    544    PARAM_VAL_RULES
    545      Pss_indefinite_num_vals[]
    546 #ifdef INIT
    547    =
    548 {
    549   {
    550     VAL_NUMERIC,SYMB_NAME_NUMERIC,
    551     {
    552       {
    553         0,
    554         0,0,
    555           /*
    556            * Number of times this value can be repeated (i.e.,
    557            * value is an array). Must be at least 1!
    558            */
    559         1,
    560         (VAL_PROC_PTR)NULL
    561       }
    562     }
    563   },
    564 /*
    565  * Last element. Do not remove.
    566  */
    567   {
    568     VAL_END_OF_LIST
    569   }
    570 }
    571 #endif
    572 ;
    573 /********************************************************
    574 *NAME
    575 *  Pss_phy_data_vals
    576 *TYPE: BUFFER
    577 *DATE: 18/JAN/2002
    578 *FUNCTION:
    579 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
    580 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
    581 *  THE PARAMETER "write_reg" WITHIN 'pss port_utils phy'.
    582 *ORGANIZATION:
    583 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    584 *    int val_type -
    585 *      Type of value. Can be:
    586 *        VAL_END_OF_LIST 0
    587 *        VAL_NUMERIC     1
    588 *        VAL_SYMBOL      2
    589 *        VAL_TEXT        3
    590 *        VAL_IP          4
    591 *      The first one is only to indicate the end of
    592 *      this array. The others indicate what kind of
    593 *      value this is.
    594 *    char *symb_val -
    595 *      ASCII presentation of the symbolic value.
    596 *      Note: Must be small letters only!
    597 *      For numeric variables:
    598 *      This is a dummy variable. Enables searching
    599 *      array of 'PARAM_VAL_RULES' for name (string)
    600 *      matching without special case for numeric
    601 *      variable.
    602 *    VAL_DESCRIPTOR val_descriptor -
    603 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
    604 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
    605 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
    606 *      See details in file of definition. Note: Symbols
    607 *      must be small letters only!
    608 *USAGE:
    609 *  SEE ORGANIZATION.
    610 *REMARKS:
    611 *  NONE.
    612 *SEE ALSO:
    613  */
    614 EXTERN CONST
    615    PARAM_VAL_RULES
    616      Pss_phy_data_vals[]
    617 #ifdef INIT
    618    =
    619 {
    620   {
    621     VAL_NUMERIC,SYMB_NAME_NUMERIC,
    622     {
    623       {
    624         HAS_MIN_VALUE | HAS_MAX_VALUE,
    625         0xFFFF, 0, /*Phy registers are 16 bits long*/
    626           /*
    627            * Number of times this value can be repeated (i.e.,
    628            * value is an array). Must be at least 1!
    629            */
    630         1,
    631         (VAL_PROC_PTR)NULL
    632       }
    633     }
    634   },
    635 /*
    636  * Last element. Do not remove.
    637  */
    638   {
    639     VAL_END_OF_LIST
    640   }
    641 }
    642 #endif
    643 ;
    644 /********************************************************
    645 *NAME
    646 *  Pss_table_vals
    647 *TYPE: BUFFER
    648 *DATE: 01/MAY/2003
    649 *FUNCTION:
    650 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
    651 *  RELATED TO THE PARAMETER "PRINT_TABLE" IN THE
    652 *  CONTEXT OF SUBJECT 'PSS' (AND
    653 *  'BTIGDE').
    654 *ORGANIZATION:
    655 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    656 *    int val_type -
    657 *      Type of value. Can be:
    658 *        VAL_END_OF_LIST 0
    659 *        VAL_NUMERIC     1
    660 *        VAL_SYMBOL      2
    661 *        VAL_TEXT        3
    662 *        VAL_IP          4
    663 *      The first one is only to indicate the end of
    664 *      this array. The others indicate what kind of
    665 *      value this is.
    666 *    char *symb_val -
    667 *      ASCII presentation of the symbolic value.
    668 *      Note: Must be small letters only!
    669 *      For numeric variables:
    670 *      This is a dummy variable. Enables searching
    671 *      array of 'PARAM_VAL_RULES' for name (string)
    672 *      matching without special case for numeric
    673 *      variable.
    674 *    VAL_DESCRIPTOR val_descriptor -
    675 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
    676 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
    677 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
    678 *      See details in file of definition. Note: Symbols
    679 *      must be small letters only!
    680 *USAGE:
    681 *  SEE ORGANIZATION.
    682 *REMARKS:
    683 *  NONE.
    684 *SEE ALSO:
    685  */
    686 EXTERN CONST
    687    PARAM_VAL_RULES
    688      Pss_table_vals[]
    689 #ifdef INIT
    690    =
    691 {
    692   {
    693     VAL_SYMBOL_LAST,
    694     "vlan_table",
    695     {
    696       {
    697         FDB_VLAN_TBL_EQUIVALENT,
    698           /*
    699            * Casting added here just to keep the compiler silent.
    700            */
    701         (long)"    VLAN-table.\r\n",
    702           /*
    703            * Pointer to a function to call after symbolic value
    704            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    705            * Casting to 'long' added here just to keep the
    706            * compiler silent.
    707            */
    708         (long)NULL
    709       }
    710     }
    711   },
    712   {
    713     VAL_SYMBOL,
    714     "mac_address_table",
    715     {
    716       {
    717         MAC_ADDR_TBL_EQUIVALENT,
    718           /*
    719            * Casting added here just to keep the compiler silent.
    720            */
    721         (long)"    MAC Address Table for specifi VLAN id.\r\n",
    722           /*
    723            * Pointer to a function to call after symbolic value
    724            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    725            * Casting to 'long' added here just to keep the
    726            * compiler silent.
    727            */
    728         (long)NULL
    729       }
    730     }
    731   },
    732 /*
    733  * Last element. Do not remove.
    734  */
    735   {
    736     VAL_END_OF_LIST
    737   }
    738 }
    739 #endif
    740 ;
    741 
    742 /********************************************************
    743 *NAME
    744 *  Pss_cmd
    745 *TYPE: BUFFER
    746 *DATE: 31/JUL/2002
    747 *FUNCTION:
    748 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
    749 *  RELATED TO THE PARAMETER "PSS_CMD" IN THE
    750 *  CONTEXT OF SUBJECT 'PSS'.
    751 *ORGANIZATION:
    752 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    753 *    int val_type -
    754 *      Type of value. Can be:
    755 *        VAL_END_OF_LIST 0
    756 *        VAL_NUMERIC     1
    757 *        VAL_SYMBOL      2
    758 *        VAL_TEXT        3
    759 *        VAL_IP          4
    760 *      The first one is only to indicate the end of
    761 *      this array. The others indicate what kind of
    762 *      value this is.
    763 *    VAL_DESCRIPTOR val_descriptor -
    764 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
    765 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
    766 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
    767 *      See details in file of definition. Note: Symbols
    768 *      must be small letters only!
    769 *USAGE:
    770 *  SEE ORGANIZATION.
    771 *REMARKS:
    772 *  NONE.
    773 *SEE ALSO:
    774  */
    775 EXTERN CONST
    776    PARAM_VAL_RULES
    777      Pss_cmd[]
    778 #ifdef INIT
    779    =
    780 {
    781   {
    782     VAL_TEXT,
    783     (char *)0,
    784     {
    785       {
    786           /*
    787            * Maximal number of characters.
    788            */
    789         MAX_SIZE_OF_TEXT_VAR,
    790           /*
    791            * Casting added here just to keep the compiler silent.
    792            */
    793         (long)"    Command line arguments to pass to the PSS.",
    794       }
    795     }
    796   },
    797 /*
    798  * Last element. Do not remove.
    799  */
    800   {
    801     VAL_END_OF_LIST
    802   }
    803 }
    804 #endif
    805 ;
    806 /********************************************************
    807 *NAME
    808 *  Update_pss_fields_default
    809 *TYPE: BUFFER
    810 *DATE: 10/MAR/2002
    811 *FUNCTION:
    812 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
    813 *  PARAMETER "FIELDS" IN THE CONTEXT OF SUBJECT 'PSS'.
    814 *ORGANIZATION:
    815 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    816 *    int val_type -
    817 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
    818 *      VAL_IP OR VAL_SYMBOL)
    819 *    union value -
    820 *      Union of one of
    821 *        int            int_value
    822 *        char           *string_value
    823 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
    824 *        unsigned long  ip_value ;
    825 *      Value of default variable.
    826 *USAGE:
    827 *  SEE ORGANIZATION.
    828 *REMARKS:
    829 *  NONE.
    830 *SEE ALSO:
    831  */
    832 EXTERN CONST
    833    PARAM_VAL
    834      Update_pss_fields_default
    835 #ifdef INIT
    836    =
    837 {
    838   VAL_TEXT,
    839   0,
    840   {
    841     /*
    842      * Casting required here only to keep the compiler silent.
    843      */
    844     (int)0
    845   }
    846 }
    847 #endif
    848 ;
    849 /********************************************************
    850 *NAME
    851 *  Pss_traffic_class_default
    852 *TYPE: BUFFER
    853 *DATE: 31/MARCH/2003
    854 *FUNCTION:
    855 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
    856 *  PARAMETER "TRAFFIC_CLASS" IN THE CONTEXT OF SUBJECT 'PSS'
    857 *  (AND 'USER_TX_TABLE').
    858 *ORGANIZATION:
    859 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    860 *    int val_type -
    861 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
    862 *      VAL_IP OR VAL_SYMBOL)
    863 *    int numeric_equivalent -
    864 *      Numeric value related to string_value. Only relevant
    865 *      for val_type = VAL_SYMBOL
    866 *    union value -
    867 *      Union of one of
    868 *        int            int_value
    869 *        char           *string_value
    870 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
    871 *        unsigned long  ip_value ;
    872 *      Value of default variable.
    873 *USAGE:
    874 *  SEE ORGANIZATION.
    875 *REMARKS:
    876 *  NONE.
    877 *SEE ALSO:
    878  */
    879 EXTERN CONST
    880    PARAM_VAL
    881      Pss_traffic_class_default
    882 #ifdef INIT
    883    =
    884 {
    885   VAL_NUMERIC,
    886   0,
    887   {
    888     /*
    889      * Casting may be required here only to keep the compiler silent.
    890      */
    891     (unsigned long)3
    892   }
    893 }
    894 #endif
    895 ;
    896 /********************************************************
    897 *NAME
    898 *  Pss_display_format_vals
    899 *TYPE: BUFFER
    900 *DATE: 18/JULY/2003
    901 *FUNCTION:
    902 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
    903 *  RELATED TO THE PARAMETER "DISPLAY_FORMAT" IN THE
    904 *  CONTEXT OF SUBJECT 'PSS' (AND 'PORT_UTILS').
    905 *ORGANIZATION:
    906 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
    907 *    int val_type -
    908 *      Type of value. Can be:
    909 *        VAL_END_OF_LIST 0
    910 *        VAL_NUMERIC     1
    911 *        VAL_SYMBOL      2
    912 *        VAL_TEXT        3
    913 *        VAL_IP          4
    914 *      The first one is only to indicate the end of
    915 *      this array. The others indicate what kind of
    916 *      value this is.
    917 *    char *symb_val -
    918 *      ASCII presentation of the symbolic value.
    919 *      Note: Must be small letters only!
    920 *      For numeric variables:
    921 *      This is a dummy variable. Enables searching
    922 *      array of 'PARAM_VAL_RULES' for name (string)
    923 *      matching without special case for numeric
    924 *      variable.
    925 *    VAL_DESCRIPTOR val_descriptor -
    926 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
    927 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
    928 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
    929 *      See details in file of definition. Note: Symbols
    930 *      must be small letters only!
    931 *USAGE:
    932 *  SEE ORGANIZATION.
    933 *REMARKS:
    934 *  NONE.
    935 *SEE ALSO:
    936  */
    937 EXTERN CONST
    938    PARAM_VAL_RULES
    939      Pss_display_format_vals[]
    940 #ifdef INIT
    941    =
    942 {
    943   {
    944     VAL_SYMBOL,
    945     "short",
    946     {
    947       {
    948         SHORT_EQUIVALENT,
    949           /*
    950            * Casting added here just to keep the compiler silent.
    951            */
    952         (long)"    Display MAC counters in short format: Name and value.",
    953           /*
    954            * Pointer to a function to call after symbolic value
    955            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    956            * Casting to 'long' added here just to keep the
    957            * compiler silent.
    958            */
    959         (long)NULL
    960       }
    961     }
    962   },
    963   {
    964     VAL_SYMBOL,
    965     "long",
    966     {
    967       {
    968         LONG_EQUIVALENT,
    969           /*
    970            * Casting added here just to keep the compiler silent.
    971            */
    972         (long)"    Display MAC counters in long format: Detailed description, name and value.",
    973           /*
    974            * Pointer to a function to call after symbolic value
    975            * has been accepted. Casting should be 'VAL_PROC_PTR'.
    976            * Casting to 'long' added here just to keep the
    977            * compiler silent.
    978            */
    979         (long)NULL
    980       }
    981     }
    982   },
    983 /*
    984  * Last element. Do not remove.
    985  */
    986   {
    987     VAL_END_OF_LIST
    988   }
    989 }
    990 #endif
    991 ;
    992 /********************************************************
    993 *NAME
    994 *  Pss_encapsulation_vals
    995 *TYPE: BUFFER
    996 *DATE: 31/MARCH/2003
    997 *FUNCTION:
    998 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
    999 *  RELATED TO THE PARAMETER "ENCAPSULATION" IN THE
   1000 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   1001 *ORGANIZATION:
   1002 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1003 *    int val_type -
   1004 *      Type of value. Can be:
   1005 *        VAL_END_OF_LIST 0
   1006 *        VAL_NUMERIC     1
   1007 *        VAL_SYMBOL      2
   1008 *        VAL_TEXT        3
   1009 *        VAL_IP          4
   1010 *      The first one is only to indicate the end of
   1011 *      this array. The others indicate what kind of
   1012 *      value this is.
   1013 *    char *symb_val -
   1014 *      ASCII presentation of the symbolic value.
   1015 *      Note: Must be small letters only!
   1016 *      For numeric variables:
   1017 *      This is a dummy variable. Enables searching
   1018 *      array of 'PARAM_VAL_RULES' for name (string)
   1019 *      matching without special case for numeric
   1020 *      variable.
   1021 *    VAL_DESCRIPTOR val_descriptor -
   1022 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1023 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1024 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1025 *      See details in file of definition. Note: Symbols
   1026 *      must be small letters only!
   1027 *USAGE:
   1028 *  SEE ORGANIZATION.
   1029 *REMARKS:
   1030 *  NONE.
   1031 *SEE ALSO:
   1032  */
   1033 EXTERN CONST
   1034    PARAM_VAL_RULES
   1035      Pss_encapsulation_vals[]
   1036 #ifdef INIT
   1037    =
   1038 {
   1039   {
   1040     VAL_SYMBOL,
   1041     "regular",
   1042     {
   1043       {
   1044         GT_REGULAR_ENCAPSULATION_EQUIVALENT,
   1045           /*
   1046            * Casting added here just to keep the compiler silent.
   1047            */
   1048         (long)"    Transmit packet using Non-control encapsulation. Packet is subject to\r\n"
   1049               "    egress bridge filtering due to VLAN egress filtering or Spann. Tree\r\n"
   1050               "    filtering.",
   1051           /*
   1052            * Pointer to a function to call after symbolic value
   1053            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1054            * Casting to 'long' added here just to keep the
   1055            * compiler silent.
   1056            */
   1057         (long)NULL
   1058       }
   1059     }
   1060   },
   1061   {
   1062     VAL_SYMBOL,
   1063     "control",
   1064     {
   1065       {
   1066         GT_CONTROL_ENCAPSULATION_EQUIVALENT,
   1067           /*
   1068            * Casting added here just to keep the compiler silent.
   1069            */
   1070         (long)"    Transmit packet using control encapsulation. Packet is NOT subject to\r\n"
   1071               "    egress bridge filtering due to VLAN egress filtering or Spann. Tree\r\n"
   1072               "    filtering.",
   1073           /*
   1074            * Pointer to a function to call after symbolic value
   1075            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1076            * Casting to 'long' added here just to keep the
   1077            * compiler silent.
   1078            */
   1079         (long)NULL
   1080       }
   1081     }
   1082   },
   1083 /*
   1084  * Last element. Do not remove.
   1085  */
   1086   {
   1087     VAL_END_OF_LIST
   1088   }
   1089 }
   1090 #endif
   1091 ;
   1092 /********************************************************
   1093 *NAME
   1094 *  Pss_encapsulation_default
   1095 *TYPE: BUFFER
   1096 *DATE: 31/MARCH/2003
   1097 *FUNCTION:
   1098 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   1099 *  PARAMETER "ENCAPSULATION" IN THE CONTEXT OF SUBJECT 'PSS'
   1100 *  (AND 'USER_TX_TABLE').
   1101 *ORGANIZATION:
   1102 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1103 *    int val_type -
   1104 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1105 *      VAL_IP OR VAL_SYMBOL)
   1106 *    int numeric_equivalent -
   1107 *      Numeric value related to string_value. Only relevant
   1108 *      for val_type = VAL_SYMBOL
   1109 *    union value -
   1110 *      Union of one of
   1111 *        int            int_value
   1112 *        char           *string_value
   1113 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1114 *        unsigned long  ip_value ;
   1115 *      Value of default variable.
   1116 *USAGE:
   1117 *  SEE ORGANIZATION.
   1118 *REMARKS:
   1119 *  NONE.
   1120 *SEE ALSO:
   1121  */
   1122 EXTERN CONST
   1123    PARAM_VAL
   1124      Pss_encapsulation_default
   1125 #ifdef INIT
   1126    =
   1127 {
   1128   VAL_SYMBOL,
   1129   GT_REGULAR_ENCAPSULATION_EQUIVALENT,
   1130   {
   1131     /*
   1132      * Casting may be required here only to keep the compiler silent.
   1133      */
   1134     (unsigned long)"regular"
   1135   }
   1136 }
   1137 #endif
   1138 ;
   1139 /********************************************************
   1140 *NAME
   1141 *  Pss_clear_after_read_default
   1142 *TYPE: BUFFER
   1143 *DATE: 18/JULY/2003
   1144 *FUNCTION:
   1145 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   1146 *  PARAMETER "CLEAR_AFTER_READ" IN THE CONTEXT OF SUBJECT 'PSS'
   1147 *  (AND 'PORT_UTILS').
   1148 *ORGANIZATION:
   1149 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1150 *    int val_type -
   1151 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1152 *      VAL_IP OR VAL_SYMBOL)
   1153 *    int numeric_equivalent -
   1154 *      Numeric value related to string_value. Only relevant
   1155 *      for val_type = VAL_SYMBOL
   1156 *    union value -
   1157 *      Union of one of
   1158 *        int            int_value
   1159 *        char           *string_value
   1160 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1161 *        unsigned long  ip_value ;
   1162 *      Value of default variable.
   1163 *USAGE:
   1164 *  SEE ORGANIZATION.
   1165 *REMARKS:
   1166 *  NONE.
   1167 *SEE ALSO:
   1168  */
   1169 EXTERN CONST
   1170    PARAM_VAL
   1171      Pss_clear_after_read_default
   1172 #ifdef INIT
   1173    =
   1174 {
   1175   VAL_SYMBOL,
   1176   ON_EQUIVALENT,
   1177   {
   1178     /*
   1179      * Casting may be required here only to keep the compiler silent.
   1180      */
   1181     (unsigned long)"on"
   1182   }
   1183 }
   1184 #endif
   1185 ;
   1186 /********************************************************
   1187 *NAME
   1188 *  Pss_display_format_default
   1189 *TYPE: BUFFER
   1190 *DATE: 18/JULY/2003
   1191 *FUNCTION:
   1192 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   1193 *  PARAMETER "DISPLAY_FORMAT" IN THE CONTEXT OF SUBJECT 'PSS'
   1194 *  (AND 'PORT_UTILS').
   1195 *ORGANIZATION:
   1196 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1197 *    int val_type -
   1198 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1199 *      VAL_IP OR VAL_SYMBOL)
   1200 *    int numeric_equivalent -
   1201 *      Numeric value related to string_value. Only relevant
   1202 *      for val_type = VAL_SYMBOL
   1203 *    union value -
   1204 *      Union of one of
   1205 *        int            int_value
   1206 *        char           *string_value
   1207 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1208 *        unsigned long  ip_value ;
   1209 *      Value of default variable.
   1210 *USAGE:
   1211 *  SEE ORGANIZATION.
   1212 *REMARKS:
   1213 *  NONE.
   1214 *SEE ALSO:
   1215  */
   1216 EXTERN CONST
   1217    PARAM_VAL
   1218      Pss_display_format_default
   1219 #ifdef INIT
   1220    =
   1221 {
   1222   VAL_SYMBOL,
   1223   SHORT_EQUIVALENT,
   1224   {
   1225     /*
   1226      * Casting may be required here only to keep the compiler silent.
   1227      */
   1228     (unsigned long)"short"
   1229   }
   1230 }
   1231 #endif
   1232 ;
   1233 /********************************************************
   1234 *NAME
   1235 *  Pss_entry_id_vals
   1236 *TYPE: BUFFER
   1237 *DATE: 30/MARCH/2003
   1238 *FUNCTION:
   1239 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1240 *  RELATED TO THE PARAMETER "ENTRY_ID" IN THE
   1241 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   1242 *ORGANIZATION:
   1243 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1244 *    int val_type -
   1245 *      Type of value. Can be:
   1246 *        VAL_END_OF_LIST 0
   1247 *        VAL_NUMERIC     1
   1248 *        VAL_SYMBOL      2
   1249 *        VAL_TEXT        3
   1250 *        VAL_IP          4
   1251 *      The first one is only to indicate the end of
   1252 *      this array. The others indicate what kind of
   1253 *      value this is.
   1254 *    char *symb_val -
   1255 *      ASCII presentation of the symbolic value.
   1256 *      Note: Must be small letters only!
   1257 *      For numeric variables:
   1258 *      This is a dummy variable. Enables searching
   1259 *      array of 'PARAM_VAL_RULES' for name (string)
   1260 *      matching without special case for numeric
   1261 *      variable.
   1262 *    VAL_DESCRIPTOR val_descriptor -
   1263 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1264 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1265 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1266 *      See details in file of definition. Note: Symbols
   1267 *      must be small letters only!
   1268 *USAGE:
   1269 *  SEE ORGANIZATION.
   1270 *REMARKS:
   1271 *  NONE.
   1272 *SEE ALSO:
   1273  */
   1274 EXTERN CONST
   1275    PARAM_VAL_RULES
   1276      Pss_entry_id_vals[]
   1277 #ifdef INIT
   1278    =
   1279 {
   1280   {
   1281     VAL_NUMERIC,
   1282     SYMB_NAME_NUMERIC,
   1283     {
   1284       {
   1285         HAS_MIN_VALUE | HAS_MAX_VALUE,
   1286         100,
   1287         0,
   1288           /*
   1289            * Number of times this value can be repeated (i.e.,
   1290            * value is an array). Must be at least 1!
   1291            */
   1292         1,
   1293         (VAL_PROC_PTR)0
   1294       }
   1295     }
   1296   },
   1297 /*
   1298  * Last element. Do not remove.
   1299  */
   1300   {
   1301     VAL_END_OF_LIST
   1302   }
   1303 }
   1304 #endif
   1305 ;
   1306 /********************************************************
   1307 *NAME
   1308 *  Pss_entry_id_default
   1309 *TYPE: BUFFER
   1310 *DATE: 30/MARCH/2003
   1311 *FUNCTION:
   1312 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   1313 *  PARAMETER "ENTRY_ID" IN THE CONTEXT OF SUBJECT 'PSS'
   1314 *  (AND 'USER_TX_TABLE').
   1315 *ORGANIZATION:
   1316 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1317 *    int val_type -
   1318 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1319 *      VAL_IP OR VAL_SYMBOL)
   1320 *    int numeric_equivalent -
   1321 *      Numeric value related to string_value. Only relevant
   1322 *      for val_type = VAL_SYMBOL
   1323 *    union value -
   1324 *      Union of one of
   1325 *        int            int_value
   1326 *        char           *string_value
   1327 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1328 *        unsigned long  ip_value ;
   1329 *      Value of default variable.
   1330 *USAGE:
   1331 *  SEE ORGANIZATION.
   1332 *REMARKS:
   1333 *  NONE.
   1334 *SEE ALSO:
   1335  */
   1336 EXTERN CONST
   1337    PARAM_VAL
   1338      Pss_entry_id_default
   1339 #ifdef INIT
   1340    =
   1341 {
   1342   VAL_NUMERIC,
   1343   0,
   1344   {
   1345     /*
   1346      * Casting may be required here only to keep the compiler silent.
   1347      */
   1348     (unsigned long)0
   1349   }
   1350 }
   1351 #endif
   1352 ;
   1353 /********************************************************
   1354 *NAME
   1355 *  Pss_data_mem_vals
   1356 *TYPE: BUFFER
   1357 *DATE: 18/JAN/2002
   1358 *FUNCTION:
   1359 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1360 *  RELATED TO THE PARAMETER "DATA" IN THE
   1361 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   1362 *ORGANIZATION:
   1363 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1364 *    int val_type -
   1365 *      Type of value. Can be:
   1366 *        VAL_END_OF_LIST 0
   1367 *        VAL_NUMERIC     1
   1368 *        VAL_SYMBOL      2
   1369 *        VAL_TEXT        3
   1370 *        VAL_IP          4
   1371 *      The first one is only to indicate the end of
   1372 *      this array. The others indicate what kind of
   1373 *      value this is.
   1374 *    char *symb_val -
   1375 *      ASCII presentation of the symbolic value.
   1376 *      Note: Must be small letters only!
   1377 *      For numeric variables:
   1378 *      This is a dummy variable. Enables searching
   1379 *      array of 'PARAM_VAL_RULES' for name (string)
   1380 *      matching without special case for numeric
   1381 *      variable.
   1382 *    VAL_DESCRIPTOR val_descriptor -
   1383 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1384 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1385 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1386 *      See details in file of definition. Note: Symbols
   1387 *      must be small letters only!
   1388 *USAGE:
   1389 *  SEE ORGANIZATION.
   1390 *REMARKS:
   1391 *  NONE.
   1392 *SEE ALSO:
   1393  */
   1394 EXTERN CONST
   1395    PARAM_VAL_RULES
   1396      Pss_data_mem_vals[]
   1397 #ifdef INIT
   1398    =
   1399 {
   1400   {
   1401     VAL_NUMERIC,
   1402     SYMB_NAME_NUMERIC,
   1403     {
   1404       {
   1405         0,
   1406         0,0,
   1407           /*
   1408            * Number of times this value can be repeated (i.e.,
   1409            * value is an array). Must be at least 1!
   1410            */
   1411         PSS_DATA_NUM_VALS,
   1412         (VAL_PROC_PTR)NULL
   1413       }
   1414     }
   1415   },
   1416 /*
   1417  * Last element. Do not remove.
   1418  */
   1419   {
   1420     VAL_END_OF_LIST
   1421   }
   1422 }
   1423 #endif
   1424 ;
   1425 /********************************************************
   1426 *NAME
   1427 *  Pss_data_mem_default
   1428 *TYPE: BUFFER
   1429 *DATE: 30/MARCH/2003
   1430 *FUNCTION:
   1431 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   1432 *  PARAMETER "DATA" IN THE CONTEXT OF SUBJECT 'PSS'
   1433 *  (AND 'USER_TX_TABLE').
   1434 *ORGANIZATION:
   1435 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1436 *    int val_type -
   1437 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1438 *      VAL_IP OR VAL_SYMBOL)
   1439 *    int numeric_equivalent -
   1440 *      Numeric value related to string_value. Only relevant
   1441 *      for val_type = VAL_SYMBOL
   1442 *    union value -
   1443 *      Union of one of
   1444 *        int            int_value
   1445 *        char           *string_value
   1446 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1447 *        unsigned long  ip_value ;
   1448 *      Value of default variable.
   1449 *USAGE:
   1450 *  SEE ORGANIZATION.
   1451 *REMARKS:
   1452 *  NONE.
   1453 *SEE ALSO:
   1454  */
   1455 EXTERN CONST
   1456    PARAM_VAL
   1457      Pss_data_mem_default
   1458 #ifdef INIT
   1459    =
   1460 {
   1461   VAL_NUMERIC,
   1462   0,
   1463   {
   1464     /*
   1465      * Casting may be required here only to keep the compiler silent.
   1466      */
   1467     (unsigned long)0xAABBCCDD
   1468   }
   1469 }
   1470 #endif
   1471 ;
   1472 /********************************************************
   1473 *NAME
   1474 *  Port_tagged_vals
   1475 *TYPE: BUFFER
   1476 *DATE: 21/MARCH/2003
   1477 *FUNCTION:
   1478 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1479 *  RELATED TO THE PARAMETER "PORT_TAGGED" IN THE
   1480 *  CONTEXT OF SUBJECT 'PSS' (AND 'VLAN').
   1481 *ORGANIZATION:
   1482 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1483 *    int val_type -
   1484 *      Type of value. Can be:
   1485 *        VAL_END_OF_LIST 0
   1486 *        VAL_NUMERIC     1
   1487 *        VAL_SYMBOL      2
   1488 *        VAL_TEXT        3
   1489 *        VAL_IP          4
   1490 *      The first one is only to indicate the end of
   1491 *      this array. The others indicate what kind of
   1492 *      value this is.
   1493 *    char *symb_val -
   1494 *      ASCII presentation of the symbolic value.
   1495 *      Note: Must be small letters only!
   1496 *      For numeric variables:
   1497 *      This is a dummy variable. Enables searching
   1498 *      array of 'PARAM_VAL_RULES' for name (string)
   1499 *      matching without special case for numeric
   1500 *      variable.
   1501 *    VAL_DESCRIPTOR val_descriptor -
   1502 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1503 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1504 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1505 *      See details in file of definition. Note: Symbols
   1506 *      must be small letters only!
   1507 *USAGE:
   1508 *  SEE ORGANIZATION.
   1509 *REMARKS:
   1510 *  NONE.
   1511 *SEE ALSO:
   1512  */
   1513 EXTERN CONST
   1514    PARAM_VAL_RULES
   1515      Port_tagged_vals[]
   1516 #ifdef INIT
   1517    =
   1518 {
   1519   {
   1520     VAL_SYMBOL,
   1521     "on",
   1522     {
   1523       {
   1524         ON_EQUIVALENT,
   1525           /*
   1526            * Casting added here just to keep the compiler silent.
   1527            */
   1528         (long)"    Add Vlan tag to incoming traffic on this port.",
   1529           /*
   1530            * Pointer to a function to call after symbolic value
   1531            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1532            * Casting to 'long' added here just to keep the
   1533            * compiler silent.
   1534            */
   1535         (long)NULL
   1536       }
   1537     }
   1538   },
   1539   {
   1540     VAL_SYMBOL,
   1541     "off",
   1542     {
   1543       {
   1544         OFF_EQUIVALENT,
   1545           /*
   1546            * Casting added here just to keep the compiler silent.
   1547            */
   1548         (long)"    Do NOT add Vlan tag to incoming traffic on this port.",
   1549           /*
   1550            * Pointer to a function to call after symbolic value
   1551            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1552            * Casting to 'long' added here just to keep the
   1553            * compiler silent.
   1554            */
   1555         (long)NULL
   1556       }
   1557     }
   1558   },
   1559 /*
   1560  * Last element. Do not remove.
   1561  */
   1562   {
   1563     VAL_END_OF_LIST
   1564   }
   1565 }
   1566 #endif
   1567 ;
   1568 /********************************************************
   1569 *NAME
   1570 *  Port_tagged_default
   1571 *TYPE: BUFFER
   1572 *DATE: 21/MARCH/2003
   1573 *FUNCTION:
   1574 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   1575 *  PARAMETER "PORT_TAGGED" IN THE CONTEXT OF SUBJECT 'PSS'
   1576 *  (AND 'VLAN').
   1577 *ORGANIZATION:
   1578 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1579 *    int val_type -
   1580 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1581 *      VAL_IP OR VAL_SYMBOL)
   1582 *    int numeric_equivalent -
   1583 *      Numeric value related to string_value. Only relevant
   1584 *      for val_type = VAL_SYMBOL
   1585 *    union value -
   1586 *      Union of one of
   1587 *        int            int_value
   1588 *        char           *string_value
   1589 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1590 *        unsigned long  ip_value ;
   1591 *      Value of default variable.
   1592 *USAGE:
   1593 *  SEE ORGANIZATION.
   1594 *REMARKS:
   1595 *  NONE.
   1596 *SEE ALSO:
   1597  */
   1598 EXTERN CONST
   1599    PARAM_VAL
   1600      Port_tagged_default
   1601 #ifdef INIT
   1602    =
   1603 {
   1604   VAL_SYMBOL,
   1605   OFF_EQUIVALENT,
   1606   {
   1607     /*
   1608      * Casting required here only to keep the compiler silent.
   1609      */
   1610     (int)"off"
   1611   }
   1612 }
   1613 #endif
   1614 ;
   1615 /********************************************************
   1616 *NAME
   1617 *  Bridge_general_commands_vals
   1618 *TYPE: BUFFER
   1619 *DATE: 22/APR/2003
   1620 *FUNCTION:
   1621 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1622 *  RELATED TO THE PARAMETER "GENERAL_COMMANDS" OF SUBJECT
   1623 *  'PSS' WITHIN 'BRIDGE' CONTEXT.
   1624 *ORGANIZATION:
   1625 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1626 *    int val_type -
   1627 *      Type of value. Can be:
   1628 *        VAL_END_OF_LIST 0
   1629 *        VAL_NUMERIC     1
   1630 *        VAL_SYMBOL      2
   1631 *        VAL_TEXT        3
   1632 *        VAL_IP          4
   1633 *      The first one is only to indicate the end of
   1634 *      this array. The others indicate what kind of
   1635 *      value this is.
   1636 *    char *symb_val -
   1637 *      ASCII presentation of the symbolic value.
   1638 *      Note: Must be small letters only!
   1639 *      For numeric variables:
   1640 *      This is a dummy variable. Enables searching
   1641 *      array of 'PARAM_VAL_RULES' for name (string)
   1642 *      matching without special case for numeric
   1643 *      variable.
   1644 *    VAL_DESCRIPTOR val_descriptor -
   1645 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1646 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1647 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1648 *      See details in file of definition. Note: Symbols
   1649 *      must be small letters only!
   1650 *USAGE:
   1651 *  SEE ORGANIZATION.
   1652 *REMARKS:
   1653 *  None
   1654 *SEE ALSO:
   1655  */
   1656 EXTERN CONST
   1657    PARAM_VAL_RULES
   1658      Bridge_general_commands_vals[]
   1659 #ifdef INIT
   1660    =
   1661 {
   1662   {
   1663     VAL_SYMBOL,
   1664     "set_mac_da_sa_trap",
   1665     {
   1666       {
   1667         SET_MAC_DA_SA_TRAP_EQUIVALENT,
   1668           /*
   1669            * Casting added here just to keep the compiler silent.
   1670            */
   1671         (long)"    Select da-sa pair of MAC address identifiers.",
   1672           /*
   1673            * Pointer to a function to call after symbolic value
   1674            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1675            * Casting to 'long' added here just to keep the
   1676            * compiler silent.
   1677            */
   1678         (long)NULL
   1679       }
   1680     }
   1681   },
   1682   {
   1683     VAL_SYMBOL_LAST,
   1684     "display_host_counters",
   1685     {
   1686       {
   1687         HOST_COUNTERS_EQUIVALENT,
   1688           /*
   1689            * Casting added here just to keep the compiler silent.
   1690            */
   1691         (long)"    Display \'host\' counters (InPkts,InOctets,OutPkts,OutOctets,\r\n"
   1692               "    OutBroadcastPkts,OutMulticastPkts)",
   1693           /*
   1694            * Pointer to a function to call after symbolic value
   1695            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1696            * Casting to 'long' added here just to keep the
   1697            * compiler silent.
   1698            */
   1699         (long)NULL
   1700       }
   1701     }
   1702   },
   1703 /*
   1704  * Last element. Do not remove.
   1705  */
   1706   {
   1707     VAL_END_OF_LIST
   1708   }
   1709 }
   1710 #endif
   1711 ;
   1712 /********************************************************
   1713 *NAME
   1714 *  Cpu_included_vals
   1715 *TYPE: BUFFER
   1716 *DATE: 23/MARCH/2003
   1717 *FUNCTION:
   1718 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1719 *  RELATED TO THE PARAMETER "CPU_INCLUDED" IN THE
   1720 *  CONTEXT OF SUBJECT 'PSS' (AND 'VLAN').
   1721 *ORGANIZATION:
   1722 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1723 *    int val_type -
   1724 *      Type of value. Can be:
   1725 *        VAL_END_OF_LIST 0
   1726 *        VAL_NUMERIC     1
   1727 *        VAL_SYMBOL      2
   1728 *        VAL_TEXT        3
   1729 *        VAL_IP          4
   1730 *      The first one is only to indicate the end of
   1731 *      this array. The others indicate what kind of
   1732 *      value this is.
   1733 *    char *symb_val -
   1734 *      ASCII presentation of the symbolic value.
   1735 *      Note: Must be small letters only!
   1736 *      For numeric variables:
   1737 *      This is a dummy variable. Enables searching
   1738 *      array of 'PARAM_VAL_RULES' for name (string)
   1739 *      matching without special case for numeric
   1740 *      variable.
   1741 *    VAL_DESCRIPTOR val_descriptor -
   1742 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1743 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1744 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1745 *      See details in file of definition. Note: Symbols
   1746 *      must be small letters only!
   1747 *USAGE:
   1748 *  SEE ORGANIZATION.
   1749 *REMARKS:
   1750 *  NONE.
   1751 *SEE ALSO:
   1752  */
   1753 EXTERN CONST
   1754    PARAM_VAL_RULES
   1755      Cpu_included_vals[]
   1756 #ifdef INIT
   1757    =
   1758 {
   1759   {
   1760     VAL_SYMBOL,
   1761     "on",
   1762     {
   1763       {
   1764         ON_EQUIVALENT,
   1765           /*
   1766            * Casting added here just to keep the compiler silent.
   1767            */
   1768         (long)"    Add this CPU to new Vlan.",
   1769           /*
   1770            * Pointer to a function to call after symbolic value
   1771            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1772            * Casting to 'long' added here just to keep the
   1773            * compiler silent.
   1774            */
   1775         (long)NULL
   1776       }
   1777     }
   1778   },
   1779   {
   1780     VAL_SYMBOL,
   1781     "off",
   1782     {
   1783       {
   1784         OFF_EQUIVALENT,
   1785           /*
   1786            * Casting added here just to keep the compiler silent.
   1787            */
   1788         (long)"    Do NOT add this CPU to new Vlan.",
   1789           /*
   1790            * Pointer to a function to call after symbolic value
   1791            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1792            * Casting to 'long' added here just to keep the
   1793            * compiler silent.
   1794            */
   1795         (long)NULL
   1796       }
   1797     }
   1798   },
   1799 /*
   1800  * Last element. Do not remove.
   1801  */
   1802   {
   1803     VAL_END_OF_LIST
   1804   }
   1805 }
   1806 #endif
   1807 ;
   1808 /********************************************************
   1809 *NAME
   1810 *  Cpu_included_default
   1811 *TYPE: BUFFER
   1812 *DATE: 21/MARCH/2003
   1813 *FUNCTION:
   1814 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   1815 *  PARAMETER "CPU_INCLUDED" IN THE CONTEXT OF SUBJECT 'PSS'
   1816 *  (AND 'VLAN').
   1817 *ORGANIZATION:
   1818 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1819 *    int val_type -
   1820 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1821 *      VAL_IP OR VAL_SYMBOL)
   1822 *    int numeric_equivalent -
   1823 *      Numeric value related to string_value. Only relevant
   1824 *      for val_type = VAL_SYMBOL
   1825 *    union value -
   1826 *      Union of one of
   1827 *        int            int_value
   1828 *        char           *string_value
   1829 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1830 *        unsigned long  ip_value ;
   1831 *      Value of default variable.
   1832 *USAGE:
   1833 *  SEE ORGANIZATION.
   1834 *REMARKS:
   1835 *  NONE.
   1836 *SEE ALSO:
   1837  */
   1838 EXTERN CONST
   1839    PARAM_VAL
   1840      Cpu_included_default
   1841 #ifdef INIT
   1842    =
   1843 {
   1844   VAL_SYMBOL,
   1845   OFF_EQUIVALENT,
   1846   {
   1847     /*
   1848      * Casting required here only to keep the compiler silent.
   1849      */
   1850     (int)"off"
   1851   }
   1852 }
   1853 #endif
   1854 ;
   1855 /********************************************************
   1856 *NAME
   1857 *  Pss_append_crc_vals
   1858 *TYPE: BUFFER
   1859 *DATE: 31/MARCH/2003
   1860 *FUNCTION:
   1861 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   1862 *  RELATED TO THE PARAMETER "APPEND_CRC" IN THE
   1863 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   1864 *ORGANIZATION:
   1865 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1866 *    int val_type -
   1867 *      Type of value. Can be:
   1868 *        VAL_END_OF_LIST 0
   1869 *        VAL_NUMERIC     1
   1870 *        VAL_SYMBOL      2
   1871 *        VAL_TEXT        3
   1872 *        VAL_IP          4
   1873 *      The first one is only to indicate the end of
   1874 *      this array. The others indicate what kind of
   1875 *      value this is.
   1876 *    char *symb_val -
   1877 *      ASCII presentation of the symbolic value.
   1878 *      Note: Must be small letters only!
   1879 *      For numeric variables:
   1880 *      This is a dummy variable. Enables searching
   1881 *      array of 'PARAM_VAL_RULES' for name (string)
   1882 *      matching without special case for numeric
   1883 *      variable.
   1884 *    VAL_DESCRIPTOR val_descriptor -
   1885 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   1886 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   1887 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   1888 *      See details in file of definition. Note: Symbols
   1889 *      must be small letters only!
   1890 *USAGE:
   1891 *  SEE ORGANIZATION.
   1892 *REMARKS:
   1893 *  NONE.
   1894 *SEE ALSO:
   1895  */
   1896 EXTERN CONST
   1897    PARAM_VAL_RULES
   1898      Pss_append_crc_vals[]
   1899 #ifdef INIT
   1900    =
   1901 {
   1902   {
   1903     VAL_SYMBOL,
   1904     "on",
   1905     {
   1906       {
   1907         ON_EQUIVALENT,
   1908           /*
   1909            * Casting added here just to keep the compiler silent.
   1910            */
   1911         (long)"    Append CRC to this message before transmitting.",
   1912           /*
   1913            * Pointer to a function to call after symbolic value
   1914            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1915            * Casting to 'long' added here just to keep the
   1916            * compiler silent.
   1917            */
   1918         (long)NULL
   1919       }
   1920     }
   1921   },
   1922   {
   1923     VAL_SYMBOL,
   1924     "off",
   1925     {
   1926       {
   1927         OFF_EQUIVALENT,
   1928           /*
   1929            * Casting added here just to keep the compiler silent.
   1930            */
   1931         (long)"    Do NOT append CRC to this message before transmitting.",
   1932           /*
   1933            * Pointer to a function to call after symbolic value
   1934            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   1935            * Casting to 'long' added here just to keep the
   1936            * compiler silent.
   1937            */
   1938         (long)NULL
   1939       }
   1940     }
   1941   },
   1942 /*
   1943  * Last element. Do not remove.
   1944  */
   1945   {
   1946     VAL_END_OF_LIST
   1947   }
   1948 }
   1949 #endif
   1950 ;
   1951 /********************************************************
   1952 *NAME
   1953 *  Pss_append_crc_default
   1954 *TYPE: BUFFER
   1955 *DATE: 31/MARCH/2003
   1956 *FUNCTION:
   1957 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   1958 *  PARAMETER "APPEND_CRC" IN THE CONTEXT OF SUBJECT 'PSS'
   1959 *  (AND 'USER_TX_TABLE').
   1960 *ORGANIZATION:
   1961 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   1962 *    int val_type -
   1963 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   1964 *      VAL_IP OR VAL_SYMBOL)
   1965 *    int numeric_equivalent -
   1966 *      Numeric value related to string_value. Only relevant
   1967 *      for val_type = VAL_SYMBOL
   1968 *    union value -
   1969 *      Union of one of
   1970 *        int            int_value
   1971 *        char           *string_value
   1972 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   1973 *        unsigned long  ip_value ;
   1974 *      Value of default variable.
   1975 *USAGE:
   1976 *  SEE ORGANIZATION.
   1977 *REMARKS:
   1978 *  NONE.
   1979 *SEE ALSO:
   1980  */
   1981 EXTERN CONST
   1982    PARAM_VAL
   1983      Pss_append_crc_default
   1984 #ifdef INIT
   1985    =
   1986 {
   1987   VAL_SYMBOL,
   1988   OFF_EQUIVALENT,
   1989   {
   1990     /*
   1991      * Casting required here only to keep the compiler silent.
   1992      */
   1993     (int)"off"
   1994   }
   1995 }
   1996 #endif
   1997 ;
   1998 /********************************************************
   1999 *NAME
   2000 *  Pss_tagged_vals
   2001 *TYPE: BUFFER
   2002 *DATE: 31/MARCH/2003
   2003 *FUNCTION:
   2004 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2005 *  RELATED TO THE PARAMETER "TAGGED" IN THE
   2006 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   2007 *ORGANIZATION:
   2008 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2009 *    int val_type -
   2010 *      Type of value. Can be:
   2011 *        VAL_END_OF_LIST 0
   2012 *        VAL_NUMERIC     1
   2013 *        VAL_SYMBOL      2
   2014 *        VAL_TEXT        3
   2015 *        VAL_IP          4
   2016 *      The first one is only to indicate the end of
   2017 *      this array. The others indicate what kind of
   2018 *      value this is.
   2019 *    char *symb_val -
   2020 *      ASCII presentation of the symbolic value.
   2021 *      Note: Must be small letters only!
   2022 *      For numeric variables:
   2023 *      This is a dummy variable. Enables searching
   2024 *      array of 'PARAM_VAL_RULES' for name (string)
   2025 *      matching without special case for numeric
   2026 *      variable.
   2027 *    VAL_DESCRIPTOR val_descriptor -
   2028 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2029 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2030 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2031 *      See details in file of definition. Note: Symbols
   2032 *      must be small letters only!
   2033 *USAGE:
   2034 *  SEE ORGANIZATION.
   2035 *REMARKS:
   2036 *  NONE.
   2037 *SEE ALSO:
   2038  */
   2039 EXTERN CONST
   2040    PARAM_VAL_RULES
   2041      Pss_tagged_vals[]
   2042 #ifdef INIT
   2043    =
   2044 {
   2045   {
   2046     VAL_SYMBOL,
   2047     "on",
   2048     {
   2049       {
   2050         ON_EQUIVALENT,
   2051           /*
   2052            * Casting added here just to keep the compiler silent.
   2053            */
   2054         (long)"    Add 802.3P tag to this message before transmitting.",
   2055           /*
   2056            * Pointer to a function to call after symbolic value
   2057            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2058            * Casting to 'long' added here just to keep the
   2059            * compiler silent.
   2060            */
   2061         (long)NULL
   2062       }
   2063     }
   2064   },
   2065   {
   2066     VAL_SYMBOL,
   2067     "off",
   2068     {
   2069       {
   2070         OFF_EQUIVALENT,
   2071           /*
   2072            * Casting added here just to keep the compiler silent.
   2073            */
   2074         (long)"    Do NOT Add 802.3P tag to this message before transmitting.",
   2075           /*
   2076            * Pointer to a function to call after symbolic value
   2077            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2078            * Casting to 'long' added here just to keep the
   2079            * compiler silent.
   2080            */
   2081         (long)NULL
   2082       }
   2083     }
   2084   },
   2085 /*
   2086  * Last element. Do not remove.
   2087  */
   2088   {
   2089     VAL_END_OF_LIST
   2090   }
   2091 }
   2092 #endif
   2093 ;
   2094 /********************************************************
   2095 *NAME
   2096 *  Pss_tagged_default
   2097 *TYPE: BUFFER
   2098 *DATE: 31/MARCH/2003
   2099 *FUNCTION:
   2100 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   2101 *  PARAMETER "TAGGED" IN THE CONTEXT OF SUBJECT 'PSS'
   2102 *  (AND 'USER_TX_TABLE').
   2103 *ORGANIZATION:
   2104 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2105 *    int val_type -
   2106 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   2107 *      VAL_IP OR VAL_SYMBOL)
   2108 *    int numeric_equivalent -
   2109 *      Numeric value related to string_value. Only relevant
   2110 *      for val_type = VAL_SYMBOL
   2111 *    union value -
   2112 *      Union of one of
   2113 *        int            int_value
   2114 *        char           *string_value
   2115 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   2116 *        unsigned long  ip_value ;
   2117 *      Value of default variable.
   2118 *USAGE:
   2119 *  SEE ORGANIZATION.
   2120 *REMARKS:
   2121 *  NONE.
   2122 *SEE ALSO:
   2123  */
   2124 EXTERN CONST
   2125    PARAM_VAL
   2126      Pss_tagged_default
   2127 #ifdef INIT
   2128    =
   2129 {
   2130   VAL_SYMBOL,
   2131   OFF_EQUIVALENT,
   2132   {
   2133     /*
   2134      * Casting required here only to keep the compiler silent.
   2135      */
   2136     (int)"off"
   2137   }
   2138 }
   2139 #endif
   2140 ;
   2141 
   2142 /********************************************************
   2143 *NAME
   2144 *  Pss_cmd_type_vals
   2145 *TYPE: BUFFER
   2146 *DATE: 30/MARCH/2003
   2147 *FUNCTION:
   2148 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2149 *  RELATED TO THE PARAMETER "CMD_TYPE" IN
   2150 *  THE CONTEXT OF "PSS" AND "USER_TX_TABLE".
   2151 *ORGANIZATION:
   2152 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2153 *    int val_type -
   2154 *      Type of value. Can be:
   2155 *        VAL_END_OF_LIST 0
   2156 *        VAL_NUMERIC     1
   2157 *        VAL_SYMBOL      2
   2158 *        VAL_TEXT        3
   2159 *        VAL_IP          4
   2160 *      The first one is only to indicate the end of
   2161 *      this array. The others indicate what kind of
   2162 *      value this is.
   2163 *    char *symb_val -
   2164 *      ASCII presentation of the symbolic value.
   2165 *      Note: Must be small letters only!
   2166 *      For numeric variables:
   2167 *      This is a dummy variable. Enables searching
   2168 *      array of 'PARAM_VAL_RULES' for name (string)
   2169 *      matching without special case for numeric
   2170 *      variable.
   2171 *    VAL_DESCRIPTOR val_descriptor -
   2172 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2173 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2174 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2175 *      See details in file of definition. Note: Symbols
   2176 *      must be small letters only!
   2177 *USAGE:
   2178 *  SEE ORGANIZATION.
   2179 *REMARKS:
   2180 *  NONE.
   2181 *SEE ALSO:
   2182  */
   2183 EXTERN CONST
   2184    PARAM_VAL_RULES
   2185      Pss_cmd_type_vals[]
   2186 #ifdef INIT
   2187    =
   2188 {
   2189   {
   2190     VAL_SYMBOL,
   2191     "tx_by_vlan",
   2192     {
   2193       {
   2194         GT_CMD_TX_BY_VLAN_EQUIVALENT,
   2195           /*
   2196            * Casting added here just to keep the compiler silent.
   2197            */
   2198         (long)"    Transmit message using mac address and vlan id (using \"netSendPktByVid\"\r\n"
   2199               "    function).",
   2200           /*
   2201            * Pointer to a function to call after symbolic value
   2202            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2203            * Casting to 'long' added here just to keep the
   2204            * compiler silent.
   2205            */
   2206         (long)NULL
   2207       }
   2208     }
   2209   },
   2210   {
   2211     VAL_SYMBOL,
   2212     "tx_by_if",
   2213     {
   2214       {
   2215         GT_CMD_TX_BY_IF_EQUIVALENT,
   2216           /*
   2217            * Casting added here just to keep the compiler silent.
   2218            */
   2219         (long)"    Transmit message using specified interface (using \"netSendPktByIf\"\r\n"
   2220               "    function).",
   2221           /*
   2222            * Pointer to a function to call after symbolic value
   2223            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2224            * Casting to 'long' added here just to keep the
   2225            * compiler silent.
   2226            */
   2227         (long)NULL
   2228       }
   2229     }
   2230   },
   2231   {
   2232     VAL_SYMBOL,
   2233     "tx_by_if",
   2234     {
   2235       {
   2236         GT_CMD_TX_BY_LPORT_EQUIVALENT,
   2237           /*
   2238            * Casting added here just to keep the compiler silent.
   2239            */
   2240         (long)"    Transmit message using specified logical port (using \"netSendPktByLport\"\r\n"
   2241               "    function).",
   2242           /*
   2243            * Pointer to a function to call after symbolic value
   2244            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2245            * Casting to 'long' added here just to keep the
   2246            * compiler silent.
   2247            */
   2248         (long)NULL
   2249       }
   2250     }
   2251   },
   2252 /*
   2253  * Last element. Do not remove.
   2254  */
   2255   {
   2256     VAL_END_OF_LIST
   2257   }
   2258 }
   2259 #endif
   2260 ;
   2261 /********************************************************
   2262 *NAME
   2263 *  Pss_logical_if_index_vals
   2264 *TYPE: BUFFER
   2265 *DATE: 01/APRIL/2003
   2266 *FUNCTION:
   2267 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2268 *  RELATED TO THE PARAMETER "LOGICAL_IF_INDEX" IN THE
   2269 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   2270 *ORGANIZATION:
   2271 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2272 *    int val_type -
   2273 *      Type of value. Can be:
   2274 *        VAL_END_OF_LIST 0
   2275 *        VAL_NUMERIC     1
   2276 *        VAL_SYMBOL      2
   2277 *        VAL_TEXT        3
   2278 *        VAL_IP          4
   2279 *      The first one is only to indicate the end of
   2280 *      this array. The others indicate what kind of
   2281 *      value this is.
   2282 *    char *symb_val -
   2283 *      ASCII presentation of the symbolic value.
   2284 *      Note: Must be small letters only!
   2285 *      For numeric variables:
   2286 *      This is a dummy variable. Enables searching
   2287 *      array of 'PARAM_VAL_RULES' for name (string)
   2288 *      matching without special case for numeric
   2289 *      variable.
   2290 *    VAL_DESCRIPTOR val_descriptor -
   2291 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2292 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2293 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2294 *      See details in file of definition. Note: Symbols
   2295 *      must be small letters only!
   2296 *USAGE:
   2297 *  SEE ORGANIZATION.
   2298 *REMARKS:
   2299 *  NONE.
   2300 *SEE ALSO:
   2301  */
   2302 EXTERN CONST
   2303    PARAM_VAL_RULES
   2304      Pss_logical_if_index_vals[]
   2305 #ifdef INIT
   2306    =
   2307 {
   2308   {
   2309     VAL_NUMERIC,
   2310     SYMB_NAME_NUMERIC,
   2311     {
   2312       {
   2313         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2314         100,
   2315         1,
   2316           /*
   2317            * Number of times this value can be repeated (i.e.,
   2318            * value is an array). Must be at least 1!
   2319            */
   2320         1,
   2321         (VAL_PROC_PTR)0
   2322       }
   2323     }
   2324   },
   2325 /*
   2326  * Last element. Do not remove.
   2327  */
   2328   {
   2329     VAL_END_OF_LIST
   2330   }
   2331 }
   2332 #endif
   2333 ;
   2334 /********************************************************
   2335 *NAME
   2336 *  Pss_logical_if_index_default
   2337 *TYPE: BUFFER
   2338 *DATE: 01/APRIL/2003
   2339 *FUNCTION:
   2340 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   2341 *  SUBJECT 'PSS' PARAMETER "LOGICAL_IF_INDEX" IN THE
   2342 *  CONTEXT OF (AND 'USER_TX_TABLE').
   2343 *ORGANIZATION:
   2344 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2345 *    int val_type -
   2346 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   2347 *      VAL_IP OR VAL_SYMBOL)
   2348 *    int numeric_equivalent -
   2349 *      Numeric value related to string_value. Only relevant
   2350 *      for val_type = VAL_SYMBOL
   2351 *    union value -
   2352 *      Union of one of
   2353 *        int            int_value
   2354 *        char           *string_value
   2355 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   2356 *        unsigned long  ip_value ;
   2357 *      Value of default variable.
   2358 *USAGE:
   2359 *  SEE ORGANIZATION.
   2360 *REMARKS:
   2361 *  NONE.
   2362 *SEE ALSO:
   2363  */
   2364 EXTERN CONST
   2365    PARAM_VAL
   2366      Pss_logical_if_index_default
   2367 #ifdef INIT
   2368    =
   2369 {
   2370   VAL_NUMERIC,
   2371   0,
   2372   {
   2373     /*
   2374      * Casting may be required here only to keep the compiler silent.
   2375      */
   2376     (unsigned long)1
   2377   }
   2378 }
   2379 #endif
   2380 ;
   2381 /********************************************************
   2382 *NAME
   2383 *  Pss_index_vals
   2384 *TYPE: BUFFER
   2385 *DATE: 27/MARCH/2003
   2386 *FUNCTION:
   2387 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2388 *  RELATED TO THE PARAMETER "INDEX" IN THE
   2389 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   2390 *ORGANIZATION:
   2391 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2392 *    int val_type -
   2393 *      Type of value. Can be:
   2394 *        VAL_END_OF_LIST 0
   2395 *        VAL_NUMERIC     1
   2396 *        VAL_SYMBOL      2
   2397 *        VAL_TEXT        3
   2398 *        VAL_IP          4
   2399 *      The first one is only to indicate the end of
   2400 *      this array. The others indicate what kind of
   2401 *      value this is.
   2402 *    char *symb_val -
   2403 *      ASCII presentation of the symbolic value.
   2404 *      Note: Must be small letters only!
   2405 *      For numeric variables:
   2406 *      This is a dummy variable. Enables searching
   2407 *      array of 'PARAM_VAL_RULES' for name (string)
   2408 *      matching without special case for numeric
   2409 *      variable.
   2410 *    VAL_DESCRIPTOR val_descriptor -
   2411 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2412 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2413 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2414 *      See details in file of definition. Note: Symbols
   2415 *      must be small letters only!
   2416 *USAGE:
   2417 *  SEE ORGANIZATION.
   2418 *REMARKS:
   2419 *  NONE.
   2420 *SEE ALSO:
   2421  */
   2422 EXTERN CONST
   2423    PARAM_VAL_RULES
   2424      Pss_index_vals[]
   2425 #ifdef INIT
   2426    =
   2427 {
   2428   {
   2429     VAL_NUMERIC,
   2430     SYMB_NAME_NUMERIC,
   2431     {
   2432       {
   2433         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2434         100,
   2435         0,
   2436           /*
   2437            * Number of times this value can be repeated (i.e.,
   2438            * value is an array). Must be at least 1!
   2439            */
   2440         1,
   2441         (VAL_PROC_PTR)0
   2442       }
   2443     }
   2444   },
   2445 /*
   2446  * Last element. Do not remove.
   2447  */
   2448   {
   2449     VAL_END_OF_LIST
   2450   }
   2451 }
   2452 #endif
   2453 ;
   2454 /********************************************************
   2455 *NAME
   2456 *  Pss_index_default
   2457 *TYPE: BUFFER
   2458 *DATE: 27/MARCH/2003
   2459 *FUNCTION:
   2460 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   2461 *  PARAMETER "INDEX" IN THE CONTEXT OF SUBJECT 'PSS'
   2462 *  (AND 'USER_TX_TABLE').
   2463 *ORGANIZATION:
   2464 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2465 *    int val_type -
   2466 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   2467 *      VAL_IP OR VAL_SYMBOL)
   2468 *    int numeric_equivalent -
   2469 *      Numeric value related to string_value. Only relevant
   2470 *      for val_type = VAL_SYMBOL
   2471 *    union value -
   2472 *      Union of one of
   2473 *        int            int_value
   2474 *        char           *string_value
   2475 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   2476 *        unsigned long  ip_value ;
   2477 *      Value of default variable.
   2478 *USAGE:
   2479 *  SEE ORGANIZATION.
   2480 *REMARKS:
   2481 *  NONE.
   2482 *SEE ALSO:
   2483  */
   2484 EXTERN CONST
   2485    PARAM_VAL
   2486      Pss_index_default
   2487 #ifdef INIT
   2488    =
   2489 {
   2490   VAL_NUMERIC,
   2491   0,
   2492   {
   2493     /*
   2494      * Casting may be required here only to keep the compiler silent.
   2495      */
   2496     (unsigned long)0
   2497   }
   2498 }
   2499 #endif
   2500 ;
   2501 /********************************************************
   2502 *NAME
   2503 *  Gap_between_cycles_vals
   2504 *TYPE: BUFFER
   2505 *DATE: 21/APRIL/2003
   2506 *FUNCTION:
   2507 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2508 *  RELATED TO THE PARAMETER "GAP_BETWEEN_CYCLES" IN THE
   2509 *  CONTEXT OF SUBJECT 'PSS' (AND
   2510 *  'USER_TX_TABLE SET_TX_MODE').
   2511 *ORGANIZATION:
   2512 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2513 *    int val_type -
   2514 *      Type of value. Can be:
   2515 *        VAL_END_OF_LIST 0
   2516 *        VAL_NUMERIC     1
   2517 *        VAL_SYMBOL      2
   2518 *        VAL_TEXT        3
   2519 *        VAL_IP          4
   2520 *      The first one is only to indicate the end of
   2521 *      this array. The others indicate what kind of
   2522 *      value this is.
   2523 *    char *symb_val -
   2524 *      ASCII presentation of the symbolic value.
   2525 *      Note: Must be small letters only!
   2526 *      For numeric variables:
   2527 *      This is a dummy variable. Enables searching
   2528 *      array of 'PARAM_VAL_RULES' for name (string)
   2529 *      matching without special case for numeric
   2530 *      variable.
   2531 *    VAL_DESCRIPTOR val_descriptor -
   2532 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2533 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2534 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2535 *      See details in file of definition. Note: Symbols
   2536 *      must be small letters only!
   2537 *USAGE:
   2538 *  SEE ORGANIZATION.
   2539 *REMARKS:
   2540 *  NONE.
   2541 *SEE ALSO:
   2542  */
   2543 EXTERN CONST
   2544    PARAM_VAL_RULES
   2545      Gap_between_cycles_vals[]
   2546 #ifdef INIT
   2547    =
   2548 {
   2549   {
   2550     VAL_NUMERIC,
   2551     SYMB_NAME_NUMERIC,
   2552     {
   2553       {
   2554         HAS_NO_MIN_VALUE | HAS_MAX_VALUE,
   2555         10000,
   2556         0,
   2557           /*
   2558            * Number of times this value can be repeated (i.e.,
   2559            * value is an array). Must be at least 1!
   2560            */
   2561         1,
   2562         (VAL_PROC_PTR)0
   2563       }
   2564     }
   2565   },
   2566 /*
   2567  * Last element. Do not remove.
   2568  */
   2569   {
   2570     VAL_END_OF_LIST
   2571   }
   2572 }
   2573 #endif
   2574 ;
   2575 /********************************************************
   2576 *NAME
   2577 *  Gap_between_cycles_default
   2578 *TYPE: BUFFER
   2579 *DATE: 21/APRIL/2003
   2580 *FUNCTION:
   2581 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   2582 *  PARAMETER "GAP_BETWEEN_CYCLES" IN THE CONTEXT OF
   2583 *  SUBJECT 'PSS' (AND 'USER_TX_TABLE SET_TX_MODE').
   2584 *ORGANIZATION:
   2585 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2586 *    int val_type -
   2587 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   2588 *      VAL_IP OR VAL_SYMBOL)
   2589 *    int numeric_equivalent -
   2590 *      Numeric value related to string_value. Only relevant
   2591 *      for val_type = VAL_SYMBOL
   2592 *    union value -
   2593 *      Union of one of
   2594 *        int            int_value
   2595 *        char           *string_value
   2596 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   2597 *        unsigned long  ip_value ;
   2598 *      Value of default variable.
   2599 *USAGE:
   2600 *  SEE ORGANIZATION.
   2601 *REMARKS:
   2602 *  NONE.
   2603 *SEE ALSO:
   2604  */
   2605 EXTERN CONST
   2606    PARAM_VAL
   2607      Gap_between_cycles_default
   2608 #ifdef INIT
   2609    =
   2610 {
   2611   VAL_NUMERIC,
   2612   0,
   2613   {
   2614     /*
   2615      * Casting may be required here only to keep the compiler silent.
   2616      */
   2617     (unsigned long)1
   2618   }
   2619 }
   2620 #endif
   2621 ;
   2622 /********************************************************
   2623 *NAME
   2624 *  Tot_num_packets_vals
   2625 *TYPE: BUFFER
   2626 *DATE: 21/APRIL/2003
   2627 *FUNCTION:
   2628 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2629 *  RELATED TO THE PARAMETER "TOT_NUM_PACKETS" IN THE
   2630 *  CONTEXT OF SUBJECT 'PSS' (AND
   2631 *  'USER_TX_TABLE SET_TX_MODE').
   2632 *ORGANIZATION:
   2633 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2634 *    int val_type -
   2635 *      Type of value. Can be:
   2636 *        VAL_END_OF_LIST 0
   2637 *        VAL_NUMERIC     1
   2638 *        VAL_SYMBOL      2
   2639 *        VAL_TEXT        3
   2640 *        VAL_IP          4
   2641 *      The first one is only to indicate the end of
   2642 *      this array. The others indicate what kind of
   2643 *      value this is.
   2644 *    char *symb_val -
   2645 *      ASCII presentation of the symbolic value.
   2646 *      Note: Must be small letters only!
   2647 *      For numeric variables:
   2648 *      This is a dummy variable. Enables searching
   2649 *      array of 'PARAM_VAL_RULES' for name (string)
   2650 *      matching without special case for numeric
   2651 *      variable.
   2652 *    VAL_DESCRIPTOR val_descriptor -
   2653 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2654 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2655 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2656 *      See details in file of definition. Note: Symbols
   2657 *      must be small letters only!
   2658 *USAGE:
   2659 *  SEE ORGANIZATION.
   2660 *REMARKS:
   2661 *  NONE.
   2662 *SEE ALSO:
   2663  */
   2664 EXTERN CONST
   2665    PARAM_VAL_RULES
   2666      Tot_num_packets_vals[]
   2667 #ifdef INIT
   2668    =
   2669 {
   2670   {
   2671     VAL_NUMERIC,
   2672     SYMB_NAME_NUMERIC,
   2673     {
   2674       {
   2675         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2676         100000,
   2677         1,
   2678           /*
   2679            * Number of times this value can be repeated (i.e.,
   2680            * value is an array). Must be at least 1!
   2681            */
   2682         1,
   2683         (VAL_PROC_PTR)0
   2684       }
   2685     }
   2686   },
   2687   {
   2688     VAL_SYMBOL,
   2689     "as_specified_per_entry",
   2690     {
   2691       {
   2692         GT_AS_SPECIFIED_PER_ENTRY_EQUIVALENT,
   2693           /*
   2694            * Casting added here just to keep the compiler silent.
   2695            */
   2696         (long)"    Transmit packets without limitation on the number of cycles\r\n",
   2697           /*
   2698            * Pointer to a function to call after symbolic value
   2699            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2700            * Casting to 'long' added here just to keep the
   2701            * compiler silent.
   2702            */
   2703         (long)NULL
   2704       }
   2705     }
   2706   },
   2707 /*
   2708  * Last element. Do not remove.
   2709  */
   2710   {
   2711     VAL_END_OF_LIST
   2712   }
   2713 }
   2714 #endif
   2715 ;
   2716 /********************************************************
   2717 *NAME
   2718 *  Tot_num_packets_default
   2719 *TYPE: BUFFER
   2720 *DATE: 21/APRIL/2003
   2721 *FUNCTION:
   2722 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   2723 *  PARAMETER "NUM_LOOP_CYCLES" IN THE CONTEXT OF
   2724 *  SUBJECT 'PSS' (AND 'USER_TX_TABLE SET_TX_MODE').
   2725 *ORGANIZATION:
   2726 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2727 *    int val_type -
   2728 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   2729 *      VAL_IP OR VAL_SYMBOL)
   2730 *    int numeric_equivalent -
   2731 *      Numeric value related to string_value. Only relevant
   2732 *      for val_type = VAL_SYMBOL
   2733 *    union value -
   2734 *      Union of one of
   2735 *        int            int_value
   2736 *        char           *string_value
   2737 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   2738 *        unsigned long  ip_value ;
   2739 *      Value of default variable.
   2740 *USAGE:
   2741 *  SEE ORGANIZATION.
   2742 *REMARKS:
   2743 *  NONE.
   2744 *SEE ALSO:
   2745  */
   2746 EXTERN CONST
   2747    PARAM_VAL
   2748      Tot_num_packets_default
   2749 #ifdef INIT
   2750    =
   2751 {
   2752   VAL_SYMBOL,
   2753   GT_AS_SPECIFIED_PER_ENTRY_EQUIVALENT,
   2754   {
   2755     /*
   2756      * Casting may be required here only to keep the compiler silent.
   2757      */
   2758     (unsigned long)"as_specified_per_entry"
   2759   }
   2760 }
   2761 #endif
   2762 ;
   2763 /********************************************************
   2764 *NAME
   2765 *  Buffer_mode_vals
   2766 *TYPE: BUFFER
   2767 *DATE: 01/MAY/2003
   2768 *FUNCTION:
   2769 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2770 *  RELATED TO THE PARAMETER "BUFFER_MODE" IN THE
   2771 *  CONTEXT OF SUBJECT 'PSS' (AND
   2772 *  'USER_RX_TABLE SET_RX_MODE').
   2773 *ORGANIZATION:
   2774 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2775 *    int val_type -
   2776 *      Type of value. Can be:
   2777 *        VAL_END_OF_LIST 0
   2778 *        VAL_NUMERIC     1
   2779 *        VAL_SYMBOL      2
   2780 *        VAL_TEXT        3
   2781 *        VAL_IP          4
   2782 *      The first one is only to indicate the end of
   2783 *      this array. The others indicate what kind of
   2784 *      value this is.
   2785 *    char *symb_val -
   2786 *      ASCII presentation of the symbolic value.
   2787 *      Note: Must be small letters only!
   2788 *      For numeric variables:
   2789 *      This is a dummy variable. Enables searching
   2790 *      array of 'PARAM_VAL_RULES' for name (string)
   2791 *      matching without special case for numeric
   2792 *      variable.
   2793 *    VAL_DESCRIPTOR val_descriptor -
   2794 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2795 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2796 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2797 *      See details in file of definition. Note: Symbols
   2798 *      must be small letters only!
   2799 *USAGE:
   2800 *  SEE ORGANIZATION.
   2801 *REMARKS:
   2802 *  NONE.
   2803 *SEE ALSO:
   2804  */
   2805 EXTERN CONST
   2806    PARAM_VAL_RULES
   2807      Buffer_mode_vals[]
   2808 #ifdef INIT
   2809    =
   2810 {
   2811   {
   2812     VAL_SYMBOL,
   2813     "cyclic",
   2814     {
   2815       {
   2816         GT_CYCLIC_BUFFER_EQUIVALENT,
   2817           /*
   2818            * Casting added here just to keep the compiler silent.
   2819            */
   2820         (long)"    Load received messages in a cyclic manner into user table of received\r\n"
   2821               "    messages.",
   2822           /*
   2823            * Pointer to a function to call after symbolic value
   2824            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2825            * Casting to 'long' added here just to keep the
   2826            * compiler silent.
   2827            */
   2828         (long)NULL
   2829       }
   2830     }
   2831   },
   2832   {
   2833     VAL_SYMBOL,
   2834     "fill_once_and_stop",
   2835     {
   2836       {
   2837         GT_USE_ONCE_BUFFER_EQUIVALENT,
   2838           /*
   2839            * Casting added here just to keep the compiler silent.
   2840            */
   2841         (long)"    Load received messages until user table of received messages is full\r\n"
   2842               "    and, then, stop receiving.",
   2843           /*
   2844            * Pointer to a function to call after symbolic value
   2845            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   2846            * Casting to 'long' added here just to keep the
   2847            * compiler silent.
   2848            */
   2849         (long)NULL
   2850       }
   2851     }
   2852   },
   2853 /*
   2854  * Last element. Do not remove.
   2855  */
   2856   {
   2857     VAL_END_OF_LIST
   2858   }
   2859 }
   2860 #endif
   2861 ;
   2862 /********************************************************
   2863 *NAME
   2864 *  Num_entries_vals
   2865 *TYPE: BUFFER
   2866 *DATE: 02/MAY/2003
   2867 *FUNCTION:
   2868 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2869 *  RELATED TO THE PARAMETER "NUM_ENTRIES" IN THE
   2870 *  CONTEXT OF SUBJECT 'PSS' (AND
   2871 *  'USER_RX_TABLE SET_RX_MODE').
   2872 *ORGANIZATION:
   2873 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2874 *    int val_type -
   2875 *      Type of value. Can be:
   2876 *        VAL_END_OF_LIST 0
   2877 *        VAL_NUMERIC     1
   2878 *        VAL_SYMBOL      2
   2879 *        VAL_TEXT        3
   2880 *        VAL_IP          4
   2881 *      The first one is only to indicate the end of
   2882 *      this array. The others indicate what kind of
   2883 *      value this is.
   2884 *    char *symb_val -
   2885 *      ASCII presentation of the symbolic value.
   2886 *      Note: Must be small letters only!
   2887 *      For numeric variables:
   2888 *      This is a dummy variable. Enables searching
   2889 *      array of 'PARAM_VAL_RULES' for name (string)
   2890 *      matching without special case for numeric
   2891 *      variable.
   2892 *    VAL_DESCRIPTOR val_descriptor -
   2893 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2894 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2895 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2896 *      See details in file of definition. Note: Symbols
   2897 *      must be small letters only!
   2898 *USAGE:
   2899 *  SEE ORGANIZATION.
   2900 *REMARKS:
   2901 *  NONE.
   2902 *SEE ALSO:
   2903  */
   2904 EXTERN CONST
   2905    PARAM_VAL_RULES
   2906      Num_entries_vals[]
   2907 #ifdef INIT
   2908    =
   2909 {
   2910   {
   2911     VAL_NUMERIC,
   2912     SYMB_NAME_NUMERIC,
   2913     {
   2914       {
   2915         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2916         300,
   2917         5,
   2918           /*
   2919            * Number of times this value can be repeated (i.e.,
   2920            * value is an array). Must be at least 1!
   2921            */
   2922         1,
   2923         (VAL_PROC_PTR)0
   2924       }
   2925     }
   2926   },
   2927 /*
   2928  * Last element. Do not remove.
   2929  */
   2930   {
   2931     VAL_END_OF_LIST
   2932   }
   2933 }
   2934 #endif
   2935 ;
   2936 /********************************************************
   2937 *NAME
   2938 *  Buff_size_vals
   2939 *TYPE: BUFFER
   2940 *DATE: 02/MAY/2003
   2941 *FUNCTION:
   2942 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   2943 *  RELATED TO THE PARAMETER "BUFF_SIZE" IN THE
   2944 *  CONTEXT OF SUBJECT 'PSS' (AND
   2945 *  'USER_RX_TABLE SET_RX_MODE').
   2946 *ORGANIZATION:
   2947 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   2948 *    int val_type -
   2949 *      Type of value. Can be:
   2950 *        VAL_END_OF_LIST 0
   2951 *        VAL_NUMERIC     1
   2952 *        VAL_SYMBOL      2
   2953 *        VAL_TEXT        3
   2954 *        VAL_IP          4
   2955 *      The first one is only to indicate the end of
   2956 *      this array. The others indicate what kind of
   2957 *      value this is.
   2958 *    char *symb_val -
   2959 *      ASCII presentation of the symbolic value.
   2960 *      Note: Must be small letters only!
   2961 *      For numeric variables:
   2962 *      This is a dummy variable. Enables searching
   2963 *      array of 'PARAM_VAL_RULES' for name (string)
   2964 *      matching without special case for numeric
   2965 *      variable.
   2966 *    VAL_DESCRIPTOR val_descriptor -
   2967 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   2968 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   2969 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   2970 *      See details in file of definition. Note: Symbols
   2971 *      must be small letters only!
   2972 *USAGE:
   2973 *  SEE ORGANIZATION.
   2974 *REMARKS:
   2975 *  NONE.
   2976 *SEE ALSO:
   2977  */
   2978 EXTERN CONST
   2979    PARAM_VAL_RULES
   2980      Buff_size_vals[]
   2981 #ifdef INIT
   2982    =
   2983 {
   2984   {
   2985     VAL_NUMERIC,
   2986     SYMB_NAME_NUMERIC,
   2987     {
   2988       {
   2989         HAS_MIN_VALUE | HAS_MAX_VALUE,
   2990         10000,
   2991         200,
   2992           /*
   2993            * Number of times this value can be repeated (i.e.,
   2994            * value is an array). Must be at least 1!
   2995            */
   2996         1,
   2997         (VAL_PROC_PTR)0
   2998       }
   2999     }
   3000   },
   3001 /*
   3002  * Last element. Do not remove.
   3003  */
   3004   {
   3005     VAL_END_OF_LIST
   3006   }
   3007 }
   3008 #endif
   3009 ;
   3010 /********************************************************
   3011 *NAME
   3012 *  Num_loop_cycles_vals
   3013 *TYPE: BUFFER
   3014 *DATE: 21/APRIL/2003
   3015 *FUNCTION:
   3016 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3017 *  RELATED TO THE PARAMETER "NUM_LOOP_CYCLES" IN THE
   3018 *  CONTEXT OF SUBJECT 'PSS' (AND
   3019 *  'USER_TX_TABLE SET_TX_MODE').
   3020 *ORGANIZATION:
   3021 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3022 *    int val_type -
   3023 *      Type of value. Can be:
   3024 *        VAL_END_OF_LIST 0
   3025 *        VAL_NUMERIC     1
   3026 *        VAL_SYMBOL      2
   3027 *        VAL_TEXT        3
   3028 *        VAL_IP          4
   3029 *      The first one is only to indicate the end of
   3030 *      this array. The others indicate what kind of
   3031 *      value this is.
   3032 *    char *symb_val -
   3033 *      ASCII presentation of the symbolic value.
   3034 *      Note: Must be small letters only!
   3035 *      For numeric variables:
   3036 *      This is a dummy variable. Enables searching
   3037 *      array of 'PARAM_VAL_RULES' for name (string)
   3038 *      matching without special case for numeric
   3039 *      variable.
   3040 *    VAL_DESCRIPTOR val_descriptor -
   3041 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3042 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3043 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3044 *      See details in file of definition. Note: Symbols
   3045 *      must be small letters only!
   3046 *USAGE:
   3047 *  SEE ORGANIZATION.
   3048 *REMARKS:
   3049 *  NONE.
   3050 *SEE ALSO:
   3051  */
   3052 EXTERN CONST
   3053    PARAM_VAL_RULES
   3054      Num_loop_cycles_vals[]
   3055 #ifdef INIT
   3056    =
   3057 {
   3058   {
   3059     VAL_NUMERIC,
   3060     SYMB_NAME_NUMERIC,
   3061     {
   3062       {
   3063         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3064         100000,
   3065         1,
   3066           /*
   3067            * Number of times this value can be repeated (i.e.,
   3068            * value is an array). Must be at least 1!
   3069            */
   3070         1,
   3071         (VAL_PROC_PTR)0
   3072       }
   3073     }
   3074   },
   3075   {
   3076     VAL_SYMBOL,
   3077     "infinite",
   3078     {
   3079       {
   3080         GT_INFINITE_CYCLES_EQUIVALENT,
   3081           /*
   3082            * Casting added here just to keep the compiler silent.
   3083            */
   3084         (long)"    Transmit packets without limitation on the number of cycles\r\n",
   3085           /*
   3086            * Pointer to a function to call after symbolic value
   3087            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   3088            * Casting to 'long' added here just to keep the
   3089            * compiler silent.
   3090            */
   3091         (long)NULL
   3092       }
   3093     }
   3094   },
   3095 /*
   3096  * Last element. Do not remove.
   3097  */
   3098   {
   3099     VAL_END_OF_LIST
   3100   }
   3101 }
   3102 #endif
   3103 ;
   3104 /********************************************************
   3105 *NAME
   3106 *  Tx_action_vals
   3107 *TYPE: BUFFER
   3108 *DATE: 22/APRIL/2003
   3109 *FUNCTION:
   3110 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3111 *  RELATED TO THE PARAMETER "TX_ACTION" IN THE
   3112 *  CONTEXT OF SUBJECT 'PSS' (AND
   3113 *  'USER_TX_TABLE SET_TX_MODE').
   3114 *ORGANIZATION:
   3115 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3116 *    int val_type -
   3117 *      Type of value. Can be:
   3118 *        VAL_END_OF_LIST 0
   3119 *        VAL_NUMERIC     1
   3120 *        VAL_SYMBOL      2
   3121 *        VAL_TEXT        3
   3122 *        VAL_IP          4
   3123 *      The first one is only to indicate the end of
   3124 *      this array. The others indicate what kind of
   3125 *      value this is.
   3126 *    char *symb_val -
   3127 *      ASCII presentation of the symbolic value.
   3128 *      Note: Must be small letters only!
   3129 *      For numeric variables:
   3130 *      This is a dummy variable. Enables searching
   3131 *      array of 'PARAM_VAL_RULES' for name (string)
   3132 *      matching without special case for numeric
   3133 *      variable.
   3134 *    VAL_DESCRIPTOR val_descriptor -
   3135 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3136 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3137 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3138 *      See details in file of definition. Note: Symbols
   3139 *      must be small letters only!
   3140 *USAGE:
   3141 *  SEE ORGANIZATION.
   3142 *REMARKS:
   3143 *  NONE.
   3144 *SEE ALSO:
   3145  */
   3146 EXTERN CONST
   3147    PARAM_VAL_RULES
   3148      Tx_action_vals[]
   3149 #ifdef INIT
   3150    =
   3151 {
   3152   {
   3153     VAL_SYMBOL_LAST,
   3154     "start_tx",
   3155     {
   3156       {
   3157         GT_START_TX_EQUIVALENT,
   3158           /*
   3159            * Casting added here just to keep the compiler silent.
   3160            */
   3161         (long)"    Start transmission of packets set in table by the user\r\n",
   3162           /*
   3163            * Pointer to a function to call after symbolic value
   3164            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   3165            * Casting to 'long' added here just to keep the
   3166            * compiler silent.
   3167            */
   3168         (long)NULL
   3169       }
   3170     }
   3171   },
   3172   {
   3173     VAL_SYMBOL_LAST,
   3174     "stop_tx",
   3175     {
   3176       {
   3177         GT_STOP_TX_EQUIVALENT,
   3178           /*
   3179            * Casting added here just to keep the compiler silent.
   3180            */
   3181         (long)"    Stop transmission of packets set in table by the user (tx assumed to \r\n"
   3182               "    have been started).\r\n",
   3183           /*
   3184            * Pointer to a function to call after symbolic value
   3185            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   3186            * Casting to 'long' added here just to keep the
   3187            * compiler silent.
   3188            */
   3189         (long)NULL
   3190       }
   3191     }
   3192   },
   3193 /*
   3194  * Last element. Do not remove.
   3195  */
   3196   {
   3197     VAL_END_OF_LIST
   3198   }
   3199 }
   3200 #endif
   3201 ;
   3202 /********************************************************
   3203 *NAME
   3204 *  Rx_action_vals
   3205 *TYPE: BUFFER
   3206 *DATE: 01/MAY/2003
   3207 *FUNCTION:
   3208 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3209 *  RELATED TO THE PARAMETER "RX_ACTION" IN THE
   3210 *  CONTEXT OF SUBJECT 'PSS' (AND
   3211 *  'USER_RX_TABLE SET_RX_MODE').
   3212 *ORGANIZATION:
   3213 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3214 *    int val_type -
   3215 *      Type of value. Can be:
   3216 *        VAL_END_OF_LIST 0
   3217 *        VAL_NUMERIC     1
   3218 *        VAL_SYMBOL      2
   3219 *        VAL_TEXT        3
   3220 *        VAL_IP          4
   3221 *      The first one is only to indicate the end of
   3222 *      this array. The others indicate what kind of
   3223 *      value this is.
   3224 *    char *symb_val -
   3225 *      ASCII presentation of the symbolic value.
   3226 *      Note: Must be small letters only!
   3227 *      For numeric variables:
   3228 *      This is a dummy variable. Enables searching
   3229 *      array of 'PARAM_VAL_RULES' for name (string)
   3230 *      matching without special case for numeric
   3231 *      variable.
   3232 *    VAL_DESCRIPTOR val_descriptor -
   3233 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3234 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3235 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3236 *      See details in file of definition. Note: Symbols
   3237 *      must be small letters only!
   3238 *USAGE:
   3239 *  SEE ORGANIZATION.
   3240 *REMARKS:
   3241 *  NONE.
   3242 *SEE ALSO:
   3243  */
   3244 EXTERN CONST
   3245    PARAM_VAL_RULES
   3246      Rx_action_vals[]
   3247 #ifdef INIT
   3248    =
   3249 {
   3250   {
   3251     VAL_SYMBOL_LAST,
   3252     "start_rx_capture",
   3253     {
   3254       {
   3255         GT_START_RX_EQUIVALENT,
   3256           /*
   3257            * Casting added here just to keep the compiler silent.
   3258            */
   3259         (long)"    Start allowing captured messages into user table of received messages\r\n",
   3260           /*
   3261            * Pointer to a function to call after symbolic value
   3262            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   3263            * Casting to 'long' added here just to keep the
   3264            * compiler silent.
   3265            */
   3266         (long)NULL
   3267       }
   3268     }
   3269   },
   3270   {
   3271     VAL_SYMBOL_LAST,
   3272     "stop_rx_capture",
   3273     {
   3274       {
   3275         GT_STOP_RX_EQUIVALENT,
   3276           /*
   3277            * Casting added here just to keep the compiler silent.
   3278            */
   3279         (long)"    Start allowing captured messages into user table of received messages\r\n"
   3280               "    (Rx assumed to have been started).\r\n",
   3281           /*
   3282            * Pointer to a function to call after symbolic value
   3283            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   3284            * Casting to 'long' added here just to keep the
   3285            * compiler silent.
   3286            */
   3287         (long)NULL
   3288       }
   3289     }
   3290   },
   3291 /*
   3292  * Last element. Do not remove.
   3293  */
   3294   {
   3295     VAL_END_OF_LIST
   3296   }
   3297 }
   3298 #endif
   3299 ;
   3300 /********************************************************
   3301 *NAME
   3302 *  Num_loop_cycles_default
   3303 *TYPE: BUFFER
   3304 *DATE: 21/APRIL/2003
   3305 *FUNCTION:
   3306 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   3307 *  PARAMETER "NUM_LOOP_CYCLES" IN THE CONTEXT OF
   3308 *  SUBJECT 'PSS' (AND 'USER_TX_TABLE SET_TX_MODE').
   3309 *ORGANIZATION:
   3310 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3311 *    int val_type -
   3312 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   3313 *      VAL_IP OR VAL_SYMBOL)
   3314 *    int numeric_equivalent -
   3315 *      Numeric value related to string_value. Only relevant
   3316 *      for val_type = VAL_SYMBOL
   3317 *    union value -
   3318 *      Union of one of
   3319 *        int            int_value
   3320 *        char           *string_value
   3321 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   3322 *        unsigned long  ip_value ;
   3323 *      Value of default variable.
   3324 *USAGE:
   3325 *  SEE ORGANIZATION.
   3326 *REMARKS:
   3327 *  NONE.
   3328 *SEE ALSO:
   3329  */
   3330 EXTERN CONST
   3331    PARAM_VAL
   3332      Num_loop_cycles_default
   3333 #ifdef INIT
   3334    =
   3335 {
   3336   VAL_SYMBOL,
   3337   GT_INFINITE_CYCLES_EQUIVALENT,
   3338   {
   3339     /*
   3340      * Casting may be required here only to keep the compiler silent.
   3341      */
   3342     (unsigned long)"infinite"
   3343   }
   3344 }
   3345 #endif
   3346 ;
   3347 /********************************************************
   3348 *NAME
   3349 *  Pss_user_priority_vals
   3350 *TYPE: BUFFER
   3351 *DATE: 30/MARCH/2003
   3352 *FUNCTION:
   3353 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3354 *  RELATED TO THE PARAMETER "USER_PRIORITY" IN THE
   3355 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   3356 *ORGANIZATION:
   3357 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3358 *    int val_type -
   3359 *      Type of value. Can be:
   3360 *        VAL_END_OF_LIST 0
   3361 *        VAL_NUMERIC     1
   3362 *        VAL_SYMBOL      2
   3363 *        VAL_TEXT        3
   3364 *        VAL_IP          4
   3365 *      The first one is only to indicate the end of
   3366 *      this array. The others indicate what kind of
   3367 *      value this is.
   3368 *    char *symb_val -
   3369 *      ASCII presentation of the symbolic value.
   3370 *      Note: Must be small letters only!
   3371 *      For numeric variables:
   3372 *      This is a dummy variable. Enables searching
   3373 *      array of 'PARAM_VAL_RULES' for name (string)
   3374 *      matching without special case for numeric
   3375 *      variable.
   3376 *    VAL_DESCRIPTOR val_descriptor -
   3377 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3378 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3379 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3380 *      See details in file of definition. Note: Symbols
   3381 *      must be small letters only!
   3382 *USAGE:
   3383 *  SEE ORGANIZATION.
   3384 *REMARKS:
   3385 *  NONE.
   3386 *SEE ALSO:
   3387  */
   3388 EXTERN CONST
   3389    PARAM_VAL_RULES
   3390      Pss_user_priority_vals[]
   3391 #ifdef INIT
   3392    =
   3393 {
   3394   {
   3395     VAL_NUMERIC,
   3396     SYMB_NAME_NUMERIC,
   3397     {
   3398       {
   3399         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3400         7,
   3401         0,
   3402           /*
   3403            * Number of times this value can be repeated (i.e.,
   3404            * value is an array). Must be at least 1!
   3405            */
   3406         1,
   3407         (VAL_PROC_PTR)0
   3408       }
   3409     }
   3410   },
   3411 /*
   3412  * Last element. Do not remove.
   3413  */
   3414   {
   3415     VAL_END_OF_LIST
   3416   }
   3417 }
   3418 #endif
   3419 ;
   3420 /********************************************************
   3421 *NAME
   3422 *  Pss_user_priority_default
   3423 *TYPE: BUFFER
   3424 *DATE: 30/MARCH/2003
   3425 *FUNCTION:
   3426 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   3427 *  PARAMETER "USER_PRIORITY" IN THE CONTEXT OF SUBJECT 'PSS'
   3428 *  (AND 'USER_TX_TABLE').
   3429 *ORGANIZATION:
   3430 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3431 *    int val_type -
   3432 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   3433 *      VAL_IP OR VAL_SYMBOL)
   3434 *    int numeric_equivalent -
   3435 *      Numeric value related to string_value. Only relevant
   3436 *      for val_type = VAL_SYMBOL
   3437 *    union value -
   3438 *      Union of one of
   3439 *        int            int_value
   3440 *        char           *string_value
   3441 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   3442 *        unsigned long  ip_value ;
   3443 *      Value of default variable.
   3444 *USAGE:
   3445 *  SEE ORGANIZATION.
   3446 *REMARKS:
   3447 *  NONE.
   3448 *SEE ALSO:
   3449  */
   3450 EXTERN CONST
   3451    PARAM_VAL
   3452      Pss_user_priority_default
   3453 #ifdef INIT
   3454    =
   3455 {
   3456   VAL_NUMERIC,
   3457   0,
   3458   {
   3459     /*
   3460      * Casting may be required here only to keep the compiler silent.
   3461      */
   3462     (unsigned long)3
   3463   }
   3464 }
   3465 #endif
   3466 ;
   3467 /********************************************************
   3468 *NAME
   3469 *  Pss_drop_precedence_vals
   3470 *TYPE: BUFFER
   3471 *DATE: 31/MARCH/2003
   3472 *FUNCTION:
   3473 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3474 *  RELATED TO THE PARAMETER "DROP_PRECEDENCE" IN THE
   3475 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   3476 *ORGANIZATION:
   3477 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3478 *    int val_type -
   3479 *      Type of value. Can be:
   3480 *        VAL_END_OF_LIST 0
   3481 *        VAL_NUMERIC     1
   3482 *        VAL_SYMBOL      2
   3483 *        VAL_TEXT        3
   3484 *        VAL_IP          4
   3485 *      The first one is only to indicate the end of
   3486 *      this array. The others indicate what kind of
   3487 *      value this is.
   3488 *    char *symb_val -
   3489 *      ASCII presentation of the symbolic value.
   3490 *      Note: Must be small letters only!
   3491 *      For numeric variables:
   3492 *      This is a dummy variable. Enables searching
   3493 *      array of 'PARAM_VAL_RULES' for name (string)
   3494 *      matching without special case for numeric
   3495 *      variable.
   3496 *    VAL_DESCRIPTOR val_descriptor -
   3497 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3498 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3499 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3500 *      See details in file of definition. Note: Symbols
   3501 *      must be small letters only!
   3502 *USAGE:
   3503 *  SEE ORGANIZATION.
   3504 *REMARKS:
   3505 *  NONE.
   3506 *SEE ALSO:
   3507  */
   3508 EXTERN CONST
   3509    PARAM_VAL_RULES
   3510      Pss_drop_precedence_vals[]
   3511 #ifdef INIT
   3512    =
   3513 {
   3514   {
   3515     VAL_NUMERIC,
   3516     SYMB_NAME_NUMERIC,
   3517     {
   3518       {
   3519         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3520         2,
   3521         0,
   3522           /*
   3523            * Number of times this value can be repeated (i.e.,
   3524            * value is an array). Must be at least 1!
   3525            */
   3526         1,
   3527         (VAL_PROC_PTR)0
   3528       }
   3529     }
   3530   },
   3531 /*
   3532  * Last element. Do not remove.
   3533  */
   3534   {
   3535     VAL_END_OF_LIST
   3536   }
   3537 }
   3538 #endif
   3539 ;
   3540 /********************************************************
   3541 *NAME
   3542 *  Pss_drop_precedence_default
   3543 *TYPE: BUFFER
   3544 *DATE: 31/MARCH/2003
   3545 *FUNCTION:
   3546 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   3547 *  PARAMETER "DROP_PRECEDENCE" IN THE CONTEXT OF SUBJECT 'PSS'
   3548 *  (AND 'USER_TX_TABLE').
   3549 *ORGANIZATION:
   3550 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3551 *    int val_type -
   3552 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   3553 *      VAL_IP OR VAL_SYMBOL)
   3554 *    int numeric_equivalent -
   3555 *      Numeric value related to string_value. Only relevant
   3556 *      for val_type = VAL_SYMBOL
   3557 *    union value -
   3558 *      Union of one of
   3559 *        int            int_value
   3560 *        char           *string_value
   3561 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   3562 *        unsigned long  ip_value ;
   3563 *      Value of default variable.
   3564 *USAGE:
   3565 *  SEE ORGANIZATION.
   3566 *REMARKS:
   3567 *  NONE.
   3568 *SEE ALSO:
   3569  */
   3570 EXTERN CONST
   3571    PARAM_VAL
   3572      Pss_drop_precedence_default
   3573 #ifdef INIT
   3574    =
   3575 {
   3576   VAL_NUMERIC,
   3577   0,
   3578   {
   3579     /*
   3580      * Casting may be required here only to keep the compiler silent.
   3581      */
   3582     (unsigned long)0
   3583   }
   3584 }
   3585 #endif
   3586 ;
   3587 /********************************************************
   3588 *NAME
   3589 *  Pss_pckts_num_vals
   3590 *TYPE: BUFFER
   3591 *DATE: 31/MARCH/2003
   3592 *FUNCTION:
   3593 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3594 *  RELATED TO THE PARAMETER "NUM_PACKETS_IN_GROUP" IN THE
   3595 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   3596 *ORGANIZATION:
   3597 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3598 *    int val_type -
   3599 *      Type of value. Can be:
   3600 *        VAL_END_OF_LIST 0
   3601 *        VAL_NUMERIC     1
   3602 *        VAL_SYMBOL      2
   3603 *        VAL_TEXT        3
   3604 *        VAL_IP          4
   3605 *      The first one is only to indicate the end of
   3606 *      this array. The others indicate what kind of
   3607 *      value this is.
   3608 *    char *symb_val -
   3609 *      ASCII presentation of the symbolic value.
   3610 *      Note: Must be small letters only!
   3611 *      For numeric variables:
   3612 *      This is a dummy variable. Enables searching
   3613 *      array of 'PARAM_VAL_RULES' for name (string)
   3614 *      matching without special case for numeric
   3615 *      variable.
   3616 *    VAL_DESCRIPTOR val_descriptor -
   3617 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3618 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3619 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3620 *      See details in file of definition. Note: Symbols
   3621 *      must be small letters only!
   3622 *USAGE:
   3623 *  SEE ORGANIZATION.
   3624 *REMARKS:
   3625 *  NONE.
   3626 *SEE ALSO:
   3627  */
   3628 EXTERN CONST
   3629    PARAM_VAL_RULES
   3630      Pss_pckts_num_vals[]
   3631 #ifdef INIT
   3632    =
   3633 {
   3634   {
   3635     VAL_NUMERIC,
   3636     SYMB_NAME_NUMERIC,
   3637     {
   3638       {
   3639         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3640         50,
   3641         0,
   3642           /*
   3643            * Number of times this value can be repeated (i.e.,
   3644            * value is an array). Must be at least 1!
   3645            */
   3646         1,
   3647         (VAL_PROC_PTR)0
   3648       }
   3649     }
   3650   },
   3651 /*
   3652  * Last element. Do not remove.
   3653  */
   3654   {
   3655     VAL_END_OF_LIST
   3656   }
   3657 }
   3658 #endif
   3659 ;
   3660 /********************************************************
   3661 *NAME
   3662 *  Pss_pckts_num_default
   3663 *TYPE: BUFFER
   3664 *DATE: 31/MARCH/2003
   3665 *FUNCTION:
   3666 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   3667 *  PARAMETER "NUM_PACKETS_IN_GROUP" IN THE CONTEXT OF SUBJECT 'PSS'
   3668 *  (AND 'USER_TX_TABLE').
   3669 *ORGANIZATION:
   3670 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3671 *    int val_type -
   3672 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   3673 *      VAL_IP OR VAL_SYMBOL)
   3674 *    int numeric_equivalent -
   3675 *      Numeric value related to string_value. Only relevant
   3676 *      for val_type = VAL_SYMBOL
   3677 *    union value -
   3678 *      Union of one of
   3679 *        int            int_value
   3680 *        char           *string_value
   3681 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   3682 *        unsigned long  ip_value ;
   3683 *      Value of default variable.
   3684 *USAGE:
   3685 *  SEE ORGANIZATION.
   3686 *REMARKS:
   3687 *  NONE.
   3688 *SEE ALSO:
   3689  */
   3690 EXTERN CONST
   3691    PARAM_VAL
   3692      Pss_pckts_num_default
   3693 #ifdef INIT
   3694    =
   3695 {
   3696   VAL_NUMERIC,
   3697   0,
   3698   {
   3699     /*
   3700      * Casting may be required here only to keep the compiler silent.
   3701      */
   3702     (unsigned long)1
   3703   }
   3704 }
   3705 #endif
   3706 ;
   3707 /********************************************************
   3708 *NAME
   3709 *  Pss_data_len_vals
   3710 *TYPE: BUFFER
   3711 *DATE: 01/APRIL/2003
   3712 *FUNCTION:
   3713 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3714 *  RELATED TO THE PARAMETER "DATA_LEN" IN THE
   3715 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   3716 *ORGANIZATION:
   3717 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3718 *    int val_type -
   3719 *      Type of value. Can be:
   3720 *        VAL_END_OF_LIST 0
   3721 *        VAL_NUMERIC     1
   3722 *        VAL_SYMBOL      2
   3723 *        VAL_TEXT        3
   3724 *        VAL_IP          4
   3725 *      The first one is only to indicate the end of
   3726 *      this array. The others indicate what kind of
   3727 *      value this is.
   3728 *    char *symb_val -
   3729 *      ASCII presentation of the symbolic value.
   3730 *      Note: Must be small letters only!
   3731 *      For numeric variables:
   3732 *      This is a dummy variable. Enables searching
   3733 *      array of 'PARAM_VAL_RULES' for name (string)
   3734 *      matching without special case for numeric
   3735 *      variable.
   3736 *    VAL_DESCRIPTOR val_descriptor -
   3737 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3738 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3739 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3740 *      See details in file of definition. Note: Symbols
   3741 *      must be small letters only!
   3742 *USAGE:
   3743 *  SEE ORGANIZATION.
   3744 *REMARKS:
   3745 *  NONE.
   3746 *SEE ALSO:
   3747  */
   3748 EXTERN CONST
   3749    PARAM_VAL_RULES
   3750      Pss_data_len_vals[]
   3751 #ifdef INIT
   3752    =
   3753 {
   3754   {
   3755     VAL_NUMERIC,
   3756     SYMB_NAME_NUMERIC,
   3757     {
   3758       {
   3759         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3760         1500,
   3761         0,
   3762           /*
   3763            * Number of times this value can be repeated (i.e.,
   3764            * value is an array). Must be at least 1!
   3765            */
   3766         1,
   3767         (VAL_PROC_PTR)0
   3768       }
   3769     }
   3770   },
   3771 /*
   3772  * Last element. Do not remove.
   3773  */
   3774   {
   3775     VAL_END_OF_LIST
   3776   }
   3777 }
   3778 #endif
   3779 ;
   3780 /********************************************************
   3781 *NAME
   3782 *  Pss_data_len_default
   3783 *TYPE: BUFFER
   3784 *DATE: 31/MARCH/2003
   3785 *FUNCTION:
   3786 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   3787 *  PARAMETER "DATA_LEN" IN THE CONTEXT OF SUBJECT 'PSS'
   3788 *  (AND 'USER_TX_TABLE').
   3789 *ORGANIZATION:
   3790 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3791 *    int val_type -
   3792 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   3793 *      VAL_IP OR VAL_SYMBOL)
   3794 *    int numeric_equivalent -
   3795 *      Numeric value related to string_value. Only relevant
   3796 *      for val_type = VAL_SYMBOL
   3797 *    union value -
   3798 *      Union of one of
   3799 *        int            int_value
   3800 *        char           *string_value
   3801 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   3802 *        unsigned long  ip_value ;
   3803 *      Value of default variable.
   3804 *USAGE:
   3805 *  SEE ORGANIZATION.
   3806 *REMARKS:
   3807 *  NONE.
   3808 *SEE ALSO:
   3809  */
   3810 EXTERN CONST
   3811    PARAM_VAL
   3812      Pss_data_len_default
   3813 #ifdef INIT
   3814    =
   3815 {
   3816   VAL_NUMERIC,
   3817   0,
   3818   {
   3819     /*
   3820      * Casting may be required here only to keep the compiler silent.
   3821      */
   3822     (unsigned long)4
   3823   }
   3824 }
   3825 #endif
   3826 ;
   3827 /********************************************************
   3828 *NAME
   3829 *  Pss_gap_vals
   3830 *TYPE: BUFFER
   3831 *DATE: 01/APRIL/2003
   3832 *FUNCTION:
   3833 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3834 *  RELATED TO THE PARAMETER "GAP" IN THE
   3835 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   3836 *ORGANIZATION:
   3837 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3838 *    int val_type -
   3839 *      Type of value. Can be:
   3840 *        VAL_END_OF_LIST 0
   3841 *        VAL_NUMERIC     1
   3842 *        VAL_SYMBOL      2
   3843 *        VAL_TEXT        3
   3844 *        VAL_IP          4
   3845 *      The first one is only to indicate the end of
   3846 *      this array. The others indicate what kind of
   3847 *      value this is.
   3848 *    char *symb_val -
   3849 *      ASCII presentation of the symbolic value.
   3850 *      Note: Must be small letters only!
   3851 *      For numeric variables:
   3852 *      This is a dummy variable. Enables searching
   3853 *      array of 'PARAM_VAL_RULES' for name (string)
   3854 *      matching without special case for numeric
   3855 *      variable.
   3856 *    VAL_DESCRIPTOR val_descriptor -
   3857 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3858 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3859 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3860 *      See details in file of definition. Note: Symbols
   3861 *      must be small letters only!
   3862 *USAGE:
   3863 *  SEE ORGANIZATION.
   3864 *REMARKS:
   3865 *  NONE.
   3866 *SEE ALSO:
   3867  */
   3868 EXTERN CONST
   3869    PARAM_VAL_RULES
   3870      Pss_gap_vals[]
   3871 #ifdef INIT
   3872    =
   3873 {
   3874   {
   3875     VAL_NUMERIC,
   3876     SYMB_NAME_NUMERIC,
   3877     {
   3878       {
   3879         HAS_MIN_VALUE | HAS_MAX_VALUE,
   3880         100,
   3881         0,
   3882           /*
   3883            * Number of times this value can be repeated (i.e.,
   3884            * value is an array). Must be at least 1!
   3885            */
   3886         1,
   3887         (VAL_PROC_PTR)0
   3888       }
   3889     }
   3890   },
   3891 /*
   3892  * Last element. Do not remove.
   3893  */
   3894   {
   3895     VAL_END_OF_LIST
   3896   }
   3897 }
   3898 #endif
   3899 ;
   3900 /********************************************************
   3901 *NAME
   3902 *  Pss_gap_default
   3903 *TYPE: BUFFER
   3904 *DATE: 01/APRIL/2003
   3905 *FUNCTION:
   3906 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   3907 *  PARAMETER "GAP" IN THE CONTEXT OF SUBJECT 'PSS'
   3908 *  (AND 'USER_TX_TABLE').
   3909 *ORGANIZATION:
   3910 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3911 *    int val_type -
   3912 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   3913 *      VAL_IP OR VAL_SYMBOL)
   3914 *    int numeric_equivalent -
   3915 *      Numeric value related to string_value. Only relevant
   3916 *      for val_type = VAL_SYMBOL
   3917 *    union value -
   3918 *      Union of one of
   3919 *        int            int_value
   3920 *        char           *string_value
   3921 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   3922 *        unsigned long  ip_value ;
   3923 *      Value of default variable.
   3924 *USAGE:
   3925 *  SEE ORGANIZATION.
   3926 *REMARKS:
   3927 *  NONE.
   3928 *SEE ALSO:
   3929  */
   3930 EXTERN CONST
   3931    PARAM_VAL
   3932      Pss_gap_default
   3933 #ifdef INIT
   3934    =
   3935 {
   3936   VAL_NUMERIC,
   3937   0,
   3938   {
   3939     /*
   3940      * Casting may be required here only to keep the compiler silent.
   3941      */
   3942     (unsigned long)0
   3943   }
   3944 }
   3945 #endif
   3946 ;
   3947 /********************************************************
   3948 *NAME
   3949 *  Pss_wait_between_groups_vals
   3950 *TYPE: BUFFER
   3951 *DATE: 01/APRIL/2003
   3952 *FUNCTION:
   3953 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   3954 *  RELATED TO THE PARAMETER "WAIT_BETWEEN_GROUPS" IN THE
   3955 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   3956 *ORGANIZATION:
   3957 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   3958 *    int val_type -
   3959 *      Type of value. Can be:
   3960 *        VAL_END_OF_LIST 0
   3961 *        VAL_NUMERIC     1
   3962 *        VAL_SYMBOL      2
   3963 *        VAL_TEXT        3
   3964 *        VAL_IP          4
   3965 *      The first one is only to indicate the end of
   3966 *      this array. The others indicate what kind of
   3967 *      value this is.
   3968 *    char *symb_val -
   3969 *      ASCII presentation of the symbolic value.
   3970 *      Note: Must be small letters only!
   3971 *      For numeric variables:
   3972 *      This is a dummy variable. Enables searching
   3973 *      array of 'PARAM_VAL_RULES' for name (string)
   3974 *      matching without special case for numeric
   3975 *      variable.
   3976 *    VAL_DESCRIPTOR val_descriptor -
   3977 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   3978 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   3979 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   3980 *      See details in file of definition. Note: Symbols
   3981 *      must be small letters only!
   3982 *USAGE:
   3983 *  SEE ORGANIZATION.
   3984 *REMARKS:
   3985 *  NONE.
   3986 *SEE ALSO:
   3987  */
   3988 EXTERN CONST
   3989    PARAM_VAL_RULES
   3990      Pss_wait_between_groups_vals[]
   3991 #ifdef INIT
   3992    =
   3993 {
   3994   {
   3995     VAL_NUMERIC,
   3996     SYMB_NAME_NUMERIC,
   3997     {
   3998       {
   3999         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4000         100,
   4001         0,
   4002           /*
   4003            * Number of times this value can be repeated (i.e.,
   4004            * value is an array). Must be at least 1!
   4005            */
   4006         1,
   4007         (VAL_PROC_PTR)0
   4008       }
   4009     }
   4010   },
   4011 /*
   4012  * Last element. Do not remove.
   4013  */
   4014   {
   4015     VAL_END_OF_LIST
   4016   }
   4017 }
   4018 #endif
   4019 ;
   4020 /********************************************************
   4021 *NAME
   4022 *  Pss_wait_between_groups_default
   4023 *TYPE: BUFFER
   4024 *DATE: 01/APRIL/2003
   4025 *FUNCTION:
   4026 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   4027 *  PARAMETER "WAIT_BETWEEN_GROUPS" IN THE CONTEXT OF
   4028 *  SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   4029 *ORGANIZATION:
   4030 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4031 *    int val_type -
   4032 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   4033 *      VAL_IP OR VAL_SYMBOL)
   4034 *    int numeric_equivalent -
   4035 *      Numeric value related to string_value. Only relevant
   4036 *      for val_type = VAL_SYMBOL
   4037 *    union value -
   4038 *      Union of one of
   4039 *        int            int_value
   4040 *        char           *string_value
   4041 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   4042 *        unsigned long  ip_value ;
   4043 *      Value of default variable.
   4044 *USAGE:
   4045 *  SEE ORGANIZATION.
   4046 *REMARKS:
   4047 *  NONE.
   4048 *SEE ALSO:
   4049  */
   4050 EXTERN CONST
   4051    PARAM_VAL
   4052      Pss_wait_between_groups_default
   4053 #ifdef INIT
   4054    =
   4055 {
   4056   VAL_NUMERIC,
   4057   0,
   4058   {
   4059     /*
   4060      * Casting may be required here only to keep the compiler silent.
   4061      */
   4062     (unsigned long)4
   4063   }
   4064 }
   4065 #endif
   4066 ;
   4067 /********************************************************
   4068 *NAME
   4069 *  Pss_traffic_class_vals
   4070 *TYPE: BUFFER
   4071 *DATE: 31/MARCH/2003
   4072 *FUNCTION:
   4073 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4074 *  RELATED TO THE PARAMETER "TRAFFIC_CLASS" IN THE
   4075 *  CONTEXT OF SUBJECT 'PSS' (AND 'USER_TX_TABLE').
   4076 *ORGANIZATION:
   4077 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4078 *    int val_type -
   4079 *      Type of value. Can be:
   4080 *        VAL_END_OF_LIST 0
   4081 *        VAL_NUMERIC     1
   4082 *        VAL_SYMBOL      2
   4083 *        VAL_TEXT        3
   4084 *        VAL_IP          4
   4085 *      The first one is only to indicate the end of
   4086 *      this array. The others indicate what kind of
   4087 *      value this is.
   4088 *    char *symb_val -
   4089 *      ASCII presentation of the symbolic value.
   4090 *      Note: Must be small letters only!
   4091 *      For numeric variables:
   4092 *      This is a dummy variable. Enables searching
   4093 *      array of 'PARAM_VAL_RULES' for name (string)
   4094 *      matching without special case for numeric
   4095 *      variable.
   4096 *    VAL_DESCRIPTOR val_descriptor -
   4097 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4098 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4099 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4100 *      See details in file of definition. Note: Symbols
   4101 *      must be small letters only!
   4102 *USAGE:
   4103 *  SEE ORGANIZATION.
   4104 *REMARKS:
   4105 *  NONE.
   4106 *SEE ALSO:
   4107  */
   4108 EXTERN CONST
   4109    PARAM_VAL_RULES
   4110      Pss_traffic_class_vals[]
   4111 #ifdef INIT
   4112    =
   4113 {
   4114   {
   4115     VAL_NUMERIC,
   4116     SYMB_NAME_NUMERIC,
   4117     {
   4118       {
   4119         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4120         7,
   4121         0,
   4122           /*
   4123            * Number of times this value can be repeated (i.e.,
   4124            * value is an array). Must be at least 1!
   4125            */
   4126         1,
   4127         (VAL_PROC_PTR)0
   4128       }
   4129     }
   4130   },
   4131 /*
   4132  * Last element. Do not remove.
   4133  */
   4134   {
   4135     VAL_END_OF_LIST
   4136   }
   4137 }
   4138 #endif
   4139 ;
   4140 /********************************************************
   4141 *NAME
   4142 *  Pss_destination_pp_id_vals
   4143 *TYPE: BUFFER
   4144 *DATE: 25/MAR/2003
   4145 *FUNCTION:
   4146 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4147 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4148 *  THE PARAMETER "PSS" WITHIN 'test send_buff'.
   4149 *ORGANIZATION:
   4150 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4151 *    int val_type -
   4152 *      Type of value. Can be:
   4153 *        VAL_END_OF_LIST 0
   4154 *        VAL_NUMERIC     1
   4155 *        VAL_SYMBOL      2
   4156 *        VAL_TEXT        3
   4157 *        VAL_IP          4
   4158 *      The first one is only to indicate the end of
   4159 *      this array. The others indicate what kind of
   4160 *      value this is.
   4161 *    char *symb_val -
   4162 *      ASCII presentation of the symbolic value.
   4163 *      Note: Must be small letters only!
   4164 *      For numeric variables:
   4165 *      This is a dummy variable. Enables searching
   4166 *      array of 'PARAM_VAL_RULES' for name (string)
   4167 *      matching without special case for numeric
   4168 *      variable.
   4169 *    VAL_DESCRIPTOR val_descriptor -
   4170 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4171 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4172 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4173 *      See details in file of definition. Note: Symbols
   4174 *      must be small letters only!
   4175 *USAGE:
   4176 *  SEE ORGANIZATION.
   4177 *REMARKS:
   4178 *  NONE.
   4179 *SEE ALSO:
   4180  */
   4181 EXTERN CONST
   4182    PARAM_VAL_RULES
   4183      Pss_destination_pp_id_vals[]
   4184 #ifdef INIT
   4185    =
   4186 {
   4187   {
   4188     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4189     {
   4190       {
   4191         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4192         127,0,
   4193           /*
   4194            * Number of times this value can be repeated (i.e.,
   4195            * value is an array). Must be at least 1!
   4196            */
   4197         1,
   4198         (VAL_PROC_PTR)NULL
   4199       }
   4200     }
   4201   },
   4202 /*
   4203  * Last element. Do not remove.
   4204  */
   4205   {
   4206     VAL_END_OF_LIST
   4207   }
   4208 }
   4209 #endif
   4210 ;
   4211 /********************************************************
   4212 *NAME
   4213 *  Pss_destination_fe_id_vals
   4214 *TYPE: BUFFER
   4215 *DATE: 18/JUN/2003
   4216 *FUNCTION:
   4217 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4218 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4219 *  THE PARAMETER "PSS" WITHIN 'test send_buff'.
   4220 *ORGANIZATION:
   4221 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4222 *    int val_type -
   4223 *      Type of value. Can be:
   4224 *        VAL_END_OF_LIST 0
   4225 *        VAL_NUMERIC     1
   4226 *        VAL_SYMBOL      2
   4227 *        VAL_TEXT        3
   4228 *        VAL_IP          4
   4229 *      The first one is only to indicate the end of
   4230 *      this array. The others indicate what kind of
   4231 *      value this is.
   4232 *    char *symb_val -
   4233 *      ASCII presentation of the symbolic value.
   4234 *      Note: Must be small letters only!
   4235 *      For numeric variables:
   4236 *      This is a dummy variable. Enables searching
   4237 *      array of 'PARAM_VAL_RULES' for name (string)
   4238 *      matching without special case for numeric
   4239 *      variable.
   4240 *    VAL_DESCRIPTOR val_descriptor -
   4241 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4242 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4243 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4244 *      See details in file of definition. Note: Symbols
   4245 *      must be small letters only!
   4246 *USAGE:
   4247 *  SEE ORGANIZATION.
   4248 *REMARKS:
   4249 *  NONE.
   4250 *SEE ALSO:
   4251  */
   4252 EXTERN CONST
   4253    PARAM_VAL_RULES
   4254      Pss_destination_fe_id_vals[]
   4255 #ifdef INIT
   4256    =
   4257 {
   4258   {
   4259     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4260     {
   4261       {
   4262         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4263         2047,0,
   4264           /*
   4265            * Number of times this value can be repeated (i.e.,
   4266            * value is an array). Must be at least 1!
   4267            */
   4268         1,
   4269         (VAL_PROC_PTR)NULL
   4270       }
   4271     }
   4272   },
   4273 /*
   4274  * Last element. Do not remove.
   4275  */
   4276   {
   4277     VAL_END_OF_LIST
   4278   }
   4279 }
   4280 #endif
   4281 ;
   4282 /********************************************************
   4283 *NAME
   4284 *  Pss_data_vals
   4285 *TYPE: BUFFER
   4286 *DATE: 25/MAR/2003
   4287 *FUNCTION:
   4288 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4289 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4290 *  THE PARAMETER "PSS" WITHIN 'test send_buff'.
   4291 *ORGANIZATION:
   4292 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4293 *    int val_type -
   4294 *      Type of value. Can be:
   4295 *        VAL_END_OF_LIST 0
   4296 *        VAL_NUMERIC     1
   4297 *        VAL_SYMBOL      2
   4298 *        VAL_TEXT        3
   4299 *        VAL_IP          4
   4300 *      The first one is only to indicate the end of
   4301 *      this array. The others indicate what kind of
   4302 *      value this is.
   4303 *    char *symb_val -
   4304 *      ASCII presentation of the symbolic value.
   4305 *      Note: Must be small letters only!
   4306 *      For numeric variables:
   4307 *      This is a dummy variable. Enables searching
   4308 *      array of 'PARAM_VAL_RULES' for name (string)
   4309 *      matching without special case for numeric
   4310 *      variable.
   4311 *    VAL_DESCRIPTOR val_descriptor -
   4312 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4313 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4314 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4315 *      See details in file of definition. Note: Symbols
   4316 *      must be small letters only!
   4317 *USAGE:
   4318 *  SEE ORGANIZATION.
   4319 *REMARKS:
   4320 *  NONE.
   4321 *SEE ALSO:
   4322  */
   4323 EXTERN CONST
   4324    PARAM_VAL_RULES
   4325      Pss_data_vals[]
   4326 #ifdef INIT
   4327    =
   4328 {
   4329   {
   4330     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4331     {
   4332       {
   4333         HAS_NO_MIN_VALUE | HAS_NO_MAX_VALUE,
   4334         0,0,
   4335           /*
   4336            * Number of times this value can be repeated (i.e.,
   4337            * value is an array). Must be at least 1!
   4338            */
   4339         MAX_REPEATED_PARAM_VAL,
   4340         (VAL_PROC_PTR)NULL
   4341       }
   4342     }
   4343   },
   4344 /*
   4345  * Last element. Do not remove.
   4346  */
   4347   {
   4348     VAL_END_OF_LIST
   4349   }
   4350 }
   4351 #endif
   4352 ;
   4353 /********************************************************
   4354 *NAME
   4355 *  Pss_buff_size_vals
   4356 *TYPE: BUFFER
   4357 *DATE: 25/MAR/2003
   4358 *FUNCTION:
   4359 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4360 *  RELATED TO AN INDEFINITE SINGLE NUMBER. FOR EXAMPLE,
   4361 *  THE PARAMETER "PSS" WITHIN 'test send_buff'.
   4362 *ORGANIZATION:
   4363 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4364 *    int val_type -
   4365 *      Type of value. Can be:
   4366 *        VAL_END_OF_LIST 0
   4367 *        VAL_NUMERIC     1
   4368 *        VAL_SYMBOL      2
   4369 *        VAL_TEXT        3
   4370 *        VAL_IP          4
   4371 *      The first one is only to indicate the end of
   4372 *      this array. The others indicate what kind of
   4373 *      value this is.
   4374 *    char *symb_val -
   4375 *      ASCII presentation of the symbolic value.
   4376 *      Note: Must be small letters only!
   4377 *      For numeric variables:
   4378 *      This is a dummy variable. Enables searching
   4379 *      array of 'PARAM_VAL_RULES' for name (string)
   4380 *      matching without special case for numeric
   4381 *      variable.
   4382 *    VAL_DESCRIPTOR val_descriptor -
   4383 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4384 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4385 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4386 *      See details in file of definition. Note: Symbols
   4387 *      must be small letters only!
   4388 *USAGE:
   4389 *  SEE ORGANIZATION.
   4390 *REMARKS:
   4391 *  NONE.
   4392 *SEE ALSO:
   4393  */
   4394 EXTERN CONST
   4395    PARAM_VAL_RULES
   4396      Pss_buff_size_vals[]
   4397 #ifdef INIT
   4398    =
   4399 {
   4400   {
   4401     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   4402     {
   4403       {
   4404         HAS_MIN_VALUE | HAS_MAX_VALUE,
   4405         2*1024,0,
   4406           /*
   4407            * Number of times this value can be repeated (i.e.,
   4408            * value is an array). Must be at least 1!
   4409            */
   4410         1,
   4411         (VAL_PROC_PTR)NULL
   4412       }
   4413     }
   4414   },
   4415 /*
   4416  * Last element. Do not remove.
   4417  */
   4418   {
   4419     VAL_END_OF_LIST
   4420   }
   4421 }
   4422 #endif
   4423 ;
   4424 /********************************************************
   4425 *NAME
   4426 *  Pss_empty_vals
   4427 *TYPE: BUFFER
   4428 *DATE: 07/MAY/2002
   4429 *FUNCTION:
   4430 *  ARRAY CONTAINING EMPTY LIST OF VALUES
   4431 *  RELATED TO ANY PARAMETER OF ANY SUBJECT.
   4432 *ORGANIZATION:
   4433 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4434 *    int val_type -
   4435 *      Type of value. Can be:
   4436 *        VAL_END_OF_LIST 0
   4437 *        VAL_NUMERIC     1
   4438 *        VAL_SYMBOL      2
   4439 *        VAL_TEXT        3
   4440 *        VAL_IP          4
   4441 *      The first one is only to indicate the end of
   4442 *      this array. The others indicate what kind of
   4443 *      value this is.
   4444 *    VAL_DESCRIPTOR val_descriptor -
   4445 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4446 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4447 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4448 *      See details in file of definition. Note: Symbols
   4449 *      must be small letters only!
   4450 *USAGE:
   4451 *  SEE ORGANIZATION.
   4452 *REMARKS:
   4453 *  None
   4454 *SEE ALSO:
   4455  */
   4456 EXTERN CONST
   4457    PARAM_VAL_RULES
   4458      Pss_empty_vals[]
   4459 #ifdef INIT
   4460    =
   4461 {
   4462 /*
   4463  * Last element. Do not remove.
   4464  */
   4465   {
   4466     VAL_END_OF_LIST
   4467   }
   4468 }
   4469 #endif
   4470 ;
   4471 /********************************************************
   4472 *NAME
   4473 *  Memory_size_vals
   4474 *TYPE: BUFFER
   4475 *DATE: 13/JUNE/2003
   4476 *FUNCTION:
   4477 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4478 *  RELATED TO THE PARAMETER "size" IN
   4479 *  THE CONTEXT OF "PSS" AND "DIAGNOSTICS TEST_MEM".
   4480 *ORGANIZATION:
   4481 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4482 *    int val_type -
   4483 *      Type of value. Can be:
   4484 *        VAL_END_OF_LIST 0
   4485 *        VAL_NUMERIC     1
   4486 *        VAL_SYMBOL      2
   4487 *        VAL_TEXT        3
   4488 *        VAL_IP          4
   4489 *      The first one is only to indicate the end of
   4490 *      this array. The others indicate what kind of
   4491 *      value this is.
   4492 *    char *symb_val -
   4493 *      ASCII presentation of the symbolic value.
   4494 *      Note: Must be small letters only!
   4495 *      For numeric variables:
   4496 *      This is a dummy variable. Enables searching
   4497 *      array of 'PARAM_VAL_RULES' for name (string)
   4498 *      matching without special case for numeric
   4499 *      variable.
   4500 *    VAL_DESCRIPTOR val_descriptor -
   4501 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4502 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4503 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4504 *      See details in file of definition. Note: Symbols
   4505 *      must be small letters only!
   4506 *USAGE:
   4507 *  SEE ORGANIZATION.
   4508 *REMARKS:
   4509 *  NONE.
   4510 *SEE ALSO:
   4511  */
   4512 EXTERN CONST
   4513    PARAM_VAL_RULES
   4514      Memory_size_vals[]
   4515 #ifdef INIT
   4516    =
   4517 {
   4518   {
   4519     VAL_NUMERIC,
   4520     SYMB_NAME_NUMERIC,
   4521     {
   4522       {
   4523           /*
   4524            * No max and no min here.
   4525            */
   4526         HAS_NO_MIN_VALUE | HAS_NO_MAX_VALUE,
   4527         0,0,
   4528           /*
   4529            * Number of times this value can be repeated (i.e.,
   4530            * value is an array). Must be at least 1!
   4531            */
   4532         1,
   4533           /*
   4534            * No attched procedure to call when item value is entered.
   4535            */
   4536         (VAL_PROC_PTR)NULL
   4537       }
   4538     }
   4539   },
   4540 /*
   4541  * Last element. Do not remove.
   4542  */
   4543   {
   4544     VAL_END_OF_LIST
   4545   }
   4546 }
   4547 #endif
   4548 ;
   4549 /********************************************************
   4550 *NAME
   4551 *  Memory_size_default
   4552 *TYPE: BUFFER
   4553 *DATE: 15/JUNE/2003
   4554 *FUNCTION:
   4555 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   4556 *  PARAMETER "size" IN THE CONTEXT OF SUBJECT 'PSS'
   4557 *  (AND 'DIAGNOSTICS TEST_MEM').
   4558 *ORGANIZATION:
   4559 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4560 *    int val_type -
   4561 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   4562 *      VAL_IP OR VAL_SYMBOL)
   4563 *    int numeric_equivalent -
   4564 *      Numeric value related to string_value. Only relevant
   4565 *      for val_type = VAL_SYMBOL
   4566 *    union value -
   4567 *      Union of one of
   4568 *        int            int_value
   4569 *        char           *string_value
   4570 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   4571 *        unsigned long  ip_value ;
   4572 *      Value of default variable.
   4573 *USAGE:
   4574 *  SEE ORGANIZATION.
   4575 *REMARKS:
   4576 *  NONE.
   4577 *SEE ALSO:
   4578  */
   4579 EXTERN CONST
   4580    PARAM_VAL
   4581      Memory_size_default
   4582 #ifdef INIT
   4583    =
   4584 {
   4585   VAL_NUMERIC,
   4586   0,
   4587   {
   4588     /*
   4589      * Casting required here only to keep the compiler silent.
   4590      */
   4591     (int)16
   4592   }
   4593 }
   4594 #endif
   4595 ;
   4596 /********************************************************
   4597 *NAME
   4598 *  Memory_offset_vals
   4599 *TYPE: BUFFER
   4600 *DATE: 13/JUNE/2003
   4601 *FUNCTION:
   4602 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4603 *  RELATED TO THE PARAMETER "offset" IN
   4604 *  THE CONTEXT OF "PSS" AND "DIAGNOSTICS TEST_MEM".
   4605 *ORGANIZATION:
   4606 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4607 *    int val_type -
   4608 *      Type of value. Can be:
   4609 *        VAL_END_OF_LIST 0
   4610 *        VAL_NUMERIC     1
   4611 *        VAL_SYMBOL      2
   4612 *        VAL_TEXT        3
   4613 *        VAL_IP          4
   4614 *      The first one is only to indicate the end of
   4615 *      this array. The others indicate what kind of
   4616 *      value this is.
   4617 *    char *symb_val -
   4618 *      ASCII presentation of the symbolic value.
   4619 *      Note: Must be small letters only!
   4620 *      For numeric variables:
   4621 *      This is a dummy variable. Enables searching
   4622 *      array of 'PARAM_VAL_RULES' for name (string)
   4623 *      matching without special case for numeric
   4624 *      variable.
   4625 *    VAL_DESCRIPTOR val_descriptor -
   4626 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4627 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4628 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4629 *      See details in file of definition. Note: Symbols
   4630 *      must be small letters only!
   4631 *USAGE:
   4632 *  SEE ORGANIZATION.
   4633 *REMARKS:
   4634 *  NONE.
   4635 *SEE ALSO:
   4636  */
   4637 EXTERN CONST
   4638    PARAM_VAL_RULES
   4639      Memory_offset_vals[]
   4640 #ifdef INIT
   4641    =
   4642 {
   4643   {
   4644     VAL_NUMERIC,
   4645     SYMB_NAME_NUMERIC,
   4646     {
   4647       {
   4648           /*
   4649            * No max and no min here.
   4650            */
   4651         HAS_NO_MIN_VALUE | HAS_NO_MAX_VALUE,
   4652         0,0,
   4653           /*
   4654            * Number of times this value can be repeated (i.e.,
   4655            * value is an array). Must be at least 1!
   4656            */
   4657         1,
   4658         (VAL_PROC_PTR)NULL
   4659       }
   4660     }
   4661   },
   4662 /*
   4663  * Last element. Do not remove.
   4664  */
   4665   {
   4666     VAL_END_OF_LIST
   4667   }
   4668 }
   4669 #endif
   4670 ;
   4671 /********************************************************
   4672 *NAME
   4673 *  Memory_offset_default
   4674 *TYPE: BUFFER
   4675 *DATE: 15/JUNE/2003
   4676 *FUNCTION:
   4677 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   4678 *  PARAMETER "offset" IN THE CONTEXT OF SUBJECT 'PSS'
   4679 *  (AND 'DIAGNOSTICS TEST_MEM').
   4680 *ORGANIZATION:
   4681 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4682 *    int val_type -
   4683 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   4684 *      VAL_IP OR VAL_SYMBOL)
   4685 *    int numeric_equivalent -
   4686 *      Numeric value related to string_value. Only relevant
   4687 *      for val_type = VAL_SYMBOL
   4688 *    union value -
   4689 *      Union of one of
   4690 *        int            int_value
   4691 *        char           *string_value
   4692 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   4693 *        unsigned long  ip_value ;
   4694 *      Value of default variable.
   4695 *USAGE:
   4696 *  SEE ORGANIZATION.
   4697 *REMARKS:
   4698 *  NONE.
   4699 *SEE ALSO:
   4700  */
   4701 EXTERN CONST
   4702    PARAM_VAL
   4703      Memory_offset_default
   4704 #ifdef INIT
   4705    =
   4706 {
   4707   VAL_NUMERIC,
   4708   0,
   4709   {
   4710     /*
   4711      * Casting required here only to keep the compiler silent.
   4712      */
   4713     (int)0
   4714   }
   4715 }
   4716 #endif
   4717 ;
   4718 /********************************************************
   4719 *NAME
   4720 *  Memory_type_vals
   4721 *TYPE: BUFFER
   4722 *DATE: 13/JUNE/2003
   4723 *FUNCTION:
   4724 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4725 *  RELATED TO THE PARAMETER "memory_type" IN
   4726 *  THE CONTEXT OF "PSS" AND "DIAGNOSTICS TEST_MEM".
   4727 *ORGANIZATION:
   4728 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4729 *    int val_type -
   4730 *      Type of value. Can be:
   4731 *        VAL_END_OF_LIST 0
   4732 *        VAL_NUMERIC     1
   4733 *        VAL_SYMBOL      2
   4734 *        VAL_TEXT        3
   4735 *        VAL_IP          4
   4736 *      The first one is only to indicate the end of
   4737 *      this array. The others indicate what kind of
   4738 *      value this is.
   4739 *    char *symb_val -
   4740 *      ASCII presentation of the symbolic value.
   4741 *      Note: Must be small letters only!
   4742 *      For numeric variables:
   4743 *      This is a dummy variable. Enables searching
   4744 *      array of 'PARAM_VAL_RULES' for name (string)
   4745 *      matching without special case for numeric
   4746 *      variable.
   4747 *    VAL_DESCRIPTOR val_descriptor -
   4748 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4749 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4750 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4751 *      See details in file of definition. Note: Symbols
   4752 *      must be small letters only!
   4753 *USAGE:
   4754 *  SEE ORGANIZATION.
   4755 *REMARKS:
   4756 *  NONE.
   4757 *SEE ALSO:
   4758  */
   4759 EXTERN CONST
   4760    PARAM_VAL_RULES
   4761      Memory_type_vals[]
   4762 #ifdef INIT
   4763    =
   4764 {
   4765   {
   4766     VAL_SYMBOL,
   4767     "buffer_dram",
   4768     {
   4769       {
   4770         BUFFER_DRAM_EQUIVALENT,
   4771           /*
   4772            * Casting added here just to keep the compiler silent.
   4773            */
   4774         (long)"    The external packet buffer SDRAM",
   4775           /*
   4776            * Pointer to a function to call after symbolic value
   4777            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4778            * Casting to 'long' added here just to keep the
   4779            * compiler silent.
   4780            */
   4781         (long)NULL
   4782       }
   4783     }
   4784   },
   4785   {
   4786     VAL_SYMBOL,
   4787     "wide_sram",
   4788     {
   4789       {
   4790         WIDE_SRAM_EQUIVALENT,
   4791           /*
   4792            * Casting added here just to keep the compiler silent.
   4793            */
   4794         (long)"    The external Wide SRAM, or internal Control SRAM if the device was\r\n"
   4795               "    configured without external wide-SRAM",
   4796           /*
   4797            * Pointer to a function to call after symbolic value
   4798            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4799            * Casting to 'long' added here just to keep the
   4800            * compiler silent.
   4801            */
   4802         (long)NULL
   4803       }
   4804     }
   4805   },
   4806   {
   4807     VAL_SYMBOL,
   4808     "narrow_sram",
   4809     {
   4810       {
   4811         NARROW_SRAM_EQUIVALENT,
   4812           /*
   4813            * Casting added here just to keep the compiler silent.
   4814            */
   4815         (long)"    The external Narrow SRAM, or internal IP SRAM if the device was configured\r\n"
   4816               "    without external wide-SRAM",
   4817           /*
   4818            * Pointer to a function to call after symbolic value
   4819            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4820            * Casting to 'long' added here just to keep the
   4821            * compiler silent.
   4822            */
   4823         (long)NULL
   4824       }
   4825     }
   4826   },
   4827   {
   4828     VAL_SYMBOL,
   4829     "flow_dram",
   4830     {
   4831       {
   4832         FLOW_DRAM_EQUIVALENT,
   4833           /*
   4834            * Casting added here just to keep the compiler silent.
   4835            */
   4836         (long)"    The external flow DRAM",
   4837           /*
   4838            * Pointer to a function to call after symbolic value
   4839            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4840            * Casting to 'long' added here just to keep the
   4841            * compiler silent.
   4842            */
   4843         (long)NULL
   4844       }
   4845     }
   4846   },
   4847   {
   4848     VAL_SYMBOL,
   4849     "mac_tbl_mem",
   4850     {
   4851       {
   4852         MAC_TBL_MEM_EQUIVALENT,
   4853           /*
   4854            * Casting added here just to keep the compiler silent.
   4855            */
   4856         (long)"    Internal MAC table memory",
   4857           /*
   4858            * Pointer to a function to call after symbolic value
   4859            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4860            * Casting to 'long' added here just to keep the
   4861            * compiler silent.
   4862            */
   4863         (long)NULL
   4864       }
   4865     }
   4866   },
   4867   {
   4868     VAL_SYMBOL,
   4869     "vlan_tbl_mem",
   4870     {
   4871       {
   4872         VLAN_TBL_MEM_EQUIVALENT,
   4873           /*
   4874            * Casting added here just to keep the compiler silent.
   4875            */
   4876         (long)"    Internal VLAN table memory",
   4877           /*
   4878            * Pointer to a function to call after symbolic value
   4879            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4880            * Casting to 'long' added here just to keep the
   4881            * compiler silent.
   4882            */
   4883         (long)NULL
   4884       }
   4885     }
   4886   },
   4887 /*
   4888  * Last element. Do not remove.
   4889  */
   4890   {
   4891     VAL_END_OF_LIST
   4892   }
   4893 }
   4894 #endif
   4895 ;
   4896 /********************************************************
   4897 *NAME
   4898 *  Learning_mode_vals
   4899 *TYPE: BUFFER
   4900 *DATE: 20/MARCH/2003
   4901 *FUNCTION:
   4902 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   4903 *  RELATED TO THE PARAMETER "SELECT_LEARNING_MODE" IN
   4904 *  THE CONTEXT OF "PSS" AND "VLAN".
   4905 *ORGANIZATION:
   4906 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   4907 *    int val_type -
   4908 *      Type of value. Can be:
   4909 *        VAL_END_OF_LIST 0
   4910 *        VAL_NUMERIC     1
   4911 *        VAL_SYMBOL      2
   4912 *        VAL_TEXT        3
   4913 *        VAL_IP          4
   4914 *      The first one is only to indicate the end of
   4915 *      this array. The others indicate what kind of
   4916 *      value this is.
   4917 *    char *symb_val -
   4918 *      ASCII presentation of the symbolic value.
   4919 *      Note: Must be small letters only!
   4920 *      For numeric variables:
   4921 *      This is a dummy variable. Enables searching
   4922 *      array of 'PARAM_VAL_RULES' for name (string)
   4923 *      matching without special case for numeric
   4924 *      variable.
   4925 *    VAL_DESCRIPTOR val_descriptor -
   4926 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   4927 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   4928 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   4929 *      See details in file of definition. Note: Symbols
   4930 *      must be small letters only!
   4931 *USAGE:
   4932 *  SEE ORGANIZATION.
   4933 *REMARKS:
   4934 *  NONE.
   4935 *SEE ALSO:
   4936  */
   4937 EXTERN CONST
   4938    PARAM_VAL_RULES
   4939      Learning_mode_vals[]
   4940 #ifdef INIT
   4941    =
   4942 {
   4943   {
   4944     VAL_SYMBOL,
   4945     "individual",
   4946     {
   4947       {
   4948         VLAN_INDIVIDUAL_EQUIVALENT,
   4949           /*
   4950            * Casting added here just to keep the compiler silent.
   4951            */
   4952         (long)"    IVL - Independent Vlan Learning. Both Valn and Mac are station identifiers",
   4953           /*
   4954            * Pointer to a function to call after symbolic value
   4955            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4956            * Casting to 'long' added here just to keep the
   4957            * compiler silent.
   4958            */
   4959         (long)NULL
   4960       }
   4961     }
   4962   },
   4963   {
   4964     VAL_SYMBOL,
   4965     "shared",
   4966     {
   4967       {
   4968         VLAN_SHARED_EQUIVALENT,
   4969           /*
   4970            * Casting added here just to keep the compiler silent.
   4971            */
   4972         (long)"    SVL - Shared Vlan Learning. Only Mac address is station identifier",
   4973           /*
   4974            * Pointer to a function to call after symbolic value
   4975            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   4976            * Casting to 'long' added here just to keep the
   4977            * compiler silent.
   4978            */
   4979         (long)NULL
   4980       }
   4981     }
   4982   },
   4983 /*
   4984  * Last element. Do not remove.
   4985  */
   4986   {
   4987     VAL_END_OF_LIST
   4988   }
   4989 }
   4990 #endif
   4991 ;
   4992 
   4993 /********************************************************
   4994 *NAME
   4995 *  Mac_addr_vals
   4996 *TYPE: BUFFER
   4997 *DATE: 24/MARCH/2003
   4998 *FUNCTION:
   4999 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5000 *  RELATED TO THE PARAMETER "MAC_ADDR" IN THE
   5001 *  CONTEXT OF SUBJECT 'PSS'.
   5002 *ORGANIZATION:
   5003 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5004 *    int val_type -
   5005 *      Type of value. Can be:
   5006 *        VAL_END_OF_LIST 0
   5007 *        VAL_NUMERIC     1
   5008 *        VAL_SYMBOL      2
   5009 *        VAL_TEXT        3
   5010 *        VAL_IP          4
   5011 *      The first one is only to indicate the end of
   5012 *      this array. The others indicate what kind of
   5013 *      value this is.
   5014 *    char *symb_val -
   5015 *      ASCII presentation of the symbolic value.
   5016 *      Note: Must be small letters only!
   5017 *      For numeric variables:
   5018 *      This is a dummy variable. Enables searching
   5019 *      array of 'PARAM_VAL_RULES' for name (string)
   5020 *      matching without special case for numeric
   5021 *      variable.
   5022 *    VAL_DESCRIPTOR val_descriptor -
   5023 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5024 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5025 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5026 *      See details in file of definition. Note: Symbols
   5027 *      must be small letters only!
   5028 *USAGE:
   5029 *  SEE ORGANIZATION.
   5030 *REMARKS:
   5031 *  NONE.
   5032 *SEE ALSO:
   5033  */
   5034 EXTERN CONST
   5035    PARAM_VAL_RULES
   5036      Mac_addr_vals[]
   5037 #ifdef INIT
   5038    =
   5039 {
   5040   {
   5041     VAL_TEXT,
   5042     (char *)0,
   5043     {
   5044       {
   5045           /*
   5046            * Maximal number of characters.
   5047            */
   5048         12,
   5049           /*
   5050            * Casting added here just to keep the compiler silent.
   5051            */
   5052         (long)"    MAC address parameter. 12 hex digits.",
   5053       }
   5054     }
   5055   },
   5056 /*
   5057  * Last element. Do not remove.
   5058  */
   5059   {
   5060     VAL_END_OF_LIST
   5061   }
   5062 }
   5063 #endif
   5064 ;
   5065 /********************************************************
   5066 *NAME
   5067 *  Traffic_class_vals
   5068 *TYPE: BUFFER
   5069 *DATE: 15/JULY/2003
   5070 *FUNCTION:
   5071 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5072 *  RELATED TO THE PARAMETER "SOURCE_TRAFFIC_CLASS"  or
   5073 *  "DEST_TRAFFIC_CLASS" IN THE CONTEXT OF SUBJECT 'PSS'.
   5074 *ORGANIZATION:
   5075 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5076 *    int val_type -
   5077 *      Type of value. Can be:
   5078 *        VAL_END_OF_LIST 0
   5079 *        VAL_NUMERIC     1
   5080 *        VAL_SYMBOL      2
   5081 *        VAL_TEXT        3
   5082 *        VAL_IP          4
   5083 *      The first one is only to indicate the end of
   5084 *      this array. The others indicate what kind of
   5085 *      value this is.
   5086 *    char *symb_val -
   5087 *      ASCII presentation of the symbolic value.
   5088 *      Note: Must be small letters only!
   5089 *      For numeric variables:
   5090 *      This is a dummy variable. Enables searching
   5091 *      array of 'PARAM_VAL_RULES' for name (string)
   5092 *      matching without special case for numeric
   5093 *      variable.
   5094 *    VAL_DESCRIPTOR val_descriptor -
   5095 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5096 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5097 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5098 *      See details in file of definition. Note: Symbols
   5099 *      must be small letters only!
   5100 *USAGE:
   5101 *  SEE ORGANIZATION.
   5102 *REMARKS:
   5103 *  NONE.
   5104 *SEE ALSO:
   5105  */
   5106 EXTERN CONST
   5107    PARAM_VAL_RULES
   5108      Traffic_class_vals[]
   5109 #ifdef INIT
   5110    =
   5111 {
   5112   {
   5113     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5114     {
   5115       {
   5116         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5117         7,0,
   5118           /*
   5119            * Number of times this value can be repeated (i.e.,
   5120            * value is an array). Must be at least 1!
   5121            */
   5122         1,
   5123           /*
   5124            * Pointer to a function to call after the full numeric value
   5125            * has been accepted.
   5126            */
   5127         (VAL_PROC_PTR)NULL
   5128       }
   5129     }
   5130   },
   5131 /*
   5132  * Last element. Do not remove.
   5133  */
   5134   {
   5135     VAL_END_OF_LIST
   5136   }
   5137 }
   5138 #endif
   5139 ;
   5140 /********************************************************
   5141 *NAME
   5142 *  Pss_nof_consecutive_macs_vals
   5143 *TYPE: BUFFER
   5144 *DATE: 15/JULY/2003
   5145 *FUNCTION:
   5146 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5147 *  RELATED TO THE PARAMETER ""  or
   5148 *  "" IN THE CONTEXT OF SUBJECT 'PSS'.
   5149 *ORGANIZATION:
   5150 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5151 *    int val_type -
   5152 *      Type of value. Can be:
   5153 *        VAL_END_OF_LIST 0
   5154 *        VAL_NUMERIC     1
   5155 *        VAL_SYMBOL      2
   5156 *        VAL_TEXT        3
   5157 *        VAL_IP          4
   5158 *      The first one is only to indicate the end of
   5159 *      this array. The others indicate what kind of
   5160 *      value this is.
   5161 *    char *symb_val -
   5162 *      ASCII presentation of the symbolic value.
   5163 *      Note: Must be small letters only!
   5164 *      For numeric variables:
   5165 *      This is a dummy variable. Enables searching
   5166 *      array of 'PARAM_VAL_RULES' for name (string)
   5167 *      matching without special case for numeric
   5168 *      variable.
   5169 *    VAL_DESCRIPTOR val_descriptor -
   5170 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5171 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5172 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5173 *      See details in file of definition. Note: Symbols
   5174 *      must be small letters only!
   5175 *USAGE:
   5176 *  SEE ORGANIZATION.
   5177 *REMARKS:
   5178 *  NONE.
   5179 *SEE ALSO:
   5180  */
   5181 EXTERN CONST
   5182    PARAM_VAL_RULES
   5183      Pss_nof_consecutive_macs_vals[]
   5184 #ifdef INIT
   5185    =
   5186 {
   5187   {
   5188     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5189     {
   5190       {
   5191         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5192         BIT(16),1,
   5193           /*
   5194            * Number of times this value can be repeated (i.e.,
   5195            * value is an array). Must be at least 1!
   5196            */
   5197         1,
   5198           /*
   5199            * Pointer to a function to call after the full numeric value
   5200            * has been accepted.
   5201            */
   5202         (VAL_PROC_PTR)NULL
   5203       }
   5204     }
   5205   },
   5206 /*
   5207  * Last element. Do not remove.
   5208  */
   5209   {
   5210     VAL_END_OF_LIST
   5211   }
   5212 }
   5213 #endif
   5214 ;
   5215 /********************************************************
   5216 *NAME
   5217 *  Pss_increment_unit_every_n_vals
   5218 *TYPE: BUFFER
   5219 *DATE: 15/JULY/2003
   5220 *FUNCTION:
   5221 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5222 *  RELATED TO THE PARAMETER ""  or
   5223 *  "" IN THE CONTEXT OF SUBJECT 'PSS'.
   5224 *ORGANIZATION:
   5225 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5226 *    int val_type -
   5227 *      Type of value. Can be:
   5228 *        VAL_END_OF_LIST 0
   5229 *        VAL_NUMERIC     1
   5230 *        VAL_SYMBOL      2
   5231 *        VAL_TEXT        3
   5232 *        VAL_IP          4
   5233 *      The first one is only to indicate the end of
   5234 *      this array. The others indicate what kind of
   5235 *      value this is.
   5236 *    char *symb_val -
   5237 *      ASCII presentation of the symbolic value.
   5238 *      Note: Must be small letters only!
   5239 *      For numeric variables:
   5240 *      This is a dummy variable. Enables searching
   5241 *      array of 'PARAM_VAL_RULES' for name (string)
   5242 *      matching without special case for numeric
   5243 *      variable.
   5244 *    VAL_DESCRIPTOR val_descriptor -
   5245 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5246 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5247 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5248 *      See details in file of definition. Note: Symbols
   5249 *      must be small letters only!
   5250 *USAGE:
   5251 *  SEE ORGANIZATION.
   5252 *REMARKS:
   5253 *  NONE.
   5254 *SEE ALSO:
   5255  */
   5256 EXTERN CONST
   5257    PARAM_VAL_RULES
   5258      Pss_increment_unit_every_n_vals[]
   5259 #ifdef INIT
   5260    =
   5261 {
   5262   {
   5263     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5264     {
   5265       {
   5266         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5267         BIT(16),0,
   5268           /*
   5269            * Number of times this value can be repeated (i.e.,
   5270            * value is an array). Must be at least 1!
   5271            */
   5272         1,
   5273           /*
   5274            * Pointer to a function to call after the full numeric value
   5275            * has been accepted.
   5276            */
   5277         (VAL_PROC_PTR)NULL
   5278       }
   5279     }
   5280   },
   5281 /*
   5282  * Last element. Do not remove.
   5283  */
   5284   {
   5285     VAL_END_OF_LIST
   5286   }
   5287 }
   5288 #endif
   5289 ;
   5290 /********************************************************
   5291 *NAME
   5292 *  Vlan_id_vals
   5293 *TYPE: BUFFER
   5294 *DATE: 20/MARCH/2003
   5295 *FUNCTION:
   5296 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5297 *  RELATED TO THE PARAMETER "VLAN_ID" IN THE
   5298 *  CONTEXT OF SUBJECT 'PSS'.
   5299 *ORGANIZATION:
   5300 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5301 *    int val_type -
   5302 *      Type of value. Can be:
   5303 *        VAL_END_OF_LIST 0
   5304 *        VAL_NUMERIC     1
   5305 *        VAL_SYMBOL      2
   5306 *        VAL_TEXT        3
   5307 *        VAL_IP          4
   5308 *      The first one is only to indicate the end of
   5309 *      this array. The others indicate what kind of
   5310 *      value this is.
   5311 *    char *symb_val -
   5312 *      ASCII presentation of the symbolic value.
   5313 *      Note: Must be small letters only!
   5314 *      For numeric variables:
   5315 *      This is a dummy variable. Enables searching
   5316 *      array of 'PARAM_VAL_RULES' for name (string)
   5317 *      matching without special case for numeric
   5318 *      variable.
   5319 *    VAL_DESCRIPTOR val_descriptor -
   5320 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5321 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5322 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5323 *      See details in file of definition. Note: Symbols
   5324 *      must be small letters only!
   5325 *USAGE:
   5326 *  SEE ORGANIZATION.
   5327 *REMARKS:
   5328 *  NONE.
   5329 *SEE ALSO:
   5330  */
   5331 EXTERN CONST
   5332    PARAM_VAL_RULES
   5333      Vlan_id_vals[]
   5334 #ifdef INIT
   5335    =
   5336 {
   5337   {
   5338     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5339     {
   5340       {
   5341         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5342         1024,1,
   5343           /*
   5344            * Number of times this value can be repeated (i.e.,
   5345            * value is an array). Must be at least 1!
   5346            */
   5347         1,
   5348           /*
   5349            * Pointer to a function to call after the full numeric value
   5350            * has been accepted.
   5351            */
   5352         (VAL_PROC_PTR)NULL
   5353       }
   5354     }
   5355   },
   5356 /*
   5357  * Last element. Do not remove.
   5358  */
   5359   {
   5360     VAL_END_OF_LIST
   5361   }
   5362 }
   5363 #endif
   5364 ;
   5365 /********************************************************
   5366 *NAME
   5367 *  Id_of_trunk_port_vals
   5368 *TYPE: BUFFER
   5369 *DATE: 02/APRIL/2003
   5370 *FUNCTION:
   5371 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5372 *  RELATED TO THE PARAMETER "TRUNK_PORT" IN THE
   5373 *  CONTEXT OF SUBJECT 'PSS'.
   5374 *ORGANIZATION:
   5375 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5376 *    int val_type -
   5377 *      Type of value. Can be:
   5378 *        VAL_END_OF_LIST 0
   5379 *        VAL_NUMERIC     1
   5380 *        VAL_SYMBOL      2
   5381 *        VAL_TEXT        3
   5382 *        VAL_IP          4
   5383 *      The first one is only to indicate the end of
   5384 *      this array. The others indicate what kind of
   5385 *      value this is.
   5386 *    char *symb_val -
   5387 *      ASCII presentation of the symbolic value.
   5388 *      Note: Must be small letters only!
   5389 *      For numeric variables:
   5390 *      This is a dummy variable. Enables searching
   5391 *      array of 'PARAM_VAL_RULES' for name (string)
   5392 *      matching without special case for numeric
   5393 *      variable.
   5394 *    VAL_DESCRIPTOR val_descriptor -
   5395 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5396 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5397 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5398 *      See details in file of definition. Note: Symbols
   5399 *      must be small letters only!
   5400 *USAGE:
   5401 *  SEE ORGANIZATION.
   5402 *REMARKS:
   5403 *  NONE.
   5404 *SEE ALSO:
   5405  */
   5406 EXTERN CONST
   5407    PARAM_VAL_RULES
   5408      Id_of_trunk_port_vals[]
   5409 #ifdef INIT
   5410    =
   5411 {
   5412   {
   5413     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5414     {
   5415       {
   5416         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5417         7,1,
   5418           /*
   5419            * Number of times this value can be repeated (i.e.,
   5420            * value is an array). Must be at least 1!
   5421            */
   5422         1,
   5423           /*
   5424            * Pointer to a function to call after the full numeric value
   5425            * has been accepted.
   5426            */
   5427         (VAL_PROC_PTR)NULL
   5428       }
   5429     }
   5430   },
   5431 /*
   5432  * Last element. Do not remove.
   5433  */
   5434   {
   5435     VAL_END_OF_LIST
   5436   }
   5437 }
   5438 #endif
   5439 ;
   5440 /********************************************************
   5441 *NAME
   5442 *  Unit_vals
   5443 *TYPE: BUFFER
   5444 *DATE: 20/MARCH/2003
   5445 *FUNCTION:
   5446 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5447 *  RELATED TO THE PARAMETER "UNIT" IN THE
   5448 *  CONTEXT OF SUBJECT 'PSS'.
   5449 *ORGANIZATION:
   5450 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5451 *    int val_type -
   5452 *      Type of value. Can be:
   5453 *        VAL_END_OF_LIST 0
   5454 *        VAL_NUMERIC     1
   5455 *        VAL_SYMBOL      2
   5456 *        VAL_TEXT        3
   5457 *        VAL_IP          4
   5458 *      The first one is only to indicate the end of
   5459 *      this array. The others indicate what kind of
   5460 *      value this is.
   5461 *    char *symb_val -
   5462 *      ASCII presentation of the symbolic value.
   5463 *      Note: Must be small letters only!
   5464 *      For numeric variables:
   5465 *      This is a dummy variable. Enables searching
   5466 *      array of 'PARAM_VAL_RULES' for name (string)
   5467 *      matching without special case for numeric
   5468 *      variable.
   5469 *    VAL_DESCRIPTOR val_descriptor -
   5470 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5471 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5472 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5473 *      See details in file of definition. Note: Symbols
   5474 *      must be small letters only!
   5475 *USAGE:
   5476 *  SEE ORGANIZATION.
   5477 *REMARKS:
   5478 *  NONE.
   5479 *SEE ALSO:
   5480  */
   5481 EXTERN CONST
   5482    PARAM_VAL_RULES
   5483      Unit_vals[]
   5484 #ifdef INIT
   5485    =
   5486 {
   5487   {
   5488     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5489     {
   5490       {
   5491         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5492         10,0,
   5493           /*
   5494            * Number of times this value can be repeated (i.e.,
   5495            * value is an array). Must be at least 1!
   5496            */
   5497         1,
   5498           /*
   5499            * Pointer to a function to call after the full numeric value
   5500            * has been accepted.
   5501            */
   5502         (VAL_PROC_PTR)NULL
   5503       }
   5504     }
   5505   },
   5506 /*
   5507  * Last element. Do not remove.
   5508  */
   5509   {
   5510     VAL_END_OF_LIST
   5511   }
   5512 }
   5513 #endif
   5514 ;
   5515 /********************************************************
   5516 *NAME
   5517 *  Traffic_class_default
   5518 *TYPE: BUFFER
   5519 *DATE: 10/MAR/2002
   5520 *FUNCTION:
   5521 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   5522 *  PARAMETER "SOURCE_TRAFFIC_CLASS" OR "DEST_TRAFFIC_CLASS"
   5523 *  IN THE CONTEXT OF SUBJECT 'PSS'.
   5524 *ORGANIZATION:
   5525 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5526 *    int val_type -
   5527 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   5528 *      VAL_IP OR VAL_SYMBOL)
   5529 *    int numeric_equivalent
   5530 *       Numeric value related to string_value. Only relevant
   5531 *       for val_type = VAL_SYMBOL
   5532 *    union value -
   5533 *      Union of one of
   5534 *        int            int_value
   5535 *        char           *string_value
   5536 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   5537 *        unsigned long  ip_value ;
   5538 *      Value of default variable.
   5539 *USAGE:
   5540 *  SEE ORGANIZATION.
   5541 *REMARKS:
   5542 *  NONE.
   5543 *SEE ALSO:
   5544  */
   5545 EXTERN CONST
   5546    PARAM_VAL
   5547      Traffic_class_default
   5548 #ifdef INIT
   5549    =
   5550 {
   5551   VAL_NUMERIC,
   5552   0,
   5553   {
   5554     /*
   5555      * Casting required here only to keep the compiler silent.
   5556      */
   5557     (int)0
   5558   }
   5559 }
   5560 #endif
   5561 ;
   5562 /********************************************************
   5563 *NAME
   5564 *  Pss_nof_consecutive_macs_default
   5565 *TYPE: BUFFER
   5566 *DATE: 10/MAR/2002
   5567 *FUNCTION:
   5568 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   5569 *  PARAMETER "
   5570 *  IN THE CONTEXT OF SUBJECT 'PSS'.
   5571 *ORGANIZATION:
   5572 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5573 *    int val_type -
   5574 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   5575 *      VAL_IP OR VAL_SYMBOL)
   5576 *    int numeric_equivalent
   5577 *       Numeric value related to string_value. Only relevant
   5578 *       for val_type = VAL_SYMBOL
   5579 *    union value -
   5580 *      Union of one of
   5581 *        int            int_value
   5582 *        char           *string_value
   5583 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   5584 *        unsigned long  ip_value ;
   5585 *      Value of default variable.
   5586 *USAGE:
   5587 *  SEE ORGANIZATION.
   5588 *REMARKS:
   5589 *  NONE.
   5590 *SEE ALSO:
   5591  */
   5592 EXTERN CONST
   5593    PARAM_VAL
   5594      Pss_nof_consecutive_macs_default
   5595 #ifdef INIT
   5596    =
   5597 {
   5598   VAL_NUMERIC,
   5599   0,
   5600   {
   5601     /*
   5602      * Casting required here only to keep the compiler silent.
   5603      */
   5604     (int)1
   5605   }
   5606 }
   5607 #endif
   5608 ;
   5609 /********************************************************
   5610 *NAME
   5611 *  Pss_increment_unit_every_n_default
   5612 *TYPE: BUFFER
   5613 *DATE: 10/MAR/2002
   5614 *FUNCTION:
   5615 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   5616 *  PARAMETER "
   5617 *  IN THE CONTEXT OF SUBJECT 'PSS'.
   5618 *ORGANIZATION:
   5619 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5620 *    int val_type -
   5621 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   5622 *      VAL_IP OR VAL_SYMBOL)
   5623 *    int numeric_equivalent
   5624 *       Numeric value related to string_value. Only relevant
   5625 *       for val_type = VAL_SYMBOL
   5626 *    union value -
   5627 *      Union of one of
   5628 *        int            int_value
   5629 *        char           *string_value
   5630 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   5631 *        unsigned long  ip_value ;
   5632 *      Value of default variable.
   5633 *USAGE:
   5634 *  SEE ORGANIZATION.
   5635 *REMARKS:
   5636 *  NONE.
   5637 *SEE ALSO:
   5638  */
   5639 EXTERN CONST
   5640    PARAM_VAL
   5641      Pss_increment_unit_every_n_default
   5642 #ifdef INIT
   5643    =
   5644 {
   5645   VAL_NUMERIC,
   5646   0,
   5647   {
   5648     /*
   5649      * Casting required here only to keep the compiler silent.
   5650      */
   5651     (int)0
   5652   }
   5653 }
   5654 #endif
   5655 ;
   5656 /********************************************************
   5657 *NAME
   5658 *  Pss_unit_default
   5659 *TYPE: BUFFER
   5660 *DATE: 10/MAR/2002
   5661 *FUNCTION:
   5662 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   5663 *  PARAMETER "FIELDS" IN THE CONTEXT OF SUBJECT 'PSS'.
   5664 *ORGANIZATION:
   5665 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5666 *    int val_type -
   5667 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   5668 *      VAL_IP OR VAL_SYMBOL)
   5669 *    union value -
   5670 *      Union of one of
   5671 *        int            int_value
   5672 *        char           *string_value
   5673 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   5674 *        unsigned long  ip_value ;
   5675 *      Value of default variable.
   5676 *USAGE:
   5677 *  SEE ORGANIZATION.
   5678 *REMARKS:
   5679 *  NONE.
   5680 *SEE ALSO:
   5681  */
   5682 EXTERN CONST
   5683    PARAM_VAL
   5684      Pss_unit_default
   5685 #ifdef INIT
   5686    =
   5687 {
   5688   VAL_NUMERIC,
   5689   0,
   5690   {
   5691     /*
   5692      * Casting required here only to keep the compiler silent.
   5693      */
   5694     (int)0
   5695   }
   5696 }
   5697 #endif
   5698 ;
   5699 /********************************************************
   5700 *NAME
   5701 *  Device_vals
   5702 *TYPE: BUFFER
   5703 *DATE: 20/MARCH/2003
   5704 *FUNCTION:
   5705 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5706 *  RELATED TO THE PARAMETER "DEVICE" IN THE
   5707 *  CONTEXT OF SUBJECT 'PSS'.
   5708 *ORGANIZATION:
   5709 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5710 *    int val_type -
   5711 *      Type of value. Can be:
   5712 *        VAL_END_OF_LIST 0
   5713 *        VAL_NUMERIC     1
   5714 *        VAL_SYMBOL      2
   5715 *        VAL_TEXT        3
   5716 *        VAL_IP          4
   5717 *      The first one is only to indicate the end of
   5718 *      this array. The others indicate what kind of
   5719 *      value this is.
   5720 *    char *symb_val -
   5721 *      ASCII presentation of the symbolic value.
   5722 *      Note: Must be small letters only!
   5723 *      For numeric variables:
   5724 *      This is a dummy variable. Enables searching
   5725 *      array of 'PARAM_VAL_RULES' for name (string)
   5726 *      matching without special case for numeric
   5727 *      variable.
   5728 *    VAL_DESCRIPTOR val_descriptor -
   5729 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5730 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5731 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5732 *      See details in file of definition. Note: Symbols
   5733 *      must be small letters only!
   5734 *USAGE:
   5735 *  SEE ORGANIZATION.
   5736 *REMARKS:
   5737 *  NONE.
   5738 *SEE ALSO:
   5739  */
   5740 EXTERN CONST
   5741    PARAM_VAL_RULES
   5742      Device_vals[]
   5743 #ifdef INIT
   5744    =
   5745 {
   5746   {
   5747     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5748     {
   5749       {
   5750         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5751         126,0,
   5752           /*
   5753            * Number of times this value can be repeated (i.e.,
   5754            * value is an array). Must be at least 1!
   5755            */
   5756         1,
   5757           /*
   5758            * Pointer to a function to call after the full numeric value
   5759            * has been accepted.
   5760            */
   5761         (VAL_PROC_PTR)NULL
   5762       }
   5763     }
   5764   },
   5765 /*
   5766  * Last element. Do not remove.
   5767  */
   5768   {
   5769     VAL_END_OF_LIST
   5770   }
   5771 }
   5772 #endif
   5773 ;
   5774 /********************************************************
   5775 *NAME
   5776 *  Port_vals
   5777 *TYPE: BUFFER
   5778 *DATE: 20/MARCH/2003
   5779 *FUNCTION:
   5780 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5781 *  RELATED TO THE PARAMETER "PORT" IN THE
   5782 *  CONTEXT OF SUBJECT 'PSS'.
   5783 *ORGANIZATION:
   5784 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5785 *    int val_type -
   5786 *      Type of value. Can be:
   5787 *        VAL_END_OF_LIST 0
   5788 *        VAL_NUMERIC     1
   5789 *        VAL_SYMBOL      2
   5790 *        VAL_TEXT        3
   5791 *        VAL_IP          4
   5792 *      The first one is only to indicate the end of
   5793 *      this array. The others indicate what kind of
   5794 *      value this is.
   5795 *    char *symb_val -
   5796 *      ASCII presentation of the symbolic value.
   5797 *      Note: Must be small letters only!
   5798 *      For numeric variables:
   5799 *      This is a dummy variable. Enables searching
   5800 *      array of 'PARAM_VAL_RULES' for name (string)
   5801 *      matching without special case for numeric
   5802 *      variable.
   5803 *    VAL_DESCRIPTOR val_descriptor -
   5804 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5805 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5806 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5807 *      See details in file of definition. Note: Symbols
   5808 *      must be small letters only!
   5809 *USAGE:
   5810 *  SEE ORGANIZATION.
   5811 *REMARKS:
   5812 *  NONE.
   5813 *SEE ALSO:
   5814  */
   5815 EXTERN CONST
   5816    PARAM_VAL_RULES
   5817      Port_vals[]
   5818 #ifdef INIT
   5819    =
   5820 {
   5821   {
   5822     VAL_NUMERIC,SYMB_NAME_NUMERIC,
   5823     {
   5824       {
   5825         HAS_MIN_VALUE | HAS_MAX_VALUE,
   5826         63,0,
   5827           /*
   5828            * Number of times this value can be repeated (i.e.,
   5829            * value is an array). Must be at least 1!
   5830            */
   5831         1,
   5832           /*
   5833            * Pointer to a function to call after the full numeric value
   5834            * has been accepted.
   5835            */
   5836         (VAL_PROC_PTR)NULL
   5837       }
   5838     }
   5839   },
   5840 /*
   5841  * Last element. Do not remove.
   5842  */
   5843   {
   5844     VAL_END_OF_LIST
   5845   }
   5846 }
   5847 #endif
   5848 ;
   5849 /********************************************************
   5850 *NAME
   5851 *  Pss_device_default
   5852 *TYPE: BUFFER
   5853 *DATE: 10/MAR/2002
   5854 *FUNCTION:
   5855 *  ARRAY CONTAINING THE DEFAULT VALUE RELATED TO THE
   5856 *  PARAMETER "FIELDS" IN THE CONTEXT OF SUBJECT 'PSS'.
   5857 *ORGANIZATION:
   5858 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5859 *    int val_type -
   5860 *      Type of variable (VAL_NUMERIC, VAL_TEXT,
   5861 *      VAL_IP OR VAL_SYMBOL)
   5862 *    union value -
   5863 *      Union of one of
   5864 *        int            int_value
   5865 *        char           *string_value
   5866 *        char           val_text[MAX_SIZE_OF_TEXT_VAR] ;
   5867 *        unsigned long  ip_value ;
   5868 *      Value of default variable.
   5869 *USAGE:
   5870 *  SEE ORGANIZATION.
   5871 *REMARKS:
   5872 *  NONE.
   5873 *SEE ALSO:
   5874  */
   5875 EXTERN CONST
   5876    PARAM_VAL
   5877      Pss_device_default
   5878 #ifdef INIT
   5879    =
   5880 {
   5881   VAL_NUMERIC,
   5882   0,
   5883   {
   5884     /*
   5885      * Casting required here only to keep the compiler silent.
   5886      */
   5887     (int)0
   5888   }
   5889 }
   5890 #endif
   5891 ;
   5892 /********************************************************
   5893 *NAME
   5894 *  Test_profile_vals
   5895 *TYPE: BUFFER
   5896 *DATE: 15/JUNE/2003
   5897 *FUNCTION:
   5898 *  ARRAY CONTAINING THE INITIAL LIST OF VALUES
   5899 *  RELATED TO THE PARAMETER "test_profile" IN
   5900 *  THE CONTEXT OF "PSS" AND "DIAGNOSTICS TEST_MEM".
   5901 *ORGANIZATION:
   5902 *  ARRAY OF STRUCTURES OF TYPE 'PARAM_VAL':
   5903 *    int val_type -
   5904 *      Type of value. Can be:
   5905 *        VAL_END_OF_LIST 0
   5906 *        VAL_NUMERIC     1
   5907 *        VAL_SYMBOL      2
   5908 *        VAL_TEXT        3
   5909 *        VAL_IP          4
   5910 *      The first one is only to indicate the end of
   5911 *      this array. The others indicate what kind of
   5912 *      value this is.
   5913 *    char *symb_val -
   5914 *      ASCII presentation of the symbolic value.
   5915 *      Note: Must be small letters only!
   5916 *      For numeric variables:
   5917 *      This is a dummy variable. Enables searching
   5918 *      array of 'PARAM_VAL_RULES' for name (string)
   5919 *      matching without special case for numeric
   5920 *      variable.
   5921 *    VAL_DESCRIPTOR val_descriptor -
   5922 *      Union of structures (of types VAL_NUM_DESCRIPTOR,
   5923 *      VAL_TEXT_DESCRIPTOR, VAL_IP_DESCRIPTOR and
   5924 *      VAL_SYMB_DESCRIPTOR). Descriptor of value.
   5925 *      See details in file of definition. Note: Symbols
   5926 *      must be small letters only!
   5927 *USAGE:
   5928 *  SEE ORGANIZATION.
   5929 *REMARKS:
   5930 *  NONE.
   5931 *SEE ALSO:
   5932  */
   5933 EXTERN CONST
   5934    PARAM_VAL_RULES
   5935      Test_profile_vals[]
   5936 #ifdef INIT
   5937    =
   5938 {
   5939   {
   5940     VAL_SYMBOL,
   5941     "incremental",
   5942     {
   5943       {
   5944         INCREMENTAL_EQUIVALENT,
   5945           /*
   5946            * Casting added here just to keep the compiler silent.
   5947            */
   5948         (long)"    Write incremental values and verify",
   5949           /*
   5950            * Pointer to a function to call after symbolic value
   5951            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5952            * Casting to 'long' added here just to keep the
   5953            * compiler silent.
   5954            */
   5955         (long)NULL
   5956       }
   5957     }
   5958   },
   5959   {
   5960     VAL_SYMBOL,
   5961     "bit_toggle",
   5962     {
   5963       {
   5964         BIT_TOGGLE_EQUIVALENT,
   5965           /*
   5966            * Casting added here just to keep the compiler silent.
   5967            */
   5968         (long)"    Set bit and verify",
   5969           /*
   5970            * Pointer to a function to call after symbolic value
   5971            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5972            * Casting to 'long' added here just to keep the
   5973            * compiler silent.
   5974            */
   5975         (long)NULL
   5976       }
   5977     }
   5978   },
   5979   {
   5980     VAL_SYMBOL,
   5981     "aa_55",
   5982     {
   5983       {
   5984         AA_55_EQUIVALENT,
   5985           /*
   5986            * Casting added here just to keep the compiler silent.
   5987            */
   5988         (long)"    Set 0xAAAAAAAA/0x55555555 and verify",
   5989           /*
   5990            * Pointer to a function to call after symbolic value
   5991            * has been accepted. Casting should be 'VAL_PROC_PTR'.
   5992            * Casting to 'long' added here just to keep the
   5993            * compiler silent.
   5994            */
   5995         (long)NULL
   5996       }
   5997     }
   5998   },
   5999 /*
   6000  * Last element. Do not remove.
   6001  */
   6002   {
   6003     VAL_END_OF_LIST
   6004   }
   6005 }
   6006 #endif
   6007 ;
   6008 /********************************************************
   6009 *NAME
   6010 *  PSS_params
   6011 *TYPE: BUFFER
   6012 *DATE: 24/APR/2002
   6013 *FUNCTION:
   6014 *  ARRAY CONTAINING THE INITIAL LIST OF PARAMETERS
   6015 *  RELATED TO THE SUBJECT "pss".
   6016 *ORGANIZATION:
   6017 * look at 'PARAM' comments
   6018 *USAGE:
   6019 *  SEE ORGANIZATION.
   6020 *REMARKS:
   6021 *  NONE.
   6022 *SEE ALSO:
   6023  */
   6024 EXTERN CONST
   6025    PARAM
   6026      Pss_params[]
   6027 #ifdef INIT
   6028    =
   6029 {
   6030 #if !INCLUDE_DUNE_RPC
   6031 /* { */
   6032     /*
   6033      * Allow initialization only if DUNE_RPC has not done it anyway.
   6034      */
   6035   {
   6036     PARAM_PSS_MODULE_OPEN,
   6037     "module_open",
   6038     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6039     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6040     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6041     0,0,0,0,0,0,0,
   6042     "Open the PSS module",
   6043     "Examples:\r\n"
   6044     "  pss module_open\n",
   6045     "",
   6046     {BIT(1)},
   6047     1,
   6048     (VAL_PROC_PTR)NULL
   6049   },
   6050 /* } */
   6051 #endif
   6052   {
   6053     PARAM_PSS_DIAGNOSTICS_TESTPROFILE_ID,
   6054     "test_profile",
   6055     (PARAM_VAL_RULES *)&Test_profile_vals[0],
   6056     (sizeof(Test_profile_vals) / sizeof(Test_profile_vals[0])) - 1,
   6057     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6058     0,0,0,0,0,0,0,
   6059     "Select type of memory test to carry out (e.g. aa_55)",
   6060     "Example:\r\n"
   6061     "  pss diagnostics test_mem device 0 memory_type buffer_dram offset 0 size 16\r\n"
   6062     "  test_profile incremental\r\n"
   6063     "Results in destructively testing external packet buffer SDRAM memory on local\r\n"
   6064     "device 0. Test will start from byte offset 0 (offset must be a multiple of 4)\r\n"
   6065     "and will cover 16 bytes. Selected test kind (profile) is \'incremental\':\r\n"
   6066     "Write incremental values and verify.\r\n",
   6067     "",
   6068      {0,
   6069     BIT(0)},
   6070     (unsigned int)LAST_ORDINAL,
   6071     (VAL_PROC_PTR)NULL
   6072   },
   6073   {
   6074     PARAM_PSS_DIAGNOSTICS_SIZE_ID,
   6075     "size",
   6076     (PARAM_VAL_RULES *)&Memory_size_vals[0],
   6077     (sizeof(Memory_size_vals) / sizeof(Memory_size_vals[0])) - 1,
   6078     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Memory_size_default,
   6079     0,0,0,0,0,0,0,
   6080     "Select size of memory block to test for selected memory type",
   6081     "Example:\r\n"
   6082     "  pss diagnostics test_mem device 0 memory_type buffer_dram offset 0 size 16\r\n"
   6083     "  test_profile incremental\r\n"
   6084     "Results in destructively testing external packet buffer SDRAM memory on local\r\n"
   6085     "device 0. Test will start from byte offset 0 (offset must be a multiple of 4)\r\n"
   6086     "and will cover 16 bytes. Selected test kind (profile) is \'incremental\':\r\n"
   6087     "Write incremental values and verify.\r\n",
   6088     "",
   6089      {0,
   6090     BIT(0)},
   6091     (unsigned int)LAST_ORDINAL,
   6092     (VAL_PROC_PTR)NULL
   6093   },
   6094   {
   6095     PARAM_PSS_DIAGNOSTICS_OFFEST_ID,
   6096     "offset",
   6097     (PARAM_VAL_RULES *)&Memory_offset_vals[0],
   6098     (sizeof(Memory_offset_vals) / sizeof(Memory_offset_vals[0])) - 1,
   6099     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Memory_offset_default,
   6100     0,0,0,0,0,0,0,
   6101     "Select offset to start test on for selected memory type",
   6102     "Example:\r\n"
   6103     "  pss diagnostics test_mem device 0 memory_type buffer_dram offset 0 size 16\r\n"
   6104     "  test_profile incremental\r\n"
   6105     "Results in destructively testing external packet buffer SDRAM memory on local\r\n"
   6106     "device 0. Test will start from byte offset 0 (offset must be a multiple of 4)\r\n"
   6107     "and will cover 16 bytes. Selected test kind (profile) is \'incremental\':\r\n"
   6108     "Write incremental values and verify.\r\n",
   6109     "",
   6110      {0,
   6111     BIT(0)},
   6112     (unsigned int)LAST_ORDINAL,
   6113     (VAL_PROC_PTR)NULL
   6114   },
   6115   {
   6116     PARAM_PSS_DIAGNOSTICS_MEMTYPE_ID,
   6117     "memory_type",
   6118     (PARAM_VAL_RULES *)&Memory_type_vals[0],
   6119     (sizeof(Memory_type_vals) / sizeof(Memory_type_vals[0])) - 1,
   6120     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6121     0,0,0,0,0,0,0,
   6122     "Select memory type to test (e.g. wide_sram)",
   6123     "Example:\r\n"
   6124     "  pss diagnostics test_mem device 0 memory_type buffer_dram offset 0 size 16\r\n"
   6125     "  test_profile incremental\r\n"
   6126     "Results in destructively testing external packet buffer SDRAM memory on local\r\n"
   6127     "device 0. Test will start from byte offset 0 (offset must be a multiple of 4)\r\n"
   6128     "and will cover 16 bytes. Selected test kind (profile) is \'incremental\':\r\n"
   6129     "Write incremental values and verify.\r\n",
   6130     "",
   6131      {0,
   6132     BIT(0)},
   6133     (unsigned int)LAST_ORDINAL,
   6134     (VAL_PROC_PTR)NULL
   6135   },
   6136   {
   6137     PARAM_PSS_DIAGNOSTICS_TESTREG_ID,
   6138     "test_reg",
   6139     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6140     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6141     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6142     0,0,0,0,0,0,0,
   6143     "Test the device read/write-ability of the on-chip r/w registers",
   6144     "Example:\r\n"
   6145     "  pss diagnostics test_reg device 0\r\n"
   6146     "Results in destructively testing ,on device 0, read/write-ability\n\r"
   6147     "of the on-chip r/w registers.\r\n",
   6148     "",
   6149     {0,
   6150      BIT(1)},
   6151     2,
   6152     (VAL_PROC_PTR)NULL
   6153   },
   6154   {
   6155     PARAM_PSS_DIAGNOSTICS_DUMPREG_ID,
   6156     "dump_reg",
   6157     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6158     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6159     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6160     0,0,0,0,0,0,0,
   6161     "Dumping device register values.",
   6162     "Example:\r\n"
   6163     "  pss diagnostics dump_reg device 0\r\n"
   6164     "Results in dumping the device register values.\r\n",
   6165     "",
   6166     {0,
   6167      BIT(1)},
   6168     2,
   6169     (VAL_PROC_PTR)NULL
   6170   },
   6171   {
   6172     PARAM_PSS_DIAGNOSTICS_TESTMACUPDMSG_ID,
   6173     "test_mac_upd_msg",
   6174     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6175     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6176     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6177     0,0,0,0,0,0,0,
   6178     "Test the ability to NA message, send a QA message and receive QR.",
   6179     "Example:\r\n"
   6180     "  pss diagnostics test_mac_upd_msg device 0\r\n"
   6181     "Results in:\r\n"
   6182     " 1) send a New Address (NA) message to a local device.\r\n"
   6183     " 2) send a Query Address (QA) message for this MAC entry.\r\n"
   6184     " 3) Receive an Update Message interrupt containing the Query Response (QR)\r\n"
   6185     "from the device\r\n",
   6186     "",
   6187     {0,
   6188      BIT(1)},
   6189     2,
   6190     (VAL_PROC_PTR)NULL
   6191   },
   6192   {
   6193     PARAM_PSS_DIAGNOSTICS_TESTMEM_ID,
   6194     "test_mem",
   6195     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6196     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6197     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6198     0,0,0,0,0,0,0,
   6199     "Carry out memory test on various memory blocks",
   6200     "Example:\r\n"
   6201     "  pss diagnostics test_mem device 0 memory_type buffer_dram offset 0 size 16\r\n"
   6202     "  test_profile incremental\r\n"
   6203     "Results in destructively testing external packet buffer SDRAM memory on local\r\n"
   6204     "device 0. Test will start from byte offset 0 (offset must be a multiple of 4)\r\n"
   6205     "and will cover 16 bytes. Selected test kind (profile) is \'incremental\':\r\n"
   6206     "Write incremental values and verify.\r\n",
   6207     "",
   6208     {0,
   6209     BIT(0)},
   6210     2,
   6211     (VAL_PROC_PTR)NULL
   6212   },
   6213   {
   6214     PARAM_PSS_DIAGNOSTICS_ID,
   6215     "diagnostics",
   6216     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6217     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6218     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6219     0,0,0,0,0,0,0,
   6220     "Invoke various diagnostic tools such as memory tests.",
   6221     "Example:\r\n"
   6222     "  pss diagnostics test_mem device 0 memory_type buffer_dram offset 0 size 16\r\n"
   6223     "  test_profile incremental\r\n"
   6224     "Results in destructively testing external packet buffer SDRAM memory on local\r\n"
   6225     "device 0. Test will start from byte offset 0 (offset must be a multiple of 4)\r\n"
   6226     "and will cover 16 bytes. Selected test kind (profile) is \'incremental\':\r\n"
   6227     "Write incremental values and verify.\r\n",
   6228     "",
   6229     {0,
   6230     BIT(0) | BIT(1)},
   6231     1,
   6232     (VAL_PROC_PTR)NULL
   6233   },
   6234   {
   6235     PARAM_PSS_TEST_ID,
   6236     "test",
   6237     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6238     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6239     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6240     0,0,0,0,0,0,0,
   6241     "Testing and develop utilities for the PSS module",
   6242     "Examples:\r\n"
   6243     "  pss test send_buff destination_pp_id 2 buff_size 13 data 0x1234 0x7654\n\r"
   6244     "Send buffer with 13 bytes (byte-0: 0x0, b-1:0x0, b-2 0x12, b-3 0x34...),\n\r"
   6245     "  to packet processor with identifier 2. If less data is given pending\n\r"
   6246     "  of zeros is done. If more data is given, the extra bytes are ignored.",
   6247     "",
   6248     {0,
   6249      0,
   6250      BIT(1) | BIT(2) | BIT(3) | BIT(4)},
   6251     1,
   6252     (VAL_PROC_PTR)NULL
   6253   },
   6254   {
   6255     PARAM_PSS_LEARN_ENABLE_ID,
   6256     "learn_enable",
   6257     (PARAM_VAL_RULES *)&Pss_learn_enable_vals[0],
   6258     (sizeof(Pss_learn_enable_vals) / sizeof(Pss_learn_enable_vals[0])) - 1,
   6259     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6260     0,0,0,0,0,0,0,
   6261     "Control learning of new MAC addresses in received packets.",
   6262     "Example:\r\n"
   6263     "  pss bridge learn_enable off\r\n"
   6264     "Set PP to not auto-learn new mac address.\r\n",
   6265     "",
   6266     {BIT(24)},
   6267     2,
   6268     (VAL_PROC_PTR)NULL
   6269   },
   6270   {
   6271     PARAM_PSS_UNKNOWN_CMD_ID,
   6272     "unknown_cmd",
   6273     (PARAM_VAL_RULES *)&Pss_unknown_cmd_vals[0],
   6274     (sizeof(Pss_unknown_cmd_vals) / sizeof(Pss_unknown_cmd_vals[0])) - 1,
   6275     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6276     0,0,0,0,0,0,0,
   6277     "How to forward packets with unknown/changed SA if learn is disable.",
   6278     "Example:\r\n"
   6279     "  pss bridge learn_enable off unknown_cmd drop\r\n"
   6280     "Set PP to not auto-learn new mac address and drop all packet\r\n"
   6281     "  received from un-known source addresses",
   6282     "",
   6283     {BIT(24)},
   6284     LAST_ORDINAL,
   6285     (VAL_PROC_PTR)NULL
   6286   },
   6287   {
   6288     PARAM_PSS_DEL_MAC_ENTRY_ID,
   6289     "delete_mac_entry",
   6290     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6291     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6292     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6293     0,0,0,0,0,0,0,
   6294     "Deletes an existing entry in MAC address table.",
   6295     "Example:\r\n"
   6296     "  pss bridge delete_mac_entry vlan_id 1 dest_addr 756767676767\r\n"
   6297     "Deletes the existing entry in MAC address table on Vlan 1 with MAC address\r\n"
   6298     "0x756767676767\r\n",
   6299     "",
   6300     {BIT(27)},
   6301     2,
   6302     (VAL_PROC_PTR)NULL
   6303   },
   6304   {
   6305     PARAM_PSS_ADD_MAC_ENTRY_ID,
   6306     "add_mac_entry",
   6307     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6308     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6309     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6310     0,0,0,0,0,0,0,
   6311     "Creates the new entry in MAC address table.",
   6312     "Example:\r\n"
   6313     "  pss bridge add_mac_entry vlan_id 1 dest_addr 756767676767\r\n"
   6314     "  device 0 unit 0 port 10 source_traffic_class 4\r\n"
   6315     "Creates the new entry in MAC address table on Vlan 1 with MAC address\r\n"
   6316     "0x756767676767, which is assigned to unit;device;port = 0;0;10. If this\r\n"
   6317     "MAC is found to be the source address of an incoming, untagged, packet on\r\n"
   6318     "that port, the packet is assigned traffic class 4\r\n"
   6319     "NOTE: This command may also be used to update an existing MAC table entry!\r\n",
   6320     "",
   6321     {BIT(22)},
   6322     2,
   6323     (VAL_PROC_PTR)NULL
   6324   },
   6325   {
   6326     PARAM_PSS_SRC_TRAFFIC_CLASS_ID,
   6327     "source_traffic_class",
   6328     (PARAM_VAL_RULES *)&Traffic_class_vals[0],
   6329     (sizeof(Traffic_class_vals) / sizeof(Traffic_class_vals[0])) - 1,
   6330     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Traffic_class_default,
   6331     0,0,0,0,0,0,0,
   6332     "Traffic class to assign to incoming packet with specified source-MAC;VLAN.",
   6333     "Example:\r\n"
   6334     "  pss bridge add_mac_entry vlan_id 1 dest_addr 756767676767\r\n"
   6335     "  device 0 unit 0 port 10 source_traffic_class 4\r\n"
   6336     "Creates the new entry in MAC address table on Vlan 1 with MAC address\r\n"
   6337     "0x756767676767, which is assigned to unit;device;port = 0;0;10. If this\r\n"
   6338     "MAC is found to be the source address of an incoming, untagged, packet on\r\n"
   6339     "that port, the packet is assigned traffic class 4\r\n",
   6340     "",
   6341     {BIT(22)},
   6342     LAST_ORDINAL,
   6343     (VAL_PROC_PTR)NULL
   6344   },
   6345   {
   6346     PARAM_PSS_DST_TRAFFIC_CLASS_ID,
   6347     "dest_traffic_class",
   6348     (PARAM_VAL_RULES *)&Traffic_class_vals[0],
   6349     (sizeof(Traffic_class_vals) / sizeof(Traffic_class_vals[0])) - 1,
   6350     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Traffic_class_default,
   6351     0,0,0,0,0,0,0,
   6352     "Traffic class to assign to incoming packet with specified dest-MAC;VLAN.",
   6353     "Example:\r\n"
   6354     "  pss bridge add_mac_entry vlan_id 1 dest_addr 756767676767\r\n"
   6355     "  device 0 unit 0 port 10 dest_traffic_class 4\r\n"
   6356     "Creates the new entry in MAC address table on Vlan 1 with MAC address\r\n"
   6357     "0x756767676767, which is assigned to unit;device;port = 0;0;10. If this\r\n"
   6358     "MAC is found to be the destination address of an incoming, untagged, packet on\r\n"
   6359     "that port, the packet is assigned traffic class 4\r\n",
   6360     "",
   6361     {BIT(22)},
   6362     LAST_ORDINAL,
   6363     (VAL_PROC_PTR)NULL
   6364   },
   6365   {
   6366     PARAM_PSS_NOF_CONSECUTIVE_MACS_ID,
   6367     "nof_consecutive_macs",
   6368     (PARAM_VAL_RULES *)&Pss_nof_consecutive_macs_vals[0],
   6369     (sizeof(Pss_nof_consecutive_macs_vals) / sizeof(Pss_nof_consecutive_macs_vals[0])) - 1,
   6370     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_nof_consecutive_macs_default,
   6371     0,0,0,0,0,0,0,
   6372     "Create several MACs. There address are incrementing.\n\r"
   6373     "  NOTE: If bigger than 1, the 16 lower bits gets overwritten.",
   6374     "Example:\r\n"
   6375     "  pss bridge add_mac_entry vlan_id 1 dest_addr 75676767FFFF nof_consecutive_macs 11\r\n"
   6376     "  device 0 unit 0 port 10 dest_traffic_class 4\r\n"
   6377     "Creates 11 new entry in MAC address table on Vlan 1 with MAC addressed\r\n"
   6378     "0x756767670000, 0x756767670001, 0x756767670002 .., 0x75676767000A\r\n",
   6379     "",
   6380     {BIT(22)},
   6381     LAST_ORDINAL,
   6382     (VAL_PROC_PTR)NULL
   6383   },
   6384   {
   6385     PARAM_PSS_INCREMENT_DEVICE_ID_EVERY_N_ID,
   6386     "increment_unit_every_n",
   6387     (PARAM_VAL_RULES *)&Pss_increment_unit_every_n_vals[0],
   6388     (sizeof(Pss_increment_unit_every_n_vals) / sizeof(Pss_increment_unit_every_n_vals[0])) - 1,
   6389     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_increment_unit_every_n_default,
   6390     0,0,0,0,0,0,0,
   6391     "If appears, increment the device every N MAC addresses.",
   6392     "Example:\r\n"
   6393     "  pss bridge add_mac_entry vlan_id 1 dest_addr 75676767FFFF nof_consecutive_macs 11 increment_unit_every_n 2\r\n"
   6394     "  device 0 unit 0 port 10 dest_traffic_class 4\r\n"
   6395     "Creates 11 new entry in MAC address table on Vlan 1 with MAC addressed\r\n"
   6396     "  0x756767670000, 0x756767670001, 0x756767670002 .., 0x75676767000A\r\n"
   6397     "  The fisrt 2 use device 0, the next 2 device id 1, ...\n\r",
   6398     "",
   6399     {BIT(22)},
   6400     LAST_ORDINAL,
   6401     (VAL_PROC_PTR)NULL
   6402   },
   6403   {
   6404     PARAM_PSS_PRINT_TABLE_ID,
   6405     "print_table",
   6406     (PARAM_VAL_RULES *)&Pss_table_vals[0],
   6407     (sizeof(Pss_table_vals) / sizeof(Pss_table_vals[0])) - 1,
   6408     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6409     0,0,0,0,0,0,0,
   6410     "Pretty-print specific table.",
   6411     "Example:\r\n"
   6412     "  pss test print_table vlan_table\r\n"
   6413     "Results in printing the VLAN table\r\n",
   6414     "",
   6415     {BIT(21)},
   6416     2,
   6417     (VAL_PROC_PTR)NULL
   6418   },
   6419   {
   6420     PARAM_PSS_VLAN_ID,
   6421     "vlan_id",
   6422     (PARAM_VAL_RULES *)&Vlan_id_vals[0],
   6423     (sizeof(Vlan_id_vals) / sizeof(Vlan_id_vals[0])) - 1,
   6424     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   6425     0,0,0,0,0,0,0,
   6426     "vlan_id for the MAC table.",
   6427     "Example:\r\n"
   6428     "  pss test print_table mac_address_table vlan_id 1\r\n"
   6429     "Results in printing the VLAN table\r\n",
   6430     "",
   6431     {BIT(21)},
   6432     LAST_ORDINAL,
   6433     (VAL_PROC_PTR)NULL
   6434   },
   6435   {
   6436     PARAM_PSS_TEST_DMA_STATUS_ID,
   6437     "dma_status",
   6438     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6439     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6440     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6441     0,0,0,0,0,0,0,
   6442     "Print DMA status.",
   6443     "Examples:\r\n"
   6444     "  pss test dma_status\n\r"
   6445     "Print DMA status.",
   6446     "",
   6447     {0,
   6448      0,
   6449      BIT(3)},
   6450     2,
   6451     (VAL_PROC_PTR)NULL
   6452   },
   6453   {
   6454     PARAM_PSS_TEST_SEND_BUFF_TO_CORE_ID,
   6455     "send_buff_to_core",
   6456     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6457     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6458     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6459     0,0,0,0,0,0,0,
   6460     "Send buffer to other PP utility. Testing the XDR and IPC. Develop purposes.",
   6461     "Examples:\r\n"
   6462     "  pss test send_buff_to_core destination_pp_id 2 buff_size 13 data 0x1234 0x7654\n\r"
   6463     "Send buffer with 13 bytes (byte-0: 0x0, b-1:0x0, b-2 0x12, b-3 0x34...),\n\r"
   6464     "  to packet processor with identifier 2. If less data is given pending\n\r"
   6465     "  of zeros is done. If more data is given, the extra bytes are ignored.",
   6466     "",
   6467     {0,
   6468      0,
   6469      BIT(1)},
   6470     2,
   6471     (VAL_PROC_PTR)NULL
   6472   },
   6473   {
   6474     PARAM_PSS_TEST_SEND_BUFF_TO_TAPI_ID,
   6475     "send_buff_to_tapi",
   6476     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6477     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6478     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6479     0,0,0,0,0,0,0,
   6480     "Send buffer to other PP utility. Testing the XDR and IPC. Develop purposes.",
   6481     "Examples:\r\n"
   6482     "  pss test send_buff_to_tapi buff_size 13 data 0x1234 0x7654\n\r"
   6483     "Send buffer with 13 bytes (byte-0: 0x0, b-1:0x0, b-2 0x12, b-3 0x34...),\n\r"
   6484     "  to TAPI. If less data is given pending\n\r"
   6485     "  of zeros is done. If more data is given, the extra bytes are ignored.",
   6486     "",
   6487     {0,
   6488      0,
   6489      BIT(2)},
   6490     2,
   6491     (VAL_PROC_PTR)NULL
   6492   },
   6493   {
   6494     PARAM_PSS_DESTINATION_PP_ID_ID,
   6495     "destination_pp_id",
   6496     (PARAM_VAL_RULES *)&Pss_destination_pp_id_vals[0],
   6497     (sizeof(Pss_destination_pp_id_vals) / sizeof(Pss_destination_pp_id_vals[0])) - 1,
   6498     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   6499     0,0,0,0,0,0,0,
   6500     "Packet processor identifier",
   6501     "Examples:\r\n"
   6502     "  pss test send_buff_to_core destination_pp_id 2 buff_size 13 data 0x1234 0x7654\n\r"
   6503     "Send buffer with 13 bytes (byte-0: 0x0, b-1:0x0, b-2 0x12, b-3 0x34...),\n\r"
   6504     "  to packet processor with identifier 2. If less data is given padding\n\r"
   6505     "  of zeros is done. If more data is given, the extra bytes are ignored.",
   6506     "",
   6507     {0,
   6508      0,
   6509      BIT(1)},
   6510     3,
   6511     (VAL_PROC_PTR)NULL
   6512   },
   6513   {
   6514     PARAM_PSS_DESTINATION_NOT_PP_ID_ID,
   6515     "destination_other_unit",
   6516     (PARAM_VAL_RULES *)&Pss_destination_fe_id_vals[0],
   6517     (sizeof(Pss_destination_fe_id_vals) / sizeof(Pss_destination_fe_id_vals[0])) - 1,
   6518     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   6519     0,0,0,0,0,0,0,
   6520     "Packet processor identifier",
   6521     "Examples:\r\n"
   6522     "  pss test send_buff_to_core destination_other_unit 2 buff_size 13 data 0x1234 0x7654\n\r"
   6523     "Send buffer with 13 bytes (byte-0: 0x0, b-1:0x0, b-2 0x12, b-3 0x34...),\n\r"
   6524     "  to other device (probably FE) with identifier 2. If less data is given padding\n\r"
   6525     "  of zeros is done. If more data is given, the extra bytes are ignored.",
   6526     "",
   6527     {0,
   6528      0,
   6529      BIT(1)},
   6530     3,
   6531     (VAL_PROC_PTR)NULL
   6532   },
   6533   {
   6534     PARAM_PSS_TEST_BUFF_SIZE_ID,
   6535     "buff_size",
   6536     (PARAM_VAL_RULES *)&Pss_buff_size_vals[0],
   6537     (sizeof(Pss_buff_size_vals) / sizeof(Pss_buff_size_vals[0])) - 1,
   6538     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6539     0,0,0,0,0,0,0,
   6540     "buffer size (in bytes) to send",
   6541     "Examples:\r\n"
   6542     "  pss test send_buff_to_core destination_pp_id 2 buff_size 13 data 0x1234 0x7654\n"
   6543     "Send buffer with 13 bytes (byte-0: 0x0, b-1:0x0, b-2 0x12, b-3 0x34...),\n\r"
   6544     "  to packet processor with identifier 2. If less data is given pending\n\r"
   6545     "  of zeros is done. If more data is given, the extra bytes are ignored.",
   6546     "",
   6547     {0,
   6548      0,
   6549      BIT(1) | BIT(2) },
   6550     4,
   6551     (VAL_PROC_PTR)NULL
   6552   },
   6553   {
   6554     PARAM_PSS_DATA_ID,
   6555     "data",
   6556     (PARAM_VAL_RULES *)&Pss_data_vals[0],
   6557     (sizeof(Pss_data_vals) / sizeof(Pss_data_vals[0])) - 1,
   6558     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6559     0,0,0,0,0,0,0,
   6560     "buffer data",
   6561     "Examples:\r\n"
   6562     "  pss test send_buff_to_core destination_pp_id 2 buff_size 13 data 0x1234 0x7654\n"
   6563     "Send buffer with 13 bytes (byte-0: 0x0, b-1:0x0, b-2 0x12, b-3 0x34...),\n\r"
   6564     "  to packet processor with identifier 2. If less data is given pending\n\r"
   6565     "  of zeros is done. If more data is given, the extra bytes are ignored.",
   6566     "",
   6567     {0,
   6568      0,
   6569      BIT(1) | BIT(2) },
   6570     5,
   6571     (VAL_PROC_PTR)NULL
   6572   },
   6573   {
   6574     PARAM_PSS_TEST_SEND_BUFF_TO_CORE_DEFERRED_ID,
   6575     "deferred",
   6576     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6577     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6578     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   6579     0,0,0,0,0,0,0,
   6580     "Deferred call. Sending to core with NON_BLOCKED. Wait for sec and GET_RESULT.",
   6581     "Examples:\r\n"
   6582     "  pss test send_buff_to_core destination_pp_id 2 buff_size 13 data 0x1234 0x7654 deferred\n"
   6583     "Send buffer with 13 bytes (byte-0: 0x0, b-1:0x0, b-2 0x12, b-3 0x34...),\n\r"
   6584     "  to packet processor with identifier 2. If less data is given pending\n\r"
   6585     "  of zeros is done. If more data is given, the extra bytes are ignored.\n\r"
   6586     "  Sending to core with NON_BLOCKED. Wait for sec and GET_RESULT, through IPC.",
   6587     "",
   6588     {0,
   6589      0,
   6590      BIT(1) | BIT(2) },
   6591     5,
   6592     (VAL_PROC_PTR)NULL
   6593   },
   6594   {
   6595     PARAM_PSS_MODULE_CLOSE,
   6596     "module_close",
   6597     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   6598     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   6599     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6600     0,0,0,0,0,0,0,
   6601     "Close the PSS module",
   6602     "Examples:\r\n"
   6603     "  pss module_close\n",
   6604     "",
   6605     {BIT(1)},
   6606     1,
   6607     (VAL_PROC_PTR)NULL
   6608   },
   6609   {
   6610     PARAM_PSS_VLAN_SELECT_LEARNING_MODE_ID,
   6611     "select_learning_mode",
   6612     (PARAM_VAL_RULES *)&Learning_mode_vals[0],
   6613     (sizeof(Learning_mode_vals) / sizeof(Learning_mode_vals[0])) - 1,
   6614     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6615     0,0,0,0,0,0,0,
   6616     "Select VLAN related learning mode: Individual or Shared.",
   6617     "Examples:\r\n"
   6618     "  pss vlan select_learning_mode shared\r\n"
   6619     "Results in selecting shared learning mode on master and all slaves:\r\n"
   6620     "Only Mac address goes into the learning table and is used as a station\r\n"
   6621     "identifier.\r\n",
   6622     "",
   6623     {BIT(3)},
   6624     2,
   6625     (VAL_PROC_PTR)NULL
   6626   },
   6627   {
   6628     PARAM_PSS_VLAN_CPU_INCLUDED_ID,
   6629     "cpu_included",
   6630     (PARAM_VAL_RULES *)&Cpu_included_vals[0],
   6631     (sizeof(Cpu_included_vals) / sizeof(Cpu_included_vals[0])) - 1,
   6632     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Cpu_included_default,
   6633     0,0,0,0,0,0,0,
   6634     "Select VLAN option: Add this CPU to a newly created Vlan or not.",
   6635     "Example:\r\n"
   6636     "  pss vlan create_new standard_port vlan_id 14 unit 0 device 1 port 2\r\n"
   6637     "  port_tagged on cpu_included on\r\n"
   6638     "Create a new vlan whose id is \'14\' and add to it a standard port (not trunk\r\n"
   6639     "port). New port is on unit 0, device 1, port 2. New port is tagged. CPU is\r\n"
   6640     "a member of this Vlan.\r\n",
   6641     "",
   6642     {BIT(5) | BIT(7) | BIT(16) | BIT(18)},
   6643     (unsigned int)LAST_ORDINAL,
   6644     (VAL_PROC_PTR)NULL
   6645   },
   6646   {
   6647     PARAM_PSS_VLAN_PORT_TAGGED_ID,
   6648     "port_tagged",
   6649     (PARAM_VAL_RULES *)&Port_tagged_vals[0],
   6650     (sizeof(Port_tagged_vals) / sizeof(Port_tagged_vals[0])) - 1,
   6651     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Port_tagged_default,
   6652     0,0,0,0,0,0,0,
   6653     "Select VLAN option: Tag all incoming packets or not.",
   6654     "Example:\r\n"
   6655     "  pss vlan create_new standard_port vlan_id 14 unit 0 device 1 port 2\r\n"
   6656     "  port_tagged on cpu_included on\r\n"
   6657     "Create a new vlan whose id is \'14\' and add to it a standard port (not trunk\r\n"
   6658     "port). New port is on unit 0, device 1, port 2. New port is tagged. CPU is\r\n"
   6659     "a member of this Vlan.\r\n",
   6660     "",
   6661     {BIT(4) | BIT(5) | BIT(13) | BIT(14) | BIT(15) | BIT(16)},
   6662     (unsigned int)LAST_ORDINAL,
   6663     (VAL_PROC_PTR)NULL
   6664   },
   6665   {
   6666     PARAM_PSS_PORT_ID,
   6667     "port",
   6668     (PARAM_VAL_RULES *)&Port_vals[0],
   6669     (sizeof(Port_vals) / sizeof(Port_vals[0])) - 1,
   6670     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6671     0,0,0,0,0,0,0,
   6672     "Select PORT identifier.",
   6673     "Example:\r\n"
   6674     "  pss vlan create_new standard_port vlan_id 14 unit 0 device 1 port 2\r\n"
   6675     "Create a new vlan whose id is \'14\' and add to it a standard port (not trunk\r\n"
   6676     "port). New port is on unit 0, device 1, port 2. New port is NOT tagged. CPU is\r\n"
   6677     "NOT a member of this Vlan.\r\n",
   6678     "",
   6679     {BIT(5) | BIT(7) | BIT(10) | BIT(13) | BIT(15) |
   6680      BIT(17) | BIT(22) | BIT(24) | BIT(25) | BIT(28),
   6681      0,
   6682      BIT(4) | BIT(5) | BIT(6) | BIT(7) | BIT(8)},
   6683     (unsigned int)LAST_ORDINAL,
   6684     (VAL_PROC_PTR)NULL
   6685   },
   6686   {
   6687     PARAM_PSS_DEVICE_ID,
   6688     "device",
   6689     (PARAM_VAL_RULES *)&Device_vals[0],
   6690     (sizeof(Device_vals) / sizeof(Device_vals[0])) - 1,
   6691     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_device_default,
   6692     0,0,0,0,0,0,0,
   6693     "Select DEVICE identifier.",
   6694     "Example:\r\n"
   6695     "  pss vlan create_new standard_port vlan_id 14 unit 0 device 1 port 2\r\n"
   6696     "Create a new vlan whose id is \'14\' and add to it a standard port (not trunk\r\n"
   6697     "port). New port is on unit 0, device 1, port 2. New port is NOT tagged. CPU is\r\n"
   6698     "NOT a member of this Vlan.\r\n",
   6699     "",
   6700     {BIT(5) | BIT(7) | BIT(10) | BIT(13) | BIT(15) |
   6701      BIT(17) | BIT(22) | BIT(24) | BIT(25) | BIT(28),
   6702      BIT(0) | BIT(1),
   6703      BIT(4) | BIT(5) | BIT(6) | BIT(7) | BIT(8)},
   6704     (unsigned int)LAST_ORDINAL,
   6705     (VAL_PROC_PTR)NULL
   6706   },
   6707   {
   6708     PARAM_PSS_UNIT_ID,
   6709     "unit",
   6710     (PARAM_VAL_RULES *)&Unit_vals[0],
   6711     (sizeof(Unit_vals) / sizeof(Unit_vals[0])) - 1,
   6712     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_unit_default,
   6713     0,0,0,0,0,0,0,
   6714     "Select UNIT identifier.",
   6715     "Example:\r\n"
   6716     "  pss vlan create_new standard_port vlan_id 14 unit 0 device 1 port 2\r\n"
   6717     "Create a new vlan whose id is \'14\' and add to it a standard port (not trunk\r\n"
   6718     "port). New port is on unit 0, device 1, port 2. New port is NOT tagged. CPU is\r\n"
   6719     "NOT a member of this Vlan.\r\n",
   6720     "",
   6721     {BIT(5) | BIT(7) | BIT(10) | BIT(13) | BIT(15) | BIT(17) |
   6722      BIT(22) | BIT(24) | BIT(25) | BIT(28),
   6723      0,
   6724      BIT(4) | BIT(5) | BIT(6)  | BIT(7) | BIT(8)},
   6725     (unsigned int)LAST_ORDINAL,
   6726     (VAL_PROC_PTR)NULL
   6727   },
   6728   {
   6729     PARAM_PSS_VLAN_ID_ID,
   6730     "vlan_id",
   6731     (PARAM_VAL_RULES *)&Vlan_id_vals[0],
   6732     (sizeof(Vlan_id_vals) / sizeof(Vlan_id_vals[0])) - 1,
   6733     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6734     0,0,0,0,0,0,0,
   6735     "Select VLAN identifier.",
   6736     "Example:\r\n"
   6737     "  pss vlan create_new standard_port vlan_id 14 unit 0 device 1 port 2\r\n"
   6738     "Create a new vlan whose id is \'14\' and add to it a standard port (not trunk\r\n"
   6739     "port). New port is on unit 0, device 1, port 2. New port is NOT tagged. CPU is\r\n"
   6740     "NOT a member of this Vlan.\r\n",
   6741     "",
   6742     {BIT(4) | BIT(5)  | BIT(6)  | BIT(7)  | BIT(10) |
   6743     BIT(13) | BIT(14) | BIT(15) | BIT(16) | BIT(17) |
   6744     BIT(18) | BIT(19) | BIT(25) | BIT(22) |
   6745     BIT(26) | BIT(27),
   6746     BIT(9)},
   6747     (unsigned int)LAST_ORDINAL,
   6748     (VAL_PROC_PTR)NULL
   6749   },
   6750   {
   6751     PARAM_PSS_ID_OF_TRUNK_PORT_ID,
   6752     "id_of_trunk_port",
   6753     (PARAM_VAL_RULES *)&Id_of_trunk_port_vals[0],
   6754     (sizeof(Id_of_trunk_port_vals) / sizeof(Id_of_trunk_port_vals[0])) - 1,
   6755     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6756     0,0,0,0,0,0,0,
   6757     "Select TRUNK port identifier.",
   6758     "Example:\r\n"
   6759     "  pss vlan create_new trunk_port vlan_id 14 id_of_trunk_port 2\r\n"
   6760     "Create a new vlan whose id is \'14\' and add to it a trunk port (not standard\r\n"
   6761     "port). New trunk port id is 2. New port is NOT tagged. CPU is NOT a member\r\n"
   6762     "of this Vlan.\r\n",
   6763     "",
   6764     {BIT(4) | BIT(6) | BIT(14) | BIT(16) | BIT(18) |
   6765      BIT(19) | BIT(26) | BIT(29)},
   6766     (unsigned int)LAST_ORDINAL,
   6767     (VAL_PROC_PTR)NULL
   6768   },
   6769   {
   6770     PARAM_PSS_MAC_ADDR_ID_ID,
   6771     "mac_addr",
   6772     (PARAM_VAL_RULES *)&Mac_addr_vals[0],
   6773     (sizeof(Mac_addr_vals) / sizeof(Mac_addr_vals[0])) - 1,
   6774     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   6775     0,0,0,0,0,0,0,
   6776     "Select MAC address identifier.",
   6777     "Example:\r\n"
   6778     "  pss multicast add_port standard_port vlan_id 14 mac_addr beeb1234beeb unit 0\r\n"
   6779     "  device 1 port 2 \r\n"
   6780     "Add a port to an existing multicast group on vlan whose id is \'14\'. This is a\r\n"
   6781     "standard port (not trunk port). New port is on unit 0, device 1, port 2.\r\n",
   6782     "",
   6783     {BIT(6) | BIT(7) | BIT(10) | BIT(17) | BIT(18) | BIT(19),
   6784     BIT(9)},
   6785     (unsigned int)LAST_ORDINAL,
   6786     (VAL_PROC_PTR)NULL
   6787   },
   6788   {
   6789     PARAM_PSS_INDEX_ID,
   6790     "index",
   6791     (PARAM_VAL_RULES *)&Pss_index_vals[0],
   6792     (sizeof(Pss_index_vals) / sizeof(Pss_index_vals[0])) - 1,
   6793     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_index_default,
   6794     0,0,0,0,0,0,0,
   6795     "Select index of tx message to display from user table.",
   6796     "Example:\r\n"
   6797     "  pss user_tx_table get index 0\r\n"
   6798     "Results in display of transmit message which the user placed in the table\r\n"
   6799     "at index \'0\' (first message). User either gets message or an indication\r\n"
   6800     "that there is no message to read at that offset in the table.\r\n",
   6801     "",
   6802     {BIT(8)},
   6803     (unsigned int)LAST_ORDINAL,
   6804     (VAL_PROC_PTR)NULL
   6805   },
   6806   {
   6807     PARAM_PSS_LOGICAL_IF_INDEX_ID,
   6808     "logical_if_index",
   6809     (PARAM_VAL_RULES *)&Pss_logical_if_index_vals[0],
   6810     (sizeof(Pss_logical_if_index_vals) / sizeof(Pss_logical_if_index_vals[0])) - 1,
   6811     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_logical_if_index_default,
   6812     0,0,0,0,0,0,0,
   6813     "Select logical interface index to use for this tx message.",
   6814     "Example:\r\n"
   6815     "  pss user_tx_table add tx_by_if entry_id 0 mac_address\r\n"
   6816     "  dead1234dead vlan_id 14 logical_if_index 8\r\n"
   6817     "See full explanation on help of \'add\' and \'tx_by_if\'.\r\n",
   6818     "",
   6819     {0,BIT(11)},
   6820     (unsigned int)LAST_ORDINAL,
   6821     (VAL_PROC_PTR)NULL
   6822   },
   6823   {
   6824     PARAM_PSS_PCKT_DATA_ID,
   6825     "data",
   6826     (PARAM_VAL_RULES *)&Pss_data_mem_vals[0],
   6827     (sizeof(Pss_data_mem_vals) / sizeof(Pss_data_mem_vals[0])) - 1,
   6828     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_data_mem_default,
   6829     0,0,0,0,0,0,0,
   6830     "Select data to send on this message.",
   6831     "Example:\r\n"
   6832     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   6833     "  dead1234dead vlan_id 14 user_priority 2 drop_precedence 1 data 0x1234abcd\r\n"
   6834     "  0x89bead01 data_len 8\r\n"
   6835     "See full explanation on help of \'add\' and \'tx_by_vlan\'. Data on this message\r\n"
   6836     "will be \'1234abcd89bead01\' (8 bytes).\r\n",
   6837     "",
   6838     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   6839     BIT(11) | BIT(9)},
   6840     (unsigned int)LAST_ORDINAL,
   6841       /*
   6842        * Pointer to a function to call after symbolic parameter
   6843        * has been accepted.
   6844        */
   6845     (VAL_PROC_PTR)NULL
   6846   },
   6847   {
   6848     PARAM_PSS_WAIT_BET_GROUPS_ID,
   6849     "wait_between_groups",
   6850     (PARAM_VAL_RULES *)&Pss_wait_between_groups_vals[0],
   6851     (sizeof(Pss_wait_between_groups_vals) / sizeof(Pss_wait_between_groups_vals[0])) - 1,
   6852     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_wait_between_groups_default,
   6853     0,0,0,0,0,0,0,
   6854     "Select time (ms) to wait between transmission of groups of this message.",
   6855     "Example:\r\n"
   6856     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   6857     "  dead1234dead vlan_id 14 num_packets_in_group 2 gap 5 wait_between_groups 10\r\n"
   6858     "See full explanation on help of \'add\' and \'tx_by_vlan\'. This message\r\n"
   6859     "will be sent is groups of 2 and with 5 ms delay between each message.\r\n"
   6860     "Time delay between groups will be 10 ms.\r\n",
   6861     "",
   6862     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   6863     BIT(11) | BIT(9)},
   6864     (unsigned int)LAST_ORDINAL,
   6865     (VAL_PROC_PTR)NULL
   6866   },
   6867   {
   6868     PARAM_PSS_GAP_BET_PCKTS_ID,
   6869     "gap",
   6870     (PARAM_VAL_RULES *)&Pss_gap_vals[0],
   6871     (sizeof(Pss_gap_vals) / sizeof(Pss_gap_vals[0])) - 1,
   6872     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_gap_default,
   6873     0,0,0,0,0,0,0,
   6874     "Select time (ms) to wait between transmission of copies of this message.",
   6875     "Example:\r\n"
   6876     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   6877     "  dead1234dead vlan_id 14 num_packets_in_group 2 gap 5 wait_between_groups 10\r\n"
   6878     "See full explanation on help of \'add\' and \'tx_by_vlan\'. This message\r\n"
   6879     "will be sent is groups of 2 and with 5 ms delay between each message.\r\n"
   6880     "Time delay between groups will be 10 ms.\r\n",
   6881     "",
   6882     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   6883     BIT(11) | BIT(9)},
   6884     (unsigned int)LAST_ORDINAL,
   6885     (VAL_PROC_PTR)NULL
   6886   },
   6887   {
   6888     PARAM_PSS_PCKT_DATA_LEN_ID,
   6889     "data_len",
   6890     (PARAM_VAL_RULES *)&Pss_data_len_vals[0],
   6891     (sizeof(Pss_data_len_vals) / sizeof(Pss_data_len_vals[0])) - 1,
   6892     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_data_len_default,
   6893     0,0,0,0,0,0,0,
   6894     "Select length of data (no. of data bytes) to send on this message.",
   6895     "Example:\r\n"
   6896     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   6897     "  dead1234dead vlan_id 14 user_priority 2 drop_precedence 1 data 0x1234abcd\r\n"
   6898     "  0x89bead01 data_len 8\r\n"
   6899     "See full explanation on help of \'add\' and \'tx_by_vlan\'. Data on this message\r\n"
   6900     "will be \'1234abcd89bead01\' (8 bytes).\r\n",
   6901     "",
   6902     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   6903     BIT(11) | BIT(9)},
   6904     (unsigned int)LAST_ORDINAL,
   6905     (VAL_PROC_PTR)NULL
   6906   },
   6907   {
   6908     PARAM_PSS_PCKTS_NUM_ID,
   6909     "num_packets_in_group",
   6910     (PARAM_VAL_RULES *)&Pss_pckts_num_vals[0],
   6911     (sizeof(Pss_pckts_num_vals) / sizeof(Pss_pckts_num_vals[0])) - 1,
   6912     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_pckts_num_default,
   6913     0,0,0,0,0,0,0,
   6914     "Select number of times to send this messages in one group.",
   6915     "Example:\r\n"
   6916     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   6917     "  dead1234dead vlan_id 14 user_priority 2 drop_precedence 1 traffic_class 1\r\n"
   6918     "  num_packets_in_group 30 gap 3\r\n"
   6919     "See full explanation on help of \'add\' and \'tx_by_vlan\'. 30 copies of this\r\n"
   6920     "message will be sent with time gap of 3 ms between messages.\r\n",
   6921     "",
   6922     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   6923     BIT(11) | BIT(9)},
   6924     (unsigned int)LAST_ORDINAL,
   6925     (VAL_PROC_PTR)NULL
   6926   },
   6927   {
   6928     PARAM_PSS_TAGGED_ID,
   6929     "tag_this_packet",
   6930     (PARAM_VAL_RULES *)&Pss_tagged_vals[0],
   6931     (sizeof(Pss_tagged_vals) / sizeof(Pss_tagged_vals[0])) - 1,
   6932     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_tagged_default,
   6933     0,0,0,0,0,0,0,
   6934     "Select whether to append CRC to this message, when transmitted.",
   6935     "Example:\r\n"
   6936     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   6937     "  dead1234dead vlan_id 14 user_priority 2 drop_precedence 1 traffic_class 1\r\n"
   6938     "  tag_this_packet on\r\n"
   6939     "See full explanation on help of \'add\' and \'tx_by_vlan\'. Message will be added\r\n"
   6940     "802.3P tag when tramsmitted.\r\n",
   6941     "",
   6942     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   6943     BIT(11) | BIT(9)},
   6944     (unsigned int)LAST_ORDINAL,
   6945     (VAL_PROC_PTR)NULL
   6946   },
   6947   {
   6948     PARAM_PSS_APPEND_CRC_ID,
   6949     "append_crc",
   6950     (PARAM_VAL_RULES *)&Pss_append_crc_vals[0],
   6951     (sizeof(Pss_append_crc_vals) / sizeof(Pss_append_crc_vals[0])) - 1,
   6952     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_append_crc_default,
   6953     0,0,0,0,0,0,0,
   6954     "Select whether to append CRC to this message, when transmitted.",
   6955     "Example:\r\n"
   6956     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   6957     "  dead1234dead vlan_id 14 user_priority 2 drop_precedence 1 traffic_class 1\r\n"
   6958     "  append_crc on\r\n"
   6959     "See full explanation on help of \'add\' and \'tx_by_vlan\'. Message will be\r\n"
   6960     "appended CRC when tramsmitted.\r\n",
   6961     "",
   6962     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   6963     BIT(11) | BIT(9)},
   6964     (unsigned int)LAST_ORDINAL,
   6965     (VAL_PROC_PTR)NULL
   6966   },
   6967   {
   6968     PARAM_PSS_ENCAPSULATION_ID,
   6969     "encapsulation",
   6970     (PARAM_VAL_RULES *)&Pss_encapsulation_vals[0],
   6971     (sizeof(Pss_encapsulation_vals) / sizeof(Pss_encapsulation_vals[0])) - 1,
   6972     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_encapsulation_default,
   6973     0,0,0,0,0,0,0,
   6974     "Select encapsulation (control or regular) of tx message to add.",
   6975     "Example:\r\n"
   6976     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   6977     "  dead1234dead vlan_id 14 user_priority 2 drop_precedence 1 traffic_class 1\r\n"
   6978     "  encapsulation control\r\n"
   6979     "See full explanation on help of \'add\' and \'tx_by_vlan\'. Message is assigned\r\n"
   6980     "\'control\' encapsulation which means that it is NOT subject to egress bridge\r\n"
   6981     "filtering due to VLAN egress filtering or Spanning Tree filtering\r\n",
   6982     "",
   6983     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   6984     BIT(11) | BIT(9)},
   6985     (unsigned int)LAST_ORDINAL,
   6986     (VAL_PROC_PTR)NULL
   6987   },
   6988   {
   6989     PARAM_PSS_TRAFFIC_CLASS_ID,
   6990     "traffic_class",
   6991     (PARAM_VAL_RULES *)&Pss_traffic_class_vals[0],
   6992     (sizeof(Pss_traffic_class_vals) / sizeof(Pss_traffic_class_vals[0])) - 1,
   6993     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_traffic_class_default,
   6994     0,0,0,0,0,0,0,
   6995     "Select egress tx traffic class queue (range 0-7) of tx message to add.",
   6996     "Example:\r\n"
   6997     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   6998     "  dead1234dead vlan_id 14 user_priority 2 drop_precedence 1 traffic_class 1\r\n"
   6999     "See full explanation on help of \'add\' and \'tx_by_vlan\'.\r\n",
   7000     "",
   7001     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   7002     BIT(11) | BIT(9)},
   7003     (unsigned int)LAST_ORDINAL,
   7004     (VAL_PROC_PTR)NULL
   7005   },
   7006   {
   7007     PARAM_PSS_DROP_PRECEDENCE_ID,
   7008     "drop_precedence",
   7009     (PARAM_VAL_RULES *)&Pss_drop_precedence_vals[0],
   7010     (sizeof(Pss_drop_precedence_vals) / sizeof(Pss_drop_precedence_vals[0])) - 1,
   7011     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_drop_precedence_default,
   7012     0,0,0,0,0,0,0,
   7013     "Select drop precedence (color, range 0-2) of tx message to add to user table.",
   7014     "Example:\r\n"
   7015     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   7016     "  dead1234dead vlan_id 14 user_priority 2 drop_precedence 1\r\n"
   7017     "See full explanation on help of \'add\' and \'tx_by_vlan\'.\r\n",
   7018     "",
   7019     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   7020     BIT(11) | BIT(9)},
   7021     (unsigned int)LAST_ORDINAL,
   7022     (VAL_PROC_PTR)NULL
   7023   },
   7024   {
   7025     PARAM_PSS_USER_PRIORITY_ID,
   7026     "user_priority",
   7027     (PARAM_VAL_RULES *)&Pss_user_priority_vals[0],
   7028     (sizeof(Pss_user_priority_vals) / sizeof(Pss_user_priority_vals[0])) - 1,
   7029     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_user_priority_default,
   7030     0,0,0,0,0,0,0,
   7031     "Select IEEE802.1P priority (range 0-7) of tx message to add to user table.",
   7032     "Example:\r\n"
   7033     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   7034     "  dead1234dead vlan_id 14 user_priority 2\r\n"
   7035     "See full explanation on help of \'add\' and \'tx_by_vlan\'.\r\n",
   7036     "",
   7037     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   7038     BIT(11) | BIT(9)},
   7039     (unsigned int)LAST_ORDINAL,
   7040     (VAL_PROC_PTR)NULL
   7041   },
   7042   {
   7043     PARAM_PSS_ENTRY_ID_ID,
   7044     "entry_id",
   7045     (PARAM_VAL_RULES *)&Pss_entry_id_vals[0],
   7046     (sizeof(Pss_entry_id_vals) / sizeof(Pss_entry_id_vals[0])) - 1,
   7047     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_entry_id_default,
   7048     0,0,0,0,0,0,0,
   7049     "Select entry_id of tx message to add to user table.",
   7050     "Example:\r\n"
   7051     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   7052     "  dead1234dead vlan_id 14\r\n"
   7053     "See full explanation on help of \'add\' and \'tx_by_vlan\'.\r\n",
   7054     "",
   7055     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   7056     BIT(11) | BIT(9)},
   7057     (unsigned int)LAST_ORDINAL,
   7058     (VAL_PROC_PTR)NULL
   7059   },
   7060   {
   7061     PARAM_PSS_STANDARD_PORT_TYPE_ID,
   7062     "standard_port",
   7063     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7064     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7065     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7066     0,0,0,0,0,0,0,
   7067     "Select type of port: Standard port (NOT trunk port).",
   7068     "Example:\r\n"
   7069     "  pss vlan create_new standard_port vlan_id 14 unit 0 device 1 port 2\r\n"
   7070     "Create a new vlan whose id is \'14\' and add to it a standard port (not trunk\r\n"
   7071     "port). New port is on unit 0, device 1, port 2. New port is NOT tagged. CPU is\r\n"
   7072     "NOT a member of this Vlan.\r\n",
   7073     "",
   7074     {BIT(5) | BIT(7) | BIT(10) | BIT(13) | BIT(15) |
   7075      BIT(17) | BIT(25) | BIT(28)},
   7076     (unsigned int)5,
   7077     (VAL_PROC_PTR)NULL
   7078   },
   7079   {
   7080     PARAM_PSS_TRUNK_PORT_TYPE_ID,
   7081     "trunk_port",
   7082     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7083     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7084     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7085     0,0,0,0,0,0,0,
   7086     "Select type of port: Trunk port (NOT standard port).",
   7087     "Example:\r\n"
   7088     "  pss vlan create_new trunk_port vlan_id 14 id_of_trunk_port 2\r\n"
   7089     "Create a new vlan whose id is \'14\' and add to it a trunk port (not standard\r\n"
   7090     "port). New trunk port id is 2. New port is NOT tagged. CPU is NOT a member\r\n"
   7091     "of this Vlan.\r\n",
   7092     "",
   7093     {BIT(4) | BIT(6) | BIT(14) | BIT(16) | BIT(18) |
   7094      BIT(19) | BIT(26) | BIT(29)},
   7095     (unsigned int)5,
   7096     (VAL_PROC_PTR)NULL
   7097   },
   7098   {
   7099     PARAM_PSS_EXCLUDE_NO_PORT_ID,
   7100     "exclude_no_port",
   7101     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7102     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7103     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7104     0,0,0,0,0,0,0,
   7105     "Select whether to exclude indicated port from indicated multicast group\r\n"
   7106     "  implied by mac address and vlan id.",
   7107     "Examples:\r\n"
   7108     "  pss user_tx_table add tx_by_vlan exclude_one_port standard_port entry_id 0\r\n"
   7109     "  vlan_id 14 user_priority 2 drop_precedence 1 traffic_class 1 unit 0 device 1\r\n"
   7110     "  port 2 mac_address dead1234dead\r\n"
   7111     "See full explanation on help of \'add\' and \'tx_by_vlan\'. From the multicast group\r\n"
   7112     "implied by mac address \'dead1234dead\' and vlan id \'14\', take out the standard\r\n"
   7113     "port no. 2 on device 1 on unit 0.\r\n"
   7114     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address dead1234dead\r\n"
   7115     "  vlan_id 14 user_priority 2 drop_precedence 1 traffic_class 1"
   7116     "See full explanation on help of \'add\' and \'tx_by_vlan\'. From the multicast group\r\n"
   7117     "implied by mac address \'dead1234dead\' and vlan id \'14\', take out NO port.\r\n",
   7118     "",
   7119     {0,
   7120     BIT(9)},
   7121     (unsigned int)4,
   7122     (VAL_PROC_PTR)NULL
   7123   },
   7124   {
   7125     PARAM_PSS_EXCLUDE_ONE_PORT_ID,
   7126     "exclude_one_port",
   7127     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7128     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7129     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7130     0,0,0,0,0,0,0,
   7131     "Select whether to exclude indicated port from indicated multicast group\r\n"
   7132     "  implied by mac address and vlan id.",
   7133     "Examples:\r\n"
   7134     "  pss user_tx_table add tx_by_vlan exclude_one_port standard_port entry_id 0\r\n"
   7135     "  vlan_id 14 user_priority 2 drop_precedence 1 traffic_class 1 unit 0 device 1\r\n"
   7136     "  port 2 mac_address dead1234dead\r\n"
   7137     "See full explanation on help of \'add\' and \'tx_by_vlan\'. From the multicast group\r\n"
   7138     "implied by mac address \'dead1234dead\' and vlan id \'14\', take out the standard\r\n"
   7139     "port no. 2 on device 1 on unit 0.\r\n"
   7140     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address dead1234dead\r\n"
   7141     "  vlan_id 14 user_priority 2 drop_precedence 1 traffic_class 1"
   7142     "See full explanation on help of \'add\' and \'tx_by_vlan\'. From the multicast group\r\n"
   7143     "implied by mac address \'dead1234dead\' and vlan id \'14\', take out NO port.\r\n",
   7144     "",
   7145     {BIT(10) | BIT(19)},
   7146     (unsigned int)4,
   7147     (VAL_PROC_PTR)NULL
   7148   },
   7149   {
   7150     PARAM_PSS_TX_BY_VLAN_ID,
   7151     "tx_by_vlan",
   7152     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7153     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7154     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7155     0,0,0,0,0,0,0,
   7156     "Select tx_by_vlan command type for transmission of this message.",
   7157     "Example:\r\n"
   7158     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 mac_address\r\n"
   7159     "  dead1234dead vlan_id 14\r\n"
   7160     "Results in adding a transmit message into the table at next available index.\r\n"
   7161     "The message is of \'tx_by_vlan\' type which means the \'mac address/vlan id\'\r\n"
   7162     "conbination is going to be used to identify the port to transmit to (or\r\n"
   7163     "the \'vidx\', in case of multicast). Identifier of entry is \'0\'.\r\n"
   7164     "Mac address is \'dead1234dead\' and vlan id is \'14\'.\r\n"
   7165     "No port is to be excluded from the list indicated by this mac/vlan_id\r\n"
   7166     "combination\r\n"
   7167     "All other parameters get default values:\r\n"
   7168     "IEEE 802.1p User Priority is 3, Drop precedence is 0, Egress tx class queue is\r\n"
   7169     "3. Message is of standard-format and crc is appended. Message is to be\r\n"
   7170     "transmitted every 4 ms. Data to transmit is of 4 bytes. Data is: 0xAABBCCDD.\r\n",
   7171     "",
   7172     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   7173     BIT(9)},
   7174     3,
   7175     (VAL_PROC_PTR)NULL
   7176   },
   7177   {
   7178     PARAM_PSS_TX_BY_IF_ID,
   7179     "tx_by_if",
   7180     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7181     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7182     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7183     0,0,0,0,0,0,0,
   7184     "Select tx by interface index command type for transmission of this message.",
   7185     "Example:\r\n"
   7186     "  pss user_tx_table add tx_by_if entry_id 0 logical_if_index 8\r\n"
   7187     "Results in adding a transmit message into the table at next available index.\r\n"
   7188     "The message is of \'tx_by_if\' type which means interface index is going to\r\n"
   7189     "be used to identify the port(s) to transmit to. Identifier of entry is \'0\'.\r\n"
   7190     "Message is transmitted to all ports related to logical if no. 8\r\n"
   7191     "All other parameters get default values:\r\n"
   7192     "IEEE 802.1p User Priority is 3, Drop precedence is 0, Egress tx class queue is\r\n"
   7193     "3. Message is of standard-format and crc is appended. Message is to be\r\n"
   7194     "transmitted every 4 ms. Data to transmit is of 4 bytes. Data is: 0xAABBCCDD.\r\n",
   7195     "",
   7196     {0,BIT(11)},
   7197     3,
   7198     (VAL_PROC_PTR)NULL
   7199   },
   7200   {
   7201     PARAM_PSS_TX_BY_LPORT_ID,
   7202     "tx_by_lport",
   7203     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7204     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7205     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7206     0,0,0,0,0,0,0,
   7207     "Select tx by logical port command type for transmission of this message.",
   7208     "Example:\r\n"
   7209     "  pss user_tx_table add tx_by_lport trunk_port entry_id 0 id_of_trunk_port 2\r\n"
   7210     "  vlan_id 12\r\n"
   7211     "Results in adding a transmit message into the table at next available index.\r\n"
   7212     "The message is of \'tx_by_lport\' type which means logical port is going to\r\n"
   7213     "be used to identify the port(s) to transmit to. Identifier of entry is \'0\'.\r\n"
   7214     "Message is transmitted to all ports related to trunk port identified as no. 2\r\n"
   7215     "and vlan no. 12 (vidx)\r\n"
   7216     "All other parameters get default values:\r\n"
   7217     "IEEE 802.1p User Priority is 3, Drop precedence is 0, Egress tx class queue is\r\n"
   7218     "3. Message is of standard-format and crc is appended. Message is to be\r\n"
   7219     "transmitted every 4 ms. Data to transmit is of 4 bytes. Data is: 0xAABBCCDD.\r\n",
   7220     "",
   7221     {BIT(13) | BIT(14)},
   7222     3,
   7223     (VAL_PROC_PTR)NULL
   7224   },
   7225   {
   7226     PARAM_PSS_ADD_ID,
   7227     "add",
   7228     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7229     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7230     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7231     0,0,0,0,0,0,0,
   7232     "Add message to table of messages to tx which are initiated by the user.",
   7233     "Example:\r\n"
   7234     "  pss user_tx_table add tx_by_vlan exclude_no_port entry_id 0 user_priority 3\r\n"
   7235     "  drop_precedence 0 traffic_class 2 encapsulation regular append_crc on\r\n"
   7236     "  num_packets_in_group 2 gap 3 wait_between_groups 4 data 0x1234abcd 0x89bead01\r\n"
   7237     "  data_len 8 mac_address dead1234dead vlan_id 14\r\n"
   7238     "Results in adding a transmit message into the table at next available index.\r\n"
   7239     "The message is of \'tx_by_vlan\' type which means the \'mac address/vlan id\'\r\n"
   7240     "conbination is going to be used to identify the port to transmit to (or\r\n"
   7241     "the \'vidx\', in case of multicast).\r\n"
   7242     "Identifier of entry is \'0\' and required IEEE 802.1p User Priority is 3\r\n"
   7243     "(range 0-7).\r\n"
   7244     "Drop precedence (\'color\') of message is 0 (range 0-2).\r\n"
   7245     "Egress tx class queue is 2 (range 0-7).\r\n"
   7246     "Specified data is required to be wrapped into a regular-format (non control)\r\n"
   7247     "message and crc is to be added. \'Regular\' messages are subject to egress\r\n"
   7248     "bridge filtering due to VLAN egress filtering or Spanning Tree filtering.\r\n"
   7249     "Message is to be transmitted in groups of two with a time gap of 3 ms between\r\n"
   7250     "messages and 4 ms between groups.\r\n"
   7251     "Data to transmit is of length 8 bytes.\r\n"
   7252     "Data starts with the following bytes (hex format): 0x1234abcd89bead01.\r\n"
   7253     "The mac address and vlan id to use for finding target ports is \'0xDEAD1234DEAD\'\r\n"
   7254     "and \'14\' respectively.\r\n"
   7255     "No port is to be excluded from the list indicated by this mac/vlan_id\r\n"
   7256     "combination\r\n",
   7257     "",
   7258     {BIT(10) | BIT(13) | BIT(14) | BIT(19),
   7259     BIT(11) | BIT(9)},
   7260     2,
   7261     (VAL_PROC_PTR)NULL
   7262   },
   7263   {
   7264     PARAM_PSS_GET_ID,
   7265     "get",
   7266     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7267     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7268     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7269     0,0,0,0,0,0,0,
   7270     "Display message from table of messages to tx which are initiated by the user.",
   7271     "Example:\r\n"
   7272     "  pss user_tx_table get index 0\r\n"
   7273     "Results in display of transmit message which the user placed in the table\r\n"
   7274     "at index \'0\' (first message). User either gets message or an indication\r\n"
   7275     "that there is no message to read at that offset in the table.\r\n",
   7276     "",
   7277     {BIT(8)},
   7278     2,
   7279     (VAL_PROC_PTR)NULL
   7280   },
   7281   {
   7282     PARAM_PSS_ADD_PORT_ID,
   7283     "add_port",
   7284     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7285     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7286     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7287     0,0,0,0,0,0,0,
   7288     "Add a port to an existing VLAN or multicast group",
   7289     "Example:\r\n"
   7290     "  pss vlan add_port standard_port vlan_id 14 unit 0 device 1 port 2\r\n"
   7291     "  port_tagged on\r\n"
   7292     "Add to existing vlan whose id is \'14\' a standard port (not trunk port).\r\n"
   7293     "New port is on unit 0, device 1, port 2. New port is tagged.\r\n",
   7294     "",
   7295     {BIT(4) | BIT(6) | BIT(15) | BIT(17)},
   7296     2,
   7297     (VAL_PROC_PTR)NULL
   7298   },
   7299   {
   7300     PARAM_PSS_CREATE_NEW_ID,
   7301     "create_new",
   7302     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7303     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7304     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7305     0,0,0,0,0,0,0,
   7306     "Create new VLAN or multicast group and add to it at least one port.",
   7307     "Example:\r\n"
   7308     "  pss vlan create_new standard_port vlan_id 14 unit 0 device 1 port 2\r\n"
   7309     "  port_tagged on cpu_included on\r\n"
   7310     "Create a new Vlan whose id is \'14\' and add to it a standard port (not trunk\r\n"
   7311     "port). New port is on unit 0, device 1, port 2. New port is tagged. CPU is also\r\n"
   7312     "a member of this Vlan.\r\n",
   7313     "",
   7314     {BIT(5) | BIT(7) | BIT(16) | BIT(18)},
   7315     2,
   7316     (VAL_PROC_PTR)NULL
   7317   },
   7318   {
   7319     PARAM_PSS_GAP_BETWEEN_CYCLES_ID,
   7320     "gap_between_cycles",
   7321     (PARAM_VAL_RULES *)&Gap_between_cycles_vals[0],
   7322     (sizeof(Gap_between_cycles_vals) / sizeof(Gap_between_cycles_vals[0])) - 1,
   7323     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Gap_between_cycles_default,
   7324     0,0,0,0,0,0,0,
   7325     "Set number of ms to wait between transmission of two consecutive cycles.",
   7326     "Example:\r\n"
   7327     "  pss user_tx_table set_tx_mode num_loop_cycles 3 tot_num_packets 20\r\n"
   7328     "  gap_between_cycles 30\r\n"
   7329     "Results in setting for 3 transmit cycles with a time gap of 30 ms between\r\n"
   7330     "any two consecutive cycles and so that the total number of packets is 20,\r\n"
   7331     "overriding some parameters specified per each table entry.\r\n",
   7332     "",
   7333     {0,
   7334     BIT(21)},
   7335     (unsigned int)LAST_ORDINAL,
   7336     (VAL_PROC_PTR)NULL
   7337   },
   7338   {
   7339     PARAM_PSS_TOT_NUM_PACKETS_ID,
   7340     "tot_num_packets",
   7341     (PARAM_VAL_RULES *)&Tot_num_packets_vals[0],
   7342     (sizeof(Tot_num_packets_vals) / sizeof(Tot_num_packets_vals[0])) - 1,
   7343     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Tot_num_packets_default,
   7344     0,0,0,0,0,0,0,
   7345     "Set total number of packets to transmit next activation.",
   7346     "Example:\r\n"
   7347     "  pss user_tx_table set_tx_mode num_loop_cycles 3 tot_num_packets 20\r\n"
   7348     "  gap_between_cycles 30\r\n"
   7349     "Results in setting for 3 transmit cycles with a time gap of 30 ms between\r\n"
   7350     "any two consecutive cycles and so that the total number of packets is 20,\r\n"
   7351     "overriding some parameters specified per each table entry. The parameter\r\n"
   7352     "\'tot_num_packets\' may also be set to \'as_specified_per_entry\' in which\r\n"
   7353     "case number of packets to transmit is as specified in \'num_packets_in_group\'\r\n"
   7354     "while going through the whole table as per \'num_loop_cycles\'\r\n",
   7355     "",
   7356     {0,
   7357     BIT(21)},
   7358     (unsigned int)LAST_ORDINAL,
   7359     (VAL_PROC_PTR)NULL
   7360   },
   7361   {
   7362     PARAM_PSS_NUM_TX_CYCLES_ID,
   7363     "num_loop_cycles",
   7364     (PARAM_VAL_RULES *)&Num_loop_cycles_vals[0],
   7365     (sizeof(Num_loop_cycles_vals) / sizeof(Num_loop_cycles_vals[0])) - 1,
   7366     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Num_loop_cycles_default,
   7367     0,0,0,0,0,0,0,
   7368     "Set number of cycles of transmit messages to send on next activation.",
   7369     "Example:\r\n"
   7370     "  pss user_tx_table set_tx_mode num_loop_cycles 3 tot_num_packets 20\r\n"
   7371     "  gap_between_cycles 30\r\n"
   7372     "Results in setting for 3 transmit cycles with a time gap of 30 ms between\r\n"
   7373     "any two consecutive cycles and so that the total number of packets is 20,\r\n"
   7374     "overriding some parameters specified per each table entry. The parameter\r\n"
   7375     "\'num_loop_cycles\' may also be set to \'infinite\' in which case transmission\r\n"
   7376     "can only be stopped manually (\'pss user_tx_table stop_tx\')\r\n",
   7377     "",
   7378     {0,
   7379     BIT(21)},
   7380     (unsigned int)LAST_ORDINAL,
   7381     (VAL_PROC_PTR)NULL
   7382   },
   7383   {
   7384     PARAM_PSS_SET_TX_MODE_ID,
   7385     "set_tx_mode",
   7386     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7387     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7388     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7389     0,0,0,0,0,0,0,
   7390     "Set transmit parameters for table of transmit messages prepared by the user.",
   7391     "Example:\r\n"
   7392     "  pss user_tx_table set_tx_mode num_loop_cycles 3 tot_num_packets 20\r\n"
   7393     "  gap_between_cycles 30\r\n"
   7394     "Results in setting for 3 transmit cycles with a time gap of 30 ms between\r\n"
   7395     "any two consecutive cycles and so that the total number of packets is 20,\r\n"
   7396     "overriding some parameters specified per each table entry.\r\n",
   7397     "",
   7398     {0,BIT(21)},
   7399     2,
   7400     (VAL_PROC_PTR)NULL
   7401   },
   7402   {
   7403     PARAM_PSS_TX_ACTION_ID,
   7404     "tx_action",
   7405     (PARAM_VAL_RULES *)&Tx_action_vals[0],
   7406     (sizeof(Tx_action_vals) / sizeof(Tx_action_vals[0])) - 1,
   7407     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7408     0,0,0,0,0,0,0,
   7409     "Selection required action on table of messages: \'start tx\' or \'stop tx\'",
   7410     "Example:\r\n"
   7411     "  pss user_tx_table tx_action start_tx\r\n"
   7412     "Results in spawning the transmit task and starting transmission of contents\r\n"
   7413     "of table as per parameters set via \'set_tx_mode\' and via \'add\' of specific\r\n"
   7414     "entries.\r\n",
   7415     "",
   7416     {0,
   7417     BIT(21)},
   7418     2,
   7419     (VAL_PROC_PTR)NULL
   7420   },
   7421   {
   7422     PARAM_PSS_USER_TX_TABLE_ID,
   7423     "user_tx_table",
   7424     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7425     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7426     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7427     0,0,0,0,0,0,0,
   7428     "Handle table of messages to transmit which are initiated by the user.",
   7429     "Example:\r\n"
   7430     "  pss user_tx_table get index 0\r\n"
   7431     "Results in display of transmit message which the user placed in the table\r\n"
   7432     "at index \'0\' (first message). User either gets message or an indication\r\n"
   7433     "that there is no message to read at that offset in the table.\r\n",
   7434     "",
   7435     {BIT(8) | BIT(10) | BIT(13) |
   7436     BIT(14) | BIT(19),
   7437     BIT(21) | BIT(11) | BIT(9)},
   7438     1,
   7439     (VAL_PROC_PTR)NULL
   7440   },
   7441   {
   7442     PARAM_PSS_NUM_ENTRIES_ID,
   7443     "num_entries",
   7444     (PARAM_VAL_RULES *)&Num_entries_vals[0],
   7445     (sizeof(Buff_size_vals) / sizeof(Buff_size_vals[0])) - 1,
   7446     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   7447     0,0,0,0,0,0,0,
   7448     "Set number of buffers in user table of received messages.",
   7449     "Example:\r\n"
   7450     "  pss user_rx_table set_rx_mode num_entries 100\r\n"
   7451     "Results in setting the number of buffers in user table of received messages\r\n"
   7452     "(number of entries in table). In this case, set number of entries to 100.\r\n"
   7453     "The other two parameters (\'buffer_mode\' and \'buff_size\')\r\n"
   7454     "remain unchanged.\r\n"
   7455     "Note that the whole user table of received messages is cleared!\r\n",
   7456     "",
   7457     {BIT(23)},
   7458     (unsigned int)LAST_ORDINAL,
   7459     (VAL_PROC_PTR)NULL
   7460   },
   7461   {
   7462     PARAM_PSS_BUFF_SIZE_ID,
   7463     "buff_size",
   7464     (PARAM_VAL_RULES *)&Buff_size_vals[0],
   7465     (sizeof(Buff_size_vals) / sizeof(Buff_size_vals[0])) - 1,
   7466     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   7467     0,0,0,0,0,0,0,
   7468     "Set size of each buffer in user table of received messages.",
   7469     "Example:\r\n"
   7470     "  pss user_rx_table set_rx_mode buff_size 2000\r\n"
   7471     "Results in setting the size of each buffer in user table of received\r\n"
   7472     "messages. In this case, all buffers are set to a size of 2000 bytes.\r\n"
   7473     "The other two parameters (\'buffer_mode\' and \'num_entries\')\r\n"
   7474     "remain unchanged.\r\n"
   7475     "Note that the whole user table of received messages is cleared!\r\n",
   7476     "",
   7477     {BIT(23)},
   7478     (unsigned int)LAST_ORDINAL,
   7479     (VAL_PROC_PTR)NULL
   7480   },
   7481   {
   7482     PARAM_PSS_BUFFER_MODE_ID,
   7483     "buffer_mode",
   7484     (PARAM_VAL_RULES *)&Buffer_mode_vals[0],
   7485     (sizeof(Buffer_mode_vals) / sizeof(Buffer_mode_vals[0])) - 1,
   7486     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   7487     0,0,0,0,0,0,0,
   7488     "Set mode of operating user table of received messages: Cyclic or\r\n"
   7489     "  Delete when full (\'fill_once_and_stop\').",
   7490     "Example:\r\n"
   7491     "  pss user_rx_table set_rx_mode buffer_mode fill_once_and_stop\r\n"
   7492     "Results in setting the way user table of received messages should be\r\n"
   7493     "handled. In this case, all buffers should be used untill there is no free\r\n"
   7494     "buffer. After that, messages are dropped until some space is cleared (by\r\n"
   7495     "the user). The other two parameters (\'buff_size\' and \'num_entries\')\r\n"
   7496     "remain unchanged.\r\n"
   7497     "Note that the whole user table of received messages is cleared!\r\n",
   7498     "",
   7499     {BIT(23)},
   7500     (unsigned int)LAST_ORDINAL,
   7501     (VAL_PROC_PTR)NULL
   7502   },
   7503   {
   7504     PARAM_PSS_SET_RX_MODE_ID,
   7505     "set_rx_mode",
   7506     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7507     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7508     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7509     0,0,0,0,0,0,0,
   7510     "Set parameters of handling the table of received (captured) messages.",
   7511     "Example:\r\n"
   7512     "  pss user_rx_table set_rx_mode buffer_mode cyclic buff_size 2000 num_entries 20\r\n"
   7513     "Results in setting (display) of the  3 receive parameters: \r\n"
   7514     "  buffer_mode - \'Cyclic\' or \'fill once and stop\'\r\n"
   7515     "  buff_size   - Packet buffer size (assigned to each entry)\r\n"
   7516     "  num_entries - Number of entries in user rx table\r\n"
   7517     "Note that the whole user table of received messages is cleared!\r\n",
   7518     "",
   7519     {BIT(23)},
   7520     2,
   7521     (VAL_PROC_PTR)NULL
   7522   },
   7523   {
   7524     PARAM_PSS_GET_RX_MODE_ID,
   7525     "get_rx_mode",
   7526     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7527     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7528     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7529     0,0,0,0,0,0,0,
   7530     "Get parameters of handling the table of received (captured) messages.",
   7531     "Example:\r\n"
   7532     "  pss user_rx_table get_rx_mode\r\n"
   7533     "Results in getting (display) of the  3 receive parameters: \r\n"
   7534     "  buffer_mode - \'Cyclic\' or \'fill once and stop\'\r\n"
   7535     "  buff_size   - Packet buffer size (assigned to each entry)\r\n"
   7536     "  num_entries - Number of entries in user rx table\r\n",
   7537     "",
   7538     {0,
   7539     BIT(22)},
   7540     2,
   7541     (VAL_PROC_PTR)NULL
   7542   },
   7543   {
   7544     PARAM_PSS_RX_ACTION_ID,
   7545     "rx_action",
   7546     (PARAM_VAL_RULES *)&Rx_action_vals[0],
   7547     (sizeof(Rx_action_vals) / sizeof(Rx_action_vals[0])) - 1,
   7548     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7549     0,0,0,0,0,0,0,
   7550     "Selection of required action on table of received messages:\r\n"
   7551     "  \'start_rx_capture\' or \'stop_rx_capture\'",
   7552     "Example:\r\n"
   7553     "  pss user_rx_table rx_action start_rx_capture\r\n"
   7554     "Results in allowing messages captured by the packet processor to go into\r\n"
   7555     "user table of received messages. Entries are accessible via, say, \'get\'.\r\n",
   7556     "",
   7557     {0,BIT(22)},
   7558     2,
   7559     (VAL_PROC_PTR)NULL
   7560   },
   7561   {
   7562     PARAM_PSS_CLEAR_RX_ID,
   7563     "clear_all",
   7564     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7565     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7566     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7567     0,0,0,0,0,0,0,
   7568     "Clear all messages on table of received messages",
   7569     "Example:\r\n"
   7570     "  pss user_rx_table clear_all\r\n"
   7571     "Results in clearing all messages, captured by the packet processor, which are\r\n"
   7572     "in user table of received messages.\r\n",
   7573     "",
   7574     {0,
   7575     BIT(22)},
   7576     2,
   7577     (VAL_PROC_PTR)NULL
   7578   },
   7579   {
   7580     PARAM_PSS_GET_FIRST_RX_ID,
   7581     "get_first",
   7582     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7583     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7584     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7585     0,0,0,0,0,0,0,
   7586     "Display first message on table of received messages",
   7587     "Example:\r\n"
   7588     "  pss user_rx_table get_first\r\n"
   7589     "Results in displaying first message, captured by the packet processor, which is\r\n"
   7590     "in user table of received messages. This action fails if table is empty.\r\n",
   7591     "",
   7592     {0,
   7593     BIT(22)},
   7594     2,
   7595     (VAL_PROC_PTR)NULL
   7596   },
   7597   {
   7598     PARAM_PSS_GET_NEXT_RX_ID,
   7599     "get_next",
   7600     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7601     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7602     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7603     0,0,0,0,0,0,0,
   7604     "Display next message on table of received messages",
   7605     "Example:\r\n"
   7606     "  pss user_rx_table get_next\r\n"
   7607     "Results in displaying next message, captured by the packet processor, which is\r\n"
   7608     "in user table of received messages. This action fails if all messages have\r\n"
   7609     "already been read. To restart a reading cycle, apply \'get_first\'.\r\n",
   7610     "",
   7611     {0,
   7612     BIT(22)},
   7613     2,
   7614     (VAL_PROC_PTR)NULL
   7615   },
   7616   {
   7617     PARAM_PSS_USER_RX_TABLE_ID,
   7618     "user_rx_table",
   7619     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7620     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7621     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7622     0,0,0,0,0,0,0,
   7623     "Handle table of received messages captured as per user specifications.",
   7624     "Example:\r\n"
   7625     "  pss user_rx_table rx_action start_rx_capture\r\n"
   7626     "Results in allowing messages captured by the packet processor to go into\r\n"
   7627     "user table of received messages. Entries are accessible via, say, \'get_next\'.\r\n",
   7628     "",
   7629     {BIT(23),
   7630     BIT(22)},
   7631     1,
   7632     (VAL_PROC_PTR)NULL
   7633   },
   7634   {
   7635     PARAM_PSS_MULTICAST_ID,
   7636     "multicast",
   7637     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7638     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7639     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7640     0,0,0,0,0,0,0,
   7641     "Send mac multicast related command to PSS.",
   7642     "Examples:\r\n"
   7643     "  pss multicast create_new standard_port vlan_id 14 mac_addr \'beeb1234beeb\' unit 0\r\n"
   7644     "  device 1 port 2 cpu_included on\r\n",
   7645     "",
   7646     {BIT(6) | BIT(7) | BIT(17) | BIT(18)},
   7647     1,
   7648     (VAL_PROC_PTR)NULL
   7649   },
   7650   {
   7651     PARAM_PSS_SOURCE_MAC_ID,
   7652     "source_addr",
   7653     (PARAM_VAL_RULES *)&Mac_addr_vals[0],
   7654     (sizeof(Mac_addr_vals) / sizeof(Mac_addr_vals[0])) - 1,
   7655     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7656     0,0,0,0,0,0,0,
   7657     "Select source address of da-sa pair of MAC address identifiers.",
   7658     "Example:\r\n"
   7659     "  pss bridge general_commands set_mac_da_sa_trap dest_addr 1234ABCD5678\r\n"
   7660     "  source_addr DEEDBEEFDEED\r\n"
   7661     "Results in setting a receive trap on all messages with the pair -\r\n"
   7662     "[destination address 0x1234ABCD5678 ; source address 0xDEEDBEEFDEED]."
   7663     "All messages with this pair will be monitored by host and matrix group counters\r\n",
   7664     "",
   7665     {BIT(20)},
   7666     (unsigned int)LAST_ORDINAL,
   7667     (VAL_PROC_PTR)NULL
   7668   },
   7669   {
   7670     PARAM_PSS_DEST_MAC_ID,
   7671     "dest_addr",
   7672     (PARAM_VAL_RULES *)&Mac_addr_vals[0],
   7673     (sizeof(Mac_addr_vals) / sizeof(Mac_addr_vals[0])) - 1,
   7674     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7675     0,0,0,0,0,0,0,
   7676     "Select destination address of da-sa pair of MAC address identifiers.",
   7677     "Example:\r\n"
   7678     "  pss bridge general_commands set_mac_da_sa_trap dest_addr 1234ABCD5678\r\n"
   7679     "  source_addr DEEDBEEFDEED\r\n"
   7680     "Results in setting a receive trap on all messages with the pair -\r\n"
   7681     "[destination address 0x1234ABCD5678 ; source address 0xDEEDBEEFDEED]."
   7682     "All messages with this pair will be monitored by host and matrix group counters\r\n",
   7683     "",
   7684     {BIT(20) | BIT(22) | BIT(27)},
   7685     (unsigned int)LAST_ORDINAL,
   7686     (VAL_PROC_PTR)NULL
   7687   },
   7688   {
   7689     PARAM_PSS_BRIDGE_GEN_CMNDS_ID,
   7690     "general_commands",
   7691     (PARAM_VAL_RULES *)&Bridge_general_commands_vals[0],
   7692     (sizeof(Bridge_general_commands_vals) / sizeof(Bridge_general_commands_vals[0])) - 1,
   7693     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7694     0,0,0,0,0,0,0,
   7695     "Carry out some general utilities on bridge-related section of PSS.",
   7696     "Example:\r\n"
   7697     "  pss bridge general_commands set_mac_da_sa_trap dest_addr 1234ABCD5678\r\n"
   7698     "  source_addr DEEDBEEFDEED\r\n"
   7699     "Results in setting a receive trap on all messages with the pair -\r\n"
   7700     "[destination address 0x1234ABCD5678 ; source address 0xDEEDBEEFDEED]."
   7701     "All messages with this pair will be monitored by host and matrix group counters\r\n",
   7702     "",
   7703     {BIT(20)},
   7704     2,
   7705     (VAL_PROC_PTR)NULL
   7706   },
   7707   {
   7708     PARAM_PSS_BRIDGE_ID,
   7709     "bridge",
   7710     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7711     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7712     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7713     0,0,0,0,0,0,0,
   7714     "Carry out bridge-related commands in PSS.",
   7715     "Example:\r\n"
   7716     "  pss bridge general_commands set_mac_da_sa_trap dest_addr 1234ABCD5678\r\n"
   7717     "  source_addr DEEDBEEFDEED\r\n"
   7718     "Results in setting the pair -\r\n"
   7719     "[destination address 0x1234ABCD5678 ; source address 0xDEEDBEEFDEED]."
   7720     "All messages with this pair will be monitored by host and matrix group counters\r\n",
   7721     "",
   7722     {BIT(20) | BIT(21) | BIT(22) | BIT(24) | BIT(27)},
   7723     1,
   7724     (VAL_PROC_PTR)NULL
   7725   },
   7726   {
   7727     PARAM_PSS_VLAN_ID,
   7728     "vlan",
   7729     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7730     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7731     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7732     0,0,0,0,0,0,0,
   7733     "Send VLAN related command to PSS.",
   7734     "Examples:\r\n"
   7735     "  pss vlan select_learning_mode individual\r\n"
   7736     "or\r\n"
   7737     "  pss vlan create_new standard_port vlan_id 14 unit 0 device 1 port 2\r\n"
   7738     "  port_tagged on cpu_included on\r\n",
   7739     "",
   7740     {BIT(3) | BIT(4) | BIT(5) | BIT(15) | BIT(16)},
   7741     1,
   7742     (VAL_PROC_PTR)NULL
   7743   },
   7744   {
   7745     PARAM_PSS_SEND_CMD_ID,
   7746     "cmd",
   7747     (PARAM_VAL_RULES *)&Pss_cmd[0],
   7748     (sizeof(Pss_cmd) / sizeof(Pss_cmd[0])) - 1,
   7749     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7750     0,0,0,0,0,0,0,
   7751     "Send raw ASCII command to PSS.",
   7752     "Examples:\r\n"
   7753     "  pss cmd \"brgSetVlanPortsTblEntry\" fields \"1 14 0 0 1 2 1 0\"\r\n"
   7754     "or\r\n"
   7755     "  pss cmd \"gfdbSetMacVlMode 1\" fields \"\"\r\n"
   7756     "or\r\n"
   7757     "  pss cmd \"brgSetMcEgPortsTblEntry\" fields \"1 14 \'deed1234beeb\' 0 0 1 5 0\"\r\n"
   7758     " Notes:\r\n"
   7759     "1. Use single quote instead of double quote for text within free text field\r\n"
   7760     "2. \'fields\' parameters is optional.",
   7761     "",
   7762     {BIT(2)},
   7763     1,
   7764     (VAL_PROC_PTR)NULL
   7765   },
   7766   {
   7767     PARAM_PSS_CMD_FIELDS_ID,
   7768     "fields",
   7769     (PARAM_VAL_RULES *)&Pss_cmd[0],
   7770     (sizeof(Pss_cmd) / sizeof(Pss_cmd[0])) - 1,
   7771     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Update_pss_fields_default,
   7772     0,0,0,0,0,0,0,
   7773     "The \'fields\' part of this PSS command.",
   7774      "Examples:\r\n"
   7775     "  pss cmd \"brgSetVlanPortsTblEntry\" fields \"1 14 0 0 1 2 1 0\"\r\n"
   7776     "\'fields\' parameters is optional.",
   7777     "",
   7778     {BIT(2)},
   7779     2,
   7780     (VAL_PROC_PTR)NULL
   7781   },
   7782   {
   7783     PARAM_PSS_SET_DEFAULT_VLAN_ID,
   7784     "set_default_vlan",
   7785     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7786     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7787     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7788     0,0,0,0,0,0,0,
   7789     "Select default VLAN to be applied to received packets on specified port.",
   7790     "Example:\r\n"
   7791     "  pss port_utils set_default_vlan standard_port unit 3 device 2 port 1 vlan_id 5\r\n"
   7792     "Results in setting the default VLAN of standard (non-trunk) port 1, on device 2\r\n"
   7793     "on unit 3, to be 5. This means that when an untagged packet is received on port 1\r\n"
   7794     "(unit 3 device 2) it is assigned, virtually, to VLAN 5.",
   7795     "",
   7796     { BIT(25) | BIT(26),
   7797       0,
   7798       0},
   7799     2,
   7800     (VAL_PROC_PTR)NULL
   7801   },
   7802   {
   7803     PARAM_PSS_MAC_COUNTERS_DISP_FORMAT_ID,
   7804     "display_format",
   7805     (PARAM_VAL_RULES *)&Pss_display_format_vals[0],
   7806     (sizeof(Pss_display_format_vals) / sizeof(Pss_display_format_vals[0])) - 1,
   7807     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_display_format_default,
   7808     0,0,0,0,0,0,0,
   7809     "Select display format of MAC counters.",
   7810     "Example:\r\n"
   7811     "  pss port_utils display_all_mac_counters standard_port unit 3 device 2 port 1\r\n"
   7812     "  display_format short\r\n"
   7813     "Results in displaying all MAC counters of standard (non-trunk) port 1, on device 2\r\n"
   7814     "on unit 3. Display format is short: name of counter followed by value. Selecting long\r\n"
   7815     "format results, in addition, in displaying explanation on each counter.\r\n",
   7816     "",
   7817     { BIT(28) | BIT(29),
   7818       0,
   7819       0},
   7820     (unsigned int)LAST_ORDINAL,
   7821     (VAL_PROC_PTR)NULL
   7822   },
   7823   {
   7824     PARAM_PSS_CLEAR_AFTER_READ_ID,
   7825     "clear_after_read",
   7826     (PARAM_VAL_RULES *)&Pss_clear_after_read_vals[0],
   7827     (sizeof(Pss_clear_after_read_vals) / sizeof(Pss_clear_after_read_vals[0])) - 1,
   7828     HAS_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)&Pss_clear_after_read_default,
   7829     0,0,0,0,0,0,0,
   7830     "Select mode of handling counters: Restart after every reading or accumulative.",
   7831     "Example:\r\n"
   7832     "  pss port_utils display_all_mac_counters standard_port unit 3 device 2 port 1\r\n"
   7833     "  clear_after_read off\r\n"
   7834     "Results in displaying all MAC counters of standard (non-trunk) port 1, on device 2\r\n"
   7835     "on unit 3. Display format is short: name of counter followed by value. Counters will\r\n"
   7836     "NOT be cleared after reading so consecutive readings will be accumulative.\r\n"
   7837     "NOTE that accumulation restarts when changing monitored port..\r\n",
   7838     "",
   7839     { BIT(28) | BIT(29),
   7840       0,
   7841       0},
   7842     (unsigned int)LAST_ORDINAL,
   7843     (VAL_PROC_PTR)NULL
   7844   },
   7845   {
   7846     PARAM_PSS_DISP_ALL_MAC_COUNTERS_ID,
   7847     "display_all_mac_counters",
   7848     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7849     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7850     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7851     0,0,0,0,0,0,0,
   7852     "Display all MAC counters relating to Ethernet activity on specified port.",
   7853     "Example:\r\n"
   7854     "  pss port_utils display_all_mac_counters standard_port unit 3 device 2 port 1\r\n"
   7855     "  display_format short\r\n"
   7856     "Results in displaying all MAC counters of standard (non-trunk) port 1, on device 2\r\n"
   7857     "on unit 3. Display format is short: name of counter followed by value.",
   7858     "",
   7859     { BIT(28) | BIT(29),
   7860       0,
   7861       0},
   7862     2,
   7863     (VAL_PROC_PTR)NULL
   7864   },
   7865   {
   7866     PARAM_PSS_PORT_UTILS_ID,
   7867     "port_utils",
   7868     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7869     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7870     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7871     0,0,0,0,0,0,0,
   7872     "Carry out port-related commands in PSS.",
   7873     "Example:\r\n"
   7874     "  pss port_utils phy read_reg 0x1 port 1\r\n"
   7875     "Results in reading from device-0 unit-0 port-1 PHY register at offset 0x1.\r\n"
   7876     "  The PHY accessing is via the Serial Management Interface.\n\r",
   7877     "",
   7878     { BIT(25) | BIT(26) | BIT(28) | BIT(29),
   7879       0,
   7880       BIT(4) | BIT(5) | BIT(6)  | BIT(7) | BIT(8)},
   7881       /*
   7882        * 4-5 - PHY
   7883        * 6-7 - PORT CTRL
   7884        */
   7885     1,
   7886     (VAL_PROC_PTR)NULL
   7887   },
   7888   {
   7889     PARAM_PSS_PORT_CTRL_ID,
   7890     "ctrl",
   7891     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7892     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7893     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7894     0,0,0,0,0,0,0,
   7895     "Carry out port-control commands in PSS.",
   7896     "Example:\r\n"
   7897     "  pss port_utils ctrl force_link_pass on port 1 device 0\r\n"
   7898     "Results (device 0, unit 0) forcing port 1 to be in pass state (link up).\r\n",
   7899     "",
   7900     { 0,
   7901       0,
   7902       BIT(6) | BIT(7) | BIT(8) },
   7903     2,
   7904     (VAL_PROC_PTR)NULL
   7905   },
   7906   {
   7907     PARAM_PSS_PORT_LOOPBACK_ID,
   7908     "loopback",
   7909     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7910     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7911     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7912     0,0,0,0,0,0,0,
   7913     "Set link in loopback.",
   7914     "Example:\r\n"
   7915     "  pss port_utils ctrl loopback port 1 device 0 unit 0\r\n"
   7916     "Results (device 0, unit 0) link in loopback.\r\n",
   7917     "",
   7918     { 0,
   7919       0,
   7920       BIT(7)},
   7921     LAST_ORDINAL,
   7922     (VAL_PROC_PTR)NULL
   7923   },
   7924   {
   7925     PARAM_PSS_PORT_STATUS_ID,
   7926     "status",
   7927     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7928     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7929     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7930     0,0,0,0,0,0,0,
   7931     "Get and print the port status.",
   7932     "Example:\r\n"
   7933     "  pss port_utils ctrl port 1 device 0 unit 0 status\r\n"
   7934     "Results (device 0, unit 0) get and print port 1 status.\r\n",
   7935     "",
   7936     { 0,
   7937       0,
   7938       BIT(8)},
   7939     LAST_ORDINAL,
   7940     (VAL_PROC_PTR)NULL
   7941   },
   7942   {
   7943     PARAM_PSS_PORT_FORCE_LINK_PASS_ID,
   7944     "force_link_pass",
   7945     (PARAM_VAL_RULES *)&Pss_port_force_link_pass_vals[0],
   7946     (sizeof(Pss_port_force_link_pass_vals) / sizeof(Pss_port_force_link_pass_vals[0])) - 1,
   7947     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7948     0,0,0,0,0,0,0,
   7949     "Forcing specific link to be in PASS state (link always up).",
   7950     "Example:\r\n"
   7951     "  pss port_utils ctrl force_link_pass on port 1 device 0\r\n"
   7952     "Results (device 0, unit 0) forcing port 1 to be in pass state (link up).\r\n",
   7953     "",
   7954     { 0,
   7955       0,
   7956       BIT(6)},
   7957     LAST_ORDINAL,
   7958     (VAL_PROC_PTR)NULL
   7959   },
   7960   {
   7961     PARAM_PSS_PHY_ID,
   7962     "phy",
   7963     (PARAM_VAL_RULES *)&Pss_empty_vals[0],
   7964     (sizeof(Pss_empty_vals) / sizeof(Pss_empty_vals[0])) - 1,
   7965     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7966     0,0,0,0,0,0,0,
   7967     "Carry out port-phy-related commands in PSS.\n\r"
   7968     "  Using Prestera as interface to teh PHY - via SMI.",
   7969     "Example:\r\n"
   7970     "  pss port_utils phy read_reg 0x1 port 1\r\n"
   7971     "Results in reading from device-0 unit-0 port-1 PHY register at offset 0x1.\r\n"
   7972     "  The PHY accessing is via the Serial Management Interface.\n\r",
   7973     "",
   7974     { 0,
   7975       0,
   7976       BIT(4) | BIT(5)},
   7977     2,
   7978     (VAL_PROC_PTR)NULL
   7979   },
   7980   {
   7981     PARAM_PSS_READ_ID,
   7982     "read_reg",
   7983     (PARAM_VAL_RULES *)&Pss_phy_reg_offset_vals[0],
   7984     (sizeof(Pss_phy_reg_offset_vals) / sizeof(Pss_phy_reg_offset_vals[0])) - 1,
   7985     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   7986     0,0,0,0,0,0,0,
   7987     "Offset of register at the PHY.",
   7988     "Example:\r\n"
   7989     "  pss port_utils phy read_reg 0x1 port 1\r\n"
   7990     "Results in reading from device-0 unit-0 port-1 PHY register at offset 0x1.\r\n"
   7991     "  The PHY accessing is via the Serial Management Interface.\n\r",
   7992     "",
   7993     { 0,
   7994       0,
   7995       BIT(4)},
   7996     LAST_ORDINAL,
   7997     (VAL_PROC_PTR)NULL
   7998   },
   7999   {
   8000     PARAM_PSS_WRITE_ID,
   8001     "write_reg",
   8002     (PARAM_VAL_RULES *)&Pss_phy_reg_offset_vals[0],
   8003     (sizeof(Pss_phy_reg_offset_vals) / sizeof(Pss_phy_reg_offset_vals[0])) - 1,
   8004     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8005     0,0,0,0,0,0,0,
   8006     "Offset of register at the PHY.",
   8007     "Example:\r\n"
   8008     "  pss port_utils phy write_reg 0x1 data 0x12 port 1\r\n"
   8009     "Results in writing to device-0 unit-0 port-1 PHY register at offset 0x1 - data 0x12.\r\n"
   8010     "  The PHY accessing is via the Serial Management Interface.\n\r",
   8011     "",
   8012     { 0,
   8013       0,
   8014       BIT(5)},
   8015     LAST_ORDINAL,
   8016     (VAL_PROC_PTR)NULL
   8017   },
   8018   {
   8019     PARAM_PSS_PHY_DATA_ID,
   8020     "data",
   8021     (PARAM_VAL_RULES *)&Pss_phy_data_vals[0],
   8022     (sizeof(Pss_phy_data_vals) / sizeof(Pss_phy_data_vals[0])) - 1,
   8023     HAS_NO_DEFAULT | MUST_APPEAR,(PARAM_VAL *)0,
   8024     0,0,0,0,0,0,0,
   8025     "16 bit data to write to the PHY-port register.",
   8026     "Example:\r\n"
   8027     "  pss port_utils phy write_reg 0x1 data 0x12 port 1\r\n"
   8028     "Results in writing to device-0 unit-0 port-1 PHY register at offset 0x1 - data 0x12.\r\n"
   8029     "  The PHY accessing is via the Serial Management Interface.\n\r",
   8030     "",
   8031     { 0,
   8032       0,
   8033       BIT(5)},
   8034     LAST_ORDINAL,
   8035     (VAL_PROC_PTR)NULL
   8036   },
   8037   {
   8038     PARAM_PSS_PHY_DATA_MASK_ID,
   8039     "mask",
   8040     (PARAM_VAL_RULES *)&Pss_phy_data_vals[0],
   8041     (sizeof(Pss_phy_data_vals) / sizeof(Pss_phy_data_vals[0])) - 1,
   8042     HAS_NO_DEFAULT | MAY_NOT_APPEAR,(PARAM_VAL *)0,
   8043     0,0,0,0,0,0,0,
   8044     "If apear, do read/modify/write with this mask.",
   8045     "Example:\r\n"
   8046     "  pss port_utils phy write_reg 0x1 data 0x12 port 1 mask 0xFF\r\n"
   8047     "Results in reading from device-0 unit-0 port-1 PHY register at offset 0x1\n\r"
   8048     "  the value there. Than set the 8 lower bit to the data 0x12.\r\n"
   8049     "  Finally, writing this value to the PHY.\n\r",
   8050     "",
   8051     { 0,
   8052       0,
   8053       BIT(5)},
   8054     LAST_ORDINAL,
   8055     (VAL_PROC_PTR)NULL
   8056   },
   8057 
   8058 
   8059 /*
   8060  * Last element. Do not remove.
   8061  */
   8062   {
   8063     PARAM_END_OF_LIST
   8064   }
   8065 }
   8066 #endif
   8067 ;
   8068 
   8069 
   8070 /*
   8071  * }
   8072  */
   8073 
   8074 
   8075 /* } */
   8076 #endif