engage-engine 1.233.90730006 → 1.234.90740002
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/engage.cpp +24 -0
- package/include/ConfigurationObjects.h +312 -57
- package/include/EngageInterface.h +44 -2
- package/lib/darwin.x64/libengage-shared.dylib +0 -0
- package/lib/linux.x64/libengage-shared.so +0 -0
- package/lib/win32.ia32/engage-shared.dll +0 -0
- package/lib/win32.ia32/engage-shared.lib +0 -0
- package/lib/win32.x64/engage-shared.dll +0 -0
- package/lib/win32.x64/engage-shared.lib +0 -0
- package/package.json +1 -1
package/engage.cpp
CHANGED
|
@@ -1161,6 +1161,27 @@ NAN_METHOD(getDeviceId)
|
|
|
1161
1161
|
}
|
|
1162
1162
|
|
|
1163
1163
|
|
|
1164
|
+
//--------------------------------------------------------
|
|
1165
|
+
NAN_METHOD(verifyRiff)
|
|
1166
|
+
{
|
|
1167
|
+
NANRETI(engageVerifyRiff(STRVAL(0)));
|
|
1168
|
+
}
|
|
1169
|
+
|
|
1170
|
+
|
|
1171
|
+
//--------------------------------------------------------
|
|
1172
|
+
NAN_METHOD(getRiffDescriptor)
|
|
1173
|
+
{
|
|
1174
|
+
const char *rc = engageGetRiffDescriptor(STRVAL(0));
|
|
1175
|
+
|
|
1176
|
+
if(rc == nullptr)
|
|
1177
|
+
{
|
|
1178
|
+
rc = "";
|
|
1179
|
+
}
|
|
1180
|
+
|
|
1181
|
+
NANRETS(rc);
|
|
1182
|
+
}
|
|
1183
|
+
|
|
1184
|
+
|
|
1164
1185
|
//--------------------------------------------------------
|
|
1165
1186
|
NAN_MODULE_INIT(Init)
|
|
1166
1187
|
{
|
|
@@ -1236,6 +1257,9 @@ NAN_MODULE_INIT(Init)
|
|
|
1236
1257
|
ENGAGE_BINDING(isCryptoFipsValidated);
|
|
1237
1258
|
|
|
1238
1259
|
ENGAGE_BINDING(getDeviceId);
|
|
1260
|
+
|
|
1261
|
+
ENGAGE_BINDING(verifyRiff);
|
|
1262
|
+
ENGAGE_BINDING(getRiffDescriptor);
|
|
1239
1263
|
}
|
|
1240
1264
|
|
|
1241
1265
|
NODE_MODULE(engage, Init)
|
|
@@ -2188,6 +2188,196 @@ namespace AppConfigurationObjects
|
|
|
2188
2188
|
}
|
|
2189
2189
|
|
|
2190
2190
|
|
|
2191
|
+
//-----------------------------------------------------------
|
|
2192
|
+
JSON_SERIALIZED_CLASS(TransportImpairment)
|
|
2193
|
+
/**
|
|
2194
|
+
* @brief Description of a transport impairment
|
|
2195
|
+
*
|
|
2196
|
+
* Helper C++ class to serialize and de-serialize TransportImpairment JSON.
|
|
2197
|
+
*
|
|
2198
|
+
* Example: @include[doc] examples/TransportImpairment.json
|
|
2199
|
+
*
|
|
2200
|
+
*/
|
|
2201
|
+
class TransportImpairment : public ConfigurationObjectBase
|
|
2202
|
+
{
|
|
2203
|
+
IMPLEMENT_JSON_SERIALIZATION()
|
|
2204
|
+
IMPLEMENT_JSON_DOCUMENTATION(TransportImpairment)
|
|
2205
|
+
|
|
2206
|
+
public:
|
|
2207
|
+
int applicationPercentage;
|
|
2208
|
+
int jitterMs;
|
|
2209
|
+
int lossPercentage;
|
|
2210
|
+
|
|
2211
|
+
TransportImpairment()
|
|
2212
|
+
{
|
|
2213
|
+
clear();
|
|
2214
|
+
}
|
|
2215
|
+
|
|
2216
|
+
void clear()
|
|
2217
|
+
{
|
|
2218
|
+
applicationPercentage = 0;
|
|
2219
|
+
jitterMs = 0;
|
|
2220
|
+
lossPercentage = 0;
|
|
2221
|
+
}
|
|
2222
|
+
};
|
|
2223
|
+
|
|
2224
|
+
static void to_json(nlohmann::json& j, const TransportImpairment& p)
|
|
2225
|
+
{
|
|
2226
|
+
j = nlohmann::json{
|
|
2227
|
+
TOJSON_IMPL(applicationPercentage),
|
|
2228
|
+
TOJSON_IMPL(jitterMs),
|
|
2229
|
+
TOJSON_IMPL(lossPercentage)
|
|
2230
|
+
};
|
|
2231
|
+
}
|
|
2232
|
+
static void from_json(const nlohmann::json& j, TransportImpairment& p)
|
|
2233
|
+
{
|
|
2234
|
+
p.clear();
|
|
2235
|
+
getOptional<int>("applicationPercentage", p.applicationPercentage, j, 0);
|
|
2236
|
+
getOptional<int>("jitterMs", p.jitterMs, j, 0);
|
|
2237
|
+
getOptional<int>("lossPercentage", p.lossPercentage, j, 0);
|
|
2238
|
+
}
|
|
2239
|
+
|
|
2240
|
+
//-----------------------------------------------------------
|
|
2241
|
+
JSON_SERIALIZED_CLASS(NsmNetworking)
|
|
2242
|
+
/**
|
|
2243
|
+
* @brief NsmNetworking
|
|
2244
|
+
*
|
|
2245
|
+
* Helper C++ class to serialize and de-serialize NsmNetworking JSON
|
|
2246
|
+
*
|
|
2247
|
+
* Example: @include[doc] examples/NsmNetworking.json
|
|
2248
|
+
*
|
|
2249
|
+
*/
|
|
2250
|
+
class NsmNetworking : public ConfigurationObjectBase
|
|
2251
|
+
{
|
|
2252
|
+
IMPLEMENT_JSON_SERIALIZATION()
|
|
2253
|
+
IMPLEMENT_JSON_DOCUMENTATION(NsmNetworking)
|
|
2254
|
+
|
|
2255
|
+
public:
|
|
2256
|
+
std::string interfaceName;
|
|
2257
|
+
NetworkAddress address;
|
|
2258
|
+
int ttl;
|
|
2259
|
+
int tos;
|
|
2260
|
+
int txOversend;
|
|
2261
|
+
TransportImpairment rxImpairment;
|
|
2262
|
+
TransportImpairment txImpairment;
|
|
2263
|
+
std::string cryptoPassword;
|
|
2264
|
+
|
|
2265
|
+
NsmNetworking()
|
|
2266
|
+
{
|
|
2267
|
+
clear();
|
|
2268
|
+
}
|
|
2269
|
+
|
|
2270
|
+
void clear()
|
|
2271
|
+
{
|
|
2272
|
+
interfaceName.clear();
|
|
2273
|
+
address.clear();
|
|
2274
|
+
ttl = 1;
|
|
2275
|
+
tos = 56;
|
|
2276
|
+
txOversend = 0;
|
|
2277
|
+
rxImpairment.clear();
|
|
2278
|
+
txImpairment.clear();
|
|
2279
|
+
cryptoPassword.clear();
|
|
2280
|
+
}
|
|
2281
|
+
};
|
|
2282
|
+
|
|
2283
|
+
static void to_json(nlohmann::json& j, const NsmNetworking& p)
|
|
2284
|
+
{
|
|
2285
|
+
j = nlohmann::json{
|
|
2286
|
+
TOJSON_IMPL(interfaceName),
|
|
2287
|
+
TOJSON_IMPL(address),
|
|
2288
|
+
TOJSON_IMPL(ttl),
|
|
2289
|
+
TOJSON_IMPL(tos),
|
|
2290
|
+
TOJSON_IMPL(txOversend),
|
|
2291
|
+
TOJSON_IMPL(rxImpairment),
|
|
2292
|
+
TOJSON_IMPL(txImpairment),
|
|
2293
|
+
TOJSON_IMPL(cryptoPassword)
|
|
2294
|
+
};
|
|
2295
|
+
}
|
|
2296
|
+
static void from_json(const nlohmann::json& j, NsmNetworking& p)
|
|
2297
|
+
{
|
|
2298
|
+
p.clear();
|
|
2299
|
+
getOptional("interfaceName", p.interfaceName, j, EMPTY_STRING);
|
|
2300
|
+
getOptional<NetworkAddress>("address", p.address, j);
|
|
2301
|
+
getOptional<int>("ttl", p.ttl, j, 1);
|
|
2302
|
+
getOptional<int>("tos", p.tos, j, 56);
|
|
2303
|
+
getOptional<int>("txOversend", p.txOversend, j, 0);
|
|
2304
|
+
getOptional<TransportImpairment>("rxImpairment", p.rxImpairment, j);
|
|
2305
|
+
getOptional<TransportImpairment>("txImpairment", p.txImpairment, j);
|
|
2306
|
+
getOptional("cryptoPassword", p.cryptoPassword, j, EMPTY_STRING);
|
|
2307
|
+
}
|
|
2308
|
+
|
|
2309
|
+
|
|
2310
|
+
//-----------------------------------------------------------
|
|
2311
|
+
JSON_SERIALIZED_CLASS(NsmConfiguration)
|
|
2312
|
+
/**
|
|
2313
|
+
* @brief NsmConfiguration
|
|
2314
|
+
*
|
|
2315
|
+
* Helper C++ class to serialize and de-serialize NsmConfiguration JSON
|
|
2316
|
+
*
|
|
2317
|
+
* Example: @include[doc] examples/NsmConfiguration.json
|
|
2318
|
+
*
|
|
2319
|
+
*/
|
|
2320
|
+
class NsmConfiguration : public ConfigurationObjectBase
|
|
2321
|
+
{
|
|
2322
|
+
IMPLEMENT_JSON_SERIALIZATION()
|
|
2323
|
+
IMPLEMENT_JSON_DOCUMENTATION(NsmConfiguration)
|
|
2324
|
+
|
|
2325
|
+
public:
|
|
2326
|
+
|
|
2327
|
+
std::string id;
|
|
2328
|
+
bool favorUptime;
|
|
2329
|
+
NsmNetworking networking;
|
|
2330
|
+
std::vector<std::string> resources;
|
|
2331
|
+
int tokenStart;
|
|
2332
|
+
int tokenEnd;
|
|
2333
|
+
int intervalSecs;
|
|
2334
|
+
int transitionSecsFactor;
|
|
2335
|
+
|
|
2336
|
+
NsmConfiguration()
|
|
2337
|
+
{
|
|
2338
|
+
clear();
|
|
2339
|
+
}
|
|
2340
|
+
|
|
2341
|
+
void clear()
|
|
2342
|
+
{
|
|
2343
|
+
id.clear();
|
|
2344
|
+
favorUptime = false;
|
|
2345
|
+
networking.clear();
|
|
2346
|
+
resources.clear();
|
|
2347
|
+
tokenStart = 1000000;
|
|
2348
|
+
tokenEnd = 2000000;
|
|
2349
|
+
intervalSecs = 1;
|
|
2350
|
+
transitionSecsFactor = 3;
|
|
2351
|
+
}
|
|
2352
|
+
};
|
|
2353
|
+
|
|
2354
|
+
static void to_json(nlohmann::json& j, const NsmConfiguration& p)
|
|
2355
|
+
{
|
|
2356
|
+
j = nlohmann::json{
|
|
2357
|
+
TOJSON_IMPL(id),
|
|
2358
|
+
TOJSON_IMPL(favorUptime),
|
|
2359
|
+
TOJSON_IMPL(networking),
|
|
2360
|
+
TOJSON_IMPL(resources),
|
|
2361
|
+
TOJSON_IMPL(tokenStart),
|
|
2362
|
+
TOJSON_IMPL(tokenEnd),
|
|
2363
|
+
TOJSON_IMPL(intervalSecs),
|
|
2364
|
+
TOJSON_IMPL(transitionSecsFactor)
|
|
2365
|
+
};
|
|
2366
|
+
}
|
|
2367
|
+
static void from_json(const nlohmann::json& j, NsmConfiguration& p)
|
|
2368
|
+
{
|
|
2369
|
+
p.clear();
|
|
2370
|
+
getOptional("id", p.id, j);
|
|
2371
|
+
getOptional<bool>("favorUptime", p.favorUptime, j, false);
|
|
2372
|
+
getOptional<NsmNetworking>("networking", p.networking, j);
|
|
2373
|
+
getOptional<std::vector<std::string>>("resources", p.resources, j);
|
|
2374
|
+
getOptional<int>("tokenStart", p.tokenStart, j, 1000000);
|
|
2375
|
+
getOptional<int>("tokenEnd", p.tokenEnd, j, 2000000);
|
|
2376
|
+
getOptional<int>("intervalSecs", p.intervalSecs, j, 1);
|
|
2377
|
+
getOptional<int>("transitionSecsFactor", p.transitionSecsFactor, j, 3);
|
|
2378
|
+
}
|
|
2379
|
+
|
|
2380
|
+
|
|
2191
2381
|
//-----------------------------------------------------------
|
|
2192
2382
|
JSON_SERIALIZED_CLASS(Rallypoint)
|
|
2193
2383
|
/**
|
|
@@ -2564,55 +2754,6 @@ namespace AppConfigurationObjects
|
|
|
2564
2754
|
getOptional("extra", p.extra, j);
|
|
2565
2755
|
}
|
|
2566
2756
|
|
|
2567
|
-
//-----------------------------------------------------------
|
|
2568
|
-
JSON_SERIALIZED_CLASS(TransportImpairment)
|
|
2569
|
-
/**
|
|
2570
|
-
* @brief Description of a transport impairment
|
|
2571
|
-
*
|
|
2572
|
-
* Helper C++ class to serialize and de-serialize TransportImpairment JSON.
|
|
2573
|
-
*
|
|
2574
|
-
* Example: @include[doc] examples/TransportImpairment.json
|
|
2575
|
-
*
|
|
2576
|
-
*/
|
|
2577
|
-
class TransportImpairment : public ConfigurationObjectBase
|
|
2578
|
-
{
|
|
2579
|
-
IMPLEMENT_JSON_SERIALIZATION()
|
|
2580
|
-
IMPLEMENT_JSON_DOCUMENTATION(NetworkDeviceDescriptor)
|
|
2581
|
-
|
|
2582
|
-
public:
|
|
2583
|
-
int applicationPercentage;
|
|
2584
|
-
int jitterMs;
|
|
2585
|
-
int lossPercentage;
|
|
2586
|
-
|
|
2587
|
-
TransportImpairment()
|
|
2588
|
-
{
|
|
2589
|
-
clear();
|
|
2590
|
-
}
|
|
2591
|
-
|
|
2592
|
-
void clear()
|
|
2593
|
-
{
|
|
2594
|
-
applicationPercentage = 0;
|
|
2595
|
-
jitterMs = 0;
|
|
2596
|
-
lossPercentage = 0;
|
|
2597
|
-
}
|
|
2598
|
-
};
|
|
2599
|
-
|
|
2600
|
-
static void to_json(nlohmann::json& j, const TransportImpairment& p)
|
|
2601
|
-
{
|
|
2602
|
-
j = nlohmann::json{
|
|
2603
|
-
TOJSON_IMPL(applicationPercentage),
|
|
2604
|
-
TOJSON_IMPL(jitterMs),
|
|
2605
|
-
TOJSON_IMPL(lossPercentage)
|
|
2606
|
-
};
|
|
2607
|
-
}
|
|
2608
|
-
static void from_json(const nlohmann::json& j, TransportImpairment& p)
|
|
2609
|
-
{
|
|
2610
|
-
p.clear();
|
|
2611
|
-
getOptional<int>("applicationPercentage", p.applicationPercentage, j, 0);
|
|
2612
|
-
getOptional<int>("jitterMs", p.jitterMs, j, 0);
|
|
2613
|
-
getOptional<int>("lossPercentage", p.lossPercentage, j, 0);
|
|
2614
|
-
}
|
|
2615
|
-
|
|
2616
2757
|
//-----------------------------------------------------------
|
|
2617
2758
|
JSON_SERIALIZED_CLASS(TxAudio)
|
|
2618
2759
|
/**
|
|
@@ -7746,6 +7887,9 @@ namespace AppConfigurationObjects
|
|
|
7746
7887
|
/** @brief [Optional] Settings for websocket operation */
|
|
7747
7888
|
RallypointWebsocketSettings websocket;
|
|
7748
7889
|
|
|
7890
|
+
/** @brief [Optional] Settings for NSM. */
|
|
7891
|
+
NsmConfiguration nsm;
|
|
7892
|
+
|
|
7749
7893
|
RallypointServer()
|
|
7750
7894
|
{
|
|
7751
7895
|
clear();
|
|
@@ -7799,6 +7943,7 @@ namespace AppConfigurationObjects
|
|
|
7799
7943
|
peerRtTestIntervalMs = 60000;
|
|
7800
7944
|
peerRtBehaviors.clear();
|
|
7801
7945
|
websocket.clear();
|
|
7946
|
+
nsm.clear();
|
|
7802
7947
|
}
|
|
7803
7948
|
};
|
|
7804
7949
|
|
|
@@ -7850,7 +7995,8 @@ namespace AppConfigurationObjects
|
|
|
7850
7995
|
TOJSON_IMPL(maxOutboundPeerConnectionIntervalDeltaSecs),
|
|
7851
7996
|
TOJSON_IMPL(peerRtTestIntervalMs),
|
|
7852
7997
|
TOJSON_IMPL(peerRtBehaviors),
|
|
7853
|
-
TOJSON_IMPL(websocket)
|
|
7998
|
+
TOJSON_IMPL(websocket),
|
|
7999
|
+
TOJSON_IMPL(nsm)
|
|
7854
8000
|
};
|
|
7855
8001
|
}
|
|
7856
8002
|
static void from_json(const nlohmann::json& j, RallypointServer& p)
|
|
@@ -7902,6 +8048,7 @@ namespace AppConfigurationObjects
|
|
|
7902
8048
|
getOptional<int>("peerRtTestIntervalMs", p.peerRtTestIntervalMs, j, 60000);
|
|
7903
8049
|
getOptional<std::vector<RallypointRpRtTimingBehavior>>("peerRtBehaviors", p.peerRtBehaviors, j);
|
|
7904
8050
|
getOptional<RallypointWebsocketSettings>("websocket", p.websocket, j);
|
|
8051
|
+
getOptional<NsmConfiguration>("nsm", p.nsm, j);
|
|
7905
8052
|
}
|
|
7906
8053
|
|
|
7907
8054
|
//-----------------------------------------------------------
|
|
@@ -7978,6 +8125,7 @@ namespace AppConfigurationObjects
|
|
|
7978
8125
|
getOptional<uint32_t>("configurationVersion", p.configurationVersion, j, 0);
|
|
7979
8126
|
}
|
|
7980
8127
|
|
|
8128
|
+
|
|
7981
8129
|
//-----------------------------------------------------------
|
|
7982
8130
|
class TimelineEvent
|
|
7983
8131
|
{
|
|
@@ -8420,6 +8568,94 @@ namespace AppConfigurationObjects
|
|
|
8420
8568
|
getOptional<std::string>("fingerprint", p.fingerprint, j, EMPTY_STRING);
|
|
8421
8569
|
}
|
|
8422
8570
|
|
|
8571
|
+
|
|
8572
|
+
//-----------------------------------------------------------
|
|
8573
|
+
JSON_SERIALIZED_CLASS(RiffDescriptor)
|
|
8574
|
+
/**
|
|
8575
|
+
* @brief Helper class for serializing and deserializing the RiffDescriptor JSON
|
|
8576
|
+
*
|
|
8577
|
+
* Helper C++ class to serialize and de-serialize RiffDescriptor JSON
|
|
8578
|
+
*
|
|
8579
|
+
* Example: @include[doc] examples/RiffDescriptor.json
|
|
8580
|
+
*
|
|
8581
|
+
* @see TODO: engageGetRiffDescriptor
|
|
8582
|
+
*/
|
|
8583
|
+
class RiffDescriptor : public ConfigurationObjectBase
|
|
8584
|
+
{
|
|
8585
|
+
IMPLEMENT_JSON_SERIALIZATION()
|
|
8586
|
+
IMPLEMENT_JSON_DOCUMENTATION(RiffDescriptor)
|
|
8587
|
+
|
|
8588
|
+
public:
|
|
8589
|
+
/** @brief Name of the RIFF file. */
|
|
8590
|
+
std::string file;
|
|
8591
|
+
|
|
8592
|
+
/** @brief True if the ECDSA signature is verified. */
|
|
8593
|
+
bool verified;
|
|
8594
|
+
|
|
8595
|
+
/** @brief Number of audio channels */
|
|
8596
|
+
int channels;
|
|
8597
|
+
|
|
8598
|
+
/** @brief Number of audio samples */
|
|
8599
|
+
int sampleCount;
|
|
8600
|
+
|
|
8601
|
+
/** @brief [Optional] Meta data associated with the file - typically a stringified JSON object. */
|
|
8602
|
+
std::string meta;
|
|
8603
|
+
|
|
8604
|
+
/** @brief [Optional] X.509 certificate in PEM format used to sign the RIFF file. */
|
|
8605
|
+
std::string certPem;
|
|
8606
|
+
|
|
8607
|
+
/** @brief [Optional] X.509 certificate parsed into a CertificateDescriptor object. */
|
|
8608
|
+
CertificateDescriptor certDescriptor;
|
|
8609
|
+
|
|
8610
|
+
/** @brief [Optional] ECDSA signature */
|
|
8611
|
+
std::string signature;
|
|
8612
|
+
|
|
8613
|
+
RiffDescriptor()
|
|
8614
|
+
{
|
|
8615
|
+
clear();
|
|
8616
|
+
}
|
|
8617
|
+
|
|
8618
|
+
void clear()
|
|
8619
|
+
{
|
|
8620
|
+
file.clear();
|
|
8621
|
+
verified = false;
|
|
8622
|
+
channels = 0;
|
|
8623
|
+
sampleCount = 0;
|
|
8624
|
+
meta.clear();
|
|
8625
|
+
certPem.clear();
|
|
8626
|
+
certDescriptor.clear();
|
|
8627
|
+
signature.clear();
|
|
8628
|
+
}
|
|
8629
|
+
};
|
|
8630
|
+
|
|
8631
|
+
static void to_json(nlohmann::json& j, const RiffDescriptor& p)
|
|
8632
|
+
{
|
|
8633
|
+
j = nlohmann::json{
|
|
8634
|
+
TOJSON_IMPL(file),
|
|
8635
|
+
TOJSON_IMPL(verified),
|
|
8636
|
+
TOJSON_IMPL(channels),
|
|
8637
|
+
TOJSON_IMPL(sampleCount),
|
|
8638
|
+
TOJSON_IMPL(meta),
|
|
8639
|
+
TOJSON_IMPL(certPem),
|
|
8640
|
+
TOJSON_IMPL(certDescriptor),
|
|
8641
|
+
TOJSON_IMPL(signature)
|
|
8642
|
+
};
|
|
8643
|
+
}
|
|
8644
|
+
|
|
8645
|
+
static void from_json(const nlohmann::json& j, RiffDescriptor& p)
|
|
8646
|
+
{
|
|
8647
|
+
p.clear();
|
|
8648
|
+
FROMJSON_IMPL(file, std::string, EMPTY_STRING);
|
|
8649
|
+
FROMJSON_IMPL(verified, bool, false);
|
|
8650
|
+
FROMJSON_IMPL(channels, int, 0);
|
|
8651
|
+
FROMJSON_IMPL(sampleCount, int, 0);
|
|
8652
|
+
FROMJSON_IMPL(meta, std::string, EMPTY_STRING);
|
|
8653
|
+
FROMJSON_IMPL(certPem, std::string, EMPTY_STRING);
|
|
8654
|
+
getOptional<CertificateDescriptor>("certDescriptor", p.certDescriptor, j);
|
|
8655
|
+
FROMJSON_IMPL(signature, std::string, EMPTY_STRING);
|
|
8656
|
+
}
|
|
8657
|
+
|
|
8658
|
+
|
|
8423
8659
|
//-----------------------------------------------------------
|
|
8424
8660
|
JSON_SERIALIZED_CLASS(BridgeCreationDetail)
|
|
8425
8661
|
/**
|
|
@@ -9514,6 +9750,9 @@ namespace AppConfigurationObjects
|
|
|
9514
9750
|
/** @brief Address and port of the proxy */
|
|
9515
9751
|
NetworkAddress proxy;
|
|
9516
9752
|
|
|
9753
|
+
/** @brief [Optional] Settings for NSM. */
|
|
9754
|
+
NsmConfiguration nsm;
|
|
9755
|
+
|
|
9517
9756
|
LingoServerConfiguration()
|
|
9518
9757
|
{
|
|
9519
9758
|
clear();
|
|
@@ -9532,9 +9771,10 @@ namespace AppConfigurationObjects
|
|
|
9532
9771
|
certStoreFileName.clear();
|
|
9533
9772
|
certStorePasswordHex.clear();
|
|
9534
9773
|
enginePolicy.clear();
|
|
9535
|
-
configurationCheckSignalName = "rts.
|
|
9774
|
+
configurationCheckSignalName = "rts.22f4ec3.${id}";
|
|
9536
9775
|
fipsCrypto.clear();
|
|
9537
9776
|
proxy.clear();
|
|
9777
|
+
nsm.clear();
|
|
9538
9778
|
}
|
|
9539
9779
|
};
|
|
9540
9780
|
|
|
@@ -9554,7 +9794,8 @@ namespace AppConfigurationObjects
|
|
|
9554
9794
|
TOJSON_IMPL(enginePolicy),
|
|
9555
9795
|
TOJSON_IMPL(configurationCheckSignalName),
|
|
9556
9796
|
TOJSON_IMPL(fipsCrypto),
|
|
9557
|
-
TOJSON_IMPL(proxy)
|
|
9797
|
+
TOJSON_IMPL(proxy),
|
|
9798
|
+
TOJSON_IMPL(nsm)
|
|
9558
9799
|
};
|
|
9559
9800
|
}
|
|
9560
9801
|
static void from_json(const nlohmann::json& j, LingoServerConfiguration& p)
|
|
@@ -9571,9 +9812,10 @@ namespace AppConfigurationObjects
|
|
|
9571
9812
|
getOptional<std::string>("certStoreFileName", p.certStoreFileName, j);
|
|
9572
9813
|
getOptional<std::string>("certStorePasswordHex", p.certStorePasswordHex, j);
|
|
9573
9814
|
j.at("enginePolicy").get_to(p.enginePolicy);
|
|
9574
|
-
getOptional<std::string>("configurationCheckSignalName", p.configurationCheckSignalName, j, "rts.
|
|
9815
|
+
getOptional<std::string>("configurationCheckSignalName", p.configurationCheckSignalName, j, "rts.22f4ec3.${id}");
|
|
9575
9816
|
getOptional<FipsCryptoSettings>("fipsCrypo", p.fipsCrypto, j);
|
|
9576
9817
|
getOptional<NetworkAddress>("proxy", p.proxy, j);
|
|
9818
|
+
getOptional<NsmConfiguration>("nsm", p.nsm, j);
|
|
9577
9819
|
}
|
|
9578
9820
|
|
|
9579
9821
|
|
|
@@ -9938,7 +10180,10 @@ namespace AppConfigurationObjects
|
|
|
9938
10180
|
std::string configurationCheckSignalName;
|
|
9939
10181
|
|
|
9940
10182
|
/** @brief [Optional] Settings for the FIPS crypto. */
|
|
9941
|
-
FipsCryptoSettings
|
|
10183
|
+
FipsCryptoSettings fipsCrypto;
|
|
10184
|
+
|
|
10185
|
+
/** @brief [Optional] Settings for NSM. */
|
|
10186
|
+
NsmConfiguration nsm;
|
|
9942
10187
|
|
|
9943
10188
|
BridgingServerConfiguration()
|
|
9944
10189
|
{
|
|
@@ -9961,6 +10206,7 @@ namespace AppConfigurationObjects
|
|
|
9961
10206
|
enginePolicy.clear();
|
|
9962
10207
|
configurationCheckSignalName = "rts.6cc0651.${id}";
|
|
9963
10208
|
fipsCrypto.clear();
|
|
10209
|
+
nsm.clear();
|
|
9964
10210
|
}
|
|
9965
10211
|
};
|
|
9966
10212
|
|
|
@@ -9980,7 +10226,8 @@ namespace AppConfigurationObjects
|
|
|
9980
10226
|
TOJSON_IMPL(certStorePasswordHex),
|
|
9981
10227
|
TOJSON_IMPL(enginePolicy),
|
|
9982
10228
|
TOJSON_IMPL(configurationCheckSignalName),
|
|
9983
|
-
TOJSON_IMPL(fipsCrypto)
|
|
10229
|
+
TOJSON_IMPL(fipsCrypto),
|
|
10230
|
+
TOJSON_IMPL(nsm)
|
|
9984
10231
|
};
|
|
9985
10232
|
}
|
|
9986
10233
|
static void from_json(const nlohmann::json& j, BridgingServerConfiguration& p)
|
|
@@ -10000,6 +10247,7 @@ namespace AppConfigurationObjects
|
|
|
10000
10247
|
j.at("enginePolicy").get_to(p.enginePolicy);
|
|
10001
10248
|
getOptional<std::string>("configurationCheckSignalName", p.configurationCheckSignalName, j, "rts.6cc0651.${id}");
|
|
10002
10249
|
getOptional<FipsCryptoSettings>("fipsCrypto", p.fipsCrypto, j);
|
|
10250
|
+
getOptional<NsmConfiguration>("nsm", p.nsm, j);
|
|
10003
10251
|
}
|
|
10004
10252
|
|
|
10005
10253
|
|
|
@@ -10220,6 +10468,9 @@ namespace AppConfigurationObjects
|
|
|
10220
10468
|
/** @brief [Optional] Settings for the FIPS crypto. */
|
|
10221
10469
|
FipsCryptoSettings fipsCrypto;
|
|
10222
10470
|
|
|
10471
|
+
/** @brief [Optional] Settings for NSM. */
|
|
10472
|
+
NsmConfiguration nsm;
|
|
10473
|
+
|
|
10223
10474
|
EarServerConfiguration()
|
|
10224
10475
|
{
|
|
10225
10476
|
clear();
|
|
@@ -10240,6 +10491,7 @@ namespace AppConfigurationObjects
|
|
|
10240
10491
|
enginePolicy.clear();
|
|
10241
10492
|
configurationCheckSignalName = "rts.9a164fa.${id}";
|
|
10242
10493
|
fipsCrypto.clear();
|
|
10494
|
+
nsm.clear();
|
|
10243
10495
|
}
|
|
10244
10496
|
};
|
|
10245
10497
|
|
|
@@ -10258,7 +10510,8 @@ namespace AppConfigurationObjects
|
|
|
10258
10510
|
TOJSON_IMPL(certStorePasswordHex),
|
|
10259
10511
|
TOJSON_IMPL(enginePolicy),
|
|
10260
10512
|
TOJSON_IMPL(configurationCheckSignalName),
|
|
10261
|
-
TOJSON_IMPL(fipsCrypto)
|
|
10513
|
+
TOJSON_IMPL(fipsCrypto),
|
|
10514
|
+
TOJSON_IMPL(nsm)
|
|
10262
10515
|
};
|
|
10263
10516
|
}
|
|
10264
10517
|
static void from_json(const nlohmann::json& j, EarServerConfiguration& p)
|
|
@@ -10275,7 +10528,9 @@ namespace AppConfigurationObjects
|
|
|
10275
10528
|
getOptional<std::string>("certStoreFileName", p.certStoreFileName, j);
|
|
10276
10529
|
getOptional<std::string>("certStorePasswordHex", p.certStorePasswordHex, j);
|
|
10277
10530
|
j.at("enginePolicy").get_to(p.enginePolicy);
|
|
10278
|
-
getOptional<std::string>("configurationCheckSignalName", p.configurationCheckSignalName, j, "rts.
|
|
10531
|
+
getOptional<std::string>("configurationCheckSignalName", p.configurationCheckSignalName, j, "rts.9a164fa.${id}");
|
|
10532
|
+
getOptional<FipsCryptoSettings>("fipsCrypto", p.fipsCrypto, j);
|
|
10533
|
+
getOptional<NsmConfiguration>("nsm", p.nsm, j);
|
|
10279
10534
|
}
|
|
10280
10535
|
|
|
10281
10536
|
//-----------------------------------------------------------
|
|
@@ -1259,9 +1259,23 @@ ENGAGE_API int engageSetMissionId(const char * _Nullable missionId);
|
|
|
1259
1259
|
|
|
1260
1260
|
|
|
1261
1261
|
/**
|
|
1262
|
-
* @brief [SYNC]
|
|
1262
|
+
* @brief [SYNC] Creates a certificate store
|
|
1263
1263
|
*
|
|
1264
|
-
* This function
|
|
1264
|
+
* This function creates a certificate store and makes it the active certificate store used for the Engine.
|
|
1265
|
+
*
|
|
1266
|
+
* No events are generated by this API call.
|
|
1267
|
+
*
|
|
1268
|
+
* @param fileName The full path to the file
|
|
1269
|
+
* @param passwordHexByteString Password as a hex byte string (if the file is to be password protected with an additional application password)
|
|
1270
|
+
* @return ENGAGE_RESULT_OK if the store was opened
|
|
1271
|
+
*/
|
|
1272
|
+
ENGAGE_API int engageCreateCertStore(const char * _Nonnull fileName, const char * _Nullable passwordHexByteString);
|
|
1273
|
+
|
|
1274
|
+
|
|
1275
|
+
/**
|
|
1276
|
+
* @brief [SYNC] Opens a certificate store
|
|
1277
|
+
*
|
|
1278
|
+
* This function opensa certificate store and makes it the active certificate store used for the Engine. The function fails
|
|
1265
1279
|
* if the file already exists and it cannot be opened due to file corruption, password mismatch, or invalid content.
|
|
1266
1280
|
*
|
|
1267
1281
|
* No events are generated by this API call.
|
|
@@ -1612,6 +1626,34 @@ ENGAGE_API int engageIsCryptoFipsValidated(void);
|
|
|
1612
1626
|
*/
|
|
1613
1627
|
ENGAGE_API int engageSetCertStore(const uint8_t * _Nonnull buffer, size_t size, const char * _Nullable passwordHexByteString);
|
|
1614
1628
|
|
|
1629
|
+
/**
|
|
1630
|
+
* @brief [SYNC] Verifies a recorded RIFF file.
|
|
1631
|
+
*
|
|
1632
|
+
* This function verifies a signed, recorded RIFF file. It returns ENGAGE_RESULT_OK (0) on success.
|
|
1633
|
+
*
|
|
1634
|
+
* No events are generated by this API call.
|
|
1635
|
+
*
|
|
1636
|
+
* @param fn The path to the file.
|
|
1637
|
+
* @return ENGAGE_RESULT_OK if operation was successful.
|
|
1638
|
+
*/
|
|
1639
|
+
ENGAGE_API int engageVerifyRiff(const char * _Nonnull fn);
|
|
1640
|
+
|
|
1641
|
+
/**
|
|
1642
|
+
* @brief [SYNC] Returns a descriptor for a RIFF file
|
|
1643
|
+
*
|
|
1644
|
+
* Call this function to obtain a JSON descriptor of the RIFF file.
|
|
1645
|
+
*
|
|
1646
|
+
* No events are generated by this API call.
|
|
1647
|
+
*
|
|
1648
|
+
* @param fn The path to the file.
|
|
1649
|
+
* @return Zero-terminated string representing a JSON object describing the RIFF file
|
|
1650
|
+
* <P>
|
|
1651
|
+
* Example: @include[doc] examples/RiffDescriptor.json
|
|
1652
|
+
* </P>
|
|
1653
|
+
*/
|
|
1654
|
+
|
|
1655
|
+
ENGAGE_API const char * _Nonnull engageGetRiffDescriptor(const char * _Nonnull fn);
|
|
1656
|
+
|
|
1615
1657
|
// TODO: Engage compression/decompression functions not available at this time
|
|
1616
1658
|
#if 0
|
|
1617
1659
|
/**
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED