aboutsummaryrefslogtreecommitdiffstats
path: root/tap-rpcprogs.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2002-10-31 22:16:01 +0000
committerGuy Harris <guy@alum.mit.edu>2002-10-31 22:16:01 +0000
commit8442ad9a325bbfa3a19f9d55bb4df9c7a01f87f4 (patch)
treee75e61ee1cff0099bba850493b73b51b9a4f0e4f /tap-rpcprogs.c
parent05c9a9709146670ee19fd068a8de69d750f98728 (diff)
From Ronnie Sahlberg: have a registration interface for tap listeners,
and generate the table of stuff to register from tap source files, so Tethereal doesn't need to know what tap listeners exist. Get rid of "tap-xxx.h" files, as they're now empty. Add "tethereal-tap-register.c" to the .cvsignore file, as it's a new generated file. Update "Makefile.nmake" to generate "tethereal-tap-register.c". Clean up "Makefile.am" and "Makefile.nmake" a bit. svn path=/trunk/; revision=6525
Diffstat (limited to 'tap-rpcprogs.c')
-rw-r--r--tap-rpcprogs.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/tap-rpcprogs.c b/tap-rpcprogs.c
index 83da9823d1..50d3f0c21d 100644
--- a/tap-rpcprogs.c
+++ b/tap-rpcprogs.c
@@ -1,7 +1,7 @@
/* tap-rpcprogs.c
* rpcstat 2002 Ronnie Sahlberg
*
- * $Id: tap-rpcprogs.c,v 1.2 2002/10/23 23:12:34 guy Exp $
+ * $Id: tap-rpcprogs.c,v 1.3 2002/10/31 22:16:01 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -39,9 +39,8 @@
#include <string.h>
#include "epan/packet_info.h"
#include "tap.h"
-#include "tap-rpcprogs.h"
#include "packet-rpc.h"
-
+#include "register.h"
/* used to keep track of statistics for a specific program/version */
typedef struct _rpc_program_t {
@@ -58,8 +57,9 @@ static rpc_program_t *prog_list=NULL;
static int already_enabled=0;
static int
-rpcprogs_packet(void *dummy1 _U_, packet_info *pinfo, epan_dissect_t *edt _U_, rpc_call_info_value *ri)
+rpcprogs_packet(void *dummy1 _U_, packet_info *pinfo, epan_dissect_t *edt _U_, void *pri)
{
+ rpc_call_info_value *ri=pri;
nstime_t delta;
rpc_program_t *rp=NULL;
@@ -219,20 +219,25 @@ rpcprogs_draw(void *dummy _U_)
}
-void
-rpcprogs_init(void)
+static void
+rpcprogs_init(char *optarg _U_)
{
if(already_enabled){
return;
}
already_enabled=1;
- if(register_tap_listener("rpc", NULL, NULL, NULL, (void*)rpcprogs_packet, (void*)rpcprogs_draw)){
+ if(register_tap_listener("rpc", NULL, NULL, NULL, rpcprogs_packet, rpcprogs_draw)){
fprintf(stderr,"tethereal: rpcprogs_init() failed to attach to tap.\n");
exit(1);
}
}
+void
+register_tap_listener_rpcprogs(void)
+{
+ register_ethereal_tap("rpc,programs", rpcprogs_init, NULL, NULL);
+}