#include "application_ids.h"
#include "client_app_api.h"
+#include "appid_module.h"
enum RTPState
{
static Client_App_Pattern patterns[] =
{
- { (const uint8_t*)"\x000\x000", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x001", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x002", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x003", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x004", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x005", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x006", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x007", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x008", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x009", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x00a", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x00b", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x00c", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x00d", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x00e", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x00f", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x010", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x011", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x012", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x013", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x019", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x01a", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x01b", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x01c", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x01f", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x020", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x021", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x022", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x080", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x081", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x082", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x083", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x084", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x085", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x086", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x087", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x088", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x089", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x08a", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x08b", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x08c", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x08d", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x08e", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x08f", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x090", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x091", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x092", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x093", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x099", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x09a", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x09b", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x09c", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x09f", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x0a0", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x0a1", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x000\x0a2", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x000", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x001", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x002", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x003", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x004", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x005", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x006", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x007", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x008", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x009", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x00a", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x00b", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x00c", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x00d", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x00e", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x00f", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x010", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x011", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x012", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x013", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x019", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x01a", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x01b", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x01c", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x01f", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x020", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x021", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x022", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x080", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x081", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x082", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x083", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x084", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x085", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x086", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x087", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x088", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x089", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x08a", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x08b", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x08c", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x08d", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x08e", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x08f", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x090", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x091", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x092", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x093", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x099", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x09a", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x09b", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x09c", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x09f", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x0a0", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x0a1", 2, 0, APP_ID_RTP },
- { (const uint8_t*)"\x080\x0a2", 2, 0, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x000", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x001", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x002", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x003", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x004", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x005", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x006", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x007", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x008", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x009", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x00a", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x00b", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x00c", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x00d", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x00e", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x00f", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x010", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x011", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x012", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x013", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x019", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x01a", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x01b", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x01c", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x01f", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x020", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x021", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x022", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x080", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x081", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x082", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x083", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x084", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x085", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x086", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x087", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x088", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x089", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x08a", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x08b", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x08c", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x08d", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x08e", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x08f", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x090", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x091", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x092", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x093", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x099", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x09a", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x09b", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x09c", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x09f", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x0a0", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x0a1", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x000\x0a2", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x000", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x001", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x002", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x003", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x004", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x005", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x006", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x007", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x008", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x009", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x00a", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x00b", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x00c", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x00d", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x00e", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x00f", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x010", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x011", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x012", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x013", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x019", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x01a", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x01b", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x01c", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x01f", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x020", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x021", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x022", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x080", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x081", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x082", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x083", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x084", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x085", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x086", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x087", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x088", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x089", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x08a", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x08b", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x08c", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x08d", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x08e", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x08f", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x090", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x091", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x092", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x093", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x099", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x09a", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x09b", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x09c", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x09f", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x0a0", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x0a1", 2, -1, APP_ID_RTP },
+ { (const uint8_t*)"\x080\x0a2", 2, -1, APP_ID_RTP },
};
static AppRegistryEntry appIdRegistry[] =
rtp_client_mod.api->add_app(flowp, APP_ID_RTP, APP_ID_RTP, nullptr);
flowp->setAppIdFlag(APPID_SESSION_CLIENT_DETECTED);
+ appid_stats.rtp_clients++;
return CLIENT_APP_SUCCESS;
}