/* * * (C) 2016-18 - ntop.org * * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * */ #include "ntop_includes.h" /* *************************************** */ UserActivityStats::UserActivityStats() { reset(); } /* *************************************** */ void UserActivityStats::reset() { memset(counters, 0, sizeof(counters)); } /* **************************************************** */ const char * activity_names [] = { "Other", "Web", "Media", "VPN", "MailSync", "MailSend", "FileSharing", "FileTransfer", "Chat", "Game", "RemoteControl", "SocialNetwork", }; COMPILE_TIME_ASSERT (COUNT_OF(activity_names) == UserActivitiesN); /* *************************************** */ static const char* getActivityName(UserActivityID id) { return ((ntop->getPrefs()->is_flow_activity_enabled() && id < UserActivitiesN) ? activity_names[id] : NULL); }; /* ******************************************* */ static bool getActivityId(const char * name, UserActivityID * out) { if(ntop->getPrefs()->is_flow_activity_enabled() && name) { for(int i=0; i