PXH Stands for PtokaX Direct Connect Hub
21 Jun 2008 - PtokaX 0.4.1.1 released.
Changelog:
- Fixed: High cpu usage when udp port bind failed (thx §hĺdýlĺdý™ for report).
- Fixed: Missing password checking for not allowed pipe char, removed checking for other chars.
- Fixed: Missing nick checking for not allowed chars in !addreguser command.
- Fixed: Freeze on year or longer tempban in win versions (thx dmvn for report).
1 Jun 2008 - PtokaX 0.4.1.0 released.
Changelog:
- Added: Core.ResumeAccepts() to resume listening thread(s) when they are suspended.
- Added: 2 level limit of received kB of data from user per time.
- Added: Second deflood level for most old defloods.
- Added: 2 level ConnectToMe and RevConectToMe deflood.
- Added: 2 level search reply deflood.
- Added: Main chat, private message and search intervals.
- Added: Profile permissions for no CTM/RCTM/SR defloods.
- Added: Profile permissions for no received kB of data deflood from user.
- Added: Profile permissions for no Chat/PM/Search intervals.
- Added: Command length limits for MyINFO/CTM/RCTM/SR.
- Added: Hub name to PtokaX window caption.
- Added: Max connected users limit from same IP + profile permission for that.
- Added: Core.GetUsers returning online users with given IP.
- Added: Minimum reconnect time + profile permission for that.
- Added: Profile rename to gui.
- Added: ScriptMan.GetScript() to lua interface.
- Added: IP-to-Country support.
- Added: sCountryCode to user table in lua.
- Added: IP2Country to lua with functions to get country code and country name.
- Added: Country code to string returned by !getinfo command.
- Added: ScriptMan.Refresh() to lua interface.
- Added: Option to log script errors.
- Added: -c command line parameter to service/nix version to set config directory.
- Added: -d command line parameter to nix version to run as daemon.
- Added: When PtokaX is terminated on nix by signal then it is saved to log.
- Added: Script memory usage to !getscripts.
- Added: Few working hublist register addresses.
- Fixed: Initial temp ban year in gui was always 2007 instead of actual year.
- Fixed: Crash in gui version on ScriptMan.MoveUp and ScriptMan.MoveDown when script use them in OnStartup and scripts window is opened (thx Z˙gđ†† and Twisted-devil for report).
- Fixed: Never ending loop caused by multiple script processing when using MoveDown (thx Z˙gđ†† for report).
- Fixed: Lua was able to change language to not existant one (thx CrazyGuy for report).
- Fixed: Crash on exit when default hub-security nick was used (thx ']['yphoon for report).
- Fixed: Crash on loading xml file with comments (thx Rag3Rac3r for report).
- Fixed: Some ScriptMan functions not working in OnStartup (thx CrazyGuy for report).
- Changed: Core.SuspendAccepts can be now used without value to suspend listening thread(s).
- Changed: When user send incorrect ip in CTM/Search is now disconnected.
- Changed: Chat commands to ban ip now cause disconnect of all users with that ip address.
- Changed: UDP port now can be disabled by set it to 0 and it is disabled by default.
- Changed: Default profile permissions.
- Improved: Message when user send incorrect ip in CTM/Search now contains ip from command, user ip.
- Rewritten: Deflood internals, less code, maybe better performance, fixed multiple bugs in old deflood.
- Rewritten: Threads and critical sections from borland components to clean winapi.
- Rewritten: Nick hashtables (for userlist, reglist, nickbanlist) for better performance.
- Rewritten: Last few borland components in core replaced with winapi calls.
- Rewritten: Receiving of data to UDP port, moved from main thread to new thread.
- Removed: Reading of old ini and dat config files.
- New version: Version for windows without gui running from console or as windows service.
- New version: Version for posix compatible os (tested on Linux x86, Linux x86-64, freeBSD x86).
- New version: x86-64 version for windows without gui running from console or as windows service.
24 Feb 2008 - PtokaX 0.4.0.0 released.
SCRIPTS FROM PREVIOUS VERSIONS NOT WORKING WITH THIS NEW VERSION !
Changelog:
- Added: Setting manager, complete replacement for old setting system.
- Added: Posibility to change 99.9% of settings without hub restart.
- Added: Open in external editor to script menu (request by bastya_elvtars).
- Added: Core.Shutdown() for clean hub shutdown (request by KofolaMaster).
- Added: Core.GetBots() to get al bots registered by scripts (request by CrazyGuy).
- Added: SetMan.Save(), RegMan.Save(), BanMan.Save().
- Added: ScriptMan metatable with GetScripts, MoveUp/Down, Start/Stop/Restart script to lua.
- Added: Script delete to script menu (request by (uk)jay).
- Added: MoveUp and MoveDown to ProfMan in lua (request by Rag3Rac3r).
- Added: Option to popup scripts frame on script error.
- Added: Support for _BAN_ and _BAN_time in kick messages to add custom perm and temp ban after kick.
- Added: Add, change and remove for (range)bans to gui.
- Added: User count to welcome message (request by ptaczek).
- Fixed: Small bug in tempban, causing delete of permbans on same ip (thx the_pest for report).
- Fixed: Crash on rangeunban with bad parameters (thx amenay for report).
- Fixed: Crash in same pm deflood (thx nikita800 for report).
- Fixed: Duplicite ban message on nicktempban (thx fane for report).
- Fixed: Accepting language, script or text file with wrong file extension.
- Fixed: Bugs in registered user profile changing related to OP/OpChat permissions (thx plop for report).
- Fixed: Crash on set all/clear all profile permissions in some cases (thx hanger 13 for report).
- Fixed: Bugs in server thread causing memory corruption in some cases.
- Fixed: Missing profile change when registered user was removed from gui and was online (thx CrazyGuy for report).
- Fixed: Crashes on loading corrupted xml files.
- Changed: Setting were removed from main frame and new setting frame for them was created.
- Changed: Few small things in gui, many internal changes in code.
- Changed: Component for debug log creating.
- Changed: Update check complete rewritten to use winsock instead of indy component.
- Changed: Lua interface, complete rewrite.
- Changed: Profile moving is now possible when hub is running.
- Changed: Tray icon tooltip message, now contains hubname.
- Removed: Few things was lost on settings rewrite (chat log, nick rule, webserver...).
- Removed: Possibility to use |, space and white chars in profile names (thx Hungarista for report).
- Upgraded: Lua to 5.1.3.
12 May 2007 - PtokaX 0.3.6.0 released.
Changelog:
- Added: Missing $HubIsFull DC command (bug found by Hungarista).
- Added: Possibility to make language translations.
- Added: Mising $Close Direct Connect command + arrival to lua + permission for profiles.
- Added: Debug output to debug.log when memory allocations failed, or some other things fail.
- Added: Confirmation dialog for redirect all users from gui with line for redirect address (request by amenay).
- Fixed: Update check no more block hub startup when new version is available (thx Typhoon for report).
- Fixed: Crashing on some hub commands when you try to use them on yourself (thx CrazyGuy for report).
- Fixed: Memory corrupting on registering to udp-debug.
- Fixed: Memory corrupting on big hubs when opchat is enabled.
- Fixed: Memory corrupting when script tryed to use user:something and user is no more online.
- Fixed: Max private message length limit checking (thx CrazyGuy/Fane for report).
- Fixed: Buffer overflow on some bad Direct Connect commands.
- Fixed: Crash on !drop command when user is not online.
- Fixed: Memory corrupting by "keep slow clients online".
- Fixed: Few memory leaks in banlist when similar ban already exist.
- Fixed: Memory leak caused by lua bot in reserved nicks.
- Fixed: Long delay on userlist refresh when hub don't have other data to send.
- Fixed: Bug in $GetNickList deflood (thx nikita800 for report).
- Fixed: Wrong profiles (causing crashes) for online users when profile is deleted and it is not last profile.
- Fixed: Wrong profiles (causing crashes when user login) in registered users list when profile is deleted and it is not last profile.
- Fixed: Not working banip when ip have tempban (thx proud for report).
- Fixed: 100 % cpu usage when one of secondary ports is already in use (thx Headbengertje for report).
- Fixed: crash on divide by zero in lua (thx Rincewind for report).
- Changed: Profile manager partially rewritten, splited to core and gui.
- Improved: "keep slow clients online" to lower data loses.
- Improved: Search requests caching...
1 November 2006 - PtokaX 0.3.5.2 released.
Changelog:
- Added: GetDisableMOTD, SetDisableMOTD to lua interface (request by Snooze).
- Added: GetMOTD, SetMOTD, GetSendMOTDinPM, SetSendMOTDinPM to lua interface.
- Added: ChangeRegUser to lua.
- Added: Save setting button to gui.
- Added: SuspendAccepts(iTime) to lua for suspending listening sockets when hub is attacked.
- Added: iLoginTime to userobject in lua.
- Added: Option for reporting suspicious tags.
- Added: Advanced password protection (thx plop for idea).
- Added: SendToOpChat to luainterface.
- Added: Option to accept tag from unknown client as valid when have all needed parts.
- Added: Option to check ip in connect and search commands.
- Added: Permission for profile to not check IP.
- Fixed: Few bugs related to reserved nicks (thx -RICK- for report).
- Fixed: Memory usage caused with deflood, when data no longer needed.
- Fixed: $Multi Direct Connect Commands to be DC++ compatible.
- Fixed: More bugs related to kick and ban from gui.
- Fixed: Missing kick message when op kick user from inbuild client kick.
- Fixed: Sending userip to user before userlist, now is corectly after (thx CrazyGuy for report).
- Changed: Memory allocations, for lower memory usage.
- Changed: Hublist registering, complete new code.
- Changed: Result for !getinfo command + added login time.
- Improved: Protocol commands parsing, faster and better catching corupted commands.
- Removed: Possibility of AddRegUser in lua to overwrite existing reg.
15 July 2006 - PtokaX 0.3.5.1 released.
Changelog:
- Added: Limit of Private Messages received by one user per minute.
- Fixed: Crash in deflood (thx -RICK- for report and testing).
- Changed: Private Messages processing, for better deflooding.
24 June 2006 - PtokaX 0.3.5.0 released.
Changelog:
- Added: ZPipe (and ZPipe0) support -> data compression using zlib (with saved data counter).
- Added: GetAutoRegister to lua (request by Hungarista).
- Added: Max users logins per 10 seconds settings to gui and Lua.
- Added: UDPSRArrival to lua.
- Added: Max limit (16) for script bots to disallow fake users.
- Added: GetDefaultTempBanTime() and SetDefaultTempBanTime() to lua (request by UwV).
- Fixed: Not working "no main chat deflood" and "no private message deflood" for multiline messages (thx ']['yphoon™ for report).
- Fixed: Bug in changing registered nick in gui (thx GeceBekcisi and ruler for report).
- Fixed: Not working address for hublist register with port (thx Pothead for report).
- Fixed: Saving to system.log (thx plop for report).
- Fixed: Buggy GetTempBannedItemTime (thx ']['yphoon™ for report).
- Fixed: Bug in addreguser hub command and addreguser in lua (thx GeceBekcisi for report).
- Fixed: Bug in nick hashing (thx [SK]2qq2q for report).
- Fixed: Buffer overflow on !massmsg (thx netcelli for report).
- Fixed: Buffer overflow on !opmassmsg.
- Fixed: Not working frmHub:SetBanMsgAddMsg (thx Hungarista for report).
- Fixed: Missing status messages if send status to OPs is enabled and user is not OP.
- Fixed: Crash on bad $SR returned to UDP.
- Fixed: Uptime counter.
- Fixed: Problem with '\0' character in incoming data.
- Fixed: "Lag" on !me hub command when text files are disabled (big thanks to NTF-Archive for testing).
- Changed: Complete rewrite of data queues.
- Changed: Send full myinfo to OPs is now to allowed profiles.
- Updated: Lua to 5.1.1 ... but for now version with old Lua 5.0.2 is available.
- Removed: Absolete Maxlogins setting.
24 December 2005 - PtokaX 0.3.4.0 released.
Changelog:
- Added: Goofy++ to default client tags (request by Carraya).
- Added: Better and faster banlist.
- Added: !getbans, !getpermbans, !gettempbans.
- Added: !clrtempbans, !clrpermbans.
- Added: !tempbanip <ip> <time> <reason>, !nicktempban <nick> <time> <reason>.
- Added: !fullban <nick> <reason>, !fullbanip <ip> <reason>.
- Added: !fulltempban <nick> <time> <reason>, !fulltempbanip <ip> <time> <reason>.
- Added: !rangeban <fromip> <toip> <reason>, !fullrangeban <froimip> <toip> <reason>.
- Added: !rangetempban <fromip> <toip> <time> <reason>, !fullrangetempban <fromip> <toip> <time> <reason>
- Added: !rangeunban <fromip> <toip>, !rangetempunban <fromip> <toip>.
- Added: !getrangebans, !getrangepermbans, !getrangetempbans, !clrrangepermbans, !clrrangetempbans.
- Added: !checknickban <nick>, !checkipban <ip>, !checkrangeban <fromip> <toip>.
- Added: Profile permissions needed for new banlist related commands, check profilemanager !
- Added: user:Ban(sReason, sBy, bFull), user:NickBan(sReason, sBy), user:TempBan(iTime, sReason, sBy, bFull) to lua.
- Added: Global Ban(IP, sReason, sBy, bFull), NickBan(Nick, sReason, sBy), TempBan(IP, iTime, sReason, sBy, bFull) to lua.
- Added: Reason from kick message is stored as reason for tempban after kick.
- Added: NickTempBan(Nick, iTime, sReason, sBy) and user:NickTempBan(iTime, sReason, sBy) to lua.
- Added: GetTempRangeBans() and GetPermRangeBans() to lua.
- Added: RangeUnban(FromIP, ToIP), RangePermUnban(FromIP, ToIP) and RangeTempUnban(FromIP, ToIP) to lua.
- Added: ClearRangeBans(), ClearRangeTempBans() and ClearRangePermBans() to lua.
- Added: RangeBan(FromIP, ToIP, sReason, sBy, bFull) and RangeTempBan(FromIP, ToIP, iTime, sReason, sBy, bFull) to lua.
- Added: Options for ban message.
- Added: bHasSuspiciousTag to user object in lua.
- Added: GetMaxPsvSrchRpl and SetMaxPsvSrchRpl to lua (request by plop).
- Added: GetBanMsgShowIP, SetBanMsgShowIP, GetBanMsgShowRange, SetBanMsgShowRange to lua.
- Added: GetBanMsgShowNick, SetBanMsgShowNick, GetBanMsgShowReason, SetBanMsgShowReason to lua.
- Added: GetBanMsgShowWho, SetBanMsgShowWho, GetBanMsgAddMsg, SetBanMsgAddMsg to lua.
- Added: PWDC++ to default client tags.
- Added: Option to disable hub address resolve to allow hub start if connection is down.
- Added: Option to disallow hublist pinger hub check.
- Added: Search length limits, and option per profile to disable it.
- Added: Option for action for brute force password protection.
- Fixed: Crash on script error (thx madman for report).
- Fixed: Missing kick message if status messages off (thx proud for report).
- Fixed: Crash on out of memory.
- Fixed: Crashing in lua on user:something after user leave hub.
- Fixed: Mega-Big-Bug in myinfo changes dealying.
- Fixed: Bugs related to "Enable scripting" checkbox (thx Star for report).
- Fixed: Bug in lua and hubcommand to del reg user (thx GeceBekcisi for report).
- Fixed: Missing tempban on kick from gui (thx DjSpider for report).
- Fixed: Not kicking if no reason specified on kick from gui (thx DjSpider for report).
- Fixed: Few bugs related to script bots.
- Fixed: Crash in profilemanager if no profile selected and remove is pressed (thx NightLitch for report).
- Fixed: Few crashes in lua if hub not running (thx Northwind for report).
- Fixed: Crash on dblclick on script files (thx GeceBekcisi for report).
- Fixed: Scripts state saving on exit (thx GeceBekcisi for report).
- Fixed: Bug in nickban allowing to ban user with higher profile (thx •§k®•™ for report).
- Fixed: Buffer overflow caused by sending of long data from lua. Added limits, check Scripting-Interface.txt !
- Changed: Name of error.log to system.log, old name confusing users.
- Changed: Memory management in data procesing for better performance (thx BigMuscle for hint).
- Changed: Sendbuffer handling for lower memory usage.
- Changed: GetTempBannedItemTime(IP) now return remaining time in seconds instead of minutes...
- Changed: tempban lua object now have time in seconds instead of minutes...
- Changed: !nickban, !banip and !drop now have optional reason.
- Changed: Profile permission related with banlist, check profilemanager !
- Changed: Ban messages to use all features of new banlist.
- Changed: Because I've found hub running PtokaX with 4000+ users (Athlon 64 3000+ with <20 % cpu usage) changed max user limit from 5000 to 8000.
- Changed: Gui for new banlist.
- Changed: Nick length check is now processed only for unregistered users.
- Removed: !getbanlist, !gettemopbanlist, !clrtempban, !clrpermban
PXH Stands for PtokaX Direct Connect Hub