handleQuery(msg);
if (packet.getPort() != MDNS_PORT) { handleQuery(msg, packet.getAddress(), packet.getPort()); } handleQuery(msg, group, MDNS_PORT);
	public void run()	{	    try {		byte buf[] = new byte[MAX_MSG_ABSOLUTE];		DatagramPacket packet = new DatagramPacket(buf, buf.length);		while (!done) {		    packet.setLength(buf.length);		    socket.receive(packet);		    if (done) {			break;		    }		    try {			DNSIncoming msg = new DNSIncoming(packet);			if (debug > 0) {			    msg.print(debug > 1);			    System.out.println();			}			if (msg.isQuery()) {			    handleQuery(msg);			} else {			    handleResponse(msg);			}		    } catch (IOException e) {			e.printStackTrace();		    }		}	    } catch (IOException e) {		if (!done) {		    e.printStackTrace();		}	    }	}