@@ -173,11 +173,18 @@
#define NTOP_PROTOCOL_HTTP_PROXY 131
#define NTOP_PROTOCOL_CITRIX 132
#define NTOP_PROTOCOL_NETFLIX 133
+#define NTOP_PROTOCOL_LASTFM 134
+#define NTOP_PROTOCOL_GROOVESHARK 135
+#define NTOP_PROTOCOL_SKYFILE_PREPAID 136
+#define NTOP_PROTOCOL_SKYFILE_RUDICS 137
+#define NTOP_PROTOCOL_SKYFILE_POSTPAID 138
+
+
/* NOTE: REMEMBER TO UPDATE IPOQUE_PROTOCOL_LONG_STRING / IPOQUE_PROTOCOL_SHORT_STRING */
#endif
-#define IPOQUE_LAST_IMPLEMENTED_PROTOCOL 133
+#define IPOQUE_LAST_IMPLEMENTED_PROTOCOL 138
#define IPOQUE_MAX_SUPPORTED_PROTOCOLS (IPOQUE_LAST_IMPLEMENTED_PROTOCOL + 1)
@@ -194,7 +201,8 @@
"ICMPv6","DHCPv6","Armagetron","CrossFire","Dofus","Fiesta","Florensia","Guildwars","HTTP Application Activesync","Kerberos", \
"LDAP","MapleStory","msSQL","PPTP","WARCRAFT3","World of Kung Fu","MEEBO", \
"FaceBook","Twitter","DropBox","Gmail","Google Maps","YouTube","Skype","Google","DCE RPC","NetFlow_IPFIX","sFlow", \
- "HTTP Connect","HTTP Proxy","Citrix","Netflix"
+ "HTTP Connect","HTTP Proxy","Citrix","Netflix","Last.fm","Grooveshark", \
+ "Skyfile_prepaid","Skyfile_rudics","Skyfile_postpaid"
#define IPOQUE_PROTOCOL_SHORT_STRING "ukn","ftp","pop","smtp","imap","dns","ipp","http","mdns","ntp","netbios","nfs","ssdp", \
"bgp","snmp","xdmcp","smb","syslog","dhcp","postgres","mysql","tds","ddl","i23v5","apple","directconnect","socrates","winmx", \
"manolito","pando","filetopia","iMESH","kontiki","openft","fasttrack","gnutella","edonkey","bittorrent","off","avi", \
@@ -205,7 +213,8 @@
"tftp","afp","stealthnet","aimini","sip","truphone","icmpv6","dhcpv6","armagetron","crossfire","dofus","fiesta","florensia", \
"guildwars","httpactivesync","kerberos","ldap","maplestory","mssql","pptp","warcraft3","wokf","meebo",\
"facebook","twitter","dropbox","gmail","gmaps","youtube","skype","google","dcerpc","netflow","sflow", \
- "http_connect","http_proxy","Citrix","Netflix"
+ "http_connect","http_proxy","Citrix","Netflix","Last.fm","Grooveshark",\
+ "Skyfile_pre", "Skyfile_ru","Skyfile_post"
#ifdef __cplusplus
}
|
@@ -3245,13 +3245,15 @@
#ifdef HAVE_NTOP
-inline u_int is_port(u_int16_t sport, u_int16_t dport, u_int16_t match_port) {
+static u_int is_port(u_int16_t sport, u_int16_t dport, u_int16_t match_port) {
return(((match_port == sport) || (match_port == dport)) ? 1 : 0);
}
/* ****************************************************** */
-unsigned int ntop_guess_undetected_protocol(u_int8_t proto, u_int16_t sport, u_int16_t dport) {
+unsigned int ntop_guess_undetected_protocol(u8 proto,
+ u32 shost, u16 sport,
+ u32 dhost, u16 dport) {
// printf("ntop_guess_undetected_protocol (proto=%d, %d -> %d)\n", proto, sport, dport);
if(proto == IPPROTO_UDP) {
@@ -3275,6 +3277,15 @@
else if(is_port(sport, dport, 389)) return(IPOQUE_PROTOCOL_LDAP);
}
+ /* Skyfile */
+ if((shost == 0xC1A8EA7C) || (dhost == 0xC1A8EA7C)) {
+ if((shost == 0x0A0A6650) || (dhost == 0x0A0A6650)) {
+ if((sport == 4708) || (dport == 4708)) return(NTOP_PROTOCOL_SKYFILE_PREPAID);
+ else if((sport == 4709) || (dport == 4709)) return(NTOP_PROTOCOL_SKYFILE_RUDICS);
+ else if((sport == 4710) || (dport == 4710)) return(NTOP_PROTOCOL_SKYFILE_POSTPAID);
+ }
+ }
+
return(IPOQUE_PROTOCOL_UNKNOWN);
}
|