Release Notes

v3.6.1 (2014/10/06)

  • mudflow
    • Fixes an assertion failure when it sets a routing table.

v3.6.0 (2014/10/02)

  • mudflow
    • Code changes for new ADN system.
  • mudfish
    • Extened CIDR range from /14 to /13.

v3.5.8 (2014/7/16)

  • mudfish
    • Removes unnecessary error message shown if there’s no credit.
  • mudrun
    • Fixes an issue when the program try to login if the password contains special characters.

v3.5.7 (2014/6/30)

  • mudfish
    • Changed the message level from warning to info which comes up if it failed to send the heartbeat to Mudfish Nodes.

v3.5.6 (2014/5/21)

  • mudrun
    • As the default, it no longer saves the backend and ping information into the database.
  • mudfish
    • Fixes an issue that checking the rwlock’s flags was wrong.
    • Fixes an critical issue that the protocol control block held a read lock instead of write lock.
    • Changes the default mode from non-blocking to blocking expclitly.
    • Fixes an assertion failure if TCP relay failed to write to the client side.

v3.5.5 (2014/5/19)

  • mudfish
    • Fixes an issue that Mudfish core is crashed due to TCP relay.

v3.5.5 (2014/5/16)

  • mudfish
    • Changes some locks from mutex to rwlock.
    • Fixes an issue that the default route path isn’t changed properly if the user uses only PBE servers.
    • Fixes a crash that the memory buffers are called with wrong function.
    • Fixes some wrong error messages.
  • mudrun
    • Fixes a crash while RTT graph is fetched from the master server.

v3.5.4 (2014/1/2)

  • mudfish
    • Added -x option to address an issue for Windows XP that DHCP client does not handle the stateless routing table entries.
    • Show more detailed error messages.
    • Handles wrong IPv4 address format to set the routing table.
    • Changed the default DNS address for Full VPN from 8.8.8.8 to 8.8.4.4.
    • Fixes some issues crashed from assertion failures.

v3.5.3 (2013/11/10)

  • muddiag
    • Adds -o option to store the output into the disk instead of sending it to the master server.
  • mudfish
    • For OS X, changed the default MTU from 1450 to 1442.
    • For OS X, fixed an issue that MTU for tap driver didn’t set properly.
    • Fixes a bug that Core program is crashed if TX failed.

v3.5.2 (2013/10/29)

Supports OS X 10.9 (Mavericks) from this version.

  • mudfish
    • Fixes an error message overlapping issue on the screen.
    • Updated zyd(4) virtual network driver for ADN mode support.
    • Fixes a thread race to store log messages.
  • mudflow
    • Show the shared memory entry for debugging purpose transfered from the core program.
    • Enhanced the process of shared memory.
  • mudrun
    • Fixes a locking issue to transfer the error messages.

v3.5.1 (2013/09/25)

From this version, all binaries and installers are signed by the Code signing certficates (Mudfish Networks Inc.).

  • mudfish
    • Shows more detailed error or warning message from virtual re(4) device.
    • Enhances the ADN mode and added some features for virtual zyd(4) device.
    • Code cleanup and trivial casting fixes.
    • Tags missed error messages.
    • Adds a feature to attach new virtual re(4) device dynamically when the new server was introduced.
  • mudflow
    • There was patches to enhance the ADN mode. Logs all mudfish’s messages into the file when -L option is set. (Linux only).
  • mudrun
    • Adds a option to set MTU (Maximum Transmission Unit) on Mudfish UI.
    • Now Mac OS X 10.7 is supported.
    • Inserts no-cache header if Content-Type includes text/html.

