* @brief Appends the SSL/TLS section (toggle, protocol, peer verification, depth). */
| 2267 | * @brief Appends the SSL/TLS section (toggle, protocol, peer verification, depth). |
| 2268 | */ |
| 2269 | void DataModel::ProjectEditor::buildMqttSslSection(const MQTT::Publisher& pub, bool enabled) |
| 2270 | { |
| 2271 | auto* sslHdr = new QStandardItem(); |
| 2272 | sslHdr->setData(SectionHeader, WidgetType); |
| 2273 | sslHdr->setData(tr("SSL / TLS"), PlaceholderValue); |
| 2274 | sslHdr->setData("qrc:/icons/project-editor/model/mqtt-ssl.svg", ParameterIcon); |
| 2275 | m_mqttPublisherModel->appendRow(sslHdr); |
| 2276 | |
| 2277 | auto* sslItem = new QStandardItem(); |
| 2278 | sslItem->setEditable(true); |
| 2279 | sslItem->setData(enabled, Active); |
| 2280 | sslItem->setData(CheckBox, WidgetType); |
| 2281 | sslItem->setData(pub.sslEnabled(), EditableValue); |
| 2282 | sslItem->setData(kMqttPublisher_SslEnabled, ParameterType); |
| 2283 | sslItem->setData(tr("Use SSL/TLS"), ParameterName); |
| 2284 | sslItem->setData(tr("Tunnel the broker connection over TLS"), ParameterDescription); |
| 2285 | m_mqttPublisherModel->appendRow(sslItem); |
| 2286 | |
| 2287 | if (!pub.sslEnabled()) |
| 2288 | return; |
| 2289 | |
| 2290 | auto* sslProtoItem = new QStandardItem(); |
| 2291 | sslProtoItem->setEditable(true); |
| 2292 | sslProtoItem->setData(enabled, Active); |
| 2293 | sslProtoItem->setData(ComboBox, WidgetType); |
| 2294 | sslProtoItem->setData(pub.sslProtocols(), ComboBoxData); |
| 2295 | sslProtoItem->setData(static_cast<int>(pub.sslProtocol()), EditableValue); |
| 2296 | sslProtoItem->setData(kMqttPublisher_SslProtocol, ParameterType); |
| 2297 | sslProtoItem->setData(tr("Protocol"), ParameterName); |
| 2298 | sslProtoItem->setData(tr("Negotiated TLS protocol family"), ParameterDescription); |
| 2299 | m_mqttPublisherModel->appendRow(sslProtoItem); |
| 2300 | |
| 2301 | auto* peerModeItem = new QStandardItem(); |
| 2302 | peerModeItem->setEditable(true); |
| 2303 | peerModeItem->setData(enabled, Active); |
| 2304 | peerModeItem->setData(ComboBox, WidgetType); |
| 2305 | peerModeItem->setData(pub.peerVerifyModes(), ComboBoxData); |
| 2306 | peerModeItem->setData(static_cast<int>(pub.peerVerifyMode()), EditableValue); |
| 2307 | peerModeItem->setData(kMqttPublisher_PeerVerifyMode, ParameterType); |
| 2308 | peerModeItem->setData(tr("Peer Verify"), ParameterName); |
| 2309 | peerModeItem->setData(tr("How strictly the broker's certificate chain is validated"), |
| 2310 | ParameterDescription); |
| 2311 | m_mqttPublisherModel->appendRow(peerModeItem); |
| 2312 | |
| 2313 | auto* peerDepthItem = new QStandardItem(); |
| 2314 | peerDepthItem->setEditable(true); |
| 2315 | peerDepthItem->setData(enabled, Active); |
| 2316 | peerDepthItem->setData(IntField, WidgetType); |
| 2317 | peerDepthItem->setData(pub.peerVerifyDepth(), EditableValue); |
| 2318 | peerDepthItem->setData(kMqttPublisher_PeerVerifyDepth, ParameterType); |
| 2319 | peerDepthItem->setData(tr("Verify Depth"), ParameterName); |
| 2320 | peerDepthItem->setData(tr("Maximum certificate chain length accepted (0 = unlimited)"), |
| 2321 | ParameterDescription); |
| 2322 | m_mqttPublisherModel->appendRow(peerDepthItem); |
| 2323 | } |
| 2324 | #endif |
| 2325 | |
| 2326 | /** |
nothing calls this directly
no test coverage detected