Avoid updating IPv4 MS entry if it failed to register

This commit is contained in:
Hanicef 2024-05-26 13:00:16 +02:00
parent a75fbd229e
commit 19500742d2

View file

@ -486,20 +486,23 @@ int
HMS_unlist (void) HMS_unlist (void)
{ {
struct HMS_buffer *hms; struct HMS_buffer *hms;
int ok; int ok = 0;
hms = HMS_connect(PROTO_V4, "servers/%s/unlist", hms_server_token); if (hms_server_token)
{
hms = HMS_connect(PROTO_V4, "servers/%s/unlist", hms_server_token);
if (! hms) if (! hms)
return 0; return 0;
curl_easy_setopt(hms->curl, CURLOPT_POST, 1); curl_easy_setopt(hms->curl, CURLOPT_POST, 1);
curl_easy_setopt(hms->curl, CURLOPT_POSTFIELDSIZE, 0); curl_easy_setopt(hms->curl, CURLOPT_POSTFIELDSIZE, 0);
ok = HMS_do(hms); ok = HMS_do(hms);
HMS_end(hms); HMS_end(hms);
free(hms_server_token); free(hms_server_token);
}
#ifndef NO_IPV6 #ifndef NO_IPV6
if (hms_server_token_ipv6 && hms_allow_ipv6) if (hms_server_token_ipv6 && hms_allow_ipv6)
@ -526,18 +529,13 @@ int
HMS_update (void) HMS_update (void)
{ {
struct HMS_buffer *hms; struct HMS_buffer *hms;
int ok; int ok = 0;
char post[256]; char post[256];
char *title; char *title;
hms = HMS_connect(PROTO_V4, "servers/%s/update", hms_server_token); title = curl_easy_escape(NULL, cv_servername.string, 0);
if (! hms)
return 0;
title = curl_easy_escape(hms->curl, cv_servername.string, 0);
snprintf(post, sizeof post, snprintf(post, sizeof post,
"title=%s", "title=%s",
@ -546,10 +544,18 @@ HMS_update (void)
curl_free(title); curl_free(title);
curl_easy_setopt(hms->curl, CURLOPT_POSTFIELDS, post); if (hms_server_token)
{
hms = HMS_connect(PROTO_V4, "servers/%s/update", hms_server_token);
ok = HMS_do(hms); if (! hms)
HMS_end(hms); return 0;
curl_easy_setopt(hms->curl, CURLOPT_POSTFIELDS, post);
ok = HMS_do(hms);
HMS_end(hms);
}
#ifndef NO_IPV6 #ifndef NO_IPV6
if (hms_server_token_ipv6 && hms_allow_ipv6) if (hms_server_token_ipv6 && hms_allow_ipv6)