diff --git a/networking/nslookup.c b/networking/nslookup.c
index d31801e..c6f4313 100644
--- a/networking/nslookup.c
+++ b/networking/nslookup.c
@@ -271,8 +271,8 @@
 };
 
 static const struct {
-	int type;
-	const char *name;
+	unsigned char type;
+	char name[7];
 } qtypes[] = {
 	{ ns_t_soa,   "SOA"   },
 	{ ns_t_ns,    "NS"    },
@@ -285,7 +285,6 @@
 	{ ns_t_txt,   "TXT"   },
 	{ ns_t_ptr,   "PTR"   },
 	{ ns_t_any,   "ANY"   },
-	{ }
 };
 
 static const char *const rcodes[] = {
@@ -803,7 +802,7 @@
 			ptr = chr + 1;
 
 		for (c = 0;; c++) {
-			if (!qtypes[c].name)
+			if (c == ARRAY_SIZE(qtypes))
 				bb_error_msg_and_die("invalid query type \"%s\"", ptr);
 			if (strcmp(qtypes[c].name, ptr) == 0)
 				break;
@@ -836,13 +835,11 @@
 				add_query(&queries, &n_queries, T_AAAA, *argv);
 #endif
 			}
-		}
-		else {
+		} else {
 			int c;
-			for (c = 0; qtypes[c].name; c++) {
+			for (c = 0; c < ARRAY_SIZE(qtypes); c++) {
 				if (types & (1 << c))
-					add_query(&queries, &n_queries, qtypes[c].type,
-						*argv);
+					add_query(&queries, &n_queries, qtypes[c].type,	*argv);
 			}
 		}
 		argv++;
