diff --git a/vpn/l2tp/l2tpadvanced.ui b/vpn/l2tp/l2tpadvanced.ui --- a/vpn/l2tp/l2tpadvanced.ui +++ b/vpn/l2tp/l2tpadvanced.ui @@ -7,7 +7,7 @@ 0 0 382 - 151 + 254 @@ -23,47 +23,86 @@ + + false + - Group Name: + Gateway ID: - + false + + false + - Gateway ID: + Pre-shared Key: - + false + + false + - Pre-shared Key: + Phase1 algorithms: - + + + false + + + + + false + + Phase2 algorithms: + - + + + + false + + + + + + + false + + + Enforce UDP encapsulation + + + true + + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok @@ -93,32 +132,128 @@ cbEnableTunnelToHost toggled(bool) - groupName + presharedKey setEnabled(bool) 159 14 209 - 39 + 91 cbEnableTunnelToHost toggled(bool) - presharedKey + ike setEnabled(bool) - 159 - 14 + 190 + 16 209 - 91 + 65 + + + + + cbEnableTunnelToHost + toggled(bool) + esp + setEnabled(bool) + + + 190 + 16 + + + 209 + 65 + + + + + cbEnableTunnelToHost + toggled(bool) + cbForceEncaps + setEnabled(bool) + + + 190 + 16 + + + 209 + 65 + + + + + cbEnableTunnelToHost + toggled(bool) + label_2 + setEnabled(bool) + + + 190 + 16 + + + 75 + 87 + + + + + cbEnableTunnelToHost + toggled(bool) + label + setEnabled(bool) + + + 190 + 16 + + + 86 + 49 + + + + + cbEnableTunnelToHost + toggled(bool) + label_3 + setEnabled(bool) + + + 190 + 16 + + + 64 + 125 + + + + + cbEnableTunnelToHost + toggled(bool) + label_4 + setEnabled(bool) + + + 190 + 16 + + + 64 + 163 diff --git a/vpn/l2tp/l2tpadvancedwidget.cpp b/vpn/l2tp/l2tpadvancedwidget.cpp --- a/vpn/l2tp/l2tpadvancedwidget.cpp +++ b/vpn/l2tp/l2tpadvancedwidget.cpp @@ -48,8 +48,14 @@ if (setting->data().value(NM_L2TP_KEY_IPSEC_ENABLE) == "yes") { m_ui->cbEnableTunnelToHost->setChecked(true); m_ui->gatewayId->setText(setting->data().value(NM_L2TP_KEY_IPSEC_GATEWAY_ID)); - m_ui->groupName->setText(setting->data().value(NM_L2TP_KEY_IPSEC_GROUP_NAME)); m_ui->presharedKey->setText(setting->data().value(NM_L2TP_KEY_IPSEC_PSK)); + m_ui->ike->setText(setting->data().value(NM_L2TP_KEY_IPSEC_IKE)); + m_ui->esp->setText(setting->data().value(NM_L2TP_KEY_IPSEC_ESP)); + if (setting->data().value(NM_L2TP_KEY_IPSEC_FORCEENCAPS) == "yes" ) { + m_ui->cbForceEncaps->setChecked(true); + } else { + m_ui->cbForceEncaps->setChecked(false); + } } else { m_ui->cbEnableTunnelToHost->setChecked(false); } @@ -66,13 +72,21 @@ result.insert(NM_L2TP_KEY_IPSEC_GATEWAY_ID, m_ui->gatewayId->text()); } - if (!m_ui->groupName->text().isEmpty()) { - result.insert(NM_L2TP_KEY_IPSEC_GROUP_NAME, m_ui->groupName->text()); - } - if (!m_ui->presharedKey->text().isEmpty()) { result.insert(NM_L2TP_KEY_IPSEC_PSK, m_ui->presharedKey->text()); } + + if (!m_ui->ike->text().isEmpty()) { + result.insert(NM_L2TP_KEY_IPSEC_IKE, m_ui->ike->text()); + } + + if (!m_ui->esp->text().isEmpty()) { + result.insert(NM_L2TP_KEY_IPSEC_ESP, m_ui->esp->text()); + } + + if (m_ui->cbForceEncaps->isChecked()) { + result.insert(NM_L2TP_KEY_IPSEC_FORCEENCAPS, "yes"); + } } return result; diff --git a/vpn/l2tp/nm-l2tp-service.h b/vpn/l2tp/nm-l2tp-service.h --- a/vpn/l2tp/nm-l2tp-service.h +++ b/vpn/l2tp/nm-l2tp-service.h @@ -17,21 +17,22 @@ * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * - * (C) Copyright 2008 Red Hat, Inc. + * Copyright 2008, 2014 Red Hat, Inc. */ -#ifndef NM_L2TP_SERVICE_H -#define NM_L2TP_SERVICE_H +#ifndef NM_L2TP_SERVICE_DEFINES_H +#define NM_L2TP_SERVICE_DEFINES_H -#define NM_DBUS_SERVICE_L2TP_PPP "org.freedesktop.NetworkManager.l2tp-ppp" -#define NM_DBUS_PATH_L2TP_PPP "/org/freedesktop/NetworkManager/l2tp/ppp" -#define NM_DBUS_INTERFACE_L2TP_PPP "org.freedesktop.NetworkManager.l2tp.ppp" +#define NM_DBUS_SERVICE_L2TP "org.freedesktop.NetworkManager.l2tp" /* For the NM <-> VPN plugin service */ -#define NM_DBUS_SERVICE_L2TP "org.freedesktop.NetworkManager.l2tp" #define NM_DBUS_INTERFACE_L2TP "org.freedesktop.NetworkManager.l2tp" #define NM_DBUS_PATH_L2TP "/org/freedesktop/NetworkManager/l2tp" +/* For the VPN plugin service <-> PPP plugin */ +#define NM_DBUS_INTERFACE_L2TP_PPP "org.freedesktop.NetworkManager.l2tp.ppp" +#define NM_DBUS_PATH_L2TP_PPP "/org/freedesktop/NetworkManager/l2tp/ppp" + #define NM_L2TP_KEY_GATEWAY "gateway" #define NM_L2TP_KEY_USER "user" #define NM_L2TP_KEY_PASSWORD "password" @@ -58,10 +59,14 @@ #define NM_L2TP_KEY_NO_ACCOMP "noaccomp" #define NM_L2TP_KEY_LCP_ECHO_FAILURE "lcp-echo-failure" #define NM_L2TP_KEY_LCP_ECHO_INTERVAL "lcp-echo-interval" +#define NM_L2TP_KEY_UNIT_NUM "unit" #define NM_L2TP_KEY_IPSEC_ENABLE "ipsec-enabled" #define NM_L2TP_KEY_IPSEC_GATEWAY_ID "ipsec-gateway-id" #define NM_L2TP_KEY_IPSEC_GROUP_NAME "ipsec-group-name" #define NM_L2TP_KEY_IPSEC_PSK "ipsec-psk" +#define NM_L2TP_KEY_IPSEC_IKE "ipsec-ike" +#define NM_L2TP_KEY_IPSEC_ESP "ipsec-esp" +#define NM_L2TP_KEY_IPSEC_FORCEENCAPS "ipsec-forceencaps" -#endif /* NM_L2TP_SERVICE_H */ +#endif /* NM_L2TP_SERVICE_DEFINES_H */