Add some subscription (a.k.a. "follow") functionality
[blerg.git] / http / canned_responses.c
1 /* Blerg is (C) 2011 The Dominion of Awesome, and is distributed under a
2  * BSD-style license.  Please see the COPYING file for details.
3  */
4 #include <string.h>
5 #include <microhttpd.h>
6 #include "app.h"
7 #include "canned_responses.h"
8
9 void init_responses() {
10         response_401 = MHD_create_response_from_data(strlen (CONTENT_401), CONTENT_401, MHD_NO, MHD_NO);  
11         response_404 = MHD_create_response_from_data(strlen(CONTENT_404), CONTENT_404, MHD_NO, MHD_NO);
12         response_405 = MHD_create_response_from_data(strlen(CONTENT_405), CONTENT_405, MHD_NO, MHD_NO);
13         response_JSON_Success = MHD_create_response_from_data(strlen(JSON_SUCCESS), JSON_SUCCESS, MHD_NO, MHD_NO);
14         response_JSON_Failure = MHD_create_response_from_data(strlen(JSON_FAILURE), JSON_FAILURE, MHD_NO, MHD_NO);
15 }
16
17 #define OPAQUE "d29fb6db8f21a6e99903651a9f87470e"
18 int respond_401(struct MHD_Connection *connection, int signal_stale) {
19         return MHD_queue_auth_fail_response(connection, REALM, OPAQUE, response_401, signal_stale);    
20 }
21
22 int respond_404(struct MHD_Connection *connection) {
23         return MHD_queue_response(connection, MHD_HTTP_NOT_FOUND, response_404);
24 }
25
26 int respond_405(struct MHD_Connection *connection) {
27         return MHD_queue_response(connection, MHD_HTTP_METHOD_NOT_ALLOWED, response_405);
28 }
29
30 int respond_JSON_Success(struct MHD_Connection *connection) {
31         return MHD_queue_response(connection, MHD_HTTP_OK, response_JSON_Success);
32 }
33
34 int respond_JSON_Failure(struct MHD_Connection *connection) {
35         return MHD_queue_response(connection, MHD_HTTP_OK, response_JSON_Failure);
36 }
37