Skip to content

Commit

Permalink
limit gid_t and uid_t parsing to 2**31-1
Browse files Browse the repository at this point in the history
  • Loading branch information
nektro committed Oct 17, 2024
1 parent eb293d5 commit d4828a1
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions src/bun.js/bindings/BunProcess.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2163,7 +2163,7 @@ JSC_DEFINE_HOST_FUNCTION(Process_functionsetuid, (JSGlobalObject * globalObject,
auto value = callFrame->argument(0);
value = maybe_uid_by_name(scope, globalObject, value);
RETURN_IF_EXCEPTION(scope, {});
Bun::V::validateInteger(scope, globalObject, value, jsString(vm, String("id"_s)), jsNumber(0), jsNumber(std::pow(2, 32)));
Bun::V::validateInteger(scope, globalObject, value, jsString(vm, String("id"_s)), jsNumber(0), jsNumber(std::pow(2, 31) - 1));
RETURN_IF_EXCEPTION(scope, {});
auto id = value.toUInt32(globalObject);
auto result = setuid(id);
Expand All @@ -2179,7 +2179,7 @@ JSC_DEFINE_HOST_FUNCTION(Process_functionseteuid, (JSGlobalObject * globalObject
auto value = callFrame->argument(0);
value = maybe_uid_by_name(scope, globalObject, value);
RETURN_IF_EXCEPTION(scope, {});
Bun::V::validateInteger(scope, globalObject, value, jsString(vm, String("id"_s)), jsNumber(0), jsNumber(std::pow(2, 32)));
Bun::V::validateInteger(scope, globalObject, value, jsString(vm, String("id"_s)), jsNumber(0), jsNumber(std::pow(2, 31) - 1));
RETURN_IF_EXCEPTION(scope, {});
auto id = value.toUInt32(globalObject);
auto result = seteuid(id);
Expand All @@ -2195,7 +2195,7 @@ JSC_DEFINE_HOST_FUNCTION(Process_functionsetegid, (JSGlobalObject * globalObject
auto value = callFrame->argument(0);
value = maybe_gid_by_name(scope, globalObject, value);
RETURN_IF_EXCEPTION(scope, {});
Bun::V::validateInteger(scope, globalObject, value, jsString(vm, String("id"_s)), jsNumber(0), jsNumber(std::pow(2, 32)));
Bun::V::validateInteger(scope, globalObject, value, jsString(vm, String("id"_s)), jsNumber(0), jsNumber(std::pow(2, 31) - 1));
RETURN_IF_EXCEPTION(scope, {});
auto id = value.toUInt32(globalObject);
auto result = setegid(id);
Expand All @@ -2211,7 +2211,7 @@ JSC_DEFINE_HOST_FUNCTION(Process_functionsetgid, (JSGlobalObject * globalObject,
auto value = callFrame->argument(0);
value = maybe_gid_by_name(scope, globalObject, value);
RETURN_IF_EXCEPTION(scope, {});
Bun::V::validateInteger(scope, globalObject, value, jsString(vm, String("id"_s)), jsNumber(0), jsNumber(std::pow(2, 32)));
Bun::V::validateInteger(scope, globalObject, value, jsString(vm, String("id"_s)), jsNumber(0), jsNumber(std::pow(2, 31) - 1));
RETURN_IF_EXCEPTION(scope, {});
auto id = value.toUInt32(globalObject);
auto result = setgid(id);
Expand Down

0 comments on commit d4828a1

Please sign in to comment.