Make /status work with GET for non-changing requests
if (!check_auth(&ac))
exit(0);
- if (strncmp(request_method, "POST", 4) != 0) {
- respond_405();
- exit(0);
- }
-
- yajl_gen g;
-
- if (path[7] == 0) { /* No username */
+ if (strncmp(request_method, "POST", 4) == 0) {
const char *clear = cgi_getentrystr("clear");
if (clear != NULL) {
}
blerg_close(b);
respond_JSON_Success();
- } else {
+ }
+ } else if (strncmp(request_method, "GET", 3) == 0) {
+ yajl_gen g;
+
+ if (path[7] == 0) { /* No username */
g = yajl_gen_alloc(&yajl_c, NULL);
yajl_gen_map_open(g);
yajl_gen_map_close(g);
respond_yajl(g);
yajl_gen_free(g);
- }
- } else { /* with username */
- g = yajl_gen_alloc(&yajl_c, NULL);
- yajl_gen_map_open(g);
-
- yajl_gen_string(g, (unsigned char *)"subscribed", 10);
- ret = parse_url_info(path + 8, &info);
- if ((ret & URL_INFO_NAME) == 1) {
- yajl_gen_bool(g, is_subscribed(ac.name, info.name));
- } else {
- yajl_gen_bool(g, 0);
- }
+ } else { /* with username */
+ g = yajl_gen_alloc(&yajl_c, NULL);
+ yajl_gen_map_open(g);
+
+ yajl_gen_string(g, (unsigned char *)"subscribed", 10);
+ ret = parse_url_info(path + 8, &info);
+ if ((ret & URL_INFO_NAME) == 1) {
+ yajl_gen_bool(g, is_subscribed(ac.name, info.name));
+ } else {
+ yajl_gen_bool(g, 0);
+ }
- yajl_gen_map_close(g);
- respond_yajl(g);
- yajl_gen_free(g);
+ yajl_gen_map_close(g);
+ respond_yajl(g);
+ yajl_gen_free(g);
+ }
+ } else {
+ respond_405();
+ exit(0);
}
} else if (strncmp(path, "/passwd", 7) == 0) {
if (!check_auth(&ac))