/// <summary> /// Returns the hash value for a Message /// </summary> /// <returns>The hash value for a Message</returns> public override int GetHashCode() { int retValue = headers.GetHashCode(); ArrayList hc = new ArrayList(); if (dest_addr != null) { hc.Add(dest_addr.GetHashCode()); } if (src_addr != null) { hc.Add(src_addr.GetHashCode()); } if (buf != null) { hc.Add(buf.GetHashCode()); } for (int i = 0; i < hc.Count; i++) { retValue = retValue.GetHashCode() ^ hc[i].GetHashCode(); } return(retValue); }