mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-11-18 10:21:01 +03:00
Fix get_special_prop() build failure
The cast of the size_t returned by strlcpy() to a uint64_t by the VERIFY3U can result in a build failure when CONFIG_FORTIFY_SOURCE is set. This is due to the additional hardening. Since the token is expected to always fit in strval the VERIFY3U has been removed. If somehow it doesn't, it will still be safely truncated. Reviewed-by: Tony Hutter <hutter2@llnl.gov> Reviewed-by: Don Brady <don.brady@delphix.com> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Issue #8999 Closes #9020
This commit is contained in:
parent
af7a5672c3
commit
446d08fba4
@ -423,13 +423,11 @@ get_special_prop(lua_State *state, dsl_dataset_t *ds, const char *dsname,
|
||||
case ZFS_PROP_RECEIVE_RESUME_TOKEN: {
|
||||
char *token = get_receive_resume_stats_impl(ds);
|
||||
|
||||
VERIFY3U(strlcpy(strval, token, ZAP_MAXVALUELEN),
|
||||
<, ZAP_MAXVALUELEN);
|
||||
(void) strlcpy(strval, token, ZAP_MAXVALUELEN);
|
||||
if (strcmp(strval, "") == 0) {
|
||||
char *childval = get_child_receive_stats(ds);
|
||||
|
||||
VERIFY3U(strlcpy(strval, childval, ZAP_MAXVALUELEN),
|
||||
<, ZAP_MAXVALUELEN);
|
||||
(void) strlcpy(strval, childval, ZAP_MAXVALUELEN);
|
||||
if (strcmp(strval, "") == 0)
|
||||
error = ENOENT;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user