Files
seaweedfs/weed/command
Chris Lu 9b66850ec0 fix: enforce reserved ports in HTTP allocation and improve admin gRPC fallback
Critical fixes for port allocation safety:

1. Make findAvailablePortOnIP and ensurePortAvailableOnIP aware of reservedPorts:
   - Add reservedPorts map parameter to both functions
   - findAvailablePortOnIP now skips reserved ports when searching for alternatives
   - ensurePortAvailableOnIP passes reservedPorts through to findAvailablePortOnIP
   - This prevents HTTP ports from being allocated to ports reserved for gRPC

2. Update ensureAllPortsAvailableOnIP to pass reservedPorts:
   - Pass the reservedPorts map to ensurePortAvailableOnIP calls
   - Maintains the map updates (delete/add) for accuracy as ports change

3. Replace blind admin gRPC port fallback with proper availability checks:
   - Previous code just calculated *miniAdminOptions.port + GrpcPortOffset
   - New code checks both the calculated port and finds alternatives if needed
   - Uses the same availability checking logic as initializeGrpcPortsOnIP
   - Properly logs the fallback process and any port changes
   - Will fail gracefully if no available ports found (consistent with other services)

These changes eliminate two critical vulnerabilities:
- HTTP port allocation can no longer accidentally claim gRPC ports
- Admin gRPC port fallback no longer blindly uses an unchecked port
2025-12-22 00:15:33 -08:00
..
2025-10-27 23:04:55 -07:00
2025-09-09 01:01:03 -07:00
2025-10-13 18:05:17 -07:00
2025-12-14 16:02:06 -08:00
2025-03-29 21:12:06 -07:00
2022-02-27 03:03:19 -08:00
2022-08-31 23:16:05 -07:00
2025-10-13 18:05:17 -07:00
2025-07-02 18:03:17 -07:00
2024-07-16 09:15:55 -07:00
2025-10-13 18:05:17 -07:00
2025-03-29 21:12:06 -07:00
2025-06-03 22:50:45 -07:00
2025-06-26 11:09:17 -07:00