  PROCEDURE [INLINE] dfp$check_self_serving_job
    (    server_mainframe_id: pmt$binary_mainframe_id;
     VAR self_serving: boolean);

?? PUSH (LISTEXT := ON) ??

 { This procedure checks that in loopback mode, if the
 { current job is the job with the clone tasks that are
 { servicing the specified  server_mainframe.  The caller
 { of this may desire to not treat the request as server
 { to avoid self serving clone tasks, which causes
 { deadlocks.

    VAR
      client_mainframe_job_name: jmt$user_supplied_name,
      current_job_user_supplied_name: jmt$user_supplied_name,
      current_mainframe_id: pmt$mainframe_id,
      current_system_supplied_name: jmt$system_supplied_name,
      status: ost$status;

    self_serving := FALSE;
    IF (server_mainframe_id.serial_number = dfc$loopback_server_serial) AND
       (server_mainframe_id.model_number = dfc$loopback_server_model) THEN
      { See if this job is the client mainframe job on the server.
      pmp$get_job_names (current_job_user_supplied_name,
            current_system_supplied_name, status);

      pmp$get_mainframe_id (current_mainframe_id, status);

      dfp$get_client_mf_job_name (current_mainframe_id,
            client_mainframe_job_name);

      self_serving := current_job_user_supplied_name =
            client_mainframe_job_name;
    IFEND;
  PROCEND dfp$check_self_serving_job;
*copyc dfc$loopback_server_constants
*copyc dfc$loopback_server_mainframe
*copyc pmp$get_job_names
*copyc pmt$binary_mainframe_id
*copyc pmp$get_mainframe_id
*copyc dfp$get_client_mf_job_name
?? POP ??


