Поддержка протокола Sftp (File Sharing) по ТЗ по гранту от Теплицы
социальных технологий (2021 год) + небольшой рефакторинг
This commit is contained in:
parent
6ee203a21d
commit
3bcc12869b
45 changed files with 645 additions and 338 deletions
|
@ -70,7 +70,8 @@ QMap<amnezia::Protocol, QString> ProtocolProps::protocolHumanNames()
|
|||
{Protocol::WireGuard, "WireGuard"},
|
||||
{Protocol::TorWebSite, "Web site in TOR network"},
|
||||
{Protocol::Dns, "DNS Service"},
|
||||
{Protocol::FileShare, "File Sharing Service"}
|
||||
{Protocol::FileShare, "File Sharing Service"},
|
||||
{Protocol::Sftp, QObject::tr("Sftp service")}
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -105,6 +106,7 @@ int ProtocolProps::defaultPort(Protocol p)
|
|||
case Protocol::TorWebSite : return 443;
|
||||
case Protocol::Dns : return 53;
|
||||
case Protocol::FileShare : return 139;
|
||||
case Protocol::Sftp : return 222;
|
||||
default: return -1;
|
||||
}
|
||||
}
|
||||
|
@ -132,9 +134,11 @@ TransportProto ProtocolProps::defaultTransportProto(Protocol p)
|
|||
case Protocol::Cloak : return TransportProto::Tcp;
|
||||
case Protocol::ShadowSocks : return TransportProto::Tcp;
|
||||
case Protocol::WireGuard : return TransportProto::Udp;
|
||||
case Protocol::TorWebSite : return TransportProto::Tcp;
|
||||
// non-vpn
|
||||
case Protocol::TorWebSite : return TransportProto::Tcp;
|
||||
case Protocol::Dns : return TransportProto::Udp;
|
||||
case Protocol::FileShare : return TransportProto::Tcp;
|
||||
case Protocol::FileShare : return TransportProto::Udp;
|
||||
case Protocol::Sftp : return TransportProto::Tcp;
|
||||
default: return TransportProto::Udp;
|
||||
}
|
||||
}
|
||||
|
@ -147,9 +151,11 @@ bool ProtocolProps::defaultTransportProtoChangeable(Protocol p)
|
|||
case Protocol::Cloak : return false;
|
||||
case Protocol::ShadowSocks : return false;
|
||||
case Protocol::WireGuard : return false;
|
||||
case Protocol::TorWebSite : return false;
|
||||
// non-vpn
|
||||
case Protocol::TorWebSite : return false;
|
||||
case Protocol::Dns : return false;
|
||||
case Protocol::FileShare : return false;
|
||||
default: return -1;
|
||||
case Protocol::Sftp : return false;
|
||||
default: return false;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -100,6 +100,10 @@ constexpr char serverPskKeyPath[] = "/opt/amnezia/wireguard/wireguard_psk.key";
|
|||
|
||||
}
|
||||
|
||||
namespace sftp {
|
||||
constexpr char defaultUserName[] = "sftp_user";
|
||||
|
||||
} // namespace sftp
|
||||
|
||||
} // namespace protocols
|
||||
|
||||
|
@ -118,9 +122,12 @@ enum Protocol {
|
|||
ShadowSocks,
|
||||
Cloak,
|
||||
WireGuard,
|
||||
|
||||
// non-vpn
|
||||
TorWebSite,
|
||||
Dns,
|
||||
FileShare
|
||||
FileShare,
|
||||
Sftp
|
||||
};
|
||||
Q_ENUM_NS(Protocol)
|
||||
|
||||
|
@ -177,6 +184,14 @@ static void declareQmlProtocolEnum() {
|
|||
"TransportProto",
|
||||
"Error: only enums"
|
||||
);
|
||||
|
||||
qmlRegisterUncreatableMetaObject(
|
||||
ProtocolEnumNS::staticMetaObject,
|
||||
"ProtocolEnum",
|
||||
1, 0,
|
||||
"ServiceType",
|
||||
"Error: only enums"
|
||||
);
|
||||
}
|
||||
|
||||
} // namespace amnezia
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue