13:31:20 <nickm> #startmeeting 13:31:20 <MeetBot> Meeting started Wed Dec 10 13:31:20 2014 UTC. The chair is nickm. Information about MeetBot at http://wiki.debian.org/MeetBot. 13:31:20 <MeetBot> Useful Commands: #action #agreed #help #info #idea #link #topic. 13:31:29 <nickm> Another week, another wednesday, another tor meeting! 13:31:35 <nickm> This might be a short one on my end. 13:31:45 <nickm> I have gotten a lot of stuff done in the last 7 days, but very little of it is coding 13:32:56 <nickm> On the tor side, I wrote up a whole bunch of testing code that isn't ready for daylight yet, and that's about it 13:33:06 <nickm> I hope I cann find time to review a whole load of patches soon 13:33:11 <nickm> But I need to get a libevent release out. 13:33:16 <ioerror> hi nickm 13:33:24 <nickm> Anyone else have some tor hacking? 13:33:26 <nickm> hi ioerror! 13:33:48 <athena> hi nickm: i ... survived another week? finally got that libevent patch in? 13:33:51 <ioerror> i'm working on revising my SocksSocket patch 13:33:57 <nickm> ioerror: awesome! 13:34:02 <ioerror> going slowly, it seems like Mike may want to use it for TBB 13:34:05 <nickm> athena: thanks for that patch 13:34:15 <nickm> ioerror: I'd appreciate it; I bet that it could be useful for Tails too 13:34:22 <athena> (still on the corresponding tor-side stuff...) 13:34:29 <dgoulet> ioerror: and torsocks :D 13:34:46 <ioerror> my main goal is to get it into Tor proper and then torsocks 13:34:50 <ioerror> and then, from there, tbb 13:35:31 <ioerror> i just need to clean the patch up at this point to make it merge and pretty with git tip 13:35:34 <nickm> ioerror: oh hey, since you're here... 13:35:56 <nickm> do you have the permissions to make the google code torsocks page close down, or redirect to the right torsocks repo, or whatever? 13:35:59 <nickm> or did you already do that? 13:36:13 <ioerror> oh, right, i keep forgetting to shut that down 13:36:25 <ioerror> how should i do that? just point it to our new repo? 13:36:31 <nickm> Sounds good to me. 13:36:38 <ioerror> if we remove it entirely, i fear someone will clone + make evil repo 13:36:43 <nickm> fair enough 13:36:57 <ioerror> alternatively, i can give it to dgoulet 13:37:02 <ioerror> could be a useful mirror for the code 13:37:09 <ioerror> (but please file bugs on... this website over here) 13:37:31 <ioerror> (I am dealing with it now - dgoulet do you want to own the project?) 13:37:33 <dgoulet> ioerror: sure, keeping it seems a very good idea here 13:37:45 <dgoulet> ioerror: no problem for me to mirror the code there 13:37:55 <nickm> thanks guys 13:37:56 <ioerror> ok - please tell me your google id 13:38:05 <nickm> athena: any way I can help on the tor monotonic stuff? 13:38:26 <dgoulet> ioerror: pm it to you 13:39:40 <ioerror> sorry, irssi segfaulted because of this awful otr module 13:39:50 <ioerror> dgoulet: i didn't get your id 13:40:01 <athena> it's pretty close to done; you probably have more epxerience writing autoconf tests for whether we have the relevant libevent support though 13:40:14 <dgoulet> ioerror: you should use the latest one, it fixes quit of stuff :), sending it back to you 13:40:17 <nickm> athena: ooh ooh ooh. Want to pair-program the autoconf tests? 13:40:40 <athena> maybe? 13:41:41 <ioerror> dgoulet: ok 13:41:50 <nickm> ok. I can do it myself if that doesn't work for you, but I actually kind of enjoy autoconf hacking sometimes 13:42:16 <nickm> and enjoy sharing it with others 13:42:31 <nickm> it's pretty easy once you grok the fact that you're programming in 4 languages at once, all quoting each other in silly ways 13:43:03 <Yawning> nickm: are you one of those people that also likes to configure sendmail? 13:43:07 <nickm> Or maybe I have stockholm syndrom about autoconf 13:43:29 <nickm> Yawning: no, but I do enjoy metaprogramming. I am trying very hard not to look at haxe; I think it might eat my life if I do. 13:43:33 <nickm> Anyways, topic drift. 13:43:38 <nickm> Who else has something for today? 13:43:45 <athena> sure - maybe tomorrow around noon your time or so? 13:43:57 <athena> (i used to hack sendmail.cf by hand too) 13:44:10 <nickm> hmm. Are you free a bit earlier? I'm having lunch with a friend from out of town around then. 13:44:12 <Yawning> athena: (me too, then I discovered postfix >.>) 13:44:14 <nickm> Like, 10am my time 13:44:16 <nickm> ? 13:44:24 <nickm> or is that too early? 13:45:42 <athena> 10 AM your tme? 13:45:44 <athena> sure 13:45:54 <nickm> great. I believe that is 1500 UTC 13:46:03 <ioerror> what is the new url for torsocks dgoulet? 13:46:16 <ioerror> (dgoulet is now the torsocks admin along with me on googlecode) 13:46:23 <ioerror> do we have a new home page? 13:46:23 <dgoulet> ioerror: https://gitweb.torproject.org/torsocks.git/ 13:46:27 <ioerror> no, i mean, home page 13:46:45 <dgoulet> ioerror: no, I think the best home page is the Torsocks wiki page but a bit out of date unfortunately :( 13:46:52 <ioerror> if you go to https://code.google.com/p/torsocks/adminAdvanced - you can see 13:46:58 <dgoulet> https://trac.torproject.org/projects/tor/wiki/doc/torsocks 13:47:00 <ioerror> i used "poroject moved" 13:47:14 <nickm> So, who else has a tor thing to talk about? 13:47:16 <ioerror> https://code.google.com/hosting/moved?project=torsocks 13:47:21 <ioerror> hope that is good for everyone 13:47:33 <ioerror> nickm: i have a question about this dirauth bug 13:47:46 <nickm> the oom thing? 13:47:46 * teor is alive 13:47:50 <nickm> hi teor 13:47:51 <dgoulet> ioerror: ack, it works thanks 13:48:01 <ioerror> nickm: yes 13:48:11 <ioerror> nickm: is thre anything useful that i can do there? 13:48:16 <ioerror> nickm: my tor is still running 13:48:19 <athena> it is, i think, and 1600 here 13:48:38 <nickm> I'd love to have a tor running with some kind of instrumented malloc that will tell us where the bytes are being allocated at. 13:48:43 <nickm> s/tor/authority/ 13:48:47 <nickm> that would help diagnose this. 13:49:11 <nickm> I think I am also going to add some directory authority stuff to the list of things that the OOM handler looks at 13:49:12 <ioerror> if you can guide me, i can try 13:49:13 <teor> hi nickm, everyone 13:49:29 <nickm> ioerror: I am probably not the right person for that today, but I bet others can 13:49:35 <ioerror> nickm: i mean, anytime 13:49:49 <nickm> (can anybody volunteer to get ioerror set up with a debugging maloc that tells him where the bytes are being allocated?) 13:50:07 <nickm> (Also, I need to leave in about 20 minutes to get my kid to the doctor's) 13:50:29 <nickm> teor: thanks for all the working on stuff! I see that you're nearly done, and are mostly just cleaning up commits? 13:51:44 <teor> Yeah, I could try to solve #13839, but TestingDirAuthVoteExit from #13161 is a great interim fix 13:52:38 <teor> But the requested behaviour works: chutney can launch a tor network that bootstraps correctly when there are no exits. 13:52:57 <teor> (That is, the behaviour requested in #13718) 13:53:53 <teor> It would be nice for us to then have authorities vote Exit (quickly and correctly), which is #13839 13:54:09 <dgoulet> ioerror: if you want to hijack malloc to find memleak or follow allocations or ..., you can start with this simple lib here, very useful and easy to change for what you want also https://github.com/efficios/memleak-finder 13:54:27 <ioerror> dgoulet: hrm, that isn't quite going to work for me 13:54:41 <nickm> So for #13718, are you no longer thinking of a Tor patch to change how we see if the network is ready for circuits? 13:54:55 <teor> So I think I'll have a look at the Exit vote issue, and see if it's something simple like uptime (which we could ignore in a TestingTorNetwork) 13:55:16 <nickm> ok 13:55:41 <teor> nickm: to get the bootstrap behaviour, we need to change how we check if the network is reayd for circuits 13:56:14 <nickm> So, did you see armadev 's comments there? 13:56:16 <teor> per arma's suggestion: if the consensus contains no exits, we bootstrap and launch internal paths only 13:56:48 <nickm> I think he actually suggested that we _not_ have two notions of "ready for circuits"... 13:57:03 <nickm> but instead we change the rule so that if there are no exits at all, we count as ready. 13:57:10 <teor> this is enough for the next consensus to then contain relays that have performed reachability self-tests using internal circuits 13:57:27 <teor> Yes, that is what the code does in the latest incarnation 13:57:54 <nickm> great 13:57:57 <teor> For each consensus, we make a call on whether we expect exit paths or not 13:58:18 <teor> If we can't exit, then we count as ready as soon as we con establish an internal path 13:58:34 <teor> If we can exit, the behaviour is the same as previous versions 13:59:26 <nickm> great 13:59:45 <teor> But for each consensus, all circuits are launched at the same time (there is no "launch internal" then later "launch external", which was arma's concern re: tricking descriptors to manipulate client behaviour and disclose circuit pruposes) 14:00:00 <nickm> great 14:00:06 <teor> so I think we are all on the same page here :-) 14:00:14 <nickm> excellent 14:00:27 <nickm> any questions I can help with before I get my kid to the doctor's? :) 14:00:40 <nickm> (Anybody else with questions I can help with before I get my kid to the doctor's?) 14:00:54 <teor> no, I just need to review my code, split into sensible commits, and write changes files and tests :-) 14:01:09 <teor> tests could be hard here, as there are so many moving parts 14:01:20 <teor> but that's not really a question 14:03:11 <nickm> okay. It's fine to day "i just hit the point of diminishing returns with tests" on some of this IMO. 14:03:12 <teor> (I will have questions as I encounter each "hard part to test". Nothing urgent.) 14:03:19 <nickm> ok 14:03:21 <nickm> Anybody else? 14:03:40 <ioerror> nickm: do you think i should make tests for sockssocket? 14:04:11 <teor> nickm: we're also testing bootstrap behaviour, not live network behaviour. So that helps. 14:07:10 <nickm> ioerror: If you can, yes. If it's too confusing, get help. This code is not easy to write tests for 14:07:18 <nickm> Like, I would find it tricky to do 14:07:36 <nickm> I think that testing what you can is important 14:07:44 <nickm> not sure if this answers your question :/ 14:08:22 <teor> Sometimes, testing the 80% you can test easily, gives you more time to review the 20% you can't test 14:08:32 <nickm> yeah 14:08:44 <nickm> anything else for us to talk about today? /me has about 2 minutes 14:09:14 <teor> How do I coordinate commits between tor, torspec, and chutney? 14:09:23 <ioerror> nickm: ok, so perhaps no then :) 14:09:47 <teor> Just list all the branches in the same trac bug? 14:09:50 <nickm> teor: I'd suggest having a branch for each project with the same name, and when you mention them on a ticket, mention them all? 14:10:00 * nickm has to go in 1 minute 14:10:07 <nickm> #endmeeting