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