bsd-user: OS-agnostic 64-bit SYSCTL types
Use existence of type as #ifdef condition rather than FreeBSD-specific version check, as suggested by Patrick Welche. Also handle the signed (CTLTYPE_S64) case identically to the unsigned (CTLTYPE_U64) case, per later patches in the FreeBSD ports tree (emulators/qemu-devel/files/patch-z-arm-bsd-user-001). Signed-off-by: Ed Maste <emaste@freebsd.org> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
This commit is contained in:
parent
38ebb396c9
commit
e6a3ee5f79
@ -211,10 +211,11 @@ static int sysctl_oldcvt(void *holdp, size_t holdlen, uint32_t kind)
|
|||||||
*(uint64_t *)holdp = tswap64(*(unsigned long *)holdp);
|
*(uint64_t *)holdp = tswap64(*(unsigned long *)holdp);
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
#if !defined(__FreeBSD_version) || __FreeBSD_version < 900031
|
#ifdef CTLTYPE_U64
|
||||||
case CTLTYPE_QUAD:
|
case CTLTYPE_S64:
|
||||||
#else
|
|
||||||
case CTLTYPE_U64:
|
case CTLTYPE_U64:
|
||||||
|
#else
|
||||||
|
case CTLTYPE_QUAD:
|
||||||
#endif
|
#endif
|
||||||
*(uint64_t *)holdp = tswap64(*(uint64_t *)holdp);
|
*(uint64_t *)holdp = tswap64(*(uint64_t *)holdp);
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user