From 2f586a456b2ddc10a4b9b2fdad5dc5e335297125 Mon Sep 17 00:00:00 2001 From: yangwei Date: Wed, 28 Aug 2024 20:45:57 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=A6=84=20refactor(decoder=20glimpse=20det?= =?UTF-8?q?ector):=20rename=20to=20lpi=20plugin?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- decoders/CMakeLists.txt | 2 +- decoders/glimpse_detector/CMakeLists.txt | 12 -- decoders/glimpse_detector/version.map | 10 -- decoders/{glimpse_detector => lpi}/.gitignore | 0 decoders/lpi/CMakeLists.txt | 12 ++ .../libprotoident/CMakeLists.txt | 0 .../libprotoident/libprotoident.cc | 0 .../libprotoident/libprotoident.h | 0 .../libprotoident/proto_common.cc | 0 .../libprotoident/proto_common.h | 0 .../libprotoident/proto_manager.cc | 0 .../libprotoident/proto_manager.h | 0 .../libprotoident/tcp/lpi_300heroes.cc | 0 .../libprotoident/tcp/lpi_360safeguard.cc | 0 .../libprotoident/tcp/lpi_4d.cc | 0 .../libprotoident/tcp/lpi_acestream.cc | 0 .../libprotoident/tcp/lpi_afp.cc | 0 .../libprotoident/tcp/lpi_airdroid.cc | 0 .../libprotoident/tcp/lpi_airmedia.cc | 0 .../libprotoident/tcp/lpi_akamai.cc | 0 .../libprotoident/tcp/lpi_amp.cc | 0 .../libprotoident/tcp/lpi_antcoin.cc | 0 .../libprotoident/tcp/lpi_appearin.cc | 0 .../libprotoident/tcp/lpi_apple_push.cc | 0 .../libprotoident/tcp/lpi_ares.cc | 0 .../libprotoident/tcp/lpi_badbaidu.cc | 0 .../libprotoident/tcp/lpi_baofeng_tcp.cc | 0 .../libprotoident/tcp/lpi_beam.cc | 0 .../libprotoident/tcp/lpi_bitcoin.cc | 0 .../libprotoident/tcp/lpi_bitextend.cc | 0 .../libprotoident/tcp/lpi_bittorrent.cc | 0 .../libprotoident/tcp/lpi_blackdesert.cc | 0 .../libprotoident/tcp/lpi_blizzard.cc | 0 .../libprotoident/tcp/lpi_btsync.cc | 0 .../libprotoident/tcp/lpi_bwsyncandshare.cc | 0 .../libprotoident/tcp/lpi_cacaoweb.cc | 0 .../libprotoident/tcp/lpi_cgp.cc | 0 .../libprotoident/tcp/lpi_chatango.cc | 0 .../libprotoident/tcp/lpi_cisco_vpn.cc | 0 .../libprotoident/tcp/lpi_clashofclans.cc | 0 .../libprotoident/tcp/lpi_classin_tcp.cc | 0 .../libprotoident/tcp/lpi_clubbox.cc | 0 .../libprotoident/tcp/lpi_cod_waw.cc | 0 .../libprotoident/tcp/lpi_conquer.cc | 0 .../libprotoident/tcp/lpi_crashplan.cc | 0 .../libprotoident/tcp/lpi_crossfire_tcp.cc | 0 .../libprotoident/tcp/lpi_cryptic.cc | 0 .../libprotoident/tcp/lpi_cvs.cc | 0 .../libprotoident/tcp/lpi_dahua_tcp.cc | 0 .../libprotoident/tcp/lpi_dash.cc | 0 .../libprotoident/tcp/lpi_dell_backup.cc | 0 .../libprotoident/tcp/lpi_destiny.cc | 0 .../libprotoident/tcp/lpi_diablo3.cc | 0 .../libprotoident/tcp/lpi_dianping_tcp.cc | 0 .../libprotoident/tcp/lpi_directconnect.cc | 0 .../libprotoident/tcp/lpi_dnf.cc | 0 .../libprotoident/tcp/lpi_dns.cc | 0 .../libprotoident/tcp/lpi_dogecoin.cc | 0 .../libprotoident/tcp/lpi_douyu.cc | 0 .../libprotoident/tcp/lpi_douyu_chat.cc | 0 .../libprotoident/tcp/lpi_duelingnetwork.cc | 0 .../libprotoident/tcp/lpi_dvrns.cc | 0 .../libprotoident/tcp/lpi_dxp.cc | 0 .../libprotoident/tcp/lpi_ea_games.cc | 0 .../libprotoident/tcp/lpi_emule.cc | 0 .../libprotoident/tcp/lpi_ethernetip.cc | 0 .../libprotoident/tcp/lpi_eye.cc | 0 .../libprotoident/tcp/lpi_facebook_turn.cc | 0 .../libprotoident/tcp/lpi_fb_message.cc | 0 .../libprotoident/tcp/lpi_fbcdn_ssl.cc | 0 .../libprotoident/tcp/lpi_ffxiv.cc | 0 .../libprotoident/tcp/lpi_filenori.cc | 0 .../libprotoident/tcp/lpi_flash.cc | 0 .../libprotoident/tcp/lpi_fliggy.cc | 0 .../libprotoident/tcp/lpi_fring.cc | 0 .../libprotoident/tcp/lpi_ftpcontrol.cc | 0 .../libprotoident/tcp/lpi_ftpdata.cc | 0 .../libprotoident/tcp/lpi_fuckcoin.cc | 0 .../libprotoident/tcp/lpi_funshion.cc | 0 .../libprotoident/tcp/lpi_gamespy.cc | 0 .../libprotoident/tcp/lpi_gcafe_updater.cc | 0 .../libprotoident/tcp/lpi_giop.cc | 0 .../libprotoident/tcp/lpi_git.cc | 0 .../libprotoident/tcp/lpi_glupteba.cc | 0 .../libprotoident/tcp/lpi_gnutella.cc | 0 .../libprotoident/tcp/lpi_goku.cc | 0 .../libprotoident/tcp/lpi_googlehangouts.cc | 0 .../libprotoident/tcp/lpi_graalonlineera.cc | 0 .../libprotoident/tcp/lpi_guildwars2.cc | 0 .../libprotoident/tcp/lpi_hamachi.cc | 0 .../libprotoident/tcp/lpi_harveys.cc | 0 .../libprotoident/tcp/lpi_hearthstone.cc | 0 .../libprotoident/tcp/lpi_hola.cc | 0 .../libprotoident/tcp/lpi_hots_tcp.cc | 0 .../libprotoident/tcp/lpi_http.cc | 0 .../libprotoident/tcp/lpi_http_badport.cc | 0 .../libprotoident/tcp/lpi_http_nonstandard.cc | 0 .../libprotoident/tcp/lpi_http_tunnel.cc | 0 .../libprotoident/tcp/lpi_https.cc | 0 .../libprotoident/tcp/lpi_ica.cc | 0 .../libprotoident/tcp/lpi_icep.cc | 0 .../libprotoident/tcp/lpi_id.cc | 0 .../libprotoident/tcp/lpi_idrivesync.cc | 0 .../libprotoident/tcp/lpi_ihexin.cc | 0 .../libprotoident/tcp/lpi_imap.cc | 0 .../libprotoident/tcp/lpi_imaps.cc | 0 .../libprotoident/tcp/lpi_imesh.cc | 0 .../libprotoident/tcp/lpi_invalid.cc | 0 .../tcp/lpi_invalid_bittorrent.cc | 0 .../libprotoident/tcp/lpi_invalid_http.cc | 0 .../libprotoident/tcp/lpi_invalid_pop.cc | 0 .../libprotoident/tcp/lpi_invalid_smtp.cc | 0 .../libprotoident/tcp/lpi_ipfs.cc | 0 .../libprotoident/tcp/lpi_ipop.cc | 0 .../libprotoident/tcp/lpi_ipsharkk.cc | 0 .../libprotoident/tcp/lpi_irc.cc | 0 .../libprotoident/tcp/lpi_java.cc | 0 .../libprotoident/tcp/lpi_jedi.cc | 0 .../libprotoident/tcp/lpi_jx3online.cc | 0 .../libprotoident/tcp/lpi_kakao.cc | 0 .../libprotoident/tcp/lpi_kankan_tcp.cc | 0 .../libprotoident/tcp/lpi_kaseya.cc | 0 .../libprotoident/tcp/lpi_kaspersky.cc | 0 .../libprotoident/tcp/lpi_kik.cc | 0 .../libprotoident/tcp/lpi_kingofglory_tcp.cc | 0 .../libprotoident/tcp/lpi_kuaibo.cc | 0 .../libprotoident/tcp/lpi_ldap.cc | 0 .../libprotoident/tcp/lpi_lifeforge.cc | 0 .../libprotoident/tcp/lpi_line.cc | 0 .../libprotoident/tcp/lpi_litecoin.cc | 0 .../libprotoident/tcp/lpi_llp2p.cc | 0 .../libprotoident/tcp/lpi_maplestory_china.cc | 0 .../libprotoident/tcp/lpi_maxicloud.cc | 0 .../libprotoident/tcp/lpi_message4u.cc | 0 .../libprotoident/tcp/lpi_minecraft.cc | 0 .../libprotoident/tcp/lpi_mitglieder.cc | 0 .../libprotoident/tcp/lpi_mms.cc | 0 .../libprotoident/tcp/lpi_mongo.cc | 0 .../libprotoident/tcp/lpi_mp2p.cc | 0 .../libprotoident/tcp/lpi_msn.cc | 0 .../libprotoident/tcp/lpi_msnc.cc | 0 .../libprotoident/tcp/lpi_msnv.cc | 0 .../libprotoident/tcp/lpi_munin.cc | 0 .../libprotoident/tcp/lpi_mysql.cc | 0 .../libprotoident/tcp/lpi_mystery_8000.cc | 0 .../libprotoident/tcp/lpi_mystery_9000.cc | 0 .../libprotoident/tcp/lpi_mystery_conn.cc | 0 .../libprotoident/tcp/lpi_mystery_iG.cc | 0 .../libprotoident/tcp/lpi_mystery_pspr.cc | 0 .../libprotoident/tcp/lpi_mystery_rxxf.cc | 0 .../libprotoident/tcp/lpi_mystery_symantec.cc | 0 .../libprotoident/tcp/lpi_mzinga.cc | 0 .../libprotoident/tcp/lpi_naverp2p.cc | 0 .../libprotoident/tcp/lpi_ncsoft.cc | 0 .../libprotoident/tcp/lpi_ndt_tput.cc | 0 .../libprotoident/tcp/lpi_netbios.cc | 0 .../libprotoident/tcp/lpi_netcat_cctv.cc | 0 .../libprotoident/tcp/lpi_netmfp.cc | 0 .../libprotoident/tcp/lpi_nntp.cc | 0 .../libprotoident/tcp/lpi_nntps.cc | 0 .../libprotoident/tcp/lpi_nofirstpkt.cc | 0 .../libprotoident/tcp/lpi_nomachine.cc | 0 .../libprotoident/tcp/lpi_nopayload.cc | 0 .../libprotoident/tcp/lpi_norton_backup.cc | 0 .../libprotoident/tcp/lpi_notes_rpc.cc | 0 .../libprotoident/tcp/lpi_nsq.cc | 0 .../libprotoident/tcp/lpi_omegle.cc | 0 .../libprotoident/tcp/lpi_openvpn.cc | 0 .../libprotoident/tcp/lpi_ourworld.cc | 0 .../libprotoident/tcp/lpi_palringo.cc | 0 .../libprotoident/tcp/lpi_paltalk.cc | 0 .../libprotoident/tcp/lpi_pandatv.cc | 0 .../libprotoident/tcp/lpi_pando.cc | 0 .../libprotoident/tcp/lpi_pathofexile.cc | 0 .../libprotoident/tcp/lpi_pdbox.cc | 0 .../libprotoident/tcp/lpi_pop3.cc | 0 .../libprotoident/tcp/lpi_pop3s.cc | 0 .../libprotoident/tcp/lpi_postgresql.cc | 0 .../libprotoident/tcp/lpi_pptp.cc | 0 .../libprotoident/tcp/lpi_psn_store.cc | 0 .../libprotoident/tcp/lpi_qcloud_ilvb.cc | 0 .../libprotoident/tcp/lpi_qq_tcp.cc | 0 .../libprotoident/tcp/lpi_qqdownload.cc | 0 .../libprotoident/tcp/lpi_qqlive_tcp.cc | 0 .../tcp/lpi_qqspeedmobile_tcp.cc | 0 .../libprotoident/tcp/lpi_qvod.cc | 0 .../libprotoident/tcp/lpi_rabbitmq.cc | 0 .../libprotoident/tcp/lpi_ragnarokonline.cc | 0 .../libprotoident/tcp/lpi_razor.cc | 0 .../libprotoident/tcp/lpi_rbls.cc | 0 .../libprotoident/tcp/lpi_rdp.cc | 0 .../libprotoident/tcp/lpi_realmofthemadgod.cc | 0 .../libprotoident/tcp/lpi_realvnc.cc | 0 .../libprotoident/tcp/lpi_rejection.cc | 0 .../libprotoident/tcp/lpi_relay.cc | 0 .../tcp/lpi_remote_manipulator.cc | 0 .../libprotoident/tcp/lpi_revolver_nblbt.cc | 0 .../libprotoident/tcp/lpi_rfb.cc | 0 .../libprotoident/tcp/lpi_rpcscan.cc | 0 .../libprotoident/tcp/lpi_rrtv.cc | 0 .../libprotoident/tcp/lpi_rsync.cc | 0 .../libprotoident/tcp/lpi_rtmp.cc | 0 .../libprotoident/tcp/lpi_rtsp.cc | 0 .../libprotoident/tcp/lpi_runescape.cc | 0 .../libprotoident/tcp/lpi_s7comm.cc | 0 .../libprotoident/tcp/lpi_saprouter.cc | 0 .../tcp/lpi_saszombieassault4.cc | 0 .../libprotoident/tcp/lpi_second_life.cc | 0 .../libprotoident/tcp/lpi_shoutcast.cc | 0 .../libprotoident/tcp/lpi_silkroadonline.cc | 0 .../libprotoident/tcp/lpi_sip.cc | 0 .../libprotoident/tcp/lpi_skyforge.cc | 0 .../libprotoident/tcp/lpi_skype_tcp.cc | 0 .../libprotoident/tcp/lpi_smb.cc | 0 .../libprotoident/tcp/lpi_smite_tcp.cc | 0 .../libprotoident/tcp/lpi_smtp.cc | 0 .../libprotoident/tcp/lpi_smtps.cc | 0 .../libprotoident/tcp/lpi_socks4.cc | 0 .../libprotoident/tcp/lpi_socks5.cc | 0 .../libprotoident/tcp/lpi_spdy.cc | 0 .../libprotoident/tcp/lpi_speedify.cc | 0 .../libprotoident/tcp/lpi_speedin.cc | 0 .../libprotoident/tcp/lpi_speedtest.cc | 0 .../libprotoident/tcp/lpi_spotify.cc | 0 .../libprotoident/tcp/lpi_ssh.cc | 0 .../libprotoident/tcp/lpi_ssjj.cc | 0 .../libprotoident/tcp/lpi_ssl.cc | 0 .../libprotoident/tcp/lpi_steam.cc | 0 .../libprotoident/tcp/lpi_stratum.cc | 0 .../libprotoident/tcp/lpi_stun.cc | 0 .../libprotoident/tcp/lpi_supl.cc | 0 .../libprotoident/tcp/lpi_svn.cc | 0 .../libprotoident/tcp/lpi_talesrunner.cc | 0 .../libprotoident/tcp/lpi_tankionline.cc | 0 .../libprotoident/tcp/lpi_tankix.cc | 0 .../libprotoident/tcp/lpi_taobao.cc | 0 .../libprotoident/tcp/lpi_tds.cc | 0 .../libprotoident/tcp/lpi_teamviewer.cc | 0 .../libprotoident/tcp/lpi_telecomkey.cc | 0 .../libprotoident/tcp/lpi_telegram.cc | 0 .../libprotoident/tcp/lpi_telnet.cc | 0 .../libprotoident/tcp/lpi_telnet_exploit.cc | 0 .../libprotoident/tcp/lpi_tencent_games.cc | 0 .../libprotoident/tcp/lpi_tenfivecoin.cc | 0 .../libprotoident/tcp/lpi_tensafe.cc | 0 .../libprotoident/tcp/lpi_tera.cc | 0 .../libprotoident/tcp/lpi_tetrisonline.cc | 0 .../libprotoident/tcp/lpi_thedivision.cc | 0 .../libprotoident/tcp/lpi_tip.cc | 0 .../libprotoident/tcp/lpi_tor.cc | 0 .../libprotoident/tcp/lpi_tpkt.cc | 0 .../libprotoident/tcp/lpi_trackmania.cc | 0 .../libprotoident/tcp/lpi_transocks.cc | 0 .../libprotoident/tcp/lpi_trion.cc | 0 .../tcp/lpi_trojan_win32_generic_sb.cc | 0 .../tcp/lpi_trojan_zeroaccess.cc | 0 .../libprotoident/tcp/lpi_twitcasting.cc | 0 .../libprotoident/tcp/lpi_twitch_irc.cc | 0 .../libprotoident/tcp/lpi_utherverse.cc | 0 .../libprotoident/tcp/lpi_vainglory.cc | 0 .../libprotoident/tcp/lpi_vhdp2p.cc | 0 .../libprotoident/tcp/lpi_viber.cc | 0 .../libprotoident/tcp/lpi_vmware.cc | 0 .../libprotoident/tcp/lpi_vodlocker.cc | 0 .../libprotoident/tcp/lpi_vpnrobot_tcp.cc | 0 .../libprotoident/tcp/lpi_vpnunlimited_tcp.cc | 0 .../libprotoident/tcp/lpi_warcraft3.cc | 0 .../libprotoident/tcp/lpi_web_junk.cc | 0 .../libprotoident/tcp/lpi_webex_stun.cc | 0 .../libprotoident/tcp/lpi_weblogic.cc | 0 .../libprotoident/tcp/lpi_wechat.cc | 0 .../libprotoident/tcp/lpi_weibo.cc | 0 .../libprotoident/tcp/lpi_weiqi.cc | 0 .../libprotoident/tcp/lpi_whatsapp.cc | 0 .../libprotoident/tcp/lpi_whois.cc | 0 .../libprotoident/tcp/lpi_winmx.cc | 0 .../libprotoident/tcp/lpi_wizard101.cc | 0 .../libprotoident/tcp/lpi_wns.cc | 0 .../libprotoident/tcp/lpi_wow.cc | 0 .../libprotoident/tcp/lpi_wuala.cc | 0 .../libprotoident/tcp/lpi_xiami.cc | 0 .../libprotoident/tcp/lpi_xmpp.cc | 0 .../libprotoident/tcp/lpi_xmpps.cc | 0 .../libprotoident/tcp/lpi_xunlei.cc | 0 .../libprotoident/tcp/lpi_xunlei_accel.cc | 0 .../libprotoident/tcp/lpi_xymon.cc | 0 .../libprotoident/tcp/lpi_yahoo.cc | 0 .../libprotoident/tcp/lpi_yahoo_error.cc | 0 .../libprotoident/tcp/lpi_yahoo_games.cc | 0 .../libprotoident/tcp/lpi_yahoo_webcam.cc | 0 .../libprotoident/tcp/lpi_youku.cc | 0 .../libprotoident/tcp/lpi_yy_tcp.cc | 0 .../libprotoident/tcp/lpi_zabbix.cc | 0 .../libprotoident/tcp/lpi_zero.cc | 0 .../libprotoident/tcp/lpi_zoom_tcp.cc | 0 .../libprotoident/tcp/lpi_zynga.cc | 0 .../libprotoident/tcp/tcp_protocols.h | 0 .../libprotoident/udp/lpi_360cn.cc | 0 .../libprotoident/udp/lpi_360p2p.cc | 0 .../libprotoident/udp/lpi_aachen_udp.cc | 0 .../libprotoident/udp/lpi_acercloud.cc | 0 .../libprotoident/udp/lpi_akamai.cc | 0 .../libprotoident/udp/lpi_akamai_transfer.cc | 0 .../libprotoident/udp/lpi_amanda.cc | 0 .../udp/lpi_apple_facetime_init.cc | 0 .../libprotoident/udp/lpi_ard.cc | 0 .../libprotoident/udp/lpi_ares.cc | 0 .../libprotoident/udp/lpi_ark.cc | 0 .../libprotoident/udp/lpi_arma3_server.cc | 0 .../libprotoident/udp/lpi_arma_server.cc | 0 .../libprotoident/udp/lpi_artcp.cc | 0 .../libprotoident/udp/lpi_assettocorsa.cc | 0 .../libprotoident/udp/lpi_avast_secure_dns.cc | 0 .../libprotoident/udp/lpi_backweb.cc | 0 .../libprotoident/udp/lpi_bacnet.cc | 0 .../libprotoident/udp/lpi_baiduyun_p2p.cc | 0 .../libprotoident/udp/lpi_baofeng_udp.cc | 0 .../libprotoident/udp/lpi_battlefield.cc | 0 .../libprotoident/udp/lpi_bjnp.cc | 0 .../libprotoident/udp/lpi_bmdp.cc | 0 .../libprotoident/udp/lpi_btsync.cc | 0 .../libprotoident/udp/lpi_cacaoweb_udp.cc | 0 .../libprotoident/udp/lpi_canon_mfnp.cc | 0 .../libprotoident/udp/lpi_chargen_exploit.cc | 0 .../libprotoident/udp/lpi_checkpoint_rdp.cc | 0 .../libprotoident/udp/lpi_chivalry.cc | 0 .../libprotoident/udp/lpi_cip_io.cc | 0 .../libprotoident/udp/lpi_cirn.cc | 0 .../libprotoident/udp/lpi_cisco_ipsec.cc | 0 .../libprotoident/udp/lpi_cisco_sslvpn.cc | 0 .../libprotoident/udp/lpi_classin_udp.cc | 0 .../libprotoident/udp/lpi_cloudflare_warp.cc | 0 .../libprotoident/udp/lpi_cod.cc | 0 .../libprotoident/udp/lpi_codmobile.cc | 0 .../libprotoident/udp/lpi_combatarms.cc | 0 .../libprotoident/udp/lpi_combatarms_p2p.cc | 0 .../libprotoident/udp/lpi_contract_wars.cc | 0 .../libprotoident/udp/lpi_crossfire.cc | 0 .../libprotoident/udp/lpi_crossout.cc | 0 .../libprotoident/udp/lpi_csgo.cc | 0 .../libprotoident/udp/lpi_csoriginal.cc | 0 .../libprotoident/udp/lpi_dahua.cc | 0 .../libprotoident/udp/lpi_db2.cc | 0 .../libprotoident/udp/lpi_dcc.cc | 0 .../libprotoident/udp/lpi_demonware.cc | 0 .../libprotoident/udp/lpi_destiny_udp.cc | 0 .../libprotoident/udp/lpi_dhcp.cc | 0 .../libprotoident/udp/lpi_dht_dict.cc | 0 .../libprotoident/udp/lpi_dht_other.cc | 0 .../libprotoident/udp/lpi_diablo2.cc | 0 .../libprotoident/udp/lpi_dianping_udp.cc | 0 .../libprotoident/udp/lpi_dianshijia.cc | 0 .../libprotoident/udp/lpi_directconnect.cc | 0 .../libprotoident/udp/lpi_discord.cc | 0 .../libprotoident/udp/lpi_dns.cc | 0 .../libprotoident/udp/lpi_dota2.cc | 0 .../libprotoident/udp/lpi_doyo.cc | 0 .../libprotoident/udp/lpi_driveshare.cc | 0 .../libprotoident/udp/lpi_dtls.cc | 0 .../libprotoident/udp/lpi_emule.cc | 0 .../libprotoident/udp/lpi_emule_weak.cc | 0 .../libprotoident/udp/lpi_epson.cc | 0 .../libprotoident/udp/lpi_eso.cc | 0 .../libprotoident/udp/lpi_esp_encap.cc | 0 .../libprotoident/udp/lpi_ethernetip.cc | 0 .../libprotoident/udp/lpi_eye.cc | 0 .../libprotoident/udp/lpi_fasp.cc | 0 .../libprotoident/udp/lpi_feitwo.cc | 0 .../udp/lpi_forticlient_sslvpn.cc | 0 .../libprotoident/udp/lpi_fortinet.cc | 0 .../libprotoident/udp/lpi_foscam.cc | 0 .../libprotoident/udp/lpi_freechal.cc | 0 .../libprotoident/udp/lpi_freefire.cc | 0 .../libprotoident/udp/lpi_funshion.cc | 0 .../libprotoident/udp/lpi_gamespy.cc | 0 .../libprotoident/udp/lpi_ganglia.cc | 0 .../libprotoident/udp/lpi_gangsofspace.cc | 0 .../libprotoident/udp/lpi_garena.cc | 0 .../libprotoident/udp/lpi_gearsofwar.cc | 0 .../libprotoident/udp/lpi_gnutella.cc | 0 .../libprotoident/udp/lpi_gnutella2.cc | 0 .../libprotoident/udp/lpi_gnutella_weak.cc | 0 .../libprotoident/udp/lpi_gotomeeting.cc | 0 .../libprotoident/udp/lpi_gprs_tunnel.cc | 0 .../libprotoident/udp/lpi_gsm.cc | 0 .../libprotoident/udp/lpi_h1z1.cc | 0 .../libprotoident/udp/lpi_halflife.cc | 0 .../libprotoident/udp/lpi_haloonline.cc | 0 .../libprotoident/udp/lpi_hamachi.cc | 0 .../libprotoident/udp/lpi_heliborne.cc | 0 .../libprotoident/udp/lpi_heroes_generals.cc | 0 .../libprotoident/udp/lpi_heroesevolved.cc | 0 .../libprotoident/udp/lpi_hollachat.cc | 0 .../libprotoident/udp/lpi_hots.cc | 0 .../libprotoident/udp/lpi_icp.cc | 0 .../libprotoident/udp/lpi_imesh.cc | 0 .../libprotoident/udp/lpi_ipmsg.cc | 0 .../libprotoident/udp/lpi_ipv6.cc | 0 .../libprotoident/udp/lpi_isakmp.cc | 0 .../libprotoident/udp/lpi_jedi.cc | 0 .../libprotoident/udp/lpi_jedi_academy.cc | 0 .../libprotoident/udp/lpi_kademlia.cc | 0 .../libprotoident/udp/lpi_kankan.cc | 0 .../libprotoident/udp/lpi_kaspersky.cc | 0 .../libprotoident/udp/lpi_kazaa.cc | 0 .../libprotoident/udp/lpi_kingofglory_udp.cc | 0 .../libprotoident/udp/lpi_kuguo.cc | 0 .../libprotoident/udp/lpi_l2tp.cc | 0 .../libprotoident/udp/lpi_lansync.cc | 0 .../libprotoident/udp/lpi_ldap_ad.cc | 0 .../libprotoident/udp/lpi_line_udp.cc | 0 .../libprotoident/udp/lpi_linkproof.cc | 0 .../libprotoident/udp/lpi_loadout.cc | 0 .../libprotoident/udp/lpi_lol.cc | 0 .../libprotoident/udp/lpi_mdns.cc | 0 .../libprotoident/udp/lpi_merakicloud.cc | 0 .../libprotoident/udp/lpi_moh.cc | 0 .../libprotoident/udp/lpi_moonhunters.cc | 0 .../libprotoident/udp/lpi_mp2p.cc | 0 .../libprotoident/udp/lpi_msn_cache.cc | 0 .../libprotoident/udp/lpi_msn_video.cc | 0 .../libprotoident/udp/lpi_msoffice_mac.cc | 0 .../libprotoident/udp/lpi_mta.cc | 0 .../libprotoident/udp/lpi_n2ping.cc | 0 .../libprotoident/udp/lpi_natpmp.cc | 0 .../libprotoident/udp/lpi_netbios.cc | 0 .../libprotoident/udp/lpi_netcat_cctv_udp.cc | 0 .../libprotoident/udp/lpi_netcore_scan.cc | 0 .../libprotoident/udp/lpi_netflow.cc | 0 .../libprotoident/udp/lpi_newerth.cc | 0 .../libprotoident/udp/lpi_nintendo.cc | 0 .../libprotoident/udp/lpi_noction.cc | 0 .../libprotoident/udp/lpi_noe.cc | 0 .../libprotoident/udp/lpi_nopayload.cc | 0 .../libprotoident/udp/lpi_norton.cc | 0 .../libprotoident/udp/lpi_ntp.cc | 0 .../libprotoident/udp/lpi_ntp_reflect.cc | 0 .../udp/lpi_nvidia_gamestream.cc | 0 .../libprotoident/udp/lpi_nwn.cc | 0 .../libprotoident/udp/lpi_opaserv.cc | 0 .../libprotoident/udp/lpi_openvpn.cc | 0 .../libprotoident/udp/lpi_orbit.cc | 0 .../libprotoident/udp/lpi_overwatch.cc | 0 .../libprotoident/udp/lpi_paladins.cc | 0 .../libprotoident/udp/lpi_pando.cc | 0 .../libprotoident/udp/lpi_panipani.cc | 0 .../libprotoident/udp/lpi_planetside2.cc | 0 .../libprotoident/udp/lpi_portmap_rpc.cc | 0 .../libprotoident/udp/lpi_pplive.cc | 0 .../libprotoident/udp/lpi_ppstream.cc | 0 .../udp/lpi_probable_gnutella.cc | 0 .../libprotoident/udp/lpi_ps4_remoteplay.cc | 0 .../libprotoident/udp/lpi_psn.cc | 0 .../libprotoident/udp/lpi_punkbuster.cc | 0 .../libprotoident/udp/lpi_pyzor.cc | 0 .../libprotoident/udp/lpi_qq.cc | 0 .../libprotoident/udp/lpi_qqlive.cc | 0 .../libprotoident/udp/lpi_qqpcmgr.cc | 0 .../udp/lpi_qqspeedmobile_udp.cc | 0 .../libprotoident/udp/lpi_quake.cc | 0 .../libprotoident/udp/lpi_quic.cc | 0 .../libprotoident/udp/lpi_qvod_udp.cc | 0 .../libprotoident/udp/lpi_radius.cc | 0 .../libprotoident/udp/lpi_raknet.cc | 0 .../libprotoident/udp/lpi_ramseydash.cc | 0 .../libprotoident/udp/lpi_rdp_udp.cc | 0 .../libprotoident/udp/lpi_real.cc | 0 .../libprotoident/udp/lpi_risingstorm.cc | 0 .../libprotoident/udp/lpi_robocraft.cc | 0 .../libprotoident/udp/lpi_rocket_league.cc | 0 .../libprotoident/udp/lpi_rrshare.cc | 0 .../libprotoident/udp/lpi_rtcp.cc | 0 .../libprotoident/udp/lpi_rtmfp.cc | 0 .../libprotoident/udp/lpi_rtp.cc | 0 .../libprotoident/udp/lpi_rulesofsurvival.cc | 0 .../libprotoident/udp/lpi_sanandreas_mp.cc | 0 .../libprotoident/udp/lpi_second_life.cc | 0 .../libprotoident/udp/lpi_serialnumberd.cc | 0 .../libprotoident/udp/lpi_sip.cc | 0 .../libprotoident/udp/lpi_skype.cc | 0 .../libprotoident/udp/lpi_slp.cc | 0 .../libprotoident/udp/lpi_smite.cc | 0 .../libprotoident/udp/lpi_snapvpn.cc | 0 .../libprotoident/udp/lpi_snmp.cc | 0 .../libprotoident/udp/lpi_sopcast.cc | 0 .../libprotoident/udp/lpi_spamfighter.cc | 0 .../libprotoident/udp/lpi_spotify_bcast.cc | 0 .../libprotoident/udp/lpi_sql_worm.cc | 0 .../libprotoident/udp/lpi_ssdp.cc | 0 .../libprotoident/udp/lpi_starcitizen.cc | 0 .../libprotoident/udp/lpi_starcraft.cc | 0 .../libprotoident/udp/lpi_starleaf.cc | 0 .../libprotoident/udp/lpi_steam.cc | 0 .../udp/lpi_steam_inhomebroadcast.cc | 0 .../udp/lpi_steam_localbroadcast.cc | 0 .../libprotoident/udp/lpi_steamfriends.cc | 0 .../libprotoident/udp/lpi_storm_worm.cc | 0 .../libprotoident/udp/lpi_stun.cc | 0 .../libprotoident/udp/lpi_syslog.cc | 0 .../libprotoident/udp/lpi_talesrunner_udp.cc | 0 .../libprotoident/udp/lpi_teamspeak.cc | 0 .../libprotoident/udp/lpi_teamviewer.cc | 0 .../libprotoident/udp/lpi_teredo.cc | 0 .../libprotoident/udp/lpi_tf2.cc | 0 .../libprotoident/udp/lpi_tftp.cc | 0 .../libprotoident/udp/lpi_thecrew.cc | 0 .../libprotoident/udp/lpi_thq.cc | 0 .../libprotoident/udp/lpi_torchlight2.cc | 0 .../libprotoident/udp/lpi_tox.cc | 0 .../libprotoident/udp/lpi_traceroute.cc | 0 .../libprotoident/udp/lpi_tremulous.cc | 0 .../libprotoident/udp/lpi_turbovpn.cc | 0 .../libprotoident/udp/lpi_tvants.cc | 0 .../libprotoident/udp/lpi_ubisoft_games.cc | 0 .../libprotoident/udp/lpi_umeye.cc | 0 .../libprotoident/udp/lpi_unreal.cc | 0 .../libprotoident/udp/lpi_ventrilo.cc | 0 .../libprotoident/udp/lpi_viber.cc | 0 .../libprotoident/udp/lpi_vivox.cc | 0 .../libprotoident/udp/lpi_vpnmaster.cc | 0 .../libprotoident/udp/lpi_vpnrobot_udp.cc | 0 .../libprotoident/udp/lpi_vxworks_exploit.cc | 0 .../libprotoident/udp/lpi_warthunder.cc | 0 .../libprotoident/udp/lpi_webex.cc | 0 .../libprotoident/udp/lpi_wechat_udp.cc | 0 .../libprotoident/udp/lpi_winmessage.cc | 0 .../libprotoident/udp/lpi_wireguard.cc | 0 .../libprotoident/udp/lpi_wolfet.cc | 0 .../libprotoident/udp/lpi_worm_22105.cc | 0 .../libprotoident/udp/lpi_xfire_p2p.cc | 0 .../libprotoident/udp/lpi_xlsp.cc | 0 .../libprotoident/udp/lpi_xunlei.cc | 0 .../libprotoident/udp/lpi_xunlei_jsq.cc | 0 .../libprotoident/udp/lpi_xunyou.cc | 0 .../libprotoident/udp/lpi_youdao_dict.cc | 0 .../libprotoident/udp/lpi_youku.cc | 0 .../libprotoident/udp/lpi_yuanfudao.cc | 0 .../libprotoident/udp/lpi_yy_udp.cc | 0 .../libprotoident/udp/lpi_zalo_call.cc | 0 .../libprotoident/udp/lpi_zeroaccess_udp.cc | 0 .../libprotoident/udp/lpi_zoom.cc | 0 .../libprotoident/udp/udp_protocols.h | 0 .../libprotoident/version.map | 0 .../lpi_plugin.cpp} | 126 +++++------------- .../app_l7_protocol.h => lpi/lpi_plugin.h} | 0 .../openvpn_ident.cpp} | 2 +- .../quic_identify.cpp => lpi/quic_ident.cpp} | 2 +- decoders/lpi/version.map | 10 ++ infra/CMakeLists.txt | 5 + infra/core/CMakeLists.txt | 4 +- infra/core/version.map | 4 +- test/CMakeLists.txt | 2 +- test/glimpse_detector/test_config/spec.toml | 11 -- .../CMakeLists.txt | 45 ++++--- .../gtest_lpi_main.cpp} | 0 .../gtest_lpi_plugin.cpp} | 48 +++---- test/lpi_plugin/test_config/spec.toml | 11 ++ .../test_config/tsg_l7_protocol.conf | 0 .../test_expect/app_pcap.json | 0 .../test_expect/dns_pcap.json | 0 .../test_expect/empty_array.json | 0 .../test_expect/mixed_pcap.json | 0 .../test_expect/openvpn_pcap.json | 0 .../test_expect/ppp_pcap.json | 0 .../test_expect/socks_pcap.json | 0 .../test_pcap/app_pcap/1-qq_59361.pcap | Bin .../test_pcap/app_pcap/2-qq_8758.pcap | Bin .../test_pcap/app_pcap/3-wechat_51876.pcap | Bin .../test_pcap/app_pcap/4-wechat_8080.pcap | Bin .../test_pcap/app_pcap/5-wireguard.pcap | Bin .../test_pcap/app_pcap/6-wireguard1.pcap | Bin .../test_pcap/app_pcap/7-wireguard2.pcap | Bin ...-tcp-single-53-124.88.175.201-8.8.8.8.pcap | Bin ...s-tcp-single-53-60.13.179.249-8.8.8.8.pcap | Bin .../test_pcap/mixed_pcap/01-http-not-ftp.pcap | Bin ...005-8000-39.144.206.199-117.156.19.31.pcap | Bin ...3-21121-117.145.115.74-218.31.124.234.pcap | Bin .../04-mail_smtp_port_18867_25.pcap | Bin .../mixed_pcap/05-ftp_port_21121-double.pcap | Bin .../mixed_pcap/06-ftp_port_21121-s2c.pcap | Bin .../mixed_pcap/07-ftp_port_21121-c2s.pcap | Bin ...5.117.117.169.47762-173.194.73.95.443.pcap | Bin ...-85.117.113.98.4340-74.125.131.95.443.pcap | Bin ...-90.143.189.5.8026-173.194.188.40.443.pcap | Bin ...85.117.125.8.21243-173.194.73.102.443.pcap | Bin ...117.122.194.32370-173.194.220.138.443.pcap | Bin ...10.32.121.249.33765-64.233.161.95.443.pcap | Bin ...5.117.119.45.22495-173.194.73.101.443.pcap | Bin ...0.143.180.56.28496-64.233.165.113.443.pcap | Bin ...0.143.180.56.28496-64.233.165.113.443.pcap | Bin ...46.158.67.194.1044-108.177.14.138.443.pcap | Bin ...36.142.158.169.16385-36.189.11.71.443.pcap | Bin ...103.3.138.59.12521-123.125.116.52.443.pcap | Bin ...172.20.9.135.65045-64.233.162.119.443.pcap | Bin ...9-192.168.50.29.61891-31.13.77.35.443.pcap | Bin ...-192.168.60.9.55659-69.171.250.63.443.pcap | Bin ...192.168.137.141.50006-31.13.77.17.443.pcap | Bin ...17.76.77.70.33232-173.194.220.105.443.pcap | Bin ...192.168.60.32.59699-64.233.164.84.443.pcap | Bin ...5.12.120.14.41803-173.194.222.101.443.pcap | Bin ...55426-587-10.130.2.104-67.225.241.247.pcap | Bin ...776-110-196.188.12.179-192.185.31.244.pcap | Bin ...7719-26-10.130.13.155-50.87.145.154-2.pcap | Bin ...36-25-196.189.57.105-68.232.159.216-2.pcap | Bin ...-20997-25-196.190.160.6-64.225.54.152.pcap | Bin ...3-50020-110-196.188.3.8-82.98.178.159.pcap | Bin ...3-53357-110-196.189.0.15-39.156.6.106.pcap | Bin ...-36734-143-196.189.5.89-101.32.113.90.pcap | Bin ...0415-143-196.188.28.149-69.195.110.51.pcap | Bin ...1440-587-196.189.45.189-40.101.92.178.pcap | Bin ...7943-587-196.191.120.240-81.19.77.166.pcap | Bin ...e-4029-53-115.24.235.11-8.210.152.150.pcap | Bin .../test_pcap/mixed_pcap/38-stun-dtls.pcap | Bin .../mixed_pcap/39-pop3-mistake-redis.pcap | Bin .../01-openvpn-udp-port-1198-first.pcap | Bin .../openvpn_pcap/02-openvpn-nDPI.pcap | Bin .../openvpn_pcap/03-openvpn_onestream.pcap | Bin .../openvpn_pcap/04-openvpn-udp-63111.pcap | Bin .../openvpn_pcap/05-openvpn-udp-34400.pcap | Bin .../openvpn_pcap/06-openvpn-udp-40914.pcap | Bin .../openvpn_pcap/07-openvpn.tcp.pcap | Bin .../openvpn_pcap/08-ovpntcp_hmac.pcap | Bin .../openvpn_pcap/09-ovpntcp_nohmac.pcap | Bin .../openvpn_pcap/10-openvpn-udp-49941.pcap | Bin .../openvpn_pcap/11-ipv6_openvpn.pcap | Bin .../openvpn_pcap/12-quic-openvpn.pcap | Bin .../test_pcap/ppp_pcap/01-l2tp_netbios.pcap | Bin ...76-33445-192.168.10.91-220.43.148.189.pcap | Bin .../test_pcap/ppp_pcap/03-l2tp_http.pcap | Bin .../ppp_pcap/04-l2tp_ctrl_data_full.pcap | Bin .../test_pcap/ppp_pcap/05-pptp_encrypt.pcap | Bin .../test_pcap/ppp_pcap/06-pptp_http.pcap | Bin .../socks_pcap/1-socks45-http-example.pcap | Bin .../socks_pcap/10-socks5-http-302-frag.pcap | Bin .../socks_pcap/11-socks5-http-302.pcap | Bin .../test_pcap/socks_pcap/12-socks5-rdp.pcap | Bin .../socks_pcap/13-socks5-reverse.pcap | Bin .../socks_pcap/14-socks5-smtp-503.pcap | Bin .../socks_pcap/15-socks-http-pass.pcap | Bin .../socks_pcap/16-socks-https-example.pcap | Bin .../test_pcap/socks_pcap/2-socks5_ftp.pcap | Bin .../socks_pcap/3-POP3_Sock5_subject.pcap | Bin .../socks_pcap/4-SMTP_Sock5_subject.pcap | Bin .../socks_pcap/5-T3-HTTP-URL-SOCKS5.pcap | Bin .../socks_pcap/6-T7-HTTP-CONT-SOCKS5.pcap | Bin .../7-T86-FTP-URL-PORT-BIN-SOCKS5.pcap | Bin .../test_pcap/socks_pcap/8-socks4_http.pcap | Bin .../test_pcap/socks_pcap/9-socks4-https.pcap | Bin 648 files changed, 125 insertions(+), 181 deletions(-) delete mode 100644 decoders/glimpse_detector/CMakeLists.txt delete mode 100644 decoders/glimpse_detector/version.map rename decoders/{glimpse_detector => lpi}/.gitignore (100%) create mode 100644 decoders/lpi/CMakeLists.txt rename decoders/{glimpse_detector => lpi}/libprotoident/CMakeLists.txt (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/libprotoident.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/libprotoident.h (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/proto_common.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/proto_common.h (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/proto_manager.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/proto_manager.h (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_300heroes.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_360safeguard.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_4d.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_acestream.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_afp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_airdroid.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_airmedia.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_akamai.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_amp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_antcoin.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_appearin.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_apple_push.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ares.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_badbaidu.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_baofeng_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_beam.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_bitcoin.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_bitextend.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_bittorrent.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_blackdesert.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_blizzard.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_btsync.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_bwsyncandshare.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_cacaoweb.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_cgp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_chatango.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_cisco_vpn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_clashofclans.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_classin_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_clubbox.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_cod_waw.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_conquer.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_crashplan.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_crossfire_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_cryptic.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_cvs.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_dahua_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_dash.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_dell_backup.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_destiny.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_diablo3.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_dianping_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_directconnect.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_dnf.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_dns.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_dogecoin.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_douyu.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_douyu_chat.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_duelingnetwork.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_dvrns.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_dxp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ea_games.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_emule.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ethernetip.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_eye.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_facebook_turn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_fb_message.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_fbcdn_ssl.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ffxiv.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_filenori.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_flash.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_fliggy.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_fring.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ftpcontrol.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ftpdata.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_fuckcoin.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_funshion.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_gamespy.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_gcafe_updater.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_giop.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_git.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_glupteba.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_gnutella.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_goku.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_googlehangouts.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_graalonlineera.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_guildwars2.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_hamachi.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_harveys.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_hearthstone.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_hola.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_hots_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_http.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_http_badport.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_http_nonstandard.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_http_tunnel.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_https.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ica.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_icep.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_id.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_idrivesync.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ihexin.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_imap.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_imaps.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_imesh.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_invalid.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_invalid_bittorrent.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_invalid_http.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_invalid_pop.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_invalid_smtp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ipfs.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ipop.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ipsharkk.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_irc.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_java.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_jedi.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_jx3online.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_kakao.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_kankan_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_kaseya.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_kaspersky.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_kik.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_kingofglory_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_kuaibo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ldap.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_lifeforge.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_line.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_litecoin.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_llp2p.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_maplestory_china.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_maxicloud.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_message4u.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_minecraft.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mitglieder.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mms.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mongo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mp2p.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_msn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_msnc.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_msnv.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_munin.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mysql.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mystery_8000.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mystery_9000.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mystery_conn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mystery_iG.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mystery_pspr.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mystery_rxxf.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mystery_symantec.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_mzinga.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_naverp2p.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ncsoft.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ndt_tput.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_netbios.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_netcat_cctv.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_netmfp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_nntp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_nntps.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_nofirstpkt.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_nomachine.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_nopayload.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_norton_backup.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_notes_rpc.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_nsq.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_omegle.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_openvpn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ourworld.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_palringo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_paltalk.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_pandatv.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_pando.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_pathofexile.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_pdbox.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_pop3.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_pop3s.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_postgresql.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_pptp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_psn_store.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_qcloud_ilvb.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_qq_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_qqdownload.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_qqlive_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_qqspeedmobile_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_qvod.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_rabbitmq.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ragnarokonline.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_razor.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_rbls.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_rdp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_realmofthemadgod.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_realvnc.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_rejection.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_relay.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_remote_manipulator.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_revolver_nblbt.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_rfb.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_rpcscan.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_rrtv.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_rsync.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_rtmp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_rtsp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_runescape.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_s7comm.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_saprouter.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_saszombieassault4.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_second_life.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_shoutcast.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_silkroadonline.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_sip.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_skyforge.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_skype_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_smb.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_smite_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_smtp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_smtps.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_socks4.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_socks5.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_spdy.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_speedify.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_speedin.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_speedtest.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_spotify.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ssh.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ssjj.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_ssl.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_steam.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_stratum.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_stun.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_supl.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_svn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_talesrunner.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tankionline.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tankix.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_taobao.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tds.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_teamviewer.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_telecomkey.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_telegram.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_telnet.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_telnet_exploit.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tencent_games.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tenfivecoin.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tensafe.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tera.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tetrisonline.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_thedivision.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tip.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tor.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_tpkt.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_trackmania.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_transocks.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_trion.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_trojan_win32_generic_sb.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_trojan_zeroaccess.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_twitcasting.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_twitch_irc.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_utherverse.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_vainglory.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_vhdp2p.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_viber.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_vmware.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_vodlocker.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_vpnrobot_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_vpnunlimited_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_warcraft3.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_web_junk.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_webex_stun.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_weblogic.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_wechat.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_weibo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_weiqi.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_whatsapp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_whois.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_winmx.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_wizard101.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_wns.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_wow.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_wuala.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_xiami.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_xmpp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_xmpps.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_xunlei.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_xunlei_accel.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_xymon.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_yahoo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_yahoo_error.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_yahoo_games.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_yahoo_webcam.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_youku.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_yy_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_zabbix.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_zero.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_zoom_tcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/lpi_zynga.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/tcp/tcp_protocols.h (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_360cn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_360p2p.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_aachen_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_acercloud.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_akamai.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_akamai_transfer.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_amanda.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_apple_facetime_init.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ard.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ares.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ark.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_arma3_server.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_arma_server.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_artcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_assettocorsa.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_avast_secure_dns.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_backweb.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_bacnet.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_baiduyun_p2p.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_baofeng_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_battlefield.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_bjnp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_bmdp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_btsync.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_cacaoweb_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_canon_mfnp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_chargen_exploit.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_checkpoint_rdp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_chivalry.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_cip_io.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_cirn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_cisco_ipsec.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_cisco_sslvpn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_classin_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_cloudflare_warp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_cod.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_codmobile.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_combatarms.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_combatarms_p2p.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_contract_wars.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_crossfire.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_crossout.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_csgo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_csoriginal.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_dahua.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_db2.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_dcc.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_demonware.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_destiny_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_dhcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_dht_dict.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_dht_other.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_diablo2.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_dianping_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_dianshijia.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_directconnect.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_discord.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_dns.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_dota2.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_doyo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_driveshare.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_dtls.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_emule.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_emule_weak.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_epson.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_eso.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_esp_encap.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ethernetip.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_eye.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_fasp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_feitwo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_forticlient_sslvpn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_fortinet.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_foscam.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_freechal.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_freefire.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_funshion.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_gamespy.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ganglia.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_gangsofspace.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_garena.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_gearsofwar.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_gnutella.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_gnutella2.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_gnutella_weak.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_gotomeeting.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_gprs_tunnel.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_gsm.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_h1z1.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_halflife.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_haloonline.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_hamachi.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_heliborne.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_heroes_generals.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_heroesevolved.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_hollachat.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_hots.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_icp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_imesh.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ipmsg.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ipv6.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_isakmp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_jedi.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_jedi_academy.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_kademlia.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_kankan.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_kaspersky.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_kazaa.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_kingofglory_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_kuguo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_l2tp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_lansync.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ldap_ad.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_line_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_linkproof.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_loadout.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_lol.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_mdns.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_merakicloud.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_moh.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_moonhunters.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_mp2p.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_msn_cache.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_msn_video.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_msoffice_mac.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_mta.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_n2ping.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_natpmp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_netbios.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_netcat_cctv_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_netcore_scan.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_netflow.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_newerth.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_nintendo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_noction.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_noe.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_nopayload.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_norton.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ntp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ntp_reflect.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_nvidia_gamestream.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_nwn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_opaserv.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_openvpn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_orbit.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_overwatch.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_paladins.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_pando.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_panipani.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_planetside2.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_portmap_rpc.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_pplive.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ppstream.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_probable_gnutella.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ps4_remoteplay.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_psn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_punkbuster.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_pyzor.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_qq.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_qqlive.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_qqpcmgr.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_qqspeedmobile_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_quake.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_quic.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_qvod_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_radius.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_raknet.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ramseydash.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_rdp_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_real.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_risingstorm.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_robocraft.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_rocket_league.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_rrshare.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_rtcp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_rtmfp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_rtp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_rulesofsurvival.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_sanandreas_mp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_second_life.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_serialnumberd.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_sip.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_skype.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_slp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_smite.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_snapvpn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_snmp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_sopcast.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_spamfighter.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_spotify_bcast.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_sql_worm.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ssdp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_starcitizen.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_starcraft.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_starleaf.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_steam.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_steam_inhomebroadcast.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_steam_localbroadcast.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_steamfriends.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_storm_worm.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_stun.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_syslog.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_talesrunner_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_teamspeak.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_teamviewer.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_teredo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_tf2.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_tftp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_thecrew.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_thq.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_torchlight2.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_tox.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_traceroute.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_tremulous.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_turbovpn.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_tvants.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ubisoft_games.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_umeye.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_unreal.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_ventrilo.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_viber.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_vivox.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_vpnmaster.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_vpnrobot_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_vxworks_exploit.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_warthunder.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_webex.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_wechat_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_winmessage.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_wireguard.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_wolfet.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_worm_22105.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_xfire_p2p.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_xlsp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_xunlei.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_xunlei_jsq.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_xunyou.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_youdao_dict.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_youku.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_yuanfudao.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_yy_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_zalo_call.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_zeroaccess_udp.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/lpi_zoom.cc (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/udp/udp_protocols.h (100%) rename decoders/{glimpse_detector => lpi}/libprotoident/version.map (100%) rename decoders/{glimpse_detector/app_l7_protocol.cpp => lpi/lpi_plugin.cpp} (77%) rename decoders/{glimpse_detector/app_l7_protocol.h => lpi/lpi_plugin.h} (100%) rename decoders/{glimpse_detector/openvpn_identify.cpp => lpi/openvpn_ident.cpp} (99%) rename decoders/{glimpse_detector/quic_identify.cpp => lpi/quic_ident.cpp} (99%) create mode 100644 decoders/lpi/version.map delete mode 100644 test/glimpse_detector/test_config/spec.toml rename test/{glimpse_detector => lpi_plugin}/CMakeLists.txt (67%) rename test/{glimpse_detector/gtest_glimpse_detector_main.cpp => lpi_plugin/gtest_lpi_main.cpp} (100%) rename test/{glimpse_detector/gtest_glimpse_detector_plugin.cpp => lpi_plugin/gtest_lpi_plugin.cpp} (67%) create mode 100644 test/lpi_plugin/test_config/spec.toml rename test/{glimpse_detector => lpi_plugin}/test_config/tsg_l7_protocol.conf (100%) rename test/{glimpse_detector => lpi_plugin}/test_expect/app_pcap.json (100%) rename test/{glimpse_detector => lpi_plugin}/test_expect/dns_pcap.json (100%) rename test/{glimpse_detector => lpi_plugin}/test_expect/empty_array.json (100%) rename test/{glimpse_detector => lpi_plugin}/test_expect/mixed_pcap.json (100%) rename test/{glimpse_detector => lpi_plugin}/test_expect/openvpn_pcap.json (100%) rename test/{glimpse_detector => lpi_plugin}/test_expect/ppp_pcap.json (100%) rename test/{glimpse_detector => lpi_plugin}/test_expect/socks_pcap.json (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/app_pcap/1-qq_59361.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/app_pcap/2-qq_8758.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/app_pcap/3-wechat_51876.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/app_pcap/4-wechat_8080.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/app_pcap/5-wireguard.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/app_pcap/6-wireguard1.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/app_pcap/7-wireguard2.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/dns_pcap/1-dns-tcp-single-53-124.88.175.201-8.8.8.8.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/dns_pcap/2-dns-tcp-single-53-60.13.179.249-8.8.8.8.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/01-http-not-ftp.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/02-stun-rtcp-rtp-22005-8000-39.144.206.199-117.156.19.31.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/03-ftp-37923-21121-117.145.115.74-218.31.124.234.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/04-mail_smtp_port_18867_25.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/05-ftp_port_21121-double.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/06-ftp_port_21121-s2c.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/07-ftp_port_21121-c2s.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/08-gquic-023-85.117.117.169.47762-173.194.73.95.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/09-gquic-025-85.117.113.98.4340-74.125.131.95.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/10-gquic-033-90.143.189.5.8026-173.194.188.40.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/11-gquic-034-85.117.125.8.21243-173.194.73.102.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/12-gquic-035-redirector.googlevideo.com-85.117.122.194.32370-173.194.220.138.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/13-gquic-037-10.32.121.249.33765-64.233.161.95.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/14-gquic-039-redirector.googlevideo.com-85.117.119.45.22495-173.194.73.101.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/15-gquic-041-90.143.180.56.28496-64.233.165.113.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/16-gquic-041-90.143.180.56.28496-64.233.165.113.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/17-gquic-044-146.158.67.194.1044-108.177.14.138.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/18-gquic-046-36.142.158.169.16385-36.189.11.71.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/19-gquic-048-103.3.138.59.12521-123.125.116.52.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/20-gquic-050-i.ytimg.com-172.20.9.135.65045-64.233.162.119.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/21-iquic-29-192.168.50.29.61891-31.13.77.35.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/22-mvfst-01-i.instagram.com-192.168.60.9.55659-69.171.250.63.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/23-mvfst-02-192.168.137.141.50006-31.13.77.17.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/23-prox-quic-217.76.77.70.33232-173.194.220.105.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/24-ietf-rfc9000-192.168.60.32.59699-64.233.164.84.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/25-tquic-51-195.12.120.14.41803-173.194.222.101.443.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/26-smtp-55426-587-10.130.2.104-67.225.241.247.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/27-pop-54776-110-196.188.12.179-192.185.31.244.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/28-Bole-IGW-SMTP-57719-26-10.130.13.155-50.87.145.154-2.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/29-Bole-IGW-SMTP-14636-25-196.189.57.105-68.232.159.216-2.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/30-Bole-IGW-SMTP-20997-25-196.190.160.6-64.225.54.152.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/31-Bole-IGW-POP3-50020-110-196.188.3.8-82.98.178.159.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/32-Bole-IGW-POP3-53357-110-196.189.0.15-39.156.6.106.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/33-Bole-IGW-IMAP-36734-143-196.189.5.89-101.32.113.90.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/34-Bole-IGW-IMAP-50415-143-196.188.28.149-69.195.110.51.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/35-Bole-IGW-SMTP-587-1440-587-196.189.45.189-40.101.92.178.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/36-Bole-IGW-SMTP-587-37943-587-196.191.120.240-81.19.77.166.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/37-dns-response-4029-53-115.24.235.11-8.210.152.150.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/38-stun-dtls.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/mixed_pcap/39-pop3-mistake-redis.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/01-openvpn-udp-port-1198-first.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/02-openvpn-nDPI.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/03-openvpn_onestream.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/04-openvpn-udp-63111.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/05-openvpn-udp-34400.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/06-openvpn-udp-40914.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/07-openvpn.tcp.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/08-ovpntcp_hmac.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/09-ovpntcp_nohmac.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/10-openvpn-udp-49941.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/11-ipv6_openvpn.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/openvpn_pcap/12-quic-openvpn.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/ppp_pcap/01-l2tp_netbios.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/ppp_pcap/02-l2tp-without-l7_protocol-62176-33445-192.168.10.91-220.43.148.189.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/ppp_pcap/03-l2tp_http.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/ppp_pcap/04-l2tp_ctrl_data_full.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/ppp_pcap/05-pptp_encrypt.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/ppp_pcap/06-pptp_http.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/1-socks45-http-example.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/10-socks5-http-302-frag.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/11-socks5-http-302.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/12-socks5-rdp.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/13-socks5-reverse.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/14-socks5-smtp-503.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/15-socks-http-pass.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/16-socks-https-example.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/2-socks5_ftp.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/3-POP3_Sock5_subject.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/4-SMTP_Sock5_subject.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/5-T3-HTTP-URL-SOCKS5.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/6-T7-HTTP-CONT-SOCKS5.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/7-T86-FTP-URL-PORT-BIN-SOCKS5.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/8-socks4_http.pcap (100%) rename test/{glimpse_detector => lpi_plugin}/test_pcap/socks_pcap/9-socks4-https.pcap (100%) diff --git a/decoders/CMakeLists.txt b/decoders/CMakeLists.txt index 9206b96..2d71d23 100644 --- a/decoders/CMakeLists.txt +++ b/decoders/CMakeLists.txt @@ -1,2 +1,2 @@ add_subdirectory(http) -add_subdirectory(glimpse_detector) +add_subdirectory(lpi) diff --git a/decoders/glimpse_detector/CMakeLists.txt b/decoders/glimpse_detector/CMakeLists.txt deleted file mode 100644 index 55f2646..0000000 --- a/decoders/glimpse_detector/CMakeLists.txt +++ /dev/null @@ -1,12 +0,0 @@ -add_definitions(-fPIC) -add_subdirectory(libprotoident) - -add_library(glimpse_detector app_l7_protocol.cpp quic_identify.cpp openvpn_identify.cpp) -target_include_directories(glimpse_detector PUBLIC ${CMAKE_SOURCE_DIR}/deps/) - -target_link_libraries(glimpse_detector libprotoident) -set_target_properties(glimpse_detector PROPERTIES LINK_FLAGS - "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/version.map") - -#install(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/stellar_plugin COMPONENT LIBRARIES) - diff --git a/decoders/glimpse_detector/version.map b/decoders/glimpse_detector/version.map deleted file mode 100644 index b5f2f91..0000000 --- a/decoders/glimpse_detector/version.map +++ /dev/null @@ -1,10 +0,0 @@ -VERS_2.4{ -global: -extern "C" { - APP_GLIMPSE_DETECTOR_LOAD; - APP_GLIMPSE_DETECTOR_UNLOAD; - GIT_VERSION_*; -}; - -local: *; -}; diff --git a/decoders/glimpse_detector/.gitignore b/decoders/lpi/.gitignore similarity index 100% rename from decoders/glimpse_detector/.gitignore rename to decoders/lpi/.gitignore diff --git a/decoders/lpi/CMakeLists.txt b/decoders/lpi/CMakeLists.txt new file mode 100644 index 0000000..43528a6 --- /dev/null +++ b/decoders/lpi/CMakeLists.txt @@ -0,0 +1,12 @@ +add_definitions(-fPIC) +add_subdirectory(libprotoident) + +add_library(lpi lpi_plugin.cpp quic_ident.cpp openvpn_ident.cpp) +target_include_directories(lpi PUBLIC ${CMAKE_SOURCE_DIR}/deps/) + +target_link_libraries(lpi libprotoident) +set_target_properties(lpi PROPERTIES LINK_FLAGS + "-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/version.map") + +#install(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/stellar_plugin COMPONENT LIBRARIES) + diff --git a/decoders/glimpse_detector/libprotoident/CMakeLists.txt b/decoders/lpi/libprotoident/CMakeLists.txt similarity index 100% rename from decoders/glimpse_detector/libprotoident/CMakeLists.txt rename to decoders/lpi/libprotoident/CMakeLists.txt diff --git a/decoders/glimpse_detector/libprotoident/libprotoident.cc b/decoders/lpi/libprotoident/libprotoident.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/libprotoident.cc rename to decoders/lpi/libprotoident/libprotoident.cc diff --git a/decoders/glimpse_detector/libprotoident/libprotoident.h b/decoders/lpi/libprotoident/libprotoident.h similarity index 100% rename from decoders/glimpse_detector/libprotoident/libprotoident.h rename to decoders/lpi/libprotoident/libprotoident.h diff --git a/decoders/glimpse_detector/libprotoident/proto_common.cc b/decoders/lpi/libprotoident/proto_common.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/proto_common.cc rename to decoders/lpi/libprotoident/proto_common.cc diff --git a/decoders/glimpse_detector/libprotoident/proto_common.h b/decoders/lpi/libprotoident/proto_common.h similarity index 100% rename from decoders/glimpse_detector/libprotoident/proto_common.h rename to decoders/lpi/libprotoident/proto_common.h diff --git a/decoders/glimpse_detector/libprotoident/proto_manager.cc b/decoders/lpi/libprotoident/proto_manager.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/proto_manager.cc rename to decoders/lpi/libprotoident/proto_manager.cc diff --git a/decoders/glimpse_detector/libprotoident/proto_manager.h b/decoders/lpi/libprotoident/proto_manager.h similarity index 100% rename from decoders/glimpse_detector/libprotoident/proto_manager.h rename to decoders/lpi/libprotoident/proto_manager.h diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_300heroes.cc b/decoders/lpi/libprotoident/tcp/lpi_300heroes.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_300heroes.cc rename to decoders/lpi/libprotoident/tcp/lpi_300heroes.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_360safeguard.cc b/decoders/lpi/libprotoident/tcp/lpi_360safeguard.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_360safeguard.cc rename to decoders/lpi/libprotoident/tcp/lpi_360safeguard.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_4d.cc b/decoders/lpi/libprotoident/tcp/lpi_4d.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_4d.cc rename to decoders/lpi/libprotoident/tcp/lpi_4d.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_acestream.cc b/decoders/lpi/libprotoident/tcp/lpi_acestream.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_acestream.cc rename to decoders/lpi/libprotoident/tcp/lpi_acestream.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_afp.cc b/decoders/lpi/libprotoident/tcp/lpi_afp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_afp.cc rename to decoders/lpi/libprotoident/tcp/lpi_afp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_airdroid.cc b/decoders/lpi/libprotoident/tcp/lpi_airdroid.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_airdroid.cc rename to decoders/lpi/libprotoident/tcp/lpi_airdroid.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_airmedia.cc b/decoders/lpi/libprotoident/tcp/lpi_airmedia.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_airmedia.cc rename to decoders/lpi/libprotoident/tcp/lpi_airmedia.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_akamai.cc b/decoders/lpi/libprotoident/tcp/lpi_akamai.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_akamai.cc rename to decoders/lpi/libprotoident/tcp/lpi_akamai.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_amp.cc b/decoders/lpi/libprotoident/tcp/lpi_amp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_amp.cc rename to decoders/lpi/libprotoident/tcp/lpi_amp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_antcoin.cc b/decoders/lpi/libprotoident/tcp/lpi_antcoin.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_antcoin.cc rename to decoders/lpi/libprotoident/tcp/lpi_antcoin.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_appearin.cc b/decoders/lpi/libprotoident/tcp/lpi_appearin.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_appearin.cc rename to decoders/lpi/libprotoident/tcp/lpi_appearin.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_apple_push.cc b/decoders/lpi/libprotoident/tcp/lpi_apple_push.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_apple_push.cc rename to decoders/lpi/libprotoident/tcp/lpi_apple_push.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ares.cc b/decoders/lpi/libprotoident/tcp/lpi_ares.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ares.cc rename to decoders/lpi/libprotoident/tcp/lpi_ares.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_badbaidu.cc b/decoders/lpi/libprotoident/tcp/lpi_badbaidu.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_badbaidu.cc rename to decoders/lpi/libprotoident/tcp/lpi_badbaidu.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_baofeng_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_baofeng_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_baofeng_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_baofeng_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_beam.cc b/decoders/lpi/libprotoident/tcp/lpi_beam.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_beam.cc rename to decoders/lpi/libprotoident/tcp/lpi_beam.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_bitcoin.cc b/decoders/lpi/libprotoident/tcp/lpi_bitcoin.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_bitcoin.cc rename to decoders/lpi/libprotoident/tcp/lpi_bitcoin.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_bitextend.cc b/decoders/lpi/libprotoident/tcp/lpi_bitextend.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_bitextend.cc rename to decoders/lpi/libprotoident/tcp/lpi_bitextend.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_bittorrent.cc b/decoders/lpi/libprotoident/tcp/lpi_bittorrent.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_bittorrent.cc rename to decoders/lpi/libprotoident/tcp/lpi_bittorrent.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_blackdesert.cc b/decoders/lpi/libprotoident/tcp/lpi_blackdesert.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_blackdesert.cc rename to decoders/lpi/libprotoident/tcp/lpi_blackdesert.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_blizzard.cc b/decoders/lpi/libprotoident/tcp/lpi_blizzard.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_blizzard.cc rename to decoders/lpi/libprotoident/tcp/lpi_blizzard.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_btsync.cc b/decoders/lpi/libprotoident/tcp/lpi_btsync.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_btsync.cc rename to decoders/lpi/libprotoident/tcp/lpi_btsync.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_bwsyncandshare.cc b/decoders/lpi/libprotoident/tcp/lpi_bwsyncandshare.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_bwsyncandshare.cc rename to decoders/lpi/libprotoident/tcp/lpi_bwsyncandshare.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_cacaoweb.cc b/decoders/lpi/libprotoident/tcp/lpi_cacaoweb.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_cacaoweb.cc rename to decoders/lpi/libprotoident/tcp/lpi_cacaoweb.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_cgp.cc b/decoders/lpi/libprotoident/tcp/lpi_cgp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_cgp.cc rename to decoders/lpi/libprotoident/tcp/lpi_cgp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_chatango.cc b/decoders/lpi/libprotoident/tcp/lpi_chatango.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_chatango.cc rename to decoders/lpi/libprotoident/tcp/lpi_chatango.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_cisco_vpn.cc b/decoders/lpi/libprotoident/tcp/lpi_cisco_vpn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_cisco_vpn.cc rename to decoders/lpi/libprotoident/tcp/lpi_cisco_vpn.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_clashofclans.cc b/decoders/lpi/libprotoident/tcp/lpi_clashofclans.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_clashofclans.cc rename to decoders/lpi/libprotoident/tcp/lpi_clashofclans.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_classin_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_classin_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_classin_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_classin_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_clubbox.cc b/decoders/lpi/libprotoident/tcp/lpi_clubbox.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_clubbox.cc rename to decoders/lpi/libprotoident/tcp/lpi_clubbox.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_cod_waw.cc b/decoders/lpi/libprotoident/tcp/lpi_cod_waw.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_cod_waw.cc rename to decoders/lpi/libprotoident/tcp/lpi_cod_waw.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_conquer.cc b/decoders/lpi/libprotoident/tcp/lpi_conquer.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_conquer.cc rename to decoders/lpi/libprotoident/tcp/lpi_conquer.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_crashplan.cc b/decoders/lpi/libprotoident/tcp/lpi_crashplan.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_crashplan.cc rename to decoders/lpi/libprotoident/tcp/lpi_crashplan.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_crossfire_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_crossfire_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_crossfire_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_crossfire_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_cryptic.cc b/decoders/lpi/libprotoident/tcp/lpi_cryptic.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_cryptic.cc rename to decoders/lpi/libprotoident/tcp/lpi_cryptic.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_cvs.cc b/decoders/lpi/libprotoident/tcp/lpi_cvs.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_cvs.cc rename to decoders/lpi/libprotoident/tcp/lpi_cvs.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_dahua_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_dahua_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_dahua_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_dahua_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_dash.cc b/decoders/lpi/libprotoident/tcp/lpi_dash.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_dash.cc rename to decoders/lpi/libprotoident/tcp/lpi_dash.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_dell_backup.cc b/decoders/lpi/libprotoident/tcp/lpi_dell_backup.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_dell_backup.cc rename to decoders/lpi/libprotoident/tcp/lpi_dell_backup.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_destiny.cc b/decoders/lpi/libprotoident/tcp/lpi_destiny.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_destiny.cc rename to decoders/lpi/libprotoident/tcp/lpi_destiny.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_diablo3.cc b/decoders/lpi/libprotoident/tcp/lpi_diablo3.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_diablo3.cc rename to decoders/lpi/libprotoident/tcp/lpi_diablo3.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_dianping_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_dianping_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_dianping_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_dianping_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_directconnect.cc b/decoders/lpi/libprotoident/tcp/lpi_directconnect.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_directconnect.cc rename to decoders/lpi/libprotoident/tcp/lpi_directconnect.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_dnf.cc b/decoders/lpi/libprotoident/tcp/lpi_dnf.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_dnf.cc rename to decoders/lpi/libprotoident/tcp/lpi_dnf.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_dns.cc b/decoders/lpi/libprotoident/tcp/lpi_dns.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_dns.cc rename to decoders/lpi/libprotoident/tcp/lpi_dns.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_dogecoin.cc b/decoders/lpi/libprotoident/tcp/lpi_dogecoin.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_dogecoin.cc rename to decoders/lpi/libprotoident/tcp/lpi_dogecoin.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_douyu.cc b/decoders/lpi/libprotoident/tcp/lpi_douyu.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_douyu.cc rename to decoders/lpi/libprotoident/tcp/lpi_douyu.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_douyu_chat.cc b/decoders/lpi/libprotoident/tcp/lpi_douyu_chat.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_douyu_chat.cc rename to decoders/lpi/libprotoident/tcp/lpi_douyu_chat.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_duelingnetwork.cc b/decoders/lpi/libprotoident/tcp/lpi_duelingnetwork.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_duelingnetwork.cc rename to decoders/lpi/libprotoident/tcp/lpi_duelingnetwork.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_dvrns.cc b/decoders/lpi/libprotoident/tcp/lpi_dvrns.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_dvrns.cc rename to decoders/lpi/libprotoident/tcp/lpi_dvrns.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_dxp.cc b/decoders/lpi/libprotoident/tcp/lpi_dxp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_dxp.cc rename to decoders/lpi/libprotoident/tcp/lpi_dxp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ea_games.cc b/decoders/lpi/libprotoident/tcp/lpi_ea_games.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ea_games.cc rename to decoders/lpi/libprotoident/tcp/lpi_ea_games.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_emule.cc b/decoders/lpi/libprotoident/tcp/lpi_emule.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_emule.cc rename to decoders/lpi/libprotoident/tcp/lpi_emule.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ethernetip.cc b/decoders/lpi/libprotoident/tcp/lpi_ethernetip.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ethernetip.cc rename to decoders/lpi/libprotoident/tcp/lpi_ethernetip.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_eye.cc b/decoders/lpi/libprotoident/tcp/lpi_eye.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_eye.cc rename to decoders/lpi/libprotoident/tcp/lpi_eye.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_facebook_turn.cc b/decoders/lpi/libprotoident/tcp/lpi_facebook_turn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_facebook_turn.cc rename to decoders/lpi/libprotoident/tcp/lpi_facebook_turn.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_fb_message.cc b/decoders/lpi/libprotoident/tcp/lpi_fb_message.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_fb_message.cc rename to decoders/lpi/libprotoident/tcp/lpi_fb_message.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_fbcdn_ssl.cc b/decoders/lpi/libprotoident/tcp/lpi_fbcdn_ssl.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_fbcdn_ssl.cc rename to decoders/lpi/libprotoident/tcp/lpi_fbcdn_ssl.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ffxiv.cc b/decoders/lpi/libprotoident/tcp/lpi_ffxiv.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ffxiv.cc rename to decoders/lpi/libprotoident/tcp/lpi_ffxiv.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_filenori.cc b/decoders/lpi/libprotoident/tcp/lpi_filenori.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_filenori.cc rename to decoders/lpi/libprotoident/tcp/lpi_filenori.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_flash.cc b/decoders/lpi/libprotoident/tcp/lpi_flash.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_flash.cc rename to decoders/lpi/libprotoident/tcp/lpi_flash.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_fliggy.cc b/decoders/lpi/libprotoident/tcp/lpi_fliggy.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_fliggy.cc rename to decoders/lpi/libprotoident/tcp/lpi_fliggy.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_fring.cc b/decoders/lpi/libprotoident/tcp/lpi_fring.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_fring.cc rename to decoders/lpi/libprotoident/tcp/lpi_fring.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ftpcontrol.cc b/decoders/lpi/libprotoident/tcp/lpi_ftpcontrol.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ftpcontrol.cc rename to decoders/lpi/libprotoident/tcp/lpi_ftpcontrol.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ftpdata.cc b/decoders/lpi/libprotoident/tcp/lpi_ftpdata.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ftpdata.cc rename to decoders/lpi/libprotoident/tcp/lpi_ftpdata.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_fuckcoin.cc b/decoders/lpi/libprotoident/tcp/lpi_fuckcoin.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_fuckcoin.cc rename to decoders/lpi/libprotoident/tcp/lpi_fuckcoin.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_funshion.cc b/decoders/lpi/libprotoident/tcp/lpi_funshion.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_funshion.cc rename to decoders/lpi/libprotoident/tcp/lpi_funshion.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_gamespy.cc b/decoders/lpi/libprotoident/tcp/lpi_gamespy.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_gamespy.cc rename to decoders/lpi/libprotoident/tcp/lpi_gamespy.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_gcafe_updater.cc b/decoders/lpi/libprotoident/tcp/lpi_gcafe_updater.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_gcafe_updater.cc rename to decoders/lpi/libprotoident/tcp/lpi_gcafe_updater.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_giop.cc b/decoders/lpi/libprotoident/tcp/lpi_giop.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_giop.cc rename to decoders/lpi/libprotoident/tcp/lpi_giop.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_git.cc b/decoders/lpi/libprotoident/tcp/lpi_git.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_git.cc rename to decoders/lpi/libprotoident/tcp/lpi_git.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_glupteba.cc b/decoders/lpi/libprotoident/tcp/lpi_glupteba.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_glupteba.cc rename to decoders/lpi/libprotoident/tcp/lpi_glupteba.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_gnutella.cc b/decoders/lpi/libprotoident/tcp/lpi_gnutella.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_gnutella.cc rename to decoders/lpi/libprotoident/tcp/lpi_gnutella.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_goku.cc b/decoders/lpi/libprotoident/tcp/lpi_goku.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_goku.cc rename to decoders/lpi/libprotoident/tcp/lpi_goku.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_googlehangouts.cc b/decoders/lpi/libprotoident/tcp/lpi_googlehangouts.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_googlehangouts.cc rename to decoders/lpi/libprotoident/tcp/lpi_googlehangouts.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_graalonlineera.cc b/decoders/lpi/libprotoident/tcp/lpi_graalonlineera.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_graalonlineera.cc rename to decoders/lpi/libprotoident/tcp/lpi_graalonlineera.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_guildwars2.cc b/decoders/lpi/libprotoident/tcp/lpi_guildwars2.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_guildwars2.cc rename to decoders/lpi/libprotoident/tcp/lpi_guildwars2.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_hamachi.cc b/decoders/lpi/libprotoident/tcp/lpi_hamachi.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_hamachi.cc rename to decoders/lpi/libprotoident/tcp/lpi_hamachi.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_harveys.cc b/decoders/lpi/libprotoident/tcp/lpi_harveys.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_harveys.cc rename to decoders/lpi/libprotoident/tcp/lpi_harveys.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_hearthstone.cc b/decoders/lpi/libprotoident/tcp/lpi_hearthstone.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_hearthstone.cc rename to decoders/lpi/libprotoident/tcp/lpi_hearthstone.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_hola.cc b/decoders/lpi/libprotoident/tcp/lpi_hola.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_hola.cc rename to decoders/lpi/libprotoident/tcp/lpi_hola.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_hots_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_hots_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_hots_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_hots_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_http.cc b/decoders/lpi/libprotoident/tcp/lpi_http.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_http.cc rename to decoders/lpi/libprotoident/tcp/lpi_http.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_http_badport.cc b/decoders/lpi/libprotoident/tcp/lpi_http_badport.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_http_badport.cc rename to decoders/lpi/libprotoident/tcp/lpi_http_badport.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_http_nonstandard.cc b/decoders/lpi/libprotoident/tcp/lpi_http_nonstandard.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_http_nonstandard.cc rename to decoders/lpi/libprotoident/tcp/lpi_http_nonstandard.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_http_tunnel.cc b/decoders/lpi/libprotoident/tcp/lpi_http_tunnel.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_http_tunnel.cc rename to decoders/lpi/libprotoident/tcp/lpi_http_tunnel.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_https.cc b/decoders/lpi/libprotoident/tcp/lpi_https.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_https.cc rename to decoders/lpi/libprotoident/tcp/lpi_https.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ica.cc b/decoders/lpi/libprotoident/tcp/lpi_ica.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ica.cc rename to decoders/lpi/libprotoident/tcp/lpi_ica.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_icep.cc b/decoders/lpi/libprotoident/tcp/lpi_icep.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_icep.cc rename to decoders/lpi/libprotoident/tcp/lpi_icep.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_id.cc b/decoders/lpi/libprotoident/tcp/lpi_id.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_id.cc rename to decoders/lpi/libprotoident/tcp/lpi_id.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_idrivesync.cc b/decoders/lpi/libprotoident/tcp/lpi_idrivesync.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_idrivesync.cc rename to decoders/lpi/libprotoident/tcp/lpi_idrivesync.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ihexin.cc b/decoders/lpi/libprotoident/tcp/lpi_ihexin.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ihexin.cc rename to decoders/lpi/libprotoident/tcp/lpi_ihexin.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_imap.cc b/decoders/lpi/libprotoident/tcp/lpi_imap.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_imap.cc rename to decoders/lpi/libprotoident/tcp/lpi_imap.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_imaps.cc b/decoders/lpi/libprotoident/tcp/lpi_imaps.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_imaps.cc rename to decoders/lpi/libprotoident/tcp/lpi_imaps.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_imesh.cc b/decoders/lpi/libprotoident/tcp/lpi_imesh.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_imesh.cc rename to decoders/lpi/libprotoident/tcp/lpi_imesh.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_invalid.cc b/decoders/lpi/libprotoident/tcp/lpi_invalid.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_invalid.cc rename to decoders/lpi/libprotoident/tcp/lpi_invalid.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_invalid_bittorrent.cc b/decoders/lpi/libprotoident/tcp/lpi_invalid_bittorrent.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_invalid_bittorrent.cc rename to decoders/lpi/libprotoident/tcp/lpi_invalid_bittorrent.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_invalid_http.cc b/decoders/lpi/libprotoident/tcp/lpi_invalid_http.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_invalid_http.cc rename to decoders/lpi/libprotoident/tcp/lpi_invalid_http.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_invalid_pop.cc b/decoders/lpi/libprotoident/tcp/lpi_invalid_pop.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_invalid_pop.cc rename to decoders/lpi/libprotoident/tcp/lpi_invalid_pop.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_invalid_smtp.cc b/decoders/lpi/libprotoident/tcp/lpi_invalid_smtp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_invalid_smtp.cc rename to decoders/lpi/libprotoident/tcp/lpi_invalid_smtp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ipfs.cc b/decoders/lpi/libprotoident/tcp/lpi_ipfs.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ipfs.cc rename to decoders/lpi/libprotoident/tcp/lpi_ipfs.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ipop.cc b/decoders/lpi/libprotoident/tcp/lpi_ipop.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ipop.cc rename to decoders/lpi/libprotoident/tcp/lpi_ipop.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ipsharkk.cc b/decoders/lpi/libprotoident/tcp/lpi_ipsharkk.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ipsharkk.cc rename to decoders/lpi/libprotoident/tcp/lpi_ipsharkk.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_irc.cc b/decoders/lpi/libprotoident/tcp/lpi_irc.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_irc.cc rename to decoders/lpi/libprotoident/tcp/lpi_irc.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_java.cc b/decoders/lpi/libprotoident/tcp/lpi_java.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_java.cc rename to decoders/lpi/libprotoident/tcp/lpi_java.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_jedi.cc b/decoders/lpi/libprotoident/tcp/lpi_jedi.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_jedi.cc rename to decoders/lpi/libprotoident/tcp/lpi_jedi.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_jx3online.cc b/decoders/lpi/libprotoident/tcp/lpi_jx3online.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_jx3online.cc rename to decoders/lpi/libprotoident/tcp/lpi_jx3online.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_kakao.cc b/decoders/lpi/libprotoident/tcp/lpi_kakao.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_kakao.cc rename to decoders/lpi/libprotoident/tcp/lpi_kakao.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_kankan_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_kankan_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_kankan_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_kankan_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_kaseya.cc b/decoders/lpi/libprotoident/tcp/lpi_kaseya.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_kaseya.cc rename to decoders/lpi/libprotoident/tcp/lpi_kaseya.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_kaspersky.cc b/decoders/lpi/libprotoident/tcp/lpi_kaspersky.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_kaspersky.cc rename to decoders/lpi/libprotoident/tcp/lpi_kaspersky.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_kik.cc b/decoders/lpi/libprotoident/tcp/lpi_kik.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_kik.cc rename to decoders/lpi/libprotoident/tcp/lpi_kik.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_kingofglory_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_kingofglory_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_kingofglory_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_kingofglory_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_kuaibo.cc b/decoders/lpi/libprotoident/tcp/lpi_kuaibo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_kuaibo.cc rename to decoders/lpi/libprotoident/tcp/lpi_kuaibo.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ldap.cc b/decoders/lpi/libprotoident/tcp/lpi_ldap.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ldap.cc rename to decoders/lpi/libprotoident/tcp/lpi_ldap.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_lifeforge.cc b/decoders/lpi/libprotoident/tcp/lpi_lifeforge.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_lifeforge.cc rename to decoders/lpi/libprotoident/tcp/lpi_lifeforge.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_line.cc b/decoders/lpi/libprotoident/tcp/lpi_line.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_line.cc rename to decoders/lpi/libprotoident/tcp/lpi_line.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_litecoin.cc b/decoders/lpi/libprotoident/tcp/lpi_litecoin.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_litecoin.cc rename to decoders/lpi/libprotoident/tcp/lpi_litecoin.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_llp2p.cc b/decoders/lpi/libprotoident/tcp/lpi_llp2p.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_llp2p.cc rename to decoders/lpi/libprotoident/tcp/lpi_llp2p.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_maplestory_china.cc b/decoders/lpi/libprotoident/tcp/lpi_maplestory_china.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_maplestory_china.cc rename to decoders/lpi/libprotoident/tcp/lpi_maplestory_china.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_maxicloud.cc b/decoders/lpi/libprotoident/tcp/lpi_maxicloud.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_maxicloud.cc rename to decoders/lpi/libprotoident/tcp/lpi_maxicloud.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_message4u.cc b/decoders/lpi/libprotoident/tcp/lpi_message4u.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_message4u.cc rename to decoders/lpi/libprotoident/tcp/lpi_message4u.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_minecraft.cc b/decoders/lpi/libprotoident/tcp/lpi_minecraft.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_minecraft.cc rename to decoders/lpi/libprotoident/tcp/lpi_minecraft.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mitglieder.cc b/decoders/lpi/libprotoident/tcp/lpi_mitglieder.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mitglieder.cc rename to decoders/lpi/libprotoident/tcp/lpi_mitglieder.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mms.cc b/decoders/lpi/libprotoident/tcp/lpi_mms.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mms.cc rename to decoders/lpi/libprotoident/tcp/lpi_mms.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mongo.cc b/decoders/lpi/libprotoident/tcp/lpi_mongo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mongo.cc rename to decoders/lpi/libprotoident/tcp/lpi_mongo.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mp2p.cc b/decoders/lpi/libprotoident/tcp/lpi_mp2p.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mp2p.cc rename to decoders/lpi/libprotoident/tcp/lpi_mp2p.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_msn.cc b/decoders/lpi/libprotoident/tcp/lpi_msn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_msn.cc rename to decoders/lpi/libprotoident/tcp/lpi_msn.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_msnc.cc b/decoders/lpi/libprotoident/tcp/lpi_msnc.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_msnc.cc rename to decoders/lpi/libprotoident/tcp/lpi_msnc.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_msnv.cc b/decoders/lpi/libprotoident/tcp/lpi_msnv.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_msnv.cc rename to decoders/lpi/libprotoident/tcp/lpi_msnv.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_munin.cc b/decoders/lpi/libprotoident/tcp/lpi_munin.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_munin.cc rename to decoders/lpi/libprotoident/tcp/lpi_munin.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mysql.cc b/decoders/lpi/libprotoident/tcp/lpi_mysql.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mysql.cc rename to decoders/lpi/libprotoident/tcp/lpi_mysql.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_8000.cc b/decoders/lpi/libprotoident/tcp/lpi_mystery_8000.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_8000.cc rename to decoders/lpi/libprotoident/tcp/lpi_mystery_8000.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_9000.cc b/decoders/lpi/libprotoident/tcp/lpi_mystery_9000.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_9000.cc rename to decoders/lpi/libprotoident/tcp/lpi_mystery_9000.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_conn.cc b/decoders/lpi/libprotoident/tcp/lpi_mystery_conn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_conn.cc rename to decoders/lpi/libprotoident/tcp/lpi_mystery_conn.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_iG.cc b/decoders/lpi/libprotoident/tcp/lpi_mystery_iG.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_iG.cc rename to decoders/lpi/libprotoident/tcp/lpi_mystery_iG.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_pspr.cc b/decoders/lpi/libprotoident/tcp/lpi_mystery_pspr.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_pspr.cc rename to decoders/lpi/libprotoident/tcp/lpi_mystery_pspr.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_rxxf.cc b/decoders/lpi/libprotoident/tcp/lpi_mystery_rxxf.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_rxxf.cc rename to decoders/lpi/libprotoident/tcp/lpi_mystery_rxxf.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_symantec.cc b/decoders/lpi/libprotoident/tcp/lpi_mystery_symantec.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mystery_symantec.cc rename to decoders/lpi/libprotoident/tcp/lpi_mystery_symantec.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_mzinga.cc b/decoders/lpi/libprotoident/tcp/lpi_mzinga.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_mzinga.cc rename to decoders/lpi/libprotoident/tcp/lpi_mzinga.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_naverp2p.cc b/decoders/lpi/libprotoident/tcp/lpi_naverp2p.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_naverp2p.cc rename to decoders/lpi/libprotoident/tcp/lpi_naverp2p.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ncsoft.cc b/decoders/lpi/libprotoident/tcp/lpi_ncsoft.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ncsoft.cc rename to decoders/lpi/libprotoident/tcp/lpi_ncsoft.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ndt_tput.cc b/decoders/lpi/libprotoident/tcp/lpi_ndt_tput.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ndt_tput.cc rename to decoders/lpi/libprotoident/tcp/lpi_ndt_tput.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_netbios.cc b/decoders/lpi/libprotoident/tcp/lpi_netbios.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_netbios.cc rename to decoders/lpi/libprotoident/tcp/lpi_netbios.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_netcat_cctv.cc b/decoders/lpi/libprotoident/tcp/lpi_netcat_cctv.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_netcat_cctv.cc rename to decoders/lpi/libprotoident/tcp/lpi_netcat_cctv.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_netmfp.cc b/decoders/lpi/libprotoident/tcp/lpi_netmfp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_netmfp.cc rename to decoders/lpi/libprotoident/tcp/lpi_netmfp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_nntp.cc b/decoders/lpi/libprotoident/tcp/lpi_nntp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_nntp.cc rename to decoders/lpi/libprotoident/tcp/lpi_nntp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_nntps.cc b/decoders/lpi/libprotoident/tcp/lpi_nntps.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_nntps.cc rename to decoders/lpi/libprotoident/tcp/lpi_nntps.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_nofirstpkt.cc b/decoders/lpi/libprotoident/tcp/lpi_nofirstpkt.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_nofirstpkt.cc rename to decoders/lpi/libprotoident/tcp/lpi_nofirstpkt.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_nomachine.cc b/decoders/lpi/libprotoident/tcp/lpi_nomachine.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_nomachine.cc rename to decoders/lpi/libprotoident/tcp/lpi_nomachine.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_nopayload.cc b/decoders/lpi/libprotoident/tcp/lpi_nopayload.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_nopayload.cc rename to decoders/lpi/libprotoident/tcp/lpi_nopayload.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_norton_backup.cc b/decoders/lpi/libprotoident/tcp/lpi_norton_backup.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_norton_backup.cc rename to decoders/lpi/libprotoident/tcp/lpi_norton_backup.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_notes_rpc.cc b/decoders/lpi/libprotoident/tcp/lpi_notes_rpc.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_notes_rpc.cc rename to decoders/lpi/libprotoident/tcp/lpi_notes_rpc.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_nsq.cc b/decoders/lpi/libprotoident/tcp/lpi_nsq.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_nsq.cc rename to decoders/lpi/libprotoident/tcp/lpi_nsq.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_omegle.cc b/decoders/lpi/libprotoident/tcp/lpi_omegle.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_omegle.cc rename to decoders/lpi/libprotoident/tcp/lpi_omegle.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_openvpn.cc b/decoders/lpi/libprotoident/tcp/lpi_openvpn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_openvpn.cc rename to decoders/lpi/libprotoident/tcp/lpi_openvpn.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ourworld.cc b/decoders/lpi/libprotoident/tcp/lpi_ourworld.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ourworld.cc rename to decoders/lpi/libprotoident/tcp/lpi_ourworld.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_palringo.cc b/decoders/lpi/libprotoident/tcp/lpi_palringo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_palringo.cc rename to decoders/lpi/libprotoident/tcp/lpi_palringo.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_paltalk.cc b/decoders/lpi/libprotoident/tcp/lpi_paltalk.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_paltalk.cc rename to decoders/lpi/libprotoident/tcp/lpi_paltalk.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_pandatv.cc b/decoders/lpi/libprotoident/tcp/lpi_pandatv.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_pandatv.cc rename to decoders/lpi/libprotoident/tcp/lpi_pandatv.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_pando.cc b/decoders/lpi/libprotoident/tcp/lpi_pando.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_pando.cc rename to decoders/lpi/libprotoident/tcp/lpi_pando.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_pathofexile.cc b/decoders/lpi/libprotoident/tcp/lpi_pathofexile.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_pathofexile.cc rename to decoders/lpi/libprotoident/tcp/lpi_pathofexile.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_pdbox.cc b/decoders/lpi/libprotoident/tcp/lpi_pdbox.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_pdbox.cc rename to decoders/lpi/libprotoident/tcp/lpi_pdbox.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_pop3.cc b/decoders/lpi/libprotoident/tcp/lpi_pop3.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_pop3.cc rename to decoders/lpi/libprotoident/tcp/lpi_pop3.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_pop3s.cc b/decoders/lpi/libprotoident/tcp/lpi_pop3s.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_pop3s.cc rename to decoders/lpi/libprotoident/tcp/lpi_pop3s.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_postgresql.cc b/decoders/lpi/libprotoident/tcp/lpi_postgresql.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_postgresql.cc rename to decoders/lpi/libprotoident/tcp/lpi_postgresql.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_pptp.cc b/decoders/lpi/libprotoident/tcp/lpi_pptp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_pptp.cc rename to decoders/lpi/libprotoident/tcp/lpi_pptp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_psn_store.cc b/decoders/lpi/libprotoident/tcp/lpi_psn_store.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_psn_store.cc rename to decoders/lpi/libprotoident/tcp/lpi_psn_store.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_qcloud_ilvb.cc b/decoders/lpi/libprotoident/tcp/lpi_qcloud_ilvb.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_qcloud_ilvb.cc rename to decoders/lpi/libprotoident/tcp/lpi_qcloud_ilvb.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_qq_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_qq_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_qq_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_qq_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_qqdownload.cc b/decoders/lpi/libprotoident/tcp/lpi_qqdownload.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_qqdownload.cc rename to decoders/lpi/libprotoident/tcp/lpi_qqdownload.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_qqlive_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_qqlive_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_qqlive_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_qqlive_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_qqspeedmobile_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_qqspeedmobile_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_qqspeedmobile_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_qqspeedmobile_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_qvod.cc b/decoders/lpi/libprotoident/tcp/lpi_qvod.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_qvod.cc rename to decoders/lpi/libprotoident/tcp/lpi_qvod.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_rabbitmq.cc b/decoders/lpi/libprotoident/tcp/lpi_rabbitmq.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_rabbitmq.cc rename to decoders/lpi/libprotoident/tcp/lpi_rabbitmq.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ragnarokonline.cc b/decoders/lpi/libprotoident/tcp/lpi_ragnarokonline.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ragnarokonline.cc rename to decoders/lpi/libprotoident/tcp/lpi_ragnarokonline.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_razor.cc b/decoders/lpi/libprotoident/tcp/lpi_razor.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_razor.cc rename to decoders/lpi/libprotoident/tcp/lpi_razor.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_rbls.cc b/decoders/lpi/libprotoident/tcp/lpi_rbls.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_rbls.cc rename to decoders/lpi/libprotoident/tcp/lpi_rbls.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_rdp.cc b/decoders/lpi/libprotoident/tcp/lpi_rdp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_rdp.cc rename to decoders/lpi/libprotoident/tcp/lpi_rdp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_realmofthemadgod.cc b/decoders/lpi/libprotoident/tcp/lpi_realmofthemadgod.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_realmofthemadgod.cc rename to decoders/lpi/libprotoident/tcp/lpi_realmofthemadgod.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_realvnc.cc b/decoders/lpi/libprotoident/tcp/lpi_realvnc.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_realvnc.cc rename to decoders/lpi/libprotoident/tcp/lpi_realvnc.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_rejection.cc b/decoders/lpi/libprotoident/tcp/lpi_rejection.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_rejection.cc rename to decoders/lpi/libprotoident/tcp/lpi_rejection.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_relay.cc b/decoders/lpi/libprotoident/tcp/lpi_relay.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_relay.cc rename to decoders/lpi/libprotoident/tcp/lpi_relay.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_remote_manipulator.cc b/decoders/lpi/libprotoident/tcp/lpi_remote_manipulator.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_remote_manipulator.cc rename to decoders/lpi/libprotoident/tcp/lpi_remote_manipulator.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_revolver_nblbt.cc b/decoders/lpi/libprotoident/tcp/lpi_revolver_nblbt.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_revolver_nblbt.cc rename to decoders/lpi/libprotoident/tcp/lpi_revolver_nblbt.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_rfb.cc b/decoders/lpi/libprotoident/tcp/lpi_rfb.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_rfb.cc rename to decoders/lpi/libprotoident/tcp/lpi_rfb.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_rpcscan.cc b/decoders/lpi/libprotoident/tcp/lpi_rpcscan.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_rpcscan.cc rename to decoders/lpi/libprotoident/tcp/lpi_rpcscan.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_rrtv.cc b/decoders/lpi/libprotoident/tcp/lpi_rrtv.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_rrtv.cc rename to decoders/lpi/libprotoident/tcp/lpi_rrtv.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_rsync.cc b/decoders/lpi/libprotoident/tcp/lpi_rsync.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_rsync.cc rename to decoders/lpi/libprotoident/tcp/lpi_rsync.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_rtmp.cc b/decoders/lpi/libprotoident/tcp/lpi_rtmp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_rtmp.cc rename to decoders/lpi/libprotoident/tcp/lpi_rtmp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_rtsp.cc b/decoders/lpi/libprotoident/tcp/lpi_rtsp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_rtsp.cc rename to decoders/lpi/libprotoident/tcp/lpi_rtsp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_runescape.cc b/decoders/lpi/libprotoident/tcp/lpi_runescape.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_runescape.cc rename to decoders/lpi/libprotoident/tcp/lpi_runescape.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_s7comm.cc b/decoders/lpi/libprotoident/tcp/lpi_s7comm.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_s7comm.cc rename to decoders/lpi/libprotoident/tcp/lpi_s7comm.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_saprouter.cc b/decoders/lpi/libprotoident/tcp/lpi_saprouter.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_saprouter.cc rename to decoders/lpi/libprotoident/tcp/lpi_saprouter.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_saszombieassault4.cc b/decoders/lpi/libprotoident/tcp/lpi_saszombieassault4.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_saszombieassault4.cc rename to decoders/lpi/libprotoident/tcp/lpi_saszombieassault4.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_second_life.cc b/decoders/lpi/libprotoident/tcp/lpi_second_life.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_second_life.cc rename to decoders/lpi/libprotoident/tcp/lpi_second_life.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_shoutcast.cc b/decoders/lpi/libprotoident/tcp/lpi_shoutcast.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_shoutcast.cc rename to decoders/lpi/libprotoident/tcp/lpi_shoutcast.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_silkroadonline.cc b/decoders/lpi/libprotoident/tcp/lpi_silkroadonline.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_silkroadonline.cc rename to decoders/lpi/libprotoident/tcp/lpi_silkroadonline.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_sip.cc b/decoders/lpi/libprotoident/tcp/lpi_sip.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_sip.cc rename to decoders/lpi/libprotoident/tcp/lpi_sip.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_skyforge.cc b/decoders/lpi/libprotoident/tcp/lpi_skyforge.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_skyforge.cc rename to decoders/lpi/libprotoident/tcp/lpi_skyforge.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_skype_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_skype_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_skype_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_skype_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_smb.cc b/decoders/lpi/libprotoident/tcp/lpi_smb.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_smb.cc rename to decoders/lpi/libprotoident/tcp/lpi_smb.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_smite_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_smite_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_smite_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_smite_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_smtp.cc b/decoders/lpi/libprotoident/tcp/lpi_smtp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_smtp.cc rename to decoders/lpi/libprotoident/tcp/lpi_smtp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_smtps.cc b/decoders/lpi/libprotoident/tcp/lpi_smtps.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_smtps.cc rename to decoders/lpi/libprotoident/tcp/lpi_smtps.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_socks4.cc b/decoders/lpi/libprotoident/tcp/lpi_socks4.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_socks4.cc rename to decoders/lpi/libprotoident/tcp/lpi_socks4.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_socks5.cc b/decoders/lpi/libprotoident/tcp/lpi_socks5.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_socks5.cc rename to decoders/lpi/libprotoident/tcp/lpi_socks5.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_spdy.cc b/decoders/lpi/libprotoident/tcp/lpi_spdy.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_spdy.cc rename to decoders/lpi/libprotoident/tcp/lpi_spdy.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_speedify.cc b/decoders/lpi/libprotoident/tcp/lpi_speedify.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_speedify.cc rename to decoders/lpi/libprotoident/tcp/lpi_speedify.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_speedin.cc b/decoders/lpi/libprotoident/tcp/lpi_speedin.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_speedin.cc rename to decoders/lpi/libprotoident/tcp/lpi_speedin.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_speedtest.cc b/decoders/lpi/libprotoident/tcp/lpi_speedtest.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_speedtest.cc rename to decoders/lpi/libprotoident/tcp/lpi_speedtest.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_spotify.cc b/decoders/lpi/libprotoident/tcp/lpi_spotify.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_spotify.cc rename to decoders/lpi/libprotoident/tcp/lpi_spotify.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ssh.cc b/decoders/lpi/libprotoident/tcp/lpi_ssh.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ssh.cc rename to decoders/lpi/libprotoident/tcp/lpi_ssh.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ssjj.cc b/decoders/lpi/libprotoident/tcp/lpi_ssjj.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ssjj.cc rename to decoders/lpi/libprotoident/tcp/lpi_ssjj.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_ssl.cc b/decoders/lpi/libprotoident/tcp/lpi_ssl.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_ssl.cc rename to decoders/lpi/libprotoident/tcp/lpi_ssl.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_steam.cc b/decoders/lpi/libprotoident/tcp/lpi_steam.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_steam.cc rename to decoders/lpi/libprotoident/tcp/lpi_steam.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_stratum.cc b/decoders/lpi/libprotoident/tcp/lpi_stratum.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_stratum.cc rename to decoders/lpi/libprotoident/tcp/lpi_stratum.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_stun.cc b/decoders/lpi/libprotoident/tcp/lpi_stun.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_stun.cc rename to decoders/lpi/libprotoident/tcp/lpi_stun.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_supl.cc b/decoders/lpi/libprotoident/tcp/lpi_supl.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_supl.cc rename to decoders/lpi/libprotoident/tcp/lpi_supl.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_svn.cc b/decoders/lpi/libprotoident/tcp/lpi_svn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_svn.cc rename to decoders/lpi/libprotoident/tcp/lpi_svn.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_talesrunner.cc b/decoders/lpi/libprotoident/tcp/lpi_talesrunner.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_talesrunner.cc rename to decoders/lpi/libprotoident/tcp/lpi_talesrunner.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tankionline.cc b/decoders/lpi/libprotoident/tcp/lpi_tankionline.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tankionline.cc rename to decoders/lpi/libprotoident/tcp/lpi_tankionline.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tankix.cc b/decoders/lpi/libprotoident/tcp/lpi_tankix.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tankix.cc rename to decoders/lpi/libprotoident/tcp/lpi_tankix.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_taobao.cc b/decoders/lpi/libprotoident/tcp/lpi_taobao.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_taobao.cc rename to decoders/lpi/libprotoident/tcp/lpi_taobao.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tds.cc b/decoders/lpi/libprotoident/tcp/lpi_tds.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tds.cc rename to decoders/lpi/libprotoident/tcp/lpi_tds.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_teamviewer.cc b/decoders/lpi/libprotoident/tcp/lpi_teamviewer.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_teamviewer.cc rename to decoders/lpi/libprotoident/tcp/lpi_teamviewer.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_telecomkey.cc b/decoders/lpi/libprotoident/tcp/lpi_telecomkey.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_telecomkey.cc rename to decoders/lpi/libprotoident/tcp/lpi_telecomkey.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_telegram.cc b/decoders/lpi/libprotoident/tcp/lpi_telegram.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_telegram.cc rename to decoders/lpi/libprotoident/tcp/lpi_telegram.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_telnet.cc b/decoders/lpi/libprotoident/tcp/lpi_telnet.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_telnet.cc rename to decoders/lpi/libprotoident/tcp/lpi_telnet.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_telnet_exploit.cc b/decoders/lpi/libprotoident/tcp/lpi_telnet_exploit.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_telnet_exploit.cc rename to decoders/lpi/libprotoident/tcp/lpi_telnet_exploit.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tencent_games.cc b/decoders/lpi/libprotoident/tcp/lpi_tencent_games.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tencent_games.cc rename to decoders/lpi/libprotoident/tcp/lpi_tencent_games.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tenfivecoin.cc b/decoders/lpi/libprotoident/tcp/lpi_tenfivecoin.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tenfivecoin.cc rename to decoders/lpi/libprotoident/tcp/lpi_tenfivecoin.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tensafe.cc b/decoders/lpi/libprotoident/tcp/lpi_tensafe.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tensafe.cc rename to decoders/lpi/libprotoident/tcp/lpi_tensafe.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tera.cc b/decoders/lpi/libprotoident/tcp/lpi_tera.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tera.cc rename to decoders/lpi/libprotoident/tcp/lpi_tera.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tetrisonline.cc b/decoders/lpi/libprotoident/tcp/lpi_tetrisonline.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tetrisonline.cc rename to decoders/lpi/libprotoident/tcp/lpi_tetrisonline.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_thedivision.cc b/decoders/lpi/libprotoident/tcp/lpi_thedivision.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_thedivision.cc rename to decoders/lpi/libprotoident/tcp/lpi_thedivision.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tip.cc b/decoders/lpi/libprotoident/tcp/lpi_tip.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tip.cc rename to decoders/lpi/libprotoident/tcp/lpi_tip.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tor.cc b/decoders/lpi/libprotoident/tcp/lpi_tor.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tor.cc rename to decoders/lpi/libprotoident/tcp/lpi_tor.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_tpkt.cc b/decoders/lpi/libprotoident/tcp/lpi_tpkt.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_tpkt.cc rename to decoders/lpi/libprotoident/tcp/lpi_tpkt.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_trackmania.cc b/decoders/lpi/libprotoident/tcp/lpi_trackmania.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_trackmania.cc rename to decoders/lpi/libprotoident/tcp/lpi_trackmania.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_transocks.cc b/decoders/lpi/libprotoident/tcp/lpi_transocks.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_transocks.cc rename to decoders/lpi/libprotoident/tcp/lpi_transocks.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_trion.cc b/decoders/lpi/libprotoident/tcp/lpi_trion.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_trion.cc rename to decoders/lpi/libprotoident/tcp/lpi_trion.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_trojan_win32_generic_sb.cc b/decoders/lpi/libprotoident/tcp/lpi_trojan_win32_generic_sb.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_trojan_win32_generic_sb.cc rename to decoders/lpi/libprotoident/tcp/lpi_trojan_win32_generic_sb.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_trojan_zeroaccess.cc b/decoders/lpi/libprotoident/tcp/lpi_trojan_zeroaccess.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_trojan_zeroaccess.cc rename to decoders/lpi/libprotoident/tcp/lpi_trojan_zeroaccess.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_twitcasting.cc b/decoders/lpi/libprotoident/tcp/lpi_twitcasting.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_twitcasting.cc rename to decoders/lpi/libprotoident/tcp/lpi_twitcasting.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_twitch_irc.cc b/decoders/lpi/libprotoident/tcp/lpi_twitch_irc.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_twitch_irc.cc rename to decoders/lpi/libprotoident/tcp/lpi_twitch_irc.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_utherverse.cc b/decoders/lpi/libprotoident/tcp/lpi_utherverse.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_utherverse.cc rename to decoders/lpi/libprotoident/tcp/lpi_utherverse.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_vainglory.cc b/decoders/lpi/libprotoident/tcp/lpi_vainglory.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_vainglory.cc rename to decoders/lpi/libprotoident/tcp/lpi_vainglory.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_vhdp2p.cc b/decoders/lpi/libprotoident/tcp/lpi_vhdp2p.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_vhdp2p.cc rename to decoders/lpi/libprotoident/tcp/lpi_vhdp2p.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_viber.cc b/decoders/lpi/libprotoident/tcp/lpi_viber.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_viber.cc rename to decoders/lpi/libprotoident/tcp/lpi_viber.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_vmware.cc b/decoders/lpi/libprotoident/tcp/lpi_vmware.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_vmware.cc rename to decoders/lpi/libprotoident/tcp/lpi_vmware.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_vodlocker.cc b/decoders/lpi/libprotoident/tcp/lpi_vodlocker.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_vodlocker.cc rename to decoders/lpi/libprotoident/tcp/lpi_vodlocker.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_vpnrobot_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_vpnrobot_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_vpnrobot_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_vpnrobot_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_vpnunlimited_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_vpnunlimited_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_vpnunlimited_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_vpnunlimited_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_warcraft3.cc b/decoders/lpi/libprotoident/tcp/lpi_warcraft3.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_warcraft3.cc rename to decoders/lpi/libprotoident/tcp/lpi_warcraft3.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_web_junk.cc b/decoders/lpi/libprotoident/tcp/lpi_web_junk.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_web_junk.cc rename to decoders/lpi/libprotoident/tcp/lpi_web_junk.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_webex_stun.cc b/decoders/lpi/libprotoident/tcp/lpi_webex_stun.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_webex_stun.cc rename to decoders/lpi/libprotoident/tcp/lpi_webex_stun.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_weblogic.cc b/decoders/lpi/libprotoident/tcp/lpi_weblogic.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_weblogic.cc rename to decoders/lpi/libprotoident/tcp/lpi_weblogic.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_wechat.cc b/decoders/lpi/libprotoident/tcp/lpi_wechat.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_wechat.cc rename to decoders/lpi/libprotoident/tcp/lpi_wechat.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_weibo.cc b/decoders/lpi/libprotoident/tcp/lpi_weibo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_weibo.cc rename to decoders/lpi/libprotoident/tcp/lpi_weibo.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_weiqi.cc b/decoders/lpi/libprotoident/tcp/lpi_weiqi.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_weiqi.cc rename to decoders/lpi/libprotoident/tcp/lpi_weiqi.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_whatsapp.cc b/decoders/lpi/libprotoident/tcp/lpi_whatsapp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_whatsapp.cc rename to decoders/lpi/libprotoident/tcp/lpi_whatsapp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_whois.cc b/decoders/lpi/libprotoident/tcp/lpi_whois.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_whois.cc rename to decoders/lpi/libprotoident/tcp/lpi_whois.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_winmx.cc b/decoders/lpi/libprotoident/tcp/lpi_winmx.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_winmx.cc rename to decoders/lpi/libprotoident/tcp/lpi_winmx.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_wizard101.cc b/decoders/lpi/libprotoident/tcp/lpi_wizard101.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_wizard101.cc rename to decoders/lpi/libprotoident/tcp/lpi_wizard101.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_wns.cc b/decoders/lpi/libprotoident/tcp/lpi_wns.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_wns.cc rename to decoders/lpi/libprotoident/tcp/lpi_wns.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_wow.cc b/decoders/lpi/libprotoident/tcp/lpi_wow.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_wow.cc rename to decoders/lpi/libprotoident/tcp/lpi_wow.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_wuala.cc b/decoders/lpi/libprotoident/tcp/lpi_wuala.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_wuala.cc rename to decoders/lpi/libprotoident/tcp/lpi_wuala.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_xiami.cc b/decoders/lpi/libprotoident/tcp/lpi_xiami.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_xiami.cc rename to decoders/lpi/libprotoident/tcp/lpi_xiami.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_xmpp.cc b/decoders/lpi/libprotoident/tcp/lpi_xmpp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_xmpp.cc rename to decoders/lpi/libprotoident/tcp/lpi_xmpp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_xmpps.cc b/decoders/lpi/libprotoident/tcp/lpi_xmpps.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_xmpps.cc rename to decoders/lpi/libprotoident/tcp/lpi_xmpps.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_xunlei.cc b/decoders/lpi/libprotoident/tcp/lpi_xunlei.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_xunlei.cc rename to decoders/lpi/libprotoident/tcp/lpi_xunlei.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_xunlei_accel.cc b/decoders/lpi/libprotoident/tcp/lpi_xunlei_accel.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_xunlei_accel.cc rename to decoders/lpi/libprotoident/tcp/lpi_xunlei_accel.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_xymon.cc b/decoders/lpi/libprotoident/tcp/lpi_xymon.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_xymon.cc rename to decoders/lpi/libprotoident/tcp/lpi_xymon.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_yahoo.cc b/decoders/lpi/libprotoident/tcp/lpi_yahoo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_yahoo.cc rename to decoders/lpi/libprotoident/tcp/lpi_yahoo.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_yahoo_error.cc b/decoders/lpi/libprotoident/tcp/lpi_yahoo_error.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_yahoo_error.cc rename to decoders/lpi/libprotoident/tcp/lpi_yahoo_error.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_yahoo_games.cc b/decoders/lpi/libprotoident/tcp/lpi_yahoo_games.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_yahoo_games.cc rename to decoders/lpi/libprotoident/tcp/lpi_yahoo_games.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_yahoo_webcam.cc b/decoders/lpi/libprotoident/tcp/lpi_yahoo_webcam.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_yahoo_webcam.cc rename to decoders/lpi/libprotoident/tcp/lpi_yahoo_webcam.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_youku.cc b/decoders/lpi/libprotoident/tcp/lpi_youku.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_youku.cc rename to decoders/lpi/libprotoident/tcp/lpi_youku.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_yy_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_yy_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_yy_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_yy_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_zabbix.cc b/decoders/lpi/libprotoident/tcp/lpi_zabbix.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_zabbix.cc rename to decoders/lpi/libprotoident/tcp/lpi_zabbix.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_zero.cc b/decoders/lpi/libprotoident/tcp/lpi_zero.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_zero.cc rename to decoders/lpi/libprotoident/tcp/lpi_zero.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_zoom_tcp.cc b/decoders/lpi/libprotoident/tcp/lpi_zoom_tcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_zoom_tcp.cc rename to decoders/lpi/libprotoident/tcp/lpi_zoom_tcp.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/lpi_zynga.cc b/decoders/lpi/libprotoident/tcp/lpi_zynga.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/lpi_zynga.cc rename to decoders/lpi/libprotoident/tcp/lpi_zynga.cc diff --git a/decoders/glimpse_detector/libprotoident/tcp/tcp_protocols.h b/decoders/lpi/libprotoident/tcp/tcp_protocols.h similarity index 100% rename from decoders/glimpse_detector/libprotoident/tcp/tcp_protocols.h rename to decoders/lpi/libprotoident/tcp/tcp_protocols.h diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_360cn.cc b/decoders/lpi/libprotoident/udp/lpi_360cn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_360cn.cc rename to decoders/lpi/libprotoident/udp/lpi_360cn.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_360p2p.cc b/decoders/lpi/libprotoident/udp/lpi_360p2p.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_360p2p.cc rename to decoders/lpi/libprotoident/udp/lpi_360p2p.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_aachen_udp.cc b/decoders/lpi/libprotoident/udp/lpi_aachen_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_aachen_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_aachen_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_acercloud.cc b/decoders/lpi/libprotoident/udp/lpi_acercloud.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_acercloud.cc rename to decoders/lpi/libprotoident/udp/lpi_acercloud.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_akamai.cc b/decoders/lpi/libprotoident/udp/lpi_akamai.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_akamai.cc rename to decoders/lpi/libprotoident/udp/lpi_akamai.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_akamai_transfer.cc b/decoders/lpi/libprotoident/udp/lpi_akamai_transfer.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_akamai_transfer.cc rename to decoders/lpi/libprotoident/udp/lpi_akamai_transfer.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_amanda.cc b/decoders/lpi/libprotoident/udp/lpi_amanda.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_amanda.cc rename to decoders/lpi/libprotoident/udp/lpi_amanda.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_apple_facetime_init.cc b/decoders/lpi/libprotoident/udp/lpi_apple_facetime_init.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_apple_facetime_init.cc rename to decoders/lpi/libprotoident/udp/lpi_apple_facetime_init.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ard.cc b/decoders/lpi/libprotoident/udp/lpi_ard.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ard.cc rename to decoders/lpi/libprotoident/udp/lpi_ard.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ares.cc b/decoders/lpi/libprotoident/udp/lpi_ares.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ares.cc rename to decoders/lpi/libprotoident/udp/lpi_ares.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ark.cc b/decoders/lpi/libprotoident/udp/lpi_ark.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ark.cc rename to decoders/lpi/libprotoident/udp/lpi_ark.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_arma3_server.cc b/decoders/lpi/libprotoident/udp/lpi_arma3_server.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_arma3_server.cc rename to decoders/lpi/libprotoident/udp/lpi_arma3_server.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_arma_server.cc b/decoders/lpi/libprotoident/udp/lpi_arma_server.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_arma_server.cc rename to decoders/lpi/libprotoident/udp/lpi_arma_server.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_artcp.cc b/decoders/lpi/libprotoident/udp/lpi_artcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_artcp.cc rename to decoders/lpi/libprotoident/udp/lpi_artcp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_assettocorsa.cc b/decoders/lpi/libprotoident/udp/lpi_assettocorsa.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_assettocorsa.cc rename to decoders/lpi/libprotoident/udp/lpi_assettocorsa.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_avast_secure_dns.cc b/decoders/lpi/libprotoident/udp/lpi_avast_secure_dns.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_avast_secure_dns.cc rename to decoders/lpi/libprotoident/udp/lpi_avast_secure_dns.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_backweb.cc b/decoders/lpi/libprotoident/udp/lpi_backweb.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_backweb.cc rename to decoders/lpi/libprotoident/udp/lpi_backweb.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_bacnet.cc b/decoders/lpi/libprotoident/udp/lpi_bacnet.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_bacnet.cc rename to decoders/lpi/libprotoident/udp/lpi_bacnet.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_baiduyun_p2p.cc b/decoders/lpi/libprotoident/udp/lpi_baiduyun_p2p.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_baiduyun_p2p.cc rename to decoders/lpi/libprotoident/udp/lpi_baiduyun_p2p.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_baofeng_udp.cc b/decoders/lpi/libprotoident/udp/lpi_baofeng_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_baofeng_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_baofeng_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_battlefield.cc b/decoders/lpi/libprotoident/udp/lpi_battlefield.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_battlefield.cc rename to decoders/lpi/libprotoident/udp/lpi_battlefield.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_bjnp.cc b/decoders/lpi/libprotoident/udp/lpi_bjnp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_bjnp.cc rename to decoders/lpi/libprotoident/udp/lpi_bjnp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_bmdp.cc b/decoders/lpi/libprotoident/udp/lpi_bmdp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_bmdp.cc rename to decoders/lpi/libprotoident/udp/lpi_bmdp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_btsync.cc b/decoders/lpi/libprotoident/udp/lpi_btsync.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_btsync.cc rename to decoders/lpi/libprotoident/udp/lpi_btsync.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_cacaoweb_udp.cc b/decoders/lpi/libprotoident/udp/lpi_cacaoweb_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_cacaoweb_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_cacaoweb_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_canon_mfnp.cc b/decoders/lpi/libprotoident/udp/lpi_canon_mfnp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_canon_mfnp.cc rename to decoders/lpi/libprotoident/udp/lpi_canon_mfnp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_chargen_exploit.cc b/decoders/lpi/libprotoident/udp/lpi_chargen_exploit.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_chargen_exploit.cc rename to decoders/lpi/libprotoident/udp/lpi_chargen_exploit.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_checkpoint_rdp.cc b/decoders/lpi/libprotoident/udp/lpi_checkpoint_rdp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_checkpoint_rdp.cc rename to decoders/lpi/libprotoident/udp/lpi_checkpoint_rdp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_chivalry.cc b/decoders/lpi/libprotoident/udp/lpi_chivalry.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_chivalry.cc rename to decoders/lpi/libprotoident/udp/lpi_chivalry.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_cip_io.cc b/decoders/lpi/libprotoident/udp/lpi_cip_io.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_cip_io.cc rename to decoders/lpi/libprotoident/udp/lpi_cip_io.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_cirn.cc b/decoders/lpi/libprotoident/udp/lpi_cirn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_cirn.cc rename to decoders/lpi/libprotoident/udp/lpi_cirn.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_cisco_ipsec.cc b/decoders/lpi/libprotoident/udp/lpi_cisco_ipsec.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_cisco_ipsec.cc rename to decoders/lpi/libprotoident/udp/lpi_cisco_ipsec.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_cisco_sslvpn.cc b/decoders/lpi/libprotoident/udp/lpi_cisco_sslvpn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_cisco_sslvpn.cc rename to decoders/lpi/libprotoident/udp/lpi_cisco_sslvpn.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_classin_udp.cc b/decoders/lpi/libprotoident/udp/lpi_classin_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_classin_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_classin_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_cloudflare_warp.cc b/decoders/lpi/libprotoident/udp/lpi_cloudflare_warp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_cloudflare_warp.cc rename to decoders/lpi/libprotoident/udp/lpi_cloudflare_warp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_cod.cc b/decoders/lpi/libprotoident/udp/lpi_cod.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_cod.cc rename to decoders/lpi/libprotoident/udp/lpi_cod.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_codmobile.cc b/decoders/lpi/libprotoident/udp/lpi_codmobile.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_codmobile.cc rename to decoders/lpi/libprotoident/udp/lpi_codmobile.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_combatarms.cc b/decoders/lpi/libprotoident/udp/lpi_combatarms.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_combatarms.cc rename to decoders/lpi/libprotoident/udp/lpi_combatarms.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_combatarms_p2p.cc b/decoders/lpi/libprotoident/udp/lpi_combatarms_p2p.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_combatarms_p2p.cc rename to decoders/lpi/libprotoident/udp/lpi_combatarms_p2p.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_contract_wars.cc b/decoders/lpi/libprotoident/udp/lpi_contract_wars.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_contract_wars.cc rename to decoders/lpi/libprotoident/udp/lpi_contract_wars.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_crossfire.cc b/decoders/lpi/libprotoident/udp/lpi_crossfire.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_crossfire.cc rename to decoders/lpi/libprotoident/udp/lpi_crossfire.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_crossout.cc b/decoders/lpi/libprotoident/udp/lpi_crossout.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_crossout.cc rename to decoders/lpi/libprotoident/udp/lpi_crossout.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_csgo.cc b/decoders/lpi/libprotoident/udp/lpi_csgo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_csgo.cc rename to decoders/lpi/libprotoident/udp/lpi_csgo.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_csoriginal.cc b/decoders/lpi/libprotoident/udp/lpi_csoriginal.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_csoriginal.cc rename to decoders/lpi/libprotoident/udp/lpi_csoriginal.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_dahua.cc b/decoders/lpi/libprotoident/udp/lpi_dahua.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_dahua.cc rename to decoders/lpi/libprotoident/udp/lpi_dahua.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_db2.cc b/decoders/lpi/libprotoident/udp/lpi_db2.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_db2.cc rename to decoders/lpi/libprotoident/udp/lpi_db2.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_dcc.cc b/decoders/lpi/libprotoident/udp/lpi_dcc.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_dcc.cc rename to decoders/lpi/libprotoident/udp/lpi_dcc.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_demonware.cc b/decoders/lpi/libprotoident/udp/lpi_demonware.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_demonware.cc rename to decoders/lpi/libprotoident/udp/lpi_demonware.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_destiny_udp.cc b/decoders/lpi/libprotoident/udp/lpi_destiny_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_destiny_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_destiny_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_dhcp.cc b/decoders/lpi/libprotoident/udp/lpi_dhcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_dhcp.cc rename to decoders/lpi/libprotoident/udp/lpi_dhcp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_dht_dict.cc b/decoders/lpi/libprotoident/udp/lpi_dht_dict.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_dht_dict.cc rename to decoders/lpi/libprotoident/udp/lpi_dht_dict.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_dht_other.cc b/decoders/lpi/libprotoident/udp/lpi_dht_other.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_dht_other.cc rename to decoders/lpi/libprotoident/udp/lpi_dht_other.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_diablo2.cc b/decoders/lpi/libprotoident/udp/lpi_diablo2.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_diablo2.cc rename to decoders/lpi/libprotoident/udp/lpi_diablo2.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_dianping_udp.cc b/decoders/lpi/libprotoident/udp/lpi_dianping_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_dianping_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_dianping_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_dianshijia.cc b/decoders/lpi/libprotoident/udp/lpi_dianshijia.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_dianshijia.cc rename to decoders/lpi/libprotoident/udp/lpi_dianshijia.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_directconnect.cc b/decoders/lpi/libprotoident/udp/lpi_directconnect.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_directconnect.cc rename to decoders/lpi/libprotoident/udp/lpi_directconnect.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_discord.cc b/decoders/lpi/libprotoident/udp/lpi_discord.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_discord.cc rename to decoders/lpi/libprotoident/udp/lpi_discord.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_dns.cc b/decoders/lpi/libprotoident/udp/lpi_dns.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_dns.cc rename to decoders/lpi/libprotoident/udp/lpi_dns.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_dota2.cc b/decoders/lpi/libprotoident/udp/lpi_dota2.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_dota2.cc rename to decoders/lpi/libprotoident/udp/lpi_dota2.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_doyo.cc b/decoders/lpi/libprotoident/udp/lpi_doyo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_doyo.cc rename to decoders/lpi/libprotoident/udp/lpi_doyo.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_driveshare.cc b/decoders/lpi/libprotoident/udp/lpi_driveshare.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_driveshare.cc rename to decoders/lpi/libprotoident/udp/lpi_driveshare.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_dtls.cc b/decoders/lpi/libprotoident/udp/lpi_dtls.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_dtls.cc rename to decoders/lpi/libprotoident/udp/lpi_dtls.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_emule.cc b/decoders/lpi/libprotoident/udp/lpi_emule.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_emule.cc rename to decoders/lpi/libprotoident/udp/lpi_emule.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_emule_weak.cc b/decoders/lpi/libprotoident/udp/lpi_emule_weak.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_emule_weak.cc rename to decoders/lpi/libprotoident/udp/lpi_emule_weak.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_epson.cc b/decoders/lpi/libprotoident/udp/lpi_epson.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_epson.cc rename to decoders/lpi/libprotoident/udp/lpi_epson.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_eso.cc b/decoders/lpi/libprotoident/udp/lpi_eso.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_eso.cc rename to decoders/lpi/libprotoident/udp/lpi_eso.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_esp_encap.cc b/decoders/lpi/libprotoident/udp/lpi_esp_encap.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_esp_encap.cc rename to decoders/lpi/libprotoident/udp/lpi_esp_encap.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ethernetip.cc b/decoders/lpi/libprotoident/udp/lpi_ethernetip.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ethernetip.cc rename to decoders/lpi/libprotoident/udp/lpi_ethernetip.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_eye.cc b/decoders/lpi/libprotoident/udp/lpi_eye.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_eye.cc rename to decoders/lpi/libprotoident/udp/lpi_eye.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_fasp.cc b/decoders/lpi/libprotoident/udp/lpi_fasp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_fasp.cc rename to decoders/lpi/libprotoident/udp/lpi_fasp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_feitwo.cc b/decoders/lpi/libprotoident/udp/lpi_feitwo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_feitwo.cc rename to decoders/lpi/libprotoident/udp/lpi_feitwo.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_forticlient_sslvpn.cc b/decoders/lpi/libprotoident/udp/lpi_forticlient_sslvpn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_forticlient_sslvpn.cc rename to decoders/lpi/libprotoident/udp/lpi_forticlient_sslvpn.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_fortinet.cc b/decoders/lpi/libprotoident/udp/lpi_fortinet.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_fortinet.cc rename to decoders/lpi/libprotoident/udp/lpi_fortinet.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_foscam.cc b/decoders/lpi/libprotoident/udp/lpi_foscam.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_foscam.cc rename to decoders/lpi/libprotoident/udp/lpi_foscam.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_freechal.cc b/decoders/lpi/libprotoident/udp/lpi_freechal.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_freechal.cc rename to decoders/lpi/libprotoident/udp/lpi_freechal.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_freefire.cc b/decoders/lpi/libprotoident/udp/lpi_freefire.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_freefire.cc rename to decoders/lpi/libprotoident/udp/lpi_freefire.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_funshion.cc b/decoders/lpi/libprotoident/udp/lpi_funshion.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_funshion.cc rename to decoders/lpi/libprotoident/udp/lpi_funshion.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_gamespy.cc b/decoders/lpi/libprotoident/udp/lpi_gamespy.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_gamespy.cc rename to decoders/lpi/libprotoident/udp/lpi_gamespy.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ganglia.cc b/decoders/lpi/libprotoident/udp/lpi_ganglia.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ganglia.cc rename to decoders/lpi/libprotoident/udp/lpi_ganglia.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_gangsofspace.cc b/decoders/lpi/libprotoident/udp/lpi_gangsofspace.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_gangsofspace.cc rename to decoders/lpi/libprotoident/udp/lpi_gangsofspace.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_garena.cc b/decoders/lpi/libprotoident/udp/lpi_garena.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_garena.cc rename to decoders/lpi/libprotoident/udp/lpi_garena.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_gearsofwar.cc b/decoders/lpi/libprotoident/udp/lpi_gearsofwar.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_gearsofwar.cc rename to decoders/lpi/libprotoident/udp/lpi_gearsofwar.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_gnutella.cc b/decoders/lpi/libprotoident/udp/lpi_gnutella.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_gnutella.cc rename to decoders/lpi/libprotoident/udp/lpi_gnutella.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_gnutella2.cc b/decoders/lpi/libprotoident/udp/lpi_gnutella2.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_gnutella2.cc rename to decoders/lpi/libprotoident/udp/lpi_gnutella2.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_gnutella_weak.cc b/decoders/lpi/libprotoident/udp/lpi_gnutella_weak.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_gnutella_weak.cc rename to decoders/lpi/libprotoident/udp/lpi_gnutella_weak.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_gotomeeting.cc b/decoders/lpi/libprotoident/udp/lpi_gotomeeting.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_gotomeeting.cc rename to decoders/lpi/libprotoident/udp/lpi_gotomeeting.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_gprs_tunnel.cc b/decoders/lpi/libprotoident/udp/lpi_gprs_tunnel.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_gprs_tunnel.cc rename to decoders/lpi/libprotoident/udp/lpi_gprs_tunnel.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_gsm.cc b/decoders/lpi/libprotoident/udp/lpi_gsm.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_gsm.cc rename to decoders/lpi/libprotoident/udp/lpi_gsm.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_h1z1.cc b/decoders/lpi/libprotoident/udp/lpi_h1z1.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_h1z1.cc rename to decoders/lpi/libprotoident/udp/lpi_h1z1.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_halflife.cc b/decoders/lpi/libprotoident/udp/lpi_halflife.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_halflife.cc rename to decoders/lpi/libprotoident/udp/lpi_halflife.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_haloonline.cc b/decoders/lpi/libprotoident/udp/lpi_haloonline.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_haloonline.cc rename to decoders/lpi/libprotoident/udp/lpi_haloonline.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_hamachi.cc b/decoders/lpi/libprotoident/udp/lpi_hamachi.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_hamachi.cc rename to decoders/lpi/libprotoident/udp/lpi_hamachi.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_heliborne.cc b/decoders/lpi/libprotoident/udp/lpi_heliborne.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_heliborne.cc rename to decoders/lpi/libprotoident/udp/lpi_heliborne.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_heroes_generals.cc b/decoders/lpi/libprotoident/udp/lpi_heroes_generals.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_heroes_generals.cc rename to decoders/lpi/libprotoident/udp/lpi_heroes_generals.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_heroesevolved.cc b/decoders/lpi/libprotoident/udp/lpi_heroesevolved.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_heroesevolved.cc rename to decoders/lpi/libprotoident/udp/lpi_heroesevolved.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_hollachat.cc b/decoders/lpi/libprotoident/udp/lpi_hollachat.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_hollachat.cc rename to decoders/lpi/libprotoident/udp/lpi_hollachat.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_hots.cc b/decoders/lpi/libprotoident/udp/lpi_hots.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_hots.cc rename to decoders/lpi/libprotoident/udp/lpi_hots.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_icp.cc b/decoders/lpi/libprotoident/udp/lpi_icp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_icp.cc rename to decoders/lpi/libprotoident/udp/lpi_icp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_imesh.cc b/decoders/lpi/libprotoident/udp/lpi_imesh.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_imesh.cc rename to decoders/lpi/libprotoident/udp/lpi_imesh.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ipmsg.cc b/decoders/lpi/libprotoident/udp/lpi_ipmsg.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ipmsg.cc rename to decoders/lpi/libprotoident/udp/lpi_ipmsg.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ipv6.cc b/decoders/lpi/libprotoident/udp/lpi_ipv6.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ipv6.cc rename to decoders/lpi/libprotoident/udp/lpi_ipv6.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_isakmp.cc b/decoders/lpi/libprotoident/udp/lpi_isakmp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_isakmp.cc rename to decoders/lpi/libprotoident/udp/lpi_isakmp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_jedi.cc b/decoders/lpi/libprotoident/udp/lpi_jedi.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_jedi.cc rename to decoders/lpi/libprotoident/udp/lpi_jedi.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_jedi_academy.cc b/decoders/lpi/libprotoident/udp/lpi_jedi_academy.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_jedi_academy.cc rename to decoders/lpi/libprotoident/udp/lpi_jedi_academy.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_kademlia.cc b/decoders/lpi/libprotoident/udp/lpi_kademlia.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_kademlia.cc rename to decoders/lpi/libprotoident/udp/lpi_kademlia.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_kankan.cc b/decoders/lpi/libprotoident/udp/lpi_kankan.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_kankan.cc rename to decoders/lpi/libprotoident/udp/lpi_kankan.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_kaspersky.cc b/decoders/lpi/libprotoident/udp/lpi_kaspersky.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_kaspersky.cc rename to decoders/lpi/libprotoident/udp/lpi_kaspersky.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_kazaa.cc b/decoders/lpi/libprotoident/udp/lpi_kazaa.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_kazaa.cc rename to decoders/lpi/libprotoident/udp/lpi_kazaa.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_kingofglory_udp.cc b/decoders/lpi/libprotoident/udp/lpi_kingofglory_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_kingofglory_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_kingofglory_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_kuguo.cc b/decoders/lpi/libprotoident/udp/lpi_kuguo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_kuguo.cc rename to decoders/lpi/libprotoident/udp/lpi_kuguo.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_l2tp.cc b/decoders/lpi/libprotoident/udp/lpi_l2tp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_l2tp.cc rename to decoders/lpi/libprotoident/udp/lpi_l2tp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_lansync.cc b/decoders/lpi/libprotoident/udp/lpi_lansync.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_lansync.cc rename to decoders/lpi/libprotoident/udp/lpi_lansync.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ldap_ad.cc b/decoders/lpi/libprotoident/udp/lpi_ldap_ad.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ldap_ad.cc rename to decoders/lpi/libprotoident/udp/lpi_ldap_ad.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_line_udp.cc b/decoders/lpi/libprotoident/udp/lpi_line_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_line_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_line_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_linkproof.cc b/decoders/lpi/libprotoident/udp/lpi_linkproof.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_linkproof.cc rename to decoders/lpi/libprotoident/udp/lpi_linkproof.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_loadout.cc b/decoders/lpi/libprotoident/udp/lpi_loadout.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_loadout.cc rename to decoders/lpi/libprotoident/udp/lpi_loadout.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_lol.cc b/decoders/lpi/libprotoident/udp/lpi_lol.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_lol.cc rename to decoders/lpi/libprotoident/udp/lpi_lol.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_mdns.cc b/decoders/lpi/libprotoident/udp/lpi_mdns.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_mdns.cc rename to decoders/lpi/libprotoident/udp/lpi_mdns.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_merakicloud.cc b/decoders/lpi/libprotoident/udp/lpi_merakicloud.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_merakicloud.cc rename to decoders/lpi/libprotoident/udp/lpi_merakicloud.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_moh.cc b/decoders/lpi/libprotoident/udp/lpi_moh.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_moh.cc rename to decoders/lpi/libprotoident/udp/lpi_moh.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_moonhunters.cc b/decoders/lpi/libprotoident/udp/lpi_moonhunters.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_moonhunters.cc rename to decoders/lpi/libprotoident/udp/lpi_moonhunters.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_mp2p.cc b/decoders/lpi/libprotoident/udp/lpi_mp2p.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_mp2p.cc rename to decoders/lpi/libprotoident/udp/lpi_mp2p.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_msn_cache.cc b/decoders/lpi/libprotoident/udp/lpi_msn_cache.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_msn_cache.cc rename to decoders/lpi/libprotoident/udp/lpi_msn_cache.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_msn_video.cc b/decoders/lpi/libprotoident/udp/lpi_msn_video.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_msn_video.cc rename to decoders/lpi/libprotoident/udp/lpi_msn_video.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_msoffice_mac.cc b/decoders/lpi/libprotoident/udp/lpi_msoffice_mac.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_msoffice_mac.cc rename to decoders/lpi/libprotoident/udp/lpi_msoffice_mac.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_mta.cc b/decoders/lpi/libprotoident/udp/lpi_mta.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_mta.cc rename to decoders/lpi/libprotoident/udp/lpi_mta.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_n2ping.cc b/decoders/lpi/libprotoident/udp/lpi_n2ping.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_n2ping.cc rename to decoders/lpi/libprotoident/udp/lpi_n2ping.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_natpmp.cc b/decoders/lpi/libprotoident/udp/lpi_natpmp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_natpmp.cc rename to decoders/lpi/libprotoident/udp/lpi_natpmp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_netbios.cc b/decoders/lpi/libprotoident/udp/lpi_netbios.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_netbios.cc rename to decoders/lpi/libprotoident/udp/lpi_netbios.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_netcat_cctv_udp.cc b/decoders/lpi/libprotoident/udp/lpi_netcat_cctv_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_netcat_cctv_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_netcat_cctv_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_netcore_scan.cc b/decoders/lpi/libprotoident/udp/lpi_netcore_scan.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_netcore_scan.cc rename to decoders/lpi/libprotoident/udp/lpi_netcore_scan.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_netflow.cc b/decoders/lpi/libprotoident/udp/lpi_netflow.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_netflow.cc rename to decoders/lpi/libprotoident/udp/lpi_netflow.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_newerth.cc b/decoders/lpi/libprotoident/udp/lpi_newerth.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_newerth.cc rename to decoders/lpi/libprotoident/udp/lpi_newerth.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_nintendo.cc b/decoders/lpi/libprotoident/udp/lpi_nintendo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_nintendo.cc rename to decoders/lpi/libprotoident/udp/lpi_nintendo.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_noction.cc b/decoders/lpi/libprotoident/udp/lpi_noction.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_noction.cc rename to decoders/lpi/libprotoident/udp/lpi_noction.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_noe.cc b/decoders/lpi/libprotoident/udp/lpi_noe.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_noe.cc rename to decoders/lpi/libprotoident/udp/lpi_noe.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_nopayload.cc b/decoders/lpi/libprotoident/udp/lpi_nopayload.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_nopayload.cc rename to decoders/lpi/libprotoident/udp/lpi_nopayload.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_norton.cc b/decoders/lpi/libprotoident/udp/lpi_norton.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_norton.cc rename to decoders/lpi/libprotoident/udp/lpi_norton.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ntp.cc b/decoders/lpi/libprotoident/udp/lpi_ntp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ntp.cc rename to decoders/lpi/libprotoident/udp/lpi_ntp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ntp_reflect.cc b/decoders/lpi/libprotoident/udp/lpi_ntp_reflect.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ntp_reflect.cc rename to decoders/lpi/libprotoident/udp/lpi_ntp_reflect.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_nvidia_gamestream.cc b/decoders/lpi/libprotoident/udp/lpi_nvidia_gamestream.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_nvidia_gamestream.cc rename to decoders/lpi/libprotoident/udp/lpi_nvidia_gamestream.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_nwn.cc b/decoders/lpi/libprotoident/udp/lpi_nwn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_nwn.cc rename to decoders/lpi/libprotoident/udp/lpi_nwn.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_opaserv.cc b/decoders/lpi/libprotoident/udp/lpi_opaserv.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_opaserv.cc rename to decoders/lpi/libprotoident/udp/lpi_opaserv.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_openvpn.cc b/decoders/lpi/libprotoident/udp/lpi_openvpn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_openvpn.cc rename to decoders/lpi/libprotoident/udp/lpi_openvpn.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_orbit.cc b/decoders/lpi/libprotoident/udp/lpi_orbit.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_orbit.cc rename to decoders/lpi/libprotoident/udp/lpi_orbit.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_overwatch.cc b/decoders/lpi/libprotoident/udp/lpi_overwatch.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_overwatch.cc rename to decoders/lpi/libprotoident/udp/lpi_overwatch.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_paladins.cc b/decoders/lpi/libprotoident/udp/lpi_paladins.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_paladins.cc rename to decoders/lpi/libprotoident/udp/lpi_paladins.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_pando.cc b/decoders/lpi/libprotoident/udp/lpi_pando.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_pando.cc rename to decoders/lpi/libprotoident/udp/lpi_pando.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_panipani.cc b/decoders/lpi/libprotoident/udp/lpi_panipani.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_panipani.cc rename to decoders/lpi/libprotoident/udp/lpi_panipani.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_planetside2.cc b/decoders/lpi/libprotoident/udp/lpi_planetside2.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_planetside2.cc rename to decoders/lpi/libprotoident/udp/lpi_planetside2.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_portmap_rpc.cc b/decoders/lpi/libprotoident/udp/lpi_portmap_rpc.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_portmap_rpc.cc rename to decoders/lpi/libprotoident/udp/lpi_portmap_rpc.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_pplive.cc b/decoders/lpi/libprotoident/udp/lpi_pplive.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_pplive.cc rename to decoders/lpi/libprotoident/udp/lpi_pplive.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ppstream.cc b/decoders/lpi/libprotoident/udp/lpi_ppstream.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ppstream.cc rename to decoders/lpi/libprotoident/udp/lpi_ppstream.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_probable_gnutella.cc b/decoders/lpi/libprotoident/udp/lpi_probable_gnutella.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_probable_gnutella.cc rename to decoders/lpi/libprotoident/udp/lpi_probable_gnutella.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ps4_remoteplay.cc b/decoders/lpi/libprotoident/udp/lpi_ps4_remoteplay.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ps4_remoteplay.cc rename to decoders/lpi/libprotoident/udp/lpi_ps4_remoteplay.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_psn.cc b/decoders/lpi/libprotoident/udp/lpi_psn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_psn.cc rename to decoders/lpi/libprotoident/udp/lpi_psn.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_punkbuster.cc b/decoders/lpi/libprotoident/udp/lpi_punkbuster.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_punkbuster.cc rename to decoders/lpi/libprotoident/udp/lpi_punkbuster.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_pyzor.cc b/decoders/lpi/libprotoident/udp/lpi_pyzor.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_pyzor.cc rename to decoders/lpi/libprotoident/udp/lpi_pyzor.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_qq.cc b/decoders/lpi/libprotoident/udp/lpi_qq.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_qq.cc rename to decoders/lpi/libprotoident/udp/lpi_qq.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_qqlive.cc b/decoders/lpi/libprotoident/udp/lpi_qqlive.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_qqlive.cc rename to decoders/lpi/libprotoident/udp/lpi_qqlive.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_qqpcmgr.cc b/decoders/lpi/libprotoident/udp/lpi_qqpcmgr.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_qqpcmgr.cc rename to decoders/lpi/libprotoident/udp/lpi_qqpcmgr.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_qqspeedmobile_udp.cc b/decoders/lpi/libprotoident/udp/lpi_qqspeedmobile_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_qqspeedmobile_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_qqspeedmobile_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_quake.cc b/decoders/lpi/libprotoident/udp/lpi_quake.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_quake.cc rename to decoders/lpi/libprotoident/udp/lpi_quake.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_quic.cc b/decoders/lpi/libprotoident/udp/lpi_quic.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_quic.cc rename to decoders/lpi/libprotoident/udp/lpi_quic.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_qvod_udp.cc b/decoders/lpi/libprotoident/udp/lpi_qvod_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_qvod_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_qvod_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_radius.cc b/decoders/lpi/libprotoident/udp/lpi_radius.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_radius.cc rename to decoders/lpi/libprotoident/udp/lpi_radius.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_raknet.cc b/decoders/lpi/libprotoident/udp/lpi_raknet.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_raknet.cc rename to decoders/lpi/libprotoident/udp/lpi_raknet.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ramseydash.cc b/decoders/lpi/libprotoident/udp/lpi_ramseydash.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ramseydash.cc rename to decoders/lpi/libprotoident/udp/lpi_ramseydash.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_rdp_udp.cc b/decoders/lpi/libprotoident/udp/lpi_rdp_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_rdp_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_rdp_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_real.cc b/decoders/lpi/libprotoident/udp/lpi_real.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_real.cc rename to decoders/lpi/libprotoident/udp/lpi_real.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_risingstorm.cc b/decoders/lpi/libprotoident/udp/lpi_risingstorm.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_risingstorm.cc rename to decoders/lpi/libprotoident/udp/lpi_risingstorm.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_robocraft.cc b/decoders/lpi/libprotoident/udp/lpi_robocraft.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_robocraft.cc rename to decoders/lpi/libprotoident/udp/lpi_robocraft.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_rocket_league.cc b/decoders/lpi/libprotoident/udp/lpi_rocket_league.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_rocket_league.cc rename to decoders/lpi/libprotoident/udp/lpi_rocket_league.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_rrshare.cc b/decoders/lpi/libprotoident/udp/lpi_rrshare.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_rrshare.cc rename to decoders/lpi/libprotoident/udp/lpi_rrshare.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_rtcp.cc b/decoders/lpi/libprotoident/udp/lpi_rtcp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_rtcp.cc rename to decoders/lpi/libprotoident/udp/lpi_rtcp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_rtmfp.cc b/decoders/lpi/libprotoident/udp/lpi_rtmfp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_rtmfp.cc rename to decoders/lpi/libprotoident/udp/lpi_rtmfp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_rtp.cc b/decoders/lpi/libprotoident/udp/lpi_rtp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_rtp.cc rename to decoders/lpi/libprotoident/udp/lpi_rtp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_rulesofsurvival.cc b/decoders/lpi/libprotoident/udp/lpi_rulesofsurvival.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_rulesofsurvival.cc rename to decoders/lpi/libprotoident/udp/lpi_rulesofsurvival.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_sanandreas_mp.cc b/decoders/lpi/libprotoident/udp/lpi_sanandreas_mp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_sanandreas_mp.cc rename to decoders/lpi/libprotoident/udp/lpi_sanandreas_mp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_second_life.cc b/decoders/lpi/libprotoident/udp/lpi_second_life.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_second_life.cc rename to decoders/lpi/libprotoident/udp/lpi_second_life.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_serialnumberd.cc b/decoders/lpi/libprotoident/udp/lpi_serialnumberd.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_serialnumberd.cc rename to decoders/lpi/libprotoident/udp/lpi_serialnumberd.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_sip.cc b/decoders/lpi/libprotoident/udp/lpi_sip.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_sip.cc rename to decoders/lpi/libprotoident/udp/lpi_sip.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_skype.cc b/decoders/lpi/libprotoident/udp/lpi_skype.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_skype.cc rename to decoders/lpi/libprotoident/udp/lpi_skype.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_slp.cc b/decoders/lpi/libprotoident/udp/lpi_slp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_slp.cc rename to decoders/lpi/libprotoident/udp/lpi_slp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_smite.cc b/decoders/lpi/libprotoident/udp/lpi_smite.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_smite.cc rename to decoders/lpi/libprotoident/udp/lpi_smite.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_snapvpn.cc b/decoders/lpi/libprotoident/udp/lpi_snapvpn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_snapvpn.cc rename to decoders/lpi/libprotoident/udp/lpi_snapvpn.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_snmp.cc b/decoders/lpi/libprotoident/udp/lpi_snmp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_snmp.cc rename to decoders/lpi/libprotoident/udp/lpi_snmp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_sopcast.cc b/decoders/lpi/libprotoident/udp/lpi_sopcast.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_sopcast.cc rename to decoders/lpi/libprotoident/udp/lpi_sopcast.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_spamfighter.cc b/decoders/lpi/libprotoident/udp/lpi_spamfighter.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_spamfighter.cc rename to decoders/lpi/libprotoident/udp/lpi_spamfighter.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_spotify_bcast.cc b/decoders/lpi/libprotoident/udp/lpi_spotify_bcast.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_spotify_bcast.cc rename to decoders/lpi/libprotoident/udp/lpi_spotify_bcast.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_sql_worm.cc b/decoders/lpi/libprotoident/udp/lpi_sql_worm.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_sql_worm.cc rename to decoders/lpi/libprotoident/udp/lpi_sql_worm.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ssdp.cc b/decoders/lpi/libprotoident/udp/lpi_ssdp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ssdp.cc rename to decoders/lpi/libprotoident/udp/lpi_ssdp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_starcitizen.cc b/decoders/lpi/libprotoident/udp/lpi_starcitizen.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_starcitizen.cc rename to decoders/lpi/libprotoident/udp/lpi_starcitizen.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_starcraft.cc b/decoders/lpi/libprotoident/udp/lpi_starcraft.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_starcraft.cc rename to decoders/lpi/libprotoident/udp/lpi_starcraft.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_starleaf.cc b/decoders/lpi/libprotoident/udp/lpi_starleaf.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_starleaf.cc rename to decoders/lpi/libprotoident/udp/lpi_starleaf.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_steam.cc b/decoders/lpi/libprotoident/udp/lpi_steam.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_steam.cc rename to decoders/lpi/libprotoident/udp/lpi_steam.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_steam_inhomebroadcast.cc b/decoders/lpi/libprotoident/udp/lpi_steam_inhomebroadcast.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_steam_inhomebroadcast.cc rename to decoders/lpi/libprotoident/udp/lpi_steam_inhomebroadcast.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_steam_localbroadcast.cc b/decoders/lpi/libprotoident/udp/lpi_steam_localbroadcast.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_steam_localbroadcast.cc rename to decoders/lpi/libprotoident/udp/lpi_steam_localbroadcast.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_steamfriends.cc b/decoders/lpi/libprotoident/udp/lpi_steamfriends.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_steamfriends.cc rename to decoders/lpi/libprotoident/udp/lpi_steamfriends.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_storm_worm.cc b/decoders/lpi/libprotoident/udp/lpi_storm_worm.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_storm_worm.cc rename to decoders/lpi/libprotoident/udp/lpi_storm_worm.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_stun.cc b/decoders/lpi/libprotoident/udp/lpi_stun.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_stun.cc rename to decoders/lpi/libprotoident/udp/lpi_stun.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_syslog.cc b/decoders/lpi/libprotoident/udp/lpi_syslog.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_syslog.cc rename to decoders/lpi/libprotoident/udp/lpi_syslog.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_talesrunner_udp.cc b/decoders/lpi/libprotoident/udp/lpi_talesrunner_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_talesrunner_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_talesrunner_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_teamspeak.cc b/decoders/lpi/libprotoident/udp/lpi_teamspeak.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_teamspeak.cc rename to decoders/lpi/libprotoident/udp/lpi_teamspeak.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_teamviewer.cc b/decoders/lpi/libprotoident/udp/lpi_teamviewer.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_teamviewer.cc rename to decoders/lpi/libprotoident/udp/lpi_teamviewer.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_teredo.cc b/decoders/lpi/libprotoident/udp/lpi_teredo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_teredo.cc rename to decoders/lpi/libprotoident/udp/lpi_teredo.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_tf2.cc b/decoders/lpi/libprotoident/udp/lpi_tf2.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_tf2.cc rename to decoders/lpi/libprotoident/udp/lpi_tf2.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_tftp.cc b/decoders/lpi/libprotoident/udp/lpi_tftp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_tftp.cc rename to decoders/lpi/libprotoident/udp/lpi_tftp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_thecrew.cc b/decoders/lpi/libprotoident/udp/lpi_thecrew.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_thecrew.cc rename to decoders/lpi/libprotoident/udp/lpi_thecrew.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_thq.cc b/decoders/lpi/libprotoident/udp/lpi_thq.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_thq.cc rename to decoders/lpi/libprotoident/udp/lpi_thq.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_torchlight2.cc b/decoders/lpi/libprotoident/udp/lpi_torchlight2.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_torchlight2.cc rename to decoders/lpi/libprotoident/udp/lpi_torchlight2.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_tox.cc b/decoders/lpi/libprotoident/udp/lpi_tox.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_tox.cc rename to decoders/lpi/libprotoident/udp/lpi_tox.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_traceroute.cc b/decoders/lpi/libprotoident/udp/lpi_traceroute.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_traceroute.cc rename to decoders/lpi/libprotoident/udp/lpi_traceroute.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_tremulous.cc b/decoders/lpi/libprotoident/udp/lpi_tremulous.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_tremulous.cc rename to decoders/lpi/libprotoident/udp/lpi_tremulous.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_turbovpn.cc b/decoders/lpi/libprotoident/udp/lpi_turbovpn.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_turbovpn.cc rename to decoders/lpi/libprotoident/udp/lpi_turbovpn.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_tvants.cc b/decoders/lpi/libprotoident/udp/lpi_tvants.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_tvants.cc rename to decoders/lpi/libprotoident/udp/lpi_tvants.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ubisoft_games.cc b/decoders/lpi/libprotoident/udp/lpi_ubisoft_games.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ubisoft_games.cc rename to decoders/lpi/libprotoident/udp/lpi_ubisoft_games.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_umeye.cc b/decoders/lpi/libprotoident/udp/lpi_umeye.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_umeye.cc rename to decoders/lpi/libprotoident/udp/lpi_umeye.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_unreal.cc b/decoders/lpi/libprotoident/udp/lpi_unreal.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_unreal.cc rename to decoders/lpi/libprotoident/udp/lpi_unreal.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_ventrilo.cc b/decoders/lpi/libprotoident/udp/lpi_ventrilo.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_ventrilo.cc rename to decoders/lpi/libprotoident/udp/lpi_ventrilo.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_viber.cc b/decoders/lpi/libprotoident/udp/lpi_viber.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_viber.cc rename to decoders/lpi/libprotoident/udp/lpi_viber.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_vivox.cc b/decoders/lpi/libprotoident/udp/lpi_vivox.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_vivox.cc rename to decoders/lpi/libprotoident/udp/lpi_vivox.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_vpnmaster.cc b/decoders/lpi/libprotoident/udp/lpi_vpnmaster.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_vpnmaster.cc rename to decoders/lpi/libprotoident/udp/lpi_vpnmaster.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_vpnrobot_udp.cc b/decoders/lpi/libprotoident/udp/lpi_vpnrobot_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_vpnrobot_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_vpnrobot_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_vxworks_exploit.cc b/decoders/lpi/libprotoident/udp/lpi_vxworks_exploit.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_vxworks_exploit.cc rename to decoders/lpi/libprotoident/udp/lpi_vxworks_exploit.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_warthunder.cc b/decoders/lpi/libprotoident/udp/lpi_warthunder.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_warthunder.cc rename to decoders/lpi/libprotoident/udp/lpi_warthunder.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_webex.cc b/decoders/lpi/libprotoident/udp/lpi_webex.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_webex.cc rename to decoders/lpi/libprotoident/udp/lpi_webex.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_wechat_udp.cc b/decoders/lpi/libprotoident/udp/lpi_wechat_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_wechat_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_wechat_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_winmessage.cc b/decoders/lpi/libprotoident/udp/lpi_winmessage.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_winmessage.cc rename to decoders/lpi/libprotoident/udp/lpi_winmessage.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_wireguard.cc b/decoders/lpi/libprotoident/udp/lpi_wireguard.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_wireguard.cc rename to decoders/lpi/libprotoident/udp/lpi_wireguard.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_wolfet.cc b/decoders/lpi/libprotoident/udp/lpi_wolfet.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_wolfet.cc rename to decoders/lpi/libprotoident/udp/lpi_wolfet.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_worm_22105.cc b/decoders/lpi/libprotoident/udp/lpi_worm_22105.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_worm_22105.cc rename to decoders/lpi/libprotoident/udp/lpi_worm_22105.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_xfire_p2p.cc b/decoders/lpi/libprotoident/udp/lpi_xfire_p2p.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_xfire_p2p.cc rename to decoders/lpi/libprotoident/udp/lpi_xfire_p2p.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_xlsp.cc b/decoders/lpi/libprotoident/udp/lpi_xlsp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_xlsp.cc rename to decoders/lpi/libprotoident/udp/lpi_xlsp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_xunlei.cc b/decoders/lpi/libprotoident/udp/lpi_xunlei.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_xunlei.cc rename to decoders/lpi/libprotoident/udp/lpi_xunlei.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_xunlei_jsq.cc b/decoders/lpi/libprotoident/udp/lpi_xunlei_jsq.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_xunlei_jsq.cc rename to decoders/lpi/libprotoident/udp/lpi_xunlei_jsq.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_xunyou.cc b/decoders/lpi/libprotoident/udp/lpi_xunyou.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_xunyou.cc rename to decoders/lpi/libprotoident/udp/lpi_xunyou.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_youdao_dict.cc b/decoders/lpi/libprotoident/udp/lpi_youdao_dict.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_youdao_dict.cc rename to decoders/lpi/libprotoident/udp/lpi_youdao_dict.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_youku.cc b/decoders/lpi/libprotoident/udp/lpi_youku.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_youku.cc rename to decoders/lpi/libprotoident/udp/lpi_youku.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_yuanfudao.cc b/decoders/lpi/libprotoident/udp/lpi_yuanfudao.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_yuanfudao.cc rename to decoders/lpi/libprotoident/udp/lpi_yuanfudao.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_yy_udp.cc b/decoders/lpi/libprotoident/udp/lpi_yy_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_yy_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_yy_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_zalo_call.cc b/decoders/lpi/libprotoident/udp/lpi_zalo_call.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_zalo_call.cc rename to decoders/lpi/libprotoident/udp/lpi_zalo_call.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_zeroaccess_udp.cc b/decoders/lpi/libprotoident/udp/lpi_zeroaccess_udp.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_zeroaccess_udp.cc rename to decoders/lpi/libprotoident/udp/lpi_zeroaccess_udp.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/lpi_zoom.cc b/decoders/lpi/libprotoident/udp/lpi_zoom.cc similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/lpi_zoom.cc rename to decoders/lpi/libprotoident/udp/lpi_zoom.cc diff --git a/decoders/glimpse_detector/libprotoident/udp/udp_protocols.h b/decoders/lpi/libprotoident/udp/udp_protocols.h similarity index 100% rename from decoders/glimpse_detector/libprotoident/udp/udp_protocols.h rename to decoders/lpi/libprotoident/udp/udp_protocols.h diff --git a/decoders/glimpse_detector/libprotoident/version.map b/decoders/lpi/libprotoident/version.map similarity index 100% rename from decoders/glimpse_detector/libprotoident/version.map rename to decoders/lpi/libprotoident/version.map diff --git a/decoders/glimpse_detector/app_l7_protocol.cpp b/decoders/lpi/lpi_plugin.cpp similarity index 77% rename from decoders/glimpse_detector/app_l7_protocol.cpp rename to decoders/lpi/lpi_plugin.cpp index 12750af..f927456 100644 --- a/decoders/glimpse_detector/app_l7_protocol.cpp +++ b/decoders/lpi/lpi_plugin.cpp @@ -13,9 +13,6 @@ #include "uthash/uthash.h" -//#include -//#include - #include "stellar/utils.h" @@ -26,18 +23,17 @@ #include "stellar/packet.h" #include "stellar/appid.h" -#include "app_l7_protocol.h" +#include "lpi_plugin.h" const char *dns_name="DNS"; const char *imap_name="IMAP"; const char *quic_name="QUIC"; const char *g_app_proto_conffile="./tsgconf/main.conf"; -const char *l7_protocol_file = (char *)"./tsgconf/tsg_l7_protocol.conf"; -const char *log_path = (char *)"./tsglog/glimpse_detector/glimpse_detector"; +const char *log_path = (char *)"./tsglog/lpi/"; -struct glimpse_detector_schema +struct lpi_plugin_env { int level; int max_pkts; @@ -49,9 +45,6 @@ struct glimpse_detector_schema int plugin_id; struct stellar *st; char log_path[128]; - char l7_label_name[128]; - char l7_bridge_name[128]; - char l7_library_name[128]; char l7_protocol_file[128]; struct l7_protocol_hash *name_by_id; void *logger; @@ -156,36 +149,8 @@ static void get_host_order_port(struct session *sess __unused, unsigned short *s { *sport=0; *dport=0; -#if 0 - // DONE: get host order port from session api 1.0 - enum session_addr_type addr_type; - struct session_addr *addr=session_get0_addr(sess, &addr_type); - unsigned short n_sport = (addr_type == SESSION_ADDR_TYPE_IPV4_TCP || addr_type == SESSION_ADDR_TYPE_IPV4_UDP) ? (addr->ipv4.sport) : ( (addr_type == SESSION_ADDR_TYPE_IPV6_TCP || addr_type == SESSION_ADDR_TYPE_IPV6_UDP) ? (addr->ipv6.sport) : 0); - unsigned short n_dport = (addr_type == SESSION_ADDR_TYPE_IPV4_TCP || addr_type == SESSION_ADDR_TYPE_IPV4_UDP) ? (addr->ipv4.dport) : ( (addr_type == SESSION_ADDR_TYPE_IPV6_TCP || addr_type == SESSION_ADDR_TYPE_IPV6_UDP) ? (addr->ipv6.dport) : 0); - //unsigned short n_dport = (pstream->addr.addrtype == ADDR_TYPE_IPV4) ? (pstream->addr.tuple4_v4->dest) : ( (pstream->addr.addrtype == ADDR_TYPE_IPV6) ? (pstream->addr.tuple4_v6->dest) : 0); - - *sport=ntohs(n_sport); - *dport=ntohs(n_dport); -#else //get host order port from stellar session api - #if 0 - const struct tuple6 *t6 = session_get_tuple6(sess); - enum flow_direction flow_dir = session_get_tuple6_direction(sess); - if(flow_dir == FLOW_DIRECTION_C2S) - { - *sport = ntohs(t6->src_port); - *dport = ntohs(t6->dst_port); - } - else - { - *sport = ntohs(t6->dst_port); - *dport = ntohs(t6->src_port); - - } - #endif - - const struct packet *pkt = session_get0_current_packet(sess); enum flow_direction flow_dir=session_get_current_flow_direction(sess); if(pkt && (flow_dir==FLOW_DIRECTION_C2S || flow_dir==FLOW_DIRECTION_S2C)) @@ -210,8 +175,6 @@ static void get_host_order_port(struct session *sess __unused, unsigned short *s *dport = tmp; } } -#endif - return; } @@ -364,7 +327,7 @@ static int update_protocol_id(unsigned short *old_id_array, int *old_id_num, uns return 1; } -static int l7_protocol_mapper(struct glimpse_detector_schema *g_app_proto_para, const char *filename) +static int l7_protocol_mapper(struct lpi_plugin_env *g_app_proto_para, const char *filename) { size_t i=0,ret=0; FILE *fp=NULL; @@ -567,7 +530,7 @@ int lpi_update_dpkt(lpi_data_t *data, struct session *sess, -static int app_glimpse_detector(struct session *sess, struct traffic_context *context, struct glimpse_detector_schema *g_app_proto_para, const char *scan_data, const int scan_data_len, int l4_proto) +static int lpi_detector(struct session *sess, struct traffic_context *context, struct lpi_plugin_env *g_app_proto_para, const char *scan_data, const int scan_data_len, int l4_proto) { int ret=0,is_update=0; //unsigned short sport=0, dport=0; @@ -705,27 +668,27 @@ static int app_glimpse_detector(struct session *sess, struct traffic_context *co return 1; } -static void glimpse_detector_on_session_msg(struct session *sess, int topic_id __unused, const void *msg, void *per_session_ctx __unused, void *plugin_env) +static void lpi_plugin_on_session_msg(struct session *sess, int topic_id __unused, const void *msg, void *per_session_ctx __unused, void *plugin_env) { assert(plugin_env!=NULL); if(msg==NULL)return; - struct glimpse_detector_schema *glimpse_detector_env=(struct glimpse_detector_schema *)plugin_env; + struct lpi_plugin_env *env=(struct lpi_plugin_env *)plugin_env; int identify_continue=0; - struct traffic_context *context = (struct traffic_context *)session_exdata_get(sess, glimpse_detector_env->plugin_exdata_idx); + struct traffic_context *context = (struct traffic_context *)session_exdata_get(sess, env->plugin_exdata_idx); if(context==NULL) { context= CALLOC(struct traffic_context, 1); context->is_first_payload=1; - session_exdata_set(sess, glimpse_detector_env->plugin_exdata_idx, context); + session_exdata_set(sess, env->plugin_exdata_idx, context); } //size_t payload_len=0; //const char *payload=session_get0_current_payload(sess, &payload_len); uint16_t payload_len=packet_get_payload_len((struct packet*)msg); const char *payload=packet_get_payload((struct packet*)msg); - if (payload!=NULL && payload_len>0 && context->pkt_cntmax_pkts) + if (payload!=NULL && payload_len>0 && context->pkt_cntmax_pkts) { int l4_proto=0; enum session_type type= session_get_type(sess); @@ -737,7 +700,7 @@ static void glimpse_detector_on_session_msg(struct session *sess, int topic_id _ { l4_proto=17; } - identify_continue=app_glimpse_detector(sess, context, glimpse_detector_env, payload, payload_len, l4_proto); + identify_continue=lpi_detector(sess, context, env, payload, payload_len, l4_proto); context->is_first_payload=0; } else @@ -747,91 +710,72 @@ static void glimpse_detector_on_session_msg(struct session *sess, int topic_id _ if (identify_continue==0) { - if(context->is_identify==0) - { - //MESA_handle_runtime_log(glimpse_detector_env->logger, RLOG_LV_INFO, "UNKNOWN", "addr: %s", session_get0_readable_addr(sess)); - } FREE(context); - session_exdata_set(sess, glimpse_detector_env->plugin_exdata_idx, NULL); + session_exdata_set(sess, env->plugin_exdata_idx, NULL); stellar_session_plugin_dettach_current_session(sess); } return; } -extern "C" void APP_GLIMPSE_DETECTOR_UNLOAD(void *plugin_env) +extern "C" void lpi_plugin_unload(void *plugin_env) { if(plugin_env) { - struct glimpse_detector_schema *glimpse_detector_env=(struct glimpse_detector_schema *)plugin_env; + struct lpi_plugin_env *env=(struct lpi_plugin_env *)plugin_env; lpi_free_library(); - free_l7_protocol_mapper(glimpse_detector_env->name_by_id); - //if(glimpse_detector_env->logger) - //{ - // MESA_destroy_runtime_log_handle(glimpse_detector_env->logger); - //} + free_l7_protocol_mapper(env->name_by_id); FREE(plugin_env); } } -extern "C" void * APP_GLIMPSE_DETECTOR_LOAD(struct stellar *st) +extern "C" void * lpi_plugin_load(struct stellar *st) { int ret=0; - struct glimpse_detector_schema *glimpse_detector_env=CALLOC(struct glimpse_detector_schema, 1); - glimpse_detector_env->st=st; - //MESA_load_profile_short_def(g_app_proto_conffile, "PROTO_IDENTIFY", "LOG_LEVEL", (short *)&glimpse_detector_env->level, 30); - glimpse_detector_env->max_pkts=16; - strcpy(glimpse_detector_env->l7_bridge_name,"APP_IDENTIFY_RESULT_BRIDGE"); - strcpy( glimpse_detector_env->l7_protocol_file, l7_protocol_file); - //MESA_load_profile_int_def(g_app_proto_conffile, "PROTO_IDENTIFY", "MAX_IDENTIFY_PACKETS", &glimpse_detector_env->max_pkts, 16); - //MESA_load_profile_string_def(g_app_proto_conffile, "PROTO_IDENTIFY", "LOG_PATH", glimpse_detector_env->log_path, sizeof(glimpse_detector_env->log_path), log_path); - //MESA_load_profile_string_def(g_app_proto_conffile, "SYSTEM", "APP_IDENTIFY_RESULT_BRIDGE", glimpse_detector_env->l7_bridge_name, sizeof(glimpse_detector_env->l7_bridge_name), "APP_IDENTIFY_RESULT_BRIDGE"); - //MESA_load_profile_string_def(g_app_proto_conffile, "SYSTEM", "L7_PROTOCOL_FILE", glimpse_detector_env->l7_protocol_file, sizeof(glimpse_detector_env->l7_protocol_file), l7_protocol_file); + struct lpi_plugin_env *env=CALLOC(struct lpi_plugin_env, 1); + env->st=st; + env->max_pkts=16; + strcpy( env->l7_protocol_file, "./tsgconf/tsg_l7_protocol.conf"); - //glimpse_detector_env->logger=MESA_create_runtime_log_handle(glimpse_detector_env->log_path, glimpse_detector_env->level); - //if(glimpse_detector_env->logger==NULL) - //{ - // goto INIT_ERROR; - //} ret=lpi_init_library(1); // 1, 2 or 3 if(ret<0) { goto INIT_ERROR; } - ret=l7_protocol_mapper(glimpse_detector_env,glimpse_detector_env->l7_protocol_file); + ret=l7_protocol_mapper(env,env->l7_protocol_file); if(ret<0) { goto INIT_ERROR; } - glimpse_detector_env->plugin_id=stellar_session_plugin_register(st, NULL, NULL, glimpse_detector_env); - if(glimpse_detector_env->plugin_id < 0) + env->plugin_id=stellar_session_plugin_register(st, NULL, NULL, env); + if(env->plugin_id < 0) { goto INIT_ERROR; } - glimpse_detector_env->tcp_topic_id=stellar_mq_get_topic_id(st, TOPIC_TCP_INPUT); - glimpse_detector_env->udp_topic_id=stellar_mq_get_topic_id(st, TOPIC_UDP_INPUT); - if(glimpse_detector_env->tcp_topic_id < 0 || glimpse_detector_env->udp_topic_id < 0) + env->tcp_topic_id=stellar_mq_get_topic_id(st, TOPIC_TCP_INPUT); + env->udp_topic_id=stellar_mq_get_topic_id(st, TOPIC_UDP_INPUT); + if(env->tcp_topic_id < 0 || env->udp_topic_id < 0) { perror("get tcp or udp topic id failed\n"); exit(-1); } - stellar_session_mq_subscribe(st, glimpse_detector_env->tcp_topic_id, glimpse_detector_on_session_msg, glimpse_detector_env->plugin_id); - stellar_session_mq_subscribe(st, glimpse_detector_env->udp_topic_id, glimpse_detector_on_session_msg, glimpse_detector_env->plugin_id); + stellar_session_mq_subscribe(st, env->tcp_topic_id, lpi_plugin_on_session_msg, env->plugin_id); + stellar_session_mq_subscribe(st, env->udp_topic_id, lpi_plugin_on_session_msg, env->plugin_id); - glimpse_detector_env->plugin_exdata_idx = stellar_exdata_new_index(st, "EXDATA_LPI", stellar_exdata_free_default, NULL); - glimpse_detector_env->l7_app_id_exdata_idx = stellar_exdata_new_index(st, "L7_PROTOCOL", stellar_exdata_free_default, NULL); - glimpse_detector_env->topic_id=stellar_mq_get_topic_id(st, APP_ID_MESSAGE_TOPIC); - if(glimpse_detector_env->topic_id < 0) + env->plugin_exdata_idx = stellar_exdata_new_index(st, "EXDATA_LPI", stellar_exdata_free_default, NULL); + env->l7_app_id_exdata_idx = stellar_exdata_new_index(st, "L7_PROTOCOL", stellar_exdata_free_default, NULL); + env->topic_id=stellar_mq_get_topic_id(st, APP_ID_MESSAGE_TOPIC); + if(env->topic_id < 0) { - glimpse_detector_env->topic_id=stellar_mq_create_topic(st, APP_ID_MESSAGE_TOPIC, stellar_msg_free_default, NULL); + env->topic_id=stellar_mq_create_topic(st, APP_ID_MESSAGE_TOPIC, stellar_msg_free_default, NULL); } - return glimpse_detector_env; + return env; INIT_ERROR: - APP_GLIMPSE_DETECTOR_UNLOAD(glimpse_detector_env); + lpi_plugin_unload(env); exit(-1); return NULL; diff --git a/decoders/glimpse_detector/app_l7_protocol.h b/decoders/lpi/lpi_plugin.h similarity index 100% rename from decoders/glimpse_detector/app_l7_protocol.h rename to decoders/lpi/lpi_plugin.h diff --git a/decoders/glimpse_detector/openvpn_identify.cpp b/decoders/lpi/openvpn_ident.cpp similarity index 99% rename from decoders/glimpse_detector/openvpn_identify.cpp rename to decoders/lpi/openvpn_ident.cpp index fdf4871..5c40eaf 100644 --- a/decoders/glimpse_detector/openvpn_identify.cpp +++ b/decoders/lpi/openvpn_ident.cpp @@ -24,7 +24,7 @@ #include #include -#include "app_l7_protocol.h" +#include "lpi_plugin.h" /* * OpenVPN TCP / UDP Detection - 128/160 hmac * diff --git a/decoders/glimpse_detector/quic_identify.cpp b/decoders/lpi/quic_ident.cpp similarity index 99% rename from decoders/glimpse_detector/quic_identify.cpp rename to decoders/lpi/quic_ident.cpp index 2bda374..f1d5659 100644 --- a/decoders/glimpse_detector/quic_identify.cpp +++ b/decoders/lpi/quic_ident.cpp @@ -1,5 +1,5 @@ #include -#include "app_l7_protocol.h" +#include "lpi_plugin.h" #define GQUIC_PUBLIC_FLAG_VERSION 0x01 #define GQUIC_PUBLIC_FLAG_RST 0x02 diff --git a/decoders/lpi/version.map b/decoders/lpi/version.map new file mode 100644 index 0000000..63ee411 --- /dev/null +++ b/decoders/lpi/version.map @@ -0,0 +1,10 @@ +VERS_2.4{ +global: +extern "C" { + lpi_plugin_load; + lpi_plugin_unload; + GIT_VERSION_*; +}; + +local: *; +}; diff --git a/infra/CMakeLists.txt b/infra/CMakeLists.txt index 64d002c..9547caa 100644 --- a/infra/CMakeLists.txt +++ b/infra/CMakeLists.txt @@ -1,3 +1,8 @@ +set(LIBRARY session_manager plugin_manager ip_reassembly packet_io snowflake packet pthread fieldstat4 toml nmx_pool) +set(PLUGIN http lpi) + +include_directories(${CMAKE_SOURCE_DIR}/infra) + add_subdirectory(log) add_subdirectory(tuple) add_subdirectory(packet_parser) diff --git a/infra/core/CMakeLists.txt b/infra/core/CMakeLists.txt index eb0a589..0867688 100644 --- a/infra/core/CMakeLists.txt +++ b/infra/core/CMakeLists.txt @@ -1,7 +1,4 @@ set(SOURCE stellar_config.c stellar_stat.c stellar_core.c) -set(LIBRARY session_manager plugin_manager ip_reassembly packet_io snowflake packet pthread fieldstat4 toml nmx_pool) - -set(PLUGIN http glimpse_detector) add_library(core STATIC ${SOURCE}) target_link_libraries(core PUBLIC ${LIBRARY}) @@ -9,3 +6,4 @@ target_link_libraries(core PUBLIC ${LIBRARY}) add_library(stellar_devel SHARED ${SOURCE}) set_target_properties(stellar_devel PROPERTIES LINK_FLAGS "-Wl,--version-script=${CMAKE_CURRENT_LIST_DIR}/version.map") target_link_libraries(stellar_devel PRIVATE -Wl,--whole-archive ${LIBRARY} -Wl,--no-whole-archive) + diff --git a/infra/core/version.map b/infra/core/version.map index 1655976..abb7f9b 100644 --- a/infra/core/version.map +++ b/infra/core/version.map @@ -72,8 +72,8 @@ global: http_decoder_tcp_stream_msg_cb; http_tunnel_message_*; - APP_GLIMPSE_DETECTOR_LOAD; - APP_GLIMPSE_DETECTOR_UNLOAD; + lpi_plugin_load; + lpi_plugin_unload; local: *; }; diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 12733a7..7f8f9f0 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,5 +1,5 @@ add_subdirectory(packet_inject) add_subdirectory(packet_tool) add_subdirectory(debug_plugin) -add_subdirectory(glimpse_detector) +add_subdirectory(lpi_plugin) add_subdirectory(decoders/http) diff --git a/test/glimpse_detector/test_config/spec.toml b/test/glimpse_detector/test_config/spec.toml deleted file mode 100644 index 2027b1e..0000000 --- a/test/glimpse_detector/test_config/spec.toml +++ /dev/null @@ -1,11 +0,0 @@ -# stellar_plugin.toml -# -[[plugin]] -path = "" -init = "APP_GLIMPSE_DETECTOR_LOAD" -exit = "APP_GLIMPSE_DETECTOR_UNLOAD" - -[[plugin]] -path = "" -init = "GLIMPSE_DETECTOR_TEST_PLUG_LOAD" -exit = "GLIMPSE_DETECTOR_TEST_PLUG_UNLOAD" diff --git a/test/glimpse_detector/CMakeLists.txt b/test/lpi_plugin/CMakeLists.txt similarity index 67% rename from test/glimpse_detector/CMakeLists.txt rename to test/lpi_plugin/CMakeLists.txt index bfa5e2e..96f61d8 100644 --- a/test/glimpse_detector/CMakeLists.txt +++ b/test/lpi_plugin/CMakeLists.txt @@ -1,20 +1,20 @@ -add_executable(gtest_glimpse_detector gtest_glimpse_detector_main.cpp gtest_glimpse_detector_plugin.cpp) +add_executable(gtest_lpi gtest_lpi_main.cpp gtest_lpi_plugin.cpp) -target_include_directories(gtest_glimpse_detector PRIVATE ${CMAKE_SOURCE_DIR}/deps/) -target_include_directories(gtest_glimpse_detector PRIVATE ${CMAKE_SOURCE_DIR}/decoders/glimpse_detector) +target_include_directories(gtest_lpi PRIVATE ${CMAKE_SOURCE_DIR}/deps/) +target_include_directories(gtest_lpi PRIVATE ${CMAKE_SOURCE_DIR}/decoders/lpi) target_link_libraries( -gtest_glimpse_detector PRIVATE stellar_devel glimpse_detector cjson-static -dl "-rdynamic" -gtest gmock + gtest_lpi PRIVATE stellar_devel cjson-static + dl "-rdynamic" + gtest gmock ) -target_link_libraries(gtest_glimpse_detector PRIVATE -Wl,--whole-archive glimpse_detector -Wl,--no-whole-archive) +target_link_libraries(gtest_lpi PRIVATE -Wl,--whole-archive lpi -Wl,--no-whole-archive) +set(TEST_NAME "LPI_TEST") +set(TEST_MAIN ${CMAKE_CURRENT_BINARY_DIR}/gtest_lpi) -set(TEST_MAIN ${CMAKE_CURRENT_BINARY_DIR}/gtest_glimpse_detector) - -add_test(NAME GLIMPSE_TEST_SETUP COMMAND sh -c " +add_test(NAME ${TEST_NAME}.setup COMMAND sh -c " mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/conf && mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/plugin && mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/log && @@ -28,26 +28,31 @@ add_test(NAME GLIMPSE_TEST_SETUP COMMAND sh -c " ") -set_tests_properties(GLIMPSE_TEST_SETUP - PROPERTIES FIXTURES_SETUP GLIMPSE_TEST_SETUP) +set_tests_properties(${TEST_NAME}.setup + PROPERTIES FIXTURES_SETUP ${TEST_NAME}.setup) -add_test(NAME GLIMPSE_TEST_APP +add_test(NAME ${TEST_NAME}.app COMMAND sh -c "find ${CMAKE_CURRENT_SOURCE_DIR}/test_pcap/app_pcap -type f | sort -V | ${TEST_MAIN} ${CMAKE_CURRENT_SOURCE_DIR}/test_expect/app_pcap.json") -add_test(NAME GLIMPSE_TEST_DNS +add_test(NAME ${TEST_NAME}.dns COMMAND sh -c "find ${CMAKE_CURRENT_SOURCE_DIR}/test_pcap/dns_pcap -type f | sort -V | ${TEST_MAIN} ${CMAKE_CURRENT_SOURCE_DIR}/test_expect/dns_pcap.json") -add_test(NAME GLIMPSE_TEST_MIXED +add_test(NAME ${TEST_NAME}.mixed COMMAND sh -c "find ${CMAKE_CURRENT_SOURCE_DIR}/test_pcap/mixed_pcap -type f | sort -V |${TEST_MAIN} ${CMAKE_CURRENT_SOURCE_DIR}/test_expect/mixed_pcap.json") -add_test(NAME GLIMPSE_TEST_OPENVPN +add_test(NAME ${TEST_NAME}.openvpn COMMAND sh -c "find ${CMAKE_CURRENT_SOURCE_DIR}/test_pcap/openvpn_pcap -type f | sort -V |${TEST_MAIN} ${CMAKE_CURRENT_SOURCE_DIR}/test_expect/openvpn_pcap.json") -add_test(NAME GLIMPSE_TEST_PPP +add_test(NAME ${TEST_NAME}.ppp COMMAND sh -c "find ${CMAKE_CURRENT_SOURCE_DIR}/test_pcap/ppp_pcap -type f | sort -V | ${TEST_MAIN} ${CMAKE_CURRENT_SOURCE_DIR}/test_expect/ppp_pcap.json") -add_test(NAME GLIMPSE_TEST_SOCKS +add_test(NAME ${TEST_NAME}.socks COMMAND sh -c "find ${CMAKE_CURRENT_SOURCE_DIR}/test_pcap/socks_pcap -type f | sort -V | ${TEST_MAIN} ${CMAKE_CURRENT_SOURCE_DIR}/test_expect/socks_pcap.json") -set_tests_properties(GLIMPSE_TEST_APP GLIMPSE_TEST_DNS GLIMPSE_TEST_MIXED GLIMPSE_TEST_OPENVPN GLIMPSE_TEST_PPP GLIMPSE_TEST_SOCKS - PROPERTIES FIXTURES_REQUIRED GLIMPSE_TEST_SETUP) \ No newline at end of file +set_tests_properties(${TEST_NAME}.app + ${TEST_NAME}.dns + ${TEST_NAME}.mixed + ${TEST_NAME}.openvpn + ${TEST_NAME}.ppp + ${TEST_NAME}.socks + PROPERTIES FIXTURES_REQUIRED ${TEST_NAME}.setup) \ No newline at end of file diff --git a/test/glimpse_detector/gtest_glimpse_detector_main.cpp b/test/lpi_plugin/gtest_lpi_main.cpp similarity index 100% rename from test/glimpse_detector/gtest_glimpse_detector_main.cpp rename to test/lpi_plugin/gtest_lpi_main.cpp diff --git a/test/glimpse_detector/gtest_glimpse_detector_plugin.cpp b/test/lpi_plugin/gtest_lpi_plugin.cpp similarity index 67% rename from test/glimpse_detector/gtest_glimpse_detector_plugin.cpp rename to test/lpi_plugin/gtest_lpi_plugin.cpp index 4677630..fbf4b9c 100644 --- a/test/glimpse_detector/gtest_glimpse_detector_plugin.cpp +++ b/test/lpi_plugin/gtest_lpi_plugin.cpp @@ -5,7 +5,7 @@ #include #include -#include "app_l7_protocol.h" +#include "lpi_plugin.h" #include "stellar/stellar.h" #include "stellar/session.h" @@ -16,7 +16,7 @@ #define MAX_APP_ID_VALUE 10000 -struct glimpse_detector_test_plugin_env +struct lpi_test_plugin_env { int test_exdata_idx; int l7_exdata_idx; @@ -26,7 +26,7 @@ struct glimpse_detector_test_plugin_env char *g_proto_id2name[MAX_APP_ID_VALUE]; }; -static int load_l7_protocol_mapper(const char *filename, struct glimpse_detector_test_plugin_env *env) +static int load_l7_protocol_mapper(const char *filename, struct lpi_test_plugin_env *env) { memset(env->g_proto_id2name, 0, sizeof(env->g_proto_id2name)); int ret=0, proto_id=0;; @@ -62,7 +62,7 @@ static int load_l7_protocol_mapper(const char *filename, struct glimpse_detector return ret; } -static void publish_session_test_result(struct glimpse_detector_test_plugin_env *env, cJSON *ctx, struct session *sess) +static void publish_session_test_result(struct lpi_test_plugin_env *env, cJSON *ctx, struct session *sess) { assert(env->l7_exdata_idx >= 0 && ctx != NULL); struct l7_protocol_label *label = (struct l7_protocol_label *)session_exdata_get(sess, env->l7_exdata_idx);; @@ -109,7 +109,7 @@ static void publish_session_test_result(struct glimpse_detector_test_plugin_env } - void *glimpse_detector_test_ctx_new(struct session *sess, void *plugin_env) + void *lpi_test_ctx_new(struct session *sess, void *plugin_env) { cJSON *ctx =cJSON_CreateObject(); cJSON_AddStringToObject(ctx, "Tuple4", session_get0_readable_addr(sess)); @@ -125,45 +125,37 @@ static void publish_session_test_result(struct glimpse_detector_test_plugin_env return ctx; } -static void APP_TEST_ON_SESSION_MSG(struct session *sess, int topic_id, const void *msg, void *per_session_ctx, void *plugin_env) +static void gtest_lpi_plugin_on_msg(struct session *sess, int topic_id, const void *msg, void *per_session_ctx, void *plugin_env) { if(session_get_current_state(sess)==SESSION_STATE_CLOSED) { - publish_session_test_result((struct glimpse_detector_test_plugin_env*)plugin_env, (cJSON *)per_session_ctx, sess); + publish_session_test_result((struct lpi_test_plugin_env*)plugin_env, (cJSON *)per_session_ctx, sess); } return; } -extern "C" void *GLIMPSE_DETECTOR_TEST_PLUG_LOAD(struct stellar *st) +extern "C" void *gtest_lpi_plugin_load(struct stellar *st) { - struct glimpse_detector_test_plugin_env *env = (struct glimpse_detector_test_plugin_env *)calloc(1, sizeof(struct glimpse_detector_test_plugin_env)); + struct lpi_test_plugin_env *env = (struct lpi_test_plugin_env *)calloc(1, sizeof(struct lpi_test_plugin_env)); env->st=st; const char *l7_proto_name=(const char*)"./tsgconf/tsg_l7_protocol.conf"; -#if 0 - const char *l7_label_name=(const char*)"L7_PROTOCOL_LABEL"; - const char *l7_bridge_name=(const char*)"APP_BRIDGE"; - MESA_load_profile_string_def("./tsgconf/main.conf", "SYSTEM", "L7_LABEL_NAME", l7_label_name, sizeof(l7_label_name), "L7_PROTOCOL_LABEL"); - MESA_load_profile_string_def("./tsgconf/main.conf", "SYSTEM", "APP_BRIDGE_NAME", l7_bridge_name, sizeof(l7_bridge_name), "APP_BRIDGE"); - MESA_load_profile_string_def("./tsgconf/main.conf", "SYSTEM", "L7_PROTOCOL_FILE", l7_proto_name, sizeof(l7_proto_name), "./tsgconf/tsg_l7_protocol.conf"); -#endif - env->l7_exdata_idx= stellar_exdata_new_index(st, "L7_PROTOCOL", stellar_exdata_free_default, NULL); env->test_exdata_idx= stellar_exdata_new_index(st, "APP_PROTO_TEST", stellar_exdata_free_default, NULL); if(env->l7_exdata_idx<0 || env->test_exdata_idx<0) { - perror("GLIMPSE_DETECTOR_TEST_PLUG_INIT:stellar_session_get_ex_new_index faild!!!\n"); + perror("gtest_lpi_plugin_load:stellar_session_get_ex_new_index faild!!!\n"); exit(-1); } if(load_l7_protocol_mapper(l7_proto_name, env)<0) { - perror("GLIMPSE_DETECTOR_TEST_PLUG_INIT:l7_protocol_mapper failed !!!\n"); + perror("gtest_lpi_plugin_load:l7_protocol_mapper failed !!!\n"); exit(-1); } - env->test_app_plugin_id=stellar_session_plugin_register(st, glimpse_detector_test_ctx_new, NULL, env); + env->test_app_plugin_id=stellar_session_plugin_register(st, lpi_test_ctx_new, NULL, env); if(env->test_app_plugin_id < 0) { - perror("GLIMPSE_DETECTOR_TEST_PLUG_INIT:stellar_plugin_register failed !!!\n"); + perror("gtest_lpi_plugin_load:stellar_plugin_register failed !!!\n"); exit(-1); } @@ -171,26 +163,26 @@ extern "C" void *GLIMPSE_DETECTOR_TEST_PLUG_LOAD(struct stellar *st) int udp_topic_id=stellar_mq_get_topic_id(st, TOPIC_UDP_INPUT); if(tcp_topic_id < 0 || udp_topic_id < 0) { - perror("GLIMPSE_DETECTOR_TEST get tcp or udp topic id failed\n"); + perror("gtest_lpi_plugin_load get tcp or udp topic id failed\n"); exit(-1); } - stellar_session_mq_subscribe(st, tcp_topic_id, APP_TEST_ON_SESSION_MSG, env->test_app_plugin_id); - stellar_session_mq_subscribe(st, udp_topic_id, APP_TEST_ON_SESSION_MSG, env->test_app_plugin_id); + stellar_session_mq_subscribe(st, tcp_topic_id, gtest_lpi_plugin_on_msg, env->test_app_plugin_id); + stellar_session_mq_subscribe(st, udp_topic_id, gtest_lpi_plugin_on_msg, env->test_app_plugin_id); env->expect_json_topic_id = stellar_mq_create_topic(st, "EXPECT_JSON", stellar_msg_free_default, NULL); - printf("GLIMPSE_DETECTOR_TEST_PLUG_LOAD OK!\n"); + printf("gtest_lpi_plugin_load OK!\n"); return env; } -extern "C" void GLIMPSE_DETECTOR_TEST_PLUG_UNLOAD(void *plugin_env) +extern "C" void gtest_lpi_plugin_unload(void *plugin_env) { - struct glimpse_detector_test_plugin_env *env = (struct glimpse_detector_test_plugin_env *)plugin_env; + struct lpi_test_plugin_env *env = (struct lpi_test_plugin_env *)plugin_env; for(int i = 0; i < MAX_APP_ID_VALUE; i++) { if(env->g_proto_id2name[i])free(env->g_proto_id2name[i]); } free(env); - printf("GLIMPSE_DETECTOR_TEST_PLUG_UNLOAD OK!\n"); + printf("gtest_lpi_plugin_unload OK!\n"); return ; } diff --git a/test/lpi_plugin/test_config/spec.toml b/test/lpi_plugin/test_config/spec.toml new file mode 100644 index 0000000..386346f --- /dev/null +++ b/test/lpi_plugin/test_config/spec.toml @@ -0,0 +1,11 @@ +# stellar_plugin.toml +# +[[plugin]] +path = "" +init = "lpi_plugin_load" +exit = "lpi_plugin_unload" + +[[plugin]] +path = "" +init = "gtest_lpi_plugin_load" +exit = "gtest_lpi_plugin_unload" diff --git a/test/glimpse_detector/test_config/tsg_l7_protocol.conf b/test/lpi_plugin/test_config/tsg_l7_protocol.conf similarity index 100% rename from test/glimpse_detector/test_config/tsg_l7_protocol.conf rename to test/lpi_plugin/test_config/tsg_l7_protocol.conf diff --git a/test/glimpse_detector/test_expect/app_pcap.json b/test/lpi_plugin/test_expect/app_pcap.json similarity index 100% rename from test/glimpse_detector/test_expect/app_pcap.json rename to test/lpi_plugin/test_expect/app_pcap.json diff --git a/test/glimpse_detector/test_expect/dns_pcap.json b/test/lpi_plugin/test_expect/dns_pcap.json similarity index 100% rename from test/glimpse_detector/test_expect/dns_pcap.json rename to test/lpi_plugin/test_expect/dns_pcap.json diff --git a/test/glimpse_detector/test_expect/empty_array.json b/test/lpi_plugin/test_expect/empty_array.json similarity index 100% rename from test/glimpse_detector/test_expect/empty_array.json rename to test/lpi_plugin/test_expect/empty_array.json diff --git a/test/glimpse_detector/test_expect/mixed_pcap.json b/test/lpi_plugin/test_expect/mixed_pcap.json similarity index 100% rename from test/glimpse_detector/test_expect/mixed_pcap.json rename to test/lpi_plugin/test_expect/mixed_pcap.json diff --git a/test/glimpse_detector/test_expect/openvpn_pcap.json b/test/lpi_plugin/test_expect/openvpn_pcap.json similarity index 100% rename from test/glimpse_detector/test_expect/openvpn_pcap.json rename to test/lpi_plugin/test_expect/openvpn_pcap.json diff --git a/test/glimpse_detector/test_expect/ppp_pcap.json b/test/lpi_plugin/test_expect/ppp_pcap.json similarity index 100% rename from test/glimpse_detector/test_expect/ppp_pcap.json rename to test/lpi_plugin/test_expect/ppp_pcap.json diff --git a/test/glimpse_detector/test_expect/socks_pcap.json b/test/lpi_plugin/test_expect/socks_pcap.json similarity index 100% rename from test/glimpse_detector/test_expect/socks_pcap.json rename to test/lpi_plugin/test_expect/socks_pcap.json diff --git a/test/glimpse_detector/test_pcap/app_pcap/1-qq_59361.pcap b/test/lpi_plugin/test_pcap/app_pcap/1-qq_59361.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/app_pcap/1-qq_59361.pcap rename to test/lpi_plugin/test_pcap/app_pcap/1-qq_59361.pcap diff --git a/test/glimpse_detector/test_pcap/app_pcap/2-qq_8758.pcap b/test/lpi_plugin/test_pcap/app_pcap/2-qq_8758.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/app_pcap/2-qq_8758.pcap rename to test/lpi_plugin/test_pcap/app_pcap/2-qq_8758.pcap diff --git a/test/glimpse_detector/test_pcap/app_pcap/3-wechat_51876.pcap b/test/lpi_plugin/test_pcap/app_pcap/3-wechat_51876.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/app_pcap/3-wechat_51876.pcap rename to test/lpi_plugin/test_pcap/app_pcap/3-wechat_51876.pcap diff --git a/test/glimpse_detector/test_pcap/app_pcap/4-wechat_8080.pcap b/test/lpi_plugin/test_pcap/app_pcap/4-wechat_8080.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/app_pcap/4-wechat_8080.pcap rename to test/lpi_plugin/test_pcap/app_pcap/4-wechat_8080.pcap diff --git a/test/glimpse_detector/test_pcap/app_pcap/5-wireguard.pcap b/test/lpi_plugin/test_pcap/app_pcap/5-wireguard.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/app_pcap/5-wireguard.pcap rename to test/lpi_plugin/test_pcap/app_pcap/5-wireguard.pcap diff --git a/test/glimpse_detector/test_pcap/app_pcap/6-wireguard1.pcap b/test/lpi_plugin/test_pcap/app_pcap/6-wireguard1.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/app_pcap/6-wireguard1.pcap rename to test/lpi_plugin/test_pcap/app_pcap/6-wireguard1.pcap diff --git a/test/glimpse_detector/test_pcap/app_pcap/7-wireguard2.pcap b/test/lpi_plugin/test_pcap/app_pcap/7-wireguard2.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/app_pcap/7-wireguard2.pcap rename to test/lpi_plugin/test_pcap/app_pcap/7-wireguard2.pcap diff --git a/test/glimpse_detector/test_pcap/dns_pcap/1-dns-tcp-single-53-124.88.175.201-8.8.8.8.pcap b/test/lpi_plugin/test_pcap/dns_pcap/1-dns-tcp-single-53-124.88.175.201-8.8.8.8.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/dns_pcap/1-dns-tcp-single-53-124.88.175.201-8.8.8.8.pcap rename to test/lpi_plugin/test_pcap/dns_pcap/1-dns-tcp-single-53-124.88.175.201-8.8.8.8.pcap diff --git a/test/glimpse_detector/test_pcap/dns_pcap/2-dns-tcp-single-53-60.13.179.249-8.8.8.8.pcap b/test/lpi_plugin/test_pcap/dns_pcap/2-dns-tcp-single-53-60.13.179.249-8.8.8.8.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/dns_pcap/2-dns-tcp-single-53-60.13.179.249-8.8.8.8.pcap rename to test/lpi_plugin/test_pcap/dns_pcap/2-dns-tcp-single-53-60.13.179.249-8.8.8.8.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/01-http-not-ftp.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/01-http-not-ftp.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/01-http-not-ftp.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/01-http-not-ftp.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/02-stun-rtcp-rtp-22005-8000-39.144.206.199-117.156.19.31.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/02-stun-rtcp-rtp-22005-8000-39.144.206.199-117.156.19.31.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/02-stun-rtcp-rtp-22005-8000-39.144.206.199-117.156.19.31.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/02-stun-rtcp-rtp-22005-8000-39.144.206.199-117.156.19.31.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/03-ftp-37923-21121-117.145.115.74-218.31.124.234.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/03-ftp-37923-21121-117.145.115.74-218.31.124.234.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/03-ftp-37923-21121-117.145.115.74-218.31.124.234.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/03-ftp-37923-21121-117.145.115.74-218.31.124.234.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/04-mail_smtp_port_18867_25.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/04-mail_smtp_port_18867_25.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/04-mail_smtp_port_18867_25.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/04-mail_smtp_port_18867_25.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/05-ftp_port_21121-double.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/05-ftp_port_21121-double.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/05-ftp_port_21121-double.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/05-ftp_port_21121-double.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/06-ftp_port_21121-s2c.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/06-ftp_port_21121-s2c.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/06-ftp_port_21121-s2c.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/06-ftp_port_21121-s2c.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/07-ftp_port_21121-c2s.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/07-ftp_port_21121-c2s.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/07-ftp_port_21121-c2s.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/07-ftp_port_21121-c2s.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/08-gquic-023-85.117.117.169.47762-173.194.73.95.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/08-gquic-023-85.117.117.169.47762-173.194.73.95.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/08-gquic-023-85.117.117.169.47762-173.194.73.95.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/08-gquic-023-85.117.117.169.47762-173.194.73.95.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/09-gquic-025-85.117.113.98.4340-74.125.131.95.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/09-gquic-025-85.117.113.98.4340-74.125.131.95.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/09-gquic-025-85.117.113.98.4340-74.125.131.95.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/09-gquic-025-85.117.113.98.4340-74.125.131.95.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/10-gquic-033-90.143.189.5.8026-173.194.188.40.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/10-gquic-033-90.143.189.5.8026-173.194.188.40.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/10-gquic-033-90.143.189.5.8026-173.194.188.40.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/10-gquic-033-90.143.189.5.8026-173.194.188.40.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/11-gquic-034-85.117.125.8.21243-173.194.73.102.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/11-gquic-034-85.117.125.8.21243-173.194.73.102.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/11-gquic-034-85.117.125.8.21243-173.194.73.102.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/11-gquic-034-85.117.125.8.21243-173.194.73.102.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/12-gquic-035-redirector.googlevideo.com-85.117.122.194.32370-173.194.220.138.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/12-gquic-035-redirector.googlevideo.com-85.117.122.194.32370-173.194.220.138.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/12-gquic-035-redirector.googlevideo.com-85.117.122.194.32370-173.194.220.138.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/12-gquic-035-redirector.googlevideo.com-85.117.122.194.32370-173.194.220.138.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/13-gquic-037-10.32.121.249.33765-64.233.161.95.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/13-gquic-037-10.32.121.249.33765-64.233.161.95.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/13-gquic-037-10.32.121.249.33765-64.233.161.95.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/13-gquic-037-10.32.121.249.33765-64.233.161.95.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/14-gquic-039-redirector.googlevideo.com-85.117.119.45.22495-173.194.73.101.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/14-gquic-039-redirector.googlevideo.com-85.117.119.45.22495-173.194.73.101.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/14-gquic-039-redirector.googlevideo.com-85.117.119.45.22495-173.194.73.101.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/14-gquic-039-redirector.googlevideo.com-85.117.119.45.22495-173.194.73.101.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/15-gquic-041-90.143.180.56.28496-64.233.165.113.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/15-gquic-041-90.143.180.56.28496-64.233.165.113.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/15-gquic-041-90.143.180.56.28496-64.233.165.113.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/15-gquic-041-90.143.180.56.28496-64.233.165.113.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/16-gquic-041-90.143.180.56.28496-64.233.165.113.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/16-gquic-041-90.143.180.56.28496-64.233.165.113.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/16-gquic-041-90.143.180.56.28496-64.233.165.113.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/16-gquic-041-90.143.180.56.28496-64.233.165.113.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/17-gquic-044-146.158.67.194.1044-108.177.14.138.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/17-gquic-044-146.158.67.194.1044-108.177.14.138.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/17-gquic-044-146.158.67.194.1044-108.177.14.138.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/17-gquic-044-146.158.67.194.1044-108.177.14.138.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/18-gquic-046-36.142.158.169.16385-36.189.11.71.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/18-gquic-046-36.142.158.169.16385-36.189.11.71.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/18-gquic-046-36.142.158.169.16385-36.189.11.71.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/18-gquic-046-36.142.158.169.16385-36.189.11.71.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/19-gquic-048-103.3.138.59.12521-123.125.116.52.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/19-gquic-048-103.3.138.59.12521-123.125.116.52.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/19-gquic-048-103.3.138.59.12521-123.125.116.52.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/19-gquic-048-103.3.138.59.12521-123.125.116.52.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/20-gquic-050-i.ytimg.com-172.20.9.135.65045-64.233.162.119.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/20-gquic-050-i.ytimg.com-172.20.9.135.65045-64.233.162.119.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/20-gquic-050-i.ytimg.com-172.20.9.135.65045-64.233.162.119.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/20-gquic-050-i.ytimg.com-172.20.9.135.65045-64.233.162.119.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/21-iquic-29-192.168.50.29.61891-31.13.77.35.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/21-iquic-29-192.168.50.29.61891-31.13.77.35.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/21-iquic-29-192.168.50.29.61891-31.13.77.35.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/21-iquic-29-192.168.50.29.61891-31.13.77.35.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/22-mvfst-01-i.instagram.com-192.168.60.9.55659-69.171.250.63.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/22-mvfst-01-i.instagram.com-192.168.60.9.55659-69.171.250.63.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/22-mvfst-01-i.instagram.com-192.168.60.9.55659-69.171.250.63.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/22-mvfst-01-i.instagram.com-192.168.60.9.55659-69.171.250.63.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/23-mvfst-02-192.168.137.141.50006-31.13.77.17.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/23-mvfst-02-192.168.137.141.50006-31.13.77.17.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/23-mvfst-02-192.168.137.141.50006-31.13.77.17.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/23-mvfst-02-192.168.137.141.50006-31.13.77.17.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/23-prox-quic-217.76.77.70.33232-173.194.220.105.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/23-prox-quic-217.76.77.70.33232-173.194.220.105.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/23-prox-quic-217.76.77.70.33232-173.194.220.105.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/23-prox-quic-217.76.77.70.33232-173.194.220.105.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/24-ietf-rfc9000-192.168.60.32.59699-64.233.164.84.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/24-ietf-rfc9000-192.168.60.32.59699-64.233.164.84.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/24-ietf-rfc9000-192.168.60.32.59699-64.233.164.84.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/24-ietf-rfc9000-192.168.60.32.59699-64.233.164.84.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/25-tquic-51-195.12.120.14.41803-173.194.222.101.443.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/25-tquic-51-195.12.120.14.41803-173.194.222.101.443.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/25-tquic-51-195.12.120.14.41803-173.194.222.101.443.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/25-tquic-51-195.12.120.14.41803-173.194.222.101.443.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/26-smtp-55426-587-10.130.2.104-67.225.241.247.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/26-smtp-55426-587-10.130.2.104-67.225.241.247.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/26-smtp-55426-587-10.130.2.104-67.225.241.247.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/26-smtp-55426-587-10.130.2.104-67.225.241.247.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/27-pop-54776-110-196.188.12.179-192.185.31.244.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/27-pop-54776-110-196.188.12.179-192.185.31.244.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/27-pop-54776-110-196.188.12.179-192.185.31.244.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/27-pop-54776-110-196.188.12.179-192.185.31.244.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/28-Bole-IGW-SMTP-57719-26-10.130.13.155-50.87.145.154-2.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/28-Bole-IGW-SMTP-57719-26-10.130.13.155-50.87.145.154-2.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/28-Bole-IGW-SMTP-57719-26-10.130.13.155-50.87.145.154-2.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/28-Bole-IGW-SMTP-57719-26-10.130.13.155-50.87.145.154-2.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/29-Bole-IGW-SMTP-14636-25-196.189.57.105-68.232.159.216-2.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/29-Bole-IGW-SMTP-14636-25-196.189.57.105-68.232.159.216-2.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/29-Bole-IGW-SMTP-14636-25-196.189.57.105-68.232.159.216-2.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/29-Bole-IGW-SMTP-14636-25-196.189.57.105-68.232.159.216-2.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/30-Bole-IGW-SMTP-20997-25-196.190.160.6-64.225.54.152.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/30-Bole-IGW-SMTP-20997-25-196.190.160.6-64.225.54.152.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/30-Bole-IGW-SMTP-20997-25-196.190.160.6-64.225.54.152.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/30-Bole-IGW-SMTP-20997-25-196.190.160.6-64.225.54.152.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/31-Bole-IGW-POP3-50020-110-196.188.3.8-82.98.178.159.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/31-Bole-IGW-POP3-50020-110-196.188.3.8-82.98.178.159.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/31-Bole-IGW-POP3-50020-110-196.188.3.8-82.98.178.159.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/31-Bole-IGW-POP3-50020-110-196.188.3.8-82.98.178.159.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/32-Bole-IGW-POP3-53357-110-196.189.0.15-39.156.6.106.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/32-Bole-IGW-POP3-53357-110-196.189.0.15-39.156.6.106.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/32-Bole-IGW-POP3-53357-110-196.189.0.15-39.156.6.106.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/32-Bole-IGW-POP3-53357-110-196.189.0.15-39.156.6.106.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/33-Bole-IGW-IMAP-36734-143-196.189.5.89-101.32.113.90.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/33-Bole-IGW-IMAP-36734-143-196.189.5.89-101.32.113.90.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/33-Bole-IGW-IMAP-36734-143-196.189.5.89-101.32.113.90.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/33-Bole-IGW-IMAP-36734-143-196.189.5.89-101.32.113.90.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/34-Bole-IGW-IMAP-50415-143-196.188.28.149-69.195.110.51.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/34-Bole-IGW-IMAP-50415-143-196.188.28.149-69.195.110.51.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/34-Bole-IGW-IMAP-50415-143-196.188.28.149-69.195.110.51.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/34-Bole-IGW-IMAP-50415-143-196.188.28.149-69.195.110.51.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/35-Bole-IGW-SMTP-587-1440-587-196.189.45.189-40.101.92.178.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/35-Bole-IGW-SMTP-587-1440-587-196.189.45.189-40.101.92.178.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/35-Bole-IGW-SMTP-587-1440-587-196.189.45.189-40.101.92.178.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/35-Bole-IGW-SMTP-587-1440-587-196.189.45.189-40.101.92.178.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/36-Bole-IGW-SMTP-587-37943-587-196.191.120.240-81.19.77.166.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/36-Bole-IGW-SMTP-587-37943-587-196.191.120.240-81.19.77.166.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/36-Bole-IGW-SMTP-587-37943-587-196.191.120.240-81.19.77.166.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/36-Bole-IGW-SMTP-587-37943-587-196.191.120.240-81.19.77.166.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/37-dns-response-4029-53-115.24.235.11-8.210.152.150.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/37-dns-response-4029-53-115.24.235.11-8.210.152.150.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/37-dns-response-4029-53-115.24.235.11-8.210.152.150.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/37-dns-response-4029-53-115.24.235.11-8.210.152.150.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/38-stun-dtls.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/38-stun-dtls.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/38-stun-dtls.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/38-stun-dtls.pcap diff --git a/test/glimpse_detector/test_pcap/mixed_pcap/39-pop3-mistake-redis.pcap b/test/lpi_plugin/test_pcap/mixed_pcap/39-pop3-mistake-redis.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/mixed_pcap/39-pop3-mistake-redis.pcap rename to test/lpi_plugin/test_pcap/mixed_pcap/39-pop3-mistake-redis.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/01-openvpn-udp-port-1198-first.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/01-openvpn-udp-port-1198-first.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/01-openvpn-udp-port-1198-first.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/01-openvpn-udp-port-1198-first.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/02-openvpn-nDPI.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/02-openvpn-nDPI.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/02-openvpn-nDPI.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/02-openvpn-nDPI.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/03-openvpn_onestream.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/03-openvpn_onestream.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/03-openvpn_onestream.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/03-openvpn_onestream.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/04-openvpn-udp-63111.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/04-openvpn-udp-63111.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/04-openvpn-udp-63111.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/04-openvpn-udp-63111.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/05-openvpn-udp-34400.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/05-openvpn-udp-34400.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/05-openvpn-udp-34400.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/05-openvpn-udp-34400.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/06-openvpn-udp-40914.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/06-openvpn-udp-40914.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/06-openvpn-udp-40914.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/06-openvpn-udp-40914.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/07-openvpn.tcp.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/07-openvpn.tcp.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/07-openvpn.tcp.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/07-openvpn.tcp.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/08-ovpntcp_hmac.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/08-ovpntcp_hmac.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/08-ovpntcp_hmac.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/08-ovpntcp_hmac.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/09-ovpntcp_nohmac.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/09-ovpntcp_nohmac.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/09-ovpntcp_nohmac.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/09-ovpntcp_nohmac.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/10-openvpn-udp-49941.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/10-openvpn-udp-49941.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/10-openvpn-udp-49941.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/10-openvpn-udp-49941.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/11-ipv6_openvpn.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/11-ipv6_openvpn.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/11-ipv6_openvpn.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/11-ipv6_openvpn.pcap diff --git a/test/glimpse_detector/test_pcap/openvpn_pcap/12-quic-openvpn.pcap b/test/lpi_plugin/test_pcap/openvpn_pcap/12-quic-openvpn.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/openvpn_pcap/12-quic-openvpn.pcap rename to test/lpi_plugin/test_pcap/openvpn_pcap/12-quic-openvpn.pcap diff --git a/test/glimpse_detector/test_pcap/ppp_pcap/01-l2tp_netbios.pcap b/test/lpi_plugin/test_pcap/ppp_pcap/01-l2tp_netbios.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/ppp_pcap/01-l2tp_netbios.pcap rename to test/lpi_plugin/test_pcap/ppp_pcap/01-l2tp_netbios.pcap diff --git a/test/glimpse_detector/test_pcap/ppp_pcap/02-l2tp-without-l7_protocol-62176-33445-192.168.10.91-220.43.148.189.pcap b/test/lpi_plugin/test_pcap/ppp_pcap/02-l2tp-without-l7_protocol-62176-33445-192.168.10.91-220.43.148.189.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/ppp_pcap/02-l2tp-without-l7_protocol-62176-33445-192.168.10.91-220.43.148.189.pcap rename to test/lpi_plugin/test_pcap/ppp_pcap/02-l2tp-without-l7_protocol-62176-33445-192.168.10.91-220.43.148.189.pcap diff --git a/test/glimpse_detector/test_pcap/ppp_pcap/03-l2tp_http.pcap b/test/lpi_plugin/test_pcap/ppp_pcap/03-l2tp_http.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/ppp_pcap/03-l2tp_http.pcap rename to test/lpi_plugin/test_pcap/ppp_pcap/03-l2tp_http.pcap diff --git a/test/glimpse_detector/test_pcap/ppp_pcap/04-l2tp_ctrl_data_full.pcap b/test/lpi_plugin/test_pcap/ppp_pcap/04-l2tp_ctrl_data_full.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/ppp_pcap/04-l2tp_ctrl_data_full.pcap rename to test/lpi_plugin/test_pcap/ppp_pcap/04-l2tp_ctrl_data_full.pcap diff --git a/test/glimpse_detector/test_pcap/ppp_pcap/05-pptp_encrypt.pcap b/test/lpi_plugin/test_pcap/ppp_pcap/05-pptp_encrypt.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/ppp_pcap/05-pptp_encrypt.pcap rename to test/lpi_plugin/test_pcap/ppp_pcap/05-pptp_encrypt.pcap diff --git a/test/glimpse_detector/test_pcap/ppp_pcap/06-pptp_http.pcap b/test/lpi_plugin/test_pcap/ppp_pcap/06-pptp_http.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/ppp_pcap/06-pptp_http.pcap rename to test/lpi_plugin/test_pcap/ppp_pcap/06-pptp_http.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/1-socks45-http-example.pcap b/test/lpi_plugin/test_pcap/socks_pcap/1-socks45-http-example.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/1-socks45-http-example.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/1-socks45-http-example.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/10-socks5-http-302-frag.pcap b/test/lpi_plugin/test_pcap/socks_pcap/10-socks5-http-302-frag.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/10-socks5-http-302-frag.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/10-socks5-http-302-frag.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/11-socks5-http-302.pcap b/test/lpi_plugin/test_pcap/socks_pcap/11-socks5-http-302.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/11-socks5-http-302.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/11-socks5-http-302.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/12-socks5-rdp.pcap b/test/lpi_plugin/test_pcap/socks_pcap/12-socks5-rdp.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/12-socks5-rdp.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/12-socks5-rdp.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/13-socks5-reverse.pcap b/test/lpi_plugin/test_pcap/socks_pcap/13-socks5-reverse.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/13-socks5-reverse.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/13-socks5-reverse.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/14-socks5-smtp-503.pcap b/test/lpi_plugin/test_pcap/socks_pcap/14-socks5-smtp-503.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/14-socks5-smtp-503.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/14-socks5-smtp-503.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/15-socks-http-pass.pcap b/test/lpi_plugin/test_pcap/socks_pcap/15-socks-http-pass.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/15-socks-http-pass.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/15-socks-http-pass.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/16-socks-https-example.pcap b/test/lpi_plugin/test_pcap/socks_pcap/16-socks-https-example.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/16-socks-https-example.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/16-socks-https-example.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/2-socks5_ftp.pcap b/test/lpi_plugin/test_pcap/socks_pcap/2-socks5_ftp.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/2-socks5_ftp.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/2-socks5_ftp.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/3-POP3_Sock5_subject.pcap b/test/lpi_plugin/test_pcap/socks_pcap/3-POP3_Sock5_subject.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/3-POP3_Sock5_subject.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/3-POP3_Sock5_subject.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/4-SMTP_Sock5_subject.pcap b/test/lpi_plugin/test_pcap/socks_pcap/4-SMTP_Sock5_subject.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/4-SMTP_Sock5_subject.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/4-SMTP_Sock5_subject.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/5-T3-HTTP-URL-SOCKS5.pcap b/test/lpi_plugin/test_pcap/socks_pcap/5-T3-HTTP-URL-SOCKS5.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/5-T3-HTTP-URL-SOCKS5.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/5-T3-HTTP-URL-SOCKS5.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/6-T7-HTTP-CONT-SOCKS5.pcap b/test/lpi_plugin/test_pcap/socks_pcap/6-T7-HTTP-CONT-SOCKS5.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/6-T7-HTTP-CONT-SOCKS5.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/6-T7-HTTP-CONT-SOCKS5.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/7-T86-FTP-URL-PORT-BIN-SOCKS5.pcap b/test/lpi_plugin/test_pcap/socks_pcap/7-T86-FTP-URL-PORT-BIN-SOCKS5.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/7-T86-FTP-URL-PORT-BIN-SOCKS5.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/7-T86-FTP-URL-PORT-BIN-SOCKS5.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/8-socks4_http.pcap b/test/lpi_plugin/test_pcap/socks_pcap/8-socks4_http.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/8-socks4_http.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/8-socks4_http.pcap diff --git a/test/glimpse_detector/test_pcap/socks_pcap/9-socks4-https.pcap b/test/lpi_plugin/test_pcap/socks_pcap/9-socks4-https.pcap similarity index 100% rename from test/glimpse_detector/test_pcap/socks_pcap/9-socks4-https.pcap rename to test/lpi_plugin/test_pcap/socks_pcap/9-socks4-https.pcap