#include <ctype.h>
#include <stdio.h>
#include <string.h>
char *device_list[] = {"240x320", "acer", "acoon", "acs-", "abacho", "ahong", "airness", "alcatel", "amoi", "android", "anywhereyougo.com", "applewebkit/525", "applewebkit/532", "asus", "audio", "au-mic", "avantogo", "becker", "benq", "bilbo", "bird", "blackberry", "blazer", "bleu", "cdm-", "compal", "coolpad", "danger", "dbtel", "dopod", "elaine", "eric", "etouch", "fly ", "fly_", "fly-", "go.web", "goodaccess", "gradiente", "grundig", "haier", "hedy", "hitachi", "htc", "huawei", "hutchison", "inno", "ipad", "ipaq", "ipod", "jbrowser", "kddi", "kgt", "kwc", "lenovo", "lg ", "lg2", "lg3", "lg4", "lg5", "lg7", "lg8", "lg9", "lg-", "lge-", "lge9", "longcos", "maemo", "mercator", "meridian", "micromax", "midp", "mini", "mitsu", "mmm", "mmp", "mobi", "mot-", "moto", "nec-", "netfront", "newgen", "nexian", "nf-browser", "nintendo", "nitro", "nokia", "nook", "novarra", "obigo", "palm", "panasonic", "pantech", "philips", "phone", "pg-", "playstation", "pocket", "pt-", "qc-", "qtek", "rover", "sagem", "sama", "samu", "sanyo", "samsung", "sch-", "scooter", "sec-", "sendo", "sgh-", "sharp", "siemens", "sie-", "softbank", "sony", "spice", "sprint", "spv", "symbian", "tablet", "talkabout", "tcl-", "teleca", "telit", "tianyu", "tim-", "toshiba", "tsm", "up.browser", "utec", "utstar", "verykool", "virgin", "vk-", "voda", "voxtel", "vx", "wap", "wellco", "wig browser", "wii", "windows ce", "wireless", "xda", "xde", "zte"};
void strtolower(char* str)
{
int i;
int len = strlen(str);
for (i = 0; i < len; i++)
str[i] = tolower(str[i]);
}
int main(int argc, char *argv[])
{
int len = sizeof(device_list) / sizeof(device_list[0]) / sizeof(char);
printf("There are %d items.\n", len);
char user_agent[200];
memset(user_agent, '\0', 200);
printf("Please provide your HTTP_USER_AGENT string: (D = Default) \n");
scanf("%[^\n]", user_agent);
if (strcmp(user_agent, "D") == 0)
{
strcpy(user_agent, "Mozilla/5.0 (Linux; Android 4.4.4; vivo Y29L Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36");
printf("%s\n", user_agent);
}
int i;
strtolower(user_agent);
for (i = 0; i < len; i++)
{
if (strstr(user_agent, device_list[i]))
{
printf("Keyword ID: %d\n", i + 1);
printf("Keyword: %s\n", device_list[i]);
return 0;
}
}
printf("No keyword!\n");
return 0;
}