View | Details | Raw Unified | Return to bug 270189 | Differences between
and this patch

Collapse All | Expand All

(-)b/emulators/virtualbox-ose/Makefile (-4 / +17 lines)
Lines 217-233 EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-src_VBox_Devices_PC_DevFwCommon.cpp Link Here
217
.endif
217
.endif
218
218
219
.if ${CHOSEN_COMPILER_TYPE} == clang
219
.if ${CHOSEN_COMPILER_TYPE} == clang
220
# llvm10 in FreeBSD before r364284 miscompiles virtualbox 6.1 causing errors.
220
# 1) llvm10 in FreeBSD before r364284 miscompiles virtualbox 6.1 causing errors.
221
# force llvm11 from ports
221
# 2) llvm15 in FreeBSD miscompiles virtualbox 6.1 causing errors: PR#270189.
222
# Force llvm from ports.
222
.if ${OPSYS} == FreeBSD && \
223
.if ${OPSYS} == FreeBSD && \
223
    (${OSVERSION} < 1203502 || ${OSVERSION} >= 1300000 && ${OSVERSION} < 1300109)
224
    (${OSVERSION} < 1203502 || ${OSVERSION} >= 1300000 && ${OSVERSION} < 1300109 || \
225
    ${OSVERSION} >= 1302505 && ${OSVERSION} < 1400000 || ${OSVERSION} >= 1400079)
226
# USES must be before .include <bsd.port.pre.mk>, but CHOSEN_COMPILER_TYPE must be after.
227
# This is a workaround with possibility to define different llvm via VBOX_LLVM_VER in make.conf.
228
#USES+=		llvm:min=11,max=14
229
#CC=		clang${LLVM_VERSION}
230
#CXX=		clang++${LLVM_VERSION}
224
BUILD_DEPENDS+=	clang${VBOX_LLVM_VER}:devel/llvm${VBOX_LLVM_VER}
231
BUILD_DEPENDS+=	clang${VBOX_LLVM_VER}:devel/llvm${VBOX_LLVM_VER}
225
CC=		clang${VBOX_LLVM_VER}
232
CC=		clang${VBOX_LLVM_VER}
226
CXX=		clang++${VBOX_LLVM_VER}
233
CXX=		clang++${VBOX_LLVM_VER}
227
VBOX_LLVM_VER?=	11
234
.if ${LLVM_DEFAULT} < 11 || ${LLVM_DEFAULT} > 14
235
VBOX_LLVM_VER?=	14
236
.else
237
VBOX_LLVM_VER?=	${LLVM_DEFAULT}
238
.endif
228
.endif
239
.endif
229
PATCH_DEPENDS+=	${LOCALBASE}/share/kBuild/tools/GXX3.kmk:devel/kBuild
240
PATCH_DEPENDS+=	${LOCALBASE}/share/kBuild/tools/GXX3.kmk:devel/kBuild
230
EXTRA_PATCHES+=	${PATCHDIR}/extrapatch-src-VBox-Devices-PC-ipxe-Makefile.kmk
241
EXTRA_PATCHES+=	${PATCHDIR}/extrapatch-src-VBox-Devices-PC-ipxe-Makefile.kmk
242
EXTRA_PATCHES+=	${PATCHDIR}/extrapatch-src_VBox_Devices_PC_ipxe_src_core_settings.c
243
EXTRA_PATCHES+=	${PATCHDIR}/extrapatch-src_VBox_Devices_PC_ipxe_src_net_tcp_httpcore.c
231
.endif
244
.endif
232
245
233
.if ${PYTHON_MAJOR_VER} >= 3
246
.if ${PYTHON_MAJOR_VER} >= 3
(-)b/emulators/virtualbox-ose/files/extrapatch-src_VBox_Devices_PC_ipxe_src_core_settings.c (+11 lines)
Added Link Here
1
--- src/VBox/Devices/PC/ipxe/src/core/settings.c.orig
2
+++ src/VBox/Devices/PC/ipxe/src/core/settings.c
3
@@ -286,7 +286,7 @@
4
 						     const char *name ) {
5
 	struct {
6
 		struct autovivified_settings autovivified;
7
-		char name[ strlen ( name ) + 1 /* NUL */ ];
8
+		char name[ 32 ];
9
 	} *new_child;
10
 	struct settings *settings;
11
 
(-)b/emulators/virtualbox-ose/files/extrapatch-src_VBox_Devices_PC_ipxe_src_net_tcp_httpcore.c (+15 lines)
Added Link Here
1
--- src/VBox/Devices/PC/ipxe/src/net/tcp/httpcore.c.orig
2
+++ src/VBox/Devices/PC/ipxe/src/net/tcp/httpcore.c
3
@@ -646,9 +646,9 @@
4
 	int request_len = unparse_uri ( NULL, 0, http->uri,
5
 					URI_PATH_BIT | URI_QUERY_BIT );
6
 	struct {
7
-		uint8_t user_pw[ user_pw_len + 1 /* NUL */ ];
8
-		char user_pw_base64[ user_pw_base64_len + 1 /* NUL */ ];
9
-		char request[ request_len + 1 /* NUL */ ];
10
+		uint8_t user_pw[ 32 ];
11
+		char user_pw_base64[ 64 ];
12
+		char request[ 1024 ];
13
 		char range[48]; /* Enough for two 64-bit integers in decimal */
14
 	} *dynamic;
15
 	int partial;

Return to bug 270189