      SUBROUTINE GETPNAM(NAME,LENGTH)
      IMPLICIT INTEGER*4 (S)
      INTEGER*4 NAME(2)
      COMMON/GET_NAM/ISIZE,ICODE,IADDR,ILEN,IEND
      INTEGER*2 ISIZE,ICODE
      EXTERNAL JPI$_PRCNAM,SS$_ABORT
      ISIZE = '0000FFFF'X.AND.NAME(1)
      ICODE = %LOC(JPI$_PRCNAM)
      IADDR = NAME(2)
      ILEN = %LOC(LENGTH)
      IEND = 0
      CALL IFERR(LIB$GET_EF(IFLAG),'UNABLE TO GET EF IN GETPNAM')
      I = SYS$GETJPI(%VAL(IFLAG),,,ISIZE,,,)
      IF(MOD(I,8).NE.1)THEN
         CALL ERRMES(I)
         TYPE *,'UNABLE TO DETERMINE PROCESS NAME'
         CALL SYS$EXIT(SS$_ABORT)
      END IF
      CALL IFERR(LIB$FREE_EF(IFLAG),'UNABLE TO FREE EF IN GETPNAM')
      RETURN
      END
