Index: /branches/rel_ag_9_4_5_10/uproxy/http_proxy/smanager/sec_misc.c
===================================================================
--- /branches/rel_ag_9_4_5_10/uproxy/http_proxy/smanager/sec_misc.c	(revision 20614)
+++ /branches/rel_ag_9_4_5_10/uproxy/http_proxy/smanager/sec_misc.c	(working copy)
@@ -5240,18 +5240,27 @@
 	write_data(str, cursor, strlen(str), out_frame);
 
 	/* check if vpn resource number reaches limit */
-	if (vsite->vvs != NULL) {
-		vpn_resourcegroup_t *vrg;
-		TAILQ_FOREACH(vrg, &vsite->vvs->vpn_resource_q, next_resourcegroup) {
-			if (vrg->limit == 1) {
-				snprintf(str, 1024, "var _AN_res_limit_check_%s = 1;\n", vrg->vr_groupname);
-			}
-			else {
-				snprintf(str, 1024, "var _AN_res_limit_check_%s = 0;\n", vrg->vr_groupname);
-			}
-			write_data(str, cursor, strlen(str), out_frame);
-		}
-	}
+        /* example format will be like below */
+        /* var _AN_res_limit_check = {"group1": 0, "group2": 1, "group3": 0} */
+        if (vsite->vvs != NULL) {
+                vpn_resourcegroup_t *vrg;
+                int first = 1;
+                int offset = 0;
+                offset += snprintf(str + offset, 1024 - offset, "var _AN_res_limit_check = {");
+
+                TAILQ_FOREACH(vrg, &vsite->vvs->vpn_resource_q, next_resourcegroup) {
+                        offset += snprintf(str + offset, 1024 - offset,
+                           "%s\"%s\": %d",
+                           first ? "" : ", ",
+                           vrg->vr_groupname,
+                           vrg->limit == 1 ? 1 : 0);
+
+                        first = 0;
+                }
+
+                offset += snprintf(str + offset, 1024 - offset, "};\n");
+                write_data(str, cursor, strlen(str), out_frame);
+        }
 
 	/* change password */
 	if( vsite->aaa_configure == NULL || vsite->aaa_configure->aaa_on == AAA_IS_OFF || sec_session->method_id[0] == '\0' ) {
