ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/repos/HostStatus/HostStatus.hpp
Revision: 52
Committed: 2003-12-12T14:28:04-08:00 (21 years, 6 months ago) by Douglas Thrift
File size: 1255 byte(s)
Log Message:
Oops, we forgot to delete some new.

File Contents

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

Properties

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