diff --git a/exec/imapservice.js b/exec/imapservice.js
index f4eac7e47262335ac1d0a97092f726f642483ca9..f0f634ba902e1526d89990f2a3b4755a618f67d2 100644
--- a/exec/imapservice.js
+++ b/exec/imapservice.js
@@ -3011,8 +3011,11 @@ var selected_command_handlers = {
 
 			// TODO: Support (or ignore) CHARSET in search commands
 			if(args[1]=='CHARSET') {
-				tagged(tag, "NO", "I don't support CHARSET in SEARCH.");
-				return;
+				if (args[2] != 'US-ASCII') {
+					tagged(tag, "NO", "[BADCHARSET (US-ASCII)] I don't support CHARSET in SEARCH.");
+					return;
+				}
+				args.splice(1, 2);
 			}
 			new_search(args.slice(1), false);
 			//do_search(args.slice(1), false);
@@ -3126,8 +3129,11 @@ var selected_command_handlers = {
 				case 'SEARCH':
 					// TODO: Support (or ignore) CHARSET in SEARCH
 					if(args[2]=='CHARSET') {
-						tagged(tag, "NO", "I don't support CHARSET in SEARCH.");
-						return;
+						if (args[3] != 'US-ASCII') {
+							tagged(tag, "NO", "[BADCHARSET (US-ASCII)] I don't support CHARSET in SEARCH.");
+							return;
+						}
+						args.splice(2, 2);
 					}
 					new_search(args.slice(2), true);
 					//do_search(args.slice(2), true);