{
{    The purpose of this request is to extract a prefix from a message.  The
{ prefix may consist of the entire message.  The portion of the message which
{ is extracted will be released.
{
{    NOTE:  If the message identifier is invalid, prefix is NIL, or prefix
{          length is zero, a system error ('Buffer Manager Caller') will occur.
{
{       NLP$BM_EXTRACT_MESSAGE_PREFIX (PREFIX, PREFIX_LENGTH, MESSAGE_ID,
{             BYTES_MOVED)
{
{ PREFIX: (input)  This parameter specifies the address where the extracted
{       prefix is to be stored.  This address should be a pointer inside of the
{       NAM/VE segments i.e.  not a pointer into an external user's address
{       space.
{
{ PREFIX_LENGTH: (input)  This parameter specifies the length of the prefix to
{       be extracted.
{
{ MESSAGE_ID: (input, output)  This parameter specifies the identifier of the
{       message from which the prefix is extracted.  This message will be
{       released and an empty message identifier returned if the extracted
{       prefix consists of the entire message.
{
{ BYTES_MOVED: (output) This parameter specifies the amount of data actually
{       moved from the message to the prefix.  If the number of bytes in the
{       message is greater than or equal to the size of the prefix the parameters
{       bytes_moved and prefix_length will be equivalent.  If the number of bytes
{       in the message is less than the size of the prefix the bytes_moved
{       parameter will reflect the number of bytes that had actually been in the
{       message.
{
