Kraken FTP Decoder
API will be changed later. (due to problematic design)
Tutorial
Following example extracts README file from ftp.gnu.org PCAP dump:
package org.krakenapps.pcap.decoder.ftp;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import org.krakenapps.pcap.Protocol;
import org.krakenapps.pcap.util.FileExtractor;
import org.krakenapps.pcap.util.PcapFileRunner;
public class FtpDecoderTest {
public static void main(String[] args) throws IOException {
PcapFileRunner runner = new PcapFileRunner(new File("gnu_ftp.pcap"));
FtpDecoder ftp = new FtpDecoder(runner.getTcpDecoder().getProtocolMapper());
ftp.register(new FtpProcessor() {
@Override
public void viewList(byte[] list) {
System.out.println(new String(list));
}
@Override
public void onCommand(String command) {
System.out.println(command);
}
@Override
public void onReply(String reply) {
System.out.println(reply);
}
@Override
public void onExtractFile(InputStream is, String fileName) {
System.out.println("dumping " + fileName);
File f = new File(fileName);
try {
FileExtractor.extract(f, is);
} catch (IOException e) {
e.printStackTrace();
}
}
});
System.out.println("dumping...");
runner.setTcpProcessor(Protocol.FTP, ftp);
runner.run();
}
}
Attachments
-
gnu_ftp.pcap
(5.4 KB) -
added by xeraph 4 months ago.
