Next: , Up: Example programs


C.1 hellobrowser.c

     #include <microhttpd.h>
     #include <string.h>
     #include <stdlib.h>
     #include <stdio.h>
     
     #define PORT 8888
     
     int AnswerToConnection(void *cls, struct MHD_Connection *connection, const char *url, 
         const char *method, const char *version, const char *upload_data, 
         unsigned int *upload_data_size, void **con_cls)
     {
       const char *page  = "<html><body>Hello, browser!</body></html>";
       struct MHD_Response *response;
       int ret;
     
       response = MHD_create_response_from_data (strlen (page), (void*) page, MHD_NO, MHD_NO);
       ret = MHD_queue_response (connection, MHD_HTTP_OK, response);
       MHD_destroy_response (response);
       return ret;
     }
     
     int main ()
     {
       struct MHD_Daemon *daemon;
     
       daemon = MHD_start_daemon(MHD_USE_SELECT_INTERNALLY, PORT, NULL, NULL, 
                                 &AnswerToConnection, NULL, MHD_OPTION_END);
       if (daemon == NULL) return 1;
     
       getchar(); 
     
       MHD_stop_daemon(daemon);
       return 0;
     }