- std::string defaultaction = Conf.ReadValue("dccallow", "action", 0);
- std::string filename = tokens[2];
+ size_t first;
+
+ buf = buf.substr(s + 1);
+
+ if (!buf.empty() && buf[0] == '"')
+ {
+ s = buf.find('"', 1);
+
+ if (s == std::string::npos || s <= 1)
+ return MOD_RES_PASSTHRU;
+
+ --s;
+ first = 1;
+ }
+ else
+ {
+ s = buf.find(' ');
+ first = 0;
+ }
+
+ if (s == std::string::npos)
+ return MOD_RES_PASSTHRU;
+
+ std::string defaultaction = conftag->getString("action");
+ std::string filename = buf.substr(first, s);