diff --git a/src/apps.js b/src/apps.js index b9014db2a..c3f3f1c3c 100644 --- a/src/apps.js +++ b/src/apps.js @@ -163,9 +163,9 @@ function validatePortBindings(portBindings, tcpPorts) { if (!/^[a-zA-Z0-9_]+$/.test(env)) return new AppsError(AppsError.BAD_FIELD, env + ' is not valid environment variable'); if (!Number.isInteger(portBindings[env])) return new AppsError(AppsError.BAD_FIELD, portBindings[env] + ' is not an integer'); - if (portBindings[env] <= 0 || portBindings[env] > 65535) return new AppsError(AppsError.BAD_FIELD, portBindings[env] + ' is out of range'); - if (RESERVED_PORTS.indexOf(portBindings[env]) !== -1) return new AppsError(AppsError.PORT_RESERVED, String(portBindings[env])); + if (portBindings[env] <= 1023 || portBindings[env] > 65535) return new AppsError(AppsError.BAD_FIELD, portBindings[env] + ' is not in permitted range'); + } // it is OK if there is no 1-1 mapping between values in manifest.tcpPorts and portBindings. missing values implies