├── .github ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE │ ├── 1-bug-report.md │ └── 2-feature-request.md ├── PULL_REQUEST_TEMPLATE.md ├── SECURITY.md └── workflows │ ├── build.yml │ ├── codeql.yml │ ├── stale.yml │ └── validate-gradle-wrapper.yaml ├── .gitignore ├── .gitmodules ├── ACKNOWLEDGEMENTS.md ├── AUTHORS ├── CHANGELOG.md ├── CLA.md ├── CODE_OF_CONDUCT.md ├── LICENSE.md ├── README.md ├── build.gradle ├── core ├── .gitignore ├── CMakeLists.txt ├── build.gradle ├── proguard-rules.pro ├── src │ └── main │ │ ├── AndroidManifest.xml │ │ ├── assets │ │ ├── config.ovpn │ │ ├── flag │ │ │ ├── ad.png │ │ │ ├── ae.png │ │ │ ├── af.png │ │ │ ├── ag.png │ │ │ ├── ai.png │ │ │ ├── al.png │ │ │ ├── am.png │ │ │ ├── an.png │ │ │ ├── ao.png │ │ │ ├── aq.png │ │ │ ├── ar.png │ │ │ ├── as.png │ │ │ ├── at.png │ │ │ ├── au.png │ │ │ ├── aw.png │ │ │ ├── az.png │ │ │ ├── ba.png │ │ │ ├── bb.png │ │ │ ├── bd.png │ │ │ ├── be.png │ │ │ ├── bf.png │ │ │ ├── bg.png │ │ │ ├── bh.png │ │ │ ├── bi.png │ │ │ ├── bj.png │ │ │ ├── bm.png │ │ │ ├── bn.png │ │ │ ├── bo.png │ │ │ ├── br.png │ │ │ ├── bs.png │ │ │ ├── bt.png │ │ │ ├── bw.png │ │ │ ├── by.png │ │ │ ├── bz.png │ │ │ ├── ca.png │ │ │ ├── cd.png │ │ │ ├── cf.png │ │ │ ├── cg.png │ │ │ ├── ch.png │ │ │ ├── ci.png │ │ │ ├── ck.png │ │ │ ├── cl.png │ │ │ ├── cm.png │ │ │ ├── cn.png │ │ │ ├── co.png │ │ │ ├── cr.png │ │ │ ├── cu.png │ │ │ ├── cv.png │ │ │ ├── cy.png │ │ │ ├── cz.png │ │ │ ├── de.png │ │ │ ├── dj.png │ │ │ ├── dk.png │ │ │ ├── dm.png │ │ │ ├── do.png │ │ │ ├── dz.png │ │ │ ├── ec.png │ │ │ ├── ee.png │ │ │ ├── eg.png │ │ │ ├── eh.png │ │ │ ├── er.png │ │ │ ├── es.png │ │ │ ├── et.png │ │ │ ├── fi.png │ │ │ ├── fj.png │ │ │ ├── fm.png │ │ │ ├── fo.png │ │ │ ├── fr.png │ │ │ ├── ga.png │ │ │ ├── gb.png │ │ │ ├── gd.png │ │ │ ├── ge.png │ │ │ ├── gg.png │ │ │ ├── gh.png │ │ │ ├── gi.png │ │ │ ├── gl.png │ │ │ ├── gm.png │ │ │ ├── gn.png │ │ │ ├── gp.png │ │ │ ├── gq.png │ │ │ ├── gr.png │ │ │ ├── gt.png │ │ │ ├── gu.png │ │ │ ├── gw.png │ │ │ ├── gy.png │ │ │ ├── hk.png │ │ │ ├── hn.png │ │ │ ├── hr.png │ │ │ ├── ht.png │ │ │ ├── hu.png │ │ │ ├── id.png │ │ │ ├── ie.png │ │ │ ├── il.png │ │ │ ├── im.png │ │ │ ├── in.png │ │ │ ├── iq.png │ │ │ ├── ir.png │ │ │ ├── is.png │ │ │ ├── it.png │ │ │ ├── je.png │ │ │ ├── jm.png │ │ │ ├── jo.png │ │ │ ├── jp.png │ │ │ ├── ke.png │ │ │ ├── kg.png │ │ │ ├── kh.png │ │ │ ├── ki.png │ │ │ ├── km.png │ │ │ ├── kn.png │ │ │ ├── kp.png │ │ │ ├── kr.png │ │ │ ├── kw.png │ │ │ ├── ky.png │ │ │ ├── kz.png │ │ │ ├── la.png │ │ │ ├── lb.png │ │ │ ├── lc.png │ │ │ ├── li.png │ │ │ ├── lk.png │ │ │ ├── lr.png │ │ │ ├── ls.png │ │ │ ├── lt.png │ │ │ ├── lu.png │ │ │ ├── lv.png │ │ │ ├── ly.png │ │ │ ├── ma.png │ │ │ ├── mc.png │ │ │ ├── md.png │ │ │ ├── me.png │ │ │ ├── mg.png │ │ │ ├── mh.png │ │ │ ├── mk.png │ │ │ ├── ml.png │ │ │ ├── mm.png │ │ │ ├── mn.png │ │ │ ├── mo.png │ │ │ ├── mq.png │ │ │ ├── mr.png │ │ │ ├── ms.png │ │ │ ├── mt.png │ │ │ ├── mu.png │ │ │ ├── mv.png │ │ │ ├── mw.png │ │ │ ├── mx.png │ │ │ ├── my.png │ │ │ ├── mz.png │ │ │ ├── na.png │ │ │ ├── nc.png │ │ │ ├── ne.png │ │ │ ├── ng.png │ │ │ ├── ni.png │ │ │ ├── nl.png │ │ │ ├── no.png │ │ │ ├── np.png │ │ │ ├── nr.png │ │ │ ├── nz.png │ │ │ ├── om.png │ │ │ ├── pa.png │ │ │ ├── pe.png │ │ │ ├── pf.png │ │ │ ├── pg.png │ │ │ ├── ph.png │ │ │ ├── pk.png │ │ │ ├── pl.png │ │ │ ├── pr.png │ │ │ ├── ps.png │ │ │ ├── pt.png │ │ │ ├── pw.png │ │ │ ├── py.png │ │ │ ├── qa.png │ │ │ ├── re.png │ │ │ ├── ro.png │ │ │ ├── rs.png │ │ │ ├── ru.png │ │ │ ├── rw.png │ │ │ ├── sa.png │ │ │ ├── sb.png │ │ │ ├── sc.png │ │ │ ├── sd.png │ │ │ ├── se.png │ │ │ ├── sg.png │ │ │ ├── si.png │ │ │ ├── sk.png │ │ │ ├── sl.png │ │ │ ├── sm.png │ │ │ ├── sn.png │ │ │ ├── so.png │ │ │ ├── sr.png │ │ │ ├── st.png │ │ │ ├── sv.png │ │ │ ├── sy.png │ │ │ ├── sz.png │ │ │ ├── tc.png │ │ │ ├── td.png │ │ │ ├── tg.png │ │ │ ├── th.png │ │ │ ├── tj.png │ │ │ ├── tl.png │ │ │ ├── tm.png │ │ │ ├── tn.png │ │ │ ├── to.png │ │ │ ├── tr.png │ │ │ ├── tt.png │ │ │ ├── tv.png │ │ │ ├── tw.png │ │ │ ├── tz.png │ │ │ ├── ua.png │ │ │ ├── ug.png │ │ │ ├── us.png │ │ │ ├── uy.png │ │ │ ├── uz.png │ │ │ ├── va.png │ │ │ ├── vc.png │ │ │ ├── ve.png │ │ │ ├── vg.png │ │ │ ├── vi.png │ │ │ ├── vn.png │ │ │ ├── vu.png │ │ │ ├── ws.png │ │ │ ├── ye.png │ │ │ ├── za.png │ │ │ ├── zm.png │ │ │ └── zw.png │ │ ├── logback.xml │ │ └── servers.json │ │ ├── cpp │ │ ├── CMakeLists.txt │ │ ├── GetGitRevisionDescription.cmake │ │ ├── GetGitRevisionDescription.cmake.in │ │ ├── jbcrypto │ │ │ └── jbcrypto.cpp │ │ ├── lz4.cmake │ │ ├── lzo.cmake │ │ ├── lzo │ │ │ ├── AUTHORS │ │ │ ├── Android.mk │ │ │ ├── B │ │ │ │ ├── 00README.TXT │ │ │ │ ├── clean.bat │ │ │ │ ├── done.bat │ │ │ │ ├── dos32 │ │ │ │ │ ├── bc_pp.bat │ │ │ │ │ ├── dj2.bat │ │ │ │ │ ├── dj2.opt │ │ │ │ │ ├── dm.bat │ │ │ │ │ ├── emx.bat │ │ │ │ │ ├── highc.bat │ │ │ │ │ ├── highc.rsp │ │ │ │ │ ├── ndp.bat │ │ │ │ │ ├── ndp.rsp │ │ │ │ │ ├── sc.bat │ │ │ │ │ ├── wc.bat │ │ │ │ │ └── zc.bat │ │ │ │ ├── generic │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── build.sh │ │ │ │ │ ├── build_freestanding.sh │ │ │ │ │ ├── build_gcc.sh │ │ │ │ │ └── clean.sh │ │ │ │ ├── os2 │ │ │ │ │ ├── emx.bat │ │ │ │ │ ├── wc.bat │ │ │ │ │ └── zc.bat │ │ │ │ ├── prepare.bat │ │ │ │ ├── src.rsp │ │ │ │ ├── unset.bat │ │ │ │ ├── win32 │ │ │ │ │ ├── bc.bat │ │ │ │ │ ├── bc.rsp │ │ │ │ │ ├── cygwin.bat │ │ │ │ │ ├── cygwin.rsp │ │ │ │ │ ├── dm.bat │ │ │ │ │ ├── ic.bat │ │ │ │ │ ├── lccwin32.bat │ │ │ │ │ ├── mingw.bat │ │ │ │ │ ├── mwerks.bat │ │ │ │ │ ├── pellesc.bat │ │ │ │ │ ├── pgi.bat │ │ │ │ │ ├── pw32.bat │ │ │ │ │ ├── rsxnt.bat │ │ │ │ │ ├── sc.bat │ │ │ │ │ ├── vc.bat │ │ │ │ │ ├── vc.rsp │ │ │ │ │ ├── vc_dll.bat │ │ │ │ │ ├── vc_dll.def │ │ │ │ │ ├── wc.bat │ │ │ │ │ └── wc.rsp │ │ │ │ └── win64 │ │ │ │ │ ├── ic.bat │ │ │ │ │ ├── ic_dll.bat │ │ │ │ │ ├── vc.bat │ │ │ │ │ ├── vc.rsp │ │ │ │ │ ├── vc_dll.bat │ │ │ │ │ └── vc_dll.def │ │ │ ├── BUGS │ │ │ ├── CMakeLists.txt │ │ │ ├── COPYING │ │ │ ├── ChangeLog │ │ │ ├── INSTALL │ │ │ ├── Makefile.am │ │ │ ├── Makefile.in │ │ │ ├── NEWS │ │ │ ├── README │ │ │ ├── THANKS │ │ │ ├── aclocal.m4 │ │ │ ├── asm │ │ │ │ └── i386 │ │ │ │ │ ├── 00README.TXT │ │ │ │ │ ├── obj │ │ │ │ │ ├── coff32 │ │ │ │ │ │ ├── lzo1c_s1.o │ │ │ │ │ │ ├── lzo1f_f1.o │ │ │ │ │ │ ├── lzo1x_f1.o │ │ │ │ │ │ ├── lzo1x_s1.o │ │ │ │ │ │ ├── lzo1y_f1.o │ │ │ │ │ │ └── lzo1y_s1.o │ │ │ │ │ ├── elf32 │ │ │ │ │ │ ├── lzo1c_s1.o │ │ │ │ │ │ ├── lzo1f_f1.o │ │ │ │ │ │ ├── lzo1x_f1.o │ │ │ │ │ │ ├── lzo1x_s1.o │ │ │ │ │ │ ├── lzo1y_f1.o │ │ │ │ │ │ └── lzo1y_s1.o │ │ │ │ │ ├── macho32 │ │ │ │ │ │ ├── lzo1c_s1.o │ │ │ │ │ │ ├── lzo1f_f1.o │ │ │ │ │ │ ├── lzo1x_f1.o │ │ │ │ │ │ ├── lzo1x_s1.o │ │ │ │ │ │ ├── lzo1y_f1.o │ │ │ │ │ │ └── lzo1y_s1.o │ │ │ │ │ ├── omf32 │ │ │ │ │ │ ├── lzo1c_s1.obj │ │ │ │ │ │ ├── lzo1f_f1.obj │ │ │ │ │ │ ├── lzo1x_f1.obj │ │ │ │ │ │ ├── lzo1x_s1.obj │ │ │ │ │ │ ├── lzo1y_f1.obj │ │ │ │ │ │ └── lzo1y_s1.obj │ │ │ │ │ └── win32 │ │ │ │ │ │ ├── lzo1c_s1.obj │ │ │ │ │ │ ├── lzo1f_f1.obj │ │ │ │ │ │ ├── lzo1x_f1.obj │ │ │ │ │ │ ├── lzo1x_s1.obj │ │ │ │ │ │ ├── lzo1y_f1.obj │ │ │ │ │ │ └── lzo1y_s1.obj │ │ │ │ │ ├── src │ │ │ │ │ ├── enter.ash │ │ │ │ │ ├── leave.ash │ │ │ │ │ ├── lzo1c_d.ash │ │ │ │ │ ├── lzo1c_s1.S │ │ │ │ │ ├── lzo1f_d.ash │ │ │ │ │ ├── lzo1f_f1.S │ │ │ │ │ ├── lzo1x_d.ash │ │ │ │ │ ├── lzo1x_f1.S │ │ │ │ │ ├── lzo1x_s1.S │ │ │ │ │ ├── lzo1y_f1.S │ │ │ │ │ ├── lzo1y_s1.S │ │ │ │ │ └── lzo_asm.h │ │ │ │ │ ├── src_gas │ │ │ │ │ ├── all │ │ │ │ │ │ └── asm_all.S │ │ │ │ │ ├── asminit.def │ │ │ │ │ ├── lzo1c_s1.S │ │ │ │ │ ├── lzo1f_f1.S │ │ │ │ │ ├── lzo1x_f1.S │ │ │ │ │ ├── lzo1x_s1.S │ │ │ │ │ ├── lzo1y_f1.S │ │ │ │ │ └── lzo1y_s1.S │ │ │ │ │ ├── src_masm │ │ │ │ │ ├── all │ │ │ │ │ │ └── asm_all.asm │ │ │ │ │ ├── asminit.def │ │ │ │ │ ├── lzo1c_s1.asm │ │ │ │ │ ├── lzo1f_f1.asm │ │ │ │ │ ├── lzo1x_f1.asm │ │ │ │ │ ├── lzo1x_s1.asm │ │ │ │ │ ├── lzo1y_f1.asm │ │ │ │ │ └── lzo1y_s1.asm │ │ │ │ │ └── src_nasm │ │ │ │ │ ├── all │ │ │ │ │ └── asm_all.asm │ │ │ │ │ ├── asminit.def │ │ │ │ │ ├── lzo1c_s1.asm │ │ │ │ │ ├── lzo1f_f1.asm │ │ │ │ │ ├── lzo1x_f1.asm │ │ │ │ │ ├── lzo1x_s1.asm │ │ │ │ │ ├── lzo1y_f1.asm │ │ │ │ │ └── lzo1y_s1.asm │ │ │ ├── autoconf │ │ │ │ ├── ar-lib │ │ │ │ ├── compile │ │ │ │ ├── config.guess │ │ │ │ ├── config.rpath │ │ │ │ ├── config.sub │ │ │ │ ├── depcomp │ │ │ │ ├── install-sh │ │ │ │ ├── local.m4 │ │ │ │ ├── ltmain.sh │ │ │ │ ├── mdate-sh │ │ │ │ ├── missing │ │ │ │ ├── mkinstalldirs │ │ │ │ ├── py-compile │ │ │ │ ├── shtool │ │ │ │ └── ylwrap │ │ │ ├── config.hin │ │ │ ├── configure │ │ │ ├── configure.ac │ │ │ ├── doc │ │ │ │ ├── LZO.FAQ │ │ │ │ ├── LZO.TXT │ │ │ │ ├── LZOAPI.TXT │ │ │ │ └── LZOTEST.TXT │ │ │ ├── examples │ │ │ │ ├── dict.c │ │ │ │ ├── lzopack.c │ │ │ │ ├── overlap.c │ │ │ │ ├── portab.h │ │ │ │ ├── portab_a.h │ │ │ │ ├── precomp.c │ │ │ │ ├── precomp2.c │ │ │ │ └── simple.c │ │ │ ├── include │ │ │ │ └── lzo │ │ │ │ │ ├── lzo1.h │ │ │ │ │ ├── lzo1a.h │ │ │ │ │ ├── lzo1b.h │ │ │ │ │ ├── lzo1c.h │ │ │ │ │ ├── lzo1f.h │ │ │ │ │ ├── lzo1x.h │ │ │ │ │ ├── lzo1y.h │ │ │ │ │ ├── lzo1z.h │ │ │ │ │ ├── lzo2a.h │ │ │ │ │ ├── lzo_asm.h │ │ │ │ │ ├── lzoconf.h │ │ │ │ │ ├── lzodefs.h │ │ │ │ │ └── lzoutil.h │ │ │ ├── lzo2.pc.cmakein │ │ │ ├── lzo2.pc.in │ │ │ ├── lzotest │ │ │ │ ├── asm.h │ │ │ │ ├── db.h │ │ │ │ ├── lzotest.c │ │ │ │ ├── wrap.h │ │ │ │ └── wrapmisc.h │ │ │ ├── minilzo │ │ │ │ ├── Makefile.minilzo │ │ │ │ ├── README.LZO │ │ │ │ ├── minilzo.c │ │ │ │ ├── minilzo.h │ │ │ │ └── testmini.c │ │ │ ├── src │ │ │ │ ├── compr1b.h │ │ │ │ ├── compr1c.h │ │ │ │ ├── config1.h │ │ │ │ ├── config1a.h │ │ │ │ ├── config1b.h │ │ │ │ ├── config1c.h │ │ │ │ ├── config1f.h │ │ │ │ ├── config1x.h │ │ │ │ ├── config1y.h │ │ │ │ ├── config1z.h │ │ │ │ ├── config2a.h │ │ │ │ ├── lzo1.c │ │ │ │ ├── lzo1_99.c │ │ │ │ ├── lzo1_cm.ch │ │ │ │ ├── lzo1_d.ch │ │ │ │ ├── lzo1a.c │ │ │ │ ├── lzo1a_99.c │ │ │ │ ├── lzo1a_cm.ch │ │ │ │ ├── lzo1a_cr.ch │ │ │ │ ├── lzo1a_de.h │ │ │ │ ├── lzo1b_1.c │ │ │ │ ├── lzo1b_2.c │ │ │ │ ├── lzo1b_3.c │ │ │ │ ├── lzo1b_4.c │ │ │ │ ├── lzo1b_5.c │ │ │ │ ├── lzo1b_6.c │ │ │ │ ├── lzo1b_7.c │ │ │ │ ├── lzo1b_8.c │ │ │ │ ├── lzo1b_9.c │ │ │ │ ├── lzo1b_99.c │ │ │ │ ├── lzo1b_9x.c │ │ │ │ ├── lzo1b_c.ch │ │ │ │ ├── lzo1b_cc.c │ │ │ │ ├── lzo1b_cc.h │ │ │ │ ├── lzo1b_cm.ch │ │ │ │ ├── lzo1b_cr.ch │ │ │ │ ├── lzo1b_d.ch │ │ │ │ ├── lzo1b_d1.c │ │ │ │ ├── lzo1b_d2.c │ │ │ │ ├── lzo1b_de.h │ │ │ │ ├── lzo1b_r.ch │ │ │ │ ├── lzo1b_rr.c │ │ │ │ ├── lzo1b_sm.ch │ │ │ │ ├── lzo1b_tm.ch │ │ │ │ ├── lzo1b_xx.c │ │ │ │ ├── lzo1c_1.c │ │ │ │ ├── lzo1c_2.c │ │ │ │ ├── lzo1c_3.c │ │ │ │ ├── lzo1c_4.c │ │ │ │ ├── lzo1c_5.c │ │ │ │ ├── lzo1c_6.c │ │ │ │ ├── lzo1c_7.c │ │ │ │ ├── lzo1c_8.c │ │ │ │ ├── lzo1c_9.c │ │ │ │ ├── lzo1c_99.c │ │ │ │ ├── lzo1c_9x.c │ │ │ │ ├── lzo1c_cc.c │ │ │ │ ├── lzo1c_cc.h │ │ │ │ ├── lzo1c_d1.c │ │ │ │ ├── lzo1c_d2.c │ │ │ │ ├── lzo1c_rr.c │ │ │ │ ├── lzo1c_xx.c │ │ │ │ ├── lzo1f_1.c │ │ │ │ ├── lzo1f_9x.c │ │ │ │ ├── lzo1f_d.ch │ │ │ │ ├── lzo1f_d1.c │ │ │ │ ├── lzo1f_d2.c │ │ │ │ ├── lzo1x_1.c │ │ │ │ ├── lzo1x_1k.c │ │ │ │ ├── lzo1x_1l.c │ │ │ │ ├── lzo1x_1o.c │ │ │ │ ├── lzo1x_9x.c │ │ │ │ ├── lzo1x_c.ch │ │ │ │ ├── lzo1x_d.ch │ │ │ │ ├── lzo1x_d1.c │ │ │ │ ├── lzo1x_d2.c │ │ │ │ ├── lzo1x_d3.c │ │ │ │ ├── lzo1x_o.c │ │ │ │ ├── lzo1x_oo.ch │ │ │ │ ├── lzo1y_1.c │ │ │ │ ├── lzo1y_9x.c │ │ │ │ ├── lzo1y_d1.c │ │ │ │ ├── lzo1y_d2.c │ │ │ │ ├── lzo1y_d3.c │ │ │ │ ├── lzo1y_o.c │ │ │ │ ├── lzo1z_9x.c │ │ │ │ ├── lzo1z_d1.c │ │ │ │ ├── lzo1z_d2.c │ │ │ │ ├── lzo1z_d3.c │ │ │ │ ├── lzo2a_9x.c │ │ │ │ ├── lzo2a_d.ch │ │ │ │ ├── lzo2a_d1.c │ │ │ │ ├── lzo2a_d2.c │ │ │ │ ├── lzo_conf.h │ │ │ │ ├── lzo_crc.c │ │ │ │ ├── lzo_dict.h │ │ │ │ ├── lzo_dll.ch │ │ │ │ ├── lzo_func.h │ │ │ │ ├── lzo_init.c │ │ │ │ ├── lzo_mchw.ch │ │ │ │ ├── lzo_ptr.c │ │ │ │ ├── lzo_ptr.h │ │ │ │ ├── lzo_str.c │ │ │ │ ├── lzo_supp.h │ │ │ │ ├── lzo_swd.ch │ │ │ │ ├── lzo_util.c │ │ │ │ ├── stats1a.h │ │ │ │ ├── stats1b.h │ │ │ │ └── stats1c.h │ │ │ ├── tests │ │ │ │ ├── align.c │ │ │ │ ├── chksum.c │ │ │ │ ├── promote.c │ │ │ │ └── sizes.c │ │ │ └── util │ │ │ │ ├── check.sh │ │ │ │ ├── checkasm.sh │ │ │ │ ├── notime.pl │ │ │ │ ├── overlap.sh │ │ │ │ ├── shortf.pl │ │ │ │ ├── table.pl │ │ │ │ └── uncompr.pl │ │ ├── minivpn │ │ │ └── minivpn.c │ │ ├── openvpn-config │ │ │ ├── config.h │ │ │ └── openvpn-plugin.h │ │ ├── opvpnutil │ │ │ ├── jniglue.c │ │ │ ├── jniglue.h │ │ │ ├── scan_ifs.c │ │ │ └── sslspeed.c │ │ └── tools.cmake │ │ ├── java │ │ ├── com │ │ │ └── wireguard │ │ │ │ └── android │ │ │ │ ├── backend │ │ │ │ ├── Backend.java │ │ │ │ ├── ConnectionStatus.java │ │ │ │ ├── GoBackend.java │ │ │ │ └── WireGuardUiService.java │ │ │ │ ├── config │ │ │ │ ├── Attribute.java │ │ │ │ ├── Config.java │ │ │ │ ├── InetAddresses.java │ │ │ │ ├── InetNetwork.java │ │ │ │ ├── Interface.java │ │ │ │ ├── ParseException.java │ │ │ │ └── Peer.java │ │ │ │ ├── crypto │ │ │ │ ├── Curve25519.java │ │ │ │ ├── KeyEncoding.java │ │ │ │ └── Keypair.java │ │ │ │ ├── model │ │ │ │ └── Tunnel.kt │ │ │ │ └── util │ │ │ │ └── SharedLibraryLoader.java │ │ ├── de │ │ │ └── blinkt │ │ │ │ └── openvpn │ │ │ │ ├── VpnProfile.java │ │ │ │ └── core │ │ │ │ ├── CIDRIP.java │ │ │ │ ├── ConfigParser.java │ │ │ │ ├── Connection.java │ │ │ │ ├── ConnectionStatus.java │ │ │ │ ├── DeviceStateReceiver.java │ │ │ │ ├── IOpenVpnService.java │ │ │ │ ├── NativeUtils.java │ │ │ │ ├── NetworkSpace.java │ │ │ │ ├── OpenVPNManagement.java │ │ │ │ ├── OpenVPNThread.java │ │ │ │ ├── OpenVpnManagementThread.java │ │ │ │ ├── ProxyDetection.java │ │ │ │ ├── VPNLaunchHelper.java │ │ │ │ ├── VpnStatus.java │ │ │ │ └── X509Utils.java │ │ ├── net │ │ │ └── ivpn │ │ │ │ └── core │ │ │ │ ├── IVPNApplication.kt │ │ │ │ ├── common │ │ │ │ ├── BuildController.kt │ │ │ │ ├── Constant.java │ │ │ │ ├── FeatureConfig.kt │ │ │ │ ├── InputFilterMinMax.kt │ │ │ │ ├── Mapper.kt │ │ │ │ ├── ProfileStorage.java │ │ │ │ ├── SnackbarUtil.java │ │ │ │ ├── alarm │ │ │ │ │ └── GlobalWireGuardAlarm.java │ │ │ │ ├── bindings │ │ │ │ │ ├── ButtonBindingAdapter.java │ │ │ │ │ ├── CheckBoxBindingAdapter.java │ │ │ │ │ ├── GestureBindingAdapter.java │ │ │ │ │ ├── IPSelectorBindingAdapter.kt │ │ │ │ │ ├── ImageViewSrcBindingAdapter.kt │ │ │ │ │ ├── LayoutBindingAdapter.kt │ │ │ │ │ ├── MapBindingAdapter.kt │ │ │ │ │ ├── RadioGroupBindingAdapter.kt │ │ │ │ │ ├── RecyclerViewItemsBindingAdapter.java │ │ │ │ │ ├── RefreshLayoutBindingAdapter.java │ │ │ │ │ ├── SpinnerBindingAdapter.java │ │ │ │ │ ├── SwitchButtonBindingAdapter.java │ │ │ │ │ ├── TextInputLayoutBindingAdapter.java │ │ │ │ │ ├── TextViewBindingAdapter.kt │ │ │ │ │ ├── ValueSelectionBindingAdapter.java │ │ │ │ │ ├── ViewPagerBindingAdapter.java │ │ │ │ │ └── WebViewBindingAdapter.java │ │ │ │ ├── dagger │ │ │ │ │ ├── ActivityComponent.java │ │ │ │ │ ├── ActivityScope.java │ │ │ │ │ ├── ApplicationComponent.java │ │ │ │ │ ├── ApplicationScope.kt │ │ │ │ │ ├── ApplicationSubcomponents.kt │ │ │ │ │ ├── NetworkModule.java │ │ │ │ │ ├── ProtocolComponent.java │ │ │ │ │ └── ProtocolScope.java │ │ │ │ ├── distance │ │ │ │ │ ├── DistanceProvider.kt │ │ │ │ │ └── OnDistanceChangedListener.kt │ │ │ │ ├── extension │ │ │ │ │ ├── FragmentExtension.kt │ │ │ │ │ └── WindowExtension.kt │ │ │ │ ├── logger │ │ │ │ │ └── FileUtils.java │ │ │ │ ├── migration │ │ │ │ │ ├── MigrationController.kt │ │ │ │ │ ├── UF0T1.java │ │ │ │ │ ├── UF1T2.kt │ │ │ │ │ ├── UF2T3.kt │ │ │ │ │ └── Update.kt │ │ │ │ ├── multihop │ │ │ │ │ └── MultiHopController.kt │ │ │ │ ├── navigation │ │ │ │ │ └── CustomNavigation.kt │ │ │ │ ├── nightmode │ │ │ │ │ ├── NightMode.kt │ │ │ │ │ └── OnNightModeChangedListener.kt │ │ │ │ ├── pinger │ │ │ │ │ ├── IPTools.java │ │ │ │ │ ├── OnFastestServerDetectorListener.java │ │ │ │ │ ├── OnPingFinishListener.java │ │ │ │ │ ├── Ping.java │ │ │ │ │ ├── PingDataSet.kt │ │ │ │ │ ├── PingNative.java │ │ │ │ │ ├── PingProvider.kt │ │ │ │ │ ├── PingResult.java │ │ │ │ │ ├── PingResultFormatter.java │ │ │ │ │ ├── PingStats.java │ │ │ │ │ ├── PingTools.java │ │ │ │ │ └── ResultPing.kt │ │ │ │ ├── prefs │ │ │ │ │ ├── EncryptedSettingsPreference.kt │ │ │ │ │ ├── EncryptedUserPreference.kt │ │ │ │ │ ├── NetworkProtectionPreference.kt │ │ │ │ │ ├── OnFavouriteServersChangedListener.kt │ │ │ │ │ ├── OnServerChangedListener.kt │ │ │ │ │ ├── OnServerListUpdatedListener.kt │ │ │ │ │ ├── PackagesPreference.kt │ │ │ │ │ ├── Preference.kt │ │ │ │ │ ├── ServersLoader.kt │ │ │ │ │ ├── ServersPreference.kt │ │ │ │ │ ├── ServersRepository.kt │ │ │ │ │ ├── Settings.kt │ │ │ │ │ └── StickyPreference.kt │ │ │ │ ├── qr │ │ │ │ │ └── QRController.kt │ │ │ │ ├── session │ │ │ │ │ ├── SessionController.kt │ │ │ │ │ └── SessionListenerImpl.kt │ │ │ │ ├── shortcuts │ │ │ │ │ ├── ConnectionShortcutsActivity.java │ │ │ │ │ └── ConnectionShortcutsViewModel.java │ │ │ │ ├── tile │ │ │ │ │ └── IVPNTileService.kt │ │ │ │ ├── utils │ │ │ │ │ ├── BitmapUtil.kt │ │ │ │ │ ├── BytesFormat.java │ │ │ │ │ ├── ComponentUtil.java │ │ │ │ │ ├── ConnectivityUtil.java │ │ │ │ │ ├── DateUtil.java │ │ │ │ │ ├── DeviceUtil.java │ │ │ │ │ ├── DomainResolver.java │ │ │ │ │ ├── IntentUtils.kt │ │ │ │ │ ├── KemHelper.kt │ │ │ │ │ ├── KeyboardUtil.java │ │ │ │ │ ├── LogUtil.kt │ │ │ │ │ ├── NetworkUtil.java │ │ │ │ │ ├── NotificationChannelUtil.java │ │ │ │ │ ├── StringUtil.java │ │ │ │ │ ├── ToastUtil.java │ │ │ │ │ └── ViewUtil.java │ │ │ │ └── views │ │ │ │ │ ├── CustomTextInputLayout.kt │ │ │ │ │ ├── EmptyRecyclerView.java │ │ │ │ │ ├── IPSelectorView.kt │ │ │ │ │ ├── SecureEditText.kt │ │ │ │ │ ├── WrapContentHeightViewPager.kt │ │ │ │ │ └── valueSelector │ │ │ │ │ ├── OnValueChangeListener.java │ │ │ │ │ ├── RectUtils.java │ │ │ │ │ └── ValueSelectionView.java │ │ │ │ ├── rest │ │ │ │ ├── HttpClientFactory.java │ │ │ │ ├── IVPNApi.java │ │ │ │ ├── RequestListener.java │ │ │ │ ├── Responses.java │ │ │ │ ├── data │ │ │ │ │ ├── LoginRequestBody.java │ │ │ │ │ ├── LoginResponse.java │ │ │ │ │ ├── ServersListResponse.java │ │ │ │ │ ├── addfunds │ │ │ │ │ │ ├── AddFundsRequestBody.kt │ │ │ │ │ │ ├── AddFundsResponse.kt │ │ │ │ │ │ ├── InitialPaymentRequestBody.kt │ │ │ │ │ │ ├── InitialPaymentResponse.kt │ │ │ │ │ │ ├── NewAccountRequestBody.kt │ │ │ │ │ │ └── NewAccountResponse.kt │ │ │ │ │ ├── model │ │ │ │ │ │ ├── AntiTracker.kt │ │ │ │ │ │ ├── Api.java │ │ │ │ │ │ ├── Config.java │ │ │ │ │ │ ├── Data.java │ │ │ │ │ │ ├── Host.java │ │ │ │ │ │ ├── Ipv6.kt │ │ │ │ │ │ ├── Port.kt │ │ │ │ │ │ ├── Server.java │ │ │ │ │ │ ├── ServerLocation.kt │ │ │ │ │ │ ├── ServerType.kt │ │ │ │ │ │ ├── ServiceStatus.java │ │ │ │ │ │ └── WireGuard.java │ │ │ │ │ ├── privateemails │ │ │ │ │ │ ├── Email.java │ │ │ │ │ │ ├── GenerateEmailRequestBody.java │ │ │ │ │ │ ├── GenerateEmailResponse.java │ │ │ │ │ │ ├── PrivateEmailsListRequestBody.java │ │ │ │ │ │ ├── PrivateEmailsListResponse.java │ │ │ │ │ │ ├── RemovePrivateEmailRequestBody.java │ │ │ │ │ │ ├── RemovePrivateEmailResponse.java │ │ │ │ │ │ ├── UpdatePrivateEmailRequestBody.java │ │ │ │ │ │ └── UpdatePrivateEmailResponse.java │ │ │ │ │ ├── proofs │ │ │ │ │ │ └── LocationResponse.kt │ │ │ │ │ ├── session │ │ │ │ │ │ ├── DeleteSessionRequestBody.java │ │ │ │ │ │ ├── DeleteSessionResponse.java │ │ │ │ │ │ ├── SessionErrorData.kt │ │ │ │ │ │ ├── SessionErrorResponse.kt │ │ │ │ │ │ ├── SessionNewRequestBody.java │ │ │ │ │ │ ├── SessionNewResponse.java │ │ │ │ │ │ ├── SessionStatusRequestBody.java │ │ │ │ │ │ └── SessionStatusResponse.java │ │ │ │ │ ├── subscription │ │ │ │ │ │ ├── SubscriptionRequestBody.java │ │ │ │ │ │ ├── SubscriptionResponse.java │ │ │ │ │ │ ├── ValidateAccountRequestBody.java │ │ │ │ │ │ └── ValidateAccountResponse.java │ │ │ │ │ └── wireguard │ │ │ │ │ │ ├── AddWireGuardPublicKeyRequestBody.java │ │ │ │ │ │ ├── AddWireGuardPublicKeyResponse.java │ │ │ │ │ │ └── ErrorResponse.java │ │ │ │ └── requests │ │ │ │ │ └── common │ │ │ │ │ ├── Request.java │ │ │ │ │ └── RequestWrapper.java │ │ │ │ ├── ui │ │ │ │ └── theme │ │ │ │ │ ├── Color.kt │ │ │ │ │ ├── Shape.kt │ │ │ │ │ ├── Theme.kt │ │ │ │ │ └── Type.kt │ │ │ │ ├── v2 │ │ │ │ ├── MainActivity.kt │ │ │ │ ├── account │ │ │ │ │ ├── AccountFragment.kt │ │ │ │ │ ├── LogOutFragment.kt │ │ │ │ │ └── LogOutNavigator.kt │ │ │ │ ├── alwaysonvpn │ │ │ │ │ └── AlwaysOnVPNFragment.kt │ │ │ │ ├── antitracker │ │ │ │ │ ├── AntiTrackerFragment.kt │ │ │ │ │ ├── AntiTrackerListFragment.kt │ │ │ │ │ ├── AntiTrackerListScreen.kt │ │ │ │ │ └── AntiTrackerListViewModel.kt │ │ │ │ ├── captcha │ │ │ │ │ └── CaptchaFragment.kt │ │ │ │ ├── connect │ │ │ │ │ ├── ConnectFragment.kt │ │ │ │ │ ├── MapDialogs.kt │ │ │ │ │ └── createSession │ │ │ │ │ │ ├── ConnectionNavigator.java │ │ │ │ │ │ ├── ConnectionState.java │ │ │ │ │ │ ├── CreateSessionFragment.java │ │ │ │ │ │ └── CreateSessionNavigator.java │ │ │ │ ├── customdns │ │ │ │ │ ├── CustomDNSFragment.kt │ │ │ │ │ ├── CustomDNSViewModel.java │ │ │ │ │ ├── DialogueCustomDNSViewModel.java │ │ │ │ │ └── OnDNSChangedListener.java │ │ │ │ ├── dialog │ │ │ │ │ ├── DialogBuilder.kt │ │ │ │ │ ├── DialogBuilderK.kt │ │ │ │ │ └── Dialogs.java │ │ │ │ ├── killswitch │ │ │ │ │ └── KillSwitchFragment.kt │ │ │ │ ├── login │ │ │ │ │ ├── LoginFragment.kt │ │ │ │ │ ├── LoginNavigator.java │ │ │ │ │ └── LoginViewModel.kt │ │ │ │ ├── map │ │ │ │ │ ├── City.kt │ │ │ │ │ ├── MapHolder.kt │ │ │ │ │ ├── MapMath.kt │ │ │ │ │ ├── MapView.kt │ │ │ │ │ ├── ServerLocationsHolder.kt │ │ │ │ │ ├── animation │ │ │ │ │ │ ├── AnimationData.kt │ │ │ │ │ │ └── MapAnimator.kt │ │ │ │ │ ├── dialogue │ │ │ │ │ │ ├── DialogueDrawer.kt │ │ │ │ │ │ ├── DialogueUtil.kt │ │ │ │ │ │ ├── ServerLocationDialogueAdapter.kt │ │ │ │ │ │ └── model │ │ │ │ │ │ │ ├── DialogueData.kt │ │ │ │ │ │ │ └── DialogueLocationData.kt │ │ │ │ │ ├── location │ │ │ │ │ │ ├── LocationData.kt │ │ │ │ │ │ └── LocationDrawer.kt │ │ │ │ │ ├── model │ │ │ │ │ │ ├── Location.kt │ │ │ │ │ │ └── Tile.kt │ │ │ │ │ └── servers │ │ │ │ │ │ ├── ServerLocationDrawer.kt │ │ │ │ │ │ └── model │ │ │ │ │ │ └── ServerLocationsData.kt │ │ │ │ ├── mocklocation │ │ │ │ │ ├── MockLocationController.kt │ │ │ │ │ ├── MockLocationFragment.kt │ │ │ │ │ ├── MockLocationNavigator.kt │ │ │ │ │ ├── MockLocationStep1Fragment.kt │ │ │ │ │ ├── MockLocationStep2Fragment.kt │ │ │ │ │ ├── MockLocationStep3Fragment.kt │ │ │ │ │ └── MockLocationViewModel.kt │ │ │ │ ├── network │ │ │ │ │ ├── NetworkCommonFragment.kt │ │ │ │ │ ├── NetworkFormatter.kt │ │ │ │ │ ├── NetworkNavigator.java │ │ │ │ │ ├── NetworkRecyclerViewAdapter.kt │ │ │ │ │ ├── NetworkViewModel.kt │ │ │ │ │ ├── NetworksPagerAdapter.kt │ │ │ │ │ ├── OnChangeNetworkStateListener.kt │ │ │ │ │ ├── OnNetworkBehaviourChangedListener.java │ │ │ │ │ ├── OnNetworkSourceChangedListener.java │ │ │ │ │ ├── dialog │ │ │ │ │ │ └── NetworkChangeDialogViewModel.kt │ │ │ │ │ ├── rule │ │ │ │ │ │ ├── NetworkProtectionRulesFragment.kt │ │ │ │ │ │ └── NetworkRuleViewModel.java │ │ │ │ │ ├── saved │ │ │ │ │ │ └── SavedNetworksFragment.kt │ │ │ │ │ ├── scanned │ │ │ │ │ │ └── ScannedNetworksFragment.kt │ │ │ │ │ └── viewmodel │ │ │ │ │ │ ├── CommonBehaviourItemViewModel.kt │ │ │ │ │ │ ├── MobileDataItemViewModel.kt │ │ │ │ │ │ └── NetworkItemViewModel.kt │ │ │ │ ├── protocol │ │ │ │ │ ├── ProtocolFragment.kt │ │ │ │ │ ├── ProtocolNavigator.java │ │ │ │ │ ├── dialog │ │ │ │ │ │ ├── WireGuardDetailsDialogListener.java │ │ │ │ │ │ └── WireGuardInfo.kt │ │ │ │ │ ├── port │ │ │ │ │ │ ├── CustomPortFragment.kt │ │ │ │ │ │ ├── CustomPortScreen.kt │ │ │ │ │ │ ├── CustomPortViewModel.kt │ │ │ │ │ │ ├── OnPortSelectedListener.java │ │ │ │ │ │ ├── PortAdapter.java │ │ │ │ │ │ ├── PortsFragment.kt │ │ │ │ │ │ ├── PortsScreen.kt │ │ │ │ │ │ └── PortsViewModel.kt │ │ │ │ │ └── wireguard │ │ │ │ │ │ └── WireGuardDetailsFragment.kt │ │ │ │ ├── qr │ │ │ │ │ └── QRActivity.kt │ │ │ │ ├── serverlist │ │ │ │ │ ├── AdapterListener.java │ │ │ │ │ ├── FavouriteServerListener.kt │ │ │ │ │ ├── ServerBasedRecyclerViewAdapter.kt │ │ │ │ │ ├── ServerListTabFragment.kt │ │ │ │ │ ├── ServersListPagerAdapter.java │ │ │ │ │ ├── all │ │ │ │ │ │ ├── AllServersRecyclerViewAdapter.kt │ │ │ │ │ │ └── ServerListFragment.kt │ │ │ │ │ ├── dialog │ │ │ │ │ │ └── Filters.kt │ │ │ │ │ ├── fastest │ │ │ │ │ │ ├── FastestSettingFragment.kt │ │ │ │ │ │ ├── FastestSettingNavigator.java │ │ │ │ │ │ ├── FastestSettingViewAdapter.java │ │ │ │ │ │ └── OnFastestSettingChangedListener.java │ │ │ │ │ ├── favourite │ │ │ │ │ │ ├── FavouriteServerListRecyclerViewAdapter.kt │ │ │ │ │ │ └── FavouriteServersListFragment.kt │ │ │ │ │ ├── holders │ │ │ │ │ │ ├── FastestServerViewHolder.kt │ │ │ │ │ │ ├── HolderListener.kt │ │ │ │ │ │ ├── RandomServerViewHolder.kt │ │ │ │ │ │ ├── SearchViewHolder.kt │ │ │ │ │ │ └── ServerViewHolder.kt │ │ │ │ │ └── items │ │ │ │ │ │ ├── ConnectionOption.kt │ │ │ │ │ │ ├── FastestServerItem.kt │ │ │ │ │ │ ├── RandomServerItem.kt │ │ │ │ │ │ └── SearchServerItem.kt │ │ │ │ ├── settings │ │ │ │ │ └── SettingsFragment.kt │ │ │ │ ├── signup │ │ │ │ │ ├── CreateAccountNavigator.kt │ │ │ │ │ ├── Plan.kt │ │ │ │ │ └── SignUpController.kt │ │ │ │ ├── splittunneling │ │ │ │ │ ├── OnApplicationItemAction.kt │ │ │ │ │ ├── OnApplicationItemSelectionChangedListener.java │ │ │ │ │ ├── SplitTunnelingFragment.kt │ │ │ │ │ ├── SplitTunnelingRecyclerViewAdapter.kt │ │ │ │ │ ├── holder │ │ │ │ │ │ ├── ApplicationInfoViewHolder.kt │ │ │ │ │ │ └── AppsSearchViewHolder.kt │ │ │ │ │ └── items │ │ │ │ │ │ ├── ApplicationItem.java │ │ │ │ │ │ ├── DescriptionItem.kt │ │ │ │ │ │ ├── SearchItem.kt │ │ │ │ │ │ └── SplitTunnelingItem.kt │ │ │ │ ├── sync │ │ │ │ │ ├── SyncFragment.kt │ │ │ │ │ └── SyncServersNavigator.java │ │ │ │ ├── tfa │ │ │ │ │ └── TFAFragment.kt │ │ │ │ ├── timepicker │ │ │ │ │ ├── OnDelayOptionSelected.java │ │ │ │ │ ├── PauseDelay.java │ │ │ │ │ └── TimePickerActivity.java │ │ │ │ ├── updates │ │ │ │ │ └── UpdatesController.kt │ │ │ │ └── viewmodel │ │ │ │ │ ├── AccountViewModel.kt │ │ │ │ │ ├── AlwaysOnVPNViewModel.kt │ │ │ │ │ ├── AntiTrackerViewModel.kt │ │ │ │ │ ├── BypassVpnViewModel.kt │ │ │ │ │ ├── ColorThemeViewModel.kt │ │ │ │ │ ├── ConnectionViewModel.kt │ │ │ │ │ ├── FastestSettingViewModel.java │ │ │ │ │ ├── IPv6ViewModel.kt │ │ │ │ │ ├── KillSwitchViewModel.kt │ │ │ │ │ ├── LocationViewModel.kt │ │ │ │ │ ├── LoggingViewModel.kt │ │ │ │ │ ├── MultiHopViewModel.kt │ │ │ │ │ ├── NotificationDialogueViewModel.kt │ │ │ │ │ ├── ProtocolViewModel.java │ │ │ │ │ ├── ServerListFilterViewModel.kt │ │ │ │ │ ├── ServerListViewModel.kt │ │ │ │ │ ├── ServersListCommonViewModel.java │ │ │ │ │ ├── ServersViewModel.kt │ │ │ │ │ ├── SplitTunnelingViewModel.java │ │ │ │ │ ├── StartOnBootViewModel.kt │ │ │ │ │ ├── SyncServersViewModel.java │ │ │ │ │ └── ViewModelCleaner.kt │ │ │ │ └── vpn │ │ │ │ ├── AlwaysOnVpnService.java │ │ │ │ ├── GlobalBehaviorController.java │ │ │ │ ├── NetworkUtils.kt │ │ │ │ ├── OnBootBroadcastReceiver.java │ │ │ │ ├── OnProtocolChangedListener.java │ │ │ │ ├── OnVpnStatusChangedListener.java │ │ │ │ ├── Protocol.java │ │ │ │ ├── ProtocolController.java │ │ │ │ ├── ServiceConstants.java │ │ │ │ ├── VPNConnectionState.java │ │ │ │ ├── VPNState.java │ │ │ │ ├── VPNStateListener.kt │ │ │ │ ├── controller │ │ │ │ ├── BehaviourListener.java │ │ │ │ ├── DefaultVPNStateListener.kt │ │ │ │ ├── OnTunnelChangedListener.java │ │ │ │ ├── OpenVpnBehavior.java │ │ │ │ ├── PauseTimer.java │ │ │ │ ├── VpnBehavior.java │ │ │ │ ├── VpnBehaviorController.java │ │ │ │ ├── VpnStateListener.java │ │ │ │ ├── VpnStateListenerImpl.kt │ │ │ │ ├── WireGuardBehavior.java │ │ │ │ ├── WireGuardKeyBroadcastReceiver.java │ │ │ │ └── WireGuardKeyController.java │ │ │ │ ├── local │ │ │ │ ├── NetworkController.java │ │ │ │ ├── PermissionActivity.java │ │ │ │ └── WifiWatcherService.java │ │ │ │ ├── model │ │ │ │ ├── NetworkSource.java │ │ │ │ ├── NetworkState.kt │ │ │ │ ├── VPNRule.java │ │ │ │ └── WifiItem.kt │ │ │ │ ├── openvpn │ │ │ │ ├── ConfigLoader.java │ │ │ │ ├── IVPNService.java │ │ │ │ ├── ProfileManager.java │ │ │ │ └── ServiceConfiguration.java │ │ │ │ └── wireguard │ │ │ │ └── ConfigManager.kt │ │ └── org │ │ │ └── spongycastle │ │ │ └── util │ │ │ ├── encoders │ │ │ ├── Base64.java │ │ │ ├── Base64Encoder.java │ │ │ └── Encoder.java │ │ │ └── io │ │ │ └── pem │ │ │ ├── PemGenerationException.java │ │ │ ├── PemHeader.java │ │ │ ├── PemObject.java │ │ │ ├── PemObjectGenerator.java │ │ │ ├── PemReader.java │ │ │ └── PemWriter.java │ │ └── res │ │ ├── anim │ │ ├── slide_in_bottom.xml │ │ └── slide_out_bottom.xml │ │ ├── drawable-hdpi-v11 │ │ └── ic_stat_name.png │ │ ├── drawable-hdpi-v9 │ │ └── ic_stat_name.png │ │ ├── drawable-hdpi │ │ ├── connection_round_btn.png │ │ ├── ic_shortcut_vpn_key.png │ │ ├── ic_stat_name.png │ │ ├── illustration_clientarea.png │ │ ├── pause_round_btn.png │ │ ├── tutorial_page_access.png │ │ ├── tutorial_page_locations.png │ │ └── tutorial_page_security.png │ │ ├── drawable-mdpi-v11 │ │ └── ic_stat_name.png │ │ ├── drawable-mdpi-v9 │ │ └── ic_stat_name.png │ │ ├── drawable-mdpi │ │ ├── connection_round_btn.png │ │ ├── ic_shortcut_vpn_key.png │ │ ├── ic_stat_name.png │ │ ├── illustration_clientarea.png │ │ ├── pause_round_btn.png │ │ ├── tutorial_page_access.png │ │ ├── tutorial_page_locations.png │ │ └── tutorial_page_security.png │ │ ├── drawable-night │ │ ├── fav_server.png │ │ └── saved_networks.png │ │ ├── drawable-xhdpi-v11 │ │ └── ic_stat_name.png │ │ ├── drawable-xhdpi-v9 │ │ └── ic_stat_name.png │ │ ├── drawable-xhdpi │ │ ├── connection_round_btn.png │ │ ├── ic_shortcut_vpn_key.png │ │ ├── ic_stat_name.png │ │ ├── illustration_clientarea.png │ │ ├── pause_round_btn.png │ │ ├── tutorial_page_access.png │ │ ├── tutorial_page_locations.png │ │ └── tutorial_page_security.png │ │ ├── drawable-xxhdpi-v11 │ │ └── ic_stat_name.png │ │ ├── drawable-xxhdpi-v9 │ │ └── ic_stat_name.png │ │ ├── drawable-xxhdpi │ │ ├── connection_round_btn.png │ │ ├── ic_shortcut_vpn_key.png │ │ ├── ic_stat_name.png │ │ ├── illustration_clientarea.png │ │ ├── pause_round_btn.png │ │ ├── tutorial_page_access.png │ │ ├── tutorial_page_locations.png │ │ └── tutorial_page_security.png │ │ ├── drawable-xxxhdpi │ │ ├── connection_round_btn.png │ │ ├── ic_shortcut_vpn_key.png │ │ ├── illustration_clientarea.png │ │ ├── pause_round_btn.png │ │ ├── tutorial_page_access.png │ │ ├── tutorial_page_locations.png │ │ └── tutorial_page_security.png │ │ ├── drawable │ │ ├── active_text_background.xml │ │ ├── alerts_background.xml │ │ ├── common_thumb_selector.xml │ │ ├── common_track_selector.xml │ │ ├── default_dot.xml │ │ ├── dialog_background.xml │ │ ├── dialogue_background_2.xml │ │ ├── dialogue_server_list_location_tab_selector.xml │ │ ├── discount_background.xml │ │ ├── drag_view_background.xml │ │ ├── fastest_badge_background.xml │ │ ├── fav_server.png │ │ ├── fill_transparent.xml │ │ ├── ic_account.xml │ │ ├── ic_add.xml │ │ ├── ic_alert_triangle.xml │ │ ├── ic_arrow_back.xml │ │ ├── ic_arrow_left.xml │ │ ├── ic_arrow_right.xml │ │ ├── ic_arrow_top.xml │ │ ├── ic_cancel.xml │ │ ├── ic_check.xml │ │ ├── ic_check_full_circle.xml │ │ ├── ic_check_in_circle.xml │ │ ├── ic_close.xml │ │ ├── ic_content_copy.xml │ │ ├── ic_crosshair.xml │ │ ├── ic_done.xml │ │ ├── ic_exit.xml │ │ ├── ic_fastest_server.xml │ │ ├── ic_file_download.xml │ │ ├── ic_info.xml │ │ ├── ic_launcher_foreground.xml │ │ ├── ic_logo_sq.xml │ │ ├── ic_logout.xml │ │ ├── ic_map_pin.xml │ │ ├── ic_multiply.xml │ │ ├── ic_network_cell.xml │ │ ├── ic_notifications_disconnect.xml │ │ ├── ic_pause.xml │ │ ├── ic_play.xml │ │ ├── ic_qr_code.xml │ │ ├── ic_refresh.xml │ │ ├── ic_remove.xml │ │ ├── ic_row_1_col_1.xml │ │ ├── ic_row_1_col_2.xml │ │ ├── ic_row_1_col_3.xml │ │ ├── ic_row_1_col_4.xml │ │ ├── ic_row_1_col_5.xml │ │ ├── ic_row_1_col_6.xml │ │ ├── ic_row_1_col_7.xml │ │ ├── ic_row_1_col_8.xml │ │ ├── ic_row_2_col_1.xml │ │ ├── ic_row_2_col_2.xml │ │ ├── ic_row_2_col_3.xml │ │ ├── ic_row_2_col_4.xml │ │ ├── ic_row_2_col_5.xml │ │ ├── ic_row_2_col_6.xml │ │ ├── ic_row_2_col_7.xml │ │ ├── ic_row_2_col_8.xml │ │ ├── ic_row_3_col_1.xml │ │ ├── ic_row_3_col_2.xml │ │ ├── ic_row_3_col_3.xml │ │ ├── ic_row_3_col_4.xml │ │ ├── ic_row_3_col_5.xml │ │ ├── ic_row_3_col_6.xml │ │ ├── ic_row_3_col_7.xml │ │ ├── ic_row_3_col_8.xml │ │ ├── ic_row_4_col_1.xml │ │ ├── ic_row_4_col_2.xml │ │ ├── ic_row_4_col_3.xml │ │ ├── ic_row_4_col_4.xml │ │ ├── ic_row_4_col_5.xml │ │ ├── ic_row_4_col_6.xml │ │ ├── ic_row_4_col_7.xml │ │ ├── ic_row_4_col_8.xml │ │ ├── ic_row_5_col_1.xml │ │ ├── ic_row_5_col_2.xml │ │ ├── ic_row_5_col_3.xml │ │ ├── ic_row_5_col_4.xml │ │ ├── ic_row_5_col_5.xml │ │ ├── ic_row_5_col_6.xml │ │ ├── ic_row_5_col_7.xml │ │ ├── ic_row_5_col_8.xml │ │ ├── ic_row_6_col_1.xml │ │ ├── ic_row_6_col_2.xml │ │ ├── ic_row_6_col_3.xml │ │ ├── ic_row_6_col_4.xml │ │ ├── ic_row_6_col_5.xml │ │ ├── ic_row_6_col_6.xml │ │ ├── ic_row_6_col_7.xml │ │ ├── ic_row_6_col_8.xml │ │ ├── ic_row_7_col_1.xml │ │ ├── ic_row_7_col_2.xml │ │ ├── ic_row_7_col_3.xml │ │ ├── ic_row_7_col_4.xml │ │ ├── ic_row_7_col_5.xml │ │ ├── ic_row_7_col_6.xml │ │ ├── ic_row_7_col_7.xml │ │ ├── ic_row_7_col_8.xml │ │ ├── ic_server.xml │ │ ├── ic_settings.xml │ │ ├── ic_settings_fab.xml │ │ ├── ic_settings_filled.xml │ │ ├── ic_shuffle.xml │ │ ├── ic_sort.xml │ │ ├── ic_star_off.xml │ │ ├── ic_star_on.xml │ │ ├── ic_stop.xml │ │ ├── ic_toolbar_ivpn_logo.xml │ │ ├── ic_wifi.xml │ │ ├── illustration_prompt_kill_switch.png │ │ ├── inactive_text_background.xml │ │ ├── input_field_error_background.xml │ │ ├── input_field_focused_background.xml │ │ ├── ipv6_text_background.xml │ │ ├── login_image.png │ │ ├── none_state_background.xml │ │ ├── ping_green_light.xml │ │ ├── ping_red_light.xml │ │ ├── ping_yellow_light.xml │ │ ├── plan_details_background.xml │ │ ├── popup_background.xml │ │ ├── radio_group_divider.xml │ │ ├── saved_networks.png │ │ ├── selected_dot.xml │ │ ├── shield.png │ │ ├── slider_background.xml │ │ ├── thumb_antitracker_disabled.xml │ │ ├── thumb_antitracker_hardcore.xml │ │ ├── thumb_antitracker_normal.xml │ │ ├── thumb_connected.xml │ │ ├── thumb_connecting.xml │ │ ├── thumb_disconnected.xml │ │ ├── thumb_disconnecting.xml │ │ ├── thumb_paused.xml │ │ ├── thumb_selector_big.xml │ │ ├── track_antitracker_disabled.xml │ │ ├── track_antitracker_hardcore.xml │ │ ├── track_antitracker_normal.xml │ │ ├── track_connected.xml │ │ ├── track_connecting.xml │ │ ├── track_disconnected.xml │ │ ├── track_disconnecting.xml │ │ ├── track_paused.xml │ │ ├── track_selector.xml │ │ ├── trusted_state_background.xml │ │ ├── tutorial_circle_active.xml │ │ ├── tutorial_circle_passive.xml │ │ └── untrusted_state_background.xml │ │ ├── layout │ │ ├── activity_main.xml │ │ ├── application_item.xml │ │ ├── apps_search_item.xml │ │ ├── bottom_sheet.xml │ │ ├── bottom_sheet_dm_pro.xml │ │ ├── bottom_sheet_dm_standard.xml │ │ ├── bottom_sheet_legacy_standard.xml │ │ ├── bottom_sheet_pro.xml │ │ ├── bottom_sheet_standard.xml │ │ ├── content_account.xml │ │ ├── content_always_on_vpn.xml │ │ ├── content_anti_surveillance.xml │ │ ├── content_captcha.xml │ │ ├── content_common_network.xml │ │ ├── content_custom_dns.xml │ │ ├── content_fastest_settings.xml │ │ ├── content_killswitch.xml │ │ ├── content_login.xml │ │ ├── content_mock_location.xml │ │ ├── content_mock_location_step1.xml │ │ ├── content_mock_location_step2.xml │ │ ├── content_mock_location_step3.xml │ │ ├── content_network_rule.xml │ │ ├── content_privacy_policy.xml │ │ ├── content_protocol.xml │ │ ├── content_settings.xml │ │ ├── content_split_tunneling.xml │ │ ├── content_terms_of_service.xml │ │ ├── content_tfa.xml │ │ ├── content_wireguard_details.xml │ │ ├── description_item.xml │ │ ├── dialog_advanced_kill_switch.xml │ │ ├── dialog_custom_dns.xml │ │ ├── dialog_custom_time_picker.xml │ │ ├── dialog_predefined_time_picker.xml │ │ ├── dialog_wireguard_details.xml │ │ ├── dialogue_default_network_state.xml │ │ ├── dialogue_filter.xml │ │ ├── dialogue_forbidden_location.xml │ │ ├── dialogue_location.xml │ │ ├── dialogue_network_state.xml │ │ ├── dialogue_night_mode.xml │ │ ├── dialogue_pause.xml │ │ ├── dialogue_server_list_location.xml │ │ ├── dialogue_server_location.xml │ │ ├── fastest_server_item.xml │ │ ├── fragment_account.xml │ │ ├── fragment_always_on_vpn.xml │ │ ├── fragment_anti_tracker_list.xml │ │ ├── fragment_antitracker.xml │ │ ├── fragment_captcha.xml │ │ ├── fragment_connect.xml │ │ ├── fragment_custom_dns.xml │ │ ├── fragment_custom_port.xml │ │ ├── fragment_fastest_settings.xml │ │ ├── fragment_favourite_servers_list.xml │ │ ├── fragment_killswitch.xml │ │ ├── fragment_login.xml │ │ ├── fragment_logout_bottom_sheet.xml │ │ ├── fragment_mock_location.xml │ │ ├── fragment_mock_location_step1.xml │ │ ├── fragment_mock_location_step2.xml │ │ ├── fragment_mock_location_step3.xml │ │ ├── fragment_network.xml │ │ ├── fragment_network_rule.xml │ │ ├── fragment_policy.xml │ │ ├── fragment_ports.xml │ │ ├── fragment_protocol.xml │ │ ├── fragment_qr_reader.xml │ │ ├── fragment_saved_networks.xml │ │ ├── fragment_scanned_networks.xml │ │ ├── fragment_server_list.xml │ │ ├── fragment_settings.xml │ │ ├── fragment_split_tunneling.xml │ │ ├── fragment_sync.xml │ │ ├── fragment_tabs_server_list.xml │ │ ├── fragment_terms_of_service.xml │ │ ├── fragment_tfa.xml │ │ ├── fragment_wireguard_details.xml │ │ ├── port_item.xml │ │ ├── port_item_list.xml │ │ ├── protocol_openvpn_section_settings.xml │ │ ├── protocol_section_selection.xml │ │ ├── protocol_wireguard_section_settings.xml │ │ ├── random_server_item.xml │ │ ├── search_item.xml │ │ ├── server_item.xml │ │ ├── settings_section_about.xml │ │ ├── settings_section_advanced.xml │ │ ├── settings_section_connectivity.xml │ │ ├── settings_section_interface.xml │ │ ├── settings_section_ipv6.xml │ │ ├── settings_section_logging.xml │ │ ├── settings_section_server.xml │ │ ├── view_common_network_behaviour.xml │ │ ├── view_fastest_setting_description_item.xml │ │ ├── view_fastest_setting_server_item.xml │ │ ├── view_network_behaviour.xml │ │ ├── view_network_behaviour_selected.xml │ │ ├── view_network_main.xml │ │ ├── view_saved_wifi_header.xml │ │ ├── view_server_location.xml │ │ ├── view_sliding_panel.xml │ │ ├── view_sliding_panel_cards.xml │ │ ├── view_wifi_item.xml │ │ └── wireguard_details_key.xml │ │ ├── menu │ │ ├── menu_servers.xml │ │ └── menu_split_tunneling.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.png │ │ └── ic_launcher_round.png │ │ ├── navigation │ │ └── nav_graph.xml │ │ ├── values-night │ │ ├── colors.xml │ │ ├── path.xml │ │ └── styles.xml │ │ ├── values-sw320dp │ │ └── dimens.xml │ │ ├── values-sw360dp │ │ └── dimens.xml │ │ ├── values-xxhdpi │ │ └── dimens.xml │ │ ├── values │ │ ├── attrs.xml │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── ic_launcher_background.xml │ │ ├── path.xml │ │ ├── plurals.xml │ │ ├── strings.xml │ │ ├── styles.xml │ │ └── vpn_strings.xml │ │ └── xml │ │ ├── logpath.xml │ │ └── shortcuts.xml └── tools │ ├── CMakeLists.txt │ ├── libwg-go │ ├── .gitignore │ ├── Makefile │ ├── api-android.go │ ├── go.mod │ ├── go.sum │ ├── goruntime-boottime-over-monotonic.diff │ └── jni.c │ └── ndk-compat │ ├── compat.c │ └── compat.h ├── fakekeystore.properties ├── fastlane └── metadata │ └── android │ └── en-US │ ├── full_description.txt │ ├── images │ ├── icon.png │ └── phoneScreenshots │ │ ├── 1.png │ │ ├── 2.png │ │ ├── 3.png │ │ ├── 4.png │ │ └── 5.png │ ├── short_description.txt │ └── title.txt ├── fdroid ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── net │ │ └── ivpn │ │ └── client │ │ ├── FDroidFeatureConfig.kt │ │ ├── FDroidIVPNApplication.kt │ │ ├── dagger │ │ ├── FDroidComponent.kt │ │ └── FDroidScope.kt │ │ ├── navigation │ │ └── FDroidNavigation.kt │ │ ├── signup │ │ └── FDroidSignUpViewModel.kt │ │ └── updates │ │ └── StubUpdatesViewModel.kt │ └── res │ ├── mipmap-anydpi-v26 │ ├── ic_launcher.xml │ └── ic_launcher_round.xml │ ├── mipmap-hdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-mdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xxhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ └── mipmap-xxxhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── liboqs-android ├── .gitignore ├── build.gradle ├── consumer-rules.pro ├── jni │ ├── Android.mk │ ├── include │ │ └── oqs │ │ │ ├── aes.h │ │ │ ├── common.h │ │ │ ├── kem.h │ │ │ ├── kem_bike.h │ │ │ ├── kem_classic_mceliece.h │ │ │ ├── kem_frodokem.h │ │ │ ├── kem_hqc.h │ │ │ ├── kem_kyber.h │ │ │ ├── kem_ntru.h │ │ │ ├── kem_ntruprime.h │ │ │ ├── kem_saber.h │ │ │ ├── kem_sike.h │ │ │ ├── oqs.h │ │ │ ├── oqsconfig.h │ │ │ ├── rand.h │ │ │ ├── sha2.h │ │ │ ├── sha3.h │ │ │ ├── sig.h │ │ │ ├── sig_dilithium.h │ │ │ ├── sig_falcon.h │ │ │ ├── sig_rainbow.h │ │ │ └── sig_sphincs.h │ └── jni │ │ ├── KEMs.c │ │ ├── KEMs.h │ │ ├── KeyEncapsulation.c │ │ ├── KeyEncapsulation.h │ │ ├── Rand.c │ │ ├── Rand.h │ │ ├── Signature.c │ │ ├── Signature.h │ │ ├── Sigs.c │ │ ├── Sigs.h │ │ ├── handle.c │ │ └── handle.h ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ └── java │ └── net │ └── ivpn │ └── liboqs │ ├── Common.java │ ├── KEMExample.java │ ├── KEMs.java │ ├── KeyEncapsulation.java │ ├── MechanismNotEnabledError.java │ ├── MechanismNotSupportedError.java │ ├── Pair.java │ ├── Rand.java │ ├── Signature.java │ └── Sigs.java ├── settings.gradle ├── site ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── net │ │ └── ivpn │ │ └── client │ │ ├── SiteFeatureConfig.kt │ │ ├── SiteIVPNApplication.kt │ │ ├── dagger │ │ ├── SiteComponent.kt │ │ └── SiteScope.kt │ │ ├── navigation │ │ └── SiteNavigation.kt │ │ ├── signup │ │ └── SiteSignUpViewModel.kt │ │ ├── updater │ │ ├── OnUpdateCheckListener.kt │ │ ├── Update.kt │ │ └── UpdateHelper.kt │ │ └── updates │ │ ├── Mapper.kt │ │ ├── UpdatesFragment.kt │ │ ├── UpdatesJobService.kt │ │ ├── UpdatesJobServiceUtil.java │ │ ├── UpdatesService.java │ │ └── UpdatesViewModel.kt │ └── res │ ├── layout │ ├── content_updates.xml │ ├── fragment_updates.xml │ ├── updates_section_settings.xml │ └── updates_section_version_info.xml │ ├── mipmap-anydpi-v26 │ ├── ic_launcher.xml │ └── ic_launcher_round.xml │ ├── mipmap-hdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-mdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xxhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xxxhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── navigation │ └── site_nav_graph.xml │ ├── values-night │ └── themes.xml │ └── values │ ├── colors.xml │ ├── strings.xml │ └── themes.xml └── store ├── .gitignore ├── build.gradle ├── proguard-rules.pro ├── release └── output-metadata.json └── src └── main ├── AndroidManifest.xml ├── java └── net │ └── ivpn │ └── client │ ├── StoreIVPNApplication.kt │ ├── billing │ ├── BillingActivity.java │ ├── BillingListener.java │ ├── BillingManager.java │ ├── BillingManagerWrapper.java │ ├── BillingNavigator.java │ ├── BillingViewModel.java │ ├── ConsumableProducts.kt │ ├── Security.java │ ├── Sku.java │ ├── SubscriptionState.java │ ├── Utils.java │ └── addfunds │ │ └── Period.kt │ ├── config │ └── StoreFeatureConfig.kt │ ├── dagger │ ├── BillingComponent.kt │ └── BillingScope.kt │ ├── navigation │ └── StoreNavigation.kt │ ├── signup │ ├── SignUpAccountCreatedFragment.kt │ ├── SignUpPeriodFragment.kt │ ├── SignUpProductFragment.kt │ └── SignUpViewModel.kt │ └── updates │ └── UpdatesStubViewModel.kt └── res ├── layout ├── activity_billing.xml ├── content_sign_up_finish.xml ├── content_sign_up_period.xml ├── content_sign_up_product.xml ├── fragment_sign_up_finish.xml ├── fragment_sign_up_period.xml └── fragment_sign_up_product.xml ├── mipmap-anydpi-v26 ├── ic_launcher.xml └── ic_launcher_round.xml ├── mipmap-hdpi ├── ic_launcher.png └── ic_launcher_round.png ├── mipmap-mdpi ├── ic_launcher.png └── ic_launcher_round.png ├── mipmap-xhdpi ├── ic_launcher.png └── ic_launcher_round.png ├── mipmap-xxhdpi ├── ic_launcher.png └── ic_launcher_round.png ├── mipmap-xxxhdpi ├── ic_launcher.png └── ic_launcher_round.png └── navigation └── store_nav_graph.xml /.github/ISSUE_TEMPLATE/1-bug-report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: "Bug report" 3 | about: Report a bug in IVPN Android app 4 | --- 5 | 6 | # Bug report 7 | 8 | ## Describe your environment 9 | 10 | * Device: _____ 11 | * OS name and version: _____ 12 | * IVPN app version: _____ 13 | 14 | ## Describe the problem 15 | 16 | ### Steps to reproduce: 17 | 18 | 1. _____ 19 | 2. _____ 20 | 3. _____ 21 | 22 | ### Observed Results: 23 | 24 | * What happened? This could be a description, log output, etc. 25 | 26 | ### Expected Results: 27 | 28 | * What did you expect to happen? 29 | 30 | ### Relevant Code: 31 | 32 | ``` 33 | // TODO(you): code here to reproduce the problem 34 | ``` -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/2-feature-request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: "Feature request" 3 | about: Suggest a feature for IVPN Android app 4 | --- 5 | 6 | # Feature request 7 | 8 | ## Description 9 | 10 | A clear and concise description of the problem or missing capability. 11 | 12 | ## Describe the solution you'd like 13 | 14 | If you have a solution in mind, please describe it. 15 | 16 | ## Describe alternatives you've considered 17 | 18 | Have you considered any alternative solutions or workarounds? -------------------------------------------------------------------------------- /.github/workflows/validate-gradle-wrapper.yaml: -------------------------------------------------------------------------------- 1 | name: Validate Gradle Wrapper 2 | 3 | on: 4 | push: 5 | branches: [ "main", "develop" ] 6 | pull_request: 7 | 8 | jobs: 9 | validation: 10 | name: Validation 11 | runs-on: ubuntu-latest 12 | steps: 13 | - uses: actions/checkout@v3 14 | - uses: gradle/wrapper-validation-action@v1 15 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea/workspace.xml 5 | /.idea/vcs.xml 6 | /.idea/libraries 7 | .DS_Store 8 | /build 9 | /captures 10 | .externalNativeBuild 11 | keystore.properties 12 | /keystore.properties 13 | /.idea/ 14 | /core/.cxx/ 15 | core/.cxx/ 16 | /store/production/ 17 | /production/ 18 | liboqs-android/**/*.so 19 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "wireguard-tools"] 2 | path = core/tools/wireguard-tools 3 | url = https://git.zx2c4.com/wireguard-tools 4 | [submodule "core/src/main/cpp/openvpn"] 5 | path = core/src/main/cpp/openvpn 6 | url = https://github.com/ivpn/android-openvpn 7 | [submodule "core/src/main/cpp/openssl"] 8 | path = core/src/main/cpp/openssl 9 | url = https://github.com/schwabe/platform_external_openssl 10 | [submodule "core/src/main/cpp/mbedtls"] 11 | path = core/src/main/cpp/mbedtls 12 | url = https://github.com/ARMmbed/mbedtls.git 13 | [submodule "core/src/main/cpp/openvpn3"] 14 | path = core/src/main/cpp/openvpn3 15 | url = https://github.com/schwabe/openvpn3.git 16 | [submodule "core/src/main/cpp/asio"] 17 | path = core/src/main/cpp/asio 18 | url = https://github.com/chriskohlhoff/asio/ 19 | [submodule "core/src/main/cpp/lz4"] 20 | path = core/src/main/cpp/lz4 21 | url = https://github.com/lz4/lz4.git 22 | [submodule "liboqs-android/jni/liboqs"] 23 | path = liboqs-android/jni/liboqs 24 | url = https://github.com/ivpn/liboqs 25 | -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- 1 | # This is the official list of IVPN Android app authors 2 | 3 | # Names should be added to this file as 4 | # Name 5 | 6 | 7 | # Individual Persons 8 | 9 | Oleksandr Mykhailenko 10 | Juraj Hilje 11 | 12 | # Organizations 13 | 14 | IVPN Limited -------------------------------------------------------------------------------- /core/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /core/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required (VERSION 3.4.1) 2 | project(IVPN) 3 | 4 | add_subdirectory(tools) 5 | add_subdirectory(src/main/cpp) -------------------------------------------------------------------------------- /core/src/main/assets/flag/ad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ad.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ae.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ae.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/af.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/af.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ag.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ai.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ai.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/al.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/al.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/am.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/am.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/an.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/an.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ao.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ao.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/aq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/aq.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ar.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/as.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/as.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/at.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/at.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/au.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/au.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/aw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/aw.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/az.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/az.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ba.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ba.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bb.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bd.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/be.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/be.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bf.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bg.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bh.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bi.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bj.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bm.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bn.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bo.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/br.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/br.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bs.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bt.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bw.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/by.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/by.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/bz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/bz.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ca.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ca.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cd.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cf.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cg.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ch.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ci.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ci.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ck.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ck.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cl.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cm.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cn.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/co.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/co.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cu.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cv.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cy.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/cz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/cz.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/de.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/de.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/dj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/dj.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/dk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/dk.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/dm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/dm.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/do.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/do.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/dz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/dz.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ec.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ec.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ee.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/eg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/eg.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/eh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/eh.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/er.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/er.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/es.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/es.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/et.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/et.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/fi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/fi.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/fj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/fj.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/fm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/fm.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/fo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/fo.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/fr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/fr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ga.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gb.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gd.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ge.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gg.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gh.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gi.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gl.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gm.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gn.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gp.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gq.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gt.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gu.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gw.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/gy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/gy.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/hk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/hk.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/hn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/hn.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/hr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/hr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ht.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ht.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/hu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/hu.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/id.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/id.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ie.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ie.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/il.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/il.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/im.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/im.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/in.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/in.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/iq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/iq.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ir.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ir.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/is.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/is.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/it.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/it.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/je.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/je.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/jm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/jm.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/jo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/jo.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/jp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/jp.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ke.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ke.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/kg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/kg.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/kh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/kh.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ki.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ki.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/km.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/km.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/kn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/kn.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/kp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/kp.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/kr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/kr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/kw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/kw.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ky.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ky.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/kz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/kz.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/la.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/la.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/lb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/lb.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/lc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/lc.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/li.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/li.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/lk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/lk.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/lr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/lr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ls.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ls.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/lt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/lt.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/lu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/lu.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/lv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/lv.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ly.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ly.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ma.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ma.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mc.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/md.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/md.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/me.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/me.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mg.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mh.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mk.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ml.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ml.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mm.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mn.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mo.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mq.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ms.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mt.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mu.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mv.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mw.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mx.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/my.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/my.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/mz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/mz.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/na.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/na.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/nc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/nc.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ne.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ne.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ng.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ng.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ni.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ni.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/nl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/nl.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/no.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/no.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/np.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/np.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/nr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/nr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/nz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/nz.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/om.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/om.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/pa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/pa.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/pe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/pe.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/pf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/pf.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/pg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/pg.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ph.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ph.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/pk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/pk.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/pl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/pl.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/pr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/pr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ps.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ps.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/pt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/pt.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/pw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/pw.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/py.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/py.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/qa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/qa.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/re.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/re.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ro.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/rs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/rs.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ru.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ru.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/rw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/rw.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sa.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sb.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sc.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sd.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/se.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/se.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sg.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/si.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/si.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sk.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sl.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sm.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sn.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/so.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/so.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/st.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/st.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sv.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sy.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/sz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/sz.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tc.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/td.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/td.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tg.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/th.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/th.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tj.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tj.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tl.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tm.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tn.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/to.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/to.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tr.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tt.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tv.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tv.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tw.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/tz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/tz.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ua.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ua.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ug.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ug.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/us.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/us.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/uy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/uy.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/uz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/uz.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/va.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/va.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/vc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/vc.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ve.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ve.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/vg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/vg.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/vi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/vi.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/vn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/vn.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/vu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/vu.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ws.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ws.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/ye.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/ye.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/za.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/za.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/zm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/zm.png -------------------------------------------------------------------------------- /core/src/main/assets/flag/zw.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/assets/flag/zw.png -------------------------------------------------------------------------------- /core/src/main/cpp/lz4.cmake: -------------------------------------------------------------------------------- 1 | set(lz4_srcs 2 | lz4.c 3 | ) 4 | 5 | PREPEND(lz4_src_with_path "lz4/lib/" ${lz4_srcs}) 6 | add_library(lz4 ${lz4_src_with_path}) 7 | target_include_directories(lz4 PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/lz4/lib") 8 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/AUTHORS: -------------------------------------------------------------------------------- 1 | Authors of the LZO data compression library: 2 | 3 | Markus F.X.J. Oberhumer. Invented, designed and implemented LZO. 4 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/B/clean.bat: -------------------------------------------------------------------------------- 1 | @del /q *.def *.err *.exp *.map *.o *.obj *.res *.tds > nul 2> nul 2 | @del /q liblzo2.a lzo2.a lzo2.dll lzo2.lib > nul 2> nul 3 | @del /q a.exe a.out dict.exe lzopack.exe precomp.exe precomp2.exe simple.exe > nul 2> nul 4 | @del /q lzotest.exe testmini.exe > nul 2> nul 5 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/B/done.bat: -------------------------------------------------------------------------------- 1 | @echo // 2 | @echo // Building LZO was successful. All done. 3 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/B/dos32/dj2.opt: -------------------------------------------------------------------------------- 1 | -O2 2 | -fomit-frame-pointer 3 | -Wall 4 | -Wcast-align 5 | -Wcast-qual 6 | -Wwrite-strings 7 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/B/generic/build_freestanding.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | ## vim:set ts=4 sw=4 et: 3 | 4 | test "X${top_srcdir}" = X && top_srcdir=`echo "$0" | sed 's,[^/]*$,,'`../.. 5 | 6 | LZO_CFG_FREESTANDING=1 7 | 8 | . $top_srcdir/B/generic/build.sh 9 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/B/generic/build_gcc.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | ## vim:set ts=4 sw=4 et: 3 | set -e 4 | echo "// Using GNU C compiler." 5 | echo "//" 6 | 7 | test "X${top_srcdir}" = X && top_srcdir=`echo "$0" | sed 's,[^/]*$,,'`../.. 8 | UNAME_MACHINE=unknown 9 | 10 | CC="gcc -fPIC" 11 | CC="gcc -static" 12 | CC="gcc" 13 | CFLAGS="-Wall -O2 -fomit-frame-pointer" 14 | 15 | # delete the next line to disable assembler support 16 | UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown 17 | case $UNAME_MACHINE in 18 | i[34567]86) 19 | CC="$CC -m32" 20 | CPPFLAGS="-DLZO_USE_ASM" 21 | LZO_EXTRA_SOURCES=$top_srcdir/asm/i386/src_gas/*.S 22 | ;; 23 | esac 24 | 25 | . $top_srcdir/B/generic/build.sh 26 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/B/generic/clean.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | ## vim:set ts=4 sw=4 et: 3 | # Copyright (C) 1996-2017 Markus F.X.J. Oberhumer 4 | 5 | rm -f *.o liblzo2.a dict.out lzopack.out precomp.out precomp2.out simple.out lzotest.out testmini.out 6 | 7 | true 8 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/B/prepare.bat: -------------------------------------------------------------------------------- 1 | @call b\unset.bat 2 | @call b\clean.bat 3 | 4 | @set CFI=-Iinclude -I. -Isrc 5 | @set CFASM=-DLZO_USE_ASM 6 | @set BNAME=lzo2 7 | @set BLIB=lzo2.lib 8 | @set BDLL=lzo2.dll 9 | 10 | @echo Compiling, please be patient... 11 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/B/unset.bat: -------------------------------------------------------------------------------- 1 | @set CC= 2 | @set CF= 3 | @set CFI= 4 | @set CFX= 5 | @set CFASM= 6 | @set LF= 7 | @set BNAME= 8 | @set BLIB= 9 | @set BDLL= 10 | @set BECHO= 11 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/B/win32/vc_dll.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | lzo1c_decompress_asm 3 | lzo1f_decompress_asm_fast 4 | lzo1x_decompress_asm 5 | lzo1x_decompress_asm_fast 6 | lzo1y_decompress_asm 7 | lzo1y_decompress_asm_fast 8 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/B/win64/vc_dll.def: -------------------------------------------------------------------------------- 1 | EXPORTS 2 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/BUGS: -------------------------------------------------------------------------------- 1 | ============================================================================ 2 | LZO -- a real-time data compression library 3 | ============================================================================ 4 | 5 | LZO is free of any known bugs. 6 | 7 | Nevertheless LZO has been reported to break the optimizer of some 8 | compilers including gcc 2.7.2 (AIX, IRIX) and Watcom C 9.5. 9 | 10 | So if 'lzotest' reports data decompression errors you should recompile 11 | everything without optimizations and see if that fixes the problem. 12 | I'd like to hear about optimizer problems and possible workarounds. 13 | 14 | 15 | Known compiler problems: 16 | ------------------------ 17 | some versions of gcc use '-O2 -fno-strength-reduce' 18 | some versions of gcc use '-O2 -fno-schedule-insns -fno-schedule-insns2' 19 | Watcom C 9.5 compile with '-oneax' instead of '-oneatx' 20 | 21 | 22 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/ChangeLog: -------------------------------------------------------------------------------- 1 | Sorry, no detailed ChangeLog available yet. 2 | 3 | Please see the file NEWS for a list of user visible changes. 4 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/THANKS: -------------------------------------------------------------------------------- 1 | I want to thank the following people for giving feedback, doing 2 | beta-testing or helping me some other way: 3 | 4 | Charles W. Sandmann 5 | Frank Donahoe 6 | Holger Berger 7 | Jean-loup Gailly 8 | Laszlo Molnar 9 | Mark Adler 10 | Paul D. Eccles 11 | Rodolphe Ortalo 12 | William Magro 13 | Wolfgang Lugmayr 14 | Natascha 15 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1c_s1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1c_s1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1f_f1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1f_f1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1x_f1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1x_f1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1x_s1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1x_s1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1y_f1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1y_f1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1y_s1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/coff32/lzo1y_s1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1c_s1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1c_s1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1f_f1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1f_f1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1x_f1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1x_f1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1x_s1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1x_s1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1y_f1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1y_f1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1y_s1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/elf32/lzo1y_s1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1c_s1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1c_s1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1f_f1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1f_f1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1x_f1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1x_f1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1x_s1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1x_s1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1y_f1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1y_f1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1y_s1.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/macho32/lzo1y_s1.o -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1c_s1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1c_s1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1f_f1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1f_f1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1x_f1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1x_f1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1x_s1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1x_s1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1y_f1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1y_f1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1y_s1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/omf32/lzo1y_s1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1c_s1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1c_s1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1f_f1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1f_f1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1x_f1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1x_f1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1x_s1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1x_s1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1y_f1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1y_f1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1y_s1.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/asm/i386/obj/win32/lzo1y_s1.obj -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/autoconf/shtool: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/lzo/autoconf/shtool -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/lzo2.pc.cmakein: -------------------------------------------------------------------------------- 1 | # 2 | # lzo2.pc -- LZO pkg-config configuration file 3 | # 4 | # This file is part of the LZO data compression library. 5 | # http://www.oberhumer.com/opensource/lzo/ 6 | # 7 | # Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer 8 | # All Rights Reserved. 9 | # 10 | 11 | prefix=@CMAKE_INSTALL_PREFIX@ 12 | exec_prefix=@CMAKE_INSTALL_FULL_BINDIR@ 13 | includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@ 14 | libdir=@CMAKE_INSTALL_FULL_LIBDIR@ 15 | 16 | Name: lzo2 17 | Version: @PROJECT_VERSION@ 18 | Description: LZO - a real-time data compression library 19 | URL: http://www.oberhumer.com/opensource/lzo/ 20 | Cflags: -I${includedir}/lzo 21 | Libs: -L${libdir} -llzo2 22 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/lzo2.pc.in: -------------------------------------------------------------------------------- 1 | # 2 | # lzo2.pc -- LZO pkg-config configuration file 3 | # 4 | # This file is part of the LZO data compression library. 5 | # http://www.oberhumer.com/opensource/lzo/ 6 | # 7 | # Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer 8 | # All Rights Reserved. 9 | # 10 | 11 | prefix=@prefix@ 12 | exec_prefix=@exec_prefix@ 13 | includedir=@includedir@ 14 | libdir=@libdir@ 15 | 16 | Name: lzo2 17 | Version: @PACKAGE_VERSION@ 18 | Description: LZO - a real-time data compression library 19 | URL: http://www.oberhumer.com/opensource/lzo/ 20 | Cflags: -I${includedir}/lzo 21 | Libs: -L${libdir} -llzo2 22 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/util/notime.pl: -------------------------------------------------------------------------------- 1 | #! /usr/bin/perl 2 | ## vim:set ts=4 sw=4 et: -*- coding: utf-8 -*- 3 | ## 4 | ##---------------------------------------------------------------------------## 5 | ## 6 | ## Author: 7 | ## Markus F.X.J. Oberhumer 8 | ## 9 | ## Description: 10 | ## Remove timing values from a table created by table.pl 11 | ## 12 | ## Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer 13 | ## 14 | ##---------------------------------------------------------------------------## 15 | 16 | 17 | while (<>) { 18 | if (substr($_,56) =~ /^\s+[\d\.]+\s+[\d\.]+\s+\|\s*\n$/) { 19 | substr($_,56) = " 0.000 0.000 |\n"; 20 | } 21 | print; 22 | } 23 | 24 | exit(0); 25 | 26 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/util/overlap.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | set -e 3 | 4 | # 5 | # usage: util/overlap.sh [directory] 6 | # 7 | # This script runs the overlap example program 8 | # on a complete directory tree. 9 | # 10 | # Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer 11 | # 12 | 13 | OVERLAP="./examples/overlap" 14 | for d in ./examples .; do 15 | for ext in "" .exe .out; do 16 | if test -f "$d/overlap$ext" && test -x "$d/overlap$ext"; then 17 | OVERLAP="$d/overlap$ext" 18 | break 2 19 | fi 20 | done 21 | done 22 | 23 | dir="${1-.}" 24 | 25 | TMPFILE="/tmp/lzo_$$.tmp" 26 | rm -f "$TMPFILE" 27 | (find "$dir/." -type f -print0 | LC_ALL=C sort -z > "$TMPFILE") || true 28 | 29 | cat "$TMPFILE" | xargs -0 -r "$OVERLAP" 30 | 31 | rm -f "$TMPFILE" 32 | echo "Done." 33 | exit 0 34 | 35 | # vim:set ts=4 sw=4 et: 36 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/util/shortf.pl: -------------------------------------------------------------------------------- 1 | #! /usr/bin/perl 2 | ## vim:set ts=4 sw=4 et: -*- coding: utf-8 -*- 3 | ## 4 | ##---------------------------------------------------------------------------## 5 | ## 6 | ## Author: 7 | ## Markus F.X.J. Oberhumer 8 | ## 9 | ## Description: 10 | ## Create short files for compression test 11 | ## 12 | ## Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer 13 | ## 14 | ##---------------------------------------------------------------------------## 15 | 16 | $c = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; 17 | $c = "\x00\x01\x02"; 18 | $c = "\x00"; 19 | 20 | $x = $c x 1024; 21 | 22 | for $i (0 .. 50) { 23 | $name = sprintf("f%04d.dat",$i); 24 | open(OUTFILE,">$name") || die "$0: cannot open '$name': $!"; 25 | binmode(OUTFILE); 26 | print OUTFILE substr($x,0,$i); 27 | close(OUTFILE); 28 | } 29 | 30 | exit(0); 31 | -------------------------------------------------------------------------------- /core/src/main/cpp/lzo/util/uncompr.pl: -------------------------------------------------------------------------------- 1 | #! /usr/bin/perl 2 | ## vim:set ts=4 sw=4 et: -*- coding: utf-8 -*- 3 | ## 4 | ##---------------------------------------------------------------------------## 5 | ## 6 | ## Author: 7 | ## Markus F.X.J. Oberhumer 8 | ## 9 | ## Description: 10 | ## Create incompressible files for compression test 11 | ## 12 | ## Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer 13 | ## 14 | ##---------------------------------------------------------------------------## 15 | 16 | $x = ' ' x 65536; 17 | $i = 0; 18 | while ($i < 65536) { 19 | substr($x,$i,1) = pack('C',rand(256)); 20 | $i++; 21 | } 22 | 23 | for $i (1,2,4,8,16,32,64) { 24 | $name = sprintf("u%04d.dat",$i); 25 | open(OUTFILE,">$name") || die "$0: cannot open '$name': $!"; 26 | binmode(OUTFILE); 27 | print OUTFILE substr($x,0,$i*1024); 28 | close(OUTFILE); 29 | } 30 | 31 | exit(0); 32 | -------------------------------------------------------------------------------- /core/src/main/cpp/minivpn/minivpn.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/cpp/minivpn/minivpn.c -------------------------------------------------------------------------------- /core/src/main/cpp/opvpnutil/jniglue.h: -------------------------------------------------------------------------------- 1 | // 2 | // jniglue.h 3 | // xcopenvpn 4 | // 5 | // Created by Arne Schwabe on 29.03.12. 6 | // Copyright (c) 2012 Universität Paderborn. All rights reserved. 7 | // 8 | 9 | #ifndef xcopenvpn_jniglue_h 10 | #define xcopenvpn_jniglue_h 11 | void android_openvpn_log(int level,const char* prefix,const char* prefix_sep,const char* m1); 12 | #endif 13 | 14 | #ifdef __cplusplus 15 | extern "C" { 16 | #endif 17 | int jniThrowException(JNIEnv* env, const char* className, const char* msg); 18 | 19 | #ifdef __cplusplus 20 | } 21 | #endif 22 | -------------------------------------------------------------------------------- /core/src/main/cpp/tools.cmake: -------------------------------------------------------------------------------- 1 | FUNCTION(PREPEND var prefix) 2 | SET(listVar "") 3 | FOREACH(f ${ARGN}) 4 | LIST(APPEND listVar "${prefix}/${f}") 5 | ENDFOREACH(f) 6 | SET(${var} "${listVar}" PARENT_SCOPE) 7 | ENDFUNCTION(PREPEND) 8 | -------------------------------------------------------------------------------- /core/src/main/java/com/wireguard/android/backend/ConnectionStatus.java: -------------------------------------------------------------------------------- 1 | package com.wireguard.android.backend; 2 | 3 | public enum ConnectionStatus { 4 | CONNECTING, 5 | CONNECTED, 6 | PAUSED, 7 | DISCONNECTING; 8 | } 9 | -------------------------------------------------------------------------------- /core/src/main/java/de/blinkt/openvpn/core/IOpenVpnService.java: -------------------------------------------------------------------------------- 1 | package de.blinkt.openvpn.core; 2 | 3 | import android.content.Context; 4 | import android.os.ParcelFileDescriptor; 5 | 6 | public interface IOpenVpnService { 7 | void processDied(); 8 | 9 | Context getContext(); 10 | 11 | boolean protectSocket(int socket); 12 | 13 | void addDNS(String dns); 14 | 15 | void setDomain(String domain); 16 | 17 | void addRoute(String dest, String mask, String gateway, String device); 18 | 19 | void addRoutev6(String network, String device); 20 | 21 | void setLocalIP(String local, String netmask, int mtu, String mode); 22 | 23 | void setLocalIPv6(String ipv6addr); 24 | 25 | String getTunReopenStatus(); 26 | 27 | ParcelFileDescriptor openTun(); 28 | } 29 | -------------------------------------------------------------------------------- /core/src/main/java/de/blinkt/openvpn/core/NativeUtils.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2012-2016 Arne Schwabe 3 | * Distributed under the GNU GPL v2 with additional terms. For full terms see the file doc/LICENSE.txt 4 | */ 5 | 6 | package de.blinkt.openvpn.core; 7 | 8 | public class NativeUtils { 9 | 10 | public static native String[] getIfconfig() throws IllegalArgumentException; 11 | 12 | static native void jniclose(int fdint); 13 | 14 | public static String getNativeAPI() { 15 | return getJNIAPI(); 16 | } 17 | 18 | private static native String getJNIAPI(); 19 | 20 | static { 21 | System.loadLibrary("opvpnutil"); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /core/src/main/java/net/ivpn/core/common/bindings/RefreshLayoutBindingAdapter.java: -------------------------------------------------------------------------------- 1 | package net.ivpn.core.common.bindings; 2 | 3 | import androidx.databinding.BindingAdapter; 4 | import androidx.swiperefreshlayout.widget.SwipeRefreshLayout; 5 | 6 | import net.ivpn.core.v2.viewmodel.ServerListViewModel; 7 | 8 | public class RefreshLayoutBindingAdapter { 9 | 10 | /** 11 | * Reloads the data when the pull-to-refresh is triggered. 12 | * 13 | * Creates the {@code android:onRefresh} for a {@link SwipeRefreshLayout}. 14 | */ 15 | @BindingAdapter("android:onRefresh") 16 | public static void setSwipeRefreshLayoutOnRefreshListener(SwipeRefreshLayout view, 17 | final ServerListViewModel viewModel) { 18 | view.setOnRefreshListener(() -> viewModel.loadServers(true)); 19 | } 20 | } -------------------------------------------------------------------------------- /core/src/main/java/net/ivpn/core/common/pinger/ResultPing.kt: -------------------------------------------------------------------------------- 1 | package net.ivpn.core.common.pinger 2 | 3 | sealed class ResultPing 4 | 5 | class Success constructor(val stats: PingStats): ResultPing() 6 | class Error constructor(val error: Throwable?): ResultPing() 7 | -------------------------------------------------------------------------------- /core/src/main/java/net/ivpn/core/ui/theme/Shape.kt: -------------------------------------------------------------------------------- 1 | package net.ivpn.core.ui.theme 2 | 3 | import androidx.compose.material.Shapes 4 | 5 | val shapes = Shapes() 6 | -------------------------------------------------------------------------------- /core/src/main/java/net/ivpn/core/ui/theme/Type.kt: -------------------------------------------------------------------------------- 1 | package net.ivpn.core.ui.theme 2 | 3 | import androidx.compose.material.Typography 4 | 5 | val typography = Typography() 6 | -------------------------------------------------------------------------------- /core/src/main/java/org/spongycastle/util/encoders/Encoder.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2012-2016 Arne Schwabe 3 | * Distributed under the GNU GPL v2 with additional terms. For full terms see the file doc/LICENSE.txt 4 | */ 5 | 6 | package org.spongycastle.util.encoders; 7 | 8 | import java.io.IOException; 9 | import java.io.OutputStream; 10 | 11 | /** 12 | * Encode and decode byte arrays (typically from binary to 7-bit ASCII 13 | * encodings). 14 | */ 15 | public interface Encoder 16 | { 17 | int encode(byte[] data, int off, int length, OutputStream out) throws IOException; 18 | 19 | int decode(byte[] data, int off, int length, OutputStream out) throws IOException; 20 | 21 | int decode(String data, OutputStream out) throws IOException; 22 | } 23 | -------------------------------------------------------------------------------- /core/src/main/java/org/spongycastle/util/io/pem/PemGenerationException.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2012-2016 Arne Schwabe 3 | * Distributed under the GNU GPL v2 with additional terms. For full terms see the file doc/LICENSE.txt 4 | */ 5 | 6 | package org.spongycastle.util.io.pem; 7 | 8 | import java.io.IOException; 9 | 10 | @SuppressWarnings("serial") 11 | public class PemGenerationException 12 | extends IOException 13 | { 14 | private Throwable cause; 15 | 16 | public PemGenerationException(String message, Throwable cause) 17 | { 18 | super(message); 19 | this.cause = cause; 20 | } 21 | 22 | public PemGenerationException(String message) 23 | { 24 | super(message); 25 | } 26 | 27 | public Throwable getCause() 28 | { 29 | return cause; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /core/src/main/java/org/spongycastle/util/io/pem/PemObjectGenerator.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2012-2016 Arne Schwabe 3 | * Distributed under the GNU GPL v2 with additional terms. For full terms see the file doc/LICENSE.txt 4 | */ 5 | 6 | package org.spongycastle.util.io.pem; 7 | 8 | public interface PemObjectGenerator 9 | { 10 | PemObject generate() 11 | throws PemGenerationException; 12 | } 13 | -------------------------------------------------------------------------------- /core/src/main/res/anim/slide_in_bottom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 11 | 12 | 16 | -------------------------------------------------------------------------------- /core/src/main/res/anim/slide_out_bottom.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 11 | 12 | 16 | -------------------------------------------------------------------------------- /core/src/main/res/drawable-hdpi-v11/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-hdpi-v11/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-hdpi-v9/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-hdpi-v9/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-hdpi/connection_round_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-hdpi/connection_round_btn.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-hdpi/ic_shortcut_vpn_key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-hdpi/ic_shortcut_vpn_key.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-hdpi/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-hdpi/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-hdpi/illustration_clientarea.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-hdpi/illustration_clientarea.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-hdpi/pause_round_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-hdpi/pause_round_btn.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-hdpi/tutorial_page_access.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-hdpi/tutorial_page_access.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-hdpi/tutorial_page_locations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-hdpi/tutorial_page_locations.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-hdpi/tutorial_page_security.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-hdpi/tutorial_page_security.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-mdpi-v11/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-mdpi-v11/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-mdpi-v9/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-mdpi-v9/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-mdpi/connection_round_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-mdpi/connection_round_btn.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-mdpi/ic_shortcut_vpn_key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-mdpi/ic_shortcut_vpn_key.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-mdpi/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-mdpi/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-mdpi/illustration_clientarea.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-mdpi/illustration_clientarea.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-mdpi/pause_round_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-mdpi/pause_round_btn.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-mdpi/tutorial_page_access.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-mdpi/tutorial_page_access.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-mdpi/tutorial_page_locations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-mdpi/tutorial_page_locations.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-mdpi/tutorial_page_security.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-mdpi/tutorial_page_security.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-night/fav_server.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-night/fav_server.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-night/saved_networks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-night/saved_networks.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xhdpi-v11/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xhdpi-v11/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xhdpi-v9/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xhdpi-v9/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xhdpi/connection_round_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xhdpi/connection_round_btn.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xhdpi/ic_shortcut_vpn_key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xhdpi/ic_shortcut_vpn_key.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xhdpi/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xhdpi/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xhdpi/illustration_clientarea.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xhdpi/illustration_clientarea.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xhdpi/pause_round_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xhdpi/pause_round_btn.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xhdpi/tutorial_page_access.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xhdpi/tutorial_page_access.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xhdpi/tutorial_page_locations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xhdpi/tutorial_page_locations.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xhdpi/tutorial_page_security.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xhdpi/tutorial_page_security.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxhdpi-v11/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxhdpi-v11/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxhdpi-v9/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxhdpi-v9/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxhdpi/connection_round_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxhdpi/connection_round_btn.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxhdpi/ic_shortcut_vpn_key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxhdpi/ic_shortcut_vpn_key.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxhdpi/ic_stat_name.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxhdpi/ic_stat_name.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxhdpi/illustration_clientarea.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxhdpi/illustration_clientarea.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxhdpi/pause_round_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxhdpi/pause_round_btn.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxhdpi/tutorial_page_access.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxhdpi/tutorial_page_access.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxhdpi/tutorial_page_locations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxhdpi/tutorial_page_locations.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxhdpi/tutorial_page_security.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxhdpi/tutorial_page_security.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxxhdpi/connection_round_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxxhdpi/connection_round_btn.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxxhdpi/ic_shortcut_vpn_key.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxxhdpi/ic_shortcut_vpn_key.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxxhdpi/illustration_clientarea.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxxhdpi/illustration_clientarea.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxxhdpi/pause_round_btn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxxhdpi/pause_round_btn.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxxhdpi/tutorial_page_access.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxxhdpi/tutorial_page_access.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxxhdpi/tutorial_page_locations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxxhdpi/tutorial_page_locations.png -------------------------------------------------------------------------------- /core/src/main/res/drawable-xxxhdpi/tutorial_page_security.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable-xxxhdpi/tutorial_page_security.png -------------------------------------------------------------------------------- /core/src/main/res/drawable/active_text_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/alerts_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/default_dot.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/dialog_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/dialogue_server_list_location_tab_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/discount_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/drag_view_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/fastest_badge_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/fav_server.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable/fav_server.png -------------------------------------------------------------------------------- /core/src/main/res/drawable/fill_transparent.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_account.xml: -------------------------------------------------------------------------------- 1 | 6 | 13 | 20 | 21 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_add.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_arrow_back.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_arrow_left.xml: -------------------------------------------------------------------------------- 1 | 7 | 10 | 11 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_arrow_right.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_arrow_top.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_cancel.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_check.xml: -------------------------------------------------------------------------------- 1 | 7 | 10 | 11 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_check_full_circle.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_check_in_circle.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_close.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_content_copy.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_done.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_exit.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_file_download.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_logo_sq.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_logout.xml: -------------------------------------------------------------------------------- 1 | 8 | 11 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_map_pin.xml: -------------------------------------------------------------------------------- 1 | 6 | 13 | 20 | 21 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_multiply.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_network_cell.xml: -------------------------------------------------------------------------------- 1 | 6 | 10 | 13 | 14 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_notifications_disconnect.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_pause.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_play.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_refresh.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_remove.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_1_col_1.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_5_col_1.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_5_col_4.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_5_col_6.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_6_col_1.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_6_col_2.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_6_col_4.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_6_col_5.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_6_col_6.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 10 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_7_col_1.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_7_col_2.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_7_col_3.xml: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_7_col_4.xml: -------------------------------------------------------------------------------- 1 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_7_col_5.xml: -------------------------------------------------------------------------------- 1 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_7_col_6.xml: -------------------------------------------------------------------------------- 1 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_7_col_7.xml: -------------------------------------------------------------------------------- 1 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_row_7_col_8.xml: -------------------------------------------------------------------------------- 1 | 6 | 8 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_shuffle.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_sort.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_star_off.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_star_on.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_stop.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/illustration_prompt_kill_switch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable/illustration_prompt_kill_switch.png -------------------------------------------------------------------------------- /core/src/main/res/drawable/inactive_text_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/input_field_error_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/input_field_focused_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ipv6_text_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/login_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable/login_image.png -------------------------------------------------------------------------------- /core/src/main/res/drawable/none_state_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ping_green_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 8 | 9 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ping_red_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 8 | 9 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/ping_yellow_light.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 8 | 9 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/plan_details_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/popup_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | 13 | 14 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/radio_group_divider.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/saved_networks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable/saved_networks.png -------------------------------------------------------------------------------- /core/src/main/res/drawable/selected_dot.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/shield.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/drawable/shield.png -------------------------------------------------------------------------------- /core/src/main/res/drawable/thumb_antitracker_disabled.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/thumb_antitracker_hardcore.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/thumb_antitracker_normal.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/thumb_connected.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/thumb_connecting.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/thumb_disconnected.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/thumb_disconnecting.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/thumb_paused.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/track_antitracker_disabled.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/track_antitracker_hardcore.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/track_antitracker_normal.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/track_connected.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/track_connecting.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/track_disconnected.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/track_disconnecting.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/track_paused.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/trusted_state_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/tutorial_circle_active.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 8 | 9 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/tutorial_circle_passive.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 8 | 9 | 12 | -------------------------------------------------------------------------------- /core/src/main/res/drawable/untrusted_state_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | -------------------------------------------------------------------------------- /core/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 16 | 17 | -------------------------------------------------------------------------------- /core/src/main/res/layout/content_privacy_policy.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 15 | 16 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /core/src/main/res/layout/content_terms_of_service.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 15 | 16 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /core/src/main/res/layout/description_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 18 | 19 | 23 | 24 | -------------------------------------------------------------------------------- /core/src/main/res/layout/fragment_qr_reader.xml: -------------------------------------------------------------------------------- 1 | 4 | 5 | 8 | 9 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /core/src/main/res/layout/port_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /core/src/main/res/layout/port_item_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 14 | 15 | 24 | 25 | -------------------------------------------------------------------------------- /core/src/main/res/layout/view_fastest_setting_description_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 18 | 19 | 23 | 24 | -------------------------------------------------------------------------------- /core/src/main/res/layout/view_network_behaviour.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | 19 | 20 | -------------------------------------------------------------------------------- /core/src/main/res/menu/menu_servers.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 10 | -------------------------------------------------------------------------------- /core/src/main/res/menu/menu_split_tunneling.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 9 | 14 | -------------------------------------------------------------------------------- /core/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /core/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /core/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /core/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /core/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /core/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /core/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /core/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /core/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /core/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /core/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /core/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/core/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /core/src/main/res/values-night/path.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | tiles-dark 4 | -------------------------------------------------------------------------------- /core/src/main/res/values-sw320dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /core/src/main/res/values-sw360dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /core/src/main/res/values-xxhdpi/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16sp 4 | 26sp 5 | 6 | 27dp 7 | 15dp 8 | 19dp 9 | 20dp 10 | 0dp 11 | -------------------------------------------------------------------------------- /core/src/main/res/values/attrs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /core/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #29292E 4 | -------------------------------------------------------------------------------- /core/src/main/res/values/path.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | tiles 4 | -------------------------------------------------------------------------------- /core/src/main/res/values/plurals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | One month left 5 | %d months left 6 | 7 | 8 | One day left 9 | %d days left 10 | 11 | 12 | One hour left 13 | %d hours left 14 | 15 | 16 | One minute left 17 | %d minutes left 18 | 19 | -------------------------------------------------------------------------------- /core/src/main/res/xml/logpath.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 11 | 14 | 17 | 20 | 23 | -------------------------------------------------------------------------------- /core/tools/libwg-go/.gitignore: -------------------------------------------------------------------------------- 1 | build/ -------------------------------------------------------------------------------- /core/tools/libwg-go/go.mod: -------------------------------------------------------------------------------- 1 | module golang.zx2c4.com/wireguard/android 2 | 3 | go 1.22 4 | 5 | require ( 6 | golang.org/x/sys v0.30.0 7 | golang.zx2c4.com/wireguard v0.0.0-20230223181233-21636207a675 8 | ) 9 | 10 | require ( 11 | golang.org/x/crypto v0.35.0 // indirect 12 | golang.org/x/net v0.36.0 // indirect 13 | golang.zx2c4.com/wintun v0.0.0-20230126152724-0fa3db229ce2 // indirect 14 | ) 15 | -------------------------------------------------------------------------------- /core/tools/libwg-go/go.sum: -------------------------------------------------------------------------------- 1 | golang.org/x/crypto v0.35.0 h1:b15kiHdrGCHrP6LvwaQ3c03kgNhhiMgvlhxHQhmg2Xs= 2 | golang.org/x/crypto v0.35.0/go.mod h1:dy7dXNW32cAb/6/PRuTNsix8T+vJAqvuIy5Bli/x0YQ= 3 | golang.org/x/net v0.36.0 h1:vWF2fRbw4qslQsQzgFqZff+BItCvGFQqKzKIzx1rmoA= 4 | golang.org/x/net v0.36.0/go.mod h1:bFmbeoIPfrw4sMHNhb4J9f6+tPziuGjq7Jk/38fxi1I= 5 | golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc= 6 | golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= 7 | golang.zx2c4.com/wintun v0.0.0-20230126152724-0fa3db229ce2 h1:B82qJJgjvYKsXS9jeunTOisW56dUokqW/FOteYJJ/yg= 8 | golang.zx2c4.com/wintun v0.0.0-20230126152724-0fa3db229ce2/go.mod h1:deeaetjYA+DHMHg+sMSMI58GrEteJUUzzw7en6TJQcI= 9 | golang.zx2c4.com/wireguard v0.0.0-20230223181233-21636207a675 h1:/J/RVnr7ng4fWPRH3xa4WtBJ1Jp+Auu4YNLmGiPv5QU= 10 | golang.zx2c4.com/wireguard v0.0.0-20230223181233-21636207a675/go.mod h1:whfbyDBt09xhCYQWtO2+3UVjlaq6/9hDZrjg2ZE6SyA= 11 | -------------------------------------------------------------------------------- /core/tools/ndk-compat/compat.c: -------------------------------------------------------------------------------- 1 | /* SPDX-License-Identifier: BSD 2 | * 3 | * Copyright © 2017-2023 WireGuard LLC. All Rights Reserved. 4 | * 5 | */ 6 | 7 | #define FILE_IS_EMPTY 8 | 9 | #if defined(__ANDROID_MIN_SDK_VERSION__) && __ANDROID_MIN_SDK_VERSION__ < 24 10 | #undef FILE_IS_EMPTY 11 | #include 12 | 13 | char *strchrnul(const char *s, int c) 14 | { 15 | char *x = strchr(s, c); 16 | if (!x) 17 | return (char *)s + strlen(s); 18 | return x; 19 | } 20 | #endif 21 | 22 | #ifdef FILE_IS_EMPTY 23 | #undef FILE_IS_EMPTY 24 | static char ____x __attribute__((unused)); 25 | #endif 26 | -------------------------------------------------------------------------------- /core/tools/ndk-compat/compat.h: -------------------------------------------------------------------------------- 1 | /* SPDX-License-Identifier: BSD 2 | * 3 | * Copyright © 2017-2023 WireGuard LLC. All Rights Reserved. 4 | * 5 | */ 6 | 7 | #if defined(__ANDROID_MIN_SDK_VERSION__) && __ANDROID_MIN_SDK_VERSION__ < 24 8 | char *strchrnul(const char *s, int c); 9 | #endif 10 | 11 | -------------------------------------------------------------------------------- /fakekeystore.properties: -------------------------------------------------------------------------------- 1 | release.store.file='' 2 | release.key.alias='' 3 | release.key.password='' 4 | release.store.password='' 5 | 6 | staging.url="" 7 | 8 | billing.public.key="" -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fastlane/metadata/android/en-US/images/icon.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/images/phoneScreenshots/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/short_description.txt: -------------------------------------------------------------------------------- 1 | Privacy focused VPN service with WireGuard -------------------------------------------------------------------------------- /fastlane/metadata/android/en-US/title.txt: -------------------------------------------------------------------------------- 1 | IVPN - Secure VPN for Privacy -------------------------------------------------------------------------------- /fdroid/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /fdroid/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile -------------------------------------------------------------------------------- /fdroid/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | 9 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fdroid/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fdroid/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fdroid/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fdroid/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fdroid/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fdroid/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fdroid/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fdroid/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fdroid/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /fdroid/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/fdroid/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | # Project-wide Gradle settings. 2 | 3 | # IDE (e.g. Android Studio) users: 4 | # Gradle settings configured through the IDE *will override* 5 | # any settings specified in this file. 6 | 7 | # For more details on how to configure your build environment visit 8 | # http://www.gradle.org/docs/current/userguide/build_environment.html 9 | 10 | # Specifies the JVM arguments used for the daemon process. 11 | # The setting is particularly useful for tweaking memory settings. 12 | android.enableJetifier=true 13 | android.useAndroidX=true 14 | android.bundle.enableUncompressedNativeLibs = false 15 | org.gradle.jvmargs=-Xmx2048M 16 | android.defaults.buildfeatures.buildconfig=true 17 | 18 | # When configured, Gradle will run in incubating parallel mode. 19 | # This option should only be used with decoupled projects. More details, visit 20 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 21 | # org.gradle.parallel=true 22 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Thu Sep 28 18:15:45 CEST 2023 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip 5 | zipStoreBase=GRADLE_USER_HOME 6 | zipStorePath=wrapper/dists 7 | -------------------------------------------------------------------------------- /liboqs-android/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | /outputs -------------------------------------------------------------------------------- /liboqs-android/consumer-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/liboqs-android/consumer-rules.pro -------------------------------------------------------------------------------- /liboqs-android/jni/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | 3 | # Analogous to https://github.com/android/ndk-samples/blob/master/other-builds/ndkbuild/hello-libs/app/Android.mk 4 | 5 | # Prebuild dirs. 6 | include $(CLEAR_VARS) 7 | LOCAL_MODULE := oqs 8 | LOCAL_SRC_FILES := jniLibs/$(TARGET_ARCH_ABI)/liboqs.so 9 | LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include 10 | include $(PREBUILT_SHARED_LIBRARY) 11 | 12 | # Create jni wrapper. 13 | include $(CLEAR_VARS) 14 | LOCAL_MODULE := oqs-jni 15 | LOCAL_C_INCLUDES := $(LOCAL_PATH)/include 16 | LOCAL_CFLAGS += -Wall 17 | LOCAL_SRC_FILES := $(LOCAL_PATH)/jni/handle.c $(LOCAL_PATH)/jni/KEMs.c $(LOCAL_PATH)/jni/KeyEncapsulation.c $(LOCAL_PATH)/jni/Rand.c $(LOCAL_PATH)/jni/Signature.c $(LOCAL_PATH)/jni/Sigs.c 18 | LOCAL_LDLIBS := -llog -landroid 19 | LOCAL_SHARED_LIBRARIES := oqs 20 | include $(BUILD_SHARED_LIBRARY) 21 | -------------------------------------------------------------------------------- /liboqs-android/jni/include/oqs/oqs.h: -------------------------------------------------------------------------------- 1 | /** 2 | * \file oqs.h 3 | * \brief Overall header file for liboqs. 4 | * 5 | * C programs using liboqs can include just this one file, and it will include all 6 | * other necessary headers from liboqs. 7 | * 8 | * SPDX-License-Identifier: MIT 9 | */ 10 | 11 | #ifndef OQS_H 12 | #define OQS_H 13 | 14 | #include 15 | 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | 24 | #endif // OQS_H 25 | -------------------------------------------------------------------------------- /liboqs-android/jni/jni/KEMs.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | /* Header for class org_openquantumsafe_KEMs */ 4 | 5 | #ifndef _KEMS_H_INCLUDED_ 6 | #define _KEMS_H_INCLUDED_ 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif 10 | /* 11 | * Class: org_openquantumsafe_KEMs 12 | * Method: max_number_KEMs 13 | * Signature: ()I 14 | */ 15 | JNIEXPORT jint JNICALL Java_net_ivpn_liboqs_KEMs_max_1number_1KEMs 16 | (JNIEnv *, jclass); 17 | 18 | /* 19 | * Class: org_openquantumsafe_KEMs 20 | * Method: is_KEM_enabled 21 | * Signature: (Ljava/lang/String;)Z 22 | */ 23 | JNIEXPORT jboolean JNICALL Java_net_ivpn_liboqs_KEMs_is_1KEM_1enabled 24 | (JNIEnv *, jclass, jstring); 25 | 26 | /* 27 | * Class: org_openquantumsafe_KEMs 28 | * Method: get_KEM_name 29 | * Signature: (J)Ljava/lang/String; 30 | */ 31 | JNIEXPORT jstring JNICALL Java_net_ivpn_liboqs_KEMs_get_1KEM_1name 32 | (JNIEnv *, jclass, jlong); 33 | 34 | #ifdef __cplusplus 35 | } 36 | #endif 37 | #endif 38 | -------------------------------------------------------------------------------- /liboqs-android/jni/jni/Rand.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | /* Header for class org_openquantumsafe_Rand */ 4 | 5 | #ifndef _RAND_H_INCLUDED_ 6 | #define _RAND_H_INCLUDED_ 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif 10 | /* 11 | * Class: org_openquantumsafe_Rand 12 | * Method: randombytes 13 | * Signature: (J)[B 14 | */ 15 | JNIEXPORT jbyteArray JNICALL Java_net_ivpn_liboqs_Rand_randombytes 16 | (JNIEnv *, jclass, jlong); 17 | 18 | /* 19 | * Class: org_openquantumsafe_Rand 20 | * Method: randombytes_switch_algorithm_native 21 | * Signature: (Ljava/lang/String;)I 22 | */ 23 | JNIEXPORT jint JNICALL Java_net_ivpn_liboqs_Rand_randombytes_1switch_1algorithm_1native 24 | (JNIEnv *, jclass, jstring); 25 | 26 | #ifdef __cplusplus 27 | } 28 | #endif 29 | #endif 30 | -------------------------------------------------------------------------------- /liboqs-android/jni/jni/Sigs.h: -------------------------------------------------------------------------------- 1 | /* DO NOT EDIT THIS FILE - it is machine generated */ 2 | #include 3 | /* Header for class org_openquantumsafe_Sigs */ 4 | 5 | #ifndef _SIGS_H_INCLUDED_ 6 | #define _SIGS_H_INCLUDED_ 7 | #ifdef __cplusplus 8 | extern "C" { 9 | #endif 10 | /* 11 | * Class: org_openquantumsafe_Sigs 12 | * Method: max_number_sigs 13 | * Signature: ()I 14 | */ 15 | JNIEXPORT jint JNICALL Java_net_ivpn_liboqs_Sigs_max_1number_1sigs 16 | (JNIEnv *, jclass); 17 | 18 | /* 19 | * Class: org_openquantumsafe_Sigs 20 | * Method: is_sig_enabled 21 | * Signature: (Ljava/lang/String;)Z 22 | */ 23 | JNIEXPORT jboolean JNICALL Java_net_ivpn_liboqs_Sigs_is_1sig_1enabled 24 | (JNIEnv *, jclass, jstring); 25 | 26 | /* 27 | * Class: org_openquantumsafe_Sigs 28 | * Method: get_sig_name 29 | * Signature: (J)Ljava/lang/String; 30 | */ 31 | JNIEXPORT jstring JNICALL Java_net_ivpn_liboqs_Sigs_get_1sig_1name 32 | (JNIEnv *, jclass, jlong); 33 | 34 | #ifdef __cplusplus 35 | } 36 | #endif 37 | #endif 38 | -------------------------------------------------------------------------------- /liboqs-android/jni/jni/handle.c: -------------------------------------------------------------------------------- 1 | #include "handle.h" 2 | 3 | jfieldID getHandleField(JNIEnv *env, jobject obj, char *handle_field) { 4 | jclass c = (*env)->GetObjectClass(env, obj); 5 | return (*env)->GetFieldID(env, c, handle_field, "J"); 6 | } 7 | 8 | void *getHandle(JNIEnv *env, jobject obj, char *handle_field) { 9 | jlong handle = (*env)->GetLongField(env, obj, getHandleField(env, obj, handle_field)); 10 | return (void *)(handle); 11 | } 12 | 13 | void setHandle(JNIEnv *env, jobject obj, void *t, char *handle_field) { 14 | jlong handle = (jlong) (t); 15 | (*env)->SetLongField(env, obj, getHandleField(env, obj, handle_field), handle); 16 | } 17 | -------------------------------------------------------------------------------- /liboqs-android/jni/jni/handle.h: -------------------------------------------------------------------------------- 1 | #ifndef _HANDLE_H_INCLUDED_ 2 | #define _HANDLE_H_INCLUDED_ 3 | 4 | #include 5 | #include 6 | 7 | jfieldID getHandleField(JNIEnv *, jobject, char *); 8 | 9 | void *getHandle(JNIEnv *, jobject, char *); 10 | 11 | void setHandle(JNIEnv *, jobject, void *, char *); 12 | 13 | #endif 14 | -------------------------------------------------------------------------------- /liboqs-android/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile -------------------------------------------------------------------------------- /liboqs-android/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | -------------------------------------------------------------------------------- /liboqs-android/src/main/java/net/ivpn/liboqs/MechanismNotEnabledError.java: -------------------------------------------------------------------------------- 1 | package net.ivpn.liboqs; 2 | 3 | /** 4 | * \brief Cryptographic scheme not enabled 5 | */ 6 | public class MechanismNotEnabledError extends RuntimeException { 7 | 8 | public MechanismNotEnabledError(String alg_name) { 9 | super("\"" + alg_name + "\" is not enabled by OQS"); 10 | } 11 | 12 | public MechanismNotEnabledError(String alg_name, Throwable throwable) { 13 | super("\"" + alg_name + "\" is not enabled by OQS", throwable); 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /liboqs-android/src/main/java/net/ivpn/liboqs/MechanismNotSupportedError.java: -------------------------------------------------------------------------------- 1 | package net.ivpn.liboqs; 2 | 3 | /** 4 | * \brief Cryptographic scheme not supported 5 | */ 6 | public class MechanismNotSupportedError extends RuntimeException { 7 | 8 | public MechanismNotSupportedError(String alg_name) { 9 | super("\"" + alg_name + "\" is not supported by OQS"); 10 | } 11 | 12 | public MechanismNotSupportedError(String alg_name, Throwable throwable) { 13 | super("\"" + alg_name + "\" is not supported by OQS", throwable); 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /liboqs-android/src/main/java/net/ivpn/liboqs/Pair.java: -------------------------------------------------------------------------------- 1 | package net.ivpn.liboqs; 2 | 3 | // https://stackoverflow.com/questions/521171/a-java-collection-of-value-pairs-tuples 4 | public class Pair { 5 | private final L left; 6 | private final R right; 7 | 8 | public Pair(L left, R right) { 9 | assert left != null; 10 | assert right != null; 11 | 12 | this.left = left; 13 | this.right = right; 14 | } 15 | 16 | public L getLeft() { return left; } 17 | public R getRight() { return right; } 18 | 19 | @Override 20 | public int hashCode() { return left.hashCode() ^ right.hashCode(); } 21 | 22 | @Override 23 | public boolean equals(Object o) { 24 | if (!(o instanceof Pair)) return false; 25 | Pair pairo = (Pair) o; 26 | return this.left.equals(pairo.getLeft()) && this.right.equals(pairo.getRight()); 27 | } 28 | 29 | } -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':core' 2 | include ':store' 3 | include ':site' 4 | include ':fdroid' 5 | include ':liboqs-android' 6 | -------------------------------------------------------------------------------- /site/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /site/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile -------------------------------------------------------------------------------- /site/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /site/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /site/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/site/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /site/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/site/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /site/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/site/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /site/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/site/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /site/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/site/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /site/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/site/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /site/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/site/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /site/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/site/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /site/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/site/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /site/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/site/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /site/src/main/res/navigation/site_nav_graph.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 11 | 12 | -------------------------------------------------------------------------------- /site/src/main/res/values-night/themes.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /site/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /site/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /site/src/main/res/values/themes.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /store/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | ../site/keystore.properties -------------------------------------------------------------------------------- /store/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile -------------------------------------------------------------------------------- /store/release/output-metadata.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": 2, 3 | "artifactType": { 4 | "type": "APK", 5 | "kind": "Directory" 6 | }, 7 | "applicationId": "net.ivpn.client", 8 | "variantName": "processReleaseResources", 9 | "elements": [ 10 | { 11 | "type": "SINGLE", 12 | "filters": [], 13 | "versionCode": 100, 14 | "versionName": "2.6.0", 15 | "outputFile": "store-release.apk" 16 | } 17 | ] 18 | } -------------------------------------------------------------------------------- /store/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /store/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /store/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/store/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /store/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/store/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /store/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/store/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /store/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/store/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /store/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/store/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /store/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/store/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /store/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/store/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /store/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/store/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /store/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/store/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /store/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ivpn/android-app/cdf582069c58b5176b2ab56da127dfbf417ad00b/store/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png --------------------------------------------------------------------------------