Decode.js

This example demonstrates how to decode packets from JScript.
See also:
PacketX , Packet , SourceMacAddress , SourceIpAddress , SourcePort
// File:         Decode.vbs
//
// Description:  This script demonstrates PacketX protocol decoding
//
// Notes:        Run the script from command line using the cscript.exe program
//
// Created:      May 10, 2004
//
// Copyright (c) 2000-2004 BeeSync Technologies.

// Protocol types
var cPktXProtocolTypeEthernet = 1;
var cPktXProtocolTypeIp       = 2;
var cPktXProtocolTypeUdp      = 3;
var cPktXProtocolTypeTcp      = 4;

// Create PacketX object
var oPktX = WScript.CreateObject("PktX.PacketX","PacketX_");

// Display network adapters
for (i = 0; i < oPktX.Adapters.Count ; i++) {
  if (oPktX.Adapters(i+1).IsGood == true) {
    WScript.Echo("(" + (i+1) + ") " + oPktX.Adapters(i+1).Description);
  }
}

// Select network adapter
oNullAdapter = WScript.CreateObject("PktX.Adapter");
oPktX.Adapter = oNullAdapter;
while(oPktX.Adapter == oNullAdapter) 
{
  WScript.StdOut.Write("Choose adapter#")
  try { 
    oPktX.Adapter = oPktX.Adapters(WScript.StdIn.ReadLine());
  }
  catch(err){
    oPktX.Adapter = oNullAdapter;
  } 
}

// Run 60 secs
oPktX.Start();
  WScript.Sleep(60000);
oPktX.Stop();

// Packet event handler
function PacketX_OnPacket(oPacket) 
{
  switch(oPacket.Protocol) {
    case cPktXProtocolTypeEthernet:
      WScript.Echo("MAC:\t" + oPacket.SourceMacAddress + "\t=> " + 
        oPacket.DestMacAddress);
      break;
    case cPktXProtocolTypeIp:
      WScript.Echo("IP:\t" + oPacket.SourceIpAddress + "\t=> " + 
        oPacket.DestIpAddress);
      break;
    case cPktXProtocolTypeTcp:
      WScript.Echo("TCP:\t" + oPacket.SourceIpAddress + "\t=> " + 
        oPacket.DestIpAddress + "\t" + oPacket.SourcePort + "\t=> " + 
        oPacket.DestPort);
      break;
    case cPktXProtocolTypeUdp:
      WScript.Echo("UDP:\t" + oPacket.SourceIpAddress + "\t=> " + 
        oPacket.DestIpAddress + "\t" + oPacket.SourcePort + "\t=> " + 
        oPacket.DestPort);
      break;
  }
}

Copyright © 2000-2007 beeSync. All rights reserved.