Re: [PATCH] wg-quick: Android: Use ip link to set MTU

2021-01-04 Thread Harsh Shandilya

Hey Adam,

On 2021-01-03 05:59, Adam Irr wrote:

The ndc command used didn't work on my Nvidia Shield (rooted with a
custom-built kernel). The ip link command does work. I have only
tested this on an Nvidia Shield (Android TV - Version 9.0 Pie).

I couldn't find a lot of documentation on ndc so it's possible my
device/kernel is misconfigured. If you suspect this is the case, let
me know.


You couldn't find documentation because there isn't any, it's 
effectively "private API" and Google has broken it time and again. It is 
rather curious that you're running into this issue though, since we've 
had the NDC code in place since before Android 9 came out and went 
through breaking changes in every cycle without these specific 
invocations failing. The last ndc related problem we had was with the 
Android 11 release, where a similar fix[1] was implemented.


I've Cc'ed Jason for reviewing this change, but I'm decidedly curious as 
to why just the Nvidia SHIELD seems to need it.




Signed-off-by: Adam Irr 
---
 src/wg-quick/android.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/wg-quick/android.c b/src/wg-quick/android.c
index 326efa9..941c7b8 100644
--- a/src/wg-quick/android.c
+++ b/src/wg-quick/android.c
@@ -995,7 +995,7 @@ static void set_mtu(const char *iface, unsigned int 
mtu)

int endpoint_mtu, next_mtu;

if (mtu) {
-   cndc("interface setmtu %s %u", iface, mtu);
+   cmd("ip link set dev %s mtu %d", iface, mtu);
return;
}

@@ -1016,7 +1016,7 @@ static void set_mtu(const char *iface, unsigned 
int mtu)

endpoint_mtu = next_mtu;
}

-   cndc("interface setmtu %s %d", iface, endpoint_mtu - 80);
+   cmd("ip link set dev %s mtu %d", iface, endpoint_mtu - 80);
 }

 static void add_route(const char *iface, unsigned int netid, const 
char *route)

--
2.25.1


Cheers,
Harsh

1: 
https://git.zx2c4.com/wireguard-tools/commit/?id=9a0d65e2afbd6e418c883e0de8555b4fac29f1d5


Re: wireguard android don't prefer IPV6 endpoint

2021-01-03 Thread Harsh Shandilya



Hey Jérémy,

On 2021-01-03 15:58, Jérémy Prego wrote:

hello Harsh,


The WireGuard Android client is designed to prefer IPv4 over IPv6 as
of now
why did you make this choice? is there a known bug with ipv6? I think 
it

would be useful to put an option in the wireguard application, so that
we can choose.


Seems like the origin of this behavior is this[1] commit that cites 
issues with DNS64. I've CC'ed Jason who originally wrote the commit and 
should have better insight into it.




if I want to use an ipv6 tunnel, do I have another solution than to
create 2 tunels, one in ipv6 only, and another in ipv4 in order to be
able to use ipv6 when available and ipv4 when the place where i am has
no ipv6?


I believe that's the way as of now, yes.



I did not manage to add 2 endpoint in a single tunnel to put an 
endpoint

only ipv6 and another endpoint ipv4 / ipv6 to bypass the problem

thanks,

Jerem
Le 03/01/2021 à 14:48, Harsh Shandilya a écrit :

Hey Jérémy,

On 2021-01-02 08:27, Jérémy Prego wrote:

I confirm the same problem in wifi

Le 27/12/2020 à 07:02, Jérémy Prego a écrit :

hello,

I've always encountered a bug with android wireguard when using an 
ipv4

/ ipv6 endpoint.

I tested with two phones:
Huawei p10 lite android 8.0 emui 8
Xiaomi poco m3 android 10.0 miui 12

When i'm in LTE (not yet been able to test in wifi), wireguard 
connects
to the endpoint in ipv4 and not in ipv6, and i don't understand why 
it

is doing that.


