@@ -322,6 +322,9 @@ nlohmann::json toJson(const pbmessages::NetworkChange_Network& nc, pbmessages::N
322322 }
323323 out[" capabilities" ] = OSUtils::jsonParse (caps);
324324 }
325+ else {
326+ out[" capabilities" ] = " []" ;
327+ }
325328 out[" mtu" ] = nc.mtu ();
326329 out[" multicastLimit" ] = nc.multicast_limit ();
327330 out[" private" ] = nc.is_private ();
@@ -342,7 +345,12 @@ nlohmann::json toJson(const pbmessages::NetworkChange_Network& nc, pbmessages::N
342345 out[" rules" ] = OSUtils::jsonParse (rules);
343346 }
344347 }
348+ else {
349+ out[" rules" ] = " []" ;
350+ }
351+
345352 out[" rulesSource" ] = nc.rules_source ();
353+
346354 if (nc.has_tags ()) {
347355 std::string tags = nc.tags ();
348356 if (tags == " []" ) {
@@ -498,14 +506,38 @@ nlohmann::json toJson(const pbmessages::MemberChange_Member& mc, pbmessages::Mem
498506 out[" noAutoAssignIps" ] = mc.no_auto_assign_ips ();
499507 out[" ssoExempt" ] = mc.sso_exempt ();
500508 out[" authenticationExpiryTime" ] = mc.auth_expiry_time ();
501- out[" capabilities" ] = OSUtils::jsonParse (mc.capabilities ());
509+ if (mc.has_capabilities ()) {
510+ std::string caps = mc.capabilities ();
511+ if (caps == " null" ) {
512+ out[" capabilities" ] = " []" ;
513+ }
514+ else {
515+ out[" capabilities" ] = OSUtils::jsonParse (caps);
516+ }
517+ }
518+ else {
519+ out[" capabilities" ] = " []" ;
520+ }
502521 out[" creationTime" ] = mc.creation_time ();
503522 out[" identity" ] = mc.identity ();
504523 out[" lastAuthorizedTime" ] = mc.last_authorized_time ();
505524 out[" lastDeauthorizedTime" ] = mc.last_deauthorized_time ();
506525 out[" remoteTraceLevel" ] = mc.remote_trace_level ();
507526 out[" revision" ] = mc.revision ();
508- out[" tags" ] = OSUtils::jsonParse (mc.tags ());
527+
528+ if (mc.has_tags ()) {
529+ std::string tags = mc.tags ();
530+ if (tags == " []" ) {
531+ out[" tags" ] = " []" ;
532+ }
533+ else {
534+ out[" tags" ] = OSUtils::jsonParse (tags);
535+ }
536+ }
537+ else {
538+ out[" tags" ] = " []" ;
539+ }
540+
509541 out[" versionMajor" ] = mc.version_major ();
510542 out[" versionMinor" ] = mc.version_minor ();
511543 out[" versionRev" ] = mc.version_rev ();
0 commit comments