Help text: output rfkill type names from an array instead of a static string.
diff --git a/rfkill.c b/rfkill.c
index 8fa4c6a..bda649a 100644
--- a/rfkill.c
+++ b/rfkill.c
@@ -291,6 +291,8 @@
 
 static void usage(void)
 {
+	const struct rfkill_type_str *p;
+
 	fprintf(stderr, "Usage:\t%s [options] command\n", argv0);
 	fprintf(stderr, "Options:\n");
 	fprintf(stderr, "\t--version\tshow version (%s)\n", rfkill_version);
@@ -301,7 +303,10 @@
 	fprintf(stderr, "\tblock IDENTIFIER\n");
 	fprintf(stderr, "\tunblock IDENTIFIER\n");
 	fprintf(stderr, "where IDENTIFIER is the index no. of an rfkill switch or one of:\n");
-	fprintf(stderr, "\t<idx> all wifi wlan bluetooth uwb ultrawideband wimax wwan gps\n");
+	fprintf(stderr, "\t<idx>");
+	for (p = rfkill_type_strings; p->name != NULL; p++)
+		fprintf(stderr, " %s", p->name);
+	fprintf(stderr, "\n");
 }
 
 static void version(void)