v3.5.0 (2013/09/12)

  • mudfish
    • Introduces the Mudfish Packet Filter feature to enable a source routing on Mudfish Cloud VPN using FIB (Forwarding Information Base).
    • Now FIB (Forwarding Information Base) of FreeBSD is enalbed as default.
    • Added the new virtual device zyd(4) which does exactly same behaviour of mudd.
    • When if_init() function of re(4), msk(4) and zyd(4) is called multiple times, it should handle it correctly.
    • Tags the error number per each error or warning level messages.
    • Added -y option to change the port number from default to 10006.
    • Expanded the maximum number of FIB from 16 to 65536.
    • Fixes a broken error message format.
    • For ADN, the routing table entries for first mile and last mile wouldn’t same.
    • A lot of changes fro ADN server mode.
    • Don’t set SO_REUSEADDR option for UDP socket.
    • The interval of sending the heartbeat to Mudfish VPN Servers is changed from 60 secs to 16 secs because NAT of some switch or router is timed out if the connection was idle enough which leads for Mudfish VPN server to reassign the new port.
    • Sets the routing table entries with FIB number explicitly.
    • For ADN server mode, the default route path wouldn’t be changed.
    • Fixed a bug of TCP proxy that accept(2) system call passed wrong argument for socket address.
  • mudflow
    • Passes the FIB number explicitly when it sets the routing path. Default value of FIB is 0.
    • Let mudflow know the role of ADN server mode for first mile and last mile.
    • Added the new interface to support Source Routing rule.
  • mudrun
    • Version information is one of collected items now.

v3.3.5 (2013/08/20)

  • mudfish
    • Show the error messages correctly happened internally.
    • Creates a mmap file onto the file system instead of the system paging used to share the data for IPC explicitly.
    • Fixes a bug of BPF (Berkeley Packet Filter) on Windows because the timestamp size was changed.
    • No more flowtable for the forwarding packets so it could send ICMP_UNREACH_NEEDFRAG “Next-Hop MTU” packet to the edge.
    • Fixes a wrong error message for DHCP bypassing feature if the interface isn’t set with DHCP enabled.
    • Decreases the log level for some messages.
    • Show the error message correctly even if TCP proxy couldn’t find client’s IP and Port information,
    • Fixes a bug of handling error code from close(2).
    • New virtual device zyd(4) is introduced.
    • On linux, SIGINT signal is caught and handled properly.
    • Handles DHCP release message correctly.
    • Be more verbose for some error messages.
  • mudflow
    • Creates a mmap file onto the file system instead of the system paging used to share the data for IPC explicitly.
  • mudrun
    • Creates a mmap file onto the file system instead of the system paging used to share the data for IPC explicitly.
    • Show the status of ADN mode on dashboard.

v3.3.4 (2013/08/15)

  • mudfish
    • Fixes an assertion failure at mb_dtor_clust() function.
    • If it failed to find a panel of TAP-Win32 adapter v9 from windows registry, it’d print a proper error message instead of assertion failure.
    • Fixes a error message format.
    • Handles ECONNRESET from close(2) for TCP proxy.
  • mudrun
    • Log messages of Mudfish Core application will be corrected by Mudfish master server automatically.

v3.3.3 (2013/08/02)

  • mudfish
    • Fixes the assertion failure from mb_zfini_pack() function.
    • Fixes a warning message from Lck_CondTimedWait().
    • Fixes a bug that SIGTERM didn’t handled correctly that the child process should exited when the parent process is died.
    • For ADN mode, fixes a bug that the routing path didn’t be removed correctly.
    • For ADN mode, reduces a IPv4 range from CIDR /24 to /30.
    • Be more verbose for ARP error messages.
  • mudflow
    • Updates the interval for checking / reporting RTT result.

v3.3.2 (2013/07/24)

  • mudfish
    • Changes a method to handle RX /TX packets for virtual msk(4) device.
    • Fixes an CPU spin issue due to wrong calculation of 1 sec timer used by condvar.
    • Changes a timeout value from 1 to 5 secs for UDP and TCP proxies.
  • mudrun
    • Shows the exact error message come from the master server.

v3.3.1 (2013/07/16)

  • mudfish
    • Fixes an assertion failure if the registry key wasn’t found for TAP-Win32 adapter v9 network adapter.
  • mudrun
    • Don’t load the routing table if Full VPN is on.
    • Sends a explicit header let the web server know about it.
    • Changes the wizard UI.
    • Show the restart message if Full VPN feature turns on.

v3.3.0 (2013/07/12)

  • muddiag
    • Fixes a build issue on i385 machine.
  • mudfish
    • Changed code to support ADN (Application Delivery Network) mode
    • Introduces -P option to specify the location of PID file.
    • Introduces -a option to fetch IPv4 address for ADN mode.
  • mudflow
    • Fixes an issue that RTT checking with ICMP protocol could be interrupted by other packets due to characteristics of raw sockets.
    • Introduces -P option to specify the location of PID file.
    • Supports ADN (Application Delivery Network) mode.
    • Fixes a bug that log files are stored at / directory on Linux and Mac OS X.
  • mudrun
    • Supports ADN (Application Delivery Network) mode.
    • Fixes a assert fail if sendto(2) function failed.

