*copyc osd$default_pragmats
?? RIGHT := 110 ??
MODULE dfm$server_stubs;
{
{  This module contains stubs of routines that are used by the file server
{  code.  These are provided only to allow a certain amount of checkout
{  in a closed shop environment.
{
?? PUSH (LISTEXT := ON) ??
*copyc cmt$element_name
*copyc dfd$driver_queue_types
*copyc dfi$display
*copyc dfs$server_wired
*copyc dft$client_job_list
*copyc dft$cpu_queue
*copyc dft$one_word_response_handler
*copyc dft$queue_index
*copyc dft$remote_request
*copyc gft$system_file_identifier
*copyc dpt$window_class
*copyc dpt$window_id
*copyc dpt$window_kind
*copyc iot$pp_number
*copyc iot$io_request
*copyc ofd$type_definition
*copyc oft$refreshing_displays
*copyc oft$system_line_info
*copyc osp$set_status_abnormal
*copyc oss$mainframe_wired_literal
*copyc ost$global_task_id
*copyc ost$heap
*copyc ost$page_size
*copyc ost$signature_lock
*copyc ost$status
*copyc ost$user_identification
*copyc ost$wait
*copyc stt$set_name
?? POP ??
?? NEWTITLE := '   Global Variables', EJECT ??


  VAR
    osv$page_size: [XDCL] ost$page_size := 4096;

  VAR
    dfv$one_word_response_handler: [XDCL] dft$one_word_response_handler := NIL;

  VAR
    dmv$external_interrupt_selector: [XDCL] 0 .. 0ff(16) := 1;

  VAR
    osv$external_interrupt_selector: [XDCL] 0 .. 0ff(16) := 1;

  VAR
    dfv$null_global_task_id: [XDCL] ost$global_task_id := [1, 1];

  VAR
    dmv$null_sfid: [XDCL, STATIC, READ, #GATE, oss$mainframe_wired_literal] gft$system_file_identifier :=
      [0, gfc$tr_null_residence, gfc$null_file_hash];

?? EJECT ??

  PROCEDURE [XDCL] ofp$send_to_operator
    (    operator_message: string ( * );
         operator_id: oft$operator_id;
         status: ost$status);

    display (operator_message);
  PROCEND ofp$send_to_operator;

?? SKIP := 5 ??

  PROCEDURE [XDCL] osp$begin_system_activity;

  PROCEND osp$begin_system_activity;

  PROCEDURE [XDCL] osp$begin_subsystem_activity;

  PROCEND osp$begin_subsystem_activity;


  PROCEDURE [XDCL] osp$end_subsystem_activity;

  PROCEND osp$end_subsystem_activity;

?? SKIP := 5 ??

  PROCEDURE [XDCL] osp$clear_job_signature_lock
    (VAR lock: ost$signature_lock);

    VAR
      status: ost$status;

    osp$clear_signature_lock (lock, status);

  PROCEND osp$clear_job_signature_lock;

?? SKIP := 5 ??

  PROCEDURE [XDCL] osp$clear_signature_lock
    (VAR lock: ost$signature_lock;
     VAR status: ost$status);

    status.normal := TRUE;
    IF lock.lock_id <> 12 THEN
      display (' lock not set ');
      osp$set_status_abnormal ('GS', 333000, 'LOCK NOT SET', status);
    IFEND;
    lock.lock_id := 0;
    {display (' osp$clear_signature_lock stub');
  PROCEND osp$clear_signature_lock;

?? SKIP := 5 ??

  PROCEDURE [XDCL] osp$end_system_activity;

  PROCEND osp$end_system_activity;

?? SKIP := 5 ??

  PROCEDURE [XDCL] osp$initialize_signature_lock
    (VAR lock: ost$signature_lock;
     VAR status: ost$status);

    status.normal := TRUE;
    lock.lock_id := 0;
  PROCEND osp$initialize_signature_lock;

?? SKIP := 5 ??

  PROCEDURE [XDCL] osp$recoverable_system_error
    (    error_message: string ( * );
         p_status: ^ost$status);

    display (' osp$recoverable_system_error');
    display (error_message);
    IF p_status <> NIL THEN
      display_status (p_status^);
    IFEND;
  PROCEND osp$recoverable_system_error;

?? SKIP := 5 ??

  PROCEDURE [XDCL] osp$set_job_signature_lock
    (VAR lock: ost$signature_lock);

    VAR
      status: ost$status,
      wait: ost$wait;

    osp$set_signature_lock (lock, wait, status);

  PROCEND osp$set_job_signature_lock;

?? SKIP := 5 ??

  PROCEDURE [XDCL] osp$set_signature_lock
    (VAR lock: ost$signature_lock;
         wait: ost$wait;
     VAR status: ost$status);

    status.normal := TRUE;
    IF lock.lock_id <> 0 THEN
      display (' lock already set');
      osp$set_status_abnormal ('GS', 333000, ' lock already set', status);
    ELSE
      lock.lock_id := 12;
    IFEND;
    {display (' osp$set_signature_lock stub');
  PROCEND osp$set_signature_lock;

?? SKIP := 5 ??

  PROCEDURE [XDCL] osp$system_error
    (    error_message: string ( * );
         status: ^ost$status);

    display ('osp$system_error');
    display (error_message);
    IF status <> NIL THEN
      display_status (status^);
    IFEND;
  PROCEND osp$system_error;

?? SKIP := 5 ??

  PROCEDURE [XDCL] pfp$process_job_end;

    display (' pfp$process_job_end ');
  PROCEND pfp$process_job_end;

?? SKIP := 5 ??

  PROCEDURE [XDCL] pfp$set_task_environment
    (    p_client_job_space: ^dft$client_job_space);

  PROCEND pfp$set_task_environment;
?? SKIP := 5 ??


  PROCEDURE [XDCL] pmp$long_term_wait
    (    requested_ms: 0 .. 0ffffffffffff(16);
         expected_ms: 0 .. 0ffffffffffff(16));

    display (' pmp$long_term_wait returning ');
  PROCEND pmp$long_term_wait;

?? SKIP := 5 ??

  PROCEDURE [XDCL] pmp$wait
    (    requested_ms: 0 .. 0ffffffffffff(16);
         expected_ms: 0 .. 0ffffffffffff(16));

  PROCEND pmp$wait;

?? SKIP := 5 ??

  PROCEDURE [XDCL, #GATE] cmp$get_next_request
    (    element_name: cmt$element_name;
     VAR next_request: ^iot$io_request;
     VAR status: ost$status);

  PROCEND cmp$get_next_request;
?? SKIP := 5 ??

  PROCEDURE [XDCL, #GATE] cmp$get_pp_number
    (    element_name: cmt$element_name;
     VAR pp_number: iot$pp_number;
     VAR status: ost$status);

    pp_number := 1;
    status.normal := TRUE;

  PROCEND cmp$get_pp_number;
?? SKIP := 5 ??

  PROCEDURE [XDCL, #GATE] dmp$mfh_for_sfid
    (    system_file_id: gft$system_file_identifier;
     VAR status: ost$status);


  PROCEND dmp$mfh_for_sfid;
?? SKIP := 5 ??

  PROCEDURE [XDCL, #GATE] mmp$restart_server_request
    (    p_cpu_queue_entry: ^dft$cpu_queue_entry;
         remote_request: dft$remote_request);

  PROCEND mmp$restart_server_request;

?? SKIP := 5 ??

  PROCEDURE [XDCL, #GATE] mtp$error_stop
    (    text: string (*));

    display ('ERROR_STOP called with:');
    display (text);

  PROCEND mtp$error_stop;

?? SKIP := 5 ??

  PROCEDURE [XDCL, #GATE] cmp$store_file_server_info
    (    element_name: cmt$element_name;
         next_request: ^iot$io_request;
         one_word_response_allowed: boolean;
         one_word_response_processor: dft$one_word_response_handler;
     VAR status: ost$status);

  PROCEND cmp$store_file_server_info;
?? EJECT ??

  PROCEDURE [XDCL] stp$get_set_owner ALIAS 'STAIGOW'
    (    set_name: stt$set_name;
     VAR set_owner: ost$user_identification;
     VAR status: ost$status);

    status.normal := TRUE;
    set_owner.family := '$SYSTEM';
    set_owner.user := '$SYSTEM';
  PROCEND stp$get_set_owner;

?? EJECT ??
  { Operator display stubs

  VAR
    ofv$system_line_info: [XDCL] array [oft$refreshing_displays] of oft$system_line_info;


  PROCEDURE [XDCL] dpp$change_window
    (    window_id: dpt$window_id;
         class: dpt$window_class;
         kind: dpt$window_kind;
     VAR status: ost$status);

    osp$set_status_abnormal ('GS', 333000, 'NO CONSOLE DISPLAYS ', status);
  PROCEND dpp$change_window;

  PROCEDURE [XDCL] dpp$clear_window
    (    window_id: dpt$window_id;
     VAR status: ost$status);

    osp$set_status_abnormal ('GS', 333000, 'NO CONSOLE DISPLAYS ', status);
  PROCEND dpp$clear_window;

  PROCEDURE [XDCL] dpp$set_title
    (    window_id: dpt$window_id;
         title: string ( * );
     VAR status: ost$status);

    osp$set_status_abnormal ('GS', 333000, 'NO CONSOLE DISPLAYS ', status);
  PROCEND dpp$set_title;

  PROCEDURE [XDCL] dpp$put_next_line
    (    window_id: dpt$window_id;
         line: string ( * );
     VAR status: ost$status);

    osp$set_status_abnormal ('GS', 333000, 'NO CONSOLE DISPLAYS ', status);
  PROCEND dpp$put_next_line;

?? SKIP := 5 ??

  PROCEDURE [XDCL] xxp$idle_requests
    (    p_queue_interface_table: ^dft$queue_interface_table;
         queue_index: dft$queue_index);

    VAR
      p_cpu_queue: ^dft$cpu_queue;

    p_cpu_queue := p_queue_interface_table^.queue_directory.cpu_queue_pva_directory [queue_index].
          p_cpu_queue;
    p_cpu_queue^.queue_header.partner_status.deactivate_complete := TRUE;

  PROCEND xxp$idle_requests;


MODEND dfm$server_stubs;
