internal static HostAddress Get(BinaryReader reader) { ushort byteCount; Message.FromBytes(reader.ReadBytes(2), out byteCount); HostAddress ha = new HostAddress(); ha.Address = new IPAddress(reader.ReadBytes(byteCount)); return ha; }
internal static ResponseData Get(Type type, System.IO.BinaryReader reader) { switch (type) { case Type.A: case Type.AAAA: return(HostAddress.Get(reader)); case Type.NS: break; case Type.MD: break; case Type.MF: break; case Type.CNAME: return(CName.Get(reader)); case Type.SOA: break; case Type.MB: break; case Type.MG: break; case Type.MR: break; case Type.NULL: break; case Type.WKS: break; case Type.PTR: return(Ptr.Get(reader)); case Type.HINFO: break; case Type.MINFO: break; case Type.MX: break; case Type.TXT: return(Txt.Get(reader)); case Type.SRV: return(Srv.Get(reader)); default: break; } //throw new NotImplementedException(string.Format("Cannot read {0} response", type)); return(UnknownResponseData.Get(reader)); }