mirror of
https://github.com/SoftEtherVPN/SoftEtherVPN.git
synced 2025-07-12 02:34:59 +03:00
Implementation of the JSON-RPC API and the Web Admin interface. (dnobori's internal note: 7579 - 7682)
This commit is contained in:
@ -3810,14 +3810,16 @@ void OutRpcClientEnumCa(PACK *p, RPC_CLIENT_ENUM_CA *e)
|
||||
|
||||
PackAddNum(p, "NumItem", e->NumItem);
|
||||
|
||||
PackSetCurrentJsonGroupName(p, "CAList");
|
||||
for (i = 0;i < e->NumItem;i++)
|
||||
{
|
||||
RPC_CLIENT_ENUM_CA_ITEM *item = e->Items[i];
|
||||
PackAddIntEx(p, "Key", item->Key, i, e->NumItem);
|
||||
PackAddUniStrEx(p, "SubjectName", item->SubjectName, i, e->NumItem);
|
||||
PackAddUniStrEx(p, "IssuerName", item->IssuerName, i, e->NumItem);
|
||||
PackAddInt64Ex(p, "Expires", item->Expires, i, e->NumItem);
|
||||
PackAddTime64Ex(p, "Expires", item->Expires, i, e->NumItem);
|
||||
}
|
||||
PackSetCurrentJsonGroupName(p, NULL);
|
||||
}
|
||||
|
||||
// RPC_GET_ISSUER
|
||||
@ -4088,6 +4090,7 @@ void OutRpcClientEnumSecure(PACK *p, RPC_CLIENT_ENUM_SECURE *e)
|
||||
|
||||
PackAddNum(p, "NumItem", e->NumItem);
|
||||
|
||||
PackSetCurrentJsonGroupName(p, "SecureDeviceList");
|
||||
for (i = 0;i < e->NumItem;i++)
|
||||
{
|
||||
RPC_CLIENT_ENUM_SECURE_ITEM *item = e->Items[i];
|
||||
@ -4097,6 +4100,7 @@ void OutRpcClientEnumSecure(PACK *p, RPC_CLIENT_ENUM_SECURE *e)
|
||||
PackAddStrEx(p, "DeviceName", item->DeviceName, i, e->NumItem);
|
||||
PackAddStrEx(p, "Manufacturer", item->Manufacturer, i, e->NumItem);
|
||||
}
|
||||
PackSetCurrentJsonGroupName(p, NULL);
|
||||
}
|
||||
|
||||
// RPC_USE_SECURE
|
||||
@ -4153,11 +4157,13 @@ void OutRpcEnumObjectInSecure(PACK *p, RPC_ENUM_OBJECT_IN_SECURE *e)
|
||||
PackAddNum(p, "NumItem", e->NumItem);
|
||||
PackAddInt(p, "hWnd", e->hWnd);
|
||||
|
||||
PackSetCurrentJsonGroupName(p, "ObjectList");
|
||||
for (i = 0;i < e->NumItem;i++)
|
||||
{
|
||||
PackAddStrEx(p, "ItemName", e->ItemName[i], i, e->NumItem);
|
||||
PackAddIntEx(p, "ItemType", e->ItemType[i], i, e->NumItem);
|
||||
}
|
||||
PackSetCurrentJsonGroupName(p, NULL);
|
||||
}
|
||||
|
||||
// RPC_CLIENT_CREATE_VLAN
|
||||
@ -4277,6 +4283,7 @@ void OutRpcClientEnumVLan(PACK *p, RPC_CLIENT_ENUM_VLAN *v)
|
||||
|
||||
PackAddNum(p, "NumItem", v->NumItem);
|
||||
|
||||
PackSetCurrentJsonGroupName(p, "VLanList");
|
||||
for (i = 0;i < v->NumItem;i++)
|
||||
{
|
||||
RPC_CLIENT_ENUM_VLAN_ITEM *item = v->Items[i];
|
||||
@ -4286,6 +4293,7 @@ void OutRpcClientEnumVLan(PACK *p, RPC_CLIENT_ENUM_VLAN *v)
|
||||
PackAddStrEx(p, "MacAddress", item->MacAddress, i, v->NumItem);
|
||||
PackAddStrEx(p, "Version", item->Version, i, v->NumItem);
|
||||
}
|
||||
PackSetCurrentJsonGroupName(p, NULL);
|
||||
}
|
||||
|
||||
// CLIENT_OPTION
|
||||
@ -4352,10 +4360,10 @@ void OutRpcClientOption(PACK *p, CLIENT_OPTION *c)
|
||||
PackAddInt(p, "NumRetry", c->NumRetry);
|
||||
PackAddInt(p, "RetryInterval", c->RetryInterval);
|
||||
PackAddInt(p, "MaxConnection", c->MaxConnection);
|
||||
PackAddInt(p, "UseEncrypt", c->UseEncrypt);
|
||||
PackAddInt(p, "UseCompress", c->UseCompress);
|
||||
PackAddInt(p, "HalfConnection", c->HalfConnection);
|
||||
PackAddInt(p, "NoRoutingTracking", c->NoRoutingTracking);
|
||||
PackAddBool(p, "UseEncrypt", c->UseEncrypt);
|
||||
PackAddBool(p, "UseCompress", c->UseCompress);
|
||||
PackAddBool(p, "HalfConnection", c->HalfConnection);
|
||||
PackAddBool(p, "NoRoutingTracking", c->NoRoutingTracking);
|
||||
PackAddInt(p, "AdditionalConnectionInterval", c->AdditionalConnectionInterval);
|
||||
PackAddInt(p, "ConnectionDisconnectSpan", c->ConnectionDisconnectSpan);
|
||||
PackAddBool(p, "HideStatusWindow", c->HideStatusWindow);
|
||||
@ -4568,6 +4576,7 @@ void OutRpcClientEnumAccount(PACK *p, RPC_CLIENT_ENUM_ACCOUNT *e)
|
||||
|
||||
PackAddNum(p, "NumItem", e->NumItem);
|
||||
|
||||
PackSetCurrentJsonGroupName(p, "AccountList");
|
||||
for (i = 0;i < e->NumItem;i++)
|
||||
{
|
||||
RPC_CLIENT_ENUM_ACCOUNT_ITEM *item = e->Items[i];
|
||||
@ -4583,10 +4592,11 @@ void OutRpcClientEnumAccount(PACK *p, RPC_CLIENT_ENUM_ACCOUNT *e)
|
||||
PackAddBoolEx(p, "Connected", item->Connected, i, e->NumItem);
|
||||
PackAddIntEx(p, "Port", item->Port, i, e->NumItem);
|
||||
PackAddStrEx(p, "HubName", item->HubName, i, e->NumItem);
|
||||
PackAddInt64Ex(p, "CreateDateTime", item->CreateDateTime, i, e->NumItem);
|
||||
PackAddInt64Ex(p, "UpdateDateTime", item->UpdateDateTime, i, e->NumItem);
|
||||
PackAddInt64Ex(p, "LastConnectDateTime", item->LastConnectDateTime, i, e->NumItem);
|
||||
PackAddTime64Ex(p, "CreateDateTime", item->CreateDateTime, i, e->NumItem);
|
||||
PackAddTime64Ex(p, "UpdateDateTime", item->UpdateDateTime, i, e->NumItem);
|
||||
PackAddTime64Ex(p, "LastConnectDateTime", item->LastConnectDateTime, i, e->NumItem);
|
||||
}
|
||||
PackSetCurrentJsonGroupName(p, NULL);
|
||||
}
|
||||
|
||||
// RPC_CLIENT_DELETE_ACCOUNT
|
||||
@ -4702,9 +4712,9 @@ void OutRpcClientGetAccount(PACK *p, RPC_CLIENT_GET_ACCOUNT *c)
|
||||
|
||||
PackAddData(p, "ShortcutKey", c->ShortcutKey, SHA1_SIZE);
|
||||
|
||||
PackAddInt64(p, "CreateDateTime", c->CreateDateTime);
|
||||
PackAddInt64(p, "UpdateDateTime", c->UpdateDateTime);
|
||||
PackAddInt64(p, "LastConnectDateTime", c->LastConnectDateTime);
|
||||
PackAddTime64(p, "CreateDateTime", c->CreateDateTime);
|
||||
PackAddTime64(p, "UpdateDateTime", c->UpdateDateTime);
|
||||
PackAddTime64(p, "LastConnectDateTime", c->LastConnectDateTime);
|
||||
}
|
||||
|
||||
// RPC_CLIENT_CONNECT
|
||||
@ -4792,7 +4802,8 @@ void InRpcClientGetConnectionStatus(RPC_CLIENT_GET_CONNECTION_STATUS *s, PACK *p
|
||||
s->NumTcpConnectionsDownload = PackGetInt(p, "NumTcpConnectionsDownload");
|
||||
|
||||
s->StartTime = PackGetInt64(p, "StartTime");
|
||||
s->FirstConnectionEstablishedTime = PackGetInt64(p, "FirstConnectionEstablishedTime");
|
||||
/* !!! Do not correct the spelling to keep the backward protocol compatibility !!! */
|
||||
s->FirstConnectionEstablisiedTime = PackGetInt64(p, "FirstConnectionEstablisiedTime");
|
||||
s->CurrentConnectionEstablishTime = PackGetInt64(p, "CurrentConnectionEstablishTime");
|
||||
s->TotalSendSize = PackGetInt64(p, "TotalSendSize");
|
||||
s->TotalRecvSize = PackGetInt64(p, "TotalRecvSize");
|
||||
@ -4852,32 +4863,32 @@ void OutRpcClientGetConnectionStatus(PACK *p, RPC_CLIENT_GET_CONNECTION_STATUS *
|
||||
|
||||
PackAddData(p, "SessionKey", c->SessionKey, SHA1_SIZE);
|
||||
|
||||
PackAddInt(p, "Active", c->Active);
|
||||
PackAddInt(p, "Connected", c->Connected);
|
||||
PackAddBool(p, "Active", c->Active);
|
||||
PackAddBool(p, "Connected", c->Connected);
|
||||
PackAddInt(p, "SessionStatus", c->SessionStatus);
|
||||
PackAddInt(p, "ServerPort", c->ServerPort);
|
||||
PackAddInt(p, "ServerProductVer", c->ServerProductVer);
|
||||
PackAddInt(p, "ServerProductBuild", c->ServerProductBuild);
|
||||
PackAddInt(p, "NumConnectionsEstablished", c->NumConnectionsEstablished);
|
||||
PackAddInt(p, "HalfConnection", c->HalfConnection);
|
||||
PackAddInt(p, "QoS", c->QoS);
|
||||
PackAddBool(p, "HalfConnection", c->HalfConnection);
|
||||
PackAddBool(p, "QoS", c->QoS);
|
||||
PackAddInt(p, "MaxTcpConnections", c->MaxTcpConnections);
|
||||
PackAddInt(p, "NumTcpConnections", c->NumTcpConnections);
|
||||
PackAddInt(p, "NumTcpConnectionsUpload", c->NumTcpConnectionsUpload);
|
||||
PackAddInt(p, "NumTcpConnectionsDownload", c->NumTcpConnectionsDownload);
|
||||
PackAddInt(p, "UseEncrypt", c->UseEncrypt);
|
||||
PackAddInt(p, "UseCompress", c->UseCompress);
|
||||
PackAddInt(p, "IsRUDPSession", c->IsRUDPSession);
|
||||
PackAddBool(p, "UseEncrypt", c->UseEncrypt);
|
||||
PackAddBool(p, "UseCompress", c->UseCompress);
|
||||
PackAddBool(p, "IsRUDPSession", c->IsRUDPSession);
|
||||
PackAddStr(p, "UnderlayProtocol", c->UnderlayProtocol);
|
||||
PackAddInt(p, "IsUdpAccelerationEnabled", c->IsUdpAccelerationEnabled);
|
||||
PackAddInt(p, "IsUsingUdpAcceleration", c->IsUsingUdpAcceleration);
|
||||
PackAddBool(p, "IsUdpAccelerationEnabled", c->IsUdpAccelerationEnabled);
|
||||
PackAddBool(p, "IsUsingUdpAcceleration", c->IsUsingUdpAcceleration);
|
||||
|
||||
PackAddBool(p, "IsBridgeMode", c->IsBridgeMode);
|
||||
PackAddBool(p, "IsMonitorMode", c->IsMonitorMode);
|
||||
|
||||
PackAddInt64(p, "StartTime", c->StartTime);
|
||||
PackAddInt64(p, "FirstConnectionEstablishedTime", c->FirstConnectionEstablishedTime);
|
||||
PackAddInt64(p, "CurrentConnectionEstablishTime", c->CurrentConnectionEstablishTime);
|
||||
PackAddTime64(p, "StartTime", c->StartTime);
|
||||
PackAddTime64(p, "FirstConnectionEstablisiedTime", c->FirstConnectionEstablisiedTime);
|
||||
PackAddTime64(p, "CurrentConnectionEstablishTime", c->CurrentConnectionEstablishTime);
|
||||
PackAddInt64(p, "TotalSendSize", c->TotalSendSize);
|
||||
PackAddInt64(p, "TotalRecvSize", c->TotalRecvSize);
|
||||
PackAddInt64(p, "TotalSendSizeReal", c->TotalSendSizeReal);
|
||||
@ -5852,7 +5863,8 @@ void CiGetSessionStatus(RPC_CLIENT_GET_CONNECTION_STATUS *st, SESSION *s)
|
||||
// Connection start time
|
||||
st->StartTime = TickToTime(s->CreatedTime);
|
||||
// Connection completion time of the first connection
|
||||
st->FirstConnectionEstablishedTime = TickToTime(s->FirstConnectionEstablishedTime);
|
||||
/* !!! Do not correct the spelling to keep the backward protocol compatibility !!! */
|
||||
st->FirstConnectionEstablisiedTime = TickToTime(s->FirstConnectionEstablisiedTime);
|
||||
// Number of connections have been established so far
|
||||
st->NumConnectionsEstablished = s->NumConnectionsEstablished;
|
||||
}
|
||||
|
Reference in New Issue
Block a user