hs20-osu-client: Check snprintf result to avoid compiler warnings
Fix false positive warnings by gcc 8.3.0. Signed-off-by: Masashi Honma <masashi.honma@gmail.com>
This commit is contained in:
parent
0de46d8a66
commit
18f4fc43f2
1 changed files with 22 additions and 5 deletions
|
@ -1588,6 +1588,7 @@ static void set_pps_cred_digital_cert(struct hs20_osu_client *ctx, int id,
|
||||||
xml_node_t *node, const char *fqdn)
|
xml_node_t *node, const char *fqdn)
|
||||||
{
|
{
|
||||||
char buf[200], dir[200];
|
char buf[200], dir[200];
|
||||||
|
int res;
|
||||||
|
|
||||||
wpa_printf(MSG_INFO, "- Credential/DigitalCertificate");
|
wpa_printf(MSG_INFO, "- Credential/DigitalCertificate");
|
||||||
|
|
||||||
|
@ -1599,14 +1600,20 @@ static void set_pps_cred_digital_cert(struct hs20_osu_client *ctx, int id,
|
||||||
wpa_printf(MSG_INFO, "Failed to set username");
|
wpa_printf(MSG_INFO, "Failed to set username");
|
||||||
}
|
}
|
||||||
|
|
||||||
snprintf(buf, sizeof(buf), "%s/SP/%s/client-cert.pem", dir, fqdn);
|
res = os_snprintf(buf, sizeof(buf), "%s/SP/%s/client-cert.pem", dir,
|
||||||
|
fqdn);
|
||||||
|
if (os_snprintf_error(sizeof(buf), res))
|
||||||
|
return;
|
||||||
if (os_file_exists(buf)) {
|
if (os_file_exists(buf)) {
|
||||||
if (set_cred_quoted(ctx->ifname, id, "client_cert", buf) < 0) {
|
if (set_cred_quoted(ctx->ifname, id, "client_cert", buf) < 0) {
|
||||||
wpa_printf(MSG_INFO, "Failed to set client_cert");
|
wpa_printf(MSG_INFO, "Failed to set client_cert");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
snprintf(buf, sizeof(buf), "%s/SP/%s/client-key.pem", dir, fqdn);
|
res = os_snprintf(buf, sizeof(buf), "%s/SP/%s/client-key.pem", dir,
|
||||||
|
fqdn);
|
||||||
|
if (os_snprintf_error(sizeof(buf), res))
|
||||||
|
return;
|
||||||
if (os_file_exists(buf)) {
|
if (os_file_exists(buf)) {
|
||||||
if (set_cred_quoted(ctx->ifname, id, "private_key", buf) < 0) {
|
if (set_cred_quoted(ctx->ifname, id, "private_key", buf) < 0) {
|
||||||
wpa_printf(MSG_INFO, "Failed to set private_key");
|
wpa_printf(MSG_INFO, "Failed to set private_key");
|
||||||
|
@ -1620,6 +1627,7 @@ static void set_pps_cred_realm(struct hs20_osu_client *ctx, int id,
|
||||||
{
|
{
|
||||||
char *str = xml_node_get_text(ctx->xml, node);
|
char *str = xml_node_get_text(ctx->xml, node);
|
||||||
char buf[200], dir[200];
|
char buf[200], dir[200];
|
||||||
|
int res;
|
||||||
|
|
||||||
if (str == NULL)
|
if (str == NULL)
|
||||||
return;
|
return;
|
||||||
|
@ -1634,7 +1642,9 @@ static void set_pps_cred_realm(struct hs20_osu_client *ctx, int id,
|
||||||
|
|
||||||
if (getcwd(dir, sizeof(dir)) == NULL)
|
if (getcwd(dir, sizeof(dir)) == NULL)
|
||||||
return;
|
return;
|
||||||
snprintf(buf, sizeof(buf), "%s/SP/%s/aaa-ca.pem", dir, fqdn);
|
res = os_snprintf(buf, sizeof(buf), "%s/SP/%s/aaa-ca.pem", dir, fqdn);
|
||||||
|
if (os_snprintf_error(sizeof(buf), res))
|
||||||
|
return;
|
||||||
if (os_file_exists(buf)) {
|
if (os_file_exists(buf)) {
|
||||||
if (set_cred_quoted(ctx->ifname, id, "ca_cert", buf) < 0) {
|
if (set_cred_quoted(ctx->ifname, id, "ca_cert", buf) < 0) {
|
||||||
wpa_printf(MSG_INFO, "Failed to set CA cert");
|
wpa_printf(MSG_INFO, "Failed to set CA cert");
|
||||||
|
@ -2717,6 +2727,8 @@ static int cmd_pol_upd(struct hs20_osu_client *ctx, const char *address,
|
||||||
|
|
||||||
if (!pps_fname) {
|
if (!pps_fname) {
|
||||||
char buf[256];
|
char buf[256];
|
||||||
|
int res;
|
||||||
|
|
||||||
wpa_printf(MSG_INFO, "Determining PPS file based on Home SP information");
|
wpa_printf(MSG_INFO, "Determining PPS file based on Home SP information");
|
||||||
if (address && os_strncmp(address, "fqdn=", 5) == 0) {
|
if (address && os_strncmp(address, "fqdn=", 5) == 0) {
|
||||||
wpa_printf(MSG_INFO, "Use requested FQDN from command line");
|
wpa_printf(MSG_INFO, "Use requested FQDN from command line");
|
||||||
|
@ -2737,8 +2749,13 @@ static int cmd_pol_upd(struct hs20_osu_client *ctx, const char *address,
|
||||||
"SP/%s/pps.xml", ctx->fqdn);
|
"SP/%s/pps.xml", ctx->fqdn);
|
||||||
pps_fname = pps_fname_buf;
|
pps_fname = pps_fname_buf;
|
||||||
|
|
||||||
os_snprintf(ca_fname_buf, sizeof(ca_fname_buf), "SP/%s/ca.pem",
|
res = os_snprintf(ca_fname_buf, sizeof(ca_fname_buf),
|
||||||
buf);
|
"SP/%s/ca.pem", buf);
|
||||||
|
if (os_snprintf_error(sizeof(ca_fname_buf), res)) {
|
||||||
|
os_free(ctx->fqdn);
|
||||||
|
ctx->fqdn = NULL;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
ca_fname = ca_fname_buf;
|
ca_fname = ca_fname_buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue