@@ -291,6 +291,7 @@ bool ChargePoint::start()
291291 m_data_transfer_manager =
292292 std::make_unique<DataTransferManager>(m_events_handler, m_messages_converter, *m_msg_dispatcher, *m_msg_sender);
293293 m_maintenance_manager = std::make_unique<MaintenanceManager>(m_stack_config,
294+ m_internal_config,
294295 m_events_handler,
295296 *m_worker_pool.get (),
296297 m_messages_converter,
@@ -645,19 +646,19 @@ bool ChargePoint::notifyFirmwareUpdateStatus(bool success)
645646
646647// Security extensions
647648
648- /* * @copydoc bool IChargePoint::logSecurityEvent::logSecurityEvent (const std::string&, const std::string&, bool) */
649+ /* * @copydoc bool IChargePoint::logSecurityEvent(const std::string&, const std::string&, bool) */
649650bool ChargePoint::logSecurityEvent (const std::string& type, const std::string& message, bool critical)
650651{
651652 return m_security_manager.logSecurityEvent (type, message, critical);
652653}
653654
654- /* * @copydoc bool IChargePoint::ISecurityManager:: clearSecurityEvents() */
655+ /* * @copydoc bool IChargePoint::clearSecurityEvents() */
655656bool ChargePoint::clearSecurityEvents ()
656657{
657658 return m_security_manager.clearSecurityEvents ();
658659}
659660
660- /* * @copydoc bool IChargePoint::ISecurityManager:: signCertificate(const ocpp::x509::CertificateRequest&) */
661+ /* * @copydoc bool IChargePoint::signCertificate(const ocpp::x509::CertificateRequest&) */
661662bool ChargePoint::signCertificate (const ocpp::x509::CertificateRequest& csr)
662663{
663664 bool ret = false ;
@@ -688,7 +689,7 @@ bool ChargePoint::signCertificate(const ocpp::x509::CertificateRequest& csr)
688689 return ret;
689690}
690691
691- /* * @copydoc bool IChargePoint::ISecurityManager:: signCertificate() */
692+ /* * @copydoc bool IChargePoint::signCertificate() */
692693bool ChargePoint::signCertificate ()
693694{
694695 bool ret = false ;
@@ -719,6 +720,30 @@ bool ChargePoint::signCertificate()
719720 return ret;
720721}
721722
723+ /* * @copydoc bool IChargePoint::notifySignedFirmwareUpdateStatus(ocpp::types::FirmwareStatusEnumType) */
724+ bool ChargePoint::notifySignedFirmwareUpdateStatus (ocpp::types::FirmwareStatusEnumType status)
725+ {
726+ bool ret = false ;
727+
728+ if (m_status_manager)
729+ {
730+ if (m_status_manager->getRegistrationStatus () != RegistrationStatus::Rejected)
731+ {
732+ ret = m_maintenance_manager->notifySignedFirmwareUpdateStatus (status);
733+ }
734+ else
735+ {
736+ LOG_ERROR << " Charge Point has not been accepted by Central System" ;
737+ }
738+ }
739+ else
740+ {
741+ LOG_ERROR << " Stack is not started" ;
742+ }
743+
744+ return ret;
745+ }
746+
722747/* * @copydoc void RpcClient::IListener::rpcClientConnected() */
723748void ChargePoint::rpcClientConnected ()
724749{
@@ -994,7 +1019,7 @@ bool ChargePoint::doConnect()
9941019 else
9951020 {
9961021 // Use internal certificates
997- credentials.server_certificate_ca = m_security_manager.getCentralSystemCaCertificates ( );
1022+ credentials.server_certificate_ca = m_security_manager.getCaCertificates (CertificateUseEnumType::CentralSystemRootCertificate );
9981023 if (security_profile == 3 )
9991024 {
10001025 std::string encrypted_private_key;
0 commit comments