#!/usr/bin/env ruby

require 'RubyLibtrace'
#require 'rlt-support'

# 1925, Sun 6 Apr 08 (PDT)
# IP6.rb: Demonstrate IPv6 header decodes
# Copyright (C) 2008, Nevil Brownlee, U Auckland | CAIDA | Wand


f = Trace.new(ARGV[0])
f.start

n = 0;  nip6 = 0
f.each_packet do |pkt|
   n += 1

   ip6 = pkt.ip6
   next if !ip6

   print "Packet #{n}: version=#{ip6.version}, " +
      "traffic_class=#{ip6.traffic_class}, flow_label=#{ip6.flow_label}\n"
   print "payload len=#{ip6.payload_len}, next_hdr=#{ip6.next_hdr}, " +
      "hop_limit=#{ip6.hop_limit}\n"
   print "Source=#{ip6.src_prefix},  Dest=#{ip6.dst_prefix}\n\n"

   nip6 += 1
   break if nip6 == 5
end

