Hi,

Here's the summary of today's IRC meeting.

- - ---

COMMUNITY MEETING

Place: #openvpn-meeting on irc.freenode.net
List-Post: openvpn-devel@lists.sourceforge.net
Date: Monday 1st Feb 2015
Time: 20:00 CET (19:00 UTC)

Planned meeting topics for this meeting were here:

<https://community.openvpn.net/openvpn/wiki/Topics-2016-02-01>

The next meeting has not been scheduled yet, but will probably be arranged two weeks from now.

Your local meeting time is easy to check from services such as

<http://www.timeanddate.com/worldclock>

SUMMARY

cron2, d12fk, janjust, mattock, snair, syzzer and valdikss participated in this meeting.

---

Discussed ValdikSS's fix to the block-outside-dns option on Windows Vista:

<https://community.openvpn.net/openvpn/ticket/648>
<http://article.gmane.org/gmane.network.openvpn.devel/10998>
<https://github.com/ValdikSS/openvpn-with-patches/commit/664763ac3cd1e23713ecf75456ef26ccb92e6231>

Snair took a quick look and based on that the patch looks ok. Mattock will create and publish test installers with the patch tomorrow, after which snair, mattock and janjust will do testing on Windows 7/8/10 and Windows Server 2012. Further testing by other community members will help build confidence in the revamped patch

--

