summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2023-05-10 00:57:04 +0200
committerChristian Grothoff <christian@grothoff.org>2023-05-10 00:57:04 +0200
commit3ebd0a70b2bba2e64615c0973477a610e117c97a (patch)
tree6b53fdec52a59f57190ff6b31e972c82054b9c0a
parentaedd13a77856ebc9344643571d9e13cc93297b05 (diff)
downloadexchange-3ebd0a70b2bba2e64615c0973477a610e117c97a.tar.gz
exchange-3ebd0a70b2bba2e64615c0973477a610e117c97a.tar.bz2
exchange-3ebd0a70b2bba2e64615c0973477a610e117c97a.zip
fix 0-length VLAs
-rw-r--r--src/kyclogic/kyclogic_api.c9
-rw-r--r--src/lib/exchange_api_handle.c16
2 files changed, 13 insertions, 12 deletions
diff --git a/src/kyclogic/kyclogic_api.c b/src/kyclogic/kyclogic_api.c
index 0ef1295ed..65f3f3ba3 100644
--- a/src/kyclogic/kyclogic_api.c
+++ b/src/kyclogic/kyclogic_api.c
@@ -780,10 +780,11 @@ TALER_KYCLOGIC_kyc_init (const struct GNUNET_CONFIGURATION_Handle *cfg)
TALER_KYCLOGIC_kyc_done ();
return GNUNET_SYSERR;
}
- qsort (kyc_triggers,
- num_kyc_triggers,
- sizeof (struct TALER_KYCLOGIC_KycTrigger *),
- &sort_by_timeframe);
+ if (0 != num_kyc_triggers)
+ qsort (kyc_triggers,
+ num_kyc_triggers,
+ sizeof (struct TALER_KYCLOGIC_KycTrigger *),
+ &sort_by_timeframe);
return GNUNET_OK;
}
diff --git a/src/lib/exchange_api_handle.c b/src/lib/exchange_api_handle.c
index f6a5e979d..0e8046305 100644
--- a/src/lib/exchange_api_handle.c
+++ b/src/lib/exchange_api_handle.c
@@ -1366,10 +1366,10 @@ keys_completed_cb (void *cls,
kd.num_denom_keys);
/* First make a shallow copy, we then need another pass for the RSA key... */
- memcpy (kd.denom_keys,
- kd_old.denom_keys,
- kd_old.num_denom_keys * sizeof (struct
- TALER_EXCHANGE_DenomPublicKey));
+ GNUNET_memcpy (kd.denom_keys,
+ kd_old.denom_keys,
+ kd_old.num_denom_keys * sizeof (struct
+ TALER_EXCHANGE_DenomPublicKey));
for (unsigned int i = 0; i<kd_old.num_denom_keys; i++)
TALER_denom_pub_deep_copy (&kd.denom_keys[i].key,
@@ -1391,10 +1391,10 @@ keys_completed_cb (void *cls,
GNUNET_array_grow (anew->denom_keys,
anew->num_denom_keys,
aold->num_denom_keys);
- memcpy (anew->denom_keys,
- aold->denom_keys,
- aold->num_denom_keys
- * sizeof (struct TALER_EXCHANGE_AuditorDenominationInfo));
+ GNUNET_memcpy (anew->denom_keys,
+ aold->denom_keys,
+ aold->num_denom_keys
+ * sizeof (struct TALER_EXCHANGE_AuditorDenominationInfo));
}
/* Old auditors got just copied into new ones. */