diff -Nur dsniff-2.3/configure dsniff-2.3.patched/configure
---- dsniff-2.3/configure 2005-06-11 16:38:47.000000000 +0200
-+++ dsniff-2.3.patched/configure 2005-06-11 16:39:26.000000000 +0200
+--- dsniff-2.3/configure 2005-06-11 18:13:59.000000000 +0200
++++ dsniff-2.3.patched/configure 2005-06-11 18:14:37.000000000 +0200
@@ -16,6 +16,8 @@
ac_help="$ac_help
--with-db=DIR use Berkeley DB (with --enable-compat185) in DIR"
echo $ac_n "checking for libnet""... $ac_c" 1>&6
diff -Nur dsniff-2.3/record.c dsniff-2.3.patched/record.c
--- dsniff-2.3/record.c 2000-11-14 16:51:02.000000000 +0100
-+++ dsniff-2.3.patched/record.c 2005-06-11 16:39:49.000000000 +0200
++++ dsniff-2.3.patched/record.c 2005-06-11 18:14:56.000000000 +0200
@@ -13,12 +13,7 @@
#include <stdio.h>
#include <time.h>
static int
xdr_rec(XDR *xdrs, struct rec *rec)
-@@ -86,10 +81,10 @@
+@@ -61,7 +56,6 @@
+
+ tm = localtime(&rec->time);
+ strftime(tstr, sizeof(tstr), "%x %X", tm);
+-
+ srcp = libnet_host_lookup(rec->src, Opt_dns);
+ dstp = libnet_host_lookup(rec->dst, Opt_dns);
+
+@@ -86,10 +80,10 @@
fflush(stdout);
}
static u_char hash[16];
MD5_CTX ctx;
-@@ -102,16 +97,16 @@
+@@ -102,16 +96,16 @@
MD5Update(&ctx, rec->data.n_bytes, rec->data.n_len);
MD5Final(hash, &ctx);
XDR xdrs;
u_char buf[2048];
-@@ -120,15 +115,15 @@
+@@ -120,15 +114,15 @@
if (!xdr_rec(&xdrs, rec))
return (0);
return (1);
}
-@@ -136,18 +131,22 @@
+@@ -136,18 +130,22 @@
void
record_dump(void)
{
- DBT key, data;
-+ datum nextkey, data;
++ datum nextkey, key, content;
XDR xdrs;
struct rec rec;
- while (db->seq(db, &key, &data, R_NEXT) == 0) {
-+ data = gdbm_firstkey ( dbf );
-+ while (data.dptr) {
-+ nextkey = gdbm_nextkey ( dbf, data );
++ key = gdbm_firstkey(dbf);
++ while (key.dptr) {
++ nextkey = gdbm_nextkey(dbf, key);
++ content = gdbm_fetch(dbf, key);
memset(&rec, 0, sizeof(rec));
- xdrmem_create(&xdrs, data.data, data.size, XDR_DECODE);
-+ xdrmem_create(&xdrs, data.dptr, data.dsize, XDR_DECODE);
-
+-
++ xdrmem_create(&xdrs, content.dptr, content.dsize, XDR_DECODE);
if (xdr_rec(&xdrs, &rec)) {
record_print(&rec);
}
xdr_destroy(&xdrs);
-+ free(data.dptr);
-+ data = nextkey;
++ free(key.dptr);
++ key = nextkey;
}
}
-@@ -155,16 +154,23 @@
+@@ -155,16 +153,23 @@
record_init(char *file)
{
int flags, mode;
return (0);
return (1);
-@@ -203,6 +209,6 @@
+@@ -203,6 +208,6 @@
void
record_close(void)
{