diff --git a/asterisk.c b/asterisk.c
index 308519ba27768a2ae19fa080a4c1b8bb1ee8eecb..afdcf7ec62ad664bab4c86cbbb138419610cc78d 100755
--- a/asterisk.c
+++ b/asterisk.c
@@ -88,6 +88,7 @@ int option_overrideconfig = 0;
 int option_reconnect = 0;
 int option_transcode_slin = 1;
 int option_maxcalls = 0;
+int option_dontwarn = 0;
 int fully_booted = 0;
 char record_cache_dir[AST_CACHE_DIR_LEN] = AST_TMP_DIR;
 char debug_filename[AST_FILENAME_MAX] = "";
@@ -1647,6 +1648,9 @@ static void ast_readconfig(void) {
 		/* Disable ANSI colors for console (-c at startup) */
 		} else if (!strcasecmp(v->name, "nocolor")) {
 			option_nocolor = ast_true(v->value);
+		/* Disable some usage warnings for picky people :p */
+		} else if (!strcasecmp(v->name, "dontwarn")) {
+			option_dontwarn = ast_true(v->value);
 		/* Dump core in case of crash (-g) */
 		} else if (!strcasecmp(v->name, "dumpcore")) {
 			option_dumpcore = ast_true(v->value);
diff --git a/frame.c b/frame.c
index e52881fe2c25ac91f0e119033f0549095386c909..23a6e59506be8ec53f0143ea5f2e5bce17fb8b5b 100755
--- a/frame.c
+++ b/frame.c
@@ -578,7 +578,7 @@ static int show_codecs(int fd, int argc, char *argv[])
 	if ((argc < 2) || (argc > 3))
 		return RESULT_SHOWUSAGE;
 
-	if (getenv("I_AM_NOT_AN_IDIOT") == NULL)
+	if (!option_dontwarn)
 		ast_cli(fd, "Disclaimer: this command is for informational purposes only.\n"
 				"\tIt does not indicate anything about your configuration.\n");
 
diff --git a/include/asterisk/options.h b/include/asterisk/options.h
index 9d962bbe5a2f76a2edeec148713ec6724dd7bf13..083b0c4741aecdac378d6160087d3cfb7a64c58d 100755
--- a/include/asterisk/options.h
+++ b/include/asterisk/options.h
@@ -34,6 +34,7 @@ extern int option_cache_record_files;
 extern int option_timestamp;
 extern int option_transcode_slin;
 extern int option_maxcalls;
+extern int option_dontwarn;
 extern char defaultlanguage[];
 extern time_t ast_startuptime;
 extern time_t ast_lastreloadtime;
diff --git a/pbx/pbx_config.c b/pbx/pbx_config.c
index fc069e12bc542b36a675d2c86d09978c08266ec7..8aa523c5aaf9b2304442e249745211824909b46b 100755
--- a/pbx/pbx_config.c
+++ b/pbx/pbx_config.c
@@ -14,6 +14,7 @@
 #include <sys/types.h>
 #include "asterisk/pbx.h"
 #include "asterisk/config.h"
+#include "asterisk/options.h"
 #include "asterisk/module.h"
 #include "asterisk/logger.h"
 #include "asterisk/cli.h"
@@ -1742,8 +1743,10 @@ static int pbx_load_module(void)
 								if (plus)
 									ipri += atoi(plus);
 								lastpri = ipri;
-								if (!strcmp(realext, "_."))
-									ast_log(LOG_WARNING, "The use of '_.' for an extension is strongly discouraged and can have unexpected behavior.  Please use '_X.' instead at line %d\n", v->lineno);
+								if(!option_dontwarn) {
+									if (!strcmp(realext, "_."))
+										ast_log(LOG_WARNING, "The use of '_.' for an extension is strongly discouraged and can have unexpected behavior.  Please use '_X.' instead at line %d\n", v->lineno);
+								}
 								if (ast_add_extension2(con, 0, realext, ipri, label, cidmatch, appl, strdup(data), FREE, registrar)) {
 									ast_log(LOG_WARNING, "Unable to register extension at line %d\n", v->lineno);
 								}