Skip to content

Instantly share code, notes, and snippets.

@matsumotory
Created February 20, 2013 05:08
Show Gist options
  • Save matsumotory/4993058 to your computer and use it in GitHub Desktop.
Save matsumotory/4993058 to your computer and use it in GitHub Desktop.
embeddable microhttpd
//
// gcc -lmicrohttpd mhd.c
//
#include <string.h>
#include <sys/types.h>
#include <sys/select.h>
#include <sys/socket.h>
#include <microhttpd.h>
#define PORT 8888
int response_cb (void *cls
, struct MHD_Connection *connection
, const char *url
, const char *method
, const char *version
, const char *upload_data
, size_t *upload_data_size
, void **con_cls)
{
int ret;
struct MHD_Response *res;
const char *page = "hello\n";
res = MHD_create_response_from_buffer(strlen(page), (void*)page, MHD_RESPMEM_PERSISTENT);
ret = MHD_queue_response (connection, MHD_HTTP_OK, res);
MHD_destroy_response (res);
return ret;
}
int main ()
{
struct MHD_Daemon *daemon;
daemon = MHD_start_daemon(MHD_USE_SELECT_INTERNALLY
, PORT
, NULL
, NULL
, &response_cb
, NULL
, MHD_OPTION_END
);
if (daemon == NULL)
return 1;
getchar ();
MHD_stop_daemon (daemon);
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment