11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12 * version 2 for more details (a copy is included in the LICENSE file that 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 */ 23 24 /* 25 * @test 26 * @bug 8195976 27 * @summary Tests that we can get the attributes of a DNS entry using special 28 * qualifiers. 29 * @modules java.base/sun.security.util 30 * @library ../lib/ 31 * @build DNSTestUtils DNSServer DNSTracer 32 * @run main GetAny 33 */ 34 35 import javax.naming.directory.Attributes; 36 import javax.naming.directory.DirContext; 37 import javax.naming.directory.InitialDirContext; 38 import java.net.DatagramSocket; 39 import java.net.InetAddress; 40 import java.util.Hashtable; 41 42 public class GetAny { 43 private static final String KEY = "host1"; 44 45 private static final String[] MANDATORY = { "A", "MX", "HINFO", "TXT", "29" 46 // "LOC" 47 }; 48 49 private static final String[] OPTIONAL = {}; 50 51 public static void main(String argv[]) throws Exception { 52 // Create socket on localhost only to avoid possible noise packet 53 DatagramSocket socket = new DatagramSocket(0, 54 InetAddress.getLoopbackAddress()); 55 56 // initialize test 57 Hashtable<Object, Object> env; 58 59 env = DNSTestUtils.initEnv(socket, GetAny.class.getName(), argv); 60 61 DirContext ctx = null; 62 63 try { 64 // connect to server 65 ctx = new InitialDirContext(env); 66 67 // Any type from IN class 68 Attributes retAttrs = ctx.getAttributes(KEY, new String[] { "*" }); 69 DNSTestUtils.verifySchema(retAttrs, MANDATORY, OPTIONAL); 70 71 retAttrs = ctx.getAttributes(KEY, new String[] { "* *" }); 72 DNSTestUtils.verifySchema(retAttrs, MANDATORY, OPTIONAL); 73 74 retAttrs = ctx.getAttributes(KEY, new String[] { "IN *" }); 75 DNSTestUtils.verifySchema(retAttrs, MANDATORY, OPTIONAL); 76 77 } finally { 78 DNSTestUtils.cleanup(ctx); 79 } 80 } 81 } | 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12 * version 2 for more details (a copy is included in the LICENSE file that 13 * accompanied this code). 14 * 15 * You should have received a copy of the GNU General Public License version 16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 */ 23 24 /* 25 * @test 26 * @bug 8195976 27 * @summary Tests that we can get the attributes of a DNS entry using special 28 * qualifiers. 29 * @modules java.base/sun.security.util 30 * @library ../lib/ 31 * @run main GetAny 32 */ 33 34 import javax.naming.directory.Attributes; 35 36 public class GetAny extends GetAttrsBase { 37 38 public static void main(String[] args) throws Exception { 39 new GetAny().run(args); 40 } 41 42 @Override public Attributes getAttributes() { 43 return null; 44 } 45 46 @Override public void runTest() throws Exception { 47 initContext(); 48 49 // Any type from IN class 50 Attributes retAttrs = context() 51 .getAttributes(getKey(), new String[] { "*" }); 52 verifyAttributes(retAttrs); 53 54 retAttrs = context().getAttributes(getKey(), new String[] { "* *" }); 55 verifyAttributes(retAttrs); 56 57 retAttrs = context().getAttributes(getKey(), new String[] { "IN *" }); 58 verifyAttributes(retAttrs); 59 } 60 } |