--- Log opened Sat Oct 11 00:00:36 2014 |
00:03 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
00:03 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
00:06 | | Derakon[AFK] is now known as Derakon |
00:23 | | thalass [thalass@Nightstar-sbrrj9.bigpond.net.au] has joined #code |
00:23 | | mode/#code [+o thalass] by ChanServ |
01:38 | | himi [fow035@Nightstar-v37cpe.internode.on.net] has quit [Connection closed] |
01:40 | | himi [fow035@Nightstar-v37cpe.internode.on.net] has joined #code |
01:40 | | mode/#code [+o himi] by ChanServ |
01:42 | | thalass [thalass@Nightstar-sbrrj9.bigpond.net.au] has quit [Ping timeout: 121 seconds] |
04:18 | | thalass [thalass@Nightstar-sbrrj9.bigpond.net.au] has joined #code |
04:18 | | mode/#code [+o thalass] by ChanServ |
05:24 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [[NS] Quit: Program Shutting down] |
06:09 | | Kindamoody[zZz] is now known as Kindamoody |
06:12 | | Kindamoody [Kindamoody@Nightstar-180u8i.tbcn.telia.com] has quit [Connection closed] |
06:12 | | Kindamoody|autojoin [Kindamoody@Nightstar-180u8i.tbcn.telia.com] has joined #code |
06:12 | | mode/#code [+o Kindamoody|autojoin] by ChanServ |
06:13 | | Kindamoody|autojoin is now known as Kindamoody |
06:19 | | macdjord [macdjord@Nightstar-c0i1dq.cable.rogers.com] has joined #code |
06:19 | | mode/#code [+o macdjord] by ChanServ |
06:27 | | Harlow [harlow@Nightstar-04f.4po.201.71.IP] has joined #code |
06:29 | | Checkmate [Z@Nightstar-g2q2tu.customer.tdc.net] has quit [Ping timeout: 121 seconds] |
06:37 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
07:01 | | Kindamoody is now known as Kindamoody|afk |
07:11 | | celticminstrel [celticminst@Nightstar-erk7nd.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
07:12 | | [R] [rstamer@genoce.org] has quit [[NS] Quit: No Ping reply in 180 seconds.] |
07:12 | | [R] [rstamer@Nightstar-d7h8ki.org] has joined #code |
07:52 | | Netsplit *.net <-> *.split quits: Xon, @Namegduf, Harlow, grindhold, @McMartin, Syka, [R], @ToxicFrog, jerith, Turaiel |
07:54 | | Netsplit over, joins: Syka |
07:57 | | Harlow [harlow@Nightstar-04f.4po.201.71.IP] has joined #code |
07:57 | | Namegduf [namegduf@Nightstar-rjh.rpa.226.188.IP] has joined #code |
07:57 | | grindhold [quassel@Nightstar-uufabm.zebra.fastwebserver.de] has joined #code |
07:57 | | [R] [rstamer@genoce.org] has joined #code |
07:57 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code |
07:57 | | jerith [jerith@Nightstar-ip7ar2.slipgate.net] has joined #code |
07:57 | | Turaiel [Brandon@Nightstar-vku52k.resnet.mtu.edu] has joined #code |
07:57 | | McMartin [mcmartin@Nightstar-rpcdbf.sntcca.sbcglobal.net] has joined #code |
07:57 | | ServerMode/#code [+oaoaoao Namegduf ToxicFrog ToxicFrog jerith jerith McMartin McMartin] by *.Nightstar.Net |
07:58 | | Xon [Xon@Nightstar-j72.ku7.252.119.IP] has joined #code |
08:29 | | Harlow [harlow@Nightstar-04f.4po.201.71.IP] has quit [[NS] Quit: BED] |
08:42 | | macdjord is now known as macdjord|slep |
09:36 | | Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code |
09:36 | | mode/#code [+o Checkmate] by ChanServ |
09:38 | | Red_Queen [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code |
09:38 | | mode/#code [+o Red_Queen] by ChanServ |
09:40 | | Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds] |
11:28 | | Red_Queen [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds] |
12:04 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code |
13:52 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: ZNC - http://znc.in] |
13:55 | | ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code |
13:55 | | mode/#code [+ao ToxicFrog ToxicFrog] by ChanServ |
14:42 | | Syka [the@Nightstar-c409v3.vividwireless.net.au] has quit [Connection reset by peer] |
14:43 | | Syka [the@Nightstar-c409v3.vividwireless.net.au] has joined #code |
15:12 | | thalass [thalass@Nightstar-sbrrj9.bigpond.net.au] has quit [Ping timeout: 121 seconds] |
16:11 | <&ToxicFrog> | Hmm. |
16:12 | <&ToxicFrog> | So, for a given proxied connection, I have three threads, the client thread, server thread, and proxy thread. |
16:12 | <&ToxicFrog> | The client and server threads are associated with the corresponding sockets. They sit in a loop reading lines from the socket and putting them on a channel. |
16:13 | <&ToxicFrog> | The proxy thread sits in a loop reading lines from the channel and processing them. Based on that processing, it may write to one or both of the sockets. |
16:13 | <&ToxicFrog> | The proxy thread is also responsible for managing the proxy state and serializing all updates to it. |
16:13 | <&ToxicFrog> | This all works fine. |
16:13 | <&ToxicFrog> | However! I want some error handling. |
16:14 | | macdjord|slep is now known as macdjord |
16:14 | <&ToxicFrog> | Specifically, if either socket is closed, or if an exception is raised when reading or writing on a socket, I need to close both sockets and shut down all three threads. |
16:18 | <&ToxicFrog> | The current approach I have feels kind of messy and I'm wondering if there's a better way. |
16:18 | <&ToxicFrog> | Specifically, if either socket reader has a problem, write :close to the channel and then exit. |
16:19 | <&ToxicFrog> | If the proxy thread has a problem, close! the channel, drain it, and .close both sockets. |
16:19 | <&ToxicFrog> | If the proxy thread reads :close from the channel, likewise. |
16:24 | <&ToxicFrog> | So, this should mean, if I understand how it all hooks together: |
16:24 | <&ToxicFrog> | - proxy thread encounters problem: close both sockets and channel. client/server thread reads return nil from the now-closed sockets, write :close to channel (a no-op since the channel is closed) and exit. |
16:25 | <&ToxicFrog> | - socket thread encounters problem: write :close to channel; proxy thread now closes sockets and events proceed as above except that one of the threads has already exited. |
17:40 | | celticminstrel [celticminst@Nightstar-erk7nd.dsl.bell.ca] has joined #code |
17:40 | | mode/#code [+o celticminstrel] by ChanServ |
18:15 | | Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code |
18:15 | | mode/#code [+o Checkmate] by ChanServ |
18:16 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
18:16 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
18:58 | | Kindamoody|afk is now known as Kindamoody |
19:08 | | Kindamoody is now known as Kindamoody[zZz] |
19:13 | | himi [fow035@Nightstar-v37cpe.internode.on.net] has quit [Ping timeout: 121 seconds] |
19:48 | < Turaiel> | Anyone know how to make let non-persistent in Racket? |
20:59 | <&ToxicFrog> | Hmm. |
20:59 | <&ToxicFrog> | I need a way for a mog to signal that the user it's handling should be disconnected. |
21:12 | | Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds] |
21:19 | | * TheWatcher eyes himself |
21:19 | <@TheWatcher> | I appear to have gone insane |
21:19 | <@TheWatcher> | I'm actually considering firing up a 68k disassembler to try and reverse engineer the map format for this old Amiga game, because I am insane. |
21:25 | <@Tamber> | ...it's taken you this long to realise? |
21:26 | <&ToxicFrog> | That sounds totally reasonable to me. |
21:27 | <&jerith> | TheWatcher: A much saner plan would be to trick McMartin into doing it for you. |
21:27 | <&jerith> | Although then you'd probably need a 6502 disassembler.~ |
21:28 | <@Tamber> | :) |
22:23 | | Checkmate [Z@Nightstar-g2q2tu.customer.tdc.net] has joined #code |
22:23 | | mode/#code [+o Checkmate] by ChanServ |
22:30 | | RchrdB [RichardB@Nightstar-v5j366.understood.systems] has quit [[NS] Quit: WeeChat 0.4.3] |
22:31 | <&ToxicFrog> | I have officially released ifirc: https://github.com/ToxicFrog/ifirc/releases/ |
22:31 | | RchrdB [RichardB@Nightstar-v5j366.understood.systems] has joined #code |
22:41 | < Julius> | What does it do? |
22:43 | <@Azash> | Takes IRC input and dd's it to the of |
22:43 | <@Tamber> | <<Runs a proxy that lets you connect to IFMUD using an IRC client.>> |
22:48 | <&ToxicFrog> | ^ that |
22:48 | < Julius> | Is IFMUD like an actual MUD? |
22:54 | <&ToxicFrog> | ...what do you mean by "an actual mud"? |
22:55 | <&ToxicFrog> | Like, does it run on a MUD engine and have rooms and objects and stuff? Yes. |
22:55 | <&ToxicFrog> | Does it have combat, a class/level system, quests? No. |
22:56 | < Julius> | "Will you get bored before you even start?" :V |
22:57 | <&McMartin> | Have you been trying grind #code for XP while we aren't looking? |
22:57 | < Julius> | get ye flask |
22:57 | <&ToxicFrog> | Julius: it's more of an IRC network with some extra features (like collaborative IF playing) implemented as a MUD than it is a game. |
22:57 | < Julius> | I see. |
23:01 | | himi [fow035@Nightstar-v37cpe.internode.on.net] has joined #code |
23:01 | | mode/#code [+o himi] by ChanServ |
23:02 | <&ToxicFrog> | You probably could repurpose this to connect to other MUDs. You'd likely to have to rewrite the entire transmogrification stack, though. |
23:21 | <@Azash> | http://existentialtype.wordpress.com/2011/03/15/boolean-blindness/ |
23:39 | | himi [fow035@Nightstar-v37cpe.internode.on.net] has quit [Ping timeout: 121 seconds] |
23:39 | | * Alek perks up. |
23:40 | <@Alek> | actually, I could swear I've seen MUDs that used a connection protocol much like IRC, or provided IRClike clients. |
23:40 | <@Alek> | it's been forever, but that's the vague memory I get. |
23:42 | | himi [fow035@Nightstar-v37cpe.internode.on.net] has joined #code |
23:42 | | mode/#code [+o himi] by ChanServ |
--- Log closed Sun Oct 12 00:00:52 2014 |