diff options
Diffstat (limited to '')
-rw-r--r-- | src/main.c | 26 |
1 files changed, 25 insertions, 1 deletions
@@ -1,3 +1,4 @@ +#define _GNU_SOURCE #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -16,11 +17,25 @@ #include <libxml/HTMLtree.h> #include <libxml/tree.h> #include <libxml/xpath.h> +#include <microhttpd.h> #include <lib.c> #include <url.c> unsigned char sc_hp[] = { /* html page null terminated format string, from file src/hp.html */ #include <hp.xxd> }; +char sc_osdd[] = { /* xml document for opensearch */ +#include <osdd.xxd> +}; +char sc_robotstxt[] = "User-Agent: *\nDisallow: /\n"; +char sc_securitytxt[] = "# This content information is provided by the developer of this opensource application.\n" + "# The developer is not responsible for the actions of his software\n" + "# This website IS NOT operated by the developer. Do not use the contact information below in hopes of contacting the webmaster\n" + "# The following contact information is provided for reporting security bugs regarding the software, not for legal issues\n" + "Contact: https://www.sijanec.eu/o.html#kontakt\n" + "Acknowledgments: https://git.sijanec.eu/sijanec/sear.c\n" + "Encryption: https://www.sijanec.eu/pgp-key.txt\n" + "Expires: Thu, 31 Dec 2021 18:37:07 -0800\n" + "Preferred-Languages: sl, en, de, hr\n"; #define SC_HTTP_PORT 7327 /* SEAR on mobile keyboard */ #define SC_HTTP_RBUFSIZE 4096 /* initial size of http read buffer, increasning by K */ #define SC_HTTP_USER_AGENT "Nokia WAP Gateway 4.1 CD1/ECD13_D/4.1.04)" /* so google and others sends a minimal response */ @@ -28,16 +43,25 @@ unsigned char sc_hp[] = { /* html page null terminated format string, from file #include <structs.c> #include <log.c> #include <api.c> +#include <httpd.c> /* this is new in my programs. I am now using _sizeof for the actual alloced size of the array and _length for the count of elements in array. this is done to decrease number of calls to realloc&amis */ int main (int argc, char ** argv) { int rs = 0; struct sc_cache * c = sc_cache_init(); + struct MHD_Daemon * d; if (!c) { rs = 1; goto rc; } - sc_query_google("slovenia", c); + d = MHD_start_daemon(MHD_USE_THREAD_PER_CONNECTION, SC_HTTP_PORT, NULL, NULL, &sc_httpd, c, MHD_OPTION_END); + if (!d) { + rs = 2; + goto rc; + } + /* sc_query_google(argv[1], c); */ + getc(stdin); rc: sc_cache_free(c); + MHD_stop_daemon(d); return rs; } |