Фаерфокс никак не хочет открывать страницу, не понимаю почему, уже что только не перепробовал. struct tcp_server, struct tcp_client - высокоуровневые обёртки над обычными линуксовыми сокетами.
#include "tcpserver.h"
#include <stdio.h>
#include <stdlib.h>
#define DATA_SIZE 1024
static void new_session(struct tcp_client *client, void *data)
{
char answ[257];
char page[DATA_SIZE];
memset(answ, 0x00, 257);
strcpy(answ, "HTTP/1.1 200 OK\r\n"
"Version: HTTP/1.1\r\n"
"Content-Type: text/html; charset=utf-8\r\n"
"Content-Length: 4"
"\r\n\r\n"
"serg");
tcp_client_recv(client, page, DATA_SIZE);
if (!tcp_client_send(client, answ, strlen(answ)))
puts("fail sending answare.");
else
puts("Sended.");
puts(page);
}
static void accept_error(void *data)
{
puts("Accepting client fail!");
}
int main(int argc, char const *argv[])
{
struct tcp_server server;
tcp_server_init(&server);
tcp_server_set_newsession_cb(&server, new_session, NULL);
tcp_server_set_accepterr_cb(&server, accept_error, NULL);
if (!tcp_server_bind(&server, 8080, 100)) {
puts("Fail starting web server");
return -1;
}
return 0;
}