/*
* Dolda Connect - Modular multiuser Direct Connect-style client
- * Copyright (C) 2007 Fredrik Tolf (fredrik@dolda2000.com)
+ * Copyright (C) 2007 Fredrik Tolf <fredrik@dolda2000.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#include <netdb.h>
+#include "utils.h"
+
struct hturlinfo {
char *host;
int port;
char *path;
char *query;
+ char *fragment;
};
struct htconn {
int state;
int fd;
struct addrinfo *ailist, *curai;
- char *outbuf, *inbuf;
+ char *outbuf, *inbuf, *databuf;
size_t outbufsize, outbufdata;
size_t inbufsize, inbufdata;
+ size_t databufsize, databufdata;
struct hturlinfo *url;
+ int rescode;
+ char *resstr;
+ struct strpair *headers;
+ ssize_t tlen, rxd, chl;
};
struct htcookie {
struct hturlinfo *parseurl(char *url);
void freeurl(struct hturlinfo *ui);
+void freehtconn(struct htconn *cn);
struct htconn *htconnect(struct hturlinfo *ui);
int htpollflags(struct htconn *hc);
+int htprocess(struct htconn *hc, int pollflags);
#endif