Hi, Here's the summary of the previous IRC meeting / sprint.
--- COMMUNITY MEETING Place: #openvpn-devel on irc.freenode.net List-Post: openvpn-devel@lists.sourceforge.net Date: Thursday 6th Oct 2011 Time: 18:00 UTC Planned meeting topics for this meeting were on this page: <https://community.openvpn.net/openvpn/wiki/Topics-2011-10-06> Next meeting will be announced in advance, but will probably be on the same weekday and at the same time. Your local meeting time is easy to check from services such as <http://www.timeanddate.com/worldclock> or with $ date -u SUMMARY andj, cron2, ecrist, jamesyonan, krzie, mattock and SviMik participated in this meeting. -- Reviewed andj's "PolarSSL addition" patches. Their status before and after the meeting: <https://community.openvpn.net/openvpn/wiki/PolarSSLintegration?version=65#PolarSSLaddition> <https://community.openvpn.net/openvpn/wiki/PolarSSLintegration?version=73#PolarSSLaddition> -- Discussed the "UNDEF user with big uptime" bug: <https://community.openvpn.net/openvpn/ticket/167> Preliminary analysis from the meeting has been added to ticket comments. --- Discussed the "GUI: broken log encoding on non-english Windows": <https://community.openvpn.net/openvpn/ticket/165> Mattock will try to reproduce this on his test VMs. --- Full chatlog as an attachment -- Samuli Seppänen Community Manager OpenVPN Technologies, Inc irc freenode net: mattock
andj 21:27:56 hello SviMik 21:28:18 do we have a meeting today? andj 21:28:29 we should have, but mattock is a tad late cron2 21:28:31 supposedly yes andj: how many of your patches are still pending? 21:28:51 andj 21:28:55 I guess we could get started with the patches now that james is here not many, we should be able to get through them this evening 21:29:04 shall we get started with the patches then? 21:29:38 jamesyonan, cron2? 21:31:06 jamesyonan 21:31:36 hi andj SviMik 21:31:39 I have 2 bugreports, but they are not in agenda, don't know why previous bugreport was is agenda 21:32:21 cron2 21:32:37 andj: yep L'utente mattock_ è entrato nella stanza 21:32 cron2 21:32:51 the mattock has returned! mattock_ 21:32:54 hi krzie 21:32:56 ecrist, i messaged a nice update to that script andj 21:33:09 ah, hi mattock mattock_ 21:33:09 was I missing for a long? or just briefly? 21:33:19 SviMik 21:33:19 a meeting? andj 21:33:25 about 40 mins SviMik 21:33:34 andj 21:34:04 the first patch is the big one: https://github.com/andj/openvpn-ssl-refactoring/commit/0ef8d44cc4b9b10f174101cf420af0a5b2150809 vpnHelper 21:34:05 Title: Commit 0ef8d44cc4b9b10f174101cf420af0a5b2150809 to andj/openvpn-ssl-refactoring - GitHub (at github.com) andj 21:34:28 shall we go through it file-by file, skipping the *_polarssl.[ch] ones, as discussed last week? 21:34:36 cron2 21:35:08 fine with me andj 21:35:21 Makefile.am adds the new files ecrist 21:35:35 krzie: looking andj 21:36:00 README.polarssl adds some extra instructions, and some things that are missing mattock_ 21:36:18 oh andj 21:38:24 do you guys prefer doing an ack per file? or just for the whole patch? cron2 21:40:13 well, the autoconf related stuff looks reasonable to me. The crypto_polarssl.c needs testing, I'd say, or review from someone who understands polar ssl andj 21:40:46 yeah, we decided last week that the _polarssl stuff could be reviewed at a slower pace, as it isn't part of the default build it's just the files that already exist that are important 21:41:02 https://github.com/andj/openvpn-ssl-refactoring/commit/0ef8d44cc4b9b10f174101cf420af0a5b2150809#diff-8 21:41:20 vpnHelper 21:41:21 Title: Commit 0ef8d44cc4b9b10f174101cf420af0a5b2150809 to andj/openvpn-ssl-refactoring - GitHub (at github.com) jamesyonan 21:41:21 yes, it seems reasonable in the way that it touches the default build andj 21:41:39 that bit is the only one that modifies stuff but it's just ifdefs 21:41:55 ok, is that an ack? 21:42:02 cron2 is still scrolling 21:42 andj 21:42:41 ok cron2 21:43:13 looks reasonable to me, too andj 21:43:32 ok, the next one is a minor bug fix: https://github.com/andj/openvpn-ssl-refactoring/commit/511691b09e2ac739482260267a0a1b97cd870d36 vpnHelper 21:43:35 Title: Commit 511691b09e2ac739482260267a0a1b97cd870d36 to andj/openvpn-ssl-refactoring - GitHub (at github.com) mattock_ 21:45:02 andj: are you updating the wiki too? andj 21:45:14 I am now mattock_ 21:45:27 ah, nice! cron2 21:45:49 andj: ack on that, looks like a separation oversight mattock_ 21:45:58 (using my mobile) andj 21:46:07 https://github.com/andj/openvpn-ssl-refactoring/commit/f43e33e4abb961a85cd67234c57bf16157b4d764 https://github.com/andj/openvpn-ssl-refactoring/commit/0f3bb68db10ce4aa029501092dc36cddd48d41ed vpnHelper 21:46:09 Title: Commit f43e33e4abb961a85cd67234c57bf16157b4d764 to andj/openvpn-ssl-refactoring - GitHub (at github.com) cron2 21:46:26 which one? andj 21:46:31 both together jamesyonan 21:47:12 looks fine andj 21:47:43 which ones, jamesyonan? cron2 21:47:43 who is free()ing the memory? ecrist 21:48:00 dazo's not here today? andj 21:48:18 cron2: let me check for you mattock_ 21:48:20 apparently not andj 21:49:11 ssl_verify.c jamesyonan 21:49:14 andj: the trivial patches for SHA_DIGEST_SIZE definition and Fixed a bug in the hash generation andj 21:49:17 is freeing the memory cron2 21:49:32 then ack andj 21:49:51 https://github.com/andj/openvpn-ssl-refactoring/commit/8d4360d179cb176803e330e3a947e6c34315b225 vpnHelper 21:49:53 Title: Commit 8d4360d179cb176803e330e3a947e6c34315b225 to andj/openvpn-ssl-refactoring - GitHub (at github.com) andj 21:50:14 that one migrates to a newer version of PolarSSL, which uses (correctly) size_t instead of int and has different return values on 1 or 2 functions 21:50:36 cron2 21:52:10 guessed something like that, yeah. Not exactly pretty, but obviously needed andj 21:52:28 what happened is that I wrote some patches for PolarSSL to add some extra functionality 21:52:33 and those got integrated into Polar 0.99 21:52:42 jamesyonan 21:52:46 yeah, OpenSSL uses ints in a lot of places where modern code would use a size_t andj 21:53:01 There'll be a similar patch from 0.99->1.0 soon yeah, Polar modernised the code base before 1.0 21:53:17 now they still had the chance 21:53:24 next one: https://github.com/andj/openvpn-ssl-refactoring/commit/a6ce24ef2999fcc73ee1590fdc4518842c228f4e 21:54:09 vpnHelper 21:54:12 Title: Commit a6ce24ef2999fcc73ee1590fdc4518842c228f4e to andj/openvpn-ssl-refactoring - GitHub (at github.com) andj 21:54:18 same story, but for the SSL bit jamesyonan 21:55:13 andj: how does PolarSSL deal with external private keys -- I noticed you didn't implement most of the OpenVPN external private key functions like management-external-key and crypto API andj 21:55:46 at the moment, it doesn't the RSA code is pretty static 21:55:55 and doesn't play all to well with other providers 21:56:06 it's something that will come up, probably together with elliptic curve crypto 21:56:46 jamesyonan 21:56:54 these days, most people in a high-security environment are going to want multifactor auth which often requires external key support cron2 21:57:39 andj: patch doesn't make sense to me, but it does not have to "if it works with polarssl, it will be fine" andj 21:58:28 jamesyonan: it's going to happen in PolarSSL at some point, ECC is the most requested feature atm anyway, but I'm leaving that up to them. and that's the perfect moment to modularise the asymmetric code further 21:58:54 cron2: indeed, it's just some API changes 21:59:10 ack on that one? 21:59:22 next one is a printf fix: https://github.com/andj/openvpn-ssl-refactoring/commit/3bff5d3dc0cd62e24269ad8f1cb1588c9e47b433 21:59:58 vpnHelper 21:59:59 Title: Commit 3bff5d3dc0cd62e24269ad8f1cb1588c9e47b433 to andj/openvpn-ssl-refactoring - GitHub (at github.com) cron2 22:00:08 given last week's plan on not looking very close at the *polarssl* files, ACK huh, what is %zd? 22:00:43 andj 22:00:57 special value for size_t we had a similar discussion a few meetings ago for %p 22:01:17 cron2 22:01:20 is that portable, like, to Solaris, *BSD, Windows? now %p *is* (for pointer values) 22:01:28 but I've never seen %zd 22:01:32 jamesyonan 22:01:34 does windows/visual-studio support %zd? cron2 22:02:23 FreeBSD 7 has %zd andj 22:02:35 MS doesn't: http://msdn.microsoft.com/en-us/library/tcxf1dw6.aspx vpnHelper 22:02:37 Title: Size Specification (at msdn.microsoft.com) cron2 22:03:13 FreeBSD 6 doesn't andj 22:03:32 ok, point taken, I'll write a patch for it cron2 22:03:33 I'd tend to nack that change, and use a cast %ld and (long) or %d and (int), whatever is reasonable 22:03:54 jamesyonan 22:04:19 OpenVPN actually has a .h file where we define various platform-specific format specifiers andj 22:04:31 thanks, I'll look for it jamesyonan 22:04:35 we use it for printing 64-bit byte counters andj 22:04:53 next one: https://github.com/andj/openvpn-ssl-refactoring/commit/bc2dbfc7e9cf9d0552374e49750012a444e2a70f vpnHelper 22:04:54 Title: Commit bc2dbfc7e9cf9d0552374e49750012a444e2a70f to andj/openvpn-ssl-refactoring - GitHub (at github.com) andj 22:04:57 disable pkcs12 cron2 22:06:22 ack andj 22:07:03 same, but for capath: https://github.com/andj/openvpn-ssl-refactoring/commit/74ca0110269a46607e3211f8d7c6b1d250361d99 vpnHelper 22:07:04 Title: Commit 74ca0110269a46607e3211f8d7c6b1d250361d99 to andj/openvpn-ssl-refactoring - GitHub (at github.com) jamesyonan 22:08:19 both look fine andj 22:08:26 cool, next is disable CrAPI: https://github.com/andj/openvpn-ssl-refactoring/commit/f79f1556902d1c73416858813cc75594d3d2fdf6 vpnHelper 22:08:27 Title: Commit f79f1556902d1c73416858813cc75594d3d2fdf6 to andj/openvpn-ssl-refactoring - GitHub (at github.com) ecrist 22:08:58 heh, CrAPI andj 22:09:04 ecrist 22:09:34 ><{{{*> cron2 22:09:50 looks good to me (though I can't say whether you caught all places) andj 22:09:57 external keys: https://github.com/andj/openvpn-ssl-refactoring/commit/09f156a99ac16c1157392818d43b6dd4b898d659 vpnHelper 22:09:58 Title: Commit 09f156a99ac16c1157392818d43b6dd4b898d659 to andj/openvpn-ssl-refactoring - GitHub (at github.com) jamesyonan 22:10:23 that's the kind of patch that will usually give you a compile error if you get it wrong andj 22:10:38 yeah, and I double checked using grep jamesyonan 22:10:46 CryptoAPI patch looks fine cron2 22:11:07 yep, but only if you compile on windows - so this is something that certainly needs testing after the merge (*extra* testing) 22:11:14 andj 22:11:34 I compile on both windows and linux btw cron2 22:11:41 andj: oh? cool jamesyonan 22:11:54 mingw or visual studio? andj 22:11:56 I've got a cute little build farm set up for the polarssl build cron2 22:11:58 ACK, then andj 22:11:59 visual studio jamesyonan 22:12:11 ack as well andj 22:12:20 but it's currently 2.1.4 & polarssl 0.14.3 https://github.com/andj/openvpn-ssl-refactoring/commit/b28532360c4ddf2d2bec62b5c7b62d2ae05c9ce1 22:12:30 vpnHelper 22:12:31 Title: Commit b28532360c4ddf2d2bec62b5c7b62d2ae05c9ce1 to andj/openvpn-ssl-refactoring - GitHub (at github.com) jamesyonan 22:14:04 looks fine andj 22:14:27 https://github.com/andj/openvpn-ssl-refactoring/commit/2b018cc88744bf580e62e3a403b58deba267a798 vpnHelper 22:14:28 Title: Commit 2b018cc88744bf580e62e3a403b58deba267a798 to andj/openvpn-ssl-refactoring - GitHub (at github.com) andj 22:14:31 more external cert stuff jamesyonan 22:17:08 why do you need to write a certificate? (to a file) 22:17:18 andj 22:17:24 It's for external scripts jamesyonan 22:17:35 ah, ok andj 22:18:05 basically, it's not yet possible in Polar so it's openssl-only 22:18:11 again, a feature that's imminent in PolarSSL 22:18:27 jamesyonan 22:19:33 just curious, what's the rough size of the built PolarSSL libs andj 22:20:59 depends on what you include not exactly sure though 22:21:17 400k or so I think 22:21:36 but that might be with debug symbols 22:21:59 and static 22:22:23 jamesyonan 22:22:35 yeah, that's definitely smaller than OpenSSL andj 22:22:55 think libcrypto is about 4-5 MB jamesyonan 22:23:07 no, not that large andj 22:23:10 ack on externel cert? 1.6 MB 22:23:43 jamesyonan 22:23:46 yes, ack andj 22:23:46 the dynamic one ok, only 3 small ones left: https://github.com/andj/openvpn-ssl-refactoring/commit/60890102b755390e704a74ee2962780480b50c80 22:24:02 vpnHelper 22:24:03 Title: Commit 60890102b755390e704a74ee2962780480b50c80 to andj/openvpn-ssl-refactoring - GitHub (at github.com) jamesyonan 22:24:53 looks fine andj 22:24:55 Add a tag for a build: https://github.com/andj/openvpn-ssl-refactoring/commit/5f5eca00f31199571450cceee1f4469154bd4d38 vpnHelper 22:24:56 Title: Commit 5f5eca00f31199571450cceee1f4469154bd4d38 to andj/openvpn-ssl-refactoring - GitHub (at github.com) jamesyonan 22:25:27 ack andj 22:25:32 and, finally disable x509 track: https://github.com/andj/openvpn-ssl-refactoring/commit/7c18f7cd1ef7e79a489bf116a4ca33c97227dc08 vpnHelper 22:25:33 Title: Commit 7c18f7cd1ef7e79a489bf116a4ca33c97227dc08 to andj/openvpn-ssl-refactoring - GitHub (at github.com) cron2 22:25:54 ack for the build tag andj 22:26:17 build tag? ah, that one 22:26:23 what header file contained the size_t defines, can't seem to find it? 22:26:46 jamesyonan 22:28:58 ack for Disabled X.509 track andj 22:29:13 whee that's the last one 22:29:17 cron2 22:29:21 cool andj 22:29:25 aside from the fix for the nack from just now 22:29:27 jamesyonan 22:29:31 common.h cron2 22:29:33 yep jamesyonan 22:30:33 you can probably leverage on counter_format andj 22:30:44 yeah, I was think the same thing patch incoming, give me 2 minutes compile time 22:32:36 mattock_ 22:33:21 almost there andj 22:36:36 anyway, there will be some smaller patches in the next few weeks, to move to PolarSSL 1.0, and perhaps a few Windows build fixes cron2 22:37:22 sounds good mattock_ 22:37:31 andj: for python build system? andj 22:37:46 yeah, but that'll be in a few weeks 22:37:58 mattock_ 22:39:37 ok andj 22:40:43 https://github.com/andj/openvpn-ssl-refactoring/commit/88d639630cd319882be05a29bcc5ac49cb79d1bc vpnHelper 22:40:44 Title: Commit 88d639630cd319882be05a29bcc5ac49cb79d1bc to andj/openvpn-ssl-refactoring - GitHub (at github.com) andj 22:40:53 ok, moved to counter_type and counter_format cron2 22:41:57 that should be "(counter_type) 8* ...", not (long long int) andj 22:42:10 oops, mistake in my commit, sec https://github.com/andj/openvpn-ssl-refactoring/commit/82e745b6e4c81b5fa5f0d0793383a292696d2991 22:47:03 vpnHelper 22:47:04 Title: Commit 82e745b6e4c81b5fa5f0d0793383a292696d2991 to andj/openvpn-ssl-refactoring - GitHub (at github.com) andj 22:47:15 fixed it, accidently pushed the wrong local commit cron2 22:48:19 well, formal ack, but looking at the code that prints numbers well in the 16-bit range, I really wonder why people think that "size_t" is a good idea here with all the extra complication that brings 22:48:31 but that's just the ramblings of an old man... 22:49:29 andj 22:49:30 point taken anyway, that should be ok now 22:49:41 cron2 22:49:49 yep, the code is fine andj is very happy 22:49 andj 22:50:44 what's next for the meeting? SviMik's bug reports? jamesyonan 22:50:52 yeah, size_t sort of came into fashion with the rise of 64-bit architectures cron2 22:51:35 for this meeting, I'm done - need to break a few customer networks now andj 22:51:46 ok, have fun we could call it a day then? 22:52:01 cron2 22:52:02 my next agenda items are "get mattock to make the freebsd 8.2 buildslave work" mattock_ 22:52:09 summary will follow tomorrow andj 22:52:11 Thanks everyone mattock_ 22:52:28 andj: thanks for managing things! SviMik is here, if somebody is going to look at my bug reports 22:53 andj 22:53:30 mattock: np svimik, which ones? 22:54:48 SviMik 22:55:29 first is https://community.openvpn.net/openvpn/ticket/167 vpnHelper 22:55:30 Title: #167 (UNDEF user with big uptime) â OpenVPN Community (at community.openvpn.net) SviMik 22:55:54 the log with many errors is here: http://svimik.com/ovpnundef.txt andj 22:57:17 svimik: I'll take a peek at the log file, see if I can find anything SviMik 22:58:59 the second bug is log encoding... I wonder if anybody tested openvpn with non-english Windows? andj 22:59:27 looks like there's a rejected initial packet: PF: /etc/openvpn/tmp/openvpn_pf_3c0125880e28cd24b297f70c42a6940c.tmp rejected due to 1 error(s) SviMik 23:01:17 andj that's normal I think. when pf file is ignored, openvpn just using some default settings so it's not related with this bug 23:01:43 mattock_ 23:01:53 SviMik: I have not, it's all english can you change windows language without buying a separate version? 23:02:46 SviMik 23:03:30 don't understand last question. why I need change it? L'utente krzie si è disconnesso (Quit: Leaving) 23:03 SviMik 23:04:46 andj that user's certificate has expired, so I don't know even how he got connected and why the connection was not rejected andj 23:05:52 I'm a little surprised about all of the replay errors too mattock_ 23:05:53 I mean can _I_ change the language if I want? andj 23:06:40 then at midnight his session expires and he can't connect anymore 23:06:46 SviMik 23:07:02 mattock_ you can. but you have to install MUI: http://en.wikipedia.org/wiki/Multilingual_User_Interface vpnHelper 23:07:03 Title: Multilingual User Interface - Wikipedia, the free encyclopedia (at en.wikipedia.org) SviMik 23:10:09 for XP there was also MUI, which translates most user interface (but not all, so the result may be slightly different comparing with originally non-english XP). L'utente mattock_ si è disconnesso (Ping timeout: 252 seconds) 23:10 SviMik 23:10:54 in my case, I found 2 bugs in XP (didn't tested in 7 yet) andj 23:12:13 svimik: I think the following happened certificate expired at some point, and the control channel still existed 23:12:31 but a new control channel can't be set up 23:12:41 the session then still exists but can't be used anymore 23:13:42 SviMik 23:14:38 so the user should be kicked in that case because session is not usable anyway 23:15:00 andj 23:15:27 yeah, and the error should be a little clearer as well failed TLS connections could be handled more cleanly 23:16:42 SviMik 23:17:36 actually in my previous tests connection was working well even after certificate expiration (upon first reconnect) mattock 23:17:46 SviMik: I'll check out MUI, it makes sense to do some basic tests with non-English languages SviMik 23:18:28 andj so, the expired certificate may be only a part of condition to reproduce this bug andj 23:19:41 hmm, it's something that needs looking at, but I'm afraid I haven't got time right now (getting late here) SviMik 23:20:17 about encoding: 1. if adapter's name contains non-english characters, the encoding in CLI is wrong. in GUI it appears correctly though. I suppose the windows CLI and openvpn GUI are using different encoding to display text 23:20:17 2. but "route add" errors vice versa are not readable in openvpn GUI 23:20:17 andj 23:21:07 see you all soon SviMik 23:21:37 ok L'utente krzee è entrato nella stanza 23:21 SviMik 23:29:15 mattock I can also make tests if somebody writes a patch for it I see there is encoding mess both in openvpn and its GUI 23:30:29 because nobody tested it 23:30:41 SviMik 23:38:41 mattock I can set up a virtual machine with windows for you if you need, with remote desktop access