Create hostapd configuration file
(self)
| 2534 | self.ap_logger.error("Failed to start AP services") |
| 2535 | self._cleanup_ap_mode() |
| 2536 | return False |
| 2537 | |
| 2538 | except Exception as e: |
| 2539 | self.logger.error(f"Error starting AP mode: {e}") |
| 2540 | self.ap_logger.error(f"Exception during AP mode startup: {e}") |
| 2541 | self.ap_logger.error(f"Error type: {type(e).__name__}") |
| 2542 | import traceback |
| 2543 | self.ap_logger.error(f"Traceback: {traceback.format_exc()}") |
| 2544 | self._cleanup_ap_mode() |
| 2545 | return False |
| 2546 | |
| 2547 | def stop_ap_mode(self): |
| 2548 | """Stop Access Point mode""" |
| 2549 | if not self.ap_mode_active: |
| 2550 | self.ap_logger.info("AP mode stop requested but not currently active") |
| 2551 | return True |
| 2552 | |
| 2553 | try: |
| 2554 | self.logger.info("Stopping AP mode...") |
| 2555 | self.ap_logger.info("Stopping AP mode...") |
| 2556 | |
| 2557 | # Calculate uptime |
| 2558 | if self.ap_mode_start_time: |
| 2559 | uptime = time.time() - self.ap_mode_start_time |
| 2560 | self.ap_logger.info(f"AP mode uptime: {uptime:.1f} seconds ({uptime/60:.1f} minutes)") |
| 2561 | |
| 2562 | # Log client statistics |
| 2563 | if hasattr(self, 'ap_clients_count'): |
| 2564 | self.ap_logger.info(f"Total clients connected during session: {self.ap_clients_count}") |
| 2565 | |
| 2566 | # Stop services |
| 2567 | self.ap_logger.info("Stopping AP services...") |
| 2568 | self._stop_ap_services() |
| 2569 | |
| 2570 | # Cleanup interface |
| 2571 | self.ap_logger.info("Cleaning up network interface...") |
no test coverage detected