- return Version(1,1,0,0,VF_COMMON|VF_VENDOR,API_VERSION);
+ if (user->IsModeSet(hm) && !source->HasPrivPermission("users/auspex"))
+ {
+ // hide the "*" that marks the user as an oper from the /WHO line
+ std::string::size_type spcolon = line.find(" :");
+ if (spcolon == std::string::npos)
+ return; // Another module hid the user completely
+ std::string::size_type sp = line.rfind(' ', spcolon-1);
+ std::string::size_type pos = line.find('*', sp);
+ if (pos != std::string::npos)
+ line.erase(pos, 1);
+ // hide the line completely if doing a "/who * o" query
+ if (params.size() > 1 && params[1].find('o') != std::string::npos)
+ line.clear();
+ }