X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/f93d1355dd915fd5c197293ba0e62292ec15cb2d..b09e09c756861ab167647ec61ac59b85c2928be6:/methods/http.h?ds=sidebyside diff --git a/methods/http.h b/methods/http.h index 2098fc832..dec5cd80f 100644 --- a/methods/http.h +++ b/methods/http.h @@ -1,8 +1,9 @@ // -*- mode: cpp; mode: fold -*- -// Description /*{{{*/// $Id: http.h,v 1.7 1999/12/09 03:45:56 jgg Exp $ +// Description /*{{{*/// $Id: http.h,v 1.12 2002/04/18 05:09:38 jgg Exp $ +// $Id: http.h,v 1.12 2002/04/18 05:09:38 jgg Exp $ /* ###################################################################### - HTTP Aquire Method - This is the HTTP aquire method for APT. + HTTP Acquire Method - This is the HTTP aquire method for APT. ##################################################################### */ /*}}}*/ @@ -12,6 +13,11 @@ #define MAXLEN 360 + + +using std::cout; +using std::endl; + class HttpMethod; class CircleBuf @@ -25,6 +31,11 @@ class CircleBuf unsigned long MaxGet; struct timeval Start; + static unsigned long BwReadLimit; + static unsigned long BwTickReadData; + static struct timeval BwReadTick; + static const unsigned int BW_HZ; + unsigned long LeftRead() { unsigned long Sz = Size - (InP - OutP); @@ -45,7 +56,7 @@ class CircleBuf public: - MD5Summation *MD5; + Hashes *Hash; // Read data in bool Read(int Fd); @@ -69,7 +80,7 @@ class CircleBuf void Stats(); CircleBuf(unsigned long Size); - ~CircleBuf() {delete [] Buf;}; + ~CircleBuf() {delete [] Buf; delete Hash;}; }; struct ServerState @@ -87,6 +98,9 @@ struct ServerState bool HaveContent; enum {Chunked,Stream,Closes} Encoding; enum {Header, Data} State; + bool Persistent; + + // This is a Persistent attribute of the server itself. bool Pipeline; HttpMethod *Owner; @@ -120,7 +134,6 @@ class HttpMethod : public pkgAcqMethod bool ServerDie(ServerState *Srv); int DealWithHeaders(FetchResult &Res,ServerState *Srv); - virtual bool Fetch(FetchItem *); virtual bool Configuration(string Message); // In the event of a fatal signal this file will be closed and timestamped. @@ -128,9 +141,12 @@ class HttpMethod : public pkgAcqMethod static int FailFd; static time_t FailTime; static void SigTerm(int); + + protected: + virtual bool Fetch(FetchItem *); public: - friend ServerState; + friend class ServerState; FileFd *File; ServerState *Server; @@ -144,6 +160,4 @@ class HttpMethod : public pkgAcqMethod }; }; -URI Proxy; - #endif