argus-2.0.0R

Carter Bullard carter at qosient.com
Fri Jan 19 10:52:17 EST 2001


Hey William,
   Yes, Neil found this last night and a fix is in "S".
I added a bit more code, as it was primarily blowing up
in Arps, which shouldn't get to rtp checking code anyway.

I've got a copy of "S" at
ftp://qosient.com/dev/argus/argus-2.0/argus-2.0.0S.tar.gz

Could you give this a run before I tell the list?

Thanks,

Carter

Carter Bullard
QoSient, LLC
300 E. 56th Street, Suite 18K
New York, New York  10022

carter at qosient.com
Phone +1 212 813-9426
Fax   +1 212 813-9426

> -----Original Message-----
> From: owner-argus at lists.andrew.cmu.edu
> [mailto:owner-argus at lists.andrew.cmu.edu]On Behalf Of William Setzer
> Sent: Friday, January 19, 2001 10:37 AM
> To: argus at lists.andrew.cmu.edu
> Subject: Re: argus-2.0.0R
> 
> 
> "Carter Bullard" <carter at qosient.com> writes:
> :
> :    Argus-2.0.0R is now available.  This fixes a number of
> : problems that contributed to the bug that William reported 
> yesterday.
> : Please give this a try.
> 
> Ironically, it now also core dumps at the STRUCTCAPTURED() fix
> I reported yesterday.  I brute-forced the alignment issue and it
> appears to work now.  (I probably missed some, as I only repaired
> the immediate core dumps.)  Here's a patch.
> 
> 
> William
> 
> 
> --- Argus_app.c.orig	Thu Jan 18 17:36:56 2001
> +++ Argus_app.c	Fri Jan 19 10:26:07 2001
> @@ -48,8 +48,11 @@
>     ipflow = (struct ArgusIPFlow *) &flowstr->flow;
>  
>     if (*state == ARGUS_START) {
> -      struct rtphdr  *rtp  = (struct rtphdr *)  ArgusThisUpHdr;
> -      struct rtcphdr *rtcp = (struct rtcphdr *) ArgusThisUpHdr;
> +      struct rtphdr  rtb,  *rtp  = &rtb;
> +      struct rtcphdr rtcb, *rtcp = &rtcb;
> +
> +      (void)memcpy((char *)ArgusThisUpHdr, (char *)&rtb,  
> sizeof(rtb));
> +      (void)memcpy((char *)ArgusThisUpHdr, (char *)&rtcb, 
> sizeof(rtcb));
>  
>        flowstr->state.status &= ~ARGUS_CONNECTED;
>  
> @@ -304,8 +307,10 @@
>  
>        case ARGUS_RTCP_FLOWTAG: {
>           struct ArgusRTCPObject *rtcpObject = (struct 
> ArgusRTCPObject *) flowstr->TransportDSRBuffer;
> -         struct rtcphdr *rtcp = (struct rtcphdr *) ArgusThisUpHdr;
> +	  struct rtcphdr rtcb, *rtcp = &rtcb;
>           struct rtcphdr *ArgusThisRtcpHdr = NULL;
> +
> +	 (void)memcpy((char *)ArgusThisUpHdr, (char *)&rtcb, 
> sizeof(rtcb));
>  
>           if (rtcpObject != NULL) {
>              if (flowstr->state.rev == ArgusThisDir)
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3123 bytes
Desc: not available
URL: <https://pairlist1.pair.net/pipermail/argus/attachments/20010119/3a27d6aa/attachment.bin>


More information about the argus mailing list