v3.2.0 (2013/06/26)

  • mudfish
    • For Linux and Mac OS X, there was an issue to execute the commands if the size of buffer is small.
    • Bypass DHCP Server IPv4 address if Full VPN feature is enabled.
    • Fixes a bug that default gateway didn’t be looked up for Mac OS X.
    • For Mac OS X, fixes a problem that 10.252.0.0/14 IPv4 range wasn’t set properly leading not to enable to use HTTP and SOCKS proxy.
  • mudflow
    • Introduced -n option that it’s touch the default route path if it’s enabled.
    • Don’t save the result of RTT into DB as default to reduce the disk access because the number of VPN servers are increased.
    • Show the error message explicitly if the internal buffer size is not enough to contain the result.
    • Reduced the number of DB query to delete the obsolete data.
  • mudrun
    • Supports Full VPN feature but only available for the paid users.
    • Fixes an issue that the configuration reading wasn’t worked correctly.
    • Adds a knob to set the language for Mudfish UI.

v3.1.11 (2013/06/06)

  • muddiag
    • Adds -o option to store the problem report into the local disk instead of sending it to Mudfish master server.
  • mudrun
    • Fixes an assertion failure from socket(2) API.
    • Shows more detailed error messages if receiving the graph information failed.
  • mudfish
    • Be more detail when the program sends the heartbeat.
    • Fixes an assertion failre from dhcpd if the packet received wasn’t bootp request.
    • Fixes TOL_sendto(2) API failure for UDP relay.
    • Handles a error case if IP/port binding failed for UDP relay.
    • Handling the listening IP addresses now be more efficient.

v3.1.10 (2013/06/02)

  • mudrun
    • Fixes an issue of ‘Invalid Request for Service Number’.

v3.1.9 (2013/05/31)

  • mudflow
    • Fixes an issue that the proper game icon didn’t be shown.
    • Changed DB schema for saving the routing table.
    • Fixes an issue if the currupted command is transfered through the shared memory.
    • For Linux, it creates coredump file always if it’s crashed.
  • mudrun
    • Fixes an issue that the proper game icon didn’t be shown.
    • For Linux, it creates coredump file always if it’s crashed.
  • mudfish
    • Fixes an assertion failure if IPv4 address’s syntax was wrong to set the routing table entry.

v3.1.8 (2013/05/29)

  • mudrun
    • For Mac OS X, fixes a bug that version isn’t shown correctly on menulet.
  • mudfish
    • Increase the TCP connection/read/write timeouts from 30 secs to 60 secs.
    • For MUDEC_00016 error, it’s trasfered to the stdout instead of the message box.
    • For MUDEC_00016 error, the application now retry up to 5 times.

v3.1.7 (2013/05/23)

  • mudfish
    • Now it supports auto-login.
    • Merged the method for authentication internally.
  • mudrun
    • Supports auto-login feature; added options for it.
    • Fixes a bug that measuring with TCP protocol wasn’t possible to be set.
    • Fixes a crash if it signs in with command arguments.

v3.1.6 (2013/05/17)

  • mudfish
    • -O option is introduced.
    • Tags some error messages having the explicit error number.
    • Now it’s supporting ICMP turnelling.
  • mudflow
    • -O option is introduced letting mudflow use the old IP and port information of master server.
  • mudrun
    • -O option is introduced. If -O option is specified, it’ll set -O options for mudfish and mudflow also.
    • Be more details for messages when the summary of routing table is loaded.
    • Added a button to delete all routing pathes in a click.
    • Added a parameter to enable ICMP protocol connecting with Mudfish VPN server.

v3.1.5 (2013/05/07)

  • mudfish
    • Fixes a issue for TCP timeout from read / write operations.
  • mudflow
    • Fixes a issue for TCP timeout from read / write operations.
  • mudrun
    • Fixes a issue for TCP timeout from read / write operations.
    • FIxes a bug of RTT graph showing that there was a packet loss within the graph abnormally.

