#include "include/httpd.h"
int main(int argv,char *argc[]) {
int s,i=1,con=0,h;
char file[64] = "ubieserver.cfg";
hash socket[128];
conf cf[1];
// background(cf);
// dlopen();
dosignal(cf);
readconfig(cf,file);
printf("Perpairing To Server\n");
cf[1].s = serve(cf);
printf("Now Servering(%i)\n",cf[1].s);
/*
while (1) {
con = getcon(cf[1].s,con,socket);
for (i=1;i<=con;i++) {
if (socket[i].socket > 0) {
if (sockread(socket[i].socket, socket[i].data)) {
parse(i,socket);
}
}
}
}
*/
while (1) {
con = getcon(cf[1].s,con,socket);
if (socket[i].socket > 0) {
if (sockread(socket[i].socket, socket[i].data)) {
printf("con: %i, Socket: %i,i: %i\n",con,socket[i].socket,i);
parse(i,socket);
h = write(socket[i].socket,socket[i].data,0);
printf("Hmm: %i\n",h);
if (h == -1) { socket[i].socket = 0; }
}
}
if ((i >= con) || (con == 0)) { i = 0; }
i++;
}
}
int background()
{
int pid;
signal(SIGCHLD,SIG_IGN);
pid = fork();
if(pid>0)
{
sleep(1);
exit(EXIT_SUCCESS);
}
if(pid==0)
{
signal(SIGCHLD,SIG_DFL);
return getpid();
}
return -1;
}