The WireGuard Android client is designed to prefer IPv4 over IPv6 as
of now
(https://git.zx2c4.com/wireguard-android/tree/tunnel/src/main/java/com/wireguard/config/InetEndpoint.java#n97).
This may or may not change in the future, and we'll announce here if
it does.


However, chrome, for example, does use ipv6 by default and not ipv4.

My phone does recover an ipv6 in 2a01: cb1a  / 64 and not an
ipv6 type fc00 / fd00 / fe80 ...
I also specify that if I only have an  record, the tunnel works
fine
in ipv6. but suddenly, I can no longer connect to wifi which only
have ipv4.

I would like wireguard to favor ipv6 when it is available, and
otherwise
switch to ipv4.

Is it possible ?

Thanks,

Jerem


Cheers,
Harsh


1: 
https://git.zx2c4.com/wireguard-android/commit/?h=c23d58bc27cf9807fc3405c8c99cc67cf4b21f25


Cheers,
Harsh


Re: wireguard android don't prefer IPV6 endpoint

2021-01-03 Thread Harsh Shandilya

Hey Jérémy,

On 2021-01-02 08:27, Jérémy Prego wrote:

I confirm the same problem in wifi

Le 27/12/2020 à 07:02, Jérémy Prego a écrit :

hello,

I've always encountered a bug with android wireguard when using an 
ipv4

/ ipv6 endpoint.

I tested with two phones:
Huawei p10 lite android 8.0 emui 8
Xiaomi poco m3 android 10.0 miui 12

When i'm in LTE (not yet been able to test in wifi), wireguard 
connects

to the endpoint in ipv4 and not in ipv6, and i don't understand why it
is doing that.


The WireGuard Android client is designed to prefer IPv4 over IPv6 as of 
now 
(https://git.zx2c4.com/wireguard-android/tree/tunnel/src/main/java/com/wireguard/config/InetEndpoint.java#n97). 
This may or may not change in the future, and we'll announce here if it 
does.



However, chrome, for example, does use ipv6 by default and not ipv4.

My phone does recover an ipv6 in 2a01: cb1a  / 64 and not an
ipv6 type fc00 / fd00 / fe80 ...
I also specify that if I only have an  record, the tunnel works 
fine
in ipv6. but suddenly, I can no longer connect to wifi which only have 
ipv4.


I would like wireguard to favor ipv6 when it is available, and 
otherwise

switch to ipv4.

Is it possible ?

Thanks,

Jerem


Cheers,
Harsh


Re: Wireguard Android: the application is stopped unexpectedly

2021-01-03 Thread Harsh Shandilya

Hey Jérémy,

On 2021-01-02 11:39, Jérémy Prego wrote:

hello and happy new year,

I have a problem with the wireguard application on my Xiaomi poco m3
(Android 10 / miui 12.0.5). I have set all the correct permissions so
that the application is not killed by miui, but it always ends up
stopping anyway.
In the attached log, I see some errors when stopping the application,
around 11:30 am


The auditd lines are harmless, and the app itself seems to have no 
information as to why its being killed. There are no crashes, and no 
fatal errors being logged. I'm rather confident that this is MIUI's 
doing, because I have a Samsung phone that has been running the same 
WireGuard client for 14 days straight without failing or being force 
closed. Is there a possibility that a new MIUI "optimisation" showed up 
that you did not disable yet? I don't believe the reason for your issue 
is a bug in the app.




I remain available if you need more information

thanks,

Jerem


Cheers,
Harsh


Re: Android Notification Panel Removed in Android 10

2020-12-06 Thread Harsh Shandilya


Hey Justin,

On Nov 30 2020, at 2:23 am, Justin McAfee  wrote:

> It appears that myself and others have noticed that Android 10 has
> removed the VPN status and connection details from the top-down
> notifications UI.
> 
> If a VPN is active, the Key icon appears, but pulling down the
> Notifications bar shows nothing.

That's right, because it was moved further up into the Quick Settings
panel. If you pull again you will see a 'Network is being monitored'
warning below the quick settings tiles, clicking which will take you to
VPN settings.

> 
> This used to be a quick and easy way to verify WG connectivity, active
> tunnel, and amount of bandwidth utilized.
> 
> This can still be accomplished but is done by long pressing the
> wireguard toggle in the quick settings (or opening the wireguard
> application) then selecting the active tunnel and viewing the transfer
> details on the bottom.
> 
> I'm sure this will come up again, but wanted to share with you all.
> 
> Thanks for all the work Jason, et al. put into this project. Its
> greatly appreciated.
> 
> 
> - AV

Cheers,
Harsh


Re: Android Kernel Backend Bug

2020-06-17 Thread Harsh Shandilya



On Jun 14 2020, at 11:59 pm, ND  wrote:

> I've been trying to report an issue regarding the Android Kernel
> backend on
> irc freenode. I was told to email here.
> 
> The problem:
> On LTE, my LTE carrier assigns two DNS servers, a private 10.x.x.x IP and
> 8.8.8.8.
> When using KERNEL BACKEND, establishing a tunnel doesn't override the
> carrier assigned DNS and DNS resolution goes through 8.8.8.8. All traffic
> still goes through the tunnel but the DNS does not respect the client
> config.
> 
> On Userspace backend, the DNS i set in the client config (10.0.0.1
> i.e. my
> PiHole server) is respected.
>
> I'm on One Plus 6 latest Android Q. I've tried 2 kernels: Cleanslate and
> Radioactive kernel. Both support Wireguard.
> 

I've CC'ed Jason who should have a better idea of what's going wrong
here. I sadly cannot confirm this on my end since I've upgraded to
Android R where Google has continued to butcher the command-line
tooling, thus breaking wg-quick.


Re: Shouldn't devices tethered to a device using Wireguard share the same IP?

2020-05-26 Thread Harsh Shandilya



On May 26 2020, at 9:28 pm, Jose Marinez  wrote:

> Hi Harsh,
>  
> Here's the situation, there's a bunch of us that are using these MiFis
> for use in China and HK. I'm sure you've heard in the news of what's
> happening in HK at the moment. I have a copy of the kernel but haven't
> managed to do the manifest.xml nor the other file. But what I did do
> was contact the manufacturer that is here in HK and they've agreed to
> collaborate. If I was the only one benefiting from this it wouldn't be
> fair. The manufacturer understands the severity but can't for obvious
> reasons push an OTA rooted kernel to all their devices. They've asked
> me if there's a way to patch their kernel tree with a Wireguard
> module. I told them I would ask and here I am.
>  
> I have the kernel here, please disregard the ads:
> https://www.sendspace.com/file/79o6c8 
>  
>  
> What can they do to get their kernel patched?

This repository will get Android kernels started in the most
straightforward fashion: https://git.zx2c4.com/android_kernel_wireguard/about/.

> There's a bunch of DOD people and families that will highly appreciate
> this. I will make certain a nice donation comes your way.
>  
> Thanks,
> Jose
>  
> On Thursday, May 21, 2020, 7:21 PM, Jose Marinez  wrote:
>> Thank you. I will try it out. Fingers crossed!!!
>>  
>>  
>>  
>>  
>>  
>>  
>>  
>> On Thursday, May 21, 2020, 10:29:12 AM EDT, Harsh Shandilya
>>  wrote:  
>>  
>>  
>>  
>>  
>>  
>>  
>> On May 21 2020, at 7:52 pm, Jose Marinez  wrote:
>>  
>>> Thank you so much Harsh. What's the best way to make my kernel
>>> available to you? Even if you could allow me to push to the repo I
>>> wouldn't know where to save it.
>>  
>>  
>> The repo is maintained on GitHub so you will have to fork the repository
>> and create a pull request with your changes, help.github.com has very
>> beginner friendly documentation if this is your first time around this.
>>  
>> The process for adding a kernel is a bit involved and the documentation
>> isn't quite fleshed out. You can check the steps out here[1] and an
>> example of adding a new device to the repository here[2].
>>  
>> 1: 
>> https://github.com/WireGuard/android-wireguard-module-builder#adding-your-phones-kernel
>> 2: https://github.com/WireGuard/android-wireguard-module-builder/pull/3/files
>>  
>>  
>>>  
>


Re: Shouldn't devices tethered to a device using Wireguard share the same IP?

2020-05-21 Thread Harsh Shandilya


On May 21 2020, at 7:52 pm, Jose Marinez  wrote:

> Thank you so much Harsh. What's the best way to make my kernel
> available to you? Even if you could allow me to push to the repo I
> wouldn't know where to save it.

The repo is maintained on GitHub so you will have to fork the repository
and create a pull request with your changes, help.github.com has very
beginner friendly documentation if this is your first time around this.

The process for adding a kernel is a bit involved and the documentation
isn't quite fleshed out. You can check the steps out here[1] and an
example of adding a new device to the repository here[2].

1: 
https://github.com/WireGuard/android-wireguard-module-builder#adding-your-phones-kernel
2: https://github.com/WireGuard/android-wireguard-module-builder/pull/3/files



Re: Shouldn't devices tethered to a device using Wireguard share the same IP?

2020-05-21 Thread Harsh Shandilya



On May 21 2020, at 2:23 am, Jose Marinez  wrote:

> Thanks Mehdi. I'll take a look.
>  
> @Harsh,
>  
> Thank you for the clarification. I will reach out to both. I know that
> on macOS Catalina, Apple implemented new APIs for loading kernel
> modules now that the core of the OS is read-only. Not sure if they've
> done the same for iOS. Perhaps they'll announce that next month.
>  
>> @Harsh - I do have a rooted Android device with Wireguard on I can use
>> for tethering. Say I build my kernel module from the list you sent.
>> How do I go about integrating it into the Wireguard Android app?
>  
>>>> The app will automatically detect the kernel module and work with it,
>>>> there's no user-facing work to be done.
>  
> Let me see if I understand you correctly. Are you saying that if I
> take my rooted phone make the /kernels folder add the manifest.xml and
> corresponding version kernel, the regular Wireguard app in the Play
> Store will utilize it? I'm trying to make sure I follow.

If you contribute your device's kernel to the repository I linked for
you, then we will build and host a signed kernel module for it. When you
go into the WireGuard app's settings page, you will find an option
titled, at least in English, "Download and install kernel module".
Pressing that will attempt to locate the module previously created by
the WireGuard infrastructure and load it onto your device.

> Will it show this extended UI in Settings?
>  
> Thanks again,
> Jose
>  
>  
>  
>  
>  
>  
>  
> On Wednesday, May 20, 2020, 03:00:18 PM EDT, Mehdi Sadeghi 
> wrote:  
>  
>  
>  
>  
>  
> Hi Marinez and the list,
>  
> There is a very nice open source app that can share the VPN connection
> of a rooted device with clients on Android. Here is the link:
>  
> https://github.com/Mygod/VPNHotspot/blob/master/README.md
>  
> Cheers,
> Mehdi
>  
> Am 20. Mai 2020 20:40:31 MESZ schrieb Jose Marinez :
>>   Thank you all or the responses.Wow. This seems like a big issue for
>> Android and iOS. How many people like me that are tethering, go about
>> convinced their devices are inheriting the VPN connection? Are there
>> channels to communicate with both Google and Apple about this? @Harsh
>> - I do have a rooted Android device with Wireguard on I can use for
>> tethering. Say I build my kernel module from the list you sent. How
>> do I go about integrating it into the Wireguard Android
>> app?Thanks,JoseOn Wednesday, May 20, 2020, 1:53 PM, Harsh Shandilya
>>  wrote:>  
>>>  
>>> On May 20 2020, at 10:57 pm, Jose Marinez  wrote:
>>>  
>>>>   Hi Guys,
>>>>    
>>>> Can you tell me if this is working as it should?...
>>>>    
>>>> I have a phone with Wireguard on. I share the connection via
>>>> tethering/hotspot. When I check the IP on the tethered device I don't
>>>> see the same IP as my Wireguard endpoint. What I do see is an IP from
>>>> the phone's mobile network, the one running Wireguard. 
>>>>    
>>>> Is this right? Does this mean that traffic from that tethered device
>>>> not using the Wireguard connection? I'm confused.
>>>>    
>>>>    
>>>> Thanks,
>>>> Jose
>>>  
>>>>    
>>>  
>>> At least on Android, tethering data is *not* routed through your
>>> VPN. If
>>> you want that to happen, you will have to use the WireGuard kernel
>>> module which requires a rooted device and a custom kernel. On some
>>> supported devices
>>> (https://github.com/WireGuard/android-wireguard-module-builder/tree/master/kernels)
>>> you can use root access to install the required module automatically
>>> through the app, on your stock kernel.
>>>  
>>> Harsh
>>>>  
>  
> --  
> Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.
>


Re: Shouldn't devices tethered to a device using Wireguard share the same IP?

2020-05-20 Thread Harsh Shandilya



On May 20 2020, at 10:57 pm, Jose Marinez  wrote:

> Hi Guys,
>  
> Can you tell me if this is working as it should?...
>  
> I have a phone with Wireguard on. I share the connection via
> tethering/hotspot. When I check the IP on the tethered device I don't
> see the same IP as my Wireguard endpoint. What I do see is an IP from
> the phone's mobile network, the one running Wireguard. 
>  
> Is this right? Does this mean that traffic from that tethered device
> not using the Wireguard connection? I'm confused.
>  
>  
> Thanks,
> Jose
>  

At least on Android, tethering data is *not* routed through your VPN. If
you want that to happen, you will have to use the WireGuard kernel
module which requires a rooted device and a custom kernel. On some
supported devices
(https://github.com/WireGuard/android-wireguard-module-builder/tree/master/kernels)
you can use root access to install the required module automatically
through the app, on your stock kernel.

Harsh


Re: Android client fails to auto start connection if using a DDNS address as endpoint

2020-05-06 Thread Harsh Shandilya



On May 6 2020, at 4:33 pm, "Jason A. Donenfeld"  wrote:

> Looks like we don't have any retry logic for DNS resolution for the
> case in which there's temporarily no Internet:
> 
> https://git.zx2c4.com/wireguard-android/tree/tunnel/src/main/java/com/wireguard/config/InetEndpoint.java#n91
> 

What do we want to do here, then? Deferring config resolution feels
suboptimal. Deferring tunnel restoration on boot until we have a
connection looks like a semi-reasonable solution.


Re: Android client fails to auto start connection if using a DDNS address as endpoint

2020-05-06 Thread Harsh Shandilya



On Apr 19 2020, at 9:01 pm, Dark Shadow  wrote:

> I set up Wireguard and had it working fine when manually starting the
> connection.
> After that I wanted to have it be always on so that it would auto
> connect when turning the phone on but I found that it would say it was
> connected but no data would transfer.
> Manually turning it off and on again would fix the connection
> 
> If I change the server address to a IP address everything works
> correctly and the connection just works after turning on the phone.
> 
> I assume this is a bug that can hopefully be fixed as I would prefer
> to use the dyndns address in the settings.
>

Hm, that's pretty unexpected. Are you using the Go userspace backend or
the kernel module? The settings page will show that at the top if you're
unsure. I've Cc'ed Jason in case this is a problem lower down in the
stack.


Re: Question about Crowdin operation

2020-04-18 Thread Harsh Shandilya
April 19, 2020 1:38 AM, "Jason A. Donenfeld"  wrote:

> On Sat, Apr 18, 2020 at 9:56 AM Eiji Tanioka  wrote:
> 
>> Hi,
>> 
>> I'm translating WireGuard apps into Japanese.
>> I have a question about operation in Crowdin.
>> 
>> When translate, we translators need to clarify about original string's
>> context or meaning. In that situation, which option is preferred?
>> 
>> - send ML about question.
>> - in Crowdin, use comment.
>> - in Crowdin, use comment and flag "Issue".
>> - in Crowdin, use Discussion.
>> 
>> # I had used second option, but never mention to anyone.
>> # Should I had to mention to ?
>> 
>> Kind regards,
>> Eiji Tanioka
> 
> Hey Eiji,
> 
> CC'ing Harsh, Simon, and Roopesh, as they might have different
> opinions on what they prefer.
> 
> From my end, any form of communication is fine, whether its on Crowdin
> or on the mailing list, because lowering the barrier for people to
> volunteer their hours translating strings for us seems like a good
> thing.

Same goes for me, I'll take whatever's the easiest route for translators
and work with it.

> I suppose one advantage of Crowdin is that the discussions are placed
> beside the translations, which makes it easy for future people to
> correlate the two, and most discussions tend to be clarifications on
> particular strings, rather than interesting technical conversation
> that would benefit from the archiving afforded by mailing lists.
> 
> AFAICT, the "issue" flag sends us an email notification, which is a
> good thing if you need an answer.
> 
> Jason


Harsh Shandilya


Re: Question about Crowdin operation

2020-04-18 Thread Harsh Shandilya
April 18, 2020 9:25 PM, "Eiji Tanioka"  wrote:

> Hi,
> 
> I'm translating WireGuard apps into Japanese.
> I have a question about operation in Crowdin.
> 
> When translate, we translators need to clarify about original string's
> context or meaning. In that situation, which option is preferred?
> 
> - send ML about question.
> - in Crowdin, use comment.
> - in Crowdin, use comment and flag "Issue".
> - in Crowdin, use Discussion.
> 
> # I had used second option, but never mention to anyone.
> # Should I had to mention to ?

The second option is perfectly fine, though you'll have better luck if you
mention me or Jason since that will ensure Crowdin does not swallow up the
notifications.

> Kind regards,
> Eiji Tanioka


Re: [PATCH] Add german translation

2020-03-29 Thread Harsh Shandilya
On Mon, 30 Mar 2020 at 07:52, Björn Fiedler  wrote:
>
> Suggestion for german translation.
> Created with the help of andentered into crowdin.
>
> Signed-off-by: Björn Fiedler 
> ---
>  ui/src/main/res/values-de/strings.xml | 188 ++
>  1 file changed, 188 insertions(+)
>  create mode 100644 ui/src/main/res/values-de/strings.xml

We're only using Crowdin for translations now, so please translate on
there and I'll be syncing strings periodically and before each release
to ensure all latest translations are in the app.


Re: [PATCH wireguard-android] Explicit indexing for 'import_partial_success'

2020-03-25 Thread Harsh Shandilya
On Wed, 25 Mar 2020 at 18:26, Eiji Tanioka  wrote:
>
> Or is it possible to apply this fix only to Japanese in crowdin?

There's no need to do that, this fix is applicable to all languages
including the default English.

> 2020年3月25日(水) 21:19 Eiji Tanioka :
> >
> > When translate it to Japanese, values are exchanged.
> > For example, '1 of 10' is '10 個中の 1'.
> >
> > So this string should be explicit indexed.
> >
> > Signed-off-by: Eiji Tanioka 
> > ---
> >  ui/src/main/res/values/strings.xml | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/ui/src/main/res/values/strings.xml 
> > b/ui/src/main/res/values/strings.xml
> > index 70d92c3..74c5be6 100644
> > --- a/ui/src/main/res/values/strings.xml
> > +++ b/ui/src/main/res/values/strings.xml
> > @@ -13,8 +13,8 @@
> >  %d tunnels selected
> >  
> >  
> > -Imported %d of %d tunnels
> > -Imported %d of %d tunnels
> > +Imported %1$d of %2$d tunnels
> > +Imported %1$d of %2$d tunnels
> >  
> >  
> >  Imported %d tunnel
> > --
> > 2.25.2
> >

Applied, thanks!


Re: using wireguard intents from tasker?

2020-03-22 Thread Harsh Shandilya
On Mon, 23 Mar 2020 at 10:49, Jason A. Donenfeld  wrote:
>
> On Sun, Mar 22, 2020 at 11:11 PM Eiji Tanioka  wrote:
> > Which is more appropriate to provide translation for this feature,
> > Crowdin or Patch?

Please prefer Crowdin where possible. I've made you a proofreader for
Japanese as well so that you can approve translations.


Re: [PATCH wireguard-android] strings: Update Japanese translation.

2020-03-21 Thread Harsh Shandilya
On Sat, 21 Mar 2020 at 19:29, Eiji Tanioka  wrote:
>
> Thank you for quick response!
>
> # I created crowedin account and join in the wireguard project :)

Thanks for the reminder, strings are now available on Crowdin.


Re: [PATCH wireguard-android] strings: Update Japanese translation.

2020-03-21 Thread Harsh Shandilya
On Sat, 21 Mar 2020 at 19:12, Eiji Tanioka  wrote:
>
> Update correspond to commit 029a4a8.
>
> Signed-off-by: Eiji Tanioka 
> ---
>  ui/src/main/res/values-ja/strings.xml | 2 ++
>  1 file changed, 2 insertions(+)

Applied, thanks!


Re: [PATCH wireguard-android] strings: Update Japanese Translation, corresponds to commit 724884e.

2020-03-18 Thread Harsh Shandilya
On Thu, 19 Mar 2020 at 05:14, Eiji Tanioka  wrote:
>
> Signed-off-by: Eiji Tanioka 
> ---
>  ui/src/main/res/values-ja/strings.xml | 1 +
>  1 file changed, 1 insertion(+)

Applied, thanks. In the coming days we'll be making the translations
available on Crowdin so if you find that more preferable, the option
will be available. The project link is
https://crowdin.com/project/wireguard.


Re: [PATCH] Update Simplified Chinese translation

2020-03-12 Thread Harsh Shandilya
On Thu, 12 Mar 2020 at 17:13,  wrote:
>
> From: LilligantMatsuri 
>
> Signed-off-by: LilligantMatsuri 
> ---
>  ui/src/main/res/values-zh-rCN/strings.xml | 40 ++-
>  1 file changed, 25 insertions(+), 15 deletions(-)
>
> diff --git a/ui/src/main/res/values-zh-rCN/strings.xml 
> b/ui/src/main/res/values-zh-rCN/strings.xml
> index c8175f1..d3243f9 100644
> --- a/ui/src/main/res/values-zh-rCN/strings.xml
> +++ b/ui/src/main/res/values-zh-rCN/strings.xml
> @@ -20,7 +20,7 @@
>  
>  添加节点
>  局域网 IP 地址
> -允许的 IP 地址(段)
> +路由的 IP 地址(段)
>  WireGuard
>  %1$s 的 %2$s 字段
>  %s
> @@ -49,7 +49,7 @@
>  已保存 “%s” 的配置
>  创建 WireGuard 隧道
>  无法创建本地二进制文件目录
> -手动配置
> +手动创建
>  导入配置或压缩包
>  扫描二维码
>  无法创建输出目录
> @@ -63,12 +63,12 @@
>  反选
>  DNS 服务器
>  编辑
> -对端地址
> +对端
>  断开连接时出错:%s
>  获取应用列表时出错:%s
>  请获取 root 权限并重试
>  建立连接时出错:%s
> -排除局域网 IP
> +排除局域网
>  排除的应用
>  生成密钥
>  未知的 “%s” 错误
> @@ -92,24 +92,32 @@
>  无法运行 logcat:
>  无法确定内核模块版本
>  没有可用于此设备的模块
> -此实验性的内核模块可以提升性能
> -安装成功,应用将在 5 秒后重启
> +使用内核模块可以提升性能(实验性)
> +安装成功,应用将于 5 秒后重启
>  下载并安装内核模块
>  正在下载安装...
>  发生错误,请重试
> +启用内核模块
> + name="module_disabler_disabled_summary">内核空间的模块性能较强,但可能不稳定
> +停用内核模块
> + name="module_disabler_enabled_summary">用户空间的模块性能较弱,但稳定性更好
> +应用将于 5 秒后重启
>  MTU
> +同时开启多条隧道
> +当前允许同时开启多条隧道
> +当前一次只能开启一条隧道
>  名称
>  尝试在无配置情况下建立连接
>  未找到配置
>  无隧道
>  字符串
> - IP 地址
> -对端地址
> - IP 网络
> + IP 地址
> +对端
> + IP 网络
>  数字
> -无法解析%1$s “%2$s” 
> +无法解析%1$s “%2$s” 
>  节点 / Peer
> -允许一个应用对 WireGuard 隧道进行控制(开启 / 
> 关闭隧道),但可能会误传一些流量
> +允许其他应用控制 WireGuard 隧道(开启 / 
> 关闭),但可能会误传一些流量
>  控制 WireGuard 隧道
>  连接保活间隔
>  预共享密钥
> @@ -117,7 +125,9 @@
>  公钥
>  公钥
>  提示:使用命令 `qrencode -t ansiutf8 < 
> tunnel.conf` 生成二维码
> -开机自启
> +设备启动时自动开启上次使用的隧道
> +未启用
> +启动时恢复
>  保存
>  全选
>  确定
> @@ -128,9 +138,9 @@
>  切换隧道状态时出错:%s
>  wg 与 wg-quick 已安装
>  无法安装命令行工具(尚未获取 root 权限?)
> -安装脚本工具(可选)
> -安装脚本工具为 Magisk 
> 模块(可选)
> -安装脚本工具至系统分区(可选)
> +安装命令行工具(可选)
> +安装命令行工具为 Magisk 
> 模块(可选)
> +安装命令行工具至系统分区(可选)
>  wg 与 wg-quick 已安装为 Magisk 
> 模块(重启后生效)
>  wg 与 wg-quick 
> 已安装至系统分区
>  安装命令行工具
> --
> 2.24.1.windows.2
>

Applied, thanks!