Jelajahi Sumber

[Config] Allow CIDR notation for API_ALLOW_FROM (#3655)

monsterry 5 tahun lalu
induk
melakukan
3ac74258db
1 mengubah file dengan 2 tambahan dan 2 penghapusan
  1. 2 2
      data/Dockerfiles/phpfpm/docker-entrypoint.sh

+ 2 - 2
data/Dockerfiles/phpfpm/docker-entrypoint.sh

@@ -116,8 +116,8 @@ if [[ "${MASTER}" =~ ^([yY][eE][sS]|[yY])+$ ]]; then
   if [[ ${API_ALLOW_FROM} != "invalid" ]] && [[ ! -z ${API_ALLOW_FROM} ]]; then
     IFS=',' read -r -a API_ALLOW_FROM_ARR <<< "${API_ALLOW_FROM}"
     declare -a VALIDATED_API_ALLOW_FROM_ARR
-    REGEX_IP6='^([0-9a-fA-F]{0,4}:){1,7}[0-9a-fA-F]{0,4}$'
-    REGEX_IP4='^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$'
+    REGEX_IP6='^([0-9a-fA-F]{0,4}:){1,7}[0-9a-fA-F]{0,4}(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))?$'
+    REGEX_IP4='^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(/([0-9]|[1-2][0-9]|3[0-2]))?$'
     for IP in "${API_ALLOW_FROM_ARR[@]}"; do
       if [[ ${IP} =~ ${REGEX_IP6} ]] || [[ ${IP} =~ ${REGEX_IP4} ]]; then
         VALIDATED_API_ALLOW_FROM_ARR+=("${IP}")