--- nagios-3.0.2-original/common/macros.c	2008-05-19 14:01:58.000000000 -0400
+++ nagios-3.0.2/common/macros.c	2008-06-19 15:41:56.000000000 -0400
@@ -2484,7 +2484,7 @@
 	for(x=0,y=0;input[x]!=(char)'\x0';x++){
 
 		/* alpha-numeric characters and a few other characters don't get encoded */
-		if(((char)input[x]>='0' && (char)input[x]<='9') || ((char)input[x]>='A' && (char)input[x]<='Z') || ((char)input[x]>=(char)'a' && (char)input[x]<=(char)'z') || (char)input[x]==(char)'.' || (char)input[x]==(char)'-' || (char)input[x]==(char)'_'){
+		if(((char)input[x]>='0' && (char)input[x]<='9') || ((char)input[x]>='A' && (char)input[x]<='Z') || ((char)input[x]>=(char)'a' && (char)input[x]<=(char)'z') || (char)input[x]==(char)'.' || (char)input[x]==(char)'-' || (char)input[x]==(char)'_' || (char)input[x]==(char)':' || (char)input[x]==(char)'/' || (char)input[x]==(char)'?' || (char)input[x]==(char)'=' || (char)input[x]==(char)'&'){
 			encoded_url_string[y]=input[x];
 			y++;
 		        }