v3.1.4 (2013/04/30)

  • mudfish
    • Fixes a assert failure from pthread_mutex_trylock() if it returns EBUSY for Linux and Mac OS X.
    • Creates a core file if the program is crashed abnormally on Linux.
    • Sets the proper port information if it’s used for v1 mode.
  • mudrun
    • Reuses the connection to the backend and retry if the recycled connection was failed.
    • Fixes a delay of SSL connection.
    • Reuses SSL sessions if possible.
    • Fixes a linking issue on Mac OS X if it builds to support SSL.

v3.1.3 (2013/04/08)

  • mudfish
    • Fixes the issue coming from IP address change for Master Server.
    • Virtual re(4) device driver now is confiruable depending on TCP or UDP ports.
    • Fixes a bug that Classless Static Route isn’t delivered to DHCP client on some systems.
    • Not too verbose for SLT_RouteDefault.
  • mudflow
    • Fixes the issue coming from IP address change for Master Server.
    • Fixes a issue that echo server’s ports are configurable.
  • mudrun
    • Fixes the issue coming from IP address change for Master Server.
    • Adds SSL communcation feature to the backend.

v3.1.2 (2013/03/27)

  • mudflow, mudfish
    • Fixes a issue to set the default route.

v3.1.1 (2013/03/26)

  • mudfish
    • Fixes the issue from DHCP client that for supporting the commercial nose, internal IP address’s range was expanded so need to let mudfish application know it.
  • mudflow
    • Only the allowed node are candidates for default routing.
  • mudrun
    • Prepares some code to support the commercial node.

v3.1.0 (2013/03/19)

  • mudfish
    • Fixed an issue that mudfish warning messages are emited on the screen wrong when TAP-Win adapter v9’s MTU is changed.
    • Added new CLI command, stat, to show internal statistics of mudfish.
    • Fixed an issue that the assertion was failed due to short memory buffer.
  • mudflow
    • Fixes the assert failure that it happens when there are something wrong in the communication between mudflow and server-side application.
  • mudrun
    • Enabled -r option as default that it’d less verbose.
  • Mac OS X
    • Changes the base of mudrun from automake to XCode project.
    • Now Mudfish Launcher is ran as Menulet.
    • Changed the installation path from /opt/mudfish/<version>/ to /Applications/Mudfish Cloud VPN.app
  • Linux
    • muddiag and mudadm are distributed as well.
    • Fixed some trivial changes for packaging.

v3.0.0 (2013/02/06)

Now Mudfish Cloud VPN supports Mac OS X and distributes the package for it. While I’m here, the major version is also bumped from v2 to v3 but please note that this first release is little nasty in a perspective of UI. I hope it’ll be better at next releases.

  • mudfish
    • Fixes an issue for v1 compatible mode that TOL_select(2) routine didn’t handle the timeout value correctly so it didn’t be waken even if it’s timeouted.
    • Be verbose for listening ports of TCP / UDP relay.
    • Supports Mac OS X.
  • mudflow
    • Supports Mac OS X that fixes a bug that PID file didn’t be created.
  • mudrun
    • Supports Mac OS X.

v2.2.20 (2013/01/29)

This version would be the last release of v2 that after this release Mudfish Cloud VPN v3 will be started with supporting Mac OS X. :-)

  • muddiag
    • Now OS string will be printed instead of simple integer.
    • Fixes a bug that Windows 8 isn’t printed properly.
  • mudfish
    • Fixes an issue that the message on Mudfish Dashboard was broken if there were warning or error messages from re(4) or msk(4) virtual device.
    • Fixes an message if heartbeat was failed.
    • Fixes an issue that Mudfish Core application aborted if it failed to create socket(4) for TCP relay
  • mudflow
    • For Linux, there was a bug that RTT (Round Trip Time) isn’t calculated correctly.
    • Fixes an issue if ODR_thread_create() was failed.
  • OS specific - Linux
    • Changes the package system from debian package system to makeself.

v2.2.19 (2013/01/21)

In this release, there are no features and bug fixes except major code cleanup to support Mac OS X.

v2.2.18 (2013/01/14)

  • mudfish
    • Uses the default value specified if TOL_getsockname() function returned an error by unknown reason during Mudfish v1 compatible mode.
  • mudflow
    • Addeds two options (save_backend and save_ping) that with enabling these, you could minimalize disk writes from Mudfish Cloud VPN.
  • mudrun
    • Links two options of mudflow to web interface.
    • Fixes an issue of assertion failure if socket(2) failed.
    • Trivial code cleanup.

v2.2.17 (2013/01/04)

