Merge branch 'integration' into memory_api

This commit is contained in:
J. Nick Koston 2025-07-25 13:28:11 -10:00
commit 254c70a420
No known key found for this signature in database
3 changed files with 8 additions and 0 deletions

View File

@ -1578,10 +1578,12 @@ bool APIConnection::send_buffer(ProtoWriteBuffer buffer, uint8_t message_type) {
// Do not set last_traffic_ on send
return true;
}
#ifdef USE_API_PASSWORD
void APIConnection::on_unauthenticated_access() {
this->on_fatal_error();
ESP_LOGD(TAG, "%s access without authentication", this->get_client_combined_info().c_str());
}
#endif
void APIConnection::on_no_setup_connection() {
this->on_fatal_error();
ESP_LOGD(TAG, "%s access without full connection", this->get_client_combined_info().c_str());

View File

@ -232,7 +232,9 @@ class APIConnection : public APIServerConnection {
}
uint8_t get_log_subscription_level() const { return this->flags_.log_subscription; }
void on_fatal_error() override;
#ifdef USE_API_PASSWORD
void on_unauthenticated_access() override;
#endif
void on_no_setup_connection() override;
ProtoWriteBuffer create_buffer(uint32_t reserve_size) override {
// FIXME: ensure no recursive writes can happen

View File

@ -859,7 +859,9 @@ class ProtoService {
virtual bool is_authenticated() = 0;
virtual bool is_connection_setup() = 0;
virtual void on_fatal_error() = 0;
#ifdef USE_API_PASSWORD
virtual void on_unauthenticated_access() = 0;
#endif
virtual void on_no_setup_connection() = 0;
/**
* Create a buffer with a reserved size.
@ -900,10 +902,12 @@ class ProtoService {
if (!this->check_connection_setup_()) {
return false;
}
#ifdef USE_API_PASSWORD
if (!this->is_authenticated()) {
this->on_unauthenticated_access();
return false;
}
#endif
return true;
}
};