Blob Blame History Raw
diff --git a/test/ipptool.c b/test/ipptool.c
index 703e681..bfff1f1 100644
--- a/test/ipptool.c
+++ b/test/ipptool.c
@@ -201,6 +201,7 @@ main(int  argc,				/* I - Number of command-line args */
 			name[1024],	/* Name/value buffer */
 			*value,		/* Pointer to value */
 			filename[1024],	/* Real filename */
+			resolved[1024],	/* Resolved mDNS URI */
 			testname[1024],	/* Real test filename */
 			uri[1024];	/* Copy of printer URI */
   const char		*ext,		/* Extension on filename */
@@ -609,6 +610,22 @@ main(int  argc,				/* I - Number of command-line args */
 #endif /* HAVE_SSL */
 
       vars.uri   = argv[i];
+
+      if (strstr(vars.uri, "._tcp"))
+      {
+       /*
+        * Resolve URI...
+        */
+
+        if (!_httpResolveURI(vars.uri, resolved, sizeof(resolved), _HTTP_RESOLVE_DEFAULT, NULL, NULL))
+        {
+          _cupsLangPrintf(stderr, _("%s: Unable to resolve \"%s\"."), "ipptool", vars.uri);
+          return (NULL);
+        }
+
+        vars.uri = resolved;
+      }
+
       uri_status = httpSeparateURI(HTTP_URI_CODING_ALL, vars.uri,
                                    vars.scheme, sizeof(vars.scheme),
                                    vars.userpass, sizeof(vars.userpass),