Now Mudfish Cloud VPN released the linux version. :-) I’m always welcome your feedbacks. The below lines are changelog of Windows version:

  • mudfish
    • Fixes an issue that stat of re(4) virtual device is stored incorrectly.
    • Adds some assertions for sanity checking.
    • Updated some message format.
  • mudrun
    • Fixes message formats for unifying Linux and Windows version.
    • Trivial code cleanup.
    • Fixes a memory leak whenever accessing the shared memory files was failed.

v2.2.16 (2012/01/01)

At this release, a lot of code work for supporting Linux and Mac OS X had done though it doesn’t affect the behaviour of mudfish working on Windows. The below things are changes on Windows:

  • mudfish
    • The default MTU value was 1450 for TAP-Win32 adapter v9 on Windows but it didn’t configurable. Now it’s dynamically changed depending on the registry value of TAP-Win32 adapter v9 and -M option.
    • Exits if -f option is used without -2 option.
  • mudflow
    • Fixes an issue that difference of sizeof(ssize_t) on x86_64 and i386 could cause a memory overwrite for configration leading invalid operations.
    • Be little bit verbose for SQLite messages.
  • mudrun
    • Fixes an issue that difference of sizeof(ssize_t) on x86_64 and i386 could cause a memory overwrite for configration leading invalid operations.
    • Deletes shared memory files when it’s started.
    • Logs a info message if mudflow process terminated forcibly by mudrun.

v2.2.15 (2012/12/27)

  • muddiag
    • Removes the entry for Mudfish KT: SQS node because its service is terminated.
  • mudfish
    • Fixes a bug that target host for Mac OS X didn’t be detected correctly.
    • Uses ODR_klog() for logger() function that it didn’t follow the standard logging format.
    • Fixes a bug that warning or error messages on dashboard only contained the interface name without any message body.
    • Fixes a bug that error message’s characters were broken due to locale issue.
  • mudflow
    • Fixes a bug that global stat variable was conflict with stat(2) system call on Linux machine.
  • mudrun
    • Changes the PID file’s path on Linux.
    • Fixes an assert fail due to failing to create a thread.

v2.2.14 (2012/12/07)

mudfish, mudflow and mudrun programs are ported to Linux. No bug fixes or patches.

v2.2.13 (2012/12/03)

  • mudrun
    • Fixes assert failure caused by wrong chunked encoding HTTP resposne.
    • Responses with proper Content-Type coming frmo HTTP pre-hook functions.
    • Fixes a typo of HTML response.

v2.2.12 (2012/11/29)

  • mudfish
    • Wrong copy from src to dst for ODR_bcopy() that cause the buffer curruption; detected by redzone.
    • Wrong message format for warning level if sending the heartbeat was failed.
    • Fixes a case that program is terminated if OS version is Windows 8.

v2.2.11 (2012/11/21)

  • mudadm
    • The name of shared memory file was changed for Win32 for mudrun, mudfish and mudflow.
  • mudfish
    • Implemented m_pullup().
    • “missed to cache the route MTU” message format is changed to the standard one.
    • Log level was changed from Error to Warning for connection failure to Mudfish master.
    • Log level was changed for heartbeat failure.
    • The name of shared memory file was changed.
  • mudflow
    • Fixes an assert failure by sendto(3) error for UDP packets.
    • Fixes an assert failure caused by wrong message format between master server.
    • The name of shared memory file was changed.
  • mudrun
    • No exit() if there was a syntax error for configuration file.
    • Fixes an assert failure caused by wrong chunked encoding.
    • The name of shared memory file was changed.

v2.2.9 (2012/10/05)

  • mudfish
    • Fixes a crash from TOL_accept(2) internal system call due to wrong printf format.

v2.2.8 (2012/10/04)

  • mudfish
    • Decreases the heartbeat interval from 10 min to 3 min. This heartbeat is used for Mudfish Main Server to point that your IP addresses assigned are still using.
    • Fixes some debugging code.

v2.2.7 (2012/10/02)

  • mudfish
    • Fixes a bug that RegQueryValueEx() API returns ERROR_MORE_DATA if its size is QWORD instead of DWORD.
  • mudrun
    • If desktop or notebook is going into hiberation step, Mudfish Launcher’ll be automatically terminated.

v2.2.6 (2012/10/01)

The first release in English version.

References