Discussed the Interactive service patch, in particular the security aspects of it. At installation time, admin gets to choose whether config files are restricted or not in some way, e.g. by only loading them from a certain directory or from any place where the user has access to. The communication channel between GUI and service will be changed to ensure that only startup-relevant options can be passed from GUI to service (so a rogue gui can't do bad stuff).

Snair will do some practical tests to ensure that the restrictions imposed by the interactive service cannot be circumvented.

---

Full chatlog has been attached to this email.

--
Samuli Seppänen
Community Manager
OpenVPN Technologies, Inc

irc freenode net: mattock
(21:02:48) mattock: howdy
(21:02:51) ValdikSS: me
(21:03:03) mattock: quick response to a question I did not have time to ask :P
(21:03:11) mattock: who else?
(21:04:04) mattock: (is here)
(21:04:09) cron2_: muh
(21:05:04) mattock: xkjyeah can't make it because of timezone issues (UTC+8)
(21:05:27) mattock: lev__, ltfish?
(21:05:32) janjust [~janjust@openvpn/community/support/janjust] è entrato nella 
stanza.
(21:05:38) mattock: ah hi!
(21:05:43) janjust: hi!
(21:06:46) mattock: four people already, so I guess we can start
(21:07:02) janjust: I see 10 on the list :) ?
(21:07:31) mattock: before we start, I should mention that there are some 
fairly odd issues with our download servers, with links to I602/I002 installers 
missing from the webserver index 
(https://swupdate.openvpn.org/community/releases/)
(21:07:32) vpnHelper: Title: Index of /community/releases/ (at 
swupdate.openvpn.org)
(21:07:38) mattock: so I'll probably have to multitask a bit
(21:07:52) mattock: janjust: most are just idling, even though this is just a 
meeting channel
(21:10:03) cron2_: the most interesting discussion seems to happen on the list 
between selva and d12fk now, and neither is here...
(21:10:14) cron2_: review!
(21:10:35) janjust: so we only want to discuss the interactive service bit?
(21:10:56) mattock: topics: 
https://community.openvpn.net/openvpn/wiki/Topics-2016-02-01
(21:10:58) vpnHelper: Title: Topics-2016-02-01 – OpenVPN Community (at 
community.openvpn.net)
(21:11:00) ValdikSS: Can we start with block-outside-dns update for Vista?
(21:11:12) janjust: there's something I'd like to figure out how to do in 
windows: let openvpn run in 'normal' mode and only when privileged mode is 
required, THEN pop up the dialog
(21:11:43) janjust: but that's "wishlist" stuff... block-outside-dns seems more 
practical and relevant for now
(21:11:54) mattock: I'm fine with starting with that
(21:13:40) ValdikSS: Well, it seems that Vista can't do non-equal matching for 
a program name and fails, so I edited the code to whitelist openvpn.exe before 
all other filtering rules and use equal matching instead.
(21:15:33) ValdikSS: https://community.openvpn.net/openvpn/ticket/648
(21:15:36) vpnHelper: Title: #648 ("Can't add WFP" filter being fatal?) – 
OpenVPN Community (at community.openvpn.net)
(21:16:21) cron2_: feature-ack, but someone who understands windows needs to 
review the code... selva or ltfish have been very helpful with the initial wfp 
patch but seem busy these days
(21:16:54) janjust: agreed, and I don't understand the WFP details myself eitehr
(21:17:55) mattock: valdikss: t
(21:18:06) mattock: he code is in your GitHub fork, right?
(21:18:46) cron2_: on the list
(21:18:56) snair [~snair@2600:3c03:e001:3b00::1004] è entrato nella stanza.
(21:19:04) mattock: selva, I presume
(21:19:04) cron2_: http://article.gmane.org/gmane.network.openvpn.devel/10998
(21:19:06) vpnHelper: Title: Gmane -- PATCH Update block outside dns to work on 
Windows Vista (at article.gmane.org)
(21:19:20) ValdikSS: mattock: 
https://github.com/ValdikSS/openvpn-with-patches/commit/664763ac3cd1e23713ecf75456ef26ccb92e6231
(21:19:26) vpnHelper: Title: Update --block-outside-dns to work on Windows 
Vista · ValdikSS/openvpn-with-patches@664763a · GitHub (at github.com)
(21:19:27) mattock: thanks guys!
(21:19:29) snair: sorry to be late -- yes selva here .. hi
(21:19:32) janjust: Hi snair!
(21:19:40) cron2_: hi snair, cool you could make it
(21:19:47) cron2_: and thanks for the review
(21:19:57) snair: hi janjust! hi cron2_ !
(21:20:08) janjust: which timezone are you in , selva?
(21:20:24) snair: janjsut: EST
(21:20:37) janjust: ow that's not too bad I guess
(21:20:43) mattock: hi snair!
(21:21:01) snair: hi mattock !
(21:22:34) snair: Did anyone mention what happens to --block-dns with iService?
(21:22:59) mattock: I have not heard of anything
(21:23:59) cron2_: Good point.  I'd guess it will blow up, as openvpn.exe has 
no elevated privs anymore - so it would need to be moved into the iservice as 
well (and/or duplicated as we have now)
(21:24:09) snair: yes
(21:24:41) cron2_: the iservice code itself is fairly well tested as 
astaro/sophos is shipping it with their product since ~3 years, but they don't 
have block-dns
(21:25:34) snair: cron2_: I'm still concerned with allowing any config file, 
any options etc...
(21:25:39) cron2_: ok, on my TODO list.  But that is not complicated.
(21:25:46) d12fk: back
(21:26:20) cron2_: snair: "any options" I do not see a major issue with - after 
all, it's running with your privs, so --up & friends cannot do more than you 
can (which is much better than today...)
(21:26:35) d12fk: would be cool to configure the allowed options and their 
values via regex
(21:26:54) d12fk: it's just about --route really
(21:27:05) snair: What about --remote
(21:27:18) janjust: cool but nearly undoable ... there're all kinds of scripts 
possible
(21:27:25) d12fk: and anything else we move into the service
(21:27:35) cron2_: snair: what's the attack scenario you're afraid of?
(21:27:50) mattock: didn't we have an option whilelisting discussion a while 
back regarding Tunnelblick?
(21:27:53) cron2_ è ora conosciuto come cron2
(21:27:57) janjust: yup mattock 
(21:28:02) snair: set up a server and push routes, for example
(21:28:09) cron2: we did, but tunnelblick is running openvpn with admin privs, 
which we try to stop doing here
(21:28:33) cron2: snair: yes, so you can interfere with people's VPN - but what 
do you gain?
(21:28:34) janjust: d12fk, what do you mean "just about --route" ?  
(21:28:45) d12fk: --remote is not passed to the service
(21:28:46) cron2: janjust: talking about iservice context
(21:28:53) snair: even if openvpn has user privs, the service is ready to setup 
any routes that it asks for
(21:28:55) d12fk: so you could alter where you connect to, but you can 
currently also just pass a --config to the GUI to start with
(21:29:18) d12fk: routing is done with elevated privs, the rest is run as the 
user who runs the gui
(21:29:20) cron2: snair: yes, but where is the attack in that?  you can kick 
someone off their corporate network, so they klick on "stop vpn" and are back
(21:29:22) snair: currently you need admin privs, so allowing any config is ok
(21:29:39) cron2: currently you have admin privs, so we live in full danger 
zone...
(21:30:18) janjust: hmm on the client side there are more scripts than --up and 
--route  - although on windows it hardly makes sense to use an --up script
(21:30:28) janjust: and I foresee a split between tun mode and tap mode 
(21:30:46) snair: cron2_: trick the user to run a rogue program as user and 
redirect all traffic kind of scenario is what worries me..
(21:30:47) cron2: janjust: openvpn runs with the user's privileges, so --up and 
friends run with user privs as well - "nothing you cannot do from a cmd.exe 
window"
(21:31:03) cron2: snair: that rogue program could just https to its home base...
(21:31:22) janjust: cron2: it gets trickier when the certificate/keypair is 
located in a protected place
(21:31:46) d12fk: i think we're past the discussion if option limiting is 
useful or not
(21:31:49) d12fk: it is
(21:31:56) d12fk: just not implemented as of yet
(21:31:57) janjust: agreed
(21:32:04) cron2: I totally do not see the point in it :-)
(21:32:32) cron2: it's lots of work, and if you only allow admins to install 
config files (-> which we want to do), admins can mess your machines anyway
(21:32:34) d12fk: windows limited access to the the routing table and we're 
opening it again
(21:33:13) d12fk: currently users can install routes by compiling the gui to 
pass their wanted --route in addition
(21:33:14) snair: If the OS restriction on setting route require admin is 
pointless, then I lose.. 
(21:34:06) cron2: d12fk: ok, that's something we might reconsider - only permit 
--config files from an (installation-time-checkbox-dependant) admin directory, 
no other options from the gui->service->openvpn
(21:34:15) cron2: s/reconsider/consider/
(21:34:52) d12fk: the gui passes all kinds of stuff on the comdline in addition 
to what is in the config file
(21:34:56) cron2: snair: of course you can tie down everything, and what 
happens?  people run the GUI with admin privileges because that stuff just gets 
in the way - and bam, you have full rights for every script, not just "rights 
to install routes"
(21:34:57) snair: fine, consider please.. :-)
(21:35:00) d12fk: --msg-channel is one of them
(21:35:31) snair: Only if the user has admin privs -- I am looking at this from 
a sysadmin perspective
(21:35:51) janjust: errr d12fk , which option is that?
(21:35:53) cron2: d12fk: understood, "only those that are needed to make 
openvpn start, open the admin interface, open given config"
(21:36:38) cron2: snair: as am I.  Admin puts config in a well-defined place 
user cannot write.  GUI will only ever use configs in \program 
files\openvpn\config\ - where's the remaining attack (provided option filtering 
gui->service is done)
(21:36:42) cron2: ?
(21:37:23) snair: The user can write a GUI that passes arbitrary options
(21:37:26) cron2: but option filtering gui->service is very easy, as only a 
very small number of options need be passed - possibly, one could do away with 
passing "openvpn command line" options there totally and just pass a structure 
that has all you need, and the service builds the command line from it
(21:37:27) d12fk: janjust: it coming with the i service
(21:37:41) cron2: snair: of course you wouldn't filter that in the gui, but in 
the service
(21:38:18) d12fk: i think we agreed to passing them not as string but 
structure, so we don't have to do string parsing
(21:38:22) snair: cron2: ok, filter in the service side is all that's needed
(21:38:24) janjust: can't we just steal (use) what NetworkManager has?
(21:38:27) janjust: the method is similar
(21:38:38) d12fk: on windows?
(21:38:44) cron2: janjust: it's using a special plugin
(21:39:02) janjust: no but NetworkManager has an openvpn plugin that also 
providers a "barrier" between the gui and the service
(21:39:09) cron2: ... which talks to the NM privileged process using a pipe... 
which is about what we do now :-) - the built-in code in openvpn is very 
straightforward
(21:39:27) cron2: so actually NM could do that, and do away with their plugin
(21:39:57) cron2: the NM approach is a ugly hack that relies on environment 
variables and doesn't communicate properly what happens... this is much better
(21:40:27) janjust: hehe I smell a little NIH syndrome ;)
(21:40:30) cron2: snair: good :-)
(21:40:47) d12fk: actually it was not invented in munich =P
(21:41:17) snair: so we all seem to be in agreeement :-)
(21:41:29) d12fk: yep
(21:41:32) cron2: so let me try to summarize
(21:42:09) cron2: - at installation time, admin gets to chose whether config 
files are restricted or not (however that is done effectively - restrict to a 
directory or "to wherever the user has access", etc.)
(21:42:42) cron2: - the communication channel between gui and service gets 
changed to ensure that only startup-relevant options can be passed from GUI to 
service (so a rogue gui can't do bad stuff)
(21:43:28) d12fk: on thing for the future, which would be nice, is that users 
can download the config(s) themselves. that breaks the "admin puts config in a 
secure place" precondition however
(21:43:30) d12fk: maybe
(21:43:44) d12fk: we could let the admin decide as you put it
(21:44:14) d12fk: and have the gui search for configs in program files and 
%home%
(21:44:26) janjust: it could also depend on the config file - some configs do 
not require any system routing changes 
(21:44:29) cron2: for my corporate users, I'm not worried much about installing 
bogus routes, but I *am* worried about them running stuff like --up scripts 
with privileges
(21:44:48) cron2: janjust: in that case, just don't start the iservice at all 
:) and the gui will just run openvpn.exe directly
(21:45:13) janjust: cron2, true, but how will the gui (user) choose between 
those 2 paths
(21:45:24) cron2: "iservice there -> use iservice.  iservice not there -> not 
use iservice"
(21:45:51) snair: cron2: there could be rogue iservices !
(21:45:52) cron2: it does that today, just nobody notices because nobody (but 
me :) ) has iservice running
(21:46:05) cron2: snair: indeed.  What is the attack angle here?
(21:46:21) janjust: hm I'm thinking of a scenario where the admin has installed 
config files but a user wants  to add a harmless config of his/her own
(21:46:26) cron2: "I'm a service, I have all the privileges in the world, now I 
trick users into telling me about their openvpn config"
(21:47:29) snair: cron2: start a rogue iservice, open a named pipe and wait for 
a GUI to conenct as admin -- then impersonate
(21:47:59) cron2: snair: well, this is why we must no longer install the gui 
with admin privs, obviously, as soon as we have an iservice"
(21:48:20) d12fk: but then you need to have the right to impersonate in the 
first place
(21:48:28) d12fk: normal users do not have that
(21:48:56) snair: d12fk: I think same logon session will allow impersonation
(21:49:15) janjust: but wouldn't you need admin rights to start a rogue service?
(21:49:32) d12fk: that a priv that is assigned to accounts not sessions afaik
(21:49:45) snair: janjust: no just alimited user process that opens the named 
pipe and wait
(21:50:47) snair: d12fk: last time I checked same logon session was enough   -- 
will check again
(21:52:45) snair: see under 
https://msdn.microsoft.com/en-us/library/aa378618(VS.85).aspx
(21:53:29) d12fk: however if the process would run in the same session then it 
would be started by the user and would have the same rights anyways
(21:54:47) snair: d12fk: think of user runs GUI as admin rights (using UAC)
(21:55:29) d12fk: that's why i alsways said the this should never be merged in 
the first place
(21:55:41) janjust: hm but that can be countered by checking the security info 
of the named pipe that you're connecting to
(21:56:27) snair: d12fk: even before we merged it users were using run as admin
(21:57:04) d12fk: yes, but then it was their fault, now it's the communities 
responsibility because we made them 
(21:57:10) snair: anyway easy to fix: GUI should not connect to any named pipe 
while running as admin
(21:57:29) cron2: can what janjust suggested be easily done?  "hey, you, what 
user are you running with?"
(21:57:31) d12fk: better: gui should not run as admin
(21:57:43) snair: d12fk: agreed -- if I had realized this I wouldn't have 
agreed to the highestPriv merge... 
(21:57:51) janjust: AFAICT yes, cron2 
(21:57:52) janjust: 
https://msdn.microsoft.com/en-us/library/windows/desktop/aa365600%28v=vs.85%29.aspx
(21:57:54) vpnHelper: Title: Named Pipe Security and Access Rights (Windows) 
(at msdn.microsoft.com)
(22:00:13) snair: as a safety measure I would also say openvpn.exe should not 
use msg_channel while running as admin
(22:01:09) cron2: that sounds like a small local change which would kill this 
whole attack for good
(22:01:20) snair: yep
(22:01:27) cron2: (and if someone *wants* to run the GUI as admin, they can, 
but they don't need the iservice then anyway)
(22:01:37) cron2: "their decision, their foot"
(22:01:40) d12fk: i think it would even be sufficient to only do it there and 
not duplicate the code
(22:03:10) snair: you mean running openvpn.exe as admin with --msg-channel is 
ok?  Probably yes, but I'm not sure..
(22:03:34) d12fk: no just saying checking in ovpn only is sufficient
(22:03:45) d12fk: the chack in the gui can be dropped
(22:04:11) snair: no, the GUI running as admin and connecting to the service 
pipe is a bigger concern
(22:04:41) d12fk: but if openvpn blocks it that's not a problem
(22:05:00) janjust: that's different code, though ... and I can try to find out 
if the link I mentioned works as a countermeasure
(22:05:10) d12fk: the pipe server would need impersonate privileges
(22:05:34) d12fk: so it would be running with a high priv account anyways
(22:06:23) snair: d12fk: the pipe server will have it if it was a process 
started by the same user -- the problem is UAC whgich makes users "bipolar"
(22:06:39) d12fk: that's not true
(22:07:11) snair: That's you trick a user to click on a link and start the 
pipeserver. In teh same logon session the user runs the GUI with admin rights
(22:07:18) d12fk: if the pipe server was started using uac, then you granted it 
admin anyways
(22:07:25) d12fk: otherwise it cannot impersonate
(22:08:13) d12fk: so in you scenario the pipe server runs as user and the gui 
runs as admin? then the pipe server cannot impersonate
(22:08:14) snair: MSDN says Same logon session is enough to impersonate -- not 
sure whether this changed in recent version fo windoes. I'll test this
(22:08:28) d12fk: where dos it say that?
(22:08:46) snair: https://msdn.microsoft.com/en-us/library/aa378618(VS.85).aspx 
scroll down to remarks
(22:09:34) d12fk: "A process (or another process in the caller's logon session) 
created the token using explicit credentials through LogonUser or LsaLogonUser 
function."
(22:09:36) d12fk: that?
(22:10:04) snair: yes
(22:10:28) d12fk: But then you have to call logon user, which consumes 
credentials, no?
(22:11:09) d12fk: if you do that then you need no gui after all
(22:11:27) d12fk: you give the process your creds, so it can impersonate you
(22:11:35) d12fk: straight forwards, i'd say
(22:12:20) snair: I read it as applies only to named pipe client impersonation 
(22:13:10) d12fk: key word is token, so you got the token by calling one of the 
functions, then you can impersonate using that token
(22:13:48) d12fk: but we get the token by checking who's on the other end of 
the pipe and then you need  the SeImpersonatePrivilege privilege
(22:14:04) d12fk: only elevated accounts have it
(22:14:20) d12fk: you can create other accounts yourself, but then you're 
stupid =)
(22:15:08) snair: I've not tested this so probably you are right. Will give it 
a try tonight..
(22:15:18) d12fk: cool
(22:15:38) d12fk: if not the docs are very badly written if i'm asked
(22:16:40) snair: ok, better be safe than ... will get back to this later..
(22:17:35) d12fk: fine with me
(22:17:54) d12fk: i'll drop out now, got very silent anyways lately
(22:18:05) syzzer: nice to see we have people that actually understand the 
windows privilege system :)
(22:18:09) mattock: yeah
(22:18:32) syzzer: and sorry for slacking up with the iservice, d12fk.  too 
much other stuff :(
(22:18:33) mattock: d12fk: thinkgs go silent because of the depth of the topic
(22:18:41) mattock: nobody else had any input :)
(22:18:44) snair: is the meeting still on :-)
(22:18:49) mattock: yes
(22:19:06) d12fk: alright, as soon as we move away from the color of the 
bikeshed... =P
(22:19:07) mattock: so can someone summarize what was said?
(22:19:33) d12fk: cron2's summary earlier was to the point
(22:19:38) cron2: syzzer: oh, good that you are here.  I need an ACK for the 
openvpn side of the iservice v3 patch
(22:19:39) mattock: ok, that I have already
(22:19:46) d12fk: [20:42] <cron2> so let me try to summarize
(22:19:48) d12fk: [20:42] <cron2> - at installation time, admin gets to chose 
whether config files are restricted or not (however that is done effectively - 
restrict to a directory or "to wherever the user has access", etc.)
(22:19:49) d12fk: [20:42] <cron2> - the communication channel between gui and 
service gets changed to ensure that only startup-relevant options can be passed 
from GUI to service (so a rogue gui can't do bad stuff)
(22:20:04) mattock: ok, good enough for me
(22:20:04) cron2: syzzer: I basically worked in all that was said about v1, but 
now I changed so much that someone "who is not me" should re-review that part
(22:20:09) d12fk: in addition snair will check the logonuser case
(22:20:43) snair: what about --block-dns?
(22:20:44) ***cron2 is happy to see progress here :)
(22:21:06) syzzer: cron2: is "stare at code" sufficient for the patch/
(22:21:15) d12fk: --block-dns would have to be implemented in the service
(22:21:22) syzzer: I recall that testing it was painful...
(22:21:23) cron2: snair: I suggest we get "what we have" into the tree so it 
can be tested further, and then add the necessary bits for --block-dns (service 
plus callout plus structure)
(22:21:42) snair: ok
(22:21:48) cron2: syzzer: the openvpn side can be stared-at, I think.  It 
shrunk quite a bit after I hid the msg_channel in tt->options
(22:22:12) cron2: snair: just process-wise, so we can make individual steps 
that are not holding up everything before it is perfect
(22:22:33) d12fk: ok cu guys around
(22:22:37) syzzer: yeah, that should improve thing quite a bit - I did that a 
while ago, but never managed to compile it to a working windows service :(
(22:22:41) cron2: syzzer: but testing actually worked out well for me - tested 
that last week
(22:22:54) snair: cron2: sure
(22:23:05) cron2: d12fk: thanks for making it, and good night :)
(22:23:14) d12fk: nite
(22:23:22) syzzer: good night
(22:23:37) janjust: goodnite d12fk 
(22:23:50) snair: bye d12fk
(22:23:53) cron2: so... the other pressing windows issue that could be 
discussed today is valdikss' fix for --block-outside-dns in 
http://article.gmane.org/gmane.network.openvpn.devel/10998
(22:23:55) vpnHelper: Title: Gmane -- PATCH Update block outside dns to work on 
Windows Vista (at article.gmane.org)
(22:23:58) d12fk ha abbandonato la stanza ("Konversation terminated!").
(22:24:17) cron2: the "how do we do service in future" needs the 
openvpnservice2 author who is in GMT+8 as I understand
(22:24:37) mattock: yes, he is
(22:25:08) mattock: I think we can, however, discuss/select the basic approach 
without him
(22:25:19) mattock: he's almost certainly biased towards ovpnserv2
(22:25:21) mattock: :)
(22:25:50) mattock: anyways, let's do ValdikSS's --block-outside-dns first
(22:26:12) mattock: we already started that topic, then snair and d12fk 
appeared and Interactive Service took over
(22:26:36) snair: sorry abt that
(22:26:50) mattock: here are the links for your convenience:
(22:26:50) mattock: https://community.openvpn.net/openvpn/ticket/648
(22:26:50) mattock: http://article.gmane.org/gmane.network.openvpn.devel/10998
(22:26:50) mattock: 
https://github.com/ValdikSS/openvpn-with-patches/commit/664763ac3cd1e23713ecf75456ef26ccb92e6231
(22:26:52) vpnHelper: Title: #648 ("Can't add WFP" filter being fatal?) – 
OpenVPN Community (at community.openvpn.net)
(22:26:53) vpnHelper: Title: Gmane -- PATCH Update block outside dns to work on 
Windows Vista (at article.gmane.org)
(22:26:54) vpnHelper: Title: Update --block-outside-dns to work on Windows 
Vista · ValdikSS/openvpn-with-patches@664763a · GitHub (at github.com)
(22:28:04) janjust: I'm just wondering : does Vista need this patch in the 
first place? is there a dns leakage issue on Vista?
(22:28:36) mattock: it should not have any problems
(22:28:55) mattock: leakage issues I mean
(22:29:09) mattock: is the --block-outside-dns useful even if there is no 
leakage?
(22:29:24) mattock: I mean is there a use-case for it then?
(22:31:04) mattock: ValdikSS: ^^^
(22:33:59) snair: There may not be a need for this feature on vista, but we 
have only one executable and it should run on vista
(22:34:22) syzzer: btw, cron2, I will stare at the iservice code.  just not 
today; too tired.
(22:34:30) cron2: syzzer: thanks, good night
(22:35:11) mattock: snair: ok, so having the patch work in Vista is important
(22:35:27) mattock: can you do a review?
(22:35:27) janjust: snair: having one executable does not mean you have to run 
the block-dns stuff on Vista (or even Win7); we could simply print an info 
message and not run the WFP stuff
(22:36:07) cron2: if the patch has no drawbacks, having common code that just 
works is easier than having an extra version check
(22:36:09) snair: janjust: you're right, we could do that 
(22:37:51) janjust: I agree with cron2, however: "if the patch has no 
drawbacks" ... but we'll need to test the new patch on the affected platforms 
(Win 8+, 10) to see we don't break anything
(22:38:24) snair: At first sight the code looks ok, but going through all those 
tests is a pain indeed
(22:41:46) snair: seeing the silence, it may be easier to review, test and 
merge the code than discuss what to do.
(22:42:18) mattock: I could merge the patch and provide test installers
(22:42:36) mattock: it will take a while to get the tests done
(22:42:39) cron2: that would certainly help testing
(22:42:52) mattock: what exactly needs to be tested?
(22:43:46) snair: That it works on vista and blocks dns on win8/10
(22:44:04) cron2: that --block-outside-dns actually does what it says - openvpn 
works, no other dns queries ever leave via the normal LAN or wifi interface
(22:44:51) snair: I can do a review and test the exec on Win7/win10 but more 
tests by end users would be useful  -- making installers available woudl 
encourage that.
(22:45:54) mattock: I can test Windows Server 2012 and Windows 7
(22:46:31) mattock: any hints on how to verify blocking is working properly? a 
combination of packet capture and nslookup or whatever?
(22:47:43) mattock: according to Trac ValdikSS has setup a Windows Vista (VM), 
so that angle is covered 
(22:47:54) cron2: not nslookup, but stuff like ping or web browsing
(22:48:08) mattock: cron2: ok
(22:48:09) cron2: nslookup isn't using windows APIs so the results are different
(22:48:13) snair: https://www.dnsleaktest.com/ is an easy quick test though 
packet capture would be better.
(22:48:14) vpnHelper: Title: DNS leak test (at www.dnsleaktest.com)
(22:48:31) cron2: (nslookup *will* work, but you need to be careful what you're 
querying and what servers to specify to get meaningful results)
(22:48:34) mattock: I will produce test installers tomorrow
(22:49:24) mattock: maybe this is enough for today?
(22:49:47) janjust: think so, almost 2 hours
(22:49:58) janjust: I'll scrounge around for windows 8
(22:50:04) mattock: great!
(22:50:10) snair: I've to runn too soon..
(22:51:29) mattock: ok, let's continue the discussion later!
(22:51:33) mattock: good night guys!
(22:51:37) cron2: good night :)
(22:51:47) snair: good night all -- well still day here..
(22:52:14) janjust: good night :)

Reply via email to