  	/* ipv6 fields */
  	int& flowid() { return (fid_); }
 --- dist-ns-allinone-2.26/ns-2.26/common/packet.h	Wed Feb 26 15:07:40 2003
-+++ ns-allinone-2.26/ns-2.26/common/packet.h	Fri Nov 28 16:55:25 2003
-@@ -519,8 +519,8 @@
++++ ns-allinone-2.26/ns-2.26/common/packet.h	Fri Jan 16 16:09:19 2004
+@@ -325,6 +325,10 @@
+ 	inline int& ref_count() { return (ref_count_); }
+ 	static inline Packet* alloc();
+ 	static inline Packet* alloc(int);
++        static inline int compress(unsigned long* pTarget, 
++				   unsigned long* pSource, int Count);
++	static inline int uncompress(unsigned long* pTarget, 
++				     unsigned long* pSource, int Count);
+ 	inline void allocdata(int);
+ 	// dirty hack for diffusion data
+ 	inline void initdata() { data_  = 0;}
+@@ -519,8 +523,8 @@
  			abort();
  	}
  	init(p); // Initialize bits_[]

 };
 
 #endif
--- dist-ns-allinone-2.26/ns-2.26/common/ip.h	Wed Feb 26 15:07:39 2003
+++ ns-allinone-2.26/ns-2.26/common/ip.h	Fri Nov 28 16:55:25 2003
@@ -76,11 +76,11 @@

+ return(targoffset);
+}
+
+inline int Packet::uncompress(unsigned long* pTarget, unsigned long* pSource, int Count)
+{ // Reverse above compression
+  // Target buffer MUST BE ZERO on entry!
+int offset = 0;
