src.nth.io/

summaryrefslogtreecommitdiff
path: root/main/local_screens.c
diff options
context:
space:
mode:
Diffstat (limited to 'main/local_screens.c')
-rw-r--r--main/local_screens.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/main/local_screens.c b/main/local_screens.c
index f25754d..5c72f26 100644
--- a/main/local_screens.c
+++ b/main/local_screens.c
@@ -199,6 +199,7 @@ esp_err_t local_screens_show_info(void)
// is on a 3 KiB stack and can't carry ~1.6 KiB of locals here. Single
// caller protected by display ownership, so static is fine.
static char vp_name[64];
+ static char mac_str[18];
static char scrypt[256];
static char lines[INFO_MAX_LINES][INFO_LINE_BYTES];
bool configured;
@@ -212,8 +213,10 @@ esp_err_t local_screens_show_info(void)
viewport_state_lock();
viewport_state_t *st = viewport_state_get();
strncpy(vp_name, st->viewport_name, sizeof(vp_name));
+ strncpy(mac_str, st->mac_str, sizeof(mac_str));
strncpy(scrypt, st->scrypted_url, sizeof(scrypt));
vp_name[sizeof(vp_name) - 1] = '\0';
+ mac_str[sizeof(mac_str) - 1] = '\0';
scrypt[sizeof(scrypt) - 1] = '\0';
configured = st->configured;
state = st->state;
@@ -237,8 +240,7 @@ esp_err_t local_screens_show_info(void)
// 8-char label is prefixed. Long names get visibly truncated; ok for
// an info dump on a 480-wide screen.
char host[32];
- if (vp_name[0]) snprintf(host, sizeof(host), "viewport-%.15s.local", vp_name);
- else snprintf(host, sizeof(host), "viewport.local");
+ snprintf(host, sizeof(host), "viewport-%.15s.local", vp_name);
char scrypt_short[32];
if (!scrypt[0]) {
@@ -292,7 +294,8 @@ esp_err_t local_screens_show_info(void)
snprintf(lines[n_lines++], INFO_LINE_BYTES, fmt, ##__VA_ARGS__); \
} while (0)
- ADD("name %s", vp_name[0] ? vp_name : "unset");
+ ADD("name %s", vp_name);
+ ADD("mac %s", mac_str);
ADD("host %s", host);
ADD("ip %s", (ip && ip[0]) ? ip : "no network");
ADD("state %s", state_str);