e0b46a8cff
	 
				 
					 
					
						
						
							
							hid: figured out how to port timeouts  
						
						 
						
						
						
						
					 
					
						2018-08-01 20:39:37 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a6e6c3aaff
	 
				 
					 
					
						
						
							
							hid: another round of general code cleanups  
						
						 
						
						
						
						
					 
					
						2018-08-01 17:45:56 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						33969ac86e
	 
				 
					 
					
						
						
							
							hid: bringup of what we have this far  
						
						 
						
						
						
						
					 
					
						2018-07-31 23:11:54 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						b103d5e2eb
	 
				 
					 
					
						
						
							
							hid: port configuration and initialization  
						
						 
						
						... 
						
						
						
						All the basic elements should be there now, we just need to port PING
timers and fix some remaining issues and we're basically done. 
						
						
					 
					
						2018-07-31 20:53:23 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						c75299e1c3
	 
				 
					 
					
						
						
							
							hid: port IRC 3.2 message tag parsing, unused  
						
						 
						
						
						
						
					 
					
						2018-07-30 17:50:27 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						24f1c4413a
	 
				 
					 
					
						
						
							
							hid: use time.Time and time.Duration  
						
						 
						
						... 
						
						
						
						It improves the code significantly over explicit int64 conversions.
Despite carrying unnecessary timezone information, time.Time also
carries a monotonic reading of time, which allows for more precise
measurement of time differences. 
						
						
					 
					
						2018-07-30 10:07:02 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						40370702d4
	 
				 
					 
					
						
						
							
							hid: port MODE, STATS, LINKS, KILL  
						
						 
						
						... 
						
						
						
						Now all the commands have been ported but we desperately need to parse
a configuration file for additional settings yet. 
						
						
					 
					
						2018-07-30 09:46:59 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						5429c0b09d
	 
				 
					 
					
						
						
							
							hid: port PART, KICK, INVITE, JOIN, AWAY, ISON, ADMIN, DIE  
						
						 
						
						
						
						
					 
					
						2018-07-29 17:49:57 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						b28c20a250
	 
				 
					 
					
						
						
							
							hid: port PRIVMSG, NOTICE, NAMES, WHO, WHOIS/WAS, TOPIC, SUMMON, USERS  
						
						 
						
						
						
						
					 
					
						2018-07-29 15:57:39 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						2dfb4e45d1
	 
				 
					 
					
						
						
							
							hid: first round of mixed fixes and cleanups  
						
						 
						
						
						
						
					 
					
						2018-07-29 08:14:07 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f5def2e579
	 
				 
					 
					
						
						
							
							hid: add a work in progress IRC daemon  
						
						 
						
						... 
						
						
						
						The port is more than viable but it's also sort of all-or-nothing
and versioning needs have come before I've had a chance to finish it. 
						
						
					 
					
						2018-07-28 16:21:34 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						b2cd8b46c9
	 
				 
					 
					
						
						
							
							tls-autodetect: mark issues, fix initialization  
						
						 
						
						
						
						
					 
					
						2018-07-24 13:58:57 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						e8602ee718
	 
				 
					 
					
						
						
							
							tls-autodetect: avoid a goroutine leak on timeout  
						
						 
						
						
						
						
					 
					
						2018-07-23 05:33:50 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a8f02e0d37
	 
				 
					 
					
						
						
							
							tls-autodetect: finish inQ overrun handling  
						
						 
						
						
						
						
					 
					
						2018-07-22 14:55:15 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						525734eeb3
	 
				 
					 
					
						
						
							
							tls-autodetect: fix client-initiated shutdown  
						
						 
						
						
						
						
					 
					
						2018-07-22 13:46:28 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						6caa4ab928
	 
				 
					 
					
						
						
							
							Rename client.kill to client.closeLink  
						
						 
						
						
						
						
					 
					
						2018-07-21 00:27:26 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						728fa4e548
	 
				 
					 
					
						
						
							
							tls-autodetect: put most of the server code in place  
						
						 
						
						... 
						
						
						
						So far we act up when it is the client who initializes the shutdown. 
						
						
					 
					
						2018-07-15 12:51:06 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						b5b64db075
	 
				 
					 
					
						
						
							
							Initial commit  
						
						 
						
						... 
						
						
						
						Add a work-in-progress demo chat server with TLS autodetection.
It needs to be perfected before I move on to writing an IRCd on
the foundations.  If history is of any indication, this might lead
towards a nice set of applications. 
						
						
					 
					
						2018-07-15 05:58:59 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Paul Sbarra 
							
						 
					 
					
						
						
							
						
						cd22f99b20 
					 
					
						
						
							
							auth: use encoding.binary  
						
						 
						
						
						
						
					 
					
						2012-05-28 17:58:32 -05:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						4ea94ca0fe 
					 
					
						
						
							
							Bug fix in the generator that was outputting %(MISSING) crud.  
						
						 
						
						
						
						
					 
					
						2012-05-26 18:24:52 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						58bb2572c5 
					 
					
						
						
							
							Doc touchups.  
						
						 
						
						
						
						
					 
					
						2012-05-26 18:22:25 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						acb84171e5 
					 
					
						
						
							
							Add new logger type so that it can be shut off.  
						
						 
						
						
						
						
					 
					
						2012-05-16 23:57:26 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						424f293671 
					 
					
						
						
							
							export logger so it can be disabled  
						
						 
						
						
						
						
					 
					
						2012-05-16 23:26:19 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						45a4ee92eb 
					 
					
						
						
							
							close channels.  
						
						 
						
						
						
						
					 
					
						2012-05-12 22:17:10 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						6bdfd1d1b1 
					 
					
						
						
							
							A more idiomatic way of trying a non-blocking send on a buffered channel  
						
						 
						
						... 
						
						
						
						and falling back to a blocking send inside a goroutine.
This really needs to be fixed. The situation only arises when events are
sent and aren't pulled off the channel using {Wait,Poll}ForEvent.
Namely, if the event send blocks, the entire program will deadlock.
Using a goroutine is not ideal because we lose a guarantee of order:
that events are processed in the order of their arrival. However, it
seems OK as a temporary band-aide for a situation that probably doesn't
arise too often.
What I need to do is implement a dynamic queue. Here is a reference
implementation: http://play.golang.org/p/AiHBsxTFpj  
						
						
					 
					
						2012-05-12 21:55:57 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						7abc9c6455 
					 
					
						
						
							
							added some docs and removed some extraneous code  
						
						 
						
						
						
						
					 
					
						2012-05-12 21:44:53 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						24fef4062a 
					 
					
						
						
							
							docs  
						
						 
						
						
						
						
					 
					
						2012-05-12 21:36:31 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						f77feff864 
					 
					
						
						
							
							some docs in the Makefile and removing a prefix that isn't needed.  
						
						 
						
						
						
						
					 
					
						2012-05-12 21:27:47 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						aa95801b2d 
					 
					
						
						
							
							panic when an extension request is issued before an extension has been initialized. but give a nice error message for the happy people.  
						
						 
						
						
						
						
					 
					
						2012-05-11 23:59:38 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						29942bf078 
					 
					
						
						
							
							panic when an extension request is issued before an extension has been initialized. but give a nice error message for the happy people.  
						
						 
						
						
						
						
					 
					
						2012-05-11 23:58:52 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						fb3128ed2a 
					 
					
						
						
							
							doc updates and a quick usage  
						
						 
						
						
						
						
					 
					
						2012-05-11 02:01:29 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						3e6b354493 
					 
					
						
						
							
							add a little more docs for errors  
						
						 
						
						
						
						
					 
					
						2012-05-11 01:58:52 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						c00652934e 
					 
					
						
						
							
							better docs  
						
						 
						
						
						
						
					 
					
						2012-05-10 23:57:34 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						a3363755cd 
					 
					
						
						
							
							adding package header comments  
						
						 
						
						
						
						
					 
					
						2012-05-10 20:06:22 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						0c50dc6241 
					 
					
						
						
							
							a huge commit. splitting extensions into their own sub-packages.  
						
						 
						
						
						
						
					 
					
						2012-05-10 17:01:42 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						e239bb3c68 
					 
					
						
						
							
							make resource ids their own individual types. last commit before overhaul to sub-packages  
						
						 
						
						
						
						
					 
					
						2012-05-10 12:47:19 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						00c6217ca9 
					 
					
						
						
							
							update  
						
						 
						
						
						
						
					 
					
						2012-05-08 23:03:55 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						5d64f69030 
					 
					
						
						
							
							fixed nasty bug that made XGB not thread safe  
						
						 
						
						
						
						
					 
					
						2012-05-08 23:03:45 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						62b293c937 
					 
					
						
						
							
							use a custom logger so we don't stomp all over the global log configuration  
						
						 
						
						
						
						
					 
					
						2012-05-08 00:27:00 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						e256da00b1 
					 
					
						
						
							
							gofmt  
						
						 
						
						
						
						
					 
					
						2012-05-07 21:58:43 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						13d598e5e7 
					 
					
						
						
							
							more clean up. use log instead of fmt.Print to stderr. bug fix for event blocking (a hack fix for now).  
						
						 
						
						
						
						
					 
					
						2012-05-07 21:58:33 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						daad54a5e1 
					 
					
						
						
							
							important stuff first please  
						
						 
						
						
						
						
					 
					
						2012-05-07 04:17:11 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						eed777ebfd 
					 
					
						
						
							
							more info in readme. link to docs.  
						
						 
						
						
						
						
					 
					
						2012-05-07 04:13:41 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						dc48249e1a 
					 
					
						
						
							
							lots of docs and examples  
						
						 
						
						
						
						
					 
					
						2012-05-07 04:09:19 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						3bf376bd66 
					 
					
						
						
							
							80 cols  
						
						 
						
						
						
						
					 
					
						2012-05-07 01:11:41 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						fd30f1512a 
					 
					
						
						
							
							added tests  
						
						 
						
						
						
						
					 
					
						2012-05-07 01:00:45 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						6d545e723a 
					 
					
						
						
							
							add more extension cruft. make extension checking more uniform.  
						
						 
						
						
						
						
					 
					
						2012-05-06 17:48:40 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						135cee5761 
					 
					
						
						
							
							auto-generated Go code ftw. ~65,000 lines. woooheee  
						
						 
						
						
						
						
					 
					
						2012-05-06 03:06:48 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						70ebcf5178 
					 
					
						
						
							
							build comman for converting XML to Go  
						
						 
						
						
						
						
					 
					
						2012-05-06 03:06:27 -04:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Andrew Gallant (Ocelot) 
							
						 
					 
					
						
						
							
						
						ea30f1a0a7 
					 
					
						
						
							
							more bug fixes for the rest of the extensions  
						
						 
						
						
						
						
					 
					
						2012-05-06 03:06:02 -04:00