// -*- mode: cpp; mode: fold -*-
// Description /*{{{*/
-// $Id: http.h,v 1.1 1998/11/01 05:30:47 jgg Exp $
+// $Id: http.h,v 1.4 1998/11/11 06:54:22 jgg Exp $
/* ######################################################################
HTTP Aquire Method - This is the HTTP aquire method for APT.
unsigned int Result;
char Code[MAXLEN];
- // These are some statistics from the last parsed get line
+ // These are some statistics from the last parsed header lines
unsigned long Size;
signed long StartPos;
time_t Date;
+ bool HaveContent;
enum {Chunked,Stream,Closes} Encoding;
enum {Header, Data} State;
bool Comp(URI Other) {return Other.Host == ServerName.Host && Other.Port == ServerName.Port;};
void Reset() {Major = 0; Minor = 0; Result = 0; Size = 0; StartPos = 0;
Encoding = Closes; time(&Date); ServerFd = -1;};
- bool RunHeaders();
+ int RunHeaders();
bool RunData();
bool Open();
bool ServerDie(ServerState *Srv);
int DealWithHeaders(FetchResult &Res,ServerState *Srv);
+ // In the event of a fatal signal this file will be closed and timestamped.
+ static string FailFile;
+ static int FailFd;
+ static time_t FailTime;
+ static void SigTerm(int);
+
public:
friend ServerState;
- ServerState *Srv;
int Depth;
FileFd *File;
int Loop();
- HttpMethod() : pkgAcqMethod("1.2",SingleInstance | Pipeline | SendConfig)
+ HttpMethod() : pkgAcqMethod("1.2",Pipeline | SendConfig)
{
Depth = 0;
- Srv = 0;
File = 0;
Depth = 0;
};