ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/repos/HostStatus/HostStatus.hpp
Revision: 44
Committed: 2003-11-17T11:05:37-08:00 (21 years, 7 months ago) by Douglas Thrift
File size: 1236 byte(s)
Log Message:
Sticky!

File Contents

# Content
1 // Host Status
2 //
3 // Douglas Thrift
4 //
5 // $Id$
6
7 #ifndef _HostStatus_hpp_
8 #define _HostStatus_hpp_
9
10 #define _BSD_SOURCE
11
12 #include <iostream>
13 #include <string>
14 #include <sstream>
15 #include <list>
16 #include <set>
17 #include <map>
18 #include <cstdlib>
19 #include <ctime>
20
21 #include <pstream.h>
22
23 using namespace std;
24 using namespace redi;
25
26 inline string sgetenv(const string& name)
27 {
28 char* value = getenv(name.c_str());
29
30 return value != NULL ? value : "";
31 }
32
33 inline int sputenv(const string& name)
34 {
35 char* value = new char[name.size() + 1];
36
37 sprintf(value, name.c_str());
38
39 int code = putenv(value);
40
41 return code;
42 }
43
44 inline void sunsetenv(const string& name) { unsetenv(name.c_str()); }
45
46 #ifdef __CYGWIN__
47
48 inline time_t timegm(struct tm* time)
49 {
50 string zone = sgetenv("TZ");
51
52 sputenv("TZ=");
53 tzset();
54
55 time_t when = mktime(time);
56
57 sputenv("TZ=" + zone);
58 tzset();
59
60 return when;
61 }
62
63 #endif
64
65 class HostStatus
66 {
67 private:
68 multimap<string, string> cgi;
69 bool page;
70 bool host;
71 bool name;
72 bool address;
73 bool platform;
74 bool since;
75 void parse(const string& method);
76 void mode();
77 void display(const string& method);
78 void header(const string& method);
79 void footer();
80 public:
81 HostStatus();
82 ~HostStatus() {}
83 };
84
85 #endif // _HostStatus_hpp_

Properties

Name Value
svn:eol-style native
svn:keywords Id