Skip to content
Snippets Groups Projects
Unverified Commit 339a30fd authored by Kali Kaneko's avatar Kali Kaneko
Browse files

[feat] reset error

parent 30587fb2
No related branches found
No related tags found
No related merge requests found
[default]
provider = riseup
provider = demolib
[riseup]
......
......@@ -23,8 +23,8 @@ func GetAppName() *C.char {
}
//export Login
func Login(username, password *C.char) {
backend.Login(C.GoString(username), C.GoString(password))
func Login(username, password string) {
backend.Login(username, password)
}
//export SwitchOn
......@@ -76,6 +76,11 @@ func RefreshContext() *C.char {
return (*C.char)(backend.RefreshContext())
}
//export ResetError
func ResetError(errname string) {
backend.ResetError(errname)
}
//export InstallHelpers
func InstallHelpers() {
backend.InstallHelpers()
......
......@@ -6,6 +6,13 @@
#include "handlers.h"
#include "lib/libgoshim.h"
GoString toGoStr(QString s)
{
char *c = s.toLocal8Bit().data();
return (GoString){c, (long int)strlen(c)};
}
Backend::Backend(QObject *parent) : QObject(parent)
{
}
......@@ -37,14 +44,12 @@ void Backend::donateAccepted()
void Backend::login(QString username, QString password)
{
// TODO: there has to be a cleaner way to do the conversion
char * u = new char [username.length()+1];
char * p = new char [password.length()+1];
strcpy(u, username.toStdString().c_str());
strcpy(p, password.toStdString().c_str());
Login(u, p);
delete [] u;
delete [] p;
Login(toGoStr(username), toGoStr(password));
}
void Backend::resetError(QString errlabel)
{
ResetError(toGoStr(errlabel));
}
void Backend::quit()
......
......@@ -4,6 +4,9 @@
#include <QDebug>
#include <QObject>
#include "qjsonmodel.h"
#include "lib/libgoshim.h"
GoString toGoStr(QString s);
class QJsonWatch : public QObject {
......@@ -36,6 +39,7 @@ public slots:
void switchOff();
void donateAccepted();
void login(QString username, QString password);
void resetError(QString errlabel);
void quit();
};
......
......@@ -144,9 +144,7 @@ int main(int argc, char **argv) {
/* if requested, enable web api for controlling the VPN */
if (webAPI) {
char* wp = webPort.toLocal8Bit().data();
GoString p = {wp, (long int)strlen(wp)};
EnableWebAPI(p);
EnableWebAPI(toGoStr(webPort));
};
/* kick off your shoes, put your feet up */
......
......@@ -12,9 +12,8 @@ Dialog {
}
}
// TODO implement cleanNotifications on backend
function _loginOk() {
loginDone = true;
backend.resetError("bad_auth")
}
visible: false
......
......@@ -85,6 +85,11 @@ func RefreshContext() *C.char {
return C.CString(string(c))
}
func ResetError(errname string) {
log.Println("DEBUG: resetting error", errname)
resetErrors(errname)
}
func InstallHelpers() {
pickle.InstallHelpers()
}
......@@ -105,7 +110,7 @@ func EnableWebAPI(port string) {
/* these two are a bit redundant since we already add them to ctx. however, we
want to have them available before everything else, to be able to parse cli
arguments. In the long run, we probably want to move all vendoring to qt, so
this probably should not live in the backend. */
this probably should not live in the backend, see #326*/
func GetVersion() *C.char {
return C.CString(version.VERSION)
......
......@@ -34,11 +34,19 @@ func initializeContext(opts *InitOpts) {
func checkErrors(errCh chan string) {
for {
err := <-errCh
// TODO consider a queue instead
ctx.Errors = err
go trigger(OnStatusChanged)
}
}
func resetErrors(errname string) {
if ctx.Errors == errname {
ctx.Errors = ""
log.Println("DEBUG: reset error", errname)
}
}
func initializeBitmask(errCh chan string, opts *InitOpts) {
if ctx == nil {
log.Println("bug: cannot initialize bitmask, ctx is nil!")
......
// Code generated by go generate; DO NOT EDIT.
// This file was generated by vendorize.py
// At 2020-08-19 17:38:43
// At 2020-08-20 13:39:50
package config
/* All these constants are defined in the vendor.conf file
*/
const (
Provider = "riseup.net"
ApplicationName = "RiseupVPN"
BinaryName = "riseup-vpn"
Auth = "anon"
DonateURL = "https://riseup.net/vpn/donate"
AskForDonations = "true"
HelpURL = "https://riseup.net/support"
TosURL = "https://riseup.net/tos"
APIURL = "https://api.black.riseup.net/"
GeolocationAPI = "https://api.black.riseup.net:9001/json"
Provider = "vpnlib.bitmask.net"
ApplicationName = "DemoLib"
BinaryName = "demo-lib"
Auth = "sip"
DonateURL = ""
AskForDonations = "false"
HelpURL = "https://libraryvpn.org/"
TosURL = "https://libraryvpn.org/"
APIURL = "https://api.vpnlib.bitmask.net:4430/"
GeolocationAPI = "https://getmyip.vpnlib.bitmask.net/json"
)
var Version string
......@@ -29,34 +29,11 @@ CaCert : a string containing a representation of the provider CA, used to
*/
var CaCert = []byte(`-----BEGIN CERTIFICATE-----
MIIFjTCCA3WgAwIBAgIBATANBgkqhkiG9w0BAQ0FADBZMRgwFgYDVQQKDA9SaXNl
dXAgTmV0d29ya3MxGzAZBgNVBAsMEmh0dHBzOi8vcmlzZXVwLm5ldDEgMB4GA1UE
AwwXUmlzZXVwIE5ldHdvcmtzIFJvb3QgQ0EwHhcNMTQwNDI4MDAwMDAwWhcNMjQw
NDI4MDAwMDAwWjBZMRgwFgYDVQQKDA9SaXNldXAgTmV0d29ya3MxGzAZBgNVBAsM
Emh0dHBzOi8vcmlzZXVwLm5ldDEgMB4GA1UEAwwXUmlzZXVwIE5ldHdvcmtzIFJv
b3QgQ0EwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC76J4ciMJ8Sg0m
TP7DF2DT9zNe0Csk4myoMFC57rfJeqsAlJCv1XMzBmXrw8wq/9z7XHv6n/0sWU7a
7cF2hLR33ktjwODlx7vorU39/lXLndo492ZBhXQtG1INMShyv+nlmzO6GT7ESfNE
LliFitEzwIegpMqxCIHXFuobGSCWF4N0qLHkq/SYUMoOJ96O3hmPSl1kFDRMtWXY
iw1SEKjUvpyDJpVs3NGxeLCaA7bAWhDY5s5Yb2fA1o8ICAqhowurowJpW7n5ZuLK
5VNTlNy6nZpkjt1QycYvNycffyPOFm/Q/RKDlvnorJIrihPkyniV3YY5cGgP+Qkx
HUOT0uLA6LHtzfiyaOqkXwc4b0ZcQD5Vbf6Prd20Ppt6ei0zazkUPwxld3hgyw58
m/4UIjG3PInWTNf293GngK2Bnz8Qx9e/6TueMSAn/3JBLem56E0WtmbLVjvko+LF
PM5xA+m0BmuSJtrD1MUCXMhqYTtiOvgLBlUm5zkNxALzG+cXB28k6XikXt6MRG7q
hzIPG38zwkooM55yy5i1YfcIi5NjMH6A+t4IJxxwb67MSb6UFOwg5kFokdONZcwj
shczHdG9gLKSBIvrKa03Nd3W2dF9hMbRu//STcQxOailDBQCnXXfAATj9pYzdY4k
ha8VCAREGAKTDAex9oXf1yRuktES4QIDAQABo2AwXjAdBgNVHQ4EFgQUC4tdmLVu
f9hwfK4AGliaet5KkcgwDgYDVR0PAQH/BAQDAgIEMAwGA1UdEwQFMAMBAf8wHwYD
VR0jBBgwFoAUC4tdmLVuf9hwfK4AGliaet5KkcgwDQYJKoZIhvcNAQENBQADggIB
AGzL+GRnYu99zFoy0bXJKOGCF5XUXP/3gIXPRDqQf5g7Cu/jYMID9dB3No4Zmf7v
qHjiSXiS8jx1j/6/Luk6PpFbT7QYm4QLs1f4BlfZOti2KE8r7KRDPIecUsUXW6P/
3GJAVYH/+7OjA39za9AieM7+H5BELGccGrM5wfl7JeEz8in+V2ZWDzHQO4hMkiTQ
4ZckuaL201F68YpiItBNnJ9N5nHr1MRiGyApHmLXY/wvlrOpclh95qn+lG6/2jk7
3AmihLOKYMlPwPakJg4PYczm3icFLgTpjV5sq2md9bRyAg3oPGfAuWHmKj2Ikqch
Td5CHKGxEEWbGUWEMP0s1A/JHWiCbDigc4Cfxhy56CWG4q0tYtnc2GMw8OAUO6Wf
Xu5pYKNkzKSEtT/MrNJt44tTZWbKV/Pi/N2Fx36my7TgTUj7g3xcE9eF4JV2H/sg
tsK3pwE0FEqGnT4qMFbixQmc8bGyuakr23wjMvfO7eZUxBuWYR2SkcP26sozF9PF
tGhbZHQVGZUTVPyvwahMUEhbPGVerOW0IYpxkm0x/eaWdTc4vPpf/rIlgbAjarnJ
UN9SaWRlWKSdP4haujnzCoJbM7dU9bjvlGZNyXEekgeT0W2qFeGGp+yyUWw8tNsp
0BuC1b7uW/bBn/xKm319wXVDvBgZgcktMolak39V7DVO
MIIBQzCB6aADAgECAgEBMAoGCCqGSM49BAMCMBcxFTATBgNVBAMTDExFQVAgUm9v
dCBDQTAeFw0yMDA4MDYxOTA3NDRaFw0yNTA4MDYxOTEyNDRaMBcxFTATBgNVBAMT
DExFQVAgUm9vdCBDQTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABIG5POr4cAdK
kTavKpSJr8nW1V7HLpr27qKaShpk1TUy5ipaAlusmavGLxKsPE+i3AMlvf/f6ch3
1MjAtIf5rYujJjAkMA4GA1UdDwEB/wQEAwICpDASBgNVHRMBAf8ECDAGAQH/AgEB
MAoGCCqGSM49BAMCA0kAMEYCIQDXj280LNZbSbi0Y2WvtQrJBUw4wdm8qAeOeuH7
6XiLEwIhAPBRsmst/ujcChsG2t6LpG+p8s4rfIfh8YLo/4qrcc5p
-----END CERTIFICATE-----`)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment