virNWFilterSnoopLeaseFileLoad: Don't typecast 'ipl.timeout'

Use a temporary variable to avoid memory alignment issues on ARM:

../src/nwfilter/nwfilter_dhcpsnoop.c: In function ‘virNWFilterSnoopLeaseFileLoad’:
../src/nwfilter/nwfilter_dhcpsnoop.c:1745:20: error: cast increases required alignment of target type [-Werror=cast-align]
 1745 |                    (unsigned long long *) &ipl.timeout,
      |

Fixes: 0d278aa089
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
This commit is contained in:
Peter Krempa 2023-01-06 16:22:42 +01:00
parent 8858a3cc35
commit bb80344fd0

View File

@ -1733,6 +1733,8 @@ virNWFilterSnoopLeaseFileLoad(void)
fp = fopen(LEASEFILE, "r");
time(&now);
while (fp && fgets(line, sizeof(line), fp)) {
unsigned long long timeout;
if (line[strlen(line)-1] != '\n') {
virReportError(VIR_ERR_INTERNAL_ERROR,
_("virNWFilterSnoopLeaseFileLoad lease file "
@ -1742,13 +1744,13 @@ virNWFilterSnoopLeaseFileLoad(void)
ln++;
/* key len 54 = "VMUUID"+'-'+"MAC" */
if (sscanf(line, "%llu %54s %15s %15s",
(unsigned long long *) &ipl.timeout,
ifkey, ipstr, srvstr) < 4) {
&timeout, ifkey, ipstr, srvstr) < 4) {
virReportError(VIR_ERR_INTERNAL_ERROR,
_("virNWFilterSnoopLeaseFileLoad lease file "
"line %d corrupt"), ln);
break;
}
ipl.timeout = timeout;
if (ipl.timeout && ipl.timeout < now)
continue;
req = virNWFilterSnoopReqGetByIFKey(ifkey);