Improve:goahead http post file.

This commit is contained in:
Fancy code 2024-03-03 04:19:30 -08:00
parent 2db19bc9b6
commit d69554af64
5 changed files with 12 additions and 14 deletions

View File

@ -46,6 +46,7 @@ set(LOG_SUPPORT "true")
set(GOAHEAD_DOCUMENTS_PATH "web")
set(GOAHEAD_UPLOAD_TMP_PATH "./goahead")
set(GOAHEAD_UPLOAD_PATH "${GOAHEAD_UPLOAD_TMP_PATH}")
set(GOAHEAD_LIMIT_POST "33554432")
# GOAHEAD_CONFIG_FILE_PATH should be set when cross compile
# set(GOAHEAD_CONFIG_FILE_PATH "./")
# ------------ build GoAhead end ------------ #
@ -60,5 +61,5 @@ set(CURL_SHARED_LIBS_PATH "/mnt/mmc")
# ------------ build curl + openssl ------------ end
# ------------ build AppManager ------------ #
set(APP_MANAGER_HTTP_SERVER_IP "localhost")
set(APP_MANAGER_HTTP_SERVER_PORT "8888")
set(APP_MANAGER_HTTP_SERVER_PORT "8080")
# ------------ build AppManager end ------------ #

View File

@ -17,6 +17,7 @@ LBIN ?= $(BUILD)/bin
PATH := $(LBIN):$(PATH)
ME_GOAHEAD_UPLOAD_DIR ?= \"fancy\" # added by xiao // TODO:
ME_GOAHEAD_LIMIT_POST ?=33554432 # 32M
ME_COM_COMPILER ?= 1
ME_COM_LIB ?= 1
ME_COM_MATRIXSSL ?= 0
@ -40,7 +41,7 @@ ifeq ($(ME_COM_OPENSSL),1)
endif
CFLAGS += -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Wl,-z,relro,-z,now -Wl,--as-needed -Wl,--no-copy-dt-needed-entries -Wl,-z,noexecstatck -Wl,-z,noexecheap -pie -fPIE -w
DFLAGS += $(patsubst %,-D%,$(filter ME_%,$(MAKEFLAGS))) -DME_GOAHEAD_UPLOAD_DIR=\"$(ME_GOAHEAD_UPLOAD_DIR)\" -DME_COM_COMPILER=$(ME_COM_COMPILER) -DME_COM_LIB=$(ME_COM_LIB) -DME_COM_MATRIXSSL=$(ME_COM_MATRIXSSL) -DME_COM_MBEDTLS=$(ME_COM_MBEDTLS) -DME_COM_NANOSSL=$(ME_COM_NANOSSL) -DME_COM_OPENSSL=$(ME_COM_OPENSSL) -DME_COM_OSDEP=$(ME_COM_OSDEP) -DME_COM_SSL=$(ME_COM_SSL) -DME_COM_VXWORKS=$(ME_COM_VXWORKS)
DFLAGS += $(patsubst %,-D%,$(filter ME_%,$(MAKEFLAGS))) -DME_GOAHEAD_UPLOAD_DIR=\"$(ME_GOAHEAD_UPLOAD_DIR)\" -DME_GOAHEAD_LIMIT_POST=$(ME_GOAHEAD_LIMIT_POST) -DME_COM_COMPILER=$(ME_COM_COMPILER) -DME_COM_LIB=$(ME_COM_LIB) -DME_COM_MATRIXSSL=$(ME_COM_MATRIXSSL) -DME_COM_MBEDTLS=$(ME_COM_MBEDTLS) -DME_COM_NANOSSL=$(ME_COM_NANOSSL) -DME_COM_OPENSSL=$(ME_COM_OPENSSL) -DME_COM_OSDEP=$(ME_COM_OSDEP) -DME_COM_SSL=$(ME_COM_SSL) -DME_COM_VXWORKS=$(ME_COM_VXWORKS)
IFLAGS += "-I$(BUILD)/inc"
LDFLAGS +=
LIBPATHS += -L$(BUILD)/bin

View File

@ -1130,10 +1130,7 @@ static void parseHeaders(Webs *wp)
return;
}
} else {
// ====================== added by xiao ====================== //
// if (wp->rxLen > ME_GOAHEAD_LIMIT_POST) { // open source code.
if (wp->rxLen > (1024 * 1024 * 32)) { // modified by xiao.
// ====================== added by xiao ====================== //
if (wp->rxLen > ME_GOAHEAD_LIMIT_POST) { // open source code.
websError(wp, HTTP_CODE_REQUEST_TOO_LARGE | WEBS_CLOSE, "Too big");
return;
}

View File

@ -40,6 +40,12 @@ See:${IPC_SDK_PATH}/build/cmake/toolchain/linux.toolchain.cmake")
endif()
add_definitions(-DGOAHEAD_UPLOAD_PATH=\"${GOAHEAD_UPLOAD_PATH}\")
if (DEFINED GOAHEAD_LIMIT_POST)
set(ME_GOAHEAD_LIMIT_POST "ME_GOAHEAD_LIMIT_POST=${GOAHEAD_LIMIT_POST}")
else()
set(ME_GOAHEAD_LIMIT_POST "")
endif()
aux_source_directory(./src SRC_FILES)
set(TARGET_NAME WebServer)
@ -86,7 +92,7 @@ add_custom_command(
add_custom_command(
OUTPUT ${EXTERNAL_LIBS_OUTPUT_PATH}/libgo.a
DEPENDS ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/Makefile
COMMAND make CC=${CMAKE_C_COMPILER} ARCH=${SET_ARCH} PROFILE=${LIB_TYPE} ME_GOAHEAD_UPLOAD_DIR=\"${GOAHEAD_UPLOAD_TMP_PATH}\" -f ../modify/goahead-linux-static-fancy.mk
COMMAND make CC=${CMAKE_C_COMPILER} ARCH=${SET_ARCH} PROFILE=${LIB_TYPE} ME_GOAHEAD_UPLOAD_DIR=\"${GOAHEAD_UPLOAD_TMP_PATH}\" ${ME_GOAHEAD_LIMIT_POST} -f ../modify/goahead-linux-static-fancy.mk
# COMMAND make CC=${CMAKE_C_COMPILER} ARCH=${SET_ARCH} PROFILE=${LIB_TYPE} -f ../modify/goahead-linux-static-fancy.mk // TODO:
COMMAND mv ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/build/${GOAHEAD_INCLUDE_PATH}/bin/libgo.a ${EXTERNAL_LIBS_OUTPUT_PATH}/libgo.a
COMMAND mv ${EXTERNAL_SOURCE_PATH}/goahead-5.2.0/GoAhead/build/${GOAHEAD_INCLUDE_PATH}/bin/libmbedtls.a ${EXTERNAL_LIBS_OUTPUT_PATH}/libmbedtls.a

View File

@ -79,11 +79,4 @@ PUBLIC void websServiceEvents(int *finished)
   源码限制POST文件大小太小这里修改为32M。
```
// ====================== added by xiao ====================== //
// if (wp->rxLen > ME_GOAHEAD_LIMIT_POST) { // open source code.
if (wp->rxLen > (1024 * 1024 * 32)) { // modified by xiao.
// ====================== added by xiao ====================== //
websError(wp, HTTP_CODE_REQUEST_TOO_LARGE | WEBS_CLOSE, "Too big");
return;
}
```