      function ccall.getfn(lib.handle,fnname)
*
*
*
*
*
*
*
*
*
$catalog local
*
      $include ccall.common

      if cc$nul4 = '0' then
         call ccall.init
      end

      locate(fnname,c.fnnames;l) then
         fn.handle = c.fns[(l*4)-3,4]
         return(fn.handle)
      end

      s1 = cc$nul4
      s2 = CC$FN.DLSYM : fnname : CC$NUL : lib.handle : CC$FN.RTN32 : cc$nul4 : CC$FN.EXIT

      fn.handle = ccall(s1,s2)

      if fn.handle = cc$nul4 then
         return('')
      end

      c.fnnames<-1> = fnname
      c.fns = c.fns : fn.handle

      return(fn.handle)
   end
