aboutsummaryrefslogtreecommitdiffstats
path: root/gtk2/main.c
diff options
context:
space:
mode:
authorguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>2002-10-25 01:08:49 +0000
committerguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>2002-10-25 01:08:49 +0000
commit973c0ccc78b87335ff09aa8c7f9861928533b3b3 (patch)
tree30cd9aa591a7fbd887e846e479d34f4d06eb03df /gtk2/main.c
parent8b877577adbbbb33ff4bf8f3d75b92a2fcb4db2e (diff)
From Ronnie Sahlberg: Ethereal support for DCERPCSTAT.
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@6499 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'gtk2/main.c')
-rw-r--r--gtk2/main.c40
1 files changed, 38 insertions, 2 deletions
diff --git a/gtk2/main.c b/gtk2/main.c
index 484e9b6bef..431b370301 100644
--- a/gtk2/main.c
+++ b/gtk2/main.c
@@ -1,6 +1,6 @@
/* main.c
*
- * $Id: main.c,v 1.17 2002/10/25 00:29:12 guy Exp $
+ * $Id: main.c,v 1.18 2002/10/25 01:08:48 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -133,6 +133,8 @@
#include "../tap.h"
#include "rpc_stat.h"
#include "rpc_progs.h"
+#include "../packet-dcerpc.h"
+#include "dcerpc_stat.h"
#ifdef WIN32
#include "capture-wpcap.h"
@@ -1776,8 +1778,42 @@ main(int argc, char *argv[])
fprintf(stderr, " \"-z rpc,programs\"\n");
exit(1);
}
+ } else if(!strncmp(optarg,"dcerpc,",7)){
+ if(!strncmp(optarg,"dcerpc,rtt,",11)){
+ e_uuid_t uuid;
+ int d1,d2,d3,d40,d41,d42,d43,d44,d45,d46,d47;
+ int major, minor;
+ int pos=0;
+ if(sscanf(optarg,"dcerpc,rtt,%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x,%d.%d%n", &d1,&d2,&d3,&d40,&d41,&d42,&d43,&d44,&d45,&d46,&d47,&major,&minor,&pos)==13){
+ uuid.Data1=d1;
+ uuid.Data2=d2;
+ uuid.Data3=d3;
+ uuid.Data4[0]=d40;
+ uuid.Data4[1]=d41;
+ uuid.Data4[2]=d42;
+ uuid.Data4[3]=d43;
+ uuid.Data4[4]=d44;
+ uuid.Data4[5]=d45;
+ uuid.Data4[6]=d46;
+ uuid.Data4[7]=d47;
+ if(pos){
+ gtk_dcerpcstat_init(&uuid,major,minor,optarg+pos);
+ } else {
+ gtk_dcerpcstat_init(&uuid,major,minor,NULL);
+ }
+ } else {
+ fprintf(stderr, "ethereal: invalid \"-z dcerpc,rtt,<uuid>,<major version>.<minor version>[,<filter>]\" argument\n");
+ exit(1);
+ }
+ } else {
+ fprintf(stderr, "tethereal: invalid -z argument. Argument must be one of:\n");
+ fprintf(stderr, " \"-z dcerpc,rtt,<uuid>,<major version>.<minor version>[,<filter>]\"\n");
+ exit(1);
+ }
} else {
- fprintf(stderr, "ethereal: invalid -z argument. Argument must be \"-z rpc,...\"\n");
+ fprintf(stderr, "ethereal: invalid -z argument. Argument must be one of:\n");
+ fprintf(stderr, " \"-z rpc,...\"\n");
+ fprintf(stderr, " \"-z dcerpc,...\"\n");
exit(1);
}
break;