Ethereal-dev: [Ethereal-dev] Patch to packet-ftp.c

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: "Giles Scott" <gscott2@xxxxxxxxxxxxxxxxxx>
Date: Mon, 6 Oct 2003 13:10:05 +0100
Title: Patch to packet-ftp.c

Hi

Please find a patch to packet-ftp.c.

This patch adds functionality to be able to use display filters against the FTP PORT and PASSIVE commands;

Also it checks to see if there is a NAT issue by checking the SIP and the IP address in the port command are the same.

This additional functionality is very useful when working with NAT'ing routers or SLB devices.

new display filters

ftp.active.cip
ftp.active.port
ftp.active.nat

ftp.passive.ip
ftp.passive.port
ftp.passive.nat

If in passive mode the IP address is different to the control channel IP address, add the IP address in the passive command to the conversation list.

Please consider this patch for inclusion in Ethereal. (its not the best coding in the world but it appears to work)
I'm not sure if it will work on Unix as I think there might be an endian issue, when converting the string IP address.

compiled with MSVC 6 on WinXP Ethereal-0.9.15 base.

attached is a trace showing a passive command with a different IP address (frame 18).

Cheers

Giles Scott

 

Attachment: packet-ftp.c
Description: Binary data

Attachment: packet-ftp.c.diff
Description: Binary data

Attachment: passive_ftp_nat.libpcap
Description: Binary data