
  CONST
    nac$max_sap_value = 0ffff(16);

  TYPE

    nat$connection_descriptor = record
      sender_request: nat$sender_request,
      receiver_request: nat$receiver_request,
      send_timeout: boolean,
      receive_timeout: boolean,
      connection_state: nat$connection_state,
      wait_state: nat$wait_state,
      await_server_response_task_id: ost$global_task_id,
      await_server_response: boolean,
      intermediate_put_partial: boolean,
      send_put_partial_termination: boolean,
      record_length: amt$max_record_length,
      transfer_count: amt$transfer_count,
      client: boolean,
      application_name: nat$application_name,
      simulated_connection_broken: boolean,
      break_condition_active: boolean,
      break_connection_receive: boolean,
      break_connection_send: boolean,
      discard_to_end_of_message: boolean,
      synchronize_receive: boolean,
      synchronize_send: boolean,
      synchronize_request_receive: boolean,
      synchronize_request_send: boolean,
      nominal_connection: boolean,
      nominal_connection_task_id: ost$global_task_id,
      receive_synchronize_count: integer,
      send_synchronize_count: integer,
      receive_file_identifier: amt$file_identifier,
      send_file_identifier: amt$file_identifier,
      total_data_queued: nat$data_length,
      total_message_buffers_queued: integer,
      event_timer: nlt$timer,
      receive_timer: nlt$timer,
      send_timer: nlt$timer,
      timesharing_disconnect_sent: boolean,
      job_monitor_task_id: ost$global_task_id,
      local_file_name: amt$local_file_name,
      {attributes}
      client_identity: nat$client_identity,
      connect_data: ^SEQ(*),
      data_transfer_timeout: nat$wait_time,
      eoi_message_enabled: boolean,
      eoi_message: ^nat$eoi_message,
      eoi_peer_termination: boolean,
      local_address: nat$sap_identifier,
      peer_accounting_information: ^SEQ(*),
      peer_address: nat$network_address,
      peer_connect_data: ^SEQ(*),
      peer_termination_data: ^SEQ(*),
      receive_wait_swapout: boolean,
      termination_data: ^SEQ(*),
      termination_reason: nat$termination_reason,
      case protocol: nat$protocol of
      = nac$cdna_session =
        data_queue: nat$se_event_queue,
        supervisory_event_queue: nat$se_supervisory_event_queue,
        event: nat$se_peer_operation,
      casend,
    recend;

  TYPE

    nat$wait_state = (nac$inactive_wait, nac$waiting_to_receive_data, nac$waiting_for_data_available);

?? PUSH (LISTEXT := ON) ??
*copyc amt$file_identifier
*copyc amt$local_file_name
*copyc amt$max_record_length
*copyc amt$transfer_count
*copyc jmt$system_supplied_name
*copyc nat$application_name
*copyc nat$client_identity
*copyc nat$connection_id
*copyc nat$connection_state
*copyc nat$eoi_message
*copyc nat$network_address
*copyc nat$protocol
*copyc nat$receiver_request
*copyc nat$sap_identifier
*copyc nat$se_event_queue
*copyc nat$se_peer_operation
*copyc nat$se_supervisory_event_queue
*copyc nat$sender_request
*copyc nat$termination_reason
*copyc nat$wait_time
*copyc nlt$timer
*copyc ost$global_task_id
?? POP ??
