Mercurial > dropbear
graph
-
Added OpenSSH-like -o command line option to dbclient.Mon, 30 Nov 2015 20:36:15 +0300, by Konstantin Tokarev
-
diffie-hellman-group14-sha256Fri, 11 Dec 2015 22:12:12 +0800, by Matt Johnston
-
ThanksThu, 03 Dec 2015 21:40:31 +0800, by Matt Johnston
-
Added signature for changeset 926e7275cef4Thu, 03 Dec 2015 21:33:48 +0800, by Matt Johnston
-
Added tag DROPBEAR_2015.71 for changeset 9a944a243f08Thu, 03 Dec 2015 21:33:43 +0800, by Matt Johnston
-
wrong breakage versionWed, 02 Dec 2015 23:37:04 +0800, by Matt Johnston
-
preliminary 2015.71 CHANGESWed, 02 Dec 2015 23:35:14 +0800, by Matt Johnston
-
ports and addresses must be malloced to avoid segfault on exitWed, 02 Dec 2015 22:37:20 +0800, by Matt Johnston
-
Merge pull request #15 from annulen/fix_cli_remotetcpfwdMon, 30 Nov 2015 21:13:03 +0800, by Matt Johnston
-
Fixed build when ENABLE_CLI_REMOTETCPFWD is the only allowed TCP forwarding.Fri, 27 Nov 2015 21:40:00 +0300, by Konstantin Tokarev
-
The '==' comparision operator is not defined by POSIX, use '=' insteadMon, 30 Nov 2015 20:55:07 +0800, by Juergen Daubert
-
Fix "Avoid queueing into circbuffer when the channel is about to close"Fri, 27 Nov 2015 22:19:08 +0800, by Matt Johnston
-
Fix ses.channel_signal_pending raceFri, 27 Nov 2015 21:26:43 +0800, by Matt Johnston
-
Added signature for changeset 5bb5976e6902Thu, 26 Nov 2015 23:15:27 +0800, by Matt Johnston
-
Added tag DROPBEAR_2015.70 for changeset 79a6ef02307dThu, 26 Nov 2015 23:15:12 +0800, by Matt Johnston
-
2015.70Thu, 26 Nov 2015 23:04:13 +0800, by Matt Johnston
-
Another attempt at test for crypt()Thu, 26 Nov 2015 23:01:13 +0800, by Matt Johnston
-
Backed out changeset fbcd0a20e667Thu, 26 Nov 2015 22:21:14 +0800, by Matt Johnston
-
AC_SEARCH_LIBS not AC_CHECK_LIB to find crypt()Thu, 26 Nov 2015 21:58:25 +0800, by Matt Johnston
-
release.sh reminds how to signWed, 25 Nov 2015 23:30:56 +0800, by Matt Johnston
-
Added signature for changeset af074dbcb68fWed, 25 Nov 2015 23:30:44 +0800, by Matt Johnston
-
Added tag DROPBEAR_2015.69 for changeset 1637dbd26212Wed, 25 Nov 2015 23:30:36 +0800, by Matt Johnston
-
debian changelogWed, 25 Nov 2015 23:07:18 +0800, by Matt Johnston
-
changelogWed, 25 Nov 2015 23:06:55 +0800, by Matt Johnston
-
mention dropbearkey tooWed, 25 Nov 2015 23:05:41 +0800, by Matt Johnston
-
Mention "dropbear -R" if no hostkeysWed, 25 Nov 2015 23:05:14 +0800, by Matt Johnston
-
check for zero K value from curve25519Wed, 25 Nov 2015 22:15:59 +0800, by Matt Johnston
-
Fix minor manpage formatting issuesWed, 25 Nov 2015 20:46:06 +0800, by Guilhem Moulin
-
Improve dbclient manpageMon, 23 Nov 2015 23:02:03 +0800, by Matt Johnston
-
Fix flags after the hostnameMon, 23 Nov 2015 22:47:43 +0800, by Matt Johnston
-
Bundling for dbclientMon, 23 Nov 2015 22:28:56 +0800, by Guilhem Moulin
-
Increase channel limit to 1000Thu, 19 Nov 2015 23:53:06 +0800, by Matt Johnston
-
Avoid queueing into circbuffer when the channel is about to closeThu, 19 Nov 2015 23:52:52 +0800, by Matt Johnston
-
lazy allocation of circbufferThu, 19 Nov 2015 23:52:11 +0800, by Matt Johnston
-
Send SSH_OPEN_RESOURCE_SHORTAGE response when too many channels openThu, 19 Nov 2015 22:39:32 +0800, by Matt Johnston
-
Only clear channel_signal_pending after handling all channels,Tue, 17 Nov 2015 20:53:30 +0800, by Matt Johnston
-
Enable bundlingFri, 06 Nov 2015 23:54:24 +0800, by Guilhem Moulin
-
S_IWUSR rather than S_IWRITE for scpWed, 04 Nov 2015 23:22:58 +0800, by Matt Johnston
-
Mention -y flagWed, 28 Oct 2015 21:44:16 +0800, by Guilhem Moulin
-
Add comment about compressionWed, 28 Oct 2015 21:42:09 +0800, by Matt Johnston
-
Warn rather than fail if flags have trailing partsWed, 28 Oct 2015 21:37:35 +0800, by Matt Johnston
-
Test for crypt() rather than crypt.hWed, 21 Oct 2015 23:08:22 +0800, by Matt Johnston
-
fix default build when getpass() is unavailableWed, 21 Oct 2015 22:48:15 +0800, by Mike Frysinger
-
fix default build when crypt() is unavailableWed, 21 Oct 2015 22:40:11 +0800, by Mike Frysinger
-
avoid getpass when not usedWed, 21 Oct 2015 22:39:55 +0800, by Mike Frysinger
-
fix build when ENABLE_CLI_INTERACT_AUTH is disabledWed, 21 Oct 2015 22:39:31 +0800, by Mike Frysinger
-
Don't display the MOTD when an explicit command is run.Wed, 21 Oct 2015 22:08:47 +0800, by Guilhem Moulin
-
don't silently ignore extra flag argumentsWed, 21 Oct 2015 22:05:50 +0800, by Matt Johnston
-
avoid invalidated iterator when connection failsTue, 29 Sep 2015 22:19:11 +0800, by Matt Johnston
-
make sure that the test for queued packets to write occurs afterTue, 29 Sep 2015 21:53:27 +0800, by Matt Johnston
-
Added signature for changeset ef4b26364b0cSat, 08 Aug 2015 22:14:30 +0800, by Matt Johnston
-
Added signature for changeset a687f835236cSat, 08 Aug 2015 22:14:19 +0800, by Matt Johnston
-
Added tag DROPBEAR_2015.68 for changeset 809feaa9408fSat, 08 Aug 2015 22:14:10 +0800, by Matt Johnston
-
Fix typo in dropbear(8)'s manpageFri, 07 Aug 2015 23:07:16 +0800, by Guilhem Moulin
-
Fix segfault with restricted authorized_key files without forced commandFri, 07 Aug 2015 23:00:08 +0800, by Guilhem Moulin
-
only update keepalive timeout post-auth (when keepalives are sent)Fri, 07 Aug 2015 21:02:49 +0800, by Matt Johnston
-
Build with -Werror for the simplest caseTue, 04 Aug 2015 08:20:50 +0800, by Matt Johnston
-
couple more changelog itemsMon, 03 Aug 2015 23:17:50 +0800, by Matt Johnston
-
set timeouts to time remaining rather than timeout durationMon, 03 Aug 2015 23:05:43 +0800, by Matt Johnston
-
Fix problem where auth timeout wasn't checked when waiting for identMon, 03 Aug 2015 21:59:40 +0800, by Matt Johnston
-
increase MAX_CMD_LEN to 9000Mon, 03 Aug 2015 21:17:23 +0800, by Matt Johnston
-
remove .hgtags from releaseMon, 03 Aug 2015 21:05:42 +0800, by Matt Johnston
-
Don't try to send data on first ack packet of 3way handshake.Mon, 03 Aug 2015 20:53:37 +0800, by Matt Johnston
-
remove extraneous semicolon from m_free #defineMon, 03 Aug 2015 20:46:29 +0800, by Matt Johnston
-
change DROPBEAR_DEFAULT_CLI_AUTHKEY to just prepend homedirMon, 03 Aug 2015 20:45:04 +0800, by Matt Johnston
-
merge up to date, attempt to fix travis.yml coverityFri, 12 Jun 2015 23:02:15 +0800, by Matt Johnston
-
check ecc key return, fix null pointer crashTue, 23 Jun 2015 21:48:13 +0800, by Matt Johnston
-
Merge pull request #11 from nshopik/patch-2Fri, 12 Jun 2015 22:57:48 +0800, by Matt Johnston
-
Prepend DROPBEAR for scp.cThu, 12 Mar 2015 15:14:47 +0300, by Nikolay Shopik
-
a bit more changelogFri, 12 Jun 2015 22:55:10 +0800, by Matt Johnston
-
mergeThu, 04 Jun 2015 23:24:08 +0800, by Matt Johnston
-
buf_getstring and buf_putstring now use non-unsigned char*Thu, 04 Jun 2015 23:08:50 +0800, by Matt Johnston
-
Merge pull request #13 from gazoo74/fix-warningsThu, 04 Jun 2015 23:08:50 +0800, by Matt Johnston
-
Merge pull request #13 from gazoo74/fix-warningsThu, 04 Jun 2015 22:25:28 +0800, by Matt Johnston
-
Merge branch 'fix-pointer-sign-warnings' into fix-warningsTue, 05 May 2015 20:42:38 +0200, by Gaël PORTAY
-
Turn modptr local variable into unsigned char *Sun, 03 May 2015 00:27:49 +0200, by Gaël PORTAY
-
Turn name and instruction local variables into char *Sun, 03 May 2015 00:23:55 +0200, by Gaël PORTAY
-
Turn type and term local variables into char *Sun, 03 May 2015 00:01:36 +0200, by Gaël PORTAY
-
Turn TCPFwdEntry's connectaddr and listenaddr attributes into char *Sat, 02 May 2015 23:54:06 +0200, by Gaël PORTAY
-
Turn banner, methods and tok local variable into char *Sat, 02 May 2015 23:48:57 +0200, by Gaël PORTAY
-
Turn many local variables into char *Sat, 02 May 2015 23:40:30 +0200, by Gaël PORTAY
-
Turn signame local variable into char *Sat, 02 May 2015 23:32:13 +0200, by Gaël PORTAY
-
Turn ChanSess's cmd attribute into char *Sat, 02 May 2015 23:28:28 +0200, by Gaël PORTAY
-
Turn send_msg_service_accept()'s name argument into char *Sat, 02 May 2015 23:24:23 +0200, by Gaël PORTAY
-
Turn checkpubkey() and send_msg_userauth_pk_ok()'s algo argument into char *Sat, 02 May 2015 23:17:43 +0200, by Gaël PORTAY
-
Turn addr local variable into char *Sat, 02 May 2015 23:03:27 +0200, by Gaël PORTAY
-
Turn sshsession's remoteident attribute into char *Sat, 02 May 2015 22:48:11 +0200, by Gaël PORTAY
-
Turn dropbear_ecc_curve's name into const char *Sat, 02 May 2015 13:59:41 +0200, by Gaël PORTAY
-
Turn Algo_Type's name attribute into const char *Sat, 02 May 2015 22:37:08 +0200, by Gaël PORTAY
-
Turn local key_indent variable into char *Sat, 02 May 2015 22:24:02 +0200, by Gaël PORTAY
-
Turn get_response()'s return type and prompt argument into char *Sat, 02 May 2015 16:30:59 +0200, by Gaël PORTAY
-
Turn type local variable into char *Sun, 03 May 2015 01:12:24 +0200, by Gaël PORTAY
-
Turn ChanSess's tty and term attributes into char *Sat, 02 May 2015 16:01:13 +0200, by Gaël PORTAY
-
Turn cleantext()'s dirtytext argument into char *Sat, 02 May 2015 16:08:08 +0200, by Gaël PORTAY
-
Turn username, servicename and methodname local variables into char *Sat, 02 May 2015 15:26:05 +0200, by Gaël PORTAY
-
Turn sendaddr, listenaddr and request_listenaddr local variables into char *Sat, 02 May 2015 15:09:05 +0200, by Gaël PORTAY
-
Turn send_msg_channel_open_failure()'s text and lang into const char *Sat, 02 May 2015 14:56:57 +0200, by Gaël PORTAY
-
Turn start_send_channel_request()'s type argument into char *Sat, 02 May 2015 13:58:05 +0200, by Gaël PORTAY
-
Turn addrandom()'s buf argument into unsigned char *Sat, 02 May 2015 13:48:16 +0200, by Gaël PORTAY
-
Expect len to be a type of socklen_t [-Werror=pointer-sign]Sat, 02 May 2015 15:58:33 +0200, by Gaël PORTAY
-
Fix pointer differ in signess warnings [-Werror=pointer-sign]Sat, 02 May 2015 15:59:06 +0200, by Gaël PORTAY
-
Fix unused make_connection_string() warning [-Werror=unused-function]Sat, 02 May 2015 16:02:22 +0200, by Gaël PORTAY
-
Fix unused but set variable warnings [-Werror=unused-but-set-variable]Sat, 02 May 2015 12:18:22 +0200, by Gaël PORTAY
-
Fix unused parameters warnings [-Werror=unused-parameter]Sat, 02 May 2015 12:16:06 +0200, by Gaël PORTAY
-
Uses abort() instead of raising a SIGABRT signal [-Werror]Sat, 02 May 2015 11:26:22 +0200, by Gaël PORTAY
-
Uses k_size as an signed integerSat, 02 May 2015 11:37:37 +0200, by Gaël PORTAY
-
Test struct existance against sizeof() operatorSat, 02 May 2015 13:33:34 +0200, by Gaël PORTAY
-
Disable twofish-ctr by default, add config optionWed, 03 Jun 2015 22:59:59 +0800, by Matt Johnston
-
note about constant_time_strcmp and lengthsWed, 03 Jun 2015 22:15:12 +0800, by Matt Johnston
-
Fix building when ENABLE_CLI_PUBKEY_AUTH is unsetWed, 03 Jun 2015 21:45:32 +0800, by Matt Johnston
-
separate client/server fastopen optionsFri, 29 May 2015 23:19:11 +0800, by Matt Johnston
-
Make sure kexfirstinitialise is called early enoughSun, 03 May 2015 00:00:35 +0800, by Matt Johnston
-
fix travis moreSat, 02 May 2015 22:59:55 +0800, by Matt Johnston
-
bad travis syntaxSat, 02 May 2015 22:55:53 +0800, by Matt Johnston
-
add no-writev buildSat, 02 May 2015 22:51:46 +0800, by Matt Johnston
-
Fix no-writev fallbackSat, 02 May 2015 22:47:25 +0800, by Matt Johnston
-
Should be AF_UNSPEC not PF_UNSPECFri, 17 Apr 2015 20:59:32 +0800, by Matt Johnston
-
fastopen code was totally brokenTue, 14 Apr 2015 20:43:54 +0800, by Matt Johnston
-
Avoid channel writev() when there is nothing to writeSat, 21 Mar 2015 22:43:08 +0800, by Matt Johnston
-
Make main socket nonblocking. Limit writequeue size.Fri, 20 Mar 2015 23:36:42 +0800, by Matt Johnston
-
Fix when iov queue is largeFri, 20 Mar 2015 23:33:45 +0800, by Matt Johnston
-
avoid malloc for iovecFri, 20 Mar 2015 22:53:32 +0800, by Matt Johnston
-
Remove ATTRIB_NORETURN from session_loop() since it returns. pamTue, 17 Mar 2015 21:58:32 +0800, by Matt Johnston
-
Fix merge again. ses.loop_handler is required for PAM pamMon, 16 Mar 2015 22:10:30 +0800, by Matt Johnston
-
dropbear_assert() rather than assert()Mon, 16 Mar 2015 21:33:01 +0800, by Matt Johnston
-
strdup strerrorWed, 11 Mar 2015 23:10:27 +0800, by Matt Johnston
-
Fix error handling for dbclient async connectTue, 03 Mar 2015 20:53:00 +0800, by Matt Johnston
-
more changesMon, 02 Mar 2015 21:40:06 +0800, by Matt Johnston
-
changes (also testing hg bookmarks)Mon, 02 Mar 2015 21:29:49 +0800, by Matt Johnston
-
mergeSun, 01 Mar 2015 23:27:08 +0800, by Matt Johnston
-
Fix pubkey auth after change to reuse ses.readbuf as ses.payload nocircbufferSun, 01 Mar 2015 23:02:06 +0800, by Matt Johnston
-
Fix some memory leaks in ecc codeSun, 01 Mar 2015 22:44:36 +0800, by Matt Johnston
-
allocate buffer and data in a single allocation nocircbufferSun, 01 Mar 2015 21:16:09 +0800, by Matt Johnston
-
A bit of a bodge to avoid memcpy if zlib is disabled nocircbufferSun, 01 Mar 2015 00:57:21 +0800, by Matt Johnston
-
Avoid copying data into circular buffer nocircbufferSun, 01 Mar 2015 00:44:45 +0800, by Matt Johnston
-
Better failure handlingSat, 28 Feb 2015 23:49:39 +0800, by Matt Johnston
-
merge tcp fastopenSat, 28 Feb 2015 23:24:30 +0800, by Matt Johnston
-
EINPROGRESS for sendmsg() means it's working OK fastopenFri, 27 Feb 2015 00:02:48 +0800, by Matt Johnston
-
Use m_burn rather than memsetTue, 24 Feb 2015 22:48:14 +0800, by Thorsten Horstmann
-
Avoid cppcheck warningTue, 24 Feb 2015 22:41:26 +0800, by Thorsten Horstmann
-
Add more ATTRIB_NORETURN annotations, from Thorsten HorstmannTue, 24 Feb 2015 22:36:20 +0800, by Matt Johnston
-
Revert accidental commented out signal handlersTue, 24 Feb 2015 22:23:32 +0800, by Matt Johnston
-
Some additional cleanup functionsTue, 24 Feb 2015 22:17:04 +0800, by Matt Johnston
-
Free memory before exiting. Based on patch from Thorsten Horstmann.Tue, 24 Feb 2015 22:01:33 +0800, by Matt Johnston
-
Use m_close() which will avoid close(-1)Tue, 24 Feb 2015 20:53:32 +0800, by Matt Johnston
-
Fix for old compilers, variable declarations at beginning of functionsTue, 24 Feb 2015 20:51:18 +0800, by Thorsten Horstmann
-
Some minor typo fixes, found by codespell.Tue, 24 Feb 2015 20:45:07 +0800, by Thorsten Horstmann
-
DROPBEAR_ prefix for include guards to avoid collisionsTue, 24 Feb 2015 20:43:01 +0800, by Thorsten Horstmann
-
In theory TFO should work. Needs platform cleanup and testing fastopenThu, 19 Feb 2015 00:32:00 +0800, by Matt Johnston
-
connect_remote() is now always non-blockingSat, 14 Feb 2015 09:56:11 +0800, by Matt Johnston
-
Add envirnonment variable for debug timestamps to roughly matchFri, 13 Feb 2015 23:47:53 +0800, by Matt Johnston
-
Fix print that no longer works since we're not using fourCCsFri, 13 Feb 2015 23:17:23 +0800, by Matt Johnston
-
mergeFri, 13 Feb 2015 23:15:12 +0800, by Matt Johnston
-
Make it compileFri, 13 Feb 2015 23:13:58 +0800, by Matt Johnston
-
Keep sha1 defaultWed, 28 Jan 2015 22:14:07 +0800, by Matt Johnston
-
piggyback data on acks when making connections on linuxFri, 13 Feb 2015 22:49:15 +0800, by Matt Johnston
-
debug should be off by defaultFri, 13 Feb 2015 21:45:15 +0800, by Matt Johnston
-
Tighten validation of DH values. Odds of x==0 being generated areTue, 10 Feb 2015 21:46:19 +0800, by Matt Johnston
-
twofish ctr modesWed, 04 Feb 2015 22:12:06 +0800, by Matt Johnston
-
Added signature for changeset 1d2d81b1b7c1Thu, 29 Jan 2015 21:42:01 +0800, by Matt Johnston
-
sha256Wed, 28 Jan 2015 22:58:52 +0800, by Matt Johnston
-
bump versionWed, 28 Jan 2015 22:57:33 +0800, by Matt Johnston
-
Added tag DROPBEAR_2015.67 for changeset cbd674d63cd4Wed, 28 Jan 2015 22:55:27 +0800, by Matt Johnston
-
mergeWed, 28 Jan 2015 22:49:40 +0800, by Matt Johnston
-
changes for 2015.67Wed, 28 Jan 2015 22:49:28 +0800, by Matt Johnston
-
Fix bad multi-statement define for m_free(), detected by CoverityWed, 28 Jan 2015 22:43:01 +0800, by Matt Johnston
-
When clearing the memory of 'key' in function openssh_read(), only the sizeWed, 28 Jan 2015 22:42:29 +0800, by Christian Engelmayer
-
Initialise sa_maskWed, 28 Jan 2015 22:33:34 +0800, by Matt Johnston
-
Fix memory leak of ecdsa structure, found by CoverityWed, 28 Jan 2015 22:29:18 +0800, by Matt Johnston
-
Document ~/.ssh/id_dropbearWed, 28 Jan 2015 22:22:32 +0800, by Matt Johnston
-
Allow configure with libtomcrypt/libtommath directories missingWed, 28 Jan 2015 22:05:24 +0800, by Elan Ruusamäe
-
Disable non-delayed zlib for serverWed, 28 Jan 2015 21:38:27 +0800, by Matt Johnston
-
Default client key path ~/.ssh/id_dropbearSat, 24 Jan 2015 00:05:26 +0800, by Matt Johnston
-
Prefer stronger algorithms in algorithm negotiation.Fri, 23 Jan 2015 23:00:25 +0800, by Fedor Brunner
-
Fix installing dropbear.8 error when building in a separate directory.Fri, 23 Jan 2015 22:59:30 +0800, by Like Ma
-
Add config option to disable cbc. Disable twofish by defaultFri, 23 Jan 2015 22:37:14 +0800, by Matt Johnston
-
Fix variables may be uninitialized.Fri, 23 Jan 2015 22:23:23 +0800, by Like Ma
-
Integrity error (bad packet size %u) negative lengthFri, 23 Jan 2015 22:21:06 +0800, by Fedor Brunner
-
Enable sha2 HMACs by default, they're required for ecdsa alreadyTue, 13 Jan 2015 20:55:04 +0800, by Matt Johnston
-
clear hash state memory after useSun, 04 Jan 2015 23:10:59 +0800, by Matt Johnston
-
clarify bad/unknownSun, 04 Jan 2015 22:32:38 +0800, by Matt Johnston
-
Handle invalid agent keys by skipping rather than exiting.Thu, 01 Jan 2015 17:47:46 -0500, by Catalin Patulea
-
Open directories O_RDONLY for fsync, add debugging if it failsSun, 04 Jan 2015 22:22:43 +0800, by Matt Johnston
-
Make sure hostkeys are flushed to disk to avoid empty files if the powerSat, 08 Nov 2014 22:15:16 +0800, by Matt Johnston
-
Added signature for changeset 2d421bc0545dThu, 23 Oct 2014 22:09:46 +0800, by Matt Johnston
-
Added tag DROPBEAR_2014.66 for changeset 735511a4c761Thu, 23 Oct 2014 22:09:22 +0800, by Matt Johnston
-
Remove -o from scp helpThu, 23 Oct 2014 20:52:10 +0800, by Matt Johnston
-
increae MAX_STRING_LEN for sun sshThu, 23 Oct 2014 20:50:06 +0800, by Matt Johnston
-
Don't print "Failed loading hostkey" when -R delayed hostkey option is enabledWed, 22 Oct 2014 07:12:52 +0800, by Steven Honeyman
-
Combine code for SSH_CONNECTION and SSH_CLIENTTue, 21 Oct 2014 22:33:49 +0800, by Matt Johnston
-
Merge pull request #5 from rcleere/ssh_clientTue, 21 Oct 2014 21:43:20 +0800, by Matt Johnston
-
Add SSH_CLIENT environment variableMon, 20 Oct 2014 12:59:47 -0500, by Ryan Cleere
-
Make keepalive handling more robust, this should now match what OpenSSH doesTue, 19 Aug 2014 23:08:56 +0800, by Matt Johnston
-
Fix wtmp, testing for wtmp.h and wtmpx.h doesn't make senseWed, 13 Aug 2014 22:07:43 +0800, by Whoopie
-
Don't send SSH_MSG_UNIMPLEMENTED for keepalive responsesWed, 13 Aug 2014 21:48:47 +0800, by Matt Johnston
-
Added signature for changeset caac692b366cFri, 08 Aug 2014 21:53:47 +0800, by Matt Johnston
-
Added tag DROPBEAR_2014.65 for changeset e9579816f20eFri, 08 Aug 2014 21:53:42 +0800, by Matt Johnston