Received: from copland.udel.edu by huey.udel.edu id aa24685; 7 Apr 97 19:21 EDT
Received: from arl-img-5.compuserve.com (arl-img-5.compuserve.com [149.174.217.135]) by copland.udel.edu (8.8.5/8.7.3) with SMTP id TAA26123 for <mills@udel.edu>; Mon, 7 Apr 1997 19:21:36 -0400 (EDT)
Received: by arl-img-5.compuserve.com (8.6.10/5.950515)
	id TAA04674; Mon, 7 Apr 1997 19:21:05 -0400
Date: Mon, 7 Apr 1997 19:20:30 -0400
From: Peter Bauer <PBHD@compuserve.com>
Subject: new refclock-driver using shared memory
To: "David L. Mills" <mills@udel.edu>
Message-ID: <199704071920_MC2-13E9-2878@compuserve.com>

A few weeks abo, I sent you the follwoing mail
> Hello,
>  Based upon xntp3-5.89, I have added a refclock which uses a shared
>  memory segment to receive/request its clock values. I need this
> ...
Hmm, sometimes it takes a few weeks longer. Find below a patch which 
can be applied to xntp3-5.89 (Unpack an xntp3-5.89, temporyly rename the
dir
  do mod, and apply the patch: 
    tar xvf xntp3-5.89.tar
    mv xntp3-5.89 mod
    patch -p0 <shm_patch
    mv mod xntp3-5.89
  )
To enable the shm-driver, use
  ./config --enable-SHM
there is also included a small html-description and a test-program in
the util-subdir (make sht)

The whole thing works also with NT, but I have removed the diffs of the
*.mak-files from the patch, because they look strange to me. However,
defining SHM and adding refclock_shm.c to the project should do the job.

Gruss
  Peter Bauer (100136.3530@compuserve.com)


begin 644 shm_patch.z
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
)'S-!*]!@`0$`
`
end
