Project homepage Mailing List  Warmcat.com  API Docs  Github Mirror 
    npro  
 Modern all-safe Rust Network Protocol library supporting h1, h2, h3, ws, wt sans-IO and with socket IO + tls
git clone https://npro.rs/repo/npro
 
root / src / device / CMakeLists.txt
Author[]google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.c...> 2025-11-30 16:47 UTC
Committer[]Andy Green <andy@warmcat.com> 2025-11-30 16:48 UTC
Treebf674590376ae90a5157913f258f928e0dab2645   Raw Patch
 
Fix compilation errors in p-http-api.c
Fix compilation errors in p-http-api.c

- Added `saip_pcon_create` declaration to `src/power/p-private.h` and implementation in `src/power/p-utils.c` to resolve implicit declaration error.
- Corrected `lws_sul_schedule` call in `src/power/p-http-api.c` to use `lws_ss_get_context()` instead of passing the handle directly, resolving incompatible pointer type error.
diff --git a/src/power/p-http-api.c b/src/power/p-http-api.c index fc58279..986df3a 100644 --- a/src/power/p-http-api.c +++ b/src/power/p-http-api.c @@ -517,7 +517,7 @@ power_off: /* * OK this is it, schedule it to happen */ - lws_sul_schedule(lws_ss_from_user(g), 0, + lws_sul_schedule(lws_ss_get_context(lws_ss_from_user(g)), 0, &pc->sul_delay_off, saip_sul_action_power_off, SAI_POWERDOWN_HOLDOFF_US); diff --git a/src/power/p-private.h b/src/power/p-private.h index 63013bc..40d5742 100644 --- a/src/power/p-private.h +++ b/src/power/p-private.h @@ -187,6 +187,9 @@ saip_queue_stay_info(saip_server_t *sps); saip_pcon_t * saip_pcon_by_name(struct sai_power *power, const char *name); +saip_pcon_t * +saip_pcon_create(struct sai_power *power, const char *name); + int saip_parse_tasmota_status(tasmota_parse_t *tp); diff --git a/src/power/p-utils.c b/src/power/p-utils.c index 6846dc8..b4d3480 100644 --- a/src/power/p-utils.c +++ b/src/power/p-utils.c @@ -39,3 +39,22 @@ saip_pcon_by_name(struct sai_power *power, const char *name) return NULL; } + +saip_pcon_t * +saip_pcon_create(struct sai_power *power, const char *name) +{ + saip_pcon_t *pc = lwsac_use_zero(&power->ac_conf_head, sizeof(*pc), 4096); + if (!pc) + return NULL; + + pc->name = lwsac_use(&power->ac_conf_head, strlen(name) + 1, 512); + if (!pc->name) + return NULL; + strcpy((char *)pc->name, name); + + lws_dll2_add_tail(&pc->list, &power->sai_pcon_owner); + + lwsl_notice("%s: Created dynamic PCON '%s'\n", __func__, name); + + return pc; +}
Page fetched 0s ago, creation time: 7ms (vhost etag hits: 0%, cache hits: 0%)