
{ DECK: DFT$SERVER_DESCRIPTOR
{ This describes the data structure that is used on the client mainframe to
{ describe the server file.  This is used as the served file variant portion of
{ the MEDIA field in a File_Descriptor_Entry (FDE).

  TYPE
    dft$server_descriptor_p = ^dft$server_descriptor,

    dft$server_descriptor = record
      header: dft$server_descriptor_header,
    recend,

    dft$server_descriptor_header = record
      server_mainframe_id: pmt$binary_mainframe_id,
      served_family_table_index: dft$served_family_table_index,
      server_lifetime: dft$lifetime,
      read_write_count: 0 .. 0ffff(16),
      purged: boolean,
      highest_offset_allocated: amt$file_byte_address,
      bytes_per_allocation: 0 .. dmc$max_bytes_per_allocation,
      case file_state: dft$server_state of
      = dfc$active =
        { The file state is never really changed to dfc$inactive,
        { or dfc$deactivated despite the fact the queues are in that state.
        total_allocated_length: amt$file_byte_address,
        remote_sfid: gft$system_file_identifier,
        allow_other_mainframe_writer: boolean,
        allocation_info: dft$server_allocation_info,
        requested_transfer_size: dmt$transfer_size,
      = dfc$terminated, dfc$awaiting_recovery =
        { The information needs to be re-obtained from the server mainframe.
        { The file state is never changed to dfc$recovering, or
        { dfc$deleted
      casend,
    recend;

?? PUSH (LISTEXT := ON) ??
*copyc amt$file_byte_address
*copyc amt$file_limit
*copyc amt$preset_value
*copyc dft$lifetime
*copyc dft$served_family_table_index
*copyc dft$server_allocation_info
*copyc dft$server_state
*copyc dmt$allocation_size
*copyc dmt$minimum_allocation_unit
*copyc dmt$transfer_size
*copyc gft$system_file_identifier
*copyc ost$clear_file_space
*copyc pmt$binary_mainframe_id
?? POP ??

