From 1256dbb6c36da35c3fe97ac82a7b8784e5760e88 Mon Sep 17 00:00:00 2001 From: Dean Lee Date: Wed, 16 Jun 2021 13:35:23 +0800 Subject: [PATCH] qt/api.cc: refactor create_jwt (#21281) * refactor * cleanup includes old-commit-hash: de56de78c81116c77b0a8ac3c85ed31f16e9aa6f --- selfdrive/ui/qt/api.cc | 30 +++++++++++------------------- selfdrive/ui/qt/api.h | 15 +++------------ 2 files changed, 14 insertions(+), 31 deletions(-) diff --git a/selfdrive/ui/qt/api.cc b/selfdrive/ui/qt/api.cc index 5ebadf238..6da0a0d8c 100644 --- a/selfdrive/ui/qt/api.cc +++ b/selfdrive/ui/qt/api.cc @@ -1,16 +1,15 @@ #include "selfdrive/ui/qt/api.h" +#include +#include +#include + +#include #include #include #include #include -#include -#include #include -#include -#include -#include -#include #include "selfdrive/common/params.h" #include "selfdrive/common/util.h" @@ -44,21 +43,14 @@ QByteArray CommaApi::rsa_sign(const QByteArray &data) { return sig; } -QString CommaApi::create_jwt(const QVector> &payloads, int expiry) { - QString dongle_id = QString::fromStdString(Params().get("DongleId")); - - QJsonObject header; - header.insert("alg", "RS256"); - - QJsonObject payload; - payload.insert("identity", dongle_id); +QString CommaApi::create_jwt(const QJsonObject &payloads, int expiry) { + QJsonObject header = {{"alg", "RS256"}}; + QString dongle_id = QString::fromStdString(Params().get("DongleId")); auto t = QDateTime::currentSecsSinceEpoch(); - payload.insert("nbf", t); - payload.insert("iat", t); - payload.insert("exp", t + expiry); - for (auto &load : payloads) { - payload.insert(load.first, load.second); + QJsonObject payload = {{"identity", dongle_id}, {"nbf", t}, {"iat", t}, {"exp", t + expiry}}; + for (auto it = payloads.begin(); it != payloads.end(); ++it) { + payload.insert(it.key(), it.value()); } auto b64_opts = QByteArray::Base64UrlEncoding | QByteArray::OmitTrailingEquals; diff --git a/selfdrive/ui/qt/api.h b/selfdrive/ui/qt/api.h index 71fd9b868..550855ecf 100644 --- a/selfdrive/ui/qt/api.h +++ b/selfdrive/ui/qt/api.h @@ -1,25 +1,16 @@ #pragma once -#include -#include -#include - -#include -#include +#include #include -#include -#include #include -#include -#include -#include +#include class CommaApi : public QObject { Q_OBJECT public: static QByteArray rsa_sign(const QByteArray &data); - static QString create_jwt(const QVector> &payloads = {}, int expiry = 3600); + static QString create_jwt(const QJsonObject &payloads = {}, int expiry = 3600); }; /**