diff --git a/CHANGES b/CHANGES
index 5aac0bdabec7b19f643767acc5772b7acdbf8731..b4810a34ce79f112b28113b40ee196ec780b9885 100644
--- a/CHANGES
+++ b/CHANGES
@@ -237,6 +237,8 @@ Other Dialplan Application Changes
      READSTATUS to ERROR, which you can catch and handle separately.
   * Added 'm' option to Directory, which lists out names, 8 at a time, instead
      of asking for verification of each name, one at a time.
+  * Privacy() no longer uses privacy.conf, as all options are specifyable as
+     direct options to the app.
 
 Music On Hold Changes
 ---------------------
diff --git a/UPGRADE.txt b/UPGRADE.txt
index 20e549923d8cdd3fed25b3a5952daf077341606a..9db22501b4635f38a37915423335be514120a916 100644
--- a/UPGRADE.txt
+++ b/UPGRADE.txt
@@ -84,6 +84,8 @@ Applications:
 * Read() now sets a READSTATUS variable on exit.  It does NOT automatically
   return -1 (and hangup) anymore on error.  If you want to hangup on error,
   you need to do so explicitly in your dialplan.
+* Privacy() no longer uses privacy.conf, so any options must be specified
+  directly in the application arguments.
 
 Dialplan Functions:
 
diff --git a/apps/app_privacy.c b/apps/app_privacy.c
index 009b9d2a6e90efb5759d509e593f4ec9016db4a4..dacfd704c682c8adae419aca673d50de4e7e60b6 100644
--- a/apps/app_privacy.c
+++ b/apps/app_privacy.c
@@ -41,24 +41,18 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
 #include "asterisk/app.h"
 #include "asterisk/config.h"
 
-#define PRIV_CONFIG "privacy.conf"
-
 static char *app = "PrivacyManager";
 
 static char *synopsis = "Require phone number to be entered, if no CallerID sent";
 
 static char *descrip =
-  "  PrivacyManager([maxretries[,minlength[,options]]]): If no Caller*ID \n"
+  "  PrivacyManager([maxretries][,minlength]): If no Caller*ID \n"
   "is sent, PrivacyManager answers the channel and asks the caller to\n"
-  "enter their phone number. The caller is given 3 attempts to do so.\n"
+  "enter their phone number. The caller is given 'maxretries' attempts to do so.\n"
   "The application does nothing if Caller*ID was received on the channel.\n"
-  "  Configuration file privacy.conf contains two variables:\n"
   "   maxretries  default 3  -maximum number of attempts the caller is allowed \n"
   "               to input a callerid.\n"
   "   minlength   default 10 -minimum allowable digits in the input callerid number.\n"
-  "If you don't want to use the config file and have an i/o operation with\n"
-  "every call, you can also specify maxretries and minlength as application\n"
-  "parameters. Doing so supercedes any values set in privacy.conf.\n"
   "The application sets the following channel variable upon completion: \n"
   "PRIVACYMGRSTATUS  The status of the privacy manager's attempt to collect \n"
   "                  a phone number from the user. A text string that is either:\n" 
@@ -73,11 +67,8 @@ static int privacy_exec (struct ast_channel *chan, void *data)
 	int maxretries = 3;
 	int minlength = 10;
 	int x = 0;
-	const char *s;
 	char phone[30];
-	struct ast_config *cfg = NULL;
 	char *parse = NULL;
-	struct ast_flags config_flags = { 0 };
 	AST_DECLARE_APP_ARGS(args,
 		AST_APP_ARG(maxretries);
 		AST_APP_ARG(minlength);
@@ -114,34 +105,14 @@ static int privacy_exec (struct ast_channel *chan, void *data)
 
 		}		
 
-		if (!x)
-		{
-			/*Read in the config file*/
-			cfg = ast_config_load(PRIV_CONFIG, config_flags);
-		
-			if (cfg && (s = ast_variable_retrieve(cfg, "general", "maxretries"))) {
-				if (sscanf(s, "%d", &x) == 1) 
-					maxretries = x;
-				else
-					ast_log(LOG_WARNING, "Invalid max retries argument\n");
-        		}
-
-			if (cfg && (s = ast_variable_retrieve(cfg, "general", "minlength"))) {
-				if (sscanf(s, "%d", &x) == 1) 
-					minlength = x;
-				else
-					ast_log(LOG_WARNING, "Invalid min length argument\n");
-			}
-		}	
-		
-		/*Play unidentified call*/
+		/* Play unidentified call */
 		res = ast_safe_sleep(chan, 1000);
 		if (!res)
 			res = ast_streamfile(chan, "privacy-unident", chan->language);
 		if (!res)
 			res = ast_waitstream(chan, "");
 
-		/*Ask for 10 digit number, give 3 attempts*/
+		/* Ask for 10 digit number, give 3 attempts */
 		for (retries = 0; retries < maxretries; retries++) {
 			if (!res)
 				res = ast_streamfile(chan, "privacy-prompt", chan->language);
@@ -154,7 +125,7 @@ static int privacy_exec (struct ast_channel *chan, void *data)
 			if (res < 0)
 				break;
 
-			/*Make sure we get at least digits*/
+			/* Make sure we get at least digits */
 			if (strlen(phone) >= minlength ) 
 				break;
 			else {
@@ -164,7 +135,7 @@ static int privacy_exec (struct ast_channel *chan, void *data)
 			}
 		}
 		
-		/*Got a number, play sounds and send them on their way*/
+		/* Got a number, play sounds and send them on their way */
 		if ((retries < maxretries) && res >= 0 ) {
 			res = ast_streamfile(chan, "privacy-thankyou", chan->language);
 			if (!res)
@@ -184,8 +155,6 @@ static int privacy_exec (struct ast_channel *chan, void *data)
 		} else {
 			pbx_builtin_setvar_helper(chan, "PRIVACYMGRSTATUS", "FAILED");
 		}
-		if (cfg) 
-			ast_config_destroy(cfg);
 	}
 
 	return 0;
diff --git a/configs/privacy.conf.sample b/configs/privacy.conf.sample
deleted file mode 100644
index 0236bccb78c0a36caaa1288b5befbb71cad6626f..0000000000000000000000000000000000000000
--- a/configs/privacy.conf.sample
+++ /dev/null
@@ -1,3 +0,0 @@
-[general]
-
-maxretries = 2	;How many chances the caller has to enter their number