
{ PDT define_rhfam_server_pdt (
{     server, s : NAME 1..7 = $REQUIRED
{     rhfam_initiated, ri : BOOLEAN = TRUE
{     maximum_connections, mc : INTEGER 1..255 = 255
{     user_capability, uc : NAME OR KEY none = none
{     ring, r : INTEGER 1..15 = 13
{     system_privilege, sp : BOOLEAN = FALSE
{     server_job, sj : FILE = $OPTIONAL
{     server_job_maximum_connections, sjmc : INTEGER 1..255 = 255
{     accept_connection, ac : BOOLEAN = TRUE
{     rhfam_validates_connection_lid, rvcl : BOOLEAN = TRUE
{     status)

?? PUSH (LISTEXT := ON) ??

  VAR
    define_rhfam_server_pdt: [STATIC, READ, cls$pdt] clt$parameter_descriptor_table := [
      ^define_rhfam_server_pdt_names, ^define_rhfam_server_pdt_params];

  VAR
    define_rhfam_server_pdt_names: [STATIC, READ, cls$pdt_names_and_defaults] array [1 .. 21] of
      clt$parameter_name_descriptor := [['SERVER', 1], ['S', 1], ['RHFAM_INITIATED', 2], ['RI', 2], [
      'MAXIMUM_CONNECTIONS', 3], ['MC', 3], ['USER_CAPABILITY', 4], ['UC', 4], ['RING', 5], ['R', 5], [
      'SYSTEM_PRIVILEGE', 6], ['SP', 6], ['SERVER_JOB', 7], ['SJ', 7], ['SERVER_JOB_MAXIMUM_CONNECTIONS', 8],
      ['SJMC', 8], ['ACCEPT_CONNECTION', 9], ['AC', 9], ['RHFAM_VALIDATES_CONNECTION_LID', 10], ['RVCL', 10],
      ['STATUS', 11]];

  VAR
    define_rhfam_server_pdt_params: [STATIC, READ, cls$pdt_parameters] array [1 .. 11] of
      clt$parameter_descriptor := [

{ SERVER S }
    [[clc$required], 1, 1, 1, 1, clc$value_range_not_allowed, [NIL, clc$name_value, 1, 7]],

{ RHFAM_INITIATED RI }
    [[clc$optional_with_default, ^define_rhfam_server_pdt_dv2], 1, 1, 1, 1, clc$value_range_not_allowed,
      [NIL, clc$boolean_value]],

{ MAXIMUM_CONNECTIONS MC }
    [[clc$optional_with_default, ^define_rhfam_server_pdt_dv3], 1, 1, 1, 1, clc$value_range_not_allowed,
      [NIL, clc$integer_value, 1, 255]],

{ USER_CAPABILITY UC }
    [[clc$optional_with_default, ^define_rhfam_server_pdt_dv4], 1, 1, 1, 1, clc$value_range_not_allowed, [^
      define_rhfam_server_pdt_kv4, clc$name_value, 1, osc$max_name_size]],

{ RING R }
    [[clc$optional_with_default, ^define_rhfam_server_pdt_dv5], 1, 1, 1, 1, clc$value_range_not_allowed,
      [NIL, clc$integer_value, 1, 15]],

{ SYSTEM_PRIVILEGE SP }
    [[clc$optional_with_default, ^define_rhfam_server_pdt_dv6], 1, 1, 1, 1, clc$value_range_not_allowed,
      [NIL, clc$boolean_value]],

{ SERVER_JOB SJ }
    [[clc$optional], 1, 1, 1, 1, clc$value_range_not_allowed, [NIL, clc$file_value]],

{ SERVER_JOB_MAXIMUM_CONNECTIONS SJMC }
    [[clc$optional_with_default, ^define_rhfam_server_pdt_dv8], 1, 1, 1, 1, clc$value_range_not_allowed,
      [NIL, clc$integer_value, 1, 255]],

{ ACCEPT_CONNECTION AC }
    [[clc$optional_with_default, ^define_rhfam_server_pdt_dv9], 1, 1, 1, 1, clc$value_range_not_allowed,
      [NIL, clc$boolean_value]],

{ RHFAM_VALIDATES_CONNECTION_LID }
    [[clc$optional_with_default, ^define_rhfam_server_pdt_dv10], 1, 1, 1, 1, clc$value_range_not_allowed,
      [NIL, clc$boolean_value]],

{ STATUS }
    [[clc$optional], 1, 1, 1, 1, clc$value_range_not_allowed, [NIL, clc$variable_reference,
      clc$array_not_allowed, clc$status_value]]];

  VAR
    define_rhfam_server_pdt_kv4: [STATIC, READ, cls$pdt_names_and_defaults] array [1 .. 1] of ost$name := [
      'NONE'];

  VAR
    define_rhfam_server_pdt_dv2: [STATIC, READ, cls$pdt_names_and_defaults] string (4) := 'TRUE';

  VAR
    define_rhfam_server_pdt_dv3: [STATIC, READ, cls$pdt_names_and_defaults] string (3) := '255';

  VAR
    define_rhfam_server_pdt_dv4: [STATIC, READ, cls$pdt_names_and_defaults] string (4) := 'none';

  VAR
    define_rhfam_server_pdt_dv5: [STATIC, READ, cls$pdt_names_and_defaults] string (2) := '13';

  VAR
    define_rhfam_server_pdt_dv6: [STATIC, READ, cls$pdt_names_and_defaults] string (5) := 'FALSE';

  VAR
    define_rhfam_server_pdt_dv8: [STATIC, READ, cls$pdt_names_and_defaults] string (3) := '255';

  VAR
    define_rhfam_server_pdt_dv9: [STATIC, READ, cls$pdt_names_and_defaults] string (4) := 'TRUE';

  VAR
    define_rhfam_server_pdt_dv10: [STATIC, READ, cls$pdt_names_and_defaults] string (4) := 'TRUE';

?? POP ??
