OSDN Git Service

Add IP_TRANSPARENT guard
author0809216 <0809216@1ed66053-1c2d-0410-8867-f7571e6e31d3>
Tue, 7 Sep 2010 12:52:43 +0000 (12:52 +0000)
committer0809216 <0809216@1ed66053-1c2d-0410-8867-f7571e6e31d3>
Tue, 7 Sep 2010 12:52:43 +0000 (12:52 +0000)
git-svn-id: http://10.144.169.20/repos/um/branches/l7vsd-3.x-ramiel-epoll-cond@10289 1ed66053-1c2d-0410-8867-f7571e6e31d3

l7vsd/src/l7vsadm.cpp

index 9a8b539..1368a42 100644 (file)
@@ -745,7 +745,14 @@ bool l7vs::l7vsadm::parse_opt_vs_fwdmode_func(int &pos, int argc, char *argv[])
         if (opt == "-M" || opt == "--masq") {
                 request.vs_element.sorry_fwdmode = virtualservice_element::FWD_MASQ;
         } else if (opt == "-T" || opt == "--tproxy") {
+#ifdef IP_TRANSPARENT
                 request.vs_element.sorry_fwdmode = virtualservice_element::FWD_TPROXY;
+#else
+                l7vsadm_err.setter(true, buf.str());
+                Logger::putLogInfo(LOG_CAT_L7VSADM_PARSE, /*XXX*/999, 
+                        "tproxy(IP_TRANSPARENT) not supported on this platform.", __FILE__, __LINE__);
+                return false;
+#endif
         } else {
                 // should never come here
                 std::stringstream buf;
@@ -1419,7 +1426,14 @@ bool l7vs::l7vsadm::parse_opt_rs_fwdmode_func(int &pos, int argc, char *argv[])
         if (opt == "-M" || opt == "--masq") {
                 request.vs_element.realserver_vector.front().fwdmode = realserver_element::FWD_MASQ;
         } else if (opt == "-T" || opt == "--tproxy") {
+#ifdef IP_TRANSPARENT
                 request.vs_element.realserver_vector.front().fwdmode = realserver_element::FWD_TPROXY;
+#else
+                l7vsadm_err.setter(true, buf.str());
+                Logger::putLogInfo(LOG_CAT_L7VSADM_PARSE, /*XXX*/999, 
+                        "tproxy(IP_TRANSPARENT) not supported on this platform.", __FILE__, __LINE__);
+                return false;
+#endif
         } else {
                 // should never come here
                 std::stringstream buf;