Release Notes ============= 4.3.14 (2016-01-07) ------------------- * mudfish * re(4): If too many ENOENT error happens, explicitly limits the logging count. * re(4): Don't reconnect the connection if it's a fragmented packet issue. * re(4): Sleep 1 second whenever the connection retry happens. * Fixes a crash due ot out of band packet. * Changes the default error level for MUDEC_000279. * No more mudfish_stderr.txt log file. * Extened the mudfish IP coverage from 10.248.0.0/13 to 10.240.0.0/12 due to too many mudfish nodes. * Throttles MUDEC_00086 errors. * Explicitly exits mudfish core process if too many hearbeats are failed or heatbeat gaps between previous and current is quite big. * Be more verbose for various error codes. * mudflow * No more mudflow_stderr.txt log file. * Re-fetch the static node information when it's explicitly set to be called. * mudrun * Show connect(2) error and proper message why the connection was failed. * No more mudrun_stderr.txt log file. * Fixes some error message formatting issues. * Show the error code number from CloseHandle(). 4.3.13 (2015-12-08) ------------------- * mudfish * (Windows only) Adds a feature to use IP helper for assigning IP address and dns. * Supports a graceful shutdown. * Handles EMSGSIZE error smoothly that now it allows IP fragmentation to mudfish node but explicitly show a error message. * mudflow * Only submit or delete the routing table entry if it'd submitted or new. 4.3.12 (2015-12-01) ------------------- * Common * No more TASKKILL error message on console log. * Fixes a bug to calculate the time difference on Windows box. * Mac OS X * Added a background image for dmg file. * mudfish * Be less verbose for msk(4) error case. * Shows timestamp for each logs. * Prints a message explicitly if Full VPN mode is enabled. * If sending the heartbeat to the master server, it try to other IP address and port. * Adjusts the log error level for MUDEC_00179. * Sets IP_DONTFRAGMENT for re(4) device to get explicit error message from cached MTU of operating system. * mudflow * Fixes an issue that a command to delete the route is sent to Core even if it's not submitted. * Fixes a bug that it doesn't handle a shared memory event properly. * mudrun * Be more verbose for error messages and assigned a unique ID. * Show the packet loss rate message with proper error level and ID. * Try to use Internet Explorer if the windows registry has unexpected entry. 4.3.11 (2015-11-23) ------------------- * mudfish * Uses SSL port even if -f flag is on to bypass some network firewalls. * Don't set default gateway unless -f flag is on. It means that default behaviour of mudfish is drop if the packet routing isn't found. * Supports domain-based custom item. * mudflow * Default timeout for RTT checking is changed from 3 seconds to 1 second. * Removes unnessary code and overheads. * Don't check any dynamic IP addresses monitored by programs. * Fetch only one time for mudfish node list. * Be less verbose and prints timestamp per each logs. * Reports the packet loss rate for mudfish nodes used by user. * mudrun * Fixes an issue that the routing table list isn't sweeped if it's signed out. * Supports JSON responses for mudfish node RTT information and virtual devices. * Supports CLI interface by UI. 4.3.10 (2015-11-13) ------------------- * mudadm * Improve the connection timeout stuff. Now it doesn't require 1 second delay to be finished. * muddiag * Checks more port checks to authentication servers. * mudfish * Fixes old bug of CLI getopt that it didn't properly be re-inialized for next command. * Improves the ready time for TCP protocol. * Changed the order to set ARP proxy. * mudflow * Fixes a assertion failure if there are any problem to close the file descriptor. * mudrun * Now the default IPv4 address and port for authentication is changed not to be blocked by network firewall. * Checks the mudfish process more clearly when the diagnosis is processing. 4.3.9 (2015-11-02) ------------------ * muddiag * Enhances more firewall tests to port 80 and 443. * mudfish * msk(4): MUDEC_00138 error should be shown if the packet length is larger than zero. * ICMP redirect packet is dropped as default. * DHCP lease time is changed from 1 day to 1 month. * OpenBSD PF (Packet Filter) is enabled as default. So you can configure your own firewall rules using CLI interface. * mudrun * Implements a self diagnosis feature for configuration setup. 4.3.7 (2015-10-05) ------------------ * mudfish for Android * Fixes a login issue that main view isn't shown properly if it exits by user or system. * muddiag * Outpus 'tasklist' result also. * mudfish * Enables IFF_BPF flag if the shared memory tag is set. * mudrun * Supports packet dump feature * Shows process lists. 4.3.6 (2015-09-28) ------------------ * mudfish for Android * Fixes an issue that installation path could be relative depending on the device. * Fixes an issue that on some devices PIE isn't enabled but Android 5.x API. * Enables log redirection. * Explicitly omits Private IP range. * Implements sending the problem report. * mudfish * less verbose for TCP relay if it's not reachable to the backend. * muddiag * Fixes a bug that -o option is enabled. * mudrun * Reports a error level 0 from mudrun itself. * Support Chrome and Firefox browser now as extension! 4.3.2 (2015-08-18) ------------------ * mudfish * Be more verbose for re(4). * No more check Giant lock assertion for ithread loop. * Reports an error if multiple nodes aren't reachable. * Removes MUDEC_00087 error code to remove false alert. * Fixes an assertion failure if it failed to get panel information from windows registry. 4.3.1 (2015-08-15) ------------------ * muddiag * Supports Windows 8.1, Windows Server 2012 R2 and Windows 10. * mudfish * Only show error or warning messages for re(4) if it's really in use. * mudrun * Enhances App icons for retina display. * Fixes an assertion failure that receiving buffer isn't enough. * Fixes an issue if string length of username and password is too long. 4.3.0 (2015-08-03) ------------------ * Supports Windows 10. 4.2.9 (2015-07-15) ------------------ * UI * Support WPAD feature at v4. * muddiag * Be verbose about when this diagnostic is executed. * mudflow * Fixes an issue that the backend pointer could be released while RTT checking is running. * Checks the return value from fclose(3) to make sure the argument is valid. * Checks that the traffic log is working corrently. If not, exit the process. * mudrun * Fixes an issue whish happens the auto login feature turns on. * mudfish * Be verbose for error messages. 4.2.8 (2015-05-26) ------------------ * Android * Support android 5.x lollipop. * Fixes some minor bugs. * mudrun * Fixes an assertion failure. * mudfish * Handles EPIPE if write(2) returns it. * Be more verbose when errors happen. * Fixes an issue when ARP information is moved. * Implements tcp_mtudisc(). * Uses mudfish'd DNS server as default for Full VPN mode. 4.2.7 (2015-01-28) ------------------ * From this release, Mudfish is supporting Android. * mudrun * FIxes a crash if too many new IPs are found in a loop. * mudfish * Marks a error number for re(4) virtual device. * Changes some error log levels and messages to show more human-readable. * Adds -B option for mudfish to be daemon mode. * Fixes an assertion failure for Mac OS X if /dev/tap7 isn't available. * Fixes an assertion failure from UDP relay if recvmsg(2) returns 0. 4.2.5 (2014-12-16) ------------------ * mudfish * Fixes a bug of UDP relay not to release inactive UDP sockets. * For re(4) / msk(4) / zyd(4) virtual device, no keeping internal mbuf queues to avoid the race condition. * Handles some exception cases for TCP connections to the backend. Now it will retry to connect when the mal-formed packets are delivered. * mudflow * Fixes a issue to set a ADN path which synchronizes without stop. * mudrun * Be more strict to check the read size. * Protects the statistic information with holding the lock. * Code cleanups for unnecessary parts. 4.2.4 (2014-11-05) ------------------ * mudfish * Fixes an issue that mudfish core is crashed if no more credits are available. * Supports tun(4) device for linux. * Prints a error message correctly when the mac address is changed in a view of ARP. * Fixes an bug that Point-To-Point interface couldn't set a ARP proxy entry. * Don't print the debugging messages as default. * Checks the error code from recvmsg(2) for UDP relay and show the error message. * arp CLI commands are enhanced. 4.2.3 (2014-10-27) ------------------ * mudflow * Fixes a crash when the routing table is changed quickly to set the ADN mode. The routing table entries would use the reference counter. * Adds a exceptional rule that information from uTorrent.exe aren't collected. * mudfish * Tags error messages. * Fixes an issue that checking the lock holder wasn't do correctly. * Implements ip_insertoptions() to add IP options. * Adds '\n' to print some error messages. * Don't show MUDEC_00179 error message if the TCP protocol is used to connect to the backend. * Checks the IP address going to the local IP address zone. 4.2.2 (2014-10-20) ------------------ * No longer need to restart the program for some cases as follows: * if new item is bought. Automatically the game setting is configured. * if changing the mudfish node is happened for a item. * if node for Full VPN is changed simply. 4.2.1 (2014-10-17) ------------------ * Fixes an assertion failure when it try to do the auto-login. * Increses the buffer size for HTTP response body for a edge case. * Fixes an assertion failure for tcp_drop_syn_sent() if TCP connection is aborted while it sends SYN packet. * Some UDP relay problems. * No more assertion failure if it could not find a backend for relaying * No more assertion failure if TOL_socket(2) is failed by unknown reason Expclitly it prints the error. 4.2.0 (2014-10-13) ------------------ * Overhauls FastConnect mode. All FastConnect related codes are rewritten based on new approach. * Calculates Path MTU when the program is ran. * Enhanced a feature to bypass the firewall * mudfish * No longer keep the msk(4) driver-specfici queue for TX not to be raced by multiple threads. * SO_BLACKHOLE flag is introduced to bypass all forwarding packets. * Added IP_SENDSRCSOCKADDR_IN option to override the source port. * Removed -I option. * Adds a default IP of master server if the full vpn mode turns on not to handle a connection through other nodes. 4.1.1 (2014-10-07) ------------------ * muddiag * Adds more testing cases. * mudrun * Fixes a bug for Full VPN mode that the connection to the master server isn't properly reseted. * Records RTT information more when it's accessing the Setting menu. * mudfish * On linux, it shows the exact time per each message logs. * Removes -n option; no longer used * Fixes a bug for Full VPN mode that it doesn't properlt connect to the master server. * Extend IP range used by Mudfish Network from 10.252.0.0/14 to 10.248.0.0/13. * misc * Code sigining again. 4.1.0 (2014-09-30) ------------------ * mudflow * Multiple code cleanups that no longer sqlite3 is used and obsoleted ADN mode is removed. * Reporting the port number for FastConnect mode is enhanced. * Supports FastConnect mode correctly for v4 * mudrun * Fixes an issue that logout takes at least 5 seconds. * Supports more UI menus; e.g. showing the log messages and status. * Supports notification from web or desktop. * Adds a version tag when thr crash is reported. * mudfish * Removes -t option for cleanup. * Supports new ADN mode. * Fixes a bug that sending the heartbeat isn't handled correctly. * Fixes a crash if there are too many entries for FastConnect mode. * For 'netstat' of CLI command, it now shows that UDP bind ports. 4.0.14 (2014-09-17) ------------------- * muddiag * Cleans up code not to be used anymore and hosts * mudrun * As default, SSL connections are used for the frontend and backend. * Fixes a issue that the shared memory isn't ready when other process is reading. * Don't use CDN for mudrun accesses to avoid 502 (Bad Gateway) error. * misc * The session is kept as permanent unless explicitly it's requested. * Being more verbose for mudrun and mudflow logs. 4.0.13 (2014-08-13) ------------------- * Fixes a crash when msk(4) calls m_freem() function at same time by multipl threads.