[comp.os.vms] uw nntp remote news reader, fix

dorl@vms.macc.wisc.edu (Michael Dorl - MACC) (08/01/88)

The news program I distributed last week is subject to the
infamous line eater problem.  The fix is to replace function
srv_send found in file news.for with the following code:

	Integer Function Srv_Send (Msg)

	Include 'News.Def'

C Description
C
C   Send data from Buffer to News Server
C
C   Returns success or failure.

C Parameter Definitions

	Character *(*)		Msg

C Local definitions

	Character *512		Buf
	Integer	  *4		Buf_Addr
	Integer   *4		Buf_Lg
	Integer   *4		CC

C Begin Srv_Send

	Buf_Lg   = Len(Msg)
	If (Msg(1:Buf_Lg) .eq. ' ') Then
	  Buf = Char(13) // Char(10)
	  Buf_Lg = 0
	Else
	  Buf = Msg(1:Buf_Lg) // Char(13) // Char(10)
	EndIf
	Buf_Addr = %Loc(Buf)
	Buf_Lg   = Buf_Lg+2

	CC = Send
     $    (
     $     %Val(Channel),
     $     %Val(Buf_Addr),
     $     %Val(Buf_Lg),
     $     %Val(0)
     $    )

	If (CC .eq. -1) Then
	  Srv_Send = 0
	Else
	  Srv_Send = 1
	EndIf

	Return

	End ! Srv_Send

PS

 I'd be interested to know if anyone got the program to work.

 I'll be on vacation from 8/2 to 8/10 so don't expect any response
 to queries during that period.

Michael Dorl (608) 262-0466
dorl@vms.macc.wisc.edu
dorl@wiscmacc